Approach & Project management

For the project management approach SoluPro BV is using the approach that is recommended by BedrockTM1. In this paragraph you find a summary of a whitepaper “managing TM1 projects” published by BedrockTM1.

Cognos TM1 is a flexible application development platform that includes all of the tools required to develop a complete application from end to end. The flexibility of the environment allows applications to be developed very quickly. Application prototypes can be developed in a matter of hours and full applications can be developed in just days or weeks. This flexibility enables applications to be built quickly and easily, however this level of flexibility can also have some undesirable side effects if projects are not managed well.

Waterfall approach

The most common approach to implementing IT systems is the Waterfall approach. The waterfall approach breaks a project down into discrete phases. Each phase is undertaken in a linear fashion and the completion of each phase leads directly to the commencement of the following phase. Each phase generally requires a form of sign-off from a number of parties involved with the project.

The waterfall approach is very restrictive for flexible development platforms like Cognos TM1. Transactional systems that perform specific tasks might be better suited to the waterfall approach, but systems like Cognos TM1 are designed to allow the end user to choose how they use the system. Accordingly, Cognos TM1 systems require functionality that may not be known right at the start of the project. Users need time to be exposed to the technology and its capabilities as the system is evolving.

Agile approach

Flexible systems like Cognos TM1 require a more agile approach to development. Users should be exposed to how the system works very early in the project lifecycle to allow them to understand the technology and grasp concepts such as multi dimensionality. This in turn results in more informed decision making when users are defining the requirements of the system which ultimately results in a system that best satisfies the business requirement. In order to achieve the ideal system, it should be developed in a series of “iterations” which hone in on the ideal solution. Users and developers should work together to achieve this ideal outcome. Iterations can be as short as a few hours or may take several weeks. The important thing is to produce some tangible parts of the system that the user can experience and provide feedback on. This may be a simple prototype or a more sophisticated piece of the system. Based on this feedback, changes can be made during the next iteration and so on.

As the diagram shows, the first step using this more agile approach is initial planning. This phase should be very short and is used to understand the overall business requirement. Following the initial planning phase the project then moves in to the first iteration of the development of the system. The first iteration may be a first attempt at the whole system or just one part of the system. Within the iteration, the planning & requirements phase will involve some more detailed understanding of the requirements of the current iteration, followed by analysis, design and implementation of the piece of the system being developed. During this time the end user should remain involved in the process providing valuable feedback to the developer as the system evolves. Following this there will be some testing of the functionality developed in this iteration followed by an evaluation of what has been produced. Following the evaluation of the first iteration, there will be subsequent iterations (if necessary) until the system has achieved the desired outcome. At the conclusion of all of the iterations the project moves into the deployment phase.