Presentation is loading. Please wait.

Presentation is loading. Please wait.

CMSC 345 The Requirements Specification. Why do we need requirements Without the correct requirements, you cannot design or build the correct product,

Similar presentations


Presentation on theme: "CMSC 345 The Requirements Specification. Why do we need requirements Without the correct requirements, you cannot design or build the correct product,"— Presentation transcript:

1 CMSC 345 The Requirements Specification

2 Why do we need requirements Without the correct requirements, you cannot design or build the correct product, so product does not enable users to do their work The cost of good requirements gathering and system analysis is minor compared to the cost of poor requirements

3 Classes of requirements 1. Functional Requirements 2. Nonfunctional Requirements 3. Constraints

4 Functional requirements Functional Requirements are things the product must do – an action the product must take if it is to provide useful functionality to the user The product shall produce an amended de- icing schedule when a change to a truck status means that previously scheduled work cannot be carried out as planned

5 Nonfunctional requirements Nonfunctional requirements are the properties or qualities the product must have. The product shall use company colors, standard company logos and standard company typefaces

6 Constraints Constraints are global issues that shape the requirements Passengers on board an aircraft will use this product The product shall run on the company’s existing UNIX machines

7 Why do we need requirements document? Customer Questions Do you understand my problem? Can you develop and deliver a system that will solve my problem? How long will it take? How much will it cost? Developer Questions What is your problem? How do you currently handle your problem? When do you need a solution? How much are you willing to pay for a solution?

8 Volere Requirements Process Suzanne and James Robertson The Atlantic Sytems Guild Text: “Measuring the Requirements Process” Website: www.systemsguild.com

9 How to Proceed 1. Establish the scope of the work 2. Establish the adjacent systems (outside world) that surrounds the work 3. Identify connections between the work and the adjacent systems 4. From the connections, identify the business events that affect the work 5. Study the response to the event

10 How to Proceed (2) 6. Determine the best response that the organization can make for the event 7. Determine the product’s role in the response 8. Determine the use case(s) for the product 9. Derive the requirements for each use case

11 The Work Is the business activity of your client Your product will help with the work, so you must understand the work Understand how it relates to the outside world Show work’s connection to outside world via context diagram

12

13

14 Business Events Businesses respond to events Buying a book in bookshop Paying your credit card bill Business event responses are triggered by the arrival of a data flow (from an adjacent system) So triggering the event is outside control of the work

15 Temporal Business Events Some events are triggered by the passage of time – a pre-determined time or date has arrived Response is to produce information and send it to an adjacent system

16 Finding Business Events B/E result from communications from outside world; look to context diagram Each data flow that enters or leaves the work is the result of a business event It is the works response that is interesting to the requirements analyst

17 Work Responds to Events For every business event, there is a pre-planned response (some work) Isolate this work – fairly unconnected from other event responses Adjacent systems are the customers for the business events – what does the adjacent system want from that event?

18 Determining the Product The product is the part of the work you choose to build (automate) Establish the product’s scope Examine the responses to the business events and determine the product boundary Extend the boundary until it gets into the brain of the adjacent system

19

20 Event-driven Use Cases The use case is the part of the response that is done by the product Derived from the business events Actors interact with the product Use cases represent the components of the product and are described in terms of functional requirements Each requirement says what the product has to do to allow the actor to complete his work

21 Finding Functional Requirements Use cases are described by a set of steps that complete the functional task of the use case Each step is a task described by the actor What must the product do to complete each step? These are the functional requirements

22

23 Finding Non-functional Requirements The characteristics of the work that are represented by the use case or functional requirements The properties the functionality must have Functional requirements are verbs Nonfunctional requirements are adjective

24

25 Volere Requirements Specification Template Framework for writing a specification Categorizes requirements into useful types

26 A Requirements Specification Contains all the requirements and constraints. A complete description of the of the product’s capabilities Must be written to be meaningful to both the customer and the developers Sometimes two documents

27 Product Constraints Purpose of the Product The Client, Customer and other Stakeholders Users of the Product Requirements Constraints Naming Conventions and Definitions Relevant Facts Assumptions

28 Functional Requirement The Scope of the Work Work Context Diagram Business Events The Scope of the Product Product Boundary (Use case diagram) Use Cases Functional and Data Requirements

29 Nonfunctional Requirements Look and Feel Requirements Usability Requirements Performance Requirements Operational Requirements Maintainability and Portability Requirements Security Requirements Cultural and Political Requirements Legal Requirements

30 Project Issues Open Issues Off-the-Shelf Solutions New Problems Tasks Cutover Risks Costs User Documentation Waiting Room

31 The Requirements Shell Requirement #:Unique ID Requirement Type:The type from the template Event/use case #:List of Events / Use cases that need this requirement Description:A one sentence statement of the intention of the requirement Rationale:A justification of the requirement Source:Who raised this requirement?

32 Requirements Shell (2) Fit Criterion:A measurement of the requirement such that it is possible to test if the solution matches the original requirement Dependencies: A list of other requirements that have some dependency on this one Conflicts: Other requirements that cannot be implemented if this one is Supporting Materials: Pointer to documents that illustrate and explain this requirement

33 Requirements Shell (3) Customer Satisfaction: Degree of stakeholder happiness if this requirement is successfully implemented (Scale 1 (uninterested) – 5 (extremely please)) Customer Dissatisfaction: Degree of stakeholder unhappiness if this requirement is successfully implemented (Scale 1 (hardly matters) – 5 (extremely displease)) History:Creation, changes, deletions, etc. Copyright © Atlantic Systems Guild


Download ppt "CMSC 345 The Requirements Specification. Why do we need requirements Without the correct requirements, you cannot design or build the correct product,"

Similar presentations


Ads by Google