There are a number of interesting variations of the four basic development strategies, including those explored in the following sections.
RAD or Time-Boxing
The partitioning of a system into small releases between three and six months apart, which are then developed using sequential or concurrent release strategies, has been termed RAD by some vendors . RAD is essentially a variation of the sequential release strategy. It is also important to note that some technology vendors claim that sophisticated development environments such as high-level programming languages, application development tools, and support technology (computer-aided software engineering [CASE] tools and such) are required for RAD. Although these tools are useful, they are not necessary.
Radical Fast Track
This strategy is highly controversial and dangerous, yet within certain constraints, it can be very effective. It is the fast track strategy taken to the extreme. Whereas in the fast track strategy the normal project management processes described in this book are still used, especially the active involvement of stakeholders, in the radical fast track strategy a SWAT team or "skunk works" team is formed and given substantial freedom and power to get on with it. The team focuses totally on delivering, with any processes that would slow development avoided. For example, there would be limited or no involvement of stakeholders and no need to follow any corporate standards and technology architectures. In effect, the team is free to break whatever rules they need to enable delivery ASAP. This strategy was used effectively by IBM in developing the personal computer (though the deal that the IBM team made with Microsoft has become the stuff of legend and changed the future of IT) and by Lockheed's famous Skunk Works group .
However, this strategy mandates the existence of a very powerful sponsor or champion who can provide the requisite corporate support and funding. It can only be undertaken by highly skilled teams .
Microsoft's Daily Build
This strategy is a highly refined and effective variation of the release strategies that is more suited for IT projects. It is described in detail in Cusumano and Shelby's Microsoft Secrets (1996), Steve McConnell's Rapid Development (1996), and Pascal Zachary's Showstopper (1994). Basically, after determining the functionality of the system, small teams of developers and testing experts using very powerful development tools build a working version of the system day by day with the testing experts working in partnership to test the daily build. Microsoft used this strategy to build Windows 2000 and Windows XP with great success. Again, this strategy depends on state-of-the-art development technology, highly skilled and motivated developers and testing people, and a creative working environment.
Agile, Lite, or Extreme Methods
These are relatively recent variations of strategy and, like many radical project management models, they had their origins in IT. There are many packaged versions of this approach, but the basic concept was developed by Beck and Fowler (2001). XP, lite, and agile approaches use concepts such as team programming; very small time frames ( generally less than eight weeks); and surprisingly low-tech concepts (e.g., requirements as stories on small 3 x 5 cards) coupled with very high-tech development tools.
Mixing and Matching
Of course, you can mix and match the four basic strategies, giving you almost unlimited options in planning your project. For example, you can undertake the monolithic strategy for the analysis phase and then partition your product or system into releases for the design and build phases, then recombine the releases for a monolithic implementation phase. You are limited only by your imagination and the project constraints (ahem).