csci928 software engineering requirements & specifications modeling system interactions tri a....

23
CSCI928 Software Engineering Requirements & Specifications Modeling System Interactions Tri A. Kurniawan, M.Eng. Ph.D Candidate [email protected]

Post on 21-Dec-2015

218 views

Category:

Documents


0 download

TRANSCRIPT

CSCI928Software Engineering Requirements &

Specifications

Modeling System Interactions

Tri A. Kurniawan, M.Eng.

Ph.D Candidate

[email protected]

CSCI928 Modeling System Interactions 2/23

Agenda

▶ Introduction

▶ Early-phase of Requirements Engineering

▶ Late-phase of Requirements Engineering

▶ Deriving Use Case from Organizational Modeling

CSCI928 Modeling System Interactions 3/23

Goal and Phases

▶ Goal capturing system functional requirements represented in a certain software modeling language (e.g. UML : UC diagram, sequence diagram, statechart diagram, etc.)

▶ Requirement engineering phases : Early-phase : problem domain understanding

(organizational modeling e.g. i*, business process modeling e.g. BPMN) less attention

Late-phase : produce a deliverable requirements document including software modeling e.g. UML

CSCI928 Modeling System Interactions 4/23

Agenda

▶ Introduction

▶ Early-phase of Requirements Engineering

▶ Late-phase of Requirements Engineering

▶ Deriving Use Case from Organizational Modeling

CSCI928 Modeling System Interactions 5/23

i* : Strategic Dependency Model - SD

[Meeting scheduler : Victor F. A. S. and Jaelson F. B. C.]

CSCI928 Modeling System Interactions 6/23

i* : Rationale Dependency Model - RD

[Meeting scheduler : Victor F. A. S. and Jaelson F. B. C.]

CSCI928 Modeling System Interactions 7/23

BPMN Process Modeling

▶ R1, R2, R3, R4, R5 for Sales Staff, Workshop Staff, Sales Manager, Workshop Manager, and General Manager respectively

CSCI928 Modeling System Interactions 8/23

Process Abstraction

▶ Process for reducing the undesired details from the base model in order to retain only information relevant for a particular task

▶ Example : abstraction for R3 – Sales Manager

CSCI928 Modeling System Interactions 9/23

Agenda

▶ Introduction

▶ Early-phase of Requirements Engineering

▶ Late-phase of Requirements Engineering

▶ Deriving Use Case from Organizational Modeling

CSCI928 Modeling System Interactions 10/23

UML Modeling

▶ Unified Modeling Language (UML) is a standardized general-purpose modeling language in the field of software engineering

▶ Most useful interaction diagrams : use case diagram, sequence diagram

CSCI928 Modeling System Interactions 11/23

Use Case Diagram▶ The main purpose to help development teams

visualize the functional requirements of a system, including the relationship of "actors" to essential processes, as well as the relationships among different use cases

▶ Elements : actor, use case, relationship▶ Actor : anything that needs to interact with the system

(person, role, another system)▶ Use case : a sequence of related actions performed by

an actor and the system via a dialogue▶ Relationships : actor (generalization), use case

(generalization, extend, include)

CSCI928 Modeling System Interactions 12/23

UC Diagram Example

CSCI928 Modeling System Interactions 13/23

UC Relationships

Actor Relationship Use Case Relationships

CSCI928 Modeling System Interactions 14/23

Use Case Scenario

▶ Describe what the system must provide to the actor when the use case is executed

▶ Typical contents : Name and brief description Pre-condition and post-condition Normal flow Alternate flow Special requirements

CSCI928 Modeling System Interactions 15/23

Sequence Diagram

▶ It shows how processes operate with one another and in what order

▶ Sequence diagrams show step-by-step what’s involved in a use case

▶ You may need several sequence diagrams to describe a single use case each sequence diagram describes one possible scenario for the use case

▶ Elements : object, stimulus (message)

CSCI928 Modeling System Interactions 16/23

Sequence Diagram Example

CSCI928 Modeling System Interactions 17/23

Agenda

▶ Introduction

▶ Early-phase of Requirements Engineering

▶ Late-phase of Requirements Engineering

▶ Deriving Use Case from Organizational Modeling

CSCI928 Modeling System Interactions 18/23

Steps

Goal-Oriented Analysis

1. Discovering actors2. Discovering use case for the actors

3. Discovering and describing

scenarios of use case

Strategic Dependency (SD) models developed

through i* framework

Strategic Rationale (SR) models

developed through i* framework

Use case diagrams and textual

description of scenarios

[Meeting scheduler : Victor F. A. S. and Jaelson F. B. C.]

CSCI928 Modeling System Interactions 19/23

Guidelines▶ Step 1:

Every actor in i* UC actor IS-A actor in i* UC actor generalization Actor in i* UC external actor

▶ Step 2: All of actor’s (dependee) dependencies (goals, tasks,

softgoal, resources) relating use case▶ Step 3:

Analyze each actor and its relationships in the SR model to extract information that can lead to the description of the UC scenario for the actor

CSCI928 Modeling System Interactions 20/23

Example : SD

[Meeting scheduler : Victor F. A. S. and Jaelson F. B. C.]

CSCI928 Modeling System Interactions 21/23

Example : SR

[Meeting scheduler : Victor F. A. S. and Jaelson F. B. C.]

CSCI928 Modeling System Interactions 22/23

Example : Result

[Meeting scheduler : Victor F. A. S. and Jaelson F. B. C.]

CSCI928 Modeling System Interactions 23/23

Exercise

[Meeting scheduler : Eric S.K.Y.]