The Essence of an Approach
Organizations that perform IT projects may select a project management methodology that follows the same system of practices, policies, procedures, techniques, and rules as others developing new projects within their organization. Is that always the best choice? How exactly does one pick the best methodology? Before we investigate which methodology to pick for your organization, let us first understand what a project really is. A project is a temporary endeavor undertaken to create a unique product, service, or result. The nature of a temporary endeavor means that a project has a definite beginning and end. The duration could be short, or it could be long. Deliverables may exist beyond the project and could even last for centuries (for example, the pyramids of Egypt or the Great Wall of China). Projects drive change!
PMBOK Guide and Projects
A Guide to the Project Management Body of Knowledge (PMBOK Guide) Sixth Edition was published in 2017 by the Project Management Institute (PMI). This is considered by most project managers as the standard for project management. The PMBOK Guide is not a methodology, but a foundation or set of principles upon which organizations can build methodologies, practices, policies, procedures, techniques, rules, etc. These principles should cover the system life cycle phases needed to manage a project. The following are examples of factors from the PMBOK Guide that lead to said project’s creation:
- Business process improvements
- Competitive forces
- Customer request
- Economic changes
- Environment considerations
- Legal requirements
- Material issues
- New Technology
- Political changes
- Social needs
- Stakeholder demands
- Strategic opportunities
We also should consider what types of organizations/industries have the need for projects. The answer is all types, from exceptionally large to small; from suppliers to manufacturers to retailers; from for profit to non-profit organizations. Here are some of the major industries:
- Energy and utilities
- Federal and state governments
- Financial services
- Health care
- Software development
- Sports Entertainment
- Transportation sector
Even if you do not have defined model in place, you probably have some processes that could be used as part of your selected methodology. An examination of current practices can provide the baseline for methodology selection and deployment. All organizations should strive to have as few development models as possible. Project members will be most effective and productive using a model that they understand and/or have experienced. Familiarity with an acceptable model that adds value to your environment and organization will aid significantly in the successful implementation of projects. Some of the key factors to consider as you search (via the internet, trade/user groups, and associates) for the right model include:
- Corporate strategy
- Project sizes
- Product complexities
- Customer involvement during development
- Available HW/SW development and project management tools (i.e. MS Project)
- Maturity of product technology
- Experience and skills of project members and management
- Staffing profiles, multiple locations, and distributed teams
- Multiple vendors
- Magnitude of anticipated changes during development
- Contains consistent and repeatable processes
Organizations need to practice what they preach to be successful. This includes management being engaged in project improvements, as well as related classroom training, workshops, and mentorship opportunities. Management has the ultimate responsibility to insist that each new project complies fully with the approved methodology or model. It is important that the notion of improving a model is well understood before you start using your chosen model. Since no model is perfect in its original design and because rapidly changing business needs will continue to challenge the model to be improved, it is essential that all members of an organization understand that the model will always be undergoing change with their support and feedback.
Defining the right methodology or development process for your organization will have a profound impact on controlling the schedule, costs, and quality of a project. A methodology should include templates, forms, checklists, techniques for measuring progress, and ways of supporting resource management used over the project life cycle. I am a strong believer that quality should be the last parameter to be sacrificed, if ever. If you do not produce quality projects, products, or services, the customer will eventually take their business elsewhere. I have found that most people will pay more for higher quality or even the perception of higher quality.
Project Methodology Models
After a methodology or process model has been selected, the next step is to clearly identify the primary activities that need to be implemented to satisfy the needs of your organization. The list of activities should be thorough enough so that team members of new projects can pick and choose activities from the list as they customize the process to meet the distinctive needs of their new project. I am going to review two of the most popular methodologies (see Figure 1) that you may choose to be best for the type of business you are in.
The name is derived from the appearance of the model—when one stage is completed, the next one starts and there is a downward flow. This model is generally suited for medium to large projects with well-defined requirements. It’s presented in the form of structured specification, which should at least contain:
- Data flow diagrams or models that are mostly graphic, partly narrative, and that state the processes and show the data flowing through them
- The frameworks and the functions necessary to produce systems
- A data dictionary defining all the data used in the model
- Process descriptions of activities which are concise and conditional specifications
Since there is an emphasis on documentation, knowledge is not lost for replacement team members and potentially becomes useful for future projects. This was the dominant or traditional model used in the second half of the 20th century. According to a Standish Group Study in 2015, it was found that 29% of traditional projects failed outright and were cancelled, but that number decreased to 9% for Agile projects. Keep reading!
During the last century, there was another development model called Iterative which was developed. It works well when the solution for the project is not clearly defined. Iterations are used to gradually identify the solution as the project develops. Each iteration forms the base for the next. In 2001, new methodology pioneers met in Snowbird, Utah to share their experiences and to suggest ideas for improving the world of software development. They came up with the Agile Manifesto to streamline the development process. This all sounds like the next generation of the Iterative model to me. The Agile model is lightweight, uses an informal communication style, is less document oriented, and uses less defined rules and policies. This is the opposite approach from that which is used in the structured Waterfall model. It’s important to note that Agile can help increase revenue opportunity sooner by decreasing time to market or creating a scenario that is self-funding of future new product features.
Over the last 10-15 years, Agile has become mainstream. It’s now been incorporated into Project as a scrum-focused template. In 2011, PMI introduced a new certification, the Agile Certified Practitioner (PMI-ACP). The number of professionals obtaining this new certification has grown exponentially (there are over 35,000 holders). PMI also recently started a series of Discipline Agile certifications for professionals working in Enterprise class settings/development. When you purchase the PMBOK Guide, you receive a free copy of Agile Practice Guide. This was developed jointly between PMI and the Agile Alliance (www.agilealliance.org), and I have found it to be an excellent reference to have and learn from.
Transitioning to Agile means starting in small steps and being willing to change when necessary. Furthermore, organizations need qualified people trained in Agile to be coaches and mentors and to help in the adoption process. An excellent way to start implementing Agile is to bring in a consulting firm that specializes in Agile methodology. Expert coaches and scrum masters can help an organization adopt an Agile strategy that is right.
Most organizations are trending towards using both models. With the adoption of a hybrid approach, flexibility is available regardless of which type of business and/or what type of project is being worked on. For a hardware upgrade and/or maintenance project, an organization would probably use the Waterfall model, but if it is a small to medium software project that is not well-defined (i.e. in the research or development process), the Agile model may make the most sense. On many projects, both models are appropriate. As a project manager, you need to consider the project’s goals and choose the model or Agile/Waterfall hybrid approach that fits best.