14.2 Mid-Project: Feature-Creep Control In-house development organizations are
Sunday, September 30th, 200714.2 Mid-Project: Feature-Creep Control In-house development organizations are especially susceptible to being unresponsive to their users. They quit looking at their users as true customers because they have an exclusive engagement. Friction results over time, and then the developers use the requirements specification as a weapon to force their users to behave. No one likes working in the face of a steady stream of arbitrary changes, but there are more constructive ways to respond than beating the users on the head with a requirements document. Developers who do that are finding with increasing frequency that their engagements aren’t as exclusive as they had once thought (Yourdon 1992). When the market is changing rapidly. In the 1960s, and earlier, when business needs changed more slowly than they do today, it might have been wise to plan a product in detail two years before you released it. Today, the most successful products are often those that had the most change implemented the latest in the development cycle. Rather than automatically trying to eliminate requirements changes, the software developer’s job today is to strike a balance between chaos and rigidity rejecting low-priority changes and accepting changes that represent prudent responses to changing market conditions. When you want to give latitude to the developers. One big change associated with the PC revolution has been that project sponsors are more willing to leave large parts of the specification to the developers’ discretion (for the reasons described in the “Minimal Specification” section early in this chapter). If you want to leave part of the product concept to the developers, you can’t freeze the product concept as soon as requirements specification is complete; you have to leave at least part of it open for the developers to interpret. Stable or notstable? How stable your requirements are has a huge impact on how you go about software development, and particularly on what you need to do to develop rapidly. If your requirements are stable, you develop one way. If they are unstable, you develop another way. From a rapid-development point of view, one of the worst mistakes you can make is to think your requirements are stable when they aren’t. If your project doesn’t have stable requirements, it isn’t sufficient any more to throw up your hands and shout “Yikes! We don’t have stable requirements!” and proceed the same as you would have if you did have stable requirements. You can take certain steps to compensate for unstable requirements, and you must take those steps if you want to develop rapidly.
Please visit Domain Name Hosting services for high quality webhost to host and run your jsp applications.