3. Why Agile Principles?
In the mid-1990s, there are critical troubles
about software development projects mainly
by follow a heavyweight software
development methodology, which consisted
of a complete requirements document,
followed by coding and testing based on
plans.
The philosophy was often summarized as “Do
it right the first time.”
4. Why Agile Principles?
•In February 2001, 17
creators and supporters
of the lightweight
methodologies had a
meeting in Snowbird;
•To discuss a way to fit
the principles of your
methodologies , which
originated the agile
manifesto;
5. Why Agile Principles?
Software engineers in attendance in Snowbird
Included:
Kent Beck, Mike Beedle, Alistair Cockburn,
Ward Cunningham, Martin Fowler, James
Grenning, Jim Highsmith, Andy Hunt, Ron
Jeffries, Jon Kern, Brian Marick, Robert Martin,
Steve Mellor, Ken Schwaber, Jeff Sutherland,
Dave Thomas, and Arie van Bennekum.
6. Why Agile Principles? – Agile Manifesto
->Individuals and interactions
over processes and tools;
->Working software
over comprehensive documentation;
->Customer collaboration
over contract negotiation; and
->Responding to change
over following a plan.
That is, while there is value in the items
below (not bold), we value the items
above (bold) more.
7. Agile Principles
1- Our highest priority is to satisfy the customer through
early and continuous delivery of valuable software.
2- Welcome changing requirements, even late in
development. Agile processes harness change for the
customer's competitive advantage.
3 - Deliver working software frequently, from a couple of
weeks to a couple of months, with a preference to the
shorter timescale.
4 - Business people and developers must work together
daily throughout the project.
8. Agile Principles
5 - Build projects around motivated individuals. Give them
the environment and support they need, and trust them to
get the job done.
6 - The most efficient and effective method of
transmitting information to and within a development
team is face-to-face conversation.
7 - Working software is the primary measure of progress.
8 - Agile processes promote sustainable development.
The sponsors, developers, and users should be able
to maintain a constant pace indefinitely.
9. Agile Principles
9 - Continuous attention to technical excellence and
good design enhances agility.
10-Simplicity--the art of maximizing the amount of
work not done--is essential.
11- The best architectures, requirements, and
designs emerge from self-organizing teams.
12 - At regular intervals, the team reflects on how to
become more effective, then synchronizes and
adjusts its behavior accordingly.
10. Why Agile Principles?
In this point, we will see the survey
preparation and results presented.
Any questions?
11. Survey
Were conducted two surveys:
In 2010 at North Carolina State University to
quantify the community’s view about agile
principles and practices;
It was administered through
www.surveymonkey.com and direct emails;
12. Survey
The first survey was focused on the original
principles and commonly used software
development practices;
There were a set of questions and
instructions, followed by a list of principles
and 45 practices, which are typically
associated with agile software development,
where all surveys questions were in random
order;
13. Survey
Question about agile principles:
How important is this principle that
comes from the original agile principles
authored in 2001 for agile teams in
2010? (1=not very important; 5=essential,
the team is not agile if it doesn’t follow
this principle)
14. Survey
Question about practices:
What practices are essential for a team
to be considered agile? (1=not important;
5=essential, a team is not agile unless it
does this practice)
16. Survey
326 respondents with extensive experience in
agile software development, where 23% of
them used to working with agile methodology
for 10 years or more, what came to be called
an “agile methodology” post-Manifesto.
The respondents were primarily from:
North America (59%)
Europe (29%).
17. Survey
Of the 326:
(55%) indicated have worked on teams with 30 or
more members;
(96%) worked in a distributed fashion, with:
•(34%) having all teams in the same country,
•(13%) in the same continent, and
•(49%) spread across different continents;
And (16%) indicated they worked on safety-
critical projects.
18. Survey
In this point, we will analyze the respondents
information about the second survey.
Any questions?
19. Survey
The second survey asked, how valuable are
considered the principles?.
What do we
think about it?
What’s more effective
Practices or Principles?
21. Survey
Then, each respondent chosen the most
valuables among the 12 principles, and 11/12
had a mean score of 4.1 out of 5 or higher;
What do we think about it?
The survey analyzed the most distinguished
of the 93 comments from both surveys and
arranged the set of principles by mean score.
22. Tier Principles
1 (4.6) To satisfy the customer and Deliver working software frequently
2 (4.5) Build projects around motivated individuals, Working software is
the primary measure, At regular intervals, the team become more
effective.
3 (4.3) Continuous attention to technical excellence
4 (4.4) Welcome changing requirements, Simplicity
5 (4.1) Business people and developers must work together, team is face-
to-face conversation, promote sustainable development by
maintain a constant rhythm of work indefinitely.
6 (3.8) Self-organizing teams
23. Survey
The principle 7 attracted the most comments, why
not adequately emphasized the need to produce
high-quality software and test, and also elicit
nonfunctional requirements.
The functional focus of iterations can lead on trouble
of “Flaccid Scrum”, where the teams using only
Scrum’s project-management practices without also
following good engineering practices.
They have not paid enough attention to the quality of
the code, only the “happy path” is demonstrated at
the end of an iteration.
24. Survey
In this point, we will analyze the respondents
information about practices and understand
why the principles must be revised.
Any questions?
25. Survey
What’s more effective Practices or Principles?
What do we know about
Agile Practices?
Which are essentials for a
team to be considered
agile?
29. Revised Principles
Before Now
Principle 2. Welcome changing Principle 2. Welcome changing
requirements, even late in requirements at the start of each
development. Agile processes iteration, even late in development;
uses change for the customer's agile processes harness change for
competitive advantage. the customer’s competitive advantage.
30. Revised Principles
Before Now
Principle 4. Business people and Principle 4. The whole team, from
developers must work together Business people through testers, must
daily during the project. communicate and collaboratively work
together during the project.
31. Revised Principles
Before Now
Principle 5. Build projects around Principle 5. Build projects around
motivated individuals. Give them empowered, motivated individuals
the environment and support they with a shared vision of success; give
need, and trust them to them the environment and support
get the job done. they need, clear their external
obstacles, and trust them to get the
job done.
32. Revised Principles
Before Now
Principle 6. The most efficient and Principle 6. The most efficient,
effective method of transmitting effective method for transmitting
information to and within a information to and within a
development team is face-to-face development team is through
conversation. synchronous communication(skype);
important decisions are documented
so are not forgotten.
33. Revised Principles
Before Now
Principle 7. Working software is Principle 7. Valuable, high-quality
the primary measure of progress. software is the primary measure of
progress at the end of each short
timeboxed (a fixed period of time for
an activity) iteration.
34. Revised Principles
Before Now
Principle 8. Agile processes Principle 8. Agile processes promote
promote sustainable sustainable development. The whole
development. The sponsors, team should be able to maintain a
developers, and users should be reasonable work pace that includes
able to maintain a constant pace dedicated time for exploration,
indefinitely. visioning, refactoring, and obtaining
and responding to feedback.
35. Revised Principles
Before Now
Principle 11. The best Principle 11. The best architectures,
architectures, requirements, and requirements, and designs emerge
designs emerge from self- from self-organizing teams guided by
organizing teams. a vision for product release.
36. Revised Principles
Before Now
Principle 12. At regular intervals, Principle 12. With each iteration, the
the team reflects on how to Team truly reflects on the success
become more effective, then tunes of the project, feedback, and how to
and adjusts its behavior be more effective, then tunes and
accordingly. adjusts its plans and behavior
accordingly.
37. Revised Principles
Survey had indicated general agreement
within the revisions except by two
conditions:
1. Lean and kanban practices removed
the notion of iterations for many
teams. A feature can begin at any
time, as a result, the teams had a
lack of defined iterations.
38. Revised Principles
Many respondents also reacted
negatively to the switch from “face-
to-face communication” to
“synchronous communication.”
where the respondents wanted
principle 6 to represent the ideal
practice.
39. Conclusions
Agile principles are as important as
practices, where the practices must be
in line with principles.
Thus like agile has a good
comprehension about changes, the
principles need be up to date for
reflecting that.
40. Conclusions
The principles were revised and presented, where
there was not big changes that promoted some
breaking of its essence.
Despite the changes, the survey has shown a growing
acceptance of new communication means and its
natural evolution in the scenario (distributed teams).
We also need pay attention to “Flaccid Scrum” when
used to working on Kanban, why the code quality
must be as important as the done concept.