16
© M.E. Fayad 2000-2006 SJSU -- CmpE Software System Engineering Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College of Engineering San José State University One Washington Square San José, CA 95192-0180 http://www.engr.sjsu.edu/~fayad

Software System Engineering

Embed Size (px)

DESCRIPTION

Software System Engineering. Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College of Engineering San José State University One Washington Square San José, CA 95192-0180 http://www.engr.sjsu.edu/~fayad. Lesson 3-6c: Interaction Diagrams. 2. Lesson Objectives. - PowerPoint PPT Presentation

Citation preview

Page 1: Software System Engineering

© M.E. Fayad 2000-2006 SJSU -- CmpE

Software System Engineering

Dr. M.E. Fayad, Professor

Computer Engineering Department, Room #283I

College of Engineering

San José State University

One Washington Square

San José, CA 95192-0180

http://www.engr.sjsu.edu/~fayad

Page 2: Software System Engineering

© M.E. Fayad 2000-2006 SJSU – CmpE M.E. Fayad L3-6c-S2 Interaction Diagrams

2

Lesson 3-6c:Interaction Diagrams

Page 3: Software System Engineering

© M.E. Fayad 2000-2006 SJSU – CmpE M.E. Fayad L3-6c-S3 Interaction Diagrams

Lesson Objectives

Objectives

3

Understand how to create interaction diagrams Learn the syntax of interaction diagrams Explore interaction diagrams’ examples

Page 4: Software System Engineering

© M.E. Fayad 2000-2006 SJSU – CmpE M.E. Fayad L3-6c-S4 Interaction Diagrams

An interaction diagram shows an interaction,

consisting of a set of objects and their

relationships, including the messages that

may be dispatched among them

– Sequence diagram

– Collaboration diagram

4

Interaction Diagrams (1)

Page 5: Software System Engineering

© M.E. Fayad 2000-2006 SJSU – CmpE M.E. Fayad L3-6c-S5 Interaction Diagrams

A sequence diagram emphasizes the time

ordering of messages

A collaboration diagram emphasizes the

structural organization of the objects that

send and receive messages

5

Interaction Diagrams (2)

Page 6: Software System Engineering

© M.E. Fayad 2000-2006 SJSU – CmpE M.E. Fayad L3-6c-S6 Interaction Diagrams

To visualize, specify, construct, and

document the dynamics of a particular

society of objects

To model one particular flow of control

of a use case

6

Uses of Interaction Diagrams

Page 7: Software System Engineering

© M.E. Fayad 2000-2006 SJSU – CmpE M.E. Fayad L3-6c-S7 Interaction Diagrams

ObjectsLinksMessagesNotesConstraints

7

Contents of Interaction Diagrams

Page 8: Software System Engineering

© M.E. Fayad 2000-2006 SJSU – CmpE M.E. Fayad L3-6c-S8 Interaction Diagrams

Place objects that participate in the

interaction as the vertices in a graph

Render the links that connect these

objects as the arcs of this graph

Adorn these links with the messages

that objects send and receive 8

Drawing Collaboration Diagrams

Page 9: Software System Engineering

© M.E. Fayad 2000-2006 SJSU – CmpE M.E. Fayad L3-6c-S9 Interaction Diagrams

Use sequence diagrams to model flows of control by time ordering

– Do a better job of visualizing simple iteration and branching

Use collaboration diagrams to model flows of control by organization

– Do a better job of visualizing complex iteration and branching and of visualizing multiple concurrent flows of control 9

Common Uses

Page 10: Software System Engineering

© M.E. Fayad 2000-2006 SJSU – CmpE M.E. Fayad L3-6c-S10 Interaction Diagrams

A collaboration diagram displays

object interactions organized

around objects and their links to

one another

10

Interaction Diagrams (1)

Page 11: Software System Engineering

© M.E. Fayad 2000-2006 SJSU – CmpE M.E. Fayad L3-6c-S11 Interaction Diagrams

Don’t show the lifeline of an object explicitly

– Although one can show both create and

destroy messages

Don’t show the focus of control explicitly

– Although each message’s sequence

number can indicate nesting

11

Interaction Diagrams (2)

Page 12: Software System Engineering

© M.E. Fayad 2000-2006 SJSU – CmpE M.E. Fayad L3-6c-S12 Interaction Diagrams

Two features that distinguish them

from sequence diagrams

– Path

• To indicate how one object is linked to another

– Sequence number

• To indicate the time order of a message

12

Interaction Diagrams (3)

Page 13: Software System Engineering

© M.E. Fayad 2000-2006 SJSU – CmpE M.E. Fayad L3-6c-S13 Interaction Diagrams

13

Interaction Diagram: Example (1)

Page 14: Software System Engineering

© M.E. Fayad 2000-2006 SJSU – CmpE M.E. Fayad L3-6c-S14 Interaction Diagrams

14

Interaction Diagram: Example (2)

Page 15: Software System Engineering

© M.E. Fayad 2000-2006 SJSU – CmpE M.E. Fayad L3-6c-S15 Interaction Diagrams

15

Interaction Diagram: Example (3)

Page 16: Software System Engineering

© M.E. Fayad 2000-2006 SJSU – CmpE M.E. Fayad L3-6c-S16 Interaction Diagrams

T/F

a. Use collaboration diagrams to model flows of control by organization

b. A collaboration diagram displays object interactions organized around objects and their links to one another

16

Discussion Questions