Software project management is the discipline used for managing projects effectively. It is a challenging activity and plays a critical role in the success of a project.
Estimation is one of the key aspects of software project management. It helps in estimating the work to be done and the effort required. However, as the project progresses, there are gaps between the planned and actual estimates. Project monitoring and control are required to ensure that the project targets are achieved.
Basic Concepts of Software Project Management course includes:
- An Overview of Software Project Management
- Team Organization
- Project Scheduling
This course has been co-authored by the internationally recognized consultant and authority on software engineering—Dr. Roger S. Pressman.
This course will enable you to:
- Explain what software project management involves and why it is important.
- Explain how teams can be organized for working effectively on a project.
- Explain what a project schedule is and how it is created and used.
You receive a certificate of completion after successfully completing this course.
While planning at the beginning of the project, the product size and the effort and schedule required to build the product are estimated at a broad level. The planning activity should consider aspects such as team organization that are required to make a feasible and comprehensive plan. During detailed planning, the activities needed for executing the project are identified and a schedule for project execution, monitoring, and control is established.
Software projects require problem solving with team effort. Therefore, people are the most critical resource in any project. The role of the project manager is critical to project success. There are various types of team structures—democratic decentralized, controlled centralized, and controlled decentralized. The team structure for a project is selected based on the suitability of the structure to the project characteristics and the organization culture.
A schedule is a very important part of detailed planning. It is used for the execution of various project activities because it provides the basis for allocating work, monitoring it, and taking corrective action. Scheduling is done using certain principles. These principles are:
- Compartmentalize the project into manageable tasks.
- Allocate appropriate time for each task.
- Define responsibilities for each task.
- Specify a defined outcome for each task.
- Identify the interdependency of tasks.
- Define the milestones based on the completion of a set of tasks.
- Validate the effort.
The steps that are followed for scheduling are defining the process that the project will follow, defining the tasks for the project, estimating the effort and the time for each task, defining the interdependencies, creating a task network, and adjusting it to conform to the required delivery date.