Thursday, April 16, 2009

Applications Development & Project Managment

Applications Development is a natural environment for Project Management. It usually involves specific features for a specific market or user group. It can usually be broken down into a list of features ( requirements), which can be analyzed for dependencies & prioritized based on value. For mass distribution applications, however, this prioritization may be more connected to market research than to interviews with a small number of stakeholders. Time to market is always a prime driver. Who gets there fastest wins. In an environment like this, project managers have a responsibility to ensure that their customers get the most value as quickly as possible. Agile development methodologies are more suited to this kind of development. Continuous feed back driving iterations will require more planning & management rather than less.

Protoypes, mockups & visualization tools can help obtain feedback. OODA loops applied to prioritization & development decisions will aid in evolution of the product. Ensuring that this iterative development stays focused on the final goal becomes more of a challenge, because feedback can alter the vision & the goal. However, iterative development also aids in quick delivery of value, which helps in the 'first to market' arena.

Normal Project management processes undergo slight changes in timing & emphasis. Change Control becomes intimately linked with planning, Uncertainty on any one iteration is reduced, because each iteration becomes a mini project, but it's reduced scope reduces risk. The entire application's uncertainty is increased because it's more difficult to see the end of the iteration process, especially when each iteration can lead to vision & scope change.

For Project Managers this is anathema, but the rigorous use of applicable Project Management processes is even more important in a rapidly changing environment to prevent chaos.

No comments:

Post a Comment