Monday, November 8, 2010

Methodology Selection: Project Management (Part 1)


As a project manager, have you ever had a project sponsor ask “Can we use an Agile approach, this product needs to be developed ASAP”?   If you’re not expecting this, or have not dealt with it before, this could be a very challenging question.  Here are some questions to ask.

1)     Product Delivery: Can this product be delivered in pieces?

One of the core principles of agile is the ability to define a development strategy that delivers small pieces of the overall puzzle through short time boxed development periods.  This affords frequent product reviews and changes.  Even though some aspect of the product may take months to develop, there needs to be a clear strategy for delivering incremental pieces that when the project is complete, delivers the desired product.  Note that this is not limited to building just the product; this includes developing support systems such and an IT Infrastructure or an engineering design structure.  Anything it takes to deliver the final product should be considered.

2)     Project Team: Is the project team co-located and are they dedicated to this project?

Agile project function in short time-boxed increments because the core team is together and available.  Having the entire team physically located in a WAR room is ideal.  This includes the product owner, scrum master, developers, business analysts, testers and so on.  Anyone who has a stake in the project should be available.  Some of these challenges can be addressed with technology like live ongoing chat sessions, but for the most part the team should be together.  Availability is another issue, if you believe a project team member or members may be pulled from the project from time to time to assist other project team or team members will be required to be away from the office for travel, you should consider alternate team members.

3)     Governance: Can issues be escalated and corrected quickly?

Consider if the leadership is structured in a manner that supports frequent reviews and escalation.   Change is inevitable. Issues are inevitable.  Executive management needs to be available to review the product and make recommendation for improvement.  If you believe this will not be the case, request a governance structure or the delegation of authority to a team member that can support an agile approach to managing project risks and schedules as well as product functionality and quality.


4)     Commitment: Are the stakeholders committed and available?

If the answer is no, consider an alternate strategy.  Otherwise you will find the project team members waiting on decisions or guidance for the product specification.  Stakeholders such as the product owner or steering committee need to be able to adjust the direction and focus of the team when they deem it necessary to control product quality and scheduling.

5)     Testing: Is automated testing an option?

Testing of the delivered product is key to a quality product that functions within specifications.  This is in direct support of the time-boxed development approach of the product.  An automated testing approach can bring great benefit to agile projects so if that is available or implement able, do it.  If automated testing is not an option, develop a test strategy that has the testers available and flexible enough to support the fast movement of the team.

Summary: Agile project success depends on an incremental delivery strategy, team member availability and commitment, and iterative testing.

In my next post, we will discuss 5 other areas of focus when considering an agile project management approach and how it can be supported. 

Followers

Search This Blog