20
Previous Lectures Information flows Specification and Documentation Techniques: Graphical Notations (2) CS/SE 3RA3 Ryszard Janicki Department of Computing and Software, McMaster University, Hamilton, Ontario, Canada Ryszard Janicki Graphical Notations (2) 1/20

Speci cation and Documentation Techniques: Graphical

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Speci cation and Documentation Techniques: Graphical

Previous LecturesInformation flows

Specification and Documentation Techniques:Graphical Notations (2)

CS/SE 3RA3

Ryszard Janicki

Department of Computing and Software, McMaster University, Hamilton,Ontario, Canada

Ryszard Janicki Graphical Notations (2) 1/20

Page 2: Speci cation and Documentation Techniques: Graphical

Previous LecturesInformation flows

Last lecture

Entity-relationship diagramsEE--R DiagramsR Diagrams

Rectangles represent entity sets.ec a g es ep ese e y se s

Diamonds represent relationship sets.

Lines link attributes to entity sets and entity sets to relationship sets.

Ellipses represent attributes

Double ellipses represent multivalued attributes.

Dashed ellipses denote derived attributes Dashed ellipses denote derived attributes.

Underline indicates primary key attributes

Ryszard Janicki Graphical Notations (2) 2/20

Page 3: Speci cation and Documentation Techniques: Graphical

Previous LecturesInformation flows

Last lecture

UML version

Entity-relationship diagram: example

I it ti M tiInvitesinvitedTo

entitybinary relationshiprolespecialization

Participant 1..* 0..*Invitation Meeting

DateLocation Name

Address

InvitesinvitedTo

constraintsFor constraintsFrom 1 *

attribute

Constraints

Address Email

excludedDatesf dD tI t t

Requesting

dateRangewithWhom

1..*

Initiator1..1

preferredDatesImportantParticipant

Preferences Email

NormalParticipant

withWhom

attributes ofrelationship

A meeting invites at least 1 up toan arbitrary number of participants

Ryszard Janicki Graphical Notations (2) 3/20

Page 4: Speci cation and Documentation Techniques: Graphical

Previous LecturesInformation flows

Context diagramsDataflow diagramsContext diagrams vs Dataflow diagramsDataflows vs Entity-relationship diagrams

Context model and context diagrams

The context model is a simple representation of functionality

It shows the flows of data entering and leaving the work (i.e.main function of the product) area

Each flow triggers some functionality or is the product ofsome functionality

The context model is represented by a context diagram,which is a simplified dataflow

Context diagrams are just level zero dataflows

Ryszard Janicki Graphical Notations (2) 4/20

Page 5: Speci cation and Documentation Techniques: Graphical

Context diagrams - deicing system

Page 6: Speci cation and Documentation Techniques: Graphical

Previous LecturesInformation flows

Context diagramsDataflow diagramsContext diagrams vs Dataflow diagramsDataflows vs Entity-relationship diagrams

Context diagrams - chemical tracking system

Ryszard Janicki Graphical Notations (2) 6/20

Page 7: Speci cation and Documentation Techniques: Graphical

Example (Elevator: Context Diagram)

Q4(6+6=12)

Context Diagram

13

Page 8: Speci cation and Documentation Techniques: Graphical

Previous LecturesInformation flows

Context diagramsDataflow diagramsContext diagrams vs Dataflow diagramsDataflows vs Entity-relationship diagrams

Information flows: dataflow diagrams

Capture system operations linked by data dependencies

Operation / process = data transformation activity

Input, output links = data flows

- operation needs data flowing in to produce data flowing out(6= control flow !)

Data transformation rule to be specified

- in annotation (structured natural language)- or in another dataflow diagram (operation refinement -

hierarchical structure, modularity)

System components, data repositories = origins, ends of flow

Consistency/completeness rules checkable by tools

Ryszard Janicki Graphical Notations (2) 8/20

Page 9: Speci cation and Documentation Techniques: Graphical

Previous LecturesInformation flows

Context diagramsDataflow diagramsContext diagrams vs Dataflow diagramsDataflows vs Entity-relationship diagrams

Dataflow diagrams

Dataflow diagrams model information and data flows amongprocesses

Black-box processes / operations → circles (bubbles)

Components / terminators / external entities / adjacentsystems → boxes or other shapes

Data stores / depository → horizontal lines or other shapes

Data / material / information flows → arrows

Dataflows have hierarchical structure → each black box (i.e.circle/bubble) can be expanded

Ryszard Janicki Graphical Notations (2) 9/20

Page 10: Speci cation and Documentation Techniques: Graphical

Dataflow diagrams: chemical tracking system

Page 11: Speci cation and Documentation Techniques: Graphical

Previous LecturesInformation flows

Context diagramsDataflow diagramsContext diagrams vs Dataflow diagramsDataflows vs Entity-relationship diagrams

Dataflow diagrams: meeting schedule

Dataflow diagram: example

copyOf

input data flow output data

flowInitiator

copyOfconstraintsRequestmeeting

Request

Participant

ti

invalidRequest

flow

AskConstraints

t i tR tmeeting

C t i tC ll t M Determine

meetingNotificationCheck

Request

RequestvalidRequest operation

constraintRequest Constraints

individualC t i t

CollectConstraints

Participant

MergeConstraints

DetermineSchedule

Constraints participantConstraints

data repositorysystem component

Ryszard Janicki Graphical Notations (2) 11/20

Page 12: Speci cation and Documentation Techniques: Graphical

Dataflow diagrams: university

Page 13: Speci cation and Documentation Techniques: Graphical

Dataflow diagrams: bank

Page 14: Speci cation and Documentation Techniques: Graphical

Dataflow diagrams: filling orders

Page 15: Speci cation and Documentation Techniques: Graphical

Example (Elevator: Data Flow)

Data-Flow Diagram

14

Page 16: Speci cation and Documentation Techniques: Graphical

Previous LecturesInformation flows

Context diagramsDataflow diagramsContext diagrams vs Dataflow diagramsDataflows vs Entity-relationship diagrams

Some rules (may not always be followed)Always start with context diagramProcesses communicate through system components and datastores, not by direct flows from one process to another (thisrule is not always followed, see ‘Meeting Schedule’).Similarly, data cannot flow directly from on store/componentto another; it must pass through a process bubble (this rule isalways followed).Do not attempt to imply the processing sequence usingthe dataflow diagrams.Name each process as a concise action: verb + object(generate inventory reports).Number the processes uniquely and hierarchically, for instancenext level for 3 should be 3.1, 3.2 and so on.No more that 8-10 processes on a single diagram.Avoid bubbles with only inputs and only outputs.

Ryszard Janicki Graphical Notations (2) 16/20

Page 17: Speci cation and Documentation Techniques: Graphical

Contex diagrams as simplified dataflow diagrams: one“bubble”

Page 18: Speci cation and Documentation Techniques: Graphical

Previous LecturesInformation flows

Context diagramsDataflow diagramsContext diagrams vs Dataflow diagramsDataflows vs Entity-relationship diagrams

From context diagrams to dataflow diagrams: ChemicalTracking System

Ryszard Janicki Graphical Notations (2) 18/20

Page 19: Speci cation and Documentation Techniques: Graphical

Previous LecturesInformation flows

Context diagramsDataflow diagramsContext diagrams vs Dataflow diagramsDataflows vs Entity-relationship diagrams

From context diagrams to dataflow diagrams: FillingOrders

Ryszard Janicki Graphical Notations (2) 19/20

Page 20: Speci cation and Documentation Techniques: Graphical

Previous LecturesInformation flows

Context diagramsDataflow diagramsContext diagrams vs Dataflow diagramsDataflows vs Entity-relationship diagrams

Relationship between Dataflows and ER diagramsEntities often correspond to data depositories of dataflows

Ryszard Janicki Graphical Notations (2) 20/20