Agile Knowledge and Skills (2)

avril 20, 2018

Agile Knowledge and Skills (2) : Agile Manifesto values and principles

The authors of Agile Manifesto are the founding members of Agile Alliance.

Ken Schwaber founded Agile Alliance in 2001 after the Agile Manifesto was published.

Agile Manifesto values include the following:

Individuals and interaction over processes and tools

Working software over comprehensive documentation

Customer collaboration over contract negotiation

Responding to change over following a plan

4 values

The Agile Manifesto defines four values.

The four values list primary values and secondary values, with primary values superseding secondary values.

The values are :

1) individuals and interactions over processes and tools,

2) working software over comprehensive documentation,

3) customer collaboration over contract negotiation, and

4) responding to change over following a plan.

[Manifesto for Agile Software Development. Agile Alliance.]

Individuals and interactions over process and tools

This talks about value of empowering the team that far outstrips the benefits derived from processes and tools. We must constantly be aware that it is our people who actually do all the value added work, and respect for people is a comforting and fundamental principle of Lean and Agile.
Agile projects are built around motivated individuals and the team organize themselves without the command and control structure. The rest of the options are not correct since agile teams are highly disciplined, there is more planning in agile projects than the traditional projects and also the teams are motivated and empowered which enables them to deliver at sustainable pace.

Responding to change over following a plan

Responding to change over following a plan – Agile Manifesto. The principle doesn’t devalue planning—just sticking to the plan. Planning is valuable in itself, and because the plan helps us recognize when things have changed; it helps us understand the implications of change, how we need to adjust, and the likely cost. The important thing is that, as we make plans, we understand that the plan may have to change. Planning is an ongoing time-boxed activity.
Though Agile Manifesto states that it values responding to change over following a plan, it should not be constructed as there is no need for planning on agile projects. In fact, Agile projects do overall more planning than the traditional ones.

Secondary values

The agile secondary values include: documentation of software, processes and tools, contract negotiation, and following project plans. [Manifesto for Agile Software Development. Agile Alliance.]

If you don’t follow the four Agile Manifesto values “It Will Create Risks”:

Principles

The Agile Manifesto defines 12 supporting principles.

Agile principles include

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 preference to the shorter timescale.

4) Business people and developers must work together daily throughout the project.

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 conveying 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) 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 tunes and adjusts its behavior accordingly. [Manifesto for Agile Software Development. Agile Alliance.]

12 principles

Customer satisfaction : Satisfy the customer by delivering software that provides value to the customer early, and often.
Welcoming change ; It is expected that requirements will change and these changes are welcomed.
Frequent delivery : Get working software delivered to the customer as soon as possible.
Colocated teams : Bring the project team and the customers together, preferably collocated in the same physical area.
Motivated individuals : Build your team around motivated individuals and trust them to do the work.
Face-to-face contacts : Face-to-Face communication is the most effective method for exchanging ideas.
Working software : True customer value is realized by delivering results, which is represented in terms of working software.
Constant pace : Sustain a constant development pace to minimize project team burnout and maximize optimal performance indefinitely.
Continuous attention : Continuous Attention to technical excellence and good design will allow the project team to respond more quickly and easily to change.
Simplicity : Maximize the amount of work not done.
In agile processes, there is a strong taste of minimalism. Include only what everybody needs rather than what anybody needs. There is a point in time when any additional effort put into work product will increase its cost without increasing its value. It’s easy to continue developing a product beyond some point. A Standish Group survey in 2009 stated that over 70% of functionality is never or rarely used. Not doing that work is a great opportunity to do more valuable work.
Self-organization : The team decides how the tasks will be allocated, as opposed to being dictated to them.
The best architectures, requirements and designs emerge from self-organizing teams. The emergent properties for a complex project are best generated from self-organizing teams in which the interactions are high and processes are low.
Regular reflections : Schedule Retrospectives to constantly reflect on the work that was completed and find ways to improve during the next iteration.

Agile Manifesto Principles as Months

January : Just Sit Together (Collocated Teams)
February : Face-to-Face Contact (Face-to-Face Contact)
March : Motivated Individuals (Motivated Individuals)
April : Attention (Continuous Attention)
May : Maintain a Constant Pace (Constant Pace)
June : Jump on Improvements (Regular Reflection)
July : Juggle Changes (Welcomed Changes)
August : Augment Customer Satisfaction (Customer Satisfaction)
September : Simplicity (Simplicity)
October : Organization (Self-Organization)
November : New Changes (Welcomed Changes)
December : Deliver Frequently (Frequent Delivery)

The principles behind Agile Manifesto states that “Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.

The agile principles state without ambiguity that business people and developers must work together daily throughout the project. Answer ‘b’ says ‘regularly’ which may not be ‘daily’. Agile developers adopt practices such as on-site customer and active stakeholder participation which enable stakeholders to be actively involved with software development.

Fixed scope is not in line with the agile principles. One of the core principle of agile is to welcome changing requirements even late in development cycle for customer’s competitive advantage. The rest of the options are in line with Agile principles.

Leave a Reply

You must be logged in to post a comment.