System Development Process
10/09/22
Introducing the Software Development
Life Cycle (SDLC)
What is System Development?
What is SDLC?
What are the stages in SDLC?
What are the SDLC Models?
Tools, Techniques and Methodologies.
10/09/22
What is system Development?
This is the philosophy that tries to address the
need for a new system in a structured way. It
involves:
systems analysis,
systems design,
programming,
testing,
conversion, and
production and maintenance.
10/09/22
What is SDLC?
-The acronym stands for Software
Development Life Cycle.
-It’s a standard model used word wide to
develop a software.
-It’s necessary to ensure development of quality
software.
-It basically refers to the logical steps taken to
develop a software product.
10/09/22
Stages/phases of SDLC Model
10/09/22
Software Development Life Cycle
-The software development life cycle (SDLC) is
“the process of understanding how an information system
(IS) can support business needs by designing a system,
building it, and delivering it to users” (Dennis &
Tegarden, 2009)
- The SDLC refers to “a series of steps used to mark the
phases of evelopment for an information system”
(Valacich et al, 2012)
10/09/22
Guidelines to Software Development
Life Cycle
What are the guidelines for software Development?
I. Arrange tasks into phases (groups of activities
II. Involve all stakeholders (people who have a stake in
the system being developed)
III. Develop clearly defined standards and procedures the
company is expected to follow
10/09/22
Stakeholders in System Development
Participants
in the system
development
life cycle?
10/09/22
A system Analyst
Who is a systems analyst?
The person responsible
for designing and
developing information
system
The mediator/liaison
between users and IT
professionals
10/09/22
Creating a new/Modifying a system
Reasons for creating a new or modify an existing
system:
10/09/22
Project Team
What is a project team?
10/09/22
Importance of Systemic Methodology
NB. Systemic methodologies are used for workflow management
10/09/22
Phases of SDLC
10/09/22
1. Problem Identification phase
1. This is the first and very important phase of system
development live cycle.
2. The systems analyst identifies problems, opportunities,
and objectives for a new or enhanced system through:
3. Suggest solutions.
4. Prepare a report.
10/09/22
2. Planning phase
1. Identify opportunity and perform a feasibility study and
compare the various options.
2. Create a project plan.
-A plan will keep the project on track by determining
scope, create a work break-down structure, project
staffing, identify activities and predetermine
milestones, perform risk analysis and management
-A plan can be used for the evaluation of the project
progress i.e. to check whether the project is on track
10/09/22
2. Planning phase cont……
10/09/22
3. System Analysis Phase
1. Identify opportunity and analyze requirements by
breaking them down into parts (draw a diagram) i.e.
asking such questions like:
-What is being done? How is it being done? Does a problem exist?
If yes, how frequently does it occur? What is the cause of the
problem? Who will use the system? What will the system do?
Where and when will it be used? What will be the primary output?
2. Gather requirements by talking to all stakeholders and
technical providers.
3. Write a proposal to present to stakeholders’ views.
10/09/22
3. Systems Analysis Phase
cont……
Basically gathering Information using the following
techniques:
Conducting interviews
Using questionnaire
Observation
Review documentation
Conduct research
10/09/22
4. Design phase
1. Decide whether the system will be created in house
or out sourced.
2. The structure or design for the proposed system is
finalized i.e.:
structure of files, databases, input & output
processes, and screens (interfaces) are decided.
3. Re-examine the feasibility study done in the Analysis
Phase.
10/09/22
4. Design Phase cont…..
Design Tools and Techniques involve the
following
1. Flowchart (Discussion, advantage?)
2. Data Flow Diagrams
3. Structured English
5. Decision Table
6. Decision Tree
10/09/22
Data Flow Diagrams: Example
10/09/22
Decision Table: Example
10/09/22
Decision Table: Example
10/09/22
5. Implementation phase
1. The constructed or purchased system is installed,
tested and commissioned.
2. Training is offered for end users.
3. A technical support plan is put into place.
4. The system use is evaluated by end users i.e. post
implementation audit for improvement
10/09/22
6. Maintenance phase
1. Maintenance includes
Identifying , correcting and reporting errors,
Identifying enhancements
backing up data or
supporting end users.
2. Some of the errors go undetected in the testing phase.
It is when employees start using a new system that
these errors come to the surface.
3. Correcting these errors is one of the most important
aspects of system maintenance.
10/09/22
7. Documentation
What is system documentation?
Refers to the collection of documents that describe the
requirements, capabilities, limitations, design,
operation, and maintenance of a system
It includes reports, diagrams, programs, manuals and
other deliverables
10/09/22
System Development
(SDLC)Models
10/09/22
Examples of SDLC Models:
Water Fall Model
Spiral Model
Agile Model
Prototyping
V-shaped
Incremental
10/09/22
Waterfall Model
10/09/22
Waterfall cont’d
All these phases are cascaded to each other in which progress
is seen through phases like a waterfall.
The next phase is started only after the defined set of goals
are achieved for previous phase and then signed off
Waterfall model is document driven whereby the result of
each phase is one or more documents which are completed
and “sign-off” before the next phase begins
In this model phases do not overlap.
10/09/22
Advantages & Disadvantages of
waterfall model:
Assignment:
Conduct a research and list all the advantages
and disadvantages of the waterfall model (Not for
submission)
10/09/22
Spiral Model
10/09/22
Spiral model cont’d
The spiral development model is a risk driven
process model. Focus in spiral model is assessing
and minimizing risk
The spiral model is similar to the incremental
model, with more emphases placed on risk analysis
10/09/22
Advantages & Disadvantages of
spiral model:
Assignment:
Conduct a research and list all the
advantages and disadvantages of the spiral
model (Not for submission)
10/09/22
Spiral model cont’d
Spiral Model is very widely used in the software
industry as it is in synch with the natural
development process of any product i.e. learning
with maturity and also involves minimum risk for
the customer as well as the development firms.
10/09/22
Agile Model
10/09/22
Agile model cont’d
Speed up or bypass one or more life cycle phases.
Usually less formal and reduced scope.
Used for time-critical applications.
Used in organizations that employ disciplined
methods.
10/09/22
Situations to apply Agile method
When there is a budget constraint and risk evaluation is
important.
A customer is not sure of their requirements which is
usually the case.
A new product line which should be released in phases
to get enough customer feedback.
When significant changes are expected in the product
during the development cycle.
10/09/22
Advantages & Disadvantages of
Agile model:
Assignment:
Conduct a research and list all the advantages and
disadvantages of the agile model (not for submission)
10/09/22
Prototyping
1. Prototype is a working model of software with some
limited functionality.
2. Prototype does not always hold the exact logic used in
the actual software application.
3. Prototyping is used to allow the users evaluate developer
proposals and try them out before implementation.
4. Prototype helps understand user-specific requirements
not considered by the developer during product design.
10/09/22
Prototyping Cont…..
10/09/22
Advantages & Disadvantages of
prototyping:
Assignment:
Conduct a research and list all the
advantages and disadvantages of the
prototyping model (Not for submission)
10/09/22
V-Shaped SDL Model
A variant of the
Waterfall that
emphasizes the
verification and
validation of the
product.
Testing of the product
is planned in parallel
with a corresponding
phase of development
10/09/22
V-Shaped model cont’d
Emphasize planning for verification and
validation of the product in early stages of
product development
Each deliverable must be testable
Project management can track progress by
milestones
Easy to use
10/09/22
Advantages & Disadvantages of V-
Shaped model:
Assignment:
Do a research and list all the advantages
and disadvantages of the V-Shaped
model (Not for submission)
10/09/22
Incremental Model
Incremental process starts with a simple implementation of a
small set of the software requirements and iteratively enhances
the evolving versions until the complete system is implemented.
An iterative life cycle model does not attempt to start with a full
specification of requirements.
Instead, development begins by specifying and implementing just
part of the software, which is reviewed to identify further
requirements e.g. Enterprise Resource Planning (ERP) system
This process is then repeated, producing a new version of the
software at the end of each iteration of the model.
10/09/22
Incremental Model cont’d
10/09/22
Advantages & Disadvantages of
incremental model:
Assignment:
Do a research and list all the
advantages and disadvantages of the
Iterative model
10/09/22
CASE Tools, Techniques and Methodologies
CASE Tools - software that provide automated support on system
development activities (system analysis, system design, Coding,
testing, maintenance etc.)
Techniques – a collection of guidelines that help analysts complete a
system development activity or task. Can be step-by-step instructions
or general advice e.g. questionnaires, interview guide etc.
A methodology is basically or principles to follow in a particular
situation e.g. water fall model (with specific procedure)
-Most methodologies are comprehensive, multi-step approaches to systems
development
-There are many methodologies out there. See www.methodology.org .
10/09/22
END
10/09/22