Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 21

SDLC

Systems Development Life Cycle


What is SDLC?
 The SDLC highlights different stages (phases or steps) of the
development process. The life cycle approach is used so
users can see and understand what activities are involved
within a given step. It is also used to let them know that at
any time, steps can be repeated or a previous step can be
reworked when needing to modify or improve the system.
Phases o f SD LC

Phase 2:
Phase 1: Phase 3:
Systems
Planning Phase Systems Design
Analysis and
Requirements

Phase 4:
Phase 5: Development
Integration and
Testing

Phase 6:
Implementation

Phase 7:
Operations and
Maintenance
Phase 1: Planning
 This is the first phase in the systems development process. It
identifies whether or not there is the need for a new system to
achieve a business’ strategic objectives.
 This is a preliminary plan (or a feasibility study) for a
company’s business initiative to acquire the resources to
build on an infrastructure to modify or improve a service. The
company might be trying to meet or exceed expectations for
their employees, customers, and other stakeholders too.
 The purpose of this step is to find out the scope of the
problem and determine solutions. Resources, costs, time,
benefits, and other items should be considered at this stage.
Phase 2: Systems Analysis and
Requirements
 The second phase is where businesses will work on the source of their problem
or the need for a change. In the event of a problem, possible solutions are
submitted and analyzed to identify the best fit for the ultimate goal(s) of the
project. This is where teams consider the functional requirements of the project
or solution. It is also where system analysis takes place - or analyzing the needs
of the end users to ensure the new system can meet their expectations. Systems
analysis is vital in determining what a business’ needs are, as well as how they
can be met, who will be responsible for individual pieces of the project, and what
sort of timeline should be expected.
 There are several tools businesses can use that are specific to the second
phase. They include:
 CASE (Computer Aided Systems/Software Engineering)
 Requirements gathering
 Structured analysis
Phase 3: Systems Design
 The third phase describes, in detail, the necessary
specifications, features and operations that will satisfy the
functional requirements of the proposed system which will be
in place. This is the step for end users to discuss and
determine their specific business information needs for the
proposed system. It is during this phase that the essential
components (hardware and/or software) structure
(networking capabilities), processing and procedures for the
system to accomplish its objectives are considered.
Phase 4: Development
 The fourth phase is when the real work begins; in particular,
when a programmer, network engineer and/or database
developer are brought on to do the major work on the
project. This work includes using a flowchart to ensure that
the process of the system is properly organized. The
development phase marks the end of the initial section of the
process. Additionally, this phase signifies the start of
production. The development stage is also characterized by
instillation and change. Focusing on training can be a huge
benefit during this phase.
Phase 5: Integration and Testing
 The fifth phase involves systems integration and system
testing (of programs and procedures) - normally carried out
by a Quality Assurance (QA) professional - to determine if
the proposed design meets the initial set of business goals.
Testing may be repeated, specifically to check for errors,
bugs and interoperability. This testing will be performed until
the end user finds it acceptable. Another part of this phase is
verification and validation, both of which will help ensure the
program’s successful completion.
Phase 6: Implementation
 The sixth phase is when the majority of the code for the
program is written. Additionally, this phase involves the actual
installation of the newly-developed system. This step puts
the project into production by moving the data and
components from the old system and placing them in the
new system via a direct cutover. While this can be a risky
(and complicated) move, the cutover typically happens
during off-peak hours, thus minimizing the risk. Both system
analysts and end-users should now see the realization of the
project that has implemented changes.
Phase 7: Operations and
Maintenance
 The seventh and final phase involves maintenance and
regular required updates. This step is when end users can
fine-tune the system, if they wish, to boost performance, add
new capabilities or meet additional user requirements.
Importance of SDLC
 If a business determines a change is needed during any
phase of the SDLC, the company might have to proceed
through all the above life cycle phases again. The life cycle
approach of any project is a time-consuming process. Even
though some steps are more difficult than others, none are to
be overlooked. An oversight could prevent the entire system
from functioning as planned.
SYSTEM
DEVELOPMENT
METHODS
  Structured Analysis Object-Oriented Analysis Agile/Adaptive Methods
Data flow diagrams, process Various object-oriented diagrams Tools that enhance communication
descriptions and business depict system actors, methods, and such as collaborative software,
Modeling Tools process modeling. messages. brainstorming, and whiteboards.

Traditional Method, which has Integrates easily with object- Very flexible and efficient in dealing
been very popular over time. oriented programming languages. with change. Stresses team
Relies heavily on written Code is modular and reusable, interaction and reflects a set of
documentation. Frequent phase which can reduce cost and community-based values. Frequent
iteration can provide flexibility development time. Easy to deliverables constantly validate the
Pros comparable with other methods. maintain and expand as new project and reduce risk.
Well-suited to project objects can be cloned using
management tools and inherited properties.
techniques.

Changes can be costly, Somewhat newer method might be Team members need high level of
especially in later phases. less familiar to development team technical and communication skills.
Requirements are defined early members. Interaction of objects Lack of structure and documentation
and can change during and classes can be complex in can introduce risk factors. Overall
development. Users might not larger systems. project might be subject to scope
Cons
be able to describe their needs change as user requirements change.
until they can see examples of
features and functions.
Roles and
Responsibilities of a
Software/System
Developer Team
PROJECT SPONSOR
 The Project Sponsor is the person or group that provides direction and
resources, including financial resources for the software project. The
Project Sponsor works with the project management team, aiding with
wider project matters such as scope clarification, progress, monitoring,
and influencing others in order to benefit the software project.
 The Project Sponsor leads the project through the software supplier
selection process until it is formally authorised. For issues that are
beyond the control of the Product Owner, the Project Sponsor serves
as an escalation path. The Project Sponsor may also be involved in
other important issues such as authorizing changes in scope, phase-
end reviews, and go/no-go decisions when the stakes of the project
are particularly high.
SUBJECT MATTER EXPERTS
(SME)
 Subject Matter Experts are the accountants, finance
controllers, salespeople, production managers and so on
who roll up their sleeves each day. They know their roles
inside and out and are rarely technical. However, their lack of
technical knowledge is their strength, as they are not bogged
down in technicalities and instead are purely focused on
business outcomes.
PRODUCT OWNER
 Product Owner is a software development role for a person
who represents the business or end-users and is responsible
for working with the user group to determine what features
will be in the product release.
 The Product Owner is also responsible for the prioritised
backlog and maximising the return on investment (ROI) of
the software project. Part of this role’s responsibility includes
documenting user stories or requirements for the software
project. They act as the main point of contact for all decisions
concerning the project and as such, need to be empowered
to perform their responsibilities without the need to seek too
much prior authorisation from the Project Sponsors.
The Product Owner is responsible
for:
 Ensuring that the software product vision statement is adhered to
 Making the final decision on all scope related decisions
 Maintaining and updating the product backlog on a continuous basis
by
 refining new requirements
 removing requirements that fall out of scope
 adding new requirements identified as being required to achieve the
software product vision statement
 reviewing and setting the priorities assigned to the product backlog and
heading up all project planning meetings
 Resolving any disputes either with the software development team
or internally
PROJECT MANAGER (PM)
 The Project Manager (PM) is responsible for knowing the “who, what,
where, when and why” of the software project. This means knowing the
stakeholders of the project and being able to effectively communicate with
each of them. The Project Manager is also responsible for creating and
managing the project budget and schedule as well as processes including
scope management, issues management and risk management.
 Some of the Project Manager duties can include:
 Developing a software project plan
 Manage deliverables according to the software project plan
 Recruiting software project staff
 Leading and managing the software project team
 Determining the methodology used on the project
 Establishing a project schedule and determine each phase
 Assigning tasks to project team members
 Providing regular updates to senior management
TECHNICAL LEAD
 This person translates the business requirements into a technical
solution. Because of this responsibility, it is beneficial to have the
Technical Lead involved in the planning phase to hear the business
requirements from the customer’s point of view and ask questions.
 The Technical Lead is the development team leader and works with
the developers to provide technical details and estimates for the
proposed solution. This information is used by the Project Manager
to create the Statement of Work and the Work Breakdown
Structure documents for the software project. It is critical that the
Technical Lead can effectively communicate the status of the
software project to the Project Manager so that issues or variances
can be effectively addressed as soon as possible. The Technical
Lead is also responsible for establishing and enforcing standards
and practices with the software development team.
SOFTWARE DEVELOPERS
 The Software Developers (front-end and back-end) are
responsible for using the technical requirements from the
Technical Lead to create cost and timeline estimates. The
Software Developers are also responsible for building the
deliverables and communicating the status of the software
project to the Technical Lead or Project Manager. It is critical
that the other team members effectively communicate the
technical requirements to the Software Developers to reduce
project risk and provide the software project with the greatest
chance of success.
SOFTWARE TESTERS

 They set up the test environments or assist system administration


and network management staff in doing so
 As test execution begins, the number of testers often increases,
starting with the work required to implement tests in the test
environment
 Testers execute and log the tests, evaluate the results and
document problems found
 They monitor the testing and the test environment, often using
tools for this task, and often gather performance metrics
 Throughout the software testing life cycle, they review each other’s
work, including test specifications, defect reports and test results

You might also like