The Software Engineering Process: From Requirements Through Deployment

UPI Study › Courses › Software Engineering › Free lessons › Lesson 1.2 Free with a free account

The Software Engineering Process: From Requirements Through Deployment

Software Engineering · Chapter 1: Foundations of Software Engineering and Process ModelsSection 1.2 · lesson 2 of 1039 min · free with a free account

← What Is Computer Software? Core Definitions and Everyday UsesNext lesson: Approaches to Software Development: Plan-Driven, Agile, and Hybrid Paradigms →

Earn 3 college credits for Software EngineeringRecommended for credit by NCCRS · Computer Science 301 · self-paced · one payment, lifetime access

In this lesson

From requirements through deployment: the generic framework and its umbrella activities.

  • Define software engineering, and how it differs from writing code
  • Name and explain the 5 framework activities
  • Identify the 3 umbrella activities, and what each protects against
  • Explain why a defined process gives more predictable outcomes

Transcript

Everything said in the video, section by section (1,126 words). Read along, or search it.

Foundations of Software Engineering and Process Models

The Software Engineering Process

Writing code and engineering software are not the same thing. This section defines software engineering, and sets out the sequence of activities that almost every software effort passes through. Then it introduces the activities that run alongside that sequence, from beginning to end, and explains why a defined process matters.

A Thought Experiment

Skilled Team, No Process

Start with a thought experiment. Imagine a team of programmers, every one of them genuinely skilled, handed a rough idea and told to build it. No one writes down what the client actually needs. No one estimates how long any part will take. No one checks, as the pieces come together, that they still fit the original goal. Six months later, the team delivers something. It runs. It is also not what anyone asked for. It arrived late. And it quietly loses data whenever two features run at the same time. Nothing about the team's coding ability was the problem. What was missing was a process. An agreed sequence of activities that turns a stated need into a verified, working result.

Defining the Field

What Is Software Engineering?

Software engineering is the application of a disciplined, systematic, and measurable approach to developing, operating, and maintaining software. Four elements of that definition mark real differences from simply writing code. Discipline. Work follows an agreed sequence of steps, so the next person on the project can predict what happens next. Measurement. Progress, effort, and defect counts are tracked against numbers, not impressions. The full lifecycle. Responsibility does not end when the program runs. It extends through requirements, design, delivery, and years of maintenance. And accountability. The software has to satisfy the people who asked for it, and are paying for it, not merely run correctly on its own.

Table 1

Programming vs. Software Engineering

Here are programming and software engineering side by side. Programming produces a working set of instructions for a defined task. Software engineering produces, verifies, documents, and sustains a system over its whole life. Programming asks whether the code runs and gives the right output. Software engineering asks whether the result meets the stakeholder's need, on time, and can be maintained. Programming focuses on the immediate task. Software engineering spans requirements through deployment, and the maintenance that follows. Programming succeeds with correct output. Software engineering succeeds when requirements are met, defects are controlled, and schedule and budget are held. And programming produces source code. Software engineering produces requirements records, design models, code, test results, and documentation.

Figures 2 and 3

The Generic Process Framework

Teams choose from many specific approaches to organizing their work. Underneath nearly all of them sits the same backbone, called the generic process framework. It has five framework activities. Communication, planning, modeling, construction, and deployment. The dashed return path shows that delivered work generates feedback, which reopens communication for the next piece of work. And beneath all five run the umbrella activities. They are not a sixth phase. They operate across the whole process, at once.

Table 2

What Each Framework Activity Answers

Each framework activity answers a central question. Communication asks what problem we are actually solving, and for whom. It produces stated objectives, stakeholder notes, and a requirements record. Planning asks what has to happen, in what order, and with what resources. It produces a task list, a schedule, a resource plan, and an initial risk list. Modeling asks what the solution looks like before it is built. It produces analysis and design models, and interface sketches. Catching a misunderstanding in a model is far cheaper than catching it in finished code. Construction asks whether the built system does what the model said. It produces source code, and test results. And deployment asks whether the delivered result satisfies the stakeholder. It produces a release, and the feedback that restarts the cycle.

Table 3

3 Umbrella Activities

Umbrella activities are different in kind. They do not belong to one phase and finish. They run continuously underneath all five, from the first stakeholder conversation to the delivered release. Three matter most. Project tracking and control compares actual progress against the plan, and triggers correction when the two diverge. Without it, schedule slips are discovered only once a deadline has already been missed. Risk management identifies what could go wrong before it happens, and prepares a response in advance. Without it, the team improvises under pressure, once a risk has already become a crisis. Quality assurance checks that a work product meets its requirements, before the next activity builds on top of it. Without it, defects pass forward undetected, and surface much later, at far higher cost.

Why It Matters (Figure 4)

The Later the Catch, the Higher the Cost

The strongest argument for a defined process concerns timing. The cost of fixing a problem rises sharply, the later it is found. A requirement misread during communication costs a short conversation to fix. The same misreading, undetected until modeling, costs a redrawn design. Undetected until construction, it costs rewritten code, and retesting. Undetected until after deployment, it costs a patch, a reinstall for every customer, and often the customer's confidence. Nothing about the underlying error changed. What changed was how much had already been built on top of it. That is why communication and modeling deserve as much attention as construction. They are the cheapest point to catch an error.

Table 4

What Goes Wrong Without a Process

Here is what typically goes wrong without a defined process. Rework. Work is completed against a requirement nobody confirmed, so time and budget are spent twice. Scope drift. Features accumulate that no stakeholder requested, consuming budget away from the original goal. Integration failure. Pieces built separately do not fit together, forcing late redesign near the deadline. And undetected defects. The customer finds the problems instead of the team, bringing emergency patches, and lost confidence. None of these is caused by weak technical skill. What failed was the link between activities. And the costs build up quietly, which is exactly why a missing process gets tolerated for so long.

Key Terms

The Vocabulary of This Section

Let's lock in the key terms. Software engineering is a disciplined, systematic, and measurable approach to developing, operating, and maintaining software. The generic process framework is the common sequence of communication, planning, modeling, construction, and deployment. An umbrella activity runs continuously across the whole process, rather than belonging to one phase. A stakeholder is anyone with an interest in the software, including customers, users, and sponsors. And a work product is any tangible output of an activity, such as a requirements record, a design model, or a test report.

Key Takeaways

What to Carry Forward

To pull this together. Software engineering is a disciplined, measurable approach across the full lifecycle of software, not just writing code that runs. Dividing software work creates a coordination problem, and a defined process closes that gap. The generic process framework has five activities. Communication, planning, modeling, construction, and deployment. Umbrella activities, tracking and control, risk management, and quality assurance, run continuously beneath all five. And the cost of fixing a problem rises sharply the later it is found, which is why the early activities deserve as much care as construction.

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.

Compare: Software Engineering vs Systems Analysis

Why take it here

Why students take Software Engineering with UPI Study

How professional software gets builtSoftware Engineering covers how teams turn requirements into working, maintainable software: process models, agile, requirements, design, testing, reliability and project management. It is a core course in computer science and software degrees.
Credit at a fraction of the priceThe same 3 credits can cost $750 or more at a US college. Here it is one payment, self-paced, with lifetime access.
Finish your degree soonerTransfer credits reduce the courses you still owe, so you can graduate earlier or lighten a heavy semester.
Strengthen an applicationA completed college-level course on an official transcript shows admissions and scholarship committees you can do the work.
Study on your own scheduleNo start dates, no deadlines. Watch the lessons, practice, and take the final when you are ready.
130,000+students helped with college creditsACE and NCCRS have over 2,100 cooperating colleges that will consider accepting credits; the final decision is with the universities.

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.

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 The Software Engineering Process: From Requirements Through Deployment

What is software engineering and how is it different from programming?
Software engineering is the application of a disciplined, systematic and measurable approach to developing, operating and maintaining software. Programming produces working instructions for a defined task and succeeds when the output is correct. Software engineering covers the full lifecycle, from requirements through deployment and maintenance, and succeeds when stakeholder needs are met, defects are controlled, and schedule and budget are held.
What are the five framework activities of the generic software process?
The five framework activities are communication, planning, modeling, construction and deployment. Communication establishes what problem is being solved and for whom. Planning sets tasks, schedule, resources and risks. Modeling produces analysis and design models before anything is built. Construction produces code and test results. Deployment delivers a release and gathers feedback, which reopens communication for the next piece of work.
What are umbrella activities in software engineering?
Umbrella activities are work that runs continuously across the whole process instead of belonging to one phase. Three key ones are project tracking and control, which compares actual progress with the plan; risk management, which identifies what could go wrong and prepares responses in advance; and quality assurance, which checks each work product against its requirements before the next activity builds on it.
Why does it cost more to fix a software error the later it is found?
Fixing an error costs more later because more work has been built on top of it. A misread requirement caught during communication costs a short conversation. Caught during modeling, it means a redrawn design; during construction, rewritten code and retesting; after deployment, a patch, a reinstall for every customer and often lost confidence. That is why early activities deserve as much care as construction.

About the Software Engineering course

How many college credits is Software Engineering?
Software Engineering (Computer Science 301) carries a NCCRS credit recommendation for 3 semester credits. ACE and NCCRS have over 2,100 cooperating colleges that will consider accepting credits; the final decision is with the universities.
How much does Software Engineering cost and what is included?
$250, paid once, with lifetime access: all 103 video lessons, a practice quiz after each, the graded work and final exam, and an official transcript when you finish. Students who want several courses choose UPI Study PRO instead.
Which universities accept UPI Study credits?
UPI Study has signed partner agreements with universities such as Thomas Edison State University, University of the People and Charter Oak State College, and works with universities such as Penn State, SNHU and SUNY. ACE and NCCRS have over 2,100 cooperating colleges that will consider accepting credits; the final decision is with the universities. Use "Find my college" on this page to check yours.
How long does Software Engineering take?
It is self-paced with no deadlines. The 103 lessons total about 11 hours of video; most students add reading and practice time and finish in a few weeks to a few months, on their own schedule.
How are the exams done?
Quizzes and assignments are online in the course. The final exam is taken online with proctoring; a person on the UPI Study team checks assignments, usually within two days.
How do my credits reach my college?
When the course shows 100% complete, request the official transcript from your dashboard. It is sent to the college you name, and you can send it to more than one. Check your college first with "Find my college" on this page, or ask Athena.

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.

Software Engineering
3 credits · NCCRS
Enroll →