UPI Study › Courses › Software Engineering › Free lessons › Lesson 1.7 Free with a free account
Walking Through the Systems Development Life Cycle
Software Engineering · Chapter 1: Foundations of Software Engineering and Process ModelsSection 1.7 · lesson 7 of 1037 min · free with a free account
Free preview
Create a free account to keep watching
It takes a minute and costs nothing. Your free account unlocks all of Chapter 1 and 3 more lessons of Software Engineering.
Lesson complete
Earn the 3 college credits for Software Engineering
Enrolling adds a quiz after each lesson, the graded work and the official transcript. Recommended for credit by NCCRS.
Next lesson: Common Misconceptions in Software Engineering →← Proven Steps and Guidelines for Building Quality SoftwareNext lesson: Common Misconceptions in Software Engineering →
In this lesson
6 generic phases, from an identified need to a system people rely on.
- Define the SDLC, and why projects rely on one
- Name and describe the 6 generic phases in order
- Identify each phase's goal and typical deliverable
- Explain why early problems cost less to fix
Transcript
Everything said in the video, section by section (942 words). Read along, or search it.
Foundations of Software Engineering and Process Models
The Systems Development Life Cycle
Nearly every approach to building systems shares the same six phases underneath. This section walks through them in order, planning, analysis, design, implementation, testing, and maintenance. It covers each phase's goal and typical deliverable, and why catching a problem early costs so much less.
Why a Life Cycle
No Tower Without a Blueprint
Ask a construction crew to build an office tower with no blueprint, no permit, and no inspection plan, and the result would be chaos. Software projects fail for the same reason when they skip structure. A team starts coding before anyone agrees what the system must do. Nobody checks it works before people rely on it. And small problems pile up. The systems development life cycle, or S D L C, exists to prevent exactly that. It is a structured sequence of phases a system passes through, from the moment a need is identified, to the point it is retired or replaced. It gives every project a shared, repeatable path of checkpoints, deliverables, and responsibilities. Named models arrange, combine, or repeat the phases differently. But the six generic phases stay recognizably the same underneath.
Figure 1.7(a)
The 6 Generic Phases
Here are the six phases as a single cycle. Planning, then analysis, then design, implementation, testing, and maintenance. Notice that it is drawn as a loop, not a straight line. A system in maintenance often surfaces new needs, and those needs begin the next round of planning.
Phases 1 and 2
Why, and What
Phase one, planning, identifies why a system is needed at all. It confirms that a real problem or opportunity exists, roughly estimates the cost, time, and resources, and sets the boundaries of the project. Skip planning, and a team risks solving the wrong problem entirely, however well it executes the later phases. Phase two, analysis, gathers and documents exactly what the system must do, from the view of the people who will use it. It means talking to the people affected, studying how work is done now, and writing clear, specific requirements. Analysis becomes the standard every later phase is measured against. If a requirement was never captured here, there is nothing later to check the finished system against.
Phases 3 and 4
How, and Building It
Phase three, design, works out how the system will be built to satisfy the requirements. It decides the overall structure, how data is organized and stored, what the user interface looks like, and how the parts communicate. Where analysis answers what must the system do, design answers how will it do it. Phase four, implementation, is where the design is actually built. Writing the code, configuring the components, and assembling the pieces into a working system. It usually consumes the largest share of a project's time and effort, because every design decision now has to become something that works.
Phases 5 and 6
Checking It, and Keeping It Running
Phase five, testing, verifies that the built system does what analysis said it needed to do. It deliberately hunts for defects, checks behavior against the original requirements, and confirms the system holds up under realistic conditions. Phase six, maintenance, begins once the system is in active use, and usually lasts longer than all the other phases combined. It covers fixing defects that only appear in real-world use, adapting the system to its changing environment, and supporting the people who depend on it. And as new needs surface during maintenance, they often become the starting point for the next round of planning. That is why the life cycle is pictured as a loop.
Why the Order Matters
Each Phase Rests on the One Before
Each phase depends on the one before it being done well. A requirement missed during analysis cannot be designed around, because design has nothing to design around. A design flaw cannot be caught by testing alone, because testing checks whether the build matches the design, not whether the design was sound. The further a problem travels through the cycle before it is caught, the more work has been built on top of it, and the more has to be revisited. So a team that skips formal testing, and lets users discover the problems, has moved defect discovery to the most expensive point of all. That is the core argument for taking every phase seriously, rather than rushing the early ones on the way to writing code.
Table 1.7
The 6 Phases at a Glance
Here are the six phases at a glance. Planning confirms the need and defines scope, producing a project proposal or feasibility summary. Analysis captures what the system must do, producing a requirements document. Design decides how it will be built, producing a design specification. Implementation builds the working system, producing working code. Testing verifies the system meets its requirements, producing test results and a defect log. And maintenance supports and updates the system in use, producing update, patch, and support records.
Key Terms
The Vocabulary of This Section
Let's lock in the key terms. The S D L C is the structured sequence of phases a system passes through, from an identified need to retirement or replacement. A requirement is a specific, documented statement of something the system must do. A design specification documents how the system will be structured and built. A defect is a flaw, where the system's behavior does not match its requirements. And maintenance is the ongoing work of supporting, correcting, and updating a system already in use.
Key Takeaways
What to Carry Forward
To pull this together. The systems development life cycle is a structured, repeatable path, from an identified need through active use and eventual replacement. Its six generic phases are planning, analysis, design, implementation, testing, and maintenance. Planning confirms why a project exists. Analysis captures what the system must do. Design decides how it will be built. Implementation builds it, testing verifies it, and maintenance supports it, often feeding the next round of planning. And a problem caught in an earlier phase costs far less to fix, because less work has been built on top of it.
About Software Engineering at UPI Study
Software Engineering (Computer Science 301) is a self-paced online course of 103 video lessons in 15 chapters, from process models and agile to requirements, design, user interfaces, reliability, security and project management. It carries a NCCRS credit recommendation for 3 semester credits.
Every lesson transcript is free on pages like this one, and the videos are free with a free UPI Study account. Enrolling adds a practice quiz after each lesson, the graded work and final exam that earn the credit, lifetime access, and an official transcript on completion. UPI Study has helped over 130,000 students with college credits. ACE and NCCRS have over 2,100 cooperating colleges that will consider accepting credits; the final decision is with the universities.
Enroll now → Course details Download the syllabus All Computer Science courses Every course with PRO →
Why take it here
Why students take Software Engineering with UPI Study
Where the credit goes
Universities that work with NCCRS
Software Engineering carries a NCCRS credit recommendation. These universities work with NCCRS; some are UPI Study's signed partners. ACE and NCCRS have over 2,100 cooperating colleges that will consider accepting credits; the final decision is with the universities.
Thomas Edison State UniversitySigned partner
University of the PeopleSigned partner
Charter Oak State CollegeSigned partner
Strayer UniversitySigned partner
Columbia Southern UniversitySigned partner
Indiana TechSigned partner
Penn StateWorks with NCCRS
Southern New Hampshire UniversityWorks with NCCRS
SUNYWorks with NCCRS
+many more cooperating universitiesFind my college →Find my college → Not listed? Ask Athena in the corner of this page, or book a 15-minute call.
FAQ
Questions students ask us
About Walking Through the Systems Development Life Cycle
What is the systems development life cycle (SDLC)?
What are the six phases of the SDLC?
Why is the SDLC drawn as a loop instead of a straight line?
What is the difference between the analysis and design phases of the SDLC?
About the Software Engineering course
How many college credits is Software Engineering?
How much does Software Engineering cost and what is included?
Which universities accept UPI Study credits?
How long does Software Engineering take?
How are the exams done?
How do my credits reach my college?
Ready for the full course? Earn 3 credits in Software Engineering.
103 video lessons, a quiz after each one, and the graded work that earns the credit. Recommended for credit by NCCRS.
3 credits · NCCRSEnroll →