Oosad 03

11
Validating Requirements Chapter 03

description

 

Transcript of Oosad 03

Page 1: Oosad 03

Validating Requirements

Chapter 03

Page 2: Oosad 03

Introduction• It is not enough to gather requirements; you also need to

verify that they are correct• A wide range of experience combined with unambiguous

models, reduces the chance of misunderstood requirements

• Beware of gold plating• Successful projects meet the needs of their users but if you

have an analysis error you wont fully meet their needs • To test your requirement models you can apply one or

more of the following techniques– Use case scenario testing– User Interface walkthroughs– Requirement reviews

Page 3: Oosad 03

Use Case Scenario Testing• Used to test domain models, if it accurately

reflects the aspects of the business that you are modeling

• Steps1. Perform domain modeling2. Create the use case scenarios 3. Assign classes to your SMEs4. Describe how to act out a scenario5. Act out the scenarios6. Update the domain model7. Save the Scenarios

Page 4: Oosad 03

Create Use Case Scenarios• Conceptually similar to use cases

– A use case describes the logic including the basic and alternate courses of action, for a single cohesive task

– A use case scenario describes a single path of logic through one or more use cases

• When you describe a use case scenario, you want to give it a name and short description and then a description of the steps to take to fulfill the scenario.

• Helps to catch unusual scenarios• You can identify new scenarios in several ways

– Consider tasks the system should and shouldn’t be able to handle – Explore business rules– Do some more brainstorming

Page 5: Oosad 03

Acting Out Scenarios

• Steps1. Call out a new scenario 2. Determine which card should handle the

responsibility 3. Update the cards whenever necessary4. Describe the processing logic5. Collaborate if necessary6. Pass the ball back when done

Page 6: Oosad 03

Use Case Name: Place OrderActors: Registered Shopper (Has an existing account, possibly with billing and shipping information), Non-registered Shopper (Does not have an existing account), Fulfillment System (processes orders for delivery to customers), Billing System (bills customers for orders that have been placed)Triggers: The user indicates that she wants to purchase items that she has selected.Preconditions: User has selected the items to be purchased.Post-conditions: The order will be placed in the system, The user will have a tracking ID for the order, The user will know the estimated delivery date for the order.Basic Courses of Actions•The user will indicate that she wants to order the items that have already been selected.•The system will present the billing and shipping information that the user previously stored.•The user will confirm that the existing billing and shipping information should be used for this order.•The system will present the amount that the order will cost, including applicable taxes and shipping charges.•The user will confirm that the order information is accurate.•The system will provide the user with a tracking ID for the order.•The system will submit the order to the fulfillment system for evaluation.•The fulfillment system will provide the system with an estimated delivery date.•The system will present the estimated delivery date to the user.•The user will indicate that the order should be placed.•The system will request that the billing system should charge the user for the order.•The billing system will confirm that the charge has been placed for the order.•The system will submit the order to the fulfillment system for processing.•The fulfillment system will confirm that the order is being processed.•The system will indicate to the user that the user has been charged for the order.•The system will indicate to the user that the order has been placed.•The user will exit the system.

Page 7: Oosad 03

Alternate Flows:3A1: The user enters billing and shipping information for the order. The user desires to use shipping and billing information that differs from the information stored in her account. 1.The user will indicate that this order should use alternate billing or shipping information.2.The user will enter billing and shipping information for this order.3.The system will validate the billing and shipping information.4.The use case continues5A1: The user will discover an error in the billing or shipping information associated with their account, and will change it.1.The user will indicate that the billing and shipping information is incorrect.2.The user will edit the billing and shipping information associated with their account.3.The system will validate the billing and shipping information.4.The use case returns to step 2 and continues.5A2: The user will discover an error in the billing or shipping information that is uniquely being used for this order, and will change it.1.The user will indicate that the billing and shipping information is incorrect.2.The user will edit the billing and shipping information for this order.3.The use case returns to step 3A1 step 3.10A1: The user will determine that the order is not acceptable (perhaps due to disatisfaction with the estimated delivery date) and will cancel the order.1.The user will request that the order be cancelled.2.The system will confirm that the order has been cancelled.3.The use case ends.

Page 8: Oosad 03
Page 9: Oosad 03

Advantages of use Case Scenario Testing

• Use case scenario testing helps you to find and fix analysis errors inexpensively

• Use case Scenario testing provides you with a detailed descriptions of the business logic of the system

• Use case scenario testing is simple and it works

• Scenarios help to define how people interact with the system

• Your SMEs must make the time to do the testing

• Managers often feel real work isn’t being accomplished

• Developers are often skeptical

Page 10: Oosad 03

User Interface Walkthroughs

• Similar to use case scenario testing sessions, the only difference being your system’s user interface is being tested instead of your domain model

Page 11: Oosad 03

Requirement Reviews

• The requirement team prepares for review• The team indicates it is ready for review• The review facilitator performs a cursory review• The review facilitator plans and organizes the

review • The reviewers review the package prior to the

review • The review takes place • The review results are acted on