Unit 2: Software Development Life-Cycle Models
The software development life-cycle (SDLC) is the process of planning, creating, testing, and deploying an information system. There are different approaches to breaking down the work when developing software systems. Conceptually, each model provides specific guidance to the sequencing and repeating life-cycle activities to deliver high-quality software systems.
As you review this unit, try to see the similarities in these categories of life-cycle models. This will help you grasp the basic concepts of SDLC. This unit connects strongly with Unit 9: Project Management, since choosing and managing a software life-cycle process is a central component of project management.
Completing this unit should take you approximately 4 hours.
Upon successful completion of this unit, you will be able to:
- summarize the software development life-cycle (SDLC);
- compare categories of life-cycle models, such as waterfall, incremental, and iterative models;
- describe the differences between software development phases, activities, and deliverables;
- list different roles that professionals such as system analysts, developers, and project managers play in software development processes; and
- explain the major methodologies and processes in software engineering, such as Agile, Lean, Spiral, and Unified.
2.1: Software Development Life-Cycle (SDLC)
Life-cycle models describe what activities are performed, group them into phases, specify when and in what order they are performed, and their relationships and iteration. Several software development life-cycle models are described: sequential, waterfall, and iterative. Iterative models include evolutionary and spiral.
The software development life-cycle (SDLC) consists of several phases. Read this section to explore the software life-cycle and these main phases.
2.2: Life-Cycle Models
Approaches to software development usually follow one of a few basic models. Read this section about different software development approaches and try to figure out the main advantages and disadvantages of each approach (discussed in the next section).
Read this summary of software development models and try to address the main features of each model. Note that this development approach might be categorized in a different way in other resources.
2.3: Software Development Team Roles
As you read this section, consider professionals' various roles in software development processes. Each role is associated with activities, functions, and teams.
2.4: Software Development Methodologies
Software development methodology is used to structure, plan, and control the process of developing an information system. What are different approaches, and what are the basic principles of each approach?
This video contains a lot of information, so take good notes. Pay particular attention to scrum, as it is one of the most widely used agile methodologies.
Unit 2 Assessment
- Receive a grade
Take this assessment to see how well you understood this unit.
- This assessment does not count towards your grade. It is just for practice!
- You will see the correct answers when you submit your answers. Use this to help you study for the final exam!
- You can take this assessment as many times as you want, whenever you want.