Professional Documents
Culture Documents
SDLC
SDLC stands for System Development Life Cycle. A System Development Life Cycle is simply a series of orderly, interrelated activities leading to the successful completion of a set of programs.
The different phases of System Development Life Cycle are Definition, Analysis, Design, Coding, Testing, System Installation / Acceptance
LIFE
System Installation CYCLE
System Design
System Testing
System Development
SDLC
Preliminary Survey: Key question: What is the problem? Initial investigations are done. Output is statement specifying the scope and objective of the problem. Feasibility Study: Feasibility study is a test for system proposal according to its workability, impact on organization, ability to meet user needs & effective use of resources. Key questions are: What are the demonstrable needs? Is the problem worth solving? Cost & Benefits are estimated.
SDLC
Analysis: Analysis is a detailed study of various operations performed by a system and their relationships within and outside of the system. Key questions are: what must be done to solve the
problem?
The tools used are Data flow diagrams, interviews, onsite questions and observations After this phase, the
SDLC
Design:
Most creative and challenging phase. Key questions are: How the problem will be solved? What
management.
The output consists of procedural flowcharts, file layouts and report layouts. The projected cost is compared with actual cost.
SDLC
Implementation:
Less creative phase. Performs activities like testing, user training, site preparation, network installation etc. User acceptance is tested. Extensive user training is given if required. During testing, diagnostic procedures are used to locate and correct errors.
SDLC
Post-implementation & Maintenance: The user staff is adjusted to changes due to software. Because of aging process, periodic maintenance of hardware and software is required. Due to maintenance activity, standards of new system is maintained.
SDLC
Project termination: A system project may be dropped at any time because of some unavoidable conditions. Projects are dropped because of following conditions:
Waterfall Model
Waterfall Model
Waterfall Model
Advantages: Helps project management, documentation Complex systems are well-defined and structured Encourages a discipline of modelling
Disadvantages:
The requirements must be completely specified before programming begins. Rather inflexible Impossible to deal with changes
Iterative Approach
Incremental model
The incremental model combines elements of the linear sequential model with the iterative approach.
Incremental model
Incremental model applies linear sequences in a staggered
fashion as calendar time progresses. Each linear sequence produces a deliverable increment of the software.
E.g.
Word-processing
software
developed
using
the
incremental paradigm might deliver basic file management, editing, and document production functions in the first increment; more sophisticated editing. When an incremental model is used, the first increment is often a core product. In core product basic requirements are addressed, but many advanced features remain undelivered.
Incremental model
The core product is used by the customer. As a result of use, a plan is developed for the next
Incremental model
Advantage: Early increments can be implemented with fewer
people.
increments can be planned to manage technical risks The incremental model delivers software in small but usable pieces, called increments. In
Spiral Model
Spiral Model
An evolutionary software process model. It combines the iterative nature of prototyping with
releases.
During early iterations, the release may be a paper model or prototype.
Spiral Model
Customer communication tasks required to establish effective communication between developer and customer. Planningtasks required to define resources,
Spiral Model
Construction and releasetasks required to construct, test, install, and provide user support (e.g., documentation and training). Customer evaluationtasks required to obtain customer feedback. Each pass through the planning region results in
adjustments to the project plan. Cost and schedule are adjusted based on feedback derived from customer
evaluation.
The spiral model can be adapted to apply throughout the life of the computer software.
Spiral Model
Advantages: A realistic approach to the development of large-scale
RAD Model
RAD Model
It is an incremental model with short development cycle.
RAD Model
Activities:
Communication
Planning Modeling
Business modeling
Data modeling Process modeling
Construction Deployment
RAD Model
Disadvantages: 1. Large number of human resources 2. If decomposition is not proper then project may fail. 3. The project may fail if technical risks are high.
Concurrent Model
none Modeling act ivit y
Under development
Done
Concurrent Model
The activities of software development will undergo all
stages.
The activities lie in any one of the state at any time. All activities may exist concurrently. This process model is applicable to all types of software development. This model provides an accurate picture of current state of a project.
Unified Process
Elab o r at io n Incep t io n
co nst r uct io n
Release
soft ware increment
t r ansit io n
p r o d uct io n
Unified Process
This model is use case driven, architecture centric, iterative and incremental. During inception phase, fundamental business requirements are described through use cases. During elaboration phase, use cases are refined. From construction phase testing starts. For every use case unit tests are designed.
Extreme Programming