1 from business to system use cases presented by leslie munday

31
1 P.R.C P.R.C From Business To System Use Cases Presented by Leslie Munday

Post on 22-Dec-2015

217 views

Category:

Documents


0 download

TRANSCRIPT

1P.R.CP.R.C

From Business To System Use Cases

Presented by

Leslie Munday

Leslie Munday
Chanes:Replaced includes with extends and added a section about included use cases.

2P.R.CP.R.C

Agenda/Contents

• The purpose of this presentation is to give an overview of the connection between the Business Modeling, Enterprise Architecture and Requirements disciplines of the PRC Dev Case.

• In the next two hours we will cover:– Business Use Cases (BUCs)– Traceability From BUCs To Stakeholder Requirements– Allocation Of Business Activities– Candidate System Use Cases (CSUCs)– Traceability From CSUCs To BUCs– System Use Cases (SUCs)– Traceability From SUCs To BUCs

3P.R.CP.R.C

Intended Audience

• This presentation will demonstrate how AWS relates business use cases to system use cases.

• At the end of this presentation you will understand how to:– allocate business activity to systems;– create a candidate system use case model;– manage traceability between BUCs and SUCs.

4P.R.CP.R.C

Prerequisites

• In order to fully understand this presentation you should have previous experience with:– Business use case modeling.– System use case modeling.– Modeling with Rational Rose.– Managing traceability with RequisitePro.

5P.R.CP.R.C

Use Cases RevisitedWhat is a Use Case• Primary actor - Initiates the use case• Secondary actors - Interfaces with the use case• Precondition - The state immediately before the use

case begins• Basic flow step - A required step in the use case flow• Alternative flow step - An unexpected step in the use

case flow• Postcondition(s) - A state immediately after the use

case completes.

6P.R.CP.R.C

Types Of Use Case

• Business(BUC) – Describes a story involving the interaction of people and the things they are manipulating or using.

• System(SUC):– Describes a story of an interaction between an

actor (could be a person or a machine) and the system being constructed.

– System use cases are the result of a desire to automate parts of business use case.

• Candidate System Use Case(CSUC):– An allocation of a BUC step to a SUC.

7P.R.CP.R.C

Rose-ReqPro Association• Associate package to project.• Disassociate package from Project.

8P.R.CP.R.C

Use Case–ReqPro Association• New – Create item in ReqPro. • Associate – Link to ReqPro item.• Open – Display associated ReqPro item.• Disassociate – Unlink from associated ReqPro item.

9P.R.CP.R.C

Use Case-ReqPro Commands

• Requirement Properties → New - Creates an associated ReqPro requirement of the appropriate type (SUC or BUC).

• Use Case Document → New – Creates a use case specification of the appropriate type (SUC or BUC) and creates an associated ReqPro requirement.

• Requirement Properties → Associate – Links the use case to a ReqPro requirement.

• Use Case Document → Associate - Links the use case to a ReqPro to a Specification.

• View RequisitePro Association – Shows you which project this use case is linked to.

10P.R.CP.R.C

Traceability Tree• Shows how Stakeholder Requests are realized by

Business Use Cases.

11P.R.CP.R.C

Activity Diagrams

• Describe the steps in a use case, as activities connected by transitions.

• Show alternate flows, as transitions leaving decision boxes.• Show parallel activities with synchronization bars.• Indicate the preconditions to the use case, as a start state.• Indicate postconditions of the use case, as end states.• Show who performs the business activities, and what systems

they are allocated to by placing activities in swimlanes.• (Optionally) Defines objects that are produced and consumed

by activities.

12P.R.CP.R.C

BUC Diagram

Library WorkerReturn BookPatron

Patron Library WorkerBorrow Books

13P.R.CP.R.C

A BUC Activity DiagramPatron Has Book

BUCS21.Requesting Customer Details

Patron Returns Book

BUCS23.Changing Patron Record

BUCS25.Filing Customer Record

BUCS26.Informing Patron That Book Is Checked-In

Book Checked-In

Book Status?

Details Returned

[ Checked-Out To Patron ]BUCS22.Finding Who Book Is

Checked To

[ Not Checked-Out To Patron ]

BUCS24.Changing Check-Out Details

Book Check-Out Details Returned

Return Book Activity Diagram

Record Filed Patron Informed

Record Updated

14P.R.CP.R.C

A System Use Case Diagram

Patron Service RepDisplay Customer Details

Patron Service Rep Update Customer Information

Patron Service Rep

Patron Service RepDelete Customer Records

Patron System

Patron SystemCreate Record For New Customer

15P.R.CP.R.C

What Is The Connection?

• Steps in a BUC must be realized by a SUC, otherwise they are manual activities.

• The SUC automates steps in a BUC in an order to reduce:– manual effort.– the risk of making mistakes.– duplication of work.– other factors (cost, speed, etc).

16P.R.CP.R.C

Swimlanes In Business Activity Diagrams

• Swimlanes allow the activities in the BUC to be allocated to actors.

• Actors may be people or systems.• Add a swimlane for each actor, worker

and potential system that will perform and activity.

• Place the activity in its appropriate swimlane.

17P.R.CP.R.C

Swimlane ExamplePatron Has Book

Book Checked-In

Book

Optional, add objects if it helps to clarif y the diagram.

Requesting Customer Details

<<Automate>>

Patron Returns Book

Book Status

Details Returned

Changing Check-Out Details

<<Automate>>

Filing Customer Record

<<Automate>>

Finding Who Book Is Checked To

<<Automate>>

[ Not Checked-Out To Customer ]

Book Check-Out Details ReturnedChanging Patron Record

<<Automate>>

[ Checked-Out To Customer ]

Record Updated

Record Updated

Inf orming Patron Book Checked-In

<<Manual>>

Automated by the Patron Sy stem

Not automated, the librarian continues to perf orm this activ ity .

Record Filed Patron Inf ormed

: Librarian : Patron System : Patron

18P.R.CP.R.C

Linking BUCs And SUCs

• Create a requirement specification in ReqPro for the BUC.

• Create a requirement in ReqPro for the SUC.• Open the properties window for the SUC and

add a Trace From BUC link.OR• Open the properties window for the BUC and

add Trace To SUC link.• A BUC will have many SUC links. A SUC may

have many BUC links.

19P.R.CP.R.C

Create Requirements For Steps

• Each activity in the BUC has an equivalent step in the BUC specification.

• Each step in the BUC specification is associated with an equivalent requirement in the ReqPro BUC package.

• Each activity is labeled with the identifier given by ReqPro to the equivalent requirement.

20P.R.CP.R.C

ReqPro BUC Steps

21P.R.CP.R.C

Activity Diagram With Identifiers

Patron Has Book

Book Checked-In

Book : Book

Customer Record : Patron Info

Customer Id : Patron Info

Customer Record : Patron Info

BUCS1.Requesting Patron Details

Patron Returns Book

Book Status?

BUCS4.Changing Customer Record

[ Checked-Out To Patron ]

Return Book BUC w ith sw imlanes

Customer Id : Patron Info

BUCS5.Informing Patron That Book Is Checked-In

BUCS3: Checking Status

Details Returned

BUCS9.Changing Check-Out Details

Customer Record : Patron Info

BUCS6.Filing Customer Record

BUCS8.Finding Who Book Is Checked To

[ Not Checked-Out To Patron ]

Customer Record : Patron Info

BUCS2: Retrieving Customer Details

: Library Database

Record FiledPatron Informed

Record Updated

Book Check-Out Details Returned

: Library Worker : Desk Attendant : Patron

22P.R.CP.R.C

Traceability Report Between BUC Steps and BUC activities

23P.R.CP.R.C

Candidate System Use Cases

• Are how we get from BUCs to SUCs in Rational Rose.

• In the Candidate System Use Case Package, a CSUC exists for each activity in the BUC activity diagram.

• The CSUC is given the same name as the activity (including identifier).

• The CSUC is not linked to the BUC Activity, so we use a SoDA report to check consistency.

• Using the trace to link in the CSUC requirement, the CSUC is linked to the actual SUCs.)

24P.R.CP.R.C

Business Allocation Diagram

• Shows activities allocated to candidate systems

Patron Has Book

Book Checked-In

Book : Book

Optional, add objects if it helps to clarif y the diagram.

BUCS1.Requesting Patron Details

<<Automate>>

Patron Returns Book

Book Status?

Details Returned

BUCS9.Changing Check-Out Details

<<Automate>>

BUCS6.Filing Customer Record

<<Automate>>

BUCS8.Finding Who Book Is Checked To

<<Automate>>

Book Check-Out Details ReturnedBUCS4.Changing Customer Record

<<Automate>>

Return Book BUC with swimlanes

BUCS5.Informing Patron That Book Is Checked-In

<<Manual>>

Automated by the Patron System

Not automated, the librarian continues to perf orm this activ ity .

Record Filed

Record Updated

Patron Inf ormed

[ Not Checked-Out To Patron ]

[ Checked-Out To Patron ]

: LibrarianPatron System : Patron

25P.R.CP.R.C

CSUC Diagram• Shows CSUCs Traced to the BUC

BUCS2.Requesting Patron Details

BUCS9.Changing Check-Out Details

BUCS8.Finding Who Book Is Checked Out To

BUCS4.Changing Customer Record

BUCS6.Filing Customer Record

Return Book

26P.R.CP.R.C

SoDA Report Of Rose Traceability

Return Book :BUCS1.Requesting Patron Details => BUCS1.Requesting Patron

DetailsTraceability to Return Book found.BUCS4.Changing Customer Record => BUCS4.Changing

Customer Record Traceability to Return Book found.BUCS6.Filing Customer Record => CS6.Filing Customer Record Traceability to Return Book found.BUCS8.Finding Who Book Is Checked To => No Candidate

System Use Case found.BUCS9.Changing Check-Out Details => BUCS9.Changing Check-

Out Details No traceability link found.

27P.R.CP.R.C

CSUC Diagram IIShows CSUCs Traced to SUCs

Get Cutomers Record Update Customer InformationSearch All Cards

BUCS2.Requesting Patron Details

BUCS9.Changing Check-Out Details

BUCS8.Finding Who Book Is Checked Out To

Return Book

BUCS4.Changing Customer Record

BUCS6.Filing Customer Record

Update Customer Information

28P.R.CP.R.C

BUC To SUC Traceability

• Enter the traceability links into ReqPro

29P.R.CP.R.C

Traceability TreeTraceability tree showing how Stakeholder

Requests are realized by System Use Cases.

30P.R.CP.R.C

Summary

• STRs manually entered into ReqPro, or through the Vision document.• BUCs entered into Rose and attached to BUC requirements in ReqPro.• BUC specifications attached to BUC requirements in ReqPro.• BUC requirements traced from STRs in ReqPro.• BUC activities attached to BUC in Rose activity diagram.• BUC Activities traced to BUC specification using a SoDA report.• BUC activities allocated to systems in Rose BAD.• BUC traced to CSUCs using a Rose traceability diagram.• BUC activities traced to CSUCs using a SoDA report.• CSUCs traced to SUCs in Rose traceability diagram.• SUCs attached to SUC requirements in ReqPro.• SUCs trace to BUCs in ReqPro.

31P.R.CP.R.C

Traceability Overview

Activity

Made Consistent With

Made Consistent With

: Candidiate System Use Case

: business_vision

Is Contained In

: stakeholder_request

Traces From

: business_use_case_specification

: business_use_case_step

Business Use Case : requirement_types

Attached

System Use Case : requirement_types

: system_use_case_specification

Attached

Traces To

Contains

: business_use_case

Attached

Activity

: Candidiate System Use Case

Is Contained In

Traces From

: system_use_case

Traces FromAttached

RoseRequisiteProSoDA