Software Development
Project ManagementProject Management Tools
• Project management software has the capacity to help plan, organize, and manage resource pools and develop resource estimates.
• Depending on the sophistication of the software, it can manage estimation and
planning, scheduling, cost control and budget management, resource allocation,
collaboration software, communication, decision-making, quality management and documentation or administration systems.
• Today, numerous PC & browser based project management software exist and they are finding their way into almost every type of business.
Software project management
• Software project management is the art and science of planning and leading software projects.
• It is a sub-discipline of project
management in which software projects are planned, implemented, monitored and controlled.
History
• In the 1970s and 1980s, the software industry grew very quickly, as computer companies quickly recognized the relatively low cost of software production compared to hardware production and circuitry.
• To manage new development efforts,
companies applied the established project management methods, but project schedules slipped during test runs, especially when
confusion occurred in the gray zone between the user specifications and the delivered
• To be able to avoid these problems, software project management methods focused on matching user requirements to delivered products, in a method known now as the waterfall model.
• Today software project management
methods are still evolving, but the current trend leads away from the waterfall model to a more cyclic project delivery model.
Software development process
• A software development process is concerned primarily with the production aspect of
software development, as opposed to the technical aspect, such as software tools.
• These processes exist primarily for supporting the management of software development, and are generally skewed toward addressing
business concerns.
• Many software development processes can be run in a similar way to general project
Examples
• Risk management is the process of measuring or assessing risk and then developing
strategies to manage the risk.
• Requirements management is the process of identifying, eliciting, documenting, analyzing, tracing, prioritizing and agreeing on
requirements and then controlling change and communicating to relevant stakeholders.
• Change management is the process of identifying, documenting, analyzing,
prioritizing and agreeing on changes to scope (project management) and then controlling changes and communicating to relevant stakeholders.
• Software configuration management is the process of identifying, and documenting the scope itself, which is the software product underway, including all sub-products and
changes and enabling communication of these to relevant stakeholders.
• Release management is the process of identifying, documenting, prioritizing and agreeing on releases of software and then controlling the release schedule and
Project planning, monitoring and control
• The purpose of project planning is to
identify the scope of the project, estimate the work involved, and create a project schedule.
• Project planning begins with requirements that define the software to be developed. The project plan is then developed to describe the tasks that will lead to completion.
• The purpose of project monitoring and
control is to keep the team and management up to date on the project's progress.
• If the project deviates from the plan, then the project manager can take action to correct the problem.
• Project monitoring and control involves status meetings to gather status from the team.
• When changes need to be made, change control is used to keep the products up to date.
Gantt Chart
• A Gantt chart is a type of bar chart,
developed by Henry Gantt in the 1910s, that illustrates a project schedule.
• Gantt charts illustrate the start and finish dates of the terminal elements and summary elements of a project.
• Terminal elements and summary elements comprise the work breakdown structure of the project.
• Modern Gantt charts also show the dependency (i.e., precedence network) relationships between activities.
• Gantt charts can be used to show current schedule status using percent-complete shadings and a vertical "TODAY" line as shown here.
• Although now regarded as a common charting technique, Gantt charts were considered revolutionary when first introduced.
• This chart is also used in information
technology to represent data that have been collected.
PERT Chart
• The program (or project) evaluation and review technique, commonly abbreviated PERT, is a statistical tool, used in project management, which was designed to analyze and represent the tasks involved in
completing a given project.
• First developed by the United States Navy in the 1950s, it is commonly used in
conjunction with the critical path method (CPM).
• PERT is a method to analyze the involved tasks in completing a given project,
especially the time needed to complete each task, and to identify the minimum time needed to complete the total project.
• The first step to scheduling the project is to determine the tasks that the project requires and the order in which they must be
• The order may be easy to record for some tasks (e.g. When building a house, the land must be graded before the foundation can be laid) while difficult for others (There are two areas that need to be graded, but there are only enough bulldozers to do one).
• Additionally, the time estimates usually reflect the normal, non-rushed time.
• Many times, the time required to execute the task can be reduced for an additional cost or a reduction in the quality.
Activity 3.1
• Create a project plan for your culminating activity. This must include all aspects of the planning, from scope of the project, an estimate of the work involved, and a
project schedule.
• Create a Gantt chart as well. Leave the delivery dates blank (for now). You should be able to estimate how long you will
spend on each individual part.
• Save your work as john_s_3_1_Plan
(where john_s is replaced by your name) under the appropriate folder for your class in the DropOff folder on the X: drive