Professional Documents
Culture Documents
2.basic Introduction of SDLC Phases and Explanation of SDLC Models
2.basic Introduction of SDLC Phases and Explanation of SDLC Models
1
2
Activities during Feasibility Study
3
Activities during Feasibility Study
4
Requirements Analysis and Specification
5
Goals of Requirements Analysis
6
Requirements Gathering
7
Requirements Analysis (CONT.)
8
Requirements Analysis (CONT.)
9
Requirements Analysis (CONT.)
10
Design
• Design phase transforms
requirements specification:
– into a form suitable for
implementation in some
programming language.
11
Design
• In technical terms:
–during design phase, software
architecture is derived from the SRS
document.
• Two design approaches:
–traditional approach,
–object oriented approach.
12
Traditional Design Approach
13
Structured Analysis Activity
14
Structured Analysis (CONT.)
15
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.
16
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.
17
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.
18
Implementation
19
Implementation
20
Implementation (CONT.)
21
Integration and System Testing
22
Integration and System Testing
M1 M2
M3 M4
23
System Testing
24
Maintenance
25
Maintenance (CONT.)
• 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.
26
Classical Waterfall Model
27
Classical Waterfall Model
Feasibility Study
Req. Analysis
Design
Coding
Testing
Maintenance
28
Classical Waterfall Model (CONT.)
29
Drawbacks of classical water fall model
• 1. no feedback paths
• 2. difficult to accommodate changes
• 3. No overlapping of phases
• 4. Limited customer interactions
30
Iterative Waterfall Model
31
Iterative Waterfall Model (CONT.)
32
Iterative Waterfall Model (CONT.)
33
Iterative Waterfall Model (CONT.)
Feasibility Study
Req. Analysis
Design
Coding
Testing
Maintenance
34
Iterative Waterfall Model (CONT.)
35
Phase containment of errors
36
Prototyping Model
37
Prototyping Model (CONT.)
38
Prototyping Model (CONT.)
39
Prototyping Model (CONT.)
Build Prototype
Customer
Requirements satisfied
Customer
Gathering Quick Design Evaluation of Design
Prototype
Implement
Refine
Requirements Test
Maintenance
40
Prototyping Model (CONT.)
41
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.
42
Evolutionary Model (CONT.)
43
Evolutionary Model (CONT.)
C
A AB A
B
44
Advantages of Evolutionary Model
45
Disadvantages of Evolutionary Model
46
Spiral Model
47
Spiral Model (CONT.)
48
Spiral Model (CONT.)
Review and
plan for next Develop Next
phase Level of Product
49
Objective Setting (First Quadrant)
50
Risk Assessment and Reduction (Second Quadrant)
51
Spiral Model (CONT.)
52
Spiral Model as a meta model
53
Comparison of Different Life Cycle Models
54
Comparison of Different Life Cycle Models
(CONT.)
55