UPI Study › Courses › System Analysis and Design › Free lessons › Lesson 2.4 Free with a free account
How Software Development Fits Into the Systems Lifecycle
System Analysis and Design · Chapter 2: Business Analysis Tools and Development MethodsSection 2.4 · lesson 10 of 699 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 System Analysis and Design.
Lesson complete
Earn the 3 college credits for System Analysis and Design
Enrolling adds a quiz after each lesson, the graded work and the official transcript. Recommended for credit by NCCRS.
Next lesson: Collecting User Needs: Interviews, Observation, and Surveys →← Tools and Approaches for Building SystemsNext lesson: Collecting User Needs: Interviews, Observation, and Surveys →
In this lesson
5 system components, 2 lifecycles, and the Waterfall model.
- Explain the 5 components of a system, and why software is only one
- Distinguish the systems lifecycle from the SDLC
- Describe the 5 stages of the Waterfall model, in order
- Identify where Waterfall fits well, and where it does not
Transcript
Everything said in the video, section by section (1,252 words). Read along, or search it.
Business Analysis Tools and Development Methods
Software Development in the Systems Lifecycle
It is easy to think of a system as its software. This section corrects that picture. Software is rarely the whole story. It runs on hardware. It is used by people who follow procedures. And it processes data that has value of its own. So first we will see what a system is made of. Then we will separate the broad systems lifecycle from the narrower software development lifecycle. And then we will look at one of the oldest ways to run that software lifecycle, the Waterfall model. By the end, you should be able to say when Waterfall is the right tool, and when it is not.
More Than Software
The 5 Components of a System
A system is a working combination of five components. Each one has to be planned, built, and maintained, for the system to function as a whole. The first is people. The staff who use the system, and the analysts, developers, and support teams who build and maintain it. The second is hardware. Servers, workstations, network equipment, and mobile devices. The third is software. The programs that process data, and carry out the system's logic. The fourth is procedures. The documented steps that people and the software follow. How to process an order, how to escalate an error, how to back up a database. And the fifth is data. The information the system stores, processes, and produces, from customer records to transaction logs. Notice that software is one component out of five. A project that gets the software perfect, but neglects the other four, still delivers a system that does not work. Untrained staff, missing procedures, or badly migrated data can sink a project just as surely as a bug.
Figure 1
2 Lifecycles, One Inside the Other
That leads to two lifecycles, one nested inside the other. The systems lifecycle covers all five components together. It runs from the moment a need is identified, through planning, building, rollout, and ongoing operation, to eventual retirement. Building new software is one activity inside that larger lifecycle. Alongside it sit procuring hardware, training people, writing procedures, and migrating data. The software development lifecycle, or S D L C, governs just one of those five boxes. The software. Picture the five components as five boxes, inside one large frame. The large frame is the systems lifecycle. And a system goes live only when all five boxes are ready, not just the software.
The Narrower Lifecycle
The Software Development Lifecycle (SDLC)
So what exactly is the S D L C? It is the structured sequence of activities a team follows to produce and evolve the software component. Gathering requirements, designing, building, testing, and maintaining. Here is the relationship to hold on to. Every S D L C sits inside a larger systems lifecycle. But not every activity in the systems lifecycle belongs to the S D L C. Training staff on a new procedure, for example, is part of the systems lifecycle. It is not part of the S D L C. Keeping the two separate helps an analyst plan for the work that software teams do not own. If nobody owns the training, the procedures, or the data migration, those pieces quietly fall through the gap.
One Way to Run an SDLC
The Waterfall Model
There are many ways to structure an S D L C. One of the oldest is the Waterfall model. It is also one of the most straightforward. Waterfall organizes the work into a fixed sequence of stages. Each stage must be completed, and typically signed off, before the next one begins. The name comes from the way progress flows. It moves in a single direction, like water cascading down a series of steps. Water does not flow back uphill. And in a strict Waterfall project, neither does the work. That one-way flow is the defining feature. Everything good and bad about Waterfall follows from it.
Figure 2
The 5 Stages, in Strict Sequence
Waterfall has five stages. Stage one is requirements. The team gathers and documents everything the software must do, before any design work starts. Stage two is design. The requirements are translated into a technical blueprint, covering architecture, data structures, and interfaces. Stage three is implementation. The code is written according to the design. Stage four is verification, which means testing. The completed software is tested against the original requirements, to confirm it behaves correctly. Stage five is maintenance. The team supports the software after release, fixing defects and making small updates as needed. Five stages, in strict sequence, with no overlap. Notice that testing comes fourth, after all the code is written. That placement will matter when we look at the weaknesses.
Where It Shines
Strengths of Waterfall
Waterfall has real strengths. Its fixed structure makes progress easy to track. Each completed stage is a clear milestone. Thorough up-front requirements reduce the chance of missing something the customer actually needed. The documentation produced at each stage supports handoffs between teams, and later maintenance. And it works well for projects with stable, well-understood requirements. Regulated or safety-critical systems are good examples. In those settings, requirements are often fixed by rules, and documentation is itself something auditors expect. A clear record of what was decided, and when, is valuable in its own right. So the very things Waterfall produces are the things those projects need.
Where It Struggles
Weaknesses of Waterfall
It also has real weaknesses. Working software is not available until late in the project. That delays feedback from real users. Requirements are locked in early, so the model handles change poorly once a stage is complete. A mistake made in an early stage, such as requirements, can be expensive to correct once later stages depend on it. And it is a poor fit for projects where requirements are expected to evolve, such as many consumer-facing products. Notice something about these lists. The fixed sequence that makes Waterfall easy to track is exactly what makes it hard to change. Strength and weakness come from the same design choice. And because testing comes late, users often see the software for the first time near the very end.
Choosing Well
Match the Model to the Project
So the question is never whether Waterfall is good or bad. The question is whether it fits the project in front of you. It fits when requirements are stable and well understood. A regulated or safety-critical system is a strong example, where thorough documentation is an asset. It fits poorly when requirements are expected to evolve. A consumer-facing product that needs early feedback from real users is the classic case. Keep that question in mind. The models that come later in this course answer it differently. Some trade a little predictability for the ability to change course. Choosing among them is a judgment the analyst helps the organization make.
Key Terms
The Vocabulary of This Section
Let's lock in the key terms. A system is a working combination of people, hardware, software, procedures, and data, organized to achieve a goal. The systems lifecycle is the full span of activity across all five components, from identifying a need through retirement. The software development lifecycle is the structured sequence of activities used to produce and evolve the software component. The Waterfall model completes requirements, design, implementation, verification, and maintenance in strict, non-overlapping sequence. And verification is the testing stage, where completed software is checked against its original requirements.
Key Takeaways
What to Carry Forward
To pull this together. A system is made of people, hardware, software, procedures, and data. Software is only one component. The systems lifecycle covers all five components. The S D L C covers only the software piece. The Waterfall model runs requirements, design, implementation, verification, and maintenance, in a fixed, one-way sequence. Its clear milestones and thorough documentation suit stable, well-understood projects. And its rigidity and late feedback make it a poor fit, for projects where requirements are likely to change.
About System Analysis and Design at UPI Study
System Analysis and Design (Computer Science 390) is a self-paced online course of 69 video lessons in 9 chapters, from the analyst's role and requirements to UML modeling, interface and database design, testing, maintenance 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 System Analysis and Design with UPI Study
Where the credit goes
Universities that work with NCCRS
System Analysis and Design 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 How Software Development Fits Into the Systems Lifecycle
What are the five components of an information system?
What is the difference between the systems lifecycle and the SDLC?
What are the stages of the Waterfall model?
When should you use the Waterfall model?
About the System Analysis and Design course
How many college credits is System Analysis and Design?
How much does System Analysis and Design cost and what is included?
Which universities accept UPI Study credits?
How long does System Analysis and Design take?
How are the exams done?
How do my credits reach my college?
Ready for the full course? Earn 3 credits in System Analysis and Design.
69 video lessons, a quiz after each one, and the graded work that earns the credit. Recommended for credit by NCCRS.
3 credits · NCCRSEnroll →