Let's Study English

Let's Study English

Tuesday, December 8, 2015

Project Management Methodologies

In order to achieve goals and planned results within a defined schedule and a budget, a manager uses a project. Regardless of which field or which trade, there are assortments of methodologies to help managers at every stage of a project from the initiation to implementation to the closure. 
A methodology is a model, which project managers employ for the design, planning, implementation and achievement of their project objectives. There are different project management methodologies to benefit different projects.
For example, there is a specific methodology, which NASA uses to build a space station while the Navy employs a different methodology to build submarines. Hence, there are different project management methodologies that cater to the needs of different projects spanned across different business domains.

Project Methodologies

Following are the most frequently used project management methodologies in the project management practice:

1 - Adaptive Project Framework

In this methodology, the project scope is a variable. Additionally, the time and the cost are constants for the project. Therefore, during the project execution, the project scope is adjusted in order to get the maximum business value from the project.

2 - Agile Software Development

Agile software development methodology is for a project that needs extreme agility in requirements. The key features of agile are its short-termed delivery cycles (sprints), agile requirements, dynamic team culture, less restrictive project control and emphasis on real-time communication.

3 - Crystal Methods

In crystal method, the project processes are given a low priority. Instead of the processes, this method focuses more on team communication, team member skills, people and interaction. Crystal methods come under agile category.

4 - Dynamic Systems Development Model (DSDM)

This is the successor of Rapid Application Development (RAD) methodology. This is also a subset of agile software development methodology and boasts about the training and documents support this methodology has. This method emphasizes more on the active user involvement during the project life cycle.

5 - Extreme Programming (XP)

Lowering the cost of requirement changes is the main objective of extreme programming. XP emphasizes on fine scale feedback, continuous process, shared understanding and programmer welfare. In XP, there is no detailed requirements specification or software architecture built.

6 - Feature Driven Development (FDD)

This methodology is more focused on simple and well-defined processes, short iterative and feature driven delivery cycles. All the planning and execution in this project type take place based on the features.

7 - Information Technology Infrastructure Library (ITIL)

This methodology is a collection of best practices in project management. ITIL covers a broad aspect of project management which starts from the organizational management level.

8 - Joint Application Development (JAD)

Involving the client from the early stages with the project tasks is emphasized by this methodology. The project team and the client hold JAD sessions collaboratively in order to get the contribution from the client. These JAD sessions take place during the entire project life cycle.

9 - Lean Development (LD)

Lean development focuses on developing change-tolerance software. In this method, satisfying the customer comes as the highest priority. The team is motivated to provide the highest value for the money paid by the customer.

10 - PRINCE2

PRINCE2 takes a process-based approach to project management. This methodology is based on eight high-level processes.

11 - Rapid Application Development (RAD)

This methodology focuses on developing products faster with higher quality. When it comes to gathering requirements, it uses the workshop method. Prototyping is used for getting clear requirements and re-use the software components to accelerate the development timelines.
In this method, all types of internal communications are considered informal.

12 - Rational Unified Process (RUP)

RUP tries to capture all the positive aspects of modern software development methodologies and offer them in one package. This is one of the first project management methodologies that suggested an iterative approach to software development.

13 - Scrum

This is an agile methodology. The main goal of this methodology is to improve team productivity dramatically by removing every possible burden. Scrum projects are managed by a Scrum master.

14 - Spiral

Spiral methodology is the extended waterfall model with prototyping. This method is used instead of using the waterfall model for large projects.

15 - Systems Development Life Cycle (SDLC)

This is a conceptual model used in software development projects. In this method, there is a possibility of combining two or more project management methodologies for the best outcome. SDLC also heavily emphasizes on the use of documentation and has strict guidelines on it.

16 - Waterfall (Traditional)

This is the legacy model for software development projects. This methodology has been in practice for decades before the new methodologies were introduced. In this model, development lifecycle has fixed phases and linear timelines. This model is not capable of addressing the challenges in the modern software development domain.
The traditional approach
A traditional phased approach identifies a sequence of steps to be completed. In the "traditional approach",[19] five developmental components of a project can be distinguished (four stages plus control):
Typical development phases of an engineering project
  • initiation
  • planning and design
  • execution and construction
  • monitoring and controlling systems
  • completion and finish point

Not all projects will have every stage, as projects can be terminated before they reach completion. Some projects do not follow a structured planning and/or monitoring process. And some projects will go through steps 2, 3 and 4 multiple times.
Many industries use variations of these project stages. For example, when working on a brick-and-mortar design and construction, projects will typically progress through stages like pre-planning, conceptual design, schematic design, design development, construction drawings (or contract documents), and construction administration. In software development, this approach is often known as the waterfall model,[20] i.e., one series of tasks after another in linear sequence. In software development many organizations have adapted the Rational Unified Process (RUP) to fit this methodology, although RUP does not require or explicitly recommend this practice. Waterfall development works well for small, well defined projects, but often fails in larger projects of undefined and ambiguous nature. The Cone of Uncertainty explains some of this as the planning made on the initial phase of the project suffers from a high degree of uncertainty. This becomes especially true as software development is often the realization of a new or novel product. In projects where requirements have not been finalized and can change, requirements management is used to develop an accurate and complete definition of the behavior of software that can serve as the basis for software development.[21] While the terms may differ from industry to industry, the actual stages typically follow common steps to problem solving—"defining the problem, weighing options, choosing a path, implementation and evaluation."

Conclusion

Selecting the most suitable project management methodology could be a tricky task. When it comes to selecting an appropriate one, there are a few dozens of factors you should consider. Each project management methodology carries its own strengths and weaknesses.
Therefore, there is no good or bad methodology and what you should follow is the most suitable one for your project management requirements.

No comments:

Post a Comment