PMI-ACP Study Notes: Agile Manifesto
[PMI-ACP® Exam study notes] The Agile movement began with the publication of the Agile Manifesto. This post takes a look at what the Agile Manifesto is and the twelve core Agile principles for the PMI-ACP® certification exam. Several question on the PMI-ACP® exam will be about the Agile Manifesto. PMI-ACP® aspirants are advised to remember the Agile Manifesto word by word as the difference between correct and incorrect answers may be just one or two terms.
Article Highlights
Background of Agile Manifesto
- In February 2001, 17 software developers who have already been practicing incremental software development methodologies met at the Snowbird, Utah, to discuss the future of software development. They later formed the Agile Alliance.
- The Manifesto for Agile Software Development (Agile Manifesto) was published to define core principles and approaches common to their software development methodologies to develop softwares / products more efficiently
- Some of these authors form the Agile Alliance afterwards to further promote Agile software development.
- The Agile Manifesto was written at a high level aiming to define “what” to do in Agile projects (the specific “how” to implement the principles is left to different Agile methods which can be adopted based on project characteristics and needs).
- While many Agile practitioners disagree on the implementation details, they all follow the Agile Manifesto principles.
- The most popular Agile implementations are Scrum, Lean, XP, etc.
The Agile Manifesto
Below is the Agile Manifesto (Values) in its entirety:
We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:
Individuals and interactions over Processes and tools
Working software over Comprehensive documentation
Customer collaboration over Contract negotiation
Responding to change over Following a plan
That is, while there is value in the items on the right, we value the items on the left more.
Kent Beck James Grenning Robert C. Martin Mike Beedle Jim Highsmith Steve Mellor Arie van Bennekum Andrew Hunt Ken Schwaber Alistair Cockburn Ron Jeffries Jeff Sutherland Ward Cunningham Jon Kern Dave Thomas Martin Fowler Brian Marick © 2001, the above authors. This declaration may be freely copied in any form, but only in its entirety through this notice.
The essences of the Agile Manifesto are further explained below:
Individual and interactions over Processes and tools
- People and their opinion are fundamental to project success
- Feedback from end users / customers is highly encouraged
- The project team cooperate with the end users / customers to achieve project success
- Processes and tools in the traditional project management are considered as supportive rather than limiting factors
- Teamwork is highly valued
Working software over Comprehensive documentation
- The team should focus on the shippable deliverables (to deliver actual values)
- Documentation is kept to a bare necessity (barely sufficient documentation)
- [for software projects] “nothing speaks louder than code” – and the code should be self-documenting
- for the customers, a working software is more valuable than a set of documentation
- gets minimally marketable features (MMF) delivered at very short duration
Customer collaboration over Contract negotiation
- Efforts should be put into fulfilling the requirements of the customers rather than negotiating the terms of the contract (Agile practitioners and customers are “on the same side of the table”)
- Relationship between customers and the team is highly valued
- The ultimate goal of the project may be realized by “trial and error”
- A contract (e.g. contract statement of work (SOW), project charter or requirements document) is needed but it is not the most important document for the project
- e.g. Acceptance Test Driven Development – all increments are demonstrated to the customer for verification and acceptance before the team moves forward to next iteration
Responding to change over Following a plan
- Changes are welcome and should be well prepared for
- No rigid or detailed planning which may impede flexibility
- Implement change-friendly project management methodologies to ensure timeliness in carrying out the changes
- in traditional project management, “gold plating” and “scope creep” are considered detrimental, but can be accommodated in Agile projects with mutual consent
The Agile Manifesto has made it clear that it recognizes the values of traditional project management methodology like tools, processes, documentation and plan, but to a degree that would not limit the ability to respond to changes.
12 Agile Manifesto Principles
A supporting document of 12 principles to the Agile Manifesto is also published to provide more in-depth explanations of the Agile concepts.
Provide Value to Customer
- Customer Satisfaction: Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
- early delivery of products to customer for testing and feedback
- continuous delivery to let customer know the progress
- deliver values to the customers by fulfilling the top priority requirements first
- Welcome Changes: Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.
- simplify the change control process, no formal documentation and approval required
- allow fast response to latest changes in external environment to enhance competitive advantage to emerging opportunities
- Frequent Delivery: Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
- can release the product to the market faster
- provide immediate values to the customers by delivering working features
- the project team activities can be better structured with the fixed delivery timeframe to focus on delivery of value
Facilitate Teamwork
- Collocated Team: Business people and developers must work together daily throughout the project.
- collocation of team members can foster osmotic communication (with vehicles other than verbal, e.g. gesture, what not being said, etc.)
- get instant feedback to questions, others at the location can join in the discussion if deem related
- the whole team can remain focused and work towards a common goal
- Motivated Individuals: Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
- team members are able to choose the jobs they are most interested in through self-organization (not through external management influence)
- the team is empowered to make day-to-day decisions
- every member is motivated to achieve success
- vs traditional project management -> micro-management, top-down approach
- Face-to-face Conversation: The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
- get direct feedback by going to the source of problem or confusion
- often via oral communication at the workplace for the benefit of osmotic communication
- tools like video conferencing can facilitate virtual team conversation
Deliver Great Products
- Working Software: Working software is the primary measure of progress.
- the working software enhance customer satisfaction
- measurements of the working software are necessary to maintain and improve the quality
- the software will be judged on whether it can support the overall project goals
- traditional project management focuses on plans and documentation
- Constant Pace: Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
- helps to promote work-life balance among the team members to promote happiness by avoiding burnout or exhaustion
- a happy team is also a motivated and productive team
- the team can respond to changes quickly
- traditional project management would accelerate near deadline
- Continuous Attention: Continuous attention to technical excellence and good design enhances agility.
- agility is the ability to modify, improve and upgrade in a short time
- codes need to be refactored from time to time to enhance agility so that changes to the products can be easily introduced
- time spent on achieving quality code and finishing requirements should be well balanced
- Simplicity: Simplicity – the art of maximizing the amount of work not done – is essential.
- focus on what are essential to create value to the project and customer
- discard any distractors that do not act values (components, process, etc.)
- the simpler the product, the easier to maintain it, the less risks are there to control
Quest for Better
- Self-Organization: The best architectures, requirements, and designs emerge from self-organizing teams.
- the team knows best how to carry out the work, not the project manager nor human resources department
- higher level of ownership of the product and will be dedicated to project success
- the team becomes experts in how to improve the process and project as they understand the project details
- most significant difference from traditional waterfall project management
- Regular Reflection: At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
- need to gather the lessons learned frequently during the project and put back into the next iteration
- “retrospective meeting” as the primary tool – what works and what doesn’t and suggestion / solutions
- changes can be implemented immediately
- traditional project management carries out reflection only at the end of the project/phrase
Conclusion: PMI-ACP® Exam Study Notes – Agile Manifesto
This PMI-ACP® exam study note has given an overview of what the Agile Manifesto is about, including the core values as well as the twelve principles behind it. The Agile Manifesto forms the basis of all Agile methods implementation available today.
Most Popular PMI-ACP Certification Articles
- Top 10 Tips to Prepare for the exam (I got all Proficient in my exam)
- How to Get 21 Contact Hours?
- Over 600+ FREE Quality Mock Exam / Practice Questions
Dear Sir / Madam
Refer to the PMI ACP Agile certification, please confirm the following.
1- Are the practice questions are all free of cost?
2- If it involve cost, what is the price of the questions bank.
regards,