This is a group of Software Development Methodologies and practices that address some of the issues of classical software development methodologies. It promotes adaptive planning, evolutionary development, early delivery, continuous improvement, and encourages rapid and flexible response to change. It is about how to work together to achieve a common goal. This is not only suitable for software developers but also for Team Leaders, Project Managers, Product Managers, Development Managers, Testers, QA Managers, QA Engineers, Technical Writers, UX Designers, anyone involved in the delivering software.
Agile Principals
1.
Customer satisfaction by early and continuous
delivery of useful software
2.
Welcome changing requirements, even late in
development
3.
Working software is delivered frequently (weeks
rather than months)
4.
Close, daily cooperation between business people
and developers
5.
Projects are built around motivated individuals,
who should be trusted
6.
Face-to-face conversation is the best form of
communication (colocation)
7.
Working software is the principal measure of
progress
8.
Sustainable development, able to maintain a
constant pace
9.
Continuous attention to technical excellence and
good design
10.
Simplicity—the art of maximizing the amount of
work not done—is essential
11.
Self-organizing teams
12.
Regular adaptation to changing circumstance
Agile Manifesto
1.
Individuals and interactions over
processes and tools
2.
Working software over comprehensive
documentation
3.
Customer collaboration over contract
negotiation
4.
Responding to change over following a
plan
Extreme Programming
Extreme Programming (XP) is a software development methodology
which is intended to improve software quality and responsiveness to changing
customer requirements.
Who benefits from XP?
Scrum
Scrum is an agile process that allows us to focus on
delivering the highest business value in the shortest time. It is the most
popular way of introducing Agility due to its simplicity and flexibility. Scrum highly point out feedback s, team
self-management, and striving to build properly tested product increments
within short iterations.
SCRUM components
·
Scrum
Roles
·
The Process
·
Scrum Artifacts
Scrum Roles
Product Owner:
·
Define the features of the product
·
Decide on
release date and content
·
Be responsible for the profitability of the
product
·
Prioritize features according to market value
·
Adjust
features and priority every iteration, as needed
·
Accept or reject work results.
·
Accept or reject work results.
Scrum Master
·
Represents management to the project
·
Responsible for enacting Scrum values and
practices
·
Removes impediments
·
Ensure that the team is fully functional and
productive
·
Enable close cooperation across all roles and
functions
· Shield
the team from external interference s
Scrum Team
·
Typically 5-10 people
·
Cross-functional
·
Members should be full-time
·
Teams are self-organizing
·
Membership can change only between sprints
Other Stakeholders
Scrum artifacts
Product Backlog:
Product backlog is the complete list
of requirements including bugs, enhancement requests, and usability and
performance improvements that are not currently in the product release.
Sprint backlog: Sprint backlog is the list of backlog
items assigned to a sprint, but not yet completed. In common practice, no
sprint backlog item should take more than two days to complete. The sprint
backlog helps the team predict the level of effort required to complete a
sprint.
Burn down chart:
Depicts the total Sprint Backlog
hours remaining per day. Shows the estimated amount of time to release and ideally
should burn down to zero to the end of the sprint.





