AITPM - Lecture 04-06 - Sommerville Chapter 23 - Project Planning (Key…
AITPM - Lecture 04-06 - Sommerville Chapter 23 - Project Planning
Project planning has three stages in a project life cycle:
Project startup stage
Periodically throughout the project
You should use three main parameters when computing the costs of a software development project:
Hardware and software costs
Travel and training costs
23.1 Software pricing
Figure 23.1 - Factors affecting software pricing
Cost estimate uncertainty
Pricing to win
23.2 - Plan-driven development
Includes sections like
Hardware and software resource requirements
Monitoring and reporting mechanism
Figure 23.2 - Project plan supplements
Configuration management plan
The planning process
Figure 23.3 - The project planning process
Formal project technical review
23.3 - Project scheduling
23.5 - Estimation techniques
Two types of techniques can be used for making estimates
Algorithmic cost modeling
Algorithmic cost modeling
Number of lines of source code (SLOC)
23.6 - COCOMO cost modeling
Submodels of COCOMO II are
An application composition model
An early design model (
A reuse model
A post-architecture model
The application composition model
The early design model
The reuse model
ESLOC - number of lines of new code
The post-architecture level
Project duration and staffing
■ The price charged for a system does not just depend on its estimated development costs and the profit required by the development company. Organizational factors may mean that the price is increased to compensate for increased risk or decreased to gain competitive advantage.
■ Software is often priced to gain a contract, and the functionality of the system is then adjusted to meet the estimated price.
■ Plan-driven development is organized around a complete project plan that defines the project activities, the planned effort, the activity schedule, and who is responsible for each activity.
■ Project scheduling involves the creation of various graphical representations of part of the project plan. Bar charts, which show the activity duration and staffing timelines, are the most commonly used schedule representations.
■ A project milestone is a predictable outcome of an activity or set of activities. At each milestone, a formal report of progress should be presented to management. A deliverable is a work product that is delivered to the project customer.
■ The agile planning game involves the whole team in project planning. The plan is developed incrementally, and, if problems arise, it is adjusted so that software functionality is reduced instead of delaying the delivery of an increment.
■ Estimation techniques for software may be experience-based, where managers judge the effort required, or algorithmic, where the effort required is computed from other estimated project parameters.
■ The COCOMO II costing model is a mature algorithmic cost model that takes project, product, hardware, and personnel attributes into account when formulating a cost estimate.