2.basic Introduction of SDLC Phases and Explanation of SDLC Models
2.basic Introduction of SDLC Phases and Explanation of SDLC Models
1
Activities during Feasibility Study
2
Activities during Feasibility Study
3
Requirements Analysis and
Specification
• Aim of this phase:
–understand the exact requirements of
the customer,
–document them properly.
• Consists of two distinct activities:
–requirements gathering and analysis
–requirements specification.
4
Goals of Requirements Analysis
5
Requirements Gathering
6
Requirements Analysis (CONT.)
7
Requirements Analysis (CONT.)
8
Requirements Analysis (CONT.)
9
Design
• Design phase transforms
requirements specification:
– into a form suitable for
implementation in some
programming language.
10
Design
• In technical terms:
–during design phase, software
architecture is derived from the SRS
document.
• Two design approaches:
–traditional approach,
–object oriented approach.
11
Traditional Design Approach
12
Structured Analysis Activity
13
Structured Analysis (CONT.)
14
Structured Design
• High-level design:
– decompose the system into modules,
– represent relationships among the modules.
• Detailed design:
– different modules designed in greater detail:
• data structures and algorithms for each module are designed.
15
Object Oriented Design
• First identify various objects (real world entities)
occurring in the problem:
– identify the relationships among the objects.
– For example, the objects in a pay-roll software may be:
• employees,
• managers,
• pay-roll register,
• Departments, etc.
16
Object Oriented Design (CONT.)
• Object structure
–further refined to obtain the detailed
design.
• OOD has several advantages:
–lower development effort,
–lower development time,
–better maintainability.
17
Implementation
• Purpose of implementation
phase (coding phase):
–translate software design into
source code.
18
Implementation
19
Implementation (CONT.)
20
Integration and System Testing
21
Integration and System Testing
M1 M2
M3 M4
22
System Testing
23
Maintenance
• Corrective maintenance:
–Correct errors which were not discovered during the
product development phases.
• Perfective maintenance:
–Improve implementation of the system
–enhance functionalities of the system.
• Adaptive maintenance:
–Port software to a new environment,
• e.g. to a new computer or to a new operating system.
25
Classical Waterfall Model
26
Classical Waterfall Model
Feasibility Study
Req. Analysis
Design
Coding
Testing
Maintenance
27
Classical Waterfall Model (CONT.)
28
Drawbacks of classical water fall model
• 1. no feedback paths
• 2. difficult to accommodate changes
• 3. No overlapping of phases
• 4. Limited customer interactions
29
Iterative Waterfall Model
30
Iterative Waterfall Model (CONT.)
31
Iterative Waterfall Model (CONT.)
32
Iterative Waterfall Model (CONT.)
Feasibility Study
Req. Analysis
Design
Coding
Testing
Maintenance
33
Iterative Waterfall Model (CONT.)
34
Phase containment of errors
35
Prototyping Model
36
Prototyping Model (CONT.)
37
Prototyping Model (CONT.)
38
Prototyping Model (CONT.)
Build Prototype
Customer
Requirements satisfied
Customer
Gathering Quick Design Evaluation of Design
Prototype
Implement
Refine
Requirements Test
Maintenance
39
Prototyping Model (CONT.)
40
Evolutionary Model
• Evolutionary model:
–The system is broken down into several modules
which can be incrementally implemented and
delivered.
• First develop the core modules of the system.
• The initial product skeleton is refined into
increasing levels of capability:
–by adding new functionalities in successive versions.
41
Evolutionary Model (CONT.)
42
Evolutionary Model (CONT.)
C
A AB A
B
43
Advantages of Evolutionary Model
44
Disadvantages of Evolutionary Model
45
Spiral Model
46
Spiral Model (CONT.)
47
Spiral Model (CONT.)
Review and
plan for next Develop Next
phase Level of Product
48
Objective Setting (First Quadrant)
49
Risk Assessment and Reduction (Second Quadrant)
50
Spiral Model (CONT.)
51
Spiral Model as a meta model
52
Comparison of Different Life Cycle Models
53
Comparison of Different Life Cycle
Models (CONT.)
54