itec 370 lecture 10 design. review design –why is it part of the process? –who is the audience...

18
ITEC 370 Lecture 10 Design

Upload: kerry-mcgee

Post on 12-Jan-2016

213 views

Category:

Documents


1 download

TRANSCRIPT

ITEC 370

Lecture 10Design

Design

Review

• Design–Why is it part of the process?–Who is the audience for design?

Design

Objectives

• Friday– Rough draft of your SRS document– Introduction, Features (Functional / Non-

functional), Interfaces– Prepare for presenting the next week

• UML!– Look at the pretty pictures…

Design

UML

• 2 major parts– Structure– Behavior

Design

Structure

Design

Types of Structure

• Class• Component• Composite• Deployment• Object• Package

Design

Class Diagram

• Members– Visibility (+ for public, - for private)

• Methods– Parameters/types

• Relationships– Association (Line with X..*)– Aggregation (Diamond + line)

• Inheritance (Arrow to parent)

wikipedia

Design

Component

• What depends on what• Interfaces that certain components

provide(higher level abstraction than a class)– VR example

• Doesn’t list parameters • Shows the flow of how different

components work together

Design

Composite

• Opposite of component• Need a detailed graphical layout of

how a class / function interacts?• Parts that are used at runtime• Ports that shuttle ports around

wikipedia

Design

Deployment

• What servers are there• How are they connected at a high

level• Nodes– Device node– Execution Environment Node

Design

Object

• Focuses on a class– Shows the attributes of a class– Also shows links between classes

• More formalized example code for setting up an object / associations / aggregations

wikipedia

Design

Packages

• Another higher level what depends on what tool

• Goes from what jar file depends on another, to servers / software, to use cases

• Use if you need to see how high level components fit together

Design

Behavior

• Once you have the pieces described, how do they act together

• Types– Activity– State machine– Use cases

• Interaction has its own parts

Design

Activity

• Workflow describer• Starting point, arrows to next

activities• Symbols– Rectangle = activity– Diamond = decision– Bars for parallel activities– Circle to start, double circle to end (filled

in)

Design

State machine

• More descriptive than a workflow– Input– Boolean conditions

• Example– Logged in– Not logged in

• Precondition / Postcondition

Design

Use cases

• Stick figures showing how system is used…

Design

Interaction

• By now, you’ve seen that UML can be extremely excessive

• Graphical representation for the whole spectrum

• Interaction diagrams show how classes / parts of the system interact– TCP/IP protocol

Design

Review

• UML is a great way to communicate information

• What information to communicate is the question

• Don’t diagram for the sake of diagramming