From AgilePM wiki
Revision as of 18:06, 14 December 2016 by Frank (talk | contribs) (6. Develop Iteratively)

Jump to: navigation, search

Introduction to the AgilePM Principles

AgilePM has eight principles that support the philosophy: “best business value emerges when projects are aligned to clear business goals, deliver frequently and involve the collaboration of motived and empower people”.

These principles act as guide for the team and organization (attitude, mindset and culture) to remain flexible, deliver consistently and often. In other words, the principles are a guide to a way to thinking and working. If the team does not follow any of the principles, they will just help to undermine the project and introduce risk. The team can expect to get the full benefits of the AgilePM approach if they follow all eight principles.

The eight DSDM principles are:

  1. Focus on the business need
  2. Deliver on time
  3. Collaborate
  4. Never compromise quality
  5. Build incrementally from firm foundations
  6. Develop iteratively
  7. Communicate continuously and clearly
  8. Demonstrate control

Principle 1: Focus on the Business Need

Every decision taken during a project should be viewed from the view point of the project goal and this should be to deliver what the business needs to be delivered, when it needs to be delivered. It is important to remember that a project is only there to deliver the required product.

In order to fulfil this principle, AgilePM teams will:

  • Understand the business priorities and this must be documented
  • Create a valid business case which is easy to understand
  • Ensure continuous business sponsorship and commitment:
  • ​​​Guarantee delivery of the Minimum Usable Subset meaning that not all requirements have to delivered and the more important requirements are prioritized.

This principle is supported by:

  • Roles:
    • Business Sponsor (BS)
    • Business Visionary (BV)
  • Products:
    • Business Case (by Business Sponsor)
  • Techniques
    • MoSCoW – prioritization technique
    • Timeboxing

Principle 2: Deliver on Time

Delivering a working product on time is a desirable outcome for a project. Delivering on time can be the most important success factor for some projects especially if the project is trying to bring a new product to market before the competition or to meet legal requirements. Delivering on is the best way for the project to demonstrate control and maintain business confidence.

In order to fulfil this principle, AgilePM teams need to:

  • Timebox the work in manageable chunks of time
  • Focus on business priorities using MoSCoW (know what is more important)
  • Always hit deadlines of time, cost, quality
  • Build confidence through predictable delivery

Combining the AgilePM techniques of timeboxing and MoSCoW prioritization enables AgilePM teams to protect deadlines whilst being flexible with the features. Each requirement should be estimated: size, priority and complexity so it can be compared to other requirements.

This principle is supported by:

  • Roles
    • Project Manager (PM)
    • Team Leader(TL)
  • Techniques
    • MoSCoW
    • Timeboxing

 Principle 3: Collaborate

It is known that team that work in a spirit of active cooperation and commitment will always outperform groups of individuals working only in loose association. Collaboration encourages  increased understanding, greater speed and shared ownership, which enable teams to perform at a level that exceeds the sum of their part and be much more productive.

In order to fulfil this principle, AgilePM teams need to:

  • Involve the right stakeholders, at the right time, throughout the project
  • Encourage pro-active involvement from the business representatives (pull them into the project and make them part of it)
  • Ensure that all members of the team are empowered to take decisions on behalf of those they represent. There is no room for micro management in AgilePM.
  • Build a one-team culture

AgilePM’s roles of Business Visionary, Business Ambassador and Business Advisor roles bring the appropriate subject matter experts into the project so they can contribute to the solution. Of course it is important that each role understands their role and responsibility and each roles knows what they can expect from another.

The Solution Development Team brings together business and technical roles in a single team.

The Business Analyst (BA) is responsible for facilitating high level collaboration between team members while the Team Leader taking responsibility for facilitating a high level of collaboration  between all Solution Development Team members.

Facilitated workshops enable stakeholders to share their knowledge effectively with other members of the project team.

This principle is supported by:

  • Roles
    • Business Sponsor (BS)
    • Business Visionary (BV)
    • Business Ambassador (BAMB)
    • Solution Development Team (SDTs)
    • Workshop Facilitator (WF)
  • Techniques
    • Facilitated Workshops
    • Daily Stand-ups (like Scrum Stand-up meetings)

Principle 4: Never Compromise Quality

In AgilePM, the level of quality to be delivered should be agreed at the start of the project. All work should be aimed at achieving that level of quality and not more or no less that than this. A solution has to be ‘good enough’ to meet the business need and it does not need to be gold plated. A perfect solution is too expensive.

In order to fulfil this principle, AgilePM teams need to:

  • Agree the level of quality from the outset, before development starts
  • Ensure that quality does not become a variable
  • Test early, test continuously and test to the appropriate level
  • Build in quality by constant reviewing and testing
  • Design and document appropriately. E.g. document the acceptance criteria

Testing has to be integrated into the Iterative Development process, with regular reviews throughout the project lifecycle. This helps the AgilePM team to build a quality solution.  The review and quality control products created as the project proceeds help demonstrate  that the quality of the solution is meeting the expected standard.

Using AgilePM, everything is tested as early as possible. AgilePM also uses the thinking of fail fast and this speeds up learning what will not work and find a solution. The MoSCoW prioritisation and timeboxing techniques are used to ensure that testing is appropriate and under taken without introducing unnecessary risks. 

In an IT project, the use of test-driven development techniques can also significantly improve the quality of the solution by ensuring that the acceptability of the solution is understood before development starts.

If the business agrees feature in Minimum Usable Subset has been provided, then the solution should be accepted. So no more development.

This principle is supported by:

  • Roles: Solution Tester (ST)
  • Products: Testing products
  • Techniques
    • Timeboxing
    • Daily Stand ups
  • Early and integrated testing
  • Regular reviews throughout lifecycle

Principle 5: Build Incrementally from Firm Foundations

One of the key differentiators for AgilePM within the Agile space is the concept of establishing firm foundations for the project before committing to significant development. The AgilePM approach advocates first understanding the scope of the business problem to be solved and the proposed solution, but not in such detail that the project becomes paralysed by too much detail.

Once firm foundations for development have been established, the AgilePM approach advocates incremental delivery of the solution in order to deliver real business benefit as early as is practical. This helps to deliver early ROI for the project. This incremental delivery encourages stakeholder confidence, offering a source of feedback for use in subsequent Timeboxes and may lead to the early realisation of business benefit.

In order to fulfil this principle, the AgilePM teams need to:

  • Carry-out appropriate analysis and enough design up front (EDUF)
  • Formally re-assess priorities and informally re-assess ongoing project viability with each delivered Increment

AgilePM teams implement this principle through the appropriate application of a project lifecycle, which delivers a solid base of knowledge during Feasibility and Foundations phases before building the solution incrementally during the Evolutionary Development phase.

This principle is supported by:

  • Techniques
    • Iterative Development (IPER cycle)
    • AgilePM Lifecycle

Principle 6: Develop Iteratively

AgilePM uses a combination of Iterative Development, frequent demonstrations and comprehensive review to encourage timely feedback. Embracing change as part of this evolutionary process allows the team to converge on an accurate business solution. The concept of iteration is at the heart of everything developed as part of the AgilePM approach.

It is very rare that anything is created perfectly first time and it is important to recognise that projects operate within a changing world. See this like creating a product like an onion where you are adding one layer at time and this new layer offers some new functionality.

In order to fulfil this principle, The AgilePM teams need to:

  • Build business feedback into each iteration (get the business involved)
  • Recognise that most detail should emerge later rather than sooner. This is because most clients don’t know what they want at the start of the project but these requirements emerge based on what is delivered in increments.
  • Embrace change – the right solution will not evolve without it
  • Use iterative development to encourage creativity, experimentation and learning

Within the constraints of time and cost, change is actively encouraged in order to evolve the most appropriate solution. AgilePM uses iteration and constant review to make sure that what is being developed is what the business really needs. Cycles of feedback should form part of the process for evolving all project deliverables e.g. all plans and documentation.

This principle is supported by:

  • Techniques
    • Iterative Development (IPER cycle)
    • Timeboxing
    • Prototyping
    • Modelling

7. Communicate Continuously and Clearly

Poor communication during a project is often cited as the biggest single reason while projects fail. AgilePM practices are specifically designed to improve communication effectiveness for both teams and individuals but the Project Manager should sound the alarm if certain stakeholders are not contributing to the project as expected.

In order to fulfil this principle, AgilePM teams need to:

  • Encourage informal, face-to-face communication at all levels
  • Run well run daily team stand-up sessions
  • Use Workshops, with a strong facilitator where appropriate
  • Use visual communication practices such as Modelling and Prototyping
  • Demonstrate the Evolving Solution early and often
  • Keep documentation lean and timely
  • Manage the expectations of the stakeholder at all levels throughout the project and regularly check that expectations are being meet.
  • Always aim for honesty and transparency in all communication

AgilePM emphasises the value of human interaction through Stand-ups, Workshops, clearly defined roles and active business involvement.

Modelling and Prototyping make early instances of the solution available for scrutiny. These work far better than using large textual documents which people seldom read.

This principle is supported by:

  • Roles: Workshop Facilitator (WF)
  • Techniques
    • Facilitated workshops
    • Daily Stand-ups
  • Clearly defined roles
  • User and business involvement
  • Team empowerment
  • Models and prototypes

8. Demonstrate Control

It is essential to be in control of a project at all times and to be able to demonstrate this. It is also vital to ensure transparency of all work being performed by the team. The Project Manger should get help from the people who will do the work to create the plans.

In order to fulfil this principle, AgilePM teams, especially the Project Manager and Team Leader, need to:

  • Make plans and progress visible to all
  • Measure progress through focus on delivery of products rather than completed activities
  • Manage proactively (think ahead)
  • Evaluate continuing project viability based on the business objectives
  • Use an appropriate level of formality for tracking and reporting

The use of well-defined Timeboxes, with constant review points, and the preparation of the Management Foundations and Timebox Plans, are designed to assist the Project Manager and the rest of the project team to follow this principle.

This principle is supported by:

  • Roles
    • Project Manager (PM)
    • Team Leader (TL)
  • Products
    • Management Foundations
    • Timebox Plans
  • Techniques: Timeboxing
  • Constant review with clients and users


AgilePM is an Agile Project Delivery Framework that delivers the right solution at the right time. The eight principles help direct and shape the attitude and mindset of a AgilePM team. The right business solution is delivered because:

  • The Project Team and others significant stakeholders remain focused on the business outcome.
  • Deliver is on time providing an early ROI and reduced risk.
  • All people involved with the project work collaboratively to deliver the optimum solution
  • Work is prioritized according the business need and the ability of users to accommodate changes.
  • AgilePM does not comprise quality