0% found this document useful (0 votes)
56 views

5-Agile Software Development - SCRUM-02-08-2023

The document discusses Agile software development processes. It explains that Agile methods are needed because business requirements often change rapidly. The Waterfall model is not well-suited for this environment. Agile focuses on rapid, incremental delivery through iterative development, customer feedback, and adapting to changes. It describes the Scrum framework as an example Agile method, including roles like Product Owner and Scrum Master, and events like sprints, daily stand-ups, and retrospectives. Kanban is also summarized as focusing on limiting work-in-progress and continuous flow rather than fixed processes.

Uploaded by

ramanentertains
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
56 views

5-Agile Software Development - SCRUM-02-08-2023

The document discusses Agile software development processes. It explains that Agile methods are needed because business requirements often change rapidly. The Waterfall model is not well-suited for this environment. Agile focuses on rapid, incremental delivery through iterative development, customer feedback, and adapting to changes. It describes the Scrum framework as an example Agile method, including roles like Product Owner and Scrum Master, and events like sprints, daily stand-ups, and retrospectives. Kanban is also summarized as focusing on limiting work-in-progress and continuous flow rather than fixed processes.

Uploaded by

ramanentertains
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 56

Agile Software Development Process

Process Models

7. What is AGILE?
Why Agile Software Development Process?
• Businesses now operate in a global, rapidly changing environment. They have to
respond to new opportunities and markets, changing economic conditions, and the
emergence of competing products and services.

• Rapid development and delivery is therefore now often the most critical requirement
for software systems.

• Businesses are willing to trade off software quality and compromise on requirements to
achieve faster deployment of the software because they are operating in a changing
environment

3
Why Agile Software Development Process?
• The initial requirements inevitably change because customers find it impossible to
predict how a system will affect working practices, how it will interact with other
systems, and what user operations should be automated.

• It may only be after a system has been delivered and users gain experience with it that the
real requirements become clear.

• As the requirements change are discovered, the system design or implementation has to
be reworked and retested. As a consequence, a conventional waterfall or specification-
based process is usually take a prolonged time period.

• Therefore, for business systems in particular, development processes that focus on rapid
software development and delivery are essential.
4
What is “Agility”?
• Effective (rapid and adaptive) response to change
• Effective communication among all stakeholders
• Drawing the customer onto the team
• Organizing a team so that it is in control of the work performed

Yielding …
• Rapid, incremental delivery of software

6
An Agile Process

• Is driven by customer descriptions of what is required (scenarios)


• Recognizes that plans are short-lived
• Develops software iteratively with a heavy emphasis on construction activities
• Delivers multiple ‘software increments’
• Adapts as changes occur

7
Characteristics

1. The processes of specification, design, and implementation are


interleaved

2. The system is developed in a series of versions.

3. System user interfaces are often developed using an interactive


development system that allows the interface design to be quickly
created by drawing and placing icons on the interface.

8
VALUES OF AGILE
PRINCIPLES OF AGILE
ADVANTAGES OF AGILE
How to implement Agile?
Agile
Frameworks and
Methodologies
SCRUM
Scrum
Originally proposed by Schwaber and Beedle
SCRUM is an agile development method which concentrates specifically on how to manage
tasks within a team-based development environment.
Scrum believes in empowering the development team and advocates working in small teams

Scrum—distinguishing features
• Development work is partitioned into “packets”
• Testing and documentation are on-going as the product is constructed
• Work occurs in “sprints” and is derived from a “backlog” of existing requirements
• Meetings are very short and sometimes conducted without chairs
• “demos” are delivered to the customer with the time-box allocated

16
SCRUM
Participants (Key roles)

• Product Owner -The Product Owner creates product backlog, prioritizes the
backlog and is responsible for the delivery of the functionality at each iteration
• Scrum Master - responsible for setting up the team, sprint meeting and removes
obstacles to progress
• Scrum Team - Team manages its own work and organizes the work to complete
the sprint or cycle
SCRUM Project Lifecycle
SCRUM PROCESS
SCRUM
Product Backlog

• Thisis a repository where requirements are tracked with details on the no


of requirements to be completed for each release.

• It
should be maintained and prioritized by Product Owner, and it should
be distributed to the scrum team.

• Team can also request for a new requirement addition or modification or


deletion
SCRUM
Sprint Backlog
A sprint backlog is a list of work items your team plans to complete during a project
sprint.
These items are usually pulled from the product backlog during the sprint planning
session.
A clear sprint backlog prevents scope creep by clarifying exactly what your team will be
doing—and not doing—during each sprint.
Scrum Master along with the team decides the work items from product backlog for Sprint

This step is followed by - Sprint planning, Daily Scrum, Sprint review (for every 2 weeks)
SCRUM
Daily Scrum

• The purpose of the Daily Scrum is to inspect progress toward the Sprint Goal and adapt
the Sprint Backlog as necessary, adjusting the upcoming planned work.
• It inspect how progress is trending toward completing the work in the Sprint Backlog.
• It is a 15-minute event for the developers of the Scrum Team. To reduce complexity, it is
held at the same time and place every working day of the Sprint.
• Daily Scrums improve communications, eliminate other meetings, identify impediments
to development for removal, highlight and promote quick decision-making, and improve
the Developers' level of knowledge.
SCRUM
Sprint Review

The purpose of the Sprint Review is to inspect the outcome of the Sprint and determine
future adaptations.
The Scrum Team presents the results of their work to key stakeholders and progress
toward the Product Goal is discussed. Based on this information, attendees collaborate on
what to do next.
The Product Backlog may also be adjusted to meet new opportunities. The Sprint Review
is a working session and the Scrum Team should avoid limiting it to a presentation.
The result of the Sprint Review is a revised Product Backlog that defines the probable
Product Backlog items for the next Sprint.
SCRUM
Sprint Review

The purpose of the Sprint Retrospective is to plan ways to increase quality and
effectiveness.

During the Sprint Retrospective, the team discusses:


• What went well in the Sprint
• What could be improved
• What will we commit to improve in the next Sprint

The Sprint Retrospective concludes the Sprint. It is timeboxed to a maximum of three


hours for a one-month Sprint.
SCRUM – Components of Sprint Backlog
SCRUM PROCESS
SCRUM PROCESS
SCRUM PRACTICES
Process Flow of SCRUM
Process flow of scrum testing is as follows:

• Each iteration of a scrum is known as Sprint


• Product backlog is a list where all details are entered to get the end-product
• During each Sprint, top user stories of Product backlog are selected and turned
into Sprint backlog
• Team works on the defined sprint backlog
• Team checks for the daily work
• At the end of the sprint, team delivers product functionality
KANBAN
Kanban is a process-driven framework that focuses more on continuously
improving the process rather than searching for the perfect process.
KANBAN – Pull System (Just in Time)
Six Core Practices / Kanban Properties
1. Visualize the workflow
2. Work limit in progress
3. Manage flow
4. Make process policies Explicit
5. Improve Collaboration
6. Feedback Loops
Visualize the workflow - Kanban Board
Kanban Advantages
It can be applied to virtually any type of work that follows a repeatable process; if your
work follows the pattern of “To Do,” “Doing,” and “Done,” it can be managed on a
Kanban board.

• Planning flexibility
• Shortened time cycles
• Fewer bottlenecks
• Continually improving team efficiency and effectiveness with every iteration of work
• Continuous delivery
SCRUM vs KANBAN
References
1. Roger Pressman, Software Engineering: A Practitioner’s Approach, 8th Edition,
McGraw-Hill, 2019.
2. https://www.youtube.com/watch?v=pxxmSLJj8FQ
3. https://www.youtube.com/watch?v=WjwEh15M5Rw&t=1359s

You might also like