It Project Management
Essay Preview: It Project Management
Report this essay
Project management is an integrative effort. Decisions and actions taken in one knowledge area at a certain time usually affect other knowledge areas. Managing these interactions requires making trade-offs among the projects scope, time, and cost. A project manager may also need to make trade-offs between other knowledge areas, for example between risk and human resources. Therefore, we should view project management as a number of related processes.
A process is a series of actions directed toward a particular result. Project management process groups progress from initiation activities to planning activities, executing activities, monitoring and controlling activities, and closing activities. Initiating processes including defining and authorizing a project or project phase. To initiate a project or the concept phase of a project, someone must define the business need for the project., someone must sponsor the project, and someone must take on the role of project manager. Initiating processes take place during each phase of a project.
Planning processes include devising and maintaining a workable scheme to ensure that the project addresses the organizations needs. There is normally no single project plan. Typically, there are several project plans, for example, the scope management plan, procurement management plan, schedule management plan, cost management plan, and so on. Each plan defines each knowledge area as it relates to the software development project at that point in time. For example, a software development project team must develop a plan to define the work that needs to be done for the project, to schedule activities that related to that work, to estimate costs for performing the work, and so on. In order to account for the changing conditions on the software development project and in the organization, software project development teams will often revise project plans during each phase of the software development project life cycle.
Executing processes include coordinating people and other resources to carry out the software development project plans and produce the software products and services of the project or phase. Examples include developing the software development project team, directing and managing the software development project team, performing quality assurance, distributing information, and selecting sellers.
Monitoring and controlling processes include regularly measuring and monitoring progress to ensure that the software development project team meets the project objectives. The software development project manager and staff monitor and measure progress against the plans and take corrective action when necessary. A common monitoring and controlling process is performance reporting, where project stakeholders can identify any necessary changes that may be required to keep the project on track.
Closing processes include formalizing acceptance of the project or project phase, and ending it efficiently. Administrative activities are involved in this process group, such as archiving project files, closing out contracts, documenting lessons learned, and receiving formal acceptance of the delivered work as part of the phase or software development project.
A good project plan should include a product purpose, a history, release criteria, goals, project organization, schedule overview, project staffing, proposed schedule, and a risk list.
The product purpose should briefly describe the product, why the organization wants to produce it, what benefits accrue to the company, and so on. Sometimes the vision from the software development charter is not enough. If this is the case, then the product purpose is the perfect place to clear the air. Depending on the size and duration of the software development project, each team or subproject team may have its own purpose. That purpose aligns with the program charters vision but is not the same.
A history of previous releases of the software may or may not apply. If a history does apply, then this can assist in clarification of known technical debt. The data that can be reviewed should include frequency of releases, number of released defects, customer-reported problems, and anything else that may affect how the software development program manager determines what quality means or how they will manage the project.
For release criteria, the software development project manager should itemize the key product deliverables from the project. This should include functionality, performance and quality requirements.
The goals should include the product goals, the project goals, the team goals, and the organization goals. The product goals might consist of the ranked requirements that have not been committed for the most recent release. This list could be kept in a product backlog. Project goals could consist of a performance standard that is better than the requirement. The goals for each subproject should be specifics to that projects area. Team goals could be the improvement of a specific features performance or reliability. Finally, organization goals could be a reduction of the overall duration of projects in order to improve organizational agility.
If the goals are detailed in the software development project charter document, then they do not need to be in the software development project plan.
Project organization should be an articulation of how the software development program manager expects the software development team will work on the project. This should address how to organize the projects work with a life cycle, some of the key practices, and whether there are any key decision makers who can decide something about the software development project. Here is where we should also describe the general approach to the project, including such issues as ramping up the entire project team at the project start, hiring new people, and developing complete features including code and documentation. The actual details of what will be included here depend on the life cycle of the software development project and structure of the team.
A schedule overview should be created with major milestones and what people can expect at those milestones. If the project manager is using iterations or increments, then we need to explain how long the iterations or increments are and what is expected at the end of each one. This is not the place for a work breakdown structure, but if one is available, then there should be a pointer to it for people who want more detail.
For project staffing, one needs to remember that many project managers do not have control over who is assigned to their software development projects. If the project manager acquires all the personnel for the project on the first day, then a staffing