While the greatest risk to project success is a lack of requirements, it can be argued that the next-greatest risk to project success is the development of overly specific or restrictive requirements. The author of the requirements must be prevented from mandating the technology solution to meet the requirements. Most requirements authors are tempted to "play engineer" and dictate not only the business problem to be solved but also the technical solution to be chosen. The requirements process is intended to provide checks and balances between the business requestor and the technical developer. This creative tension and the ensuing negotiations keep the design balanced between business objectives and technical expedience.
So, how can you distinguish a good requirement from a bad requirement? A good requirement should have the following characteristics:
Transferable. Requirements must be written down in a way that the other stakeholders and team members are able to understand. Anything not written down is an urban legend, a rumor, an idea, a prejudice—but not a requirement.
Business focused. Aligns with business strategies, priorities, and drivers.
Concise. Contains just enough information to deliver the service, no more and no less.
Unique. Does not duplicate the information provided by other requirements, by the technology strategy, or by the business strategy. Requirements that recur in multiple projects may be candidates for inclusion in the business strategy or technology strategy document.
Technology agnostic. Does not mention, dictate, or assume the technologies to be used in meeting the requirement. The requirements articulate a desired goal-state to be brought about by a change in business processes or services.
Verifiable. Describes a goal-state that is both measurable and verifiable.
Specific. Focuses on a single business process or service to be improved.
Identifiable. A method must be applied to record and track each requirement individually. This need not be complex and may be as simple as a numbering system or naming convention, but the requirements must be differentiated from all other requirements.
Traceable. To avoid having requirements overlooked during a project and having new and changing requirements added ad hoc to the project, it is important to be able to trace the requirement. This means that it must be possible to show which detailed requirements arose from the stated business requirements, what testing requirements were developed as a result, and the resulting design.
Lessons Learned: "I’ve Already Purchased a Software Solution and Now You Need to Make It Happen."
The software sales process has evolved to make use of the communication differences between business stakeholders and technology stakeholders. Software sales representatives are generally trained to "sell up," which means that they engage the senior business stakeholders in an organization, listen to their business story problem, and then promise that their software product meets those needs. Because the business stakeholders generally deal in story problems, the technology salespeople often use testimonials and application sheets to show that other businesspeople with similar story problems met their needs using the offered software package. Unfortunately, the current business problem might bear only a superficial resemblance to the problem solved in the testimonial and might not meet the needs of the current business stakeholders. Even when purchasing turn-key products and solutions, you need to work through a detailed and measurable requirements process. Well-defined requirements are the only defense against purchasing an inappropriate or ineffective turn-key software solution.
For example, I often have students in my classes who have been charged with replacing their file servers with SharePoint Server 2007. The reasoning given is that a Microsoft salesperson convinced their CIO that the search engine and collaboration features in SharePoint Server 2007 would both help the company grow and help employees find their documents quickly and easily, so it stands to reason that if all their documents were hosted in SharePoint Server 2007, then all of their documents would be quick and easy to find.
This solution meets a strongly felt need—to allow employees to find information quickly and easily and to allow companies to relieve themselves of the growing number of documents on their file servers. Unfortunately, most CIOs don’t take the time to define, precisely, what it means to have a system that is able to more easily and quickly find documents. As a result, SharePoint Server 2007 is purchased with a promise that it can act like a file server and relieve fundability problems, even though SharePoint Server 2007 is not a file server and never purports to be one.
Because most organizations don’t take the time to understand their need from a granular level, they also don’t learn about the problems associated with using a collaborative platform as a document repository. If a detailed and measurable system was put in place, many would realize that, while a large number of documents are appropriate candidates for SharePoint Server 2007, others are not and should not be moved into SharePoint Server 2007. In the absence of well-defined requirements, SharePoint Server 2007 can be construed to solve nearly any problem, which would obviously be untrue.
3.22.242.141