Software Engineering: Implementation and Testing
Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.
Software Engineering: Implementation and Testing
This course is part of Software Engineering Specialization
21,779 already enrolled
Included with
Learn more
Ask Coursera
147 reviews
Recommended experience
147 reviews
Recommended experience
Skills you'll gain
- Systems Development Life Cycle
- Software Testing
- Software Engineering
- Project Management
- Configuration Management
- System Design and Implementation
- White-Box Testing
- Test Case
- Change Control
- Software Development Life Cycle
- Requirements Analysis
- Acceptance Testing
- Debugging
- Software Quality Assurance
- Software Configuration Management
- Software Development
- Waterfall Methodology
- Software Development Methodologies
- User Acceptance Testing (UAT)
Tools you'll learn
Details to know
7 assignments
See how employees at top companies are mastering in-demand skills
Build your subject-matter expertise
- Learn new concepts from industry experts
- Gain a foundational understanding of a subject or tool
- Develop job-relevant skills with hands-on projects
- Earn a shareable career certificate
There are 7 modules in this course
Software Development Life Cycle (SDLC) is the process of developing software through planning, requirement analysis, design, implementation, testing, and maintenance. This course focuses on the implementation and testing phases of SDLC, and you will examine different software development processes for large software systems development, and understand the strengths (pros) and weaknesses (cons) of different software development processes. You will also encounter defensive programming techniques to prevent software bugs during implementation, and learn how to test your system thoroughly using different types of test cases.
Basic object-oriented programming (OOP) concepts are required for topics covered in defensive programming and object-oriented testing. Implementation is driven by the UML models derived from requirement analysis. It is recommended to take the course "Software Engineering: Modeling Software Systems using UML" before attempting this course, but it is not a hard requirement.
Welcome to the first module of this course! In this module, you will learn: (1) The tasks involved in software development. (2) The processes involved in Software Development Life Cycle (SDLC).
What's included
3 videos1 reading1 assignment
3 videosβ’Total 21 minutes
- Lecture 1-1 Introduction to Software Developmentβ’10 minutes
- Lecture 1-2 Project Risksβ’5 minutes
- Lecture 1-3 Project Planningβ’7 minutes
1 readingβ’Total 60 minutes
- Lecture 1 - Software Developmentβ’60 minutes
1 assignmentβ’Total 30 minutes
- Quiz 1 - Software Developmentβ’30 minutes
In this module, you will learn: (1) Different software development processes, including Waterfall, Code-and-Fix, Prototyping, Spiral, Phased-Released, Agile, Extreme Programming, Continuous Integration, Scrum, and Unified Process.
What's included
3 videos3 readings1 assignment
3 videosβ’Total 33 minutes
- Lecture 2-1 Software Development Processesβ’12 minutes
- Lecture 2-2 Agileβ’17 minutes
- Lecture 2-3 Unified Processβ’3 minutes
3 readingsβ’Total 30 minutes
- Lecture 2 - Software Developmentβ’10 minutes
- Lecture 2 - Software Development Case Study Exerciseβ’10 minutes
- Lecture 2 - Software Development Case Study Exercise (Solution)β’10 minutes
1 assignmentβ’Total 30 minutes
- Quiz 2 - Software Developmentβ’30 minutes
In this module, you will learn: (1) The purpose and the major activities of implementation. (2) Defensive programming techniques to prevent software bugs during implementation.
What's included
3 videos3 readings1 assignment
3 videosβ’Total 18 minutes
- Lecture 3-1 Defensive Programmingβ’9 minutes
- Lecture 3-2 Code Reviewβ’2 minutes
- Lecture 3-3 Refactoringβ’7 minutes
3 readingsβ’Total 180 minutes
- Lecture 3 - Implementationβ’60 minutes
- Lecture 3 - Refactoring Exerciseβ’60 minutes
- Lecture 3 - Refactoring Exercise (solution)β’60 minutes
1 assignmentβ’Total 30 minutes
- Quiz 3 - Implementationβ’30 minutes
In this module, you will learn: (1) Different techniques for debugging. (2) Configuration management to manage, control and monitor changes to life cycle artifacts.
What's included
2 videos1 reading1 assignment
2 videosβ’Total 18 minutes
- Lecture 4-1 Debuggingβ’11 minutes
- Lecture 4-2 Configuration Managementβ’7 minutes
1 readingβ’Total 10 minutes
- Lecture 4 Implementationβ’10 minutes
1 assignmentβ’Total 10 minutes
- Quiz 4 - Implementationβ’10 minutes
In this module, you will learn: (1) The purpose of testing. (2) Design tests that have the highest likelihood of finding defects with the minimum amount of time and effort. (3) What is White Box testing. (4) Revealing subdomains for Basis Path Testing.
What's included
3 videos3 readings1 assignment
3 videosβ’Total 32 minutes
- Lecture 5-1 Testingβ’13 minutes
- Lecture 5-2 Design Testsβ’4 minutes
- Lecture 5-3 Basis Path Testingβ’16 minutes
3 readingsβ’Total 180 minutes
- Lecture 5 - Testingβ’60 minutes
- Lecture 5 - Basis Path Testing Exerciseβ’60 minutes
- Lecture 5 - Basis Path Testing Exercise (Solution)β’60 minutes
1 assignmentβ’Total 30 minutes
- Quiz 5 - Testingβ’30 minutes
In this module, you will learn: (1) Revealing subdomains for Condition Testing, Loop Testing, and Data Flow Testing. (2) What is Black Box testing. (3) Revealing subdomains with equivalence partitioning. (4) Revealing subdomains for Boundary Testing.
What's included
3 videos3 readings1 assignment
3 videosβ’Total 22 minutes
- Lecture 6-1 White Box Testingβ’8 minutes
- Lecture 6-2 Black Box Testingβ’13 minutes
- Lecture 6-3 Regression Testingβ’1 minute
3 readingsβ’Total 180 minutes
- Lecture 6 - Testingβ’60 minutes
- Lecture 6 - Black Box Testing Exerciseβ’60 minutes
- Lecture 6 - White Box Testing Exercise (Solution)β’60 minutes
1 assignmentβ’Total 30 minutes
- Quiz 6 - Testingβ’30 minutes
In this module, you will learn: (1) How to perform tests. (2) How to evaluate tests. (3) Deriving test case for Acceptance Testing.
What's included
3 videos3 readings1 assignment
3 videosβ’Total 27 minutes
- Lecture 7-1 Perform Testsβ’6 minutes
- Lecture 7-2 Unit/Integration/System Testingβ’14 minutes
- Lecture 7-3 Acceptance Testing Exampleβ’7 minutes
3 readingsβ’Total 180 minutes
- Lecture 7 - Testingβ’60 minutes
- Lecture 7 - Acceptance Testing Exerciseβ’60 minutes
- Lecture 7 - Acceptance Testing Exercise (Solution)β’60 minutes
1 assignmentβ’Total 30 minutes
- Quiz 7 - Testingβ’30 minutes
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.
Instructor
Explore more from Software Development
- Status: Free TrialT
The Hong Kong University of Science and Technology
Course
- Status: PreviewN
Northeastern University
Course
- Status: Free TrialA
Amazon
Course
- Status: PreviewN
Northeastern University
Course
Why people choose Coursera for their career
Learner reviews
- 5 stars
74.14%
- 4 stars
20.40%
- 3 stars
3.40%
- 2 stars
0.68%
- 1 star
1.36%
Showing 3 of 147
Reviewed on Apr 16, 2025
Great and Exceptional, But I expect more in details.
Reviewed on Jan 13, 2025
Helps me to understand the overall SDLC PROCESS, GREAT COURSE
Reviewed on Nov 24, 2022
Excellent course.Feedback: Cut presenter mistakes from videos.
Frequently asked questions
To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.
Yes. In select learning programs, you can apply for financial aid or a scholarship if you canβt afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, youβll find a link to apply on the description page.
More questions
Financial aid available,
