Your build should take advantage of the layered architecture (as shown in Figure 15-10) so that builds can start earlier. Because the layers obviously interact, moving ahead in one area might require you to make assumptions that could prove to be false and result in rework. Part of the project manager's job is to understand the risk and balance it with the benefit of producing quicker results.
A thin user interface layer can be built as soon as requirements settle down and can emerge from prototyping. The business logic can be attached behind this layer when that logic is written. The design and build of the data services are likely to be the longest-running tasks. But provided a logical data provider is built to insulate the application from changes in database design, the data provider can be written to interface to a dummy database to provide a test harness for the application. The application will usually be written within a framework that handles generic interface services, error handling, persistence, and so on.
Figure 15-10 Build planning
Year 2000 is a well-defined maintenance project-the specification is about as simple as you can get. It is the first project in IT history with an immovable deadline. The consequence of slippage is not just a missed deadline, but the total and catastrophic failure of the organization. The alternative to addressing the problem is to go out of business.
Visual Basic developers are in denial: 90 percent of all applications are affected, not just mainframe code. One bank we know of has developed many Visual Basic systems through the use of freelance contractors. Its own IT department has no support for the language. Today 8 million lines of Visual Basic code are under maintenance by managers. About 5 percent of this code will have to change, and 100 percent will have to be thoroughly tested (incidentally, testing is about 60 percent of the effort). It's really scary.
For a thorough discussion of this topic, refer to Chapter 9. Please refer to Appendix B for details of TMS's Year 2000 Visual Basic services and products, for example Visual DateScope 2000 and VBA2000.