Business Analysis
Training
SDLC in Detail
Page 2Classification: Restricted
Agenda
• Incremental Approach
• Iterative Approach
• Agile-Scrum
Page 3Classification: Restricted
Incremental Approach
Page 4Classification: Restricted
Incremental Approach
• The incremental model is essentially a series of waterfall cycles.
• The requirements are known at the beginning of the project and are
divided into groups for incremental development.
• A core set of functions is identified in the first cycle and is built and
deployed as the first release.
• The software development cycle is repeated, with each release adding
more functionality until all requirements are met.
• Each development cycle acts as the maintenance phase for the previous
software release.
• While new requirements that are discovered during the development of a
given cycle can be implemented in subsequent cycles, this model assumes
that most requirements are known up front.
• A modification to the incremental model allows development cycles to
overlap. That is, a subsequent cycle may begin before the previous cycle is
complete.
Page 5Classification: Restricted
Example of Incremental Approach
Incremental development is a staging and scheduling strategy in which
various parts of the system are developed at different rates, and integrated
as they are completed.
Page 6Classification: Restricted
Incremental Approach - Advantages
• Generates working software quickly and early during the software life
cycle.
• This model is more flexible – less costly to change scope and requirements.
• It is easier to test and debug during a smaller iteration.
• In this model customer can respond to each built.
• Lowers initial delivery cost.
• Easier to manage risk because risky pieces are identified and handled
during it’d iteration.
Page 7Classification: Restricted
Incremental Approach - Disadvantages
• Needs good planning and design. The majority of requirements must be
known in the beginning.
• Needs a clear and complete definition of the whole system before it can
be broken down and built incrementally.
• Total cost is higher than waterfall.
Page 8Classification: Restricted
When to Use Incremental Approach
• The incremental model is good for projects where requirements are
known at the beginning, but which need functionality early in the project
or which can benefit from the feedback of earlier cycles.
• Because each cycle produces a working system, it may also be
advantageous for projects whose continued funding is not assured and
may be cut at any time.
• It is best used on low to medium-risk programs.
• If the risks are too high to build a successful system using a single waterfall
cycle, spreading the development out over multiple cycles may lower the
risks to a more manageable level.
Page 9Classification: Restricted
Iterative Approach
• Iterative development is best defined in terms of its processes that allow
for dynamic development rather than any single defined method or
approach.
Page 10Classification: Restricted
Iterative Approach
Definition
Iterative approach or development is a process that grows a system feature
by feature during self-contained cycles of analysis, design, development and
testing that end in the production of a stable, fully integrated and tested,
partially complete system that incorporates all of the features of all previous
iterations.
Page 11Classification: Restricted
Example of Iterative Approach
Iterative development is a rework scheduling strategy in which time is set
aside to revise and improve parts of the system.
Page 12Classification: Restricted
Iterative Approach
• Iteration comes from word Iterative means repetitious.
• Iteration means the act of repeating a process usually with the aim of
approaching a desired goal or target or result. Each repetition of the
process is also called an "iteration," and the results of one iteration are
used as the starting point for the next iteration.
• In software development, An iteration is made up of a series of activities
that include conducting needs analysis, developing parts of the system,
then deploying and testing them. In the end, one or more functionalities
are ready for integration into the final product.
Page 13Classification: Restricted
Iterative Approach - Advantages
• More adaptable to changes.
• Allows for early detection of risks associated with a given project
• QA can be performed at the end of each iteration.
• Project managers are in a better position to assess the impact of changes
on the delivery dates.
• Early visible progress.
• A continuous improvement methodology.
• Corrective actions can be taken at the end of each iteration.
Page 14Classification: Restricted
Iterative Approach - Disadvantages
• It is difficult to freeze requirements, and they may continue to change in
later iterations because of increasing customer demands. As a result,
more iterations may be added to the project, leading to project delays
and cost overruns.
• The project requires a very efficient change control mechanism to
manage changes made to the system during each iteration.
• More time spent in review and analysis
• A lot of steps that need to be followed in this model
• Delay in one phase can have detrimental effect on the software as a
whole
Page 15Classification: Restricted
When to Use Iterative Approach
•Requirements of the complete system are clearly defined and understood.
•When the project is big.
Page 16Classification: Restricted
Difference between Incremental and Iterative
Incremental development is a staging and scheduling strategy in which
various parts of the system are developed at different rates, and integrated
as they are completed.
Iterative development is a rework scheduling strategy in which time is set
aside to revise and improve parts of the system.
Page 17Classification: Restricted
Agile Methodology
Page 18Classification: Restricted
Agile Approach
Page 19Classification: Restricted
What is Agile
 Processes and techniques for incremental and iterative software
development
 Agile Manifesto
 – “We are uncovering better ways of developing software by doing it
and helping others do it. Through this work we have come to value”:
 Individuals and interactions over processes and tools
 Working software over comprehensive documentation
 Customer collaboration over contract negotiation
 Responding to change over following a plan
Page 20Classification: Restricted
What does the Agile Manifesto Mean?
Page 21Classification: Restricted
Principles of Agile
Page 22Classification: Restricted
Principles of Agile (2)
Page 23Classification: Restricted
Central: Incremental and Iterative
Development
Page 24Classification: Restricted
Agile Methods
Page 25Classification: Restricted
Scrum Lifecycle
 Planning
–Vision, expectations, funding
 Staging
– Identify requirements, prioritize iteration
 Development
– Implement system ready for release in each sprint
 Release
–Operational deployment
Page 26Classification: Restricted
Development team
product owner
scrum master
SCRUM team
Page 27Classification: Restricted
Agile Methods – Scrum (1)
Page 28Classification: Restricted
Scrum Roles and Process
Page 29Classification: Restricted
Scrum Ceremonies
1.SPRINT PLANNING
(Discuss top PBI scope>estimate)
2. Daily stand up meeting
(<15 minutes, what I did till this meeting, what ill do till next meeting ,
what's blocking me)
3. Sprint review (last day)
(To demonstrate what is ready to ship to po, no ppt, demo on prodn
env
4. Sprint retrospective –
what went right, what went wrong
Page 30Classification: Restricted
Agile Methods – Scrum (2)
Page 31Classification: Restricted
Product Backlog
PBIs are Uniquely ranked items, progressive
user stories are short plain language of description of functionality in
terms of customer benefit/need
Stories (=requirement) priority estima
te
As a user I want to be able to easily install
the application so that I can access my
bank account on my mobile
1 5
As a user I want to be able to view my bank
transaction history so that I can track my
transactions
2 3
Page 32Classification: Restricted
Agile Methods – Scrum (3)
Page 33Classification: Restricted
Agile Methods – Scrum (3)
Commitment
– Team takes responsibility to complete the Sprint. To avoid things that
will stand in its way
Focus
– Team’s focus is maintained. Distractions, interruptions are fielded
Openness
– Overall and individual status and commitments kept open.
Respect
– Team responsibility rather than scapegoat.
Courage
– Management and team have the courage to take responsibility to do
what is necessary
Page 34Classification: Restricted
Thank you
Page 35Classification: Restricted
Thank you
Page 36Classification: Restricted
Thank you

SDLC - Part 2

  • 1.
  • 2.
    Page 2Classification: Restricted Agenda •Incremental Approach • Iterative Approach • Agile-Scrum
  • 3.
  • 4.
    Page 4Classification: Restricted IncrementalApproach • The incremental model is essentially a series of waterfall cycles. • The requirements are known at the beginning of the project and are divided into groups for incremental development. • A core set of functions is identified in the first cycle and is built and deployed as the first release. • The software development cycle is repeated, with each release adding more functionality until all requirements are met. • Each development cycle acts as the maintenance phase for the previous software release. • While new requirements that are discovered during the development of a given cycle can be implemented in subsequent cycles, this model assumes that most requirements are known up front. • A modification to the incremental model allows development cycles to overlap. That is, a subsequent cycle may begin before the previous cycle is complete.
  • 5.
    Page 5Classification: Restricted Exampleof Incremental Approach Incremental development is a staging and scheduling strategy in which various parts of the system are developed at different rates, and integrated as they are completed.
  • 6.
    Page 6Classification: Restricted IncrementalApproach - Advantages • Generates working software quickly and early during the software life cycle. • This model is more flexible – less costly to change scope and requirements. • It is easier to test and debug during a smaller iteration. • In this model customer can respond to each built. • Lowers initial delivery cost. • Easier to manage risk because risky pieces are identified and handled during it’d iteration.
  • 7.
    Page 7Classification: Restricted IncrementalApproach - Disadvantages • Needs good planning and design. The majority of requirements must be known in the beginning. • Needs a clear and complete definition of the whole system before it can be broken down and built incrementally. • Total cost is higher than waterfall.
  • 8.
    Page 8Classification: Restricted Whento Use Incremental Approach • The incremental model is good for projects where requirements are known at the beginning, but which need functionality early in the project or which can benefit from the feedback of earlier cycles. • Because each cycle produces a working system, it may also be advantageous for projects whose continued funding is not assured and may be cut at any time. • It is best used on low to medium-risk programs. • If the risks are too high to build a successful system using a single waterfall cycle, spreading the development out over multiple cycles may lower the risks to a more manageable level.
  • 9.
    Page 9Classification: Restricted IterativeApproach • Iterative development is best defined in terms of its processes that allow for dynamic development rather than any single defined method or approach.
  • 10.
    Page 10Classification: Restricted IterativeApproach Definition Iterative approach or development is a process that grows a system feature by feature during self-contained cycles of analysis, design, development and testing that end in the production of a stable, fully integrated and tested, partially complete system that incorporates all of the features of all previous iterations.
  • 11.
    Page 11Classification: Restricted Exampleof Iterative Approach Iterative development is a rework scheduling strategy in which time is set aside to revise and improve parts of the system.
  • 12.
    Page 12Classification: Restricted IterativeApproach • Iteration comes from word Iterative means repetitious. • Iteration means the act of repeating a process usually with the aim of approaching a desired goal or target or result. Each repetition of the process is also called an "iteration," and the results of one iteration are used as the starting point for the next iteration. • In software development, An iteration is made up of a series of activities that include conducting needs analysis, developing parts of the system, then deploying and testing them. In the end, one or more functionalities are ready for integration into the final product.
  • 13.
    Page 13Classification: Restricted IterativeApproach - Advantages • More adaptable to changes. • Allows for early detection of risks associated with a given project • QA can be performed at the end of each iteration. • Project managers are in a better position to assess the impact of changes on the delivery dates. • Early visible progress. • A continuous improvement methodology. • Corrective actions can be taken at the end of each iteration.
  • 14.
    Page 14Classification: Restricted IterativeApproach - Disadvantages • It is difficult to freeze requirements, and they may continue to change in later iterations because of increasing customer demands. As a result, more iterations may be added to the project, leading to project delays and cost overruns. • The project requires a very efficient change control mechanism to manage changes made to the system during each iteration. • More time spent in review and analysis • A lot of steps that need to be followed in this model • Delay in one phase can have detrimental effect on the software as a whole
  • 15.
    Page 15Classification: Restricted Whento Use Iterative Approach •Requirements of the complete system are clearly defined and understood. •When the project is big.
  • 16.
    Page 16Classification: Restricted Differencebetween Incremental and Iterative Incremental development is a staging and scheduling strategy in which various parts of the system are developed at different rates, and integrated as they are completed. Iterative development is a rework scheduling strategy in which time is set aside to revise and improve parts of the system.
  • 17.
  • 18.
  • 19.
    Page 19Classification: Restricted Whatis Agile  Processes and techniques for incremental and iterative software development  Agile Manifesto  – “We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value”:  Individuals and interactions over processes and tools  Working software over comprehensive documentation  Customer collaboration over contract negotiation  Responding to change over following a plan
  • 20.
    Page 20Classification: Restricted Whatdoes the Agile Manifesto Mean?
  • 21.
  • 22.
  • 23.
    Page 23Classification: Restricted Central:Incremental and Iterative Development
  • 24.
  • 25.
    Page 25Classification: Restricted ScrumLifecycle  Planning –Vision, expectations, funding  Staging – Identify requirements, prioritize iteration  Development – Implement system ready for release in each sprint  Release –Operational deployment
  • 26.
    Page 26Classification: Restricted Developmentteam product owner scrum master SCRUM team
  • 27.
  • 28.
  • 29.
    Page 29Classification: Restricted ScrumCeremonies 1.SPRINT PLANNING (Discuss top PBI scope>estimate) 2. Daily stand up meeting (<15 minutes, what I did till this meeting, what ill do till next meeting , what's blocking me) 3. Sprint review (last day) (To demonstrate what is ready to ship to po, no ppt, demo on prodn env 4. Sprint retrospective – what went right, what went wrong
  • 30.
  • 31.
    Page 31Classification: Restricted ProductBacklog PBIs are Uniquely ranked items, progressive user stories are short plain language of description of functionality in terms of customer benefit/need Stories (=requirement) priority estima te As a user I want to be able to easily install the application so that I can access my bank account on my mobile 1 5 As a user I want to be able to view my bank transaction history so that I can track my transactions 2 3
  • 32.
  • 33.
    Page 33Classification: Restricted AgileMethods – Scrum (3) Commitment – Team takes responsibility to complete the Sprint. To avoid things that will stand in its way Focus – Team’s focus is maintained. Distractions, interruptions are fielded Openness – Overall and individual status and commitments kept open. Respect – Team responsibility rather than scapegoat. Courage – Management and team have the courage to take responsibility to do what is necessary
  • 34.
  • 35.
  • 36.