5-Agile Software Development - SCRUM-02-08-2023
5-Agile Software Development - SCRUM-02-08-2023
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
7
Characteristics
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
• It
should be maintained and prioritized by Product Owner, and it should
be distributed to the scrum team.
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.
• 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