The ACP certification is a new credential offered by PMI for people
working in Agile project management environments. Individuals
obtaining this certification can demonstrate their level of skills
in Agile practices. The process of earning this credential involves
satisfying PMI's eligibility criterion and passing a exam. The ACP
certification carries a high level of professional standing and
credibility as it requires a combination of agile education,
experience on Agile practices and examination on Agile practices.
The ACP certification is for anyone involved in any product development efforts that have a large amount of complexity and uncertainty. Obtaining the credential recognizes an individual's skills in using Agile tools and techniques to successfully navigate complex projects towards satisfactory outcomes.
- Project Managers
- Team Members
- Support Professionals
- Project Sponsor
- HR Staff
- Quality Staff
- Project Controllers
The ACP credential is suited for organizations running:
- Customer Projects
- Product Provisioning Projects
- Internal Projects
Customer Projects :
Customer Projects are typically initiated as a result of a request
for quotation from a customer, or by a customer contract. In these
projects the customer is easily identified and to a large extent
present in the project. The customer decides on functional and
quality requirements on the project outcome.
The customer's needs and requirements are thoroughly analyzed on an iterative basis. The interpretation of the customer's requirements that has been made in the project is verified frequently with the customer to ensure agreement.
In customer order projects, the project steering function includes the managers in the performing organization who will act as internal stakeholders. As a complement to the customer's requirements, these managers formulate the organization's requirements on the project regarding profitability, performance quality and added value. These requirements are weighed against the requirements on customer satisfaction.
Product Provisioning Projects :
In projects aiming to put a new product on the market for sale, no
other customers than the presumed buyers of the product can be
defined. These customers and their unexpressed and expressed needs
should is identified and thoroughly analyzed on an iterative basis.
It is good practice to identify a "first customer". This customer will then take an active part in the work to define requirements, suggest solutions, verify that the needs are fulfilled, and to perform an acceptance test.
The product owner is responsible for following up the product from a life cycle perspective, that is, after project conclusion. This includes verification of the business case that was formulated for the project outcome and the market situation as described in the project.
Internal Projects :
The aim of an internal project is to achieve a specific change
within the organization related to its performance or its
organizational structure. An internal project is funded by a
manager in the performing organization (in most cases the project
sponsor). Also the end-users of the project outcome will be found
within the performing organization. This means that the
organization and the project sponsor will act as primary
stakeholders when the requirements on the project outcome are
However, in order to ensure that all project members are business-focused also in an internal project, the long-term effects of the project and its outcome should be related to the needs of the organization's customers. The customers' requirements can be related to the organization's performance and efficiency.
The long-term perspective on the project outcome is important also for internal projects. After the project has been completed, the effects of the project and its outcome should be evaluated and compared with what was expected when the project was initiated.
Unlike traditional project management, which emerged from the construction, engineering and defence industries and dates back to the 1950s, APM was born in the twenty first century. In 2001, prominent software developers from both IT and software engineering domains, convened to arrived at a consensus on how the software development industry could produce better results. This meeting produced the Manifesto for Agile Software Development, which states that the 'highest priority is to satisfy the customer through early and continuous delivery of valuable software.
We are uncovering better ways of developing [products] by doing it and helping others do it. Through this work we have come to value:
- Individuals and interactions over processes and tools
- Working [products] over comprehensive documentation
- Customer collaboration over contract negotiations
- 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.
What is Agile Project Management?
An Agile Project is made up of a number of iterations that are repeated over a time period with a feedback loop after each time period work is completed. At the discretion of the client the last time period may release a partial solution. Agile practices are suited for situations when most but not all of the solution is clearly known or when the solution is known but not to the expected level of depth.
Benefits of Agile Project Management:
- Incremental results early and often
- Client can review current solution for suggested improvements
- Can accommodate scope changes between iterations
- Adapts to changing business conditions
- Easily engages the client
- Gives immediate feedback on the effect of solution changes
- Does not waste time on non-value added work
- Avoids all management issues in addressing change requests
- Does not waste time in planning uncertainty
- Provides maximum business value within the given time and cost constraints
Agile practices proceed from iteration to iteration based on very limited specification of the solution. Each iteration learns from the proceeding ones and redirects the next iteration in an attempt to converge on an acceptable solution. At the discretion of the client an iteration may release a partial solution.
Agile involves feature driven development
This practice greatly reduces complexity, because it allows the team to focus on one feature and only one feature at a time. For example, one team is working on Feature #5 and that's the team's only focus. They don't concern themselves about Features #3-8. It is the business analyst and project manager who ensure the next feature in the backlog is truly the next priority, based on business value and risk. Typically, high-risk components or core infrastructure pieces are built first, and then everything else is prioritized based on business value.
Difference between Agile Project Management (APM) and Traditional Project Management (TPM)
The traditional project management approach is a linear approach
where you try to get it all done at one time. You do a lot of very
detailed planning at once upfront and then deliver it in what's
known as the 'Big Bang'. That industrial age thinking has spilled
over from software development to other projects as well. This is
the heart of the difference between Agile and traditional project
The 'Big Bang' now comes from the greater flexibility and collaboration APM provides. 'Just enough' planning is done up-front. As each increment of the system is built, the team gathers input and learns from customer feedback. Since the customer sees and/ or experiences a working prototype, he or she is better able to refine or redefine requirements and describe to the team what the organization really needs.
APM development is conducted collaboratively, with a small co-located team. This core team usually consists of two developers who write code in pairs (for quality control), the customer/ end-user, IT architect(s), a business analyst and a project manager. The work is accomplished through a series of sessions where the team writes code, then tests working modules of the system and repeats the process. There is minimal documentation as the team relies almost exclusively on informal internal communication.
This differs from the traditional approach where a considerable amount of time is invested in planning and a significant amount of requirements documentation is produced. The Agile team identifies and prioritizes the features based on business value, and after high-risk components of the system are produced, works on the highest value features first. This approach works if the solution can be delivered incrementally to the customer. If this is not possible, features still can be built incrementally and then integrated into the first release of the system.
Agile | SCRUM training in Indonesia
Scrum is a general purpose Agile Project Management framework that is used to set an empirical pattern of behavior at a small team level. Scrum, which is grounded in empirical process control theory, employs an iterative, incremental approach to optimize predictability and control risk. Three pillars uphold every implementation of empirical process control.
The Scrum framework consists of a set of Scrum Teams and their associated roles; Time-Boxes, Artifacts, and Rules. Scrum Teams are designed to optimize flexibility and productivity; to this end, they are self-organizing, they are cross-functional, and they work in iterations.
Each Scrum Team has three roles:
- The Scrum Master, who is responsible for ensuring the process is understood and followed;
- The Product Owner, who is responsible for maximizing the value of the work that the Scrum Team does; and
- The Team, which does the work. The Team consists of developers with all the skills to turn the Product Owner's requirements into a potentially releasable piece of the product by the end of the Sprint.
The heart of Scrum is a Sprint, which is an iteration of one month or less that is of consistent length throughout a development effort. All Sprints use the same Scrum framework, and all Sprints deliver an increment of the final product that is potentially releasable. One Sprint starts immediately after the other.
According to Ken Schwaber, “Scrum is an iterative, incremental
process for developing any product or managing any work. It
produces a potentially shippable set of functionality at the end of
Scrum is a framework for creating an effective Agile development process. It is based on the belief that software development must be controlled by responding to feedback received during the course of development. That is, although software development is inherently empirical (you can’t predict it) you can control it with feedback.
The more frequent the feedback, the more effective developers can be. Scrum suggests building software in stages—say, every two to four weeks. Assess where you are, reprioritize, and develop the next step. Doing this helps expose problems and impediments. And problems are not to be avoided, but rather to be solved. For example, a team may find it does not have enough contact with someone who can speak for their customers. This is a problem that needs to be solved (increase the level of contact) or the team’s efforts will be hampered.
According to Allan Shalloway, author of Lean-Agile Software Development: Achieving Enterprise Agility, below is a list of Benefits of Agile methods such as SCRUM:
Agile methods benefit an enterprise and its teams in the following ways:
- Add value to the business quickly
- Help clarify customers’ needs
- Promote knowledge-based product development and better project management
- Motivate teams and allow failing (that is, learning) early
- Focus on product-centered development
- Improve team efficiency
Growth in one area spurs growth in other areas, resulting in greater capacity to create value.
- Secondary degree (high school diploma, associate's degree or global equivalent)
- 2000 Hrs (12 months) working on project environment (Accrued in the last 5 years)
- 1500 Hrs (8 months) working in Agile environments (Accrued in the last 2 years)
- 21 Contact Hours (iKompass ACP Preparation Program)
For those who hold a PMP and or/ PgMP credential, PMI has already verified that one has exceeded the project management experience requirements. PMP's and PgMP's do not need to document the general project management experience.
Agile Project Management Experience
Examples of activities performed by Product Owner/ Product Manager:
- Interacts with customers and stake holders to gather project requirements. These are captured in a document named the Product Back Log.
- Creates a vision statement for the project
- Brainstorms with customers and various stakeholders and defines the scenarios that will address the project\92s requirements and vision.
- Works with the project manager and other stakeholders to prioritize the scenarios.
- Adds any newly discovered scenarios.
- Reprioritizes scenarios (where necessary)
- Identify a business opportunity, rank and prioritize the potential project and ensure that the business opportunity is aligned with the organization's business direction'
- Identify the business interface to the customer, and establish mutually beneficial relations with the customer and other relevant stakeholders
- Create an understanding for the project's business situation, by providing the background information needed in the project and communicating the project's contribution to the organization's business objectives
- Verify customer satisfaction, and formally end the business agreement with the customer
Examples of activities performed by the Project Manager/ Business Analyst/ SCRUM Master:
- Decides the iteration cycle duration, depending on the project size, and delivery capabilities.
- Guides the iteration
- Breaks the scenarios into development tasks, in collaboration with developers and other team members.
- Facilitate daily stand-up meetings
- Schedules and assigns the tasks
- Assesses the project progress and reprioritizes any scenarios that are incomplete from the current iteration.
- Provide a status report to stakeholders.
- Decides which scenarios should be worked on during next iteration based on their priority.
- Writes scenarios for the upcoming iteration
- Prioritizes scenarios with the customer
Examples of activities performed by the Team Members/ Developers/ Testers:
- Creates the Sprint back log
- Estimates each development task
- Create Development/ Technical stories
- Provide estimation for each of the test tasks
- Writes code for the development tasks
- Creates new bugs (work items) for any issues identified
- Defines an appropriate build strategy (Continuous Integration if possible)
- Defines the solution architecture
- Updates the build process (Continuous Integration if possible)
- Participate in the Sprint planning, Sprint review and Sprint retrospective meetings
1. Introduction to Agile
This module covers concepts of iterations, releases, empirical process versus determined process, the Agile manifesto, difference between traditional projects and agile projects. It also provides an overview of SCRUM, XP and Lean methodologies. Participants are introduced to the benefits of agile project management through case studies covering the implementation of projects in traditional and agile environments.
2. Product Visioning
Unlike traditional project management, in Agile projects customers play a key role in shaping the end result. A typical agile project has a product owner role who is a representative of the customer. The product owner envisions the product and plays a key role in planning releases. The product owner in a SCRUM project plans at multiple levels. The product owner closely manages the product backlog which is a to-do list of increments that gets updated at the end of iteration.
3. Agile Release
In an Agile project, a collection of iterations or sprints make up for a release. With iteration some functionality is developed. With release a module containing several functionality is developed. Typically organizations tend to have a release every quarter or every 6 months.
4. Agile Iterations or Sprints
An iteration or sprint in an Agile project is a fixed period of time, example 2 weeks or 4 weeks. This time-boxed iteration is focused on working on an agreed set of features and completing them. The iteration usually starts with one day spent planning wherein the number of features along with an estimate is worked out. The product owner determines which features are important for the iteration. Once the work begins, no change is allowed unless it is an emergency. An agile iteration is at the heart of very agile project.
5. Agile Scaling
There is no doubt that Agile works very well in small collocated environments. Does Agile suit large complex and distributed software development? Yes it does if implemented properly. With concepts such as Scrum of Scrum and centralized product development teams, Agile can scale up in distributed environments. This module covers Agile adoption across many companies along with the challenges and solutions.
Retrospectives in Agile are a form of reviews and happen at multiple levels. The most important being the sprint retrospective which is focused on reviewing the list of functionality completed during the iteration. This is an opportunity for the product owner to go through the functionality and provide feedback to the team.
7. Agile Tools
The training uses case study based approach to learning which means concepts are taught through group exercises. These exercises are reflective of what happens in a typical agile team in real-world. Below are some of the tools that participants will get to practice during the training: Example: Daily Stand-up meeting. A 15 minute meeting that happens every day in which team members report to each other on what they did yesterday, what they plan to do today and what are their challenges. The daily stand-up meeting provides the agile project manager an opportunity to gather challenges that the team is facing. This meeting is also a way for the team to be in sync with each other's work.
8. Other Tools
Other tools that participants will have an opportunity to practice in class: