23
Introduction to Object- Oriented Analysis and Design using the UML Lab 2 Software Engineering By Nouran Radwan

LAB2

Embed Size (px)

Citation preview

Page 1: LAB2

Introduction to Object-

Oriented Analysis and

Design using the UML

Lab 2

Software Engineering

By Nouran Radwan

Page 2: LAB2

Functional Requirements

Detailed in the Use Case Model and in the

System Features list. They are specified in

detail in Operation Contracts where

necessary.

Non-functional requirements

Often called the “-ilities” of a system; quality, reliability, usability, performance, etc.

Note

Page 3: LAB2

Use-Case Model

3

Page 4: LAB2

Use Cases are not Diagrams

Use Cases may have a diagram associated

with them, and a use case diagram is an

easy way for an analyst to discuss a

process.

But use cases are primarily text. The text

is important.

Capture the specific ways of using the

system as dialogues between an actor and

the system.

4

Page 5: LAB2

Diagramming Use Cases

The text is the Use Case!

Diagrams may supplement or help the

text.

5

Page 6: LAB2

Overview

A use case diagram identifies transactions between

actors and a system as individual use cases.

6

Page 7: LAB2

Actor

An actor is a user of a

system.

Actors can be users or

other systems.

Many users can be one

actor, in a common role.

An actor is labeled with

the name of the role.

7

Page 8: LAB2

Non-human Actor

Actors can be users,

processes, and other

systems.

Show non human actors

in a different manner,

usually as a rectangle.

Non human actors are

usually not primary

users, and thus are

usually shown on the

right, not the left.

8

Inventory

System

Page 9: LAB2

Use Case

A use case is a coherent unit of externally

visible functionality provided by a system and

expressed by a sequence of messages.

Additional behavior can be shown with parent-

child, extend and include use cases.

It is labeled with a verb name that the user can

understand.

9

Page 10: LAB2

System A system is shown as a

rectangle, labeled with

the system name.

Actors are outside the

system.

Use cases are inside the

system.

The rectangle shows the

scope or boundary of

the system.

10

Page 11: LAB2

Relationships in Use Cases

There are several Use

Case relationships:

Association

Extend

Generalization

Uses

Include

11

Most Use Cases have only associations.

Use other relationships sparingly.

Page 12: LAB2

Association Relationship

An association is the

communication path between

an actor and the use case

that it participates in.

It is shown as a solid line.

It does not have an arrow,

and is normally read from left

to right.

Here, the association is

between a Modeler and the

Create Model use case.

12

Page 13: LAB2

Include Relationship

Include relationships

insert additional

behavior into a base

use case.

They are shown as a

dotted line with an

open arrow and the

key word

<<include>>.

13

Page 14: LAB2
Page 15: LAB2

Extend Relationship

Extend puts additional

behavior in a use case

that does not know

about it.

It is shown as a dotted

line with an arrow

point and labeled

<<extend>>

In this case, a

customer can request

a catalog when placing

an order. 15

Page 16: LAB2

Use Case Generalization

Generalization is a

relationship between

a general use case

and a more specific

use case that inherits

and extends features

to it.

It is shown as a solid

line with a closed

arrow point.

16

registration

Under-

graduate

registration

Graduate

registration

Page 17: LAB2
Page 18: LAB2

Uses Relationship

When a use case uses

another process, the

relationship can be

shown with the uses

relationship.

This is shown as a solid

line with a closed

arrow point and the

<<uses>> keyword.

18

Page 19: LAB2

Use Case Example 1

Page 20: LAB2

Use Case Altered State University

Page 21: LAB2

Use Case Template

Page 22: LAB2

Assignment

Use Case Template and Diagram

Page 23: LAB2

Reference

Applying UML and Patterns: An

Introduction to Object-Oriented Analysis

and Design and Iterative Development

[Craig Larman]