Including Partitions

Not shown in Figure 4-17, but an important step, is to then plan the next cycle and update the life-cycle plan, including partitioning the system into subsystems to be addressed in parallel cycles. This can include a plan to terminate the project if it is too risky or infeasible. Secure the management's commitment to proceed as planned.

Benefits of the win-win spiral model have been noted as: faster software via facilitated collaborative involvement of relevant stakeholders, cheaper software via rework and maintenance reduction, greater stakeholder satisfaction up-front, better software via use of architecture-level quality-attribute trade-off models, and early exploration of many architecture options.'-^'

Evolutionary/Incremental

Due to their nature, the evolutionary/incremental acquisitions often encounter complications. Questions arise because each incremental build provides but a small part of the capability of the system to be acquired. In addition to normal development decision criteria, additional questions must be answered:

• Is the decision to develop this functionality for this amount of money a good idea?

• Is this the time to address the functionality question (user priorities, dictates of the evolution itself)?

• Is this a reasonable price for the functionality being added (or are we "gold-plating" one functional area before developing all required capabilities)?

• Will we run out of money before we complete the required system?

Incremental V

Figure 4-18 shows a combination model fashioned by Krasner. In Constructing Superior Software, he is approaching the software development life cycle model from teamwork considerations.

Figure 4-18. Incremental V Project Process Model

Figure 4-18. Incremental V Project Process Model

Fashioning a good project life cycle model is a worthwhile up-front investment that puts all project staff on the same page ... such as the traditional V model blended with the incremental, iterative development model. This model attempts to balance the need for management controls with the need for technical innovation and situation dynamics.

The keys to success of the Incremental V model are what happen at the control ... points. These are the formal mechanisms when management and development must jointly make explicit decisions to proceed to the next phase.

Along with periodic management reviews and previews, these control points force the discussion of issues, risks, and alternatives. The meaning of each control point should be explicitly defined within the overall process. Behind such a high-level model are concrete plans based on rigorous estimates and well-defined milestones that lead down the path

Object-Oriented Rapid Prototyping

It is common to wonder why the subtle differences between the structured rapid prototyping, RAD, and spiral models matter—all three are user-involved, evolutionary approaches. The waterfall, V-shaped, and incremental models also have characteristics in common, such as the entry and exit phase criteria. The spiral can be thought of as an overlay of incremental, with the addition of risk management. All the models have some sort of scoping, requirements gathering, designing, developing, testing, and implementation activities.

In fact, most life cycles are adaptations and combinations, and all software evolves. Commercial products are always evolving, and government and IT shops call the later evolutionary loops "maintenance."

The project manager should feel free to select and customize a software development life cycle to suit the project needs, but he must also remember the importance of naming the phases and clearly demarking the transition from "developing" to "implementing." The importance of the implementation or deployment line is all about control and management. There is a need for every software product to be considered "in production" at some point in time, or customers don't know when to pay the bill, users have no assurance of when functionality is stable, and the project team will not be able to baseline the product for configuration management purposes.

^ previous

* previous

Project Management Made Easy

Project Management Made Easy

What you need to know about… Project Management Made Easy! Project management consists of more than just a large building project and can encompass small projects as well. No matter what the size of your project, you need to have some sort of project management. How you manage your project has everything to do with its outcome.

Get My Free Ebook


Post a comment