Project Management is the application of knowledge, skills, tools and techniques to project activities to meet the project requirements.
Project Management Process consists of the following 4 stages:
- Feasibility study
- Project Planning
- Project Execution
- Project Termination
Feasibility study explores system requirements to determine project feasibility. There are several fields of feasibility study including economic feasibility, operational feasibility, technical feasibility. The goal is to determine whether the system can be implemented or not. The process of feasibility study takes as input the requirement details as specified by the user and other domain-specific details. The output of this process simply tells whether the project should be undertaken or not and if yes, what would the constraints be. Additionally, all the risks and their potential effects on the projects are also evaluated before a decision to start the project is taken.
A detailed plan stating stepwise strategy to achieve the listed objectives is an integral part of any project.
Planning consists of the following activities:
- Set objectives or goals
- Develop strategies
- Develop project policies
- Determine courses of action
- Making planning decisions
- Set procedures and rules for the project
- Develop a software project plan
- Prepare budget
- Conduct risk management
- Document software project plans
This step also involves the construction of a work breakdown structure(WBS). It also includes size, effort, schedule and cost estimation using various techniques.
A project is executed by choosing an appropriate software development lifecycle model(SDLC). It includes a number of steps including requirements analysis, design, coding, testing and implementation, testing, delivery and maintenance. There are a number of factors that need to be considered while doing so including the size of the system, the nature of the project, time and budget constraints, domain requirements, etc. An inappropriate SDLC can lead to failure of the project.
There can be several reasons for the termination of a project. Though expecting a project to terminate after successful completion is conventional, but at times, a project may also terminate without completion. Projects have to be closed down when the requirements are not fulfilled according to given time and cost constraints.
Some of the reasons for failure include:
- Fast changing technology
- Project running out of time
- Organizational politics
- Too much change in customer requirements
- Project exceeding budget or funds
Once the project is terminated, a post-performance analysis is done. Also, a final report is published describing the experiences, lessons learned, recommendations for handling future projects.
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.
- Software Engineering | Software Project Management Complexities
- Software Engineering | Software Project Management (SPM)
- Software Engineering | Software Project Management Plan (SPMP)
- Process Workflows in Software Project Management
- Iteration Planning Process in Software Project Management
- Software Engineering | Requirements Engineering Process
- Difference between Software Engineering process and Conventional Engineering Processs
- Process Improvement in Defect Management Process (DMP)
- Software Engineering | Role and Responsibilities of a software Project Manager
- Software Engineering | Responsibilities of Software Project Manager
- Software Engineering | Introduction to Software Engineering
- Software Engineering | Software Process Framework
- Software Engineering | Software Design Process
- Software Engineering | System configuration management
- Software Engineering | Risk Management
- Risk Management Steps in Software Engineering
- Software Engineering | Project size estimation techniques
- Software Engineering | Project Planning
- Software Engineering | Re-engineering
- Software Engineering | Reverse Engineering
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.