Top Banner
CS48704-1/31 Illinois Institute of Technology CS487 Software Engineering Analysis Modeling Instructor David Lash
31

Illinois Institute of Technology

Jan 24, 2016

Download

Documents

kizzy

Illinois Institute of Technology. CS487 Software Engineering Analysis Modeling Instructor David Lash. Illinois Institute of Technology. This level of modeling is the very highest level. The basic input-processing-output template. Modeling. High-Level Modeling Tools. System Modeling - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Illinois Institute of Technology

CS48704-1/31

Illinois Institute of Technology

CS487

Software Engineering

Analysis Modeling

Instructor David Lash

Page 2: Illinois Institute of Technology

CS48704-2/31

Illinois Institute of Technology

This level of modeling is the very highest level. The basic

input-processing-output template.

Page 3: Illinois Institute of Technology

CS48704-3/31

Modeling

ModelingGather Data

Build Model?

Management

MoreInfo

Acquired Data

ReviewSpecification

Refine Model

Approved

Analysis

Refined Spec

Refined Spec

Page 4: Illinois Institute of Technology

CS48704-4/31

High-Level Modeling Tools System Modeling

– System Context Diagram– Partitioning

Data Modeling – Entity-Relation - Data objects and their

relationships Information flow diagrams

– Data flow diagrams - how data transforms in system- how functions transform data

Control Specifications– State diagrams - how system behaves

as result of external events .

Page 5: Illinois Institute of Technology

CS48704-5/31

System Context Diagrams

Basic Version Of Diagram would be

Input -> Processing -> Output

Extend to include

User Interface, Input, System Functions and control, output and maintenance

Format for creating hierarchy of detail

Enable to define boundaries between the “software” and the operating (external) environment.

Page 6: Illinois Institute of Technology

CS48704-6/31

System Context Diagram

User Interface Procssing

InputProcessing

OutputProcessing

Maintenance& Self-test

Process andcontrol

Functions

Each non-yellow box is an external entity to system.

Page 7: Illinois Institute of Technology

CS48704-7/31

System Context Diagrams

Consider Conveyor Line Sorting System

– CLSS developed such that boxes moving along a conveyor belt will be Identified and sorting into 1 of 6 bins at the end of the line.

– Boxes pass a sorting stations where they are identifies

– Based on ID number of the side, the boxes are shunted into the correct bin

– Boxes pass in random order and evenly spaced. The line moves slowly.

Page 8: Illinois Institute of Technology

CS48704-8/31

System Context Diagrams - CLSS Consider Conveyor Line Sorting System - II

– Has a PC sorting stn site. Boxes moving along conveyor belt identified and stored into 1 of 6 boxes at end of line. Boxes have bar code on side.

– PC execs software, interacts with bar code rdr and conveyor line monitoring equipment (to get speed of line)

– stores parts numbers sorted and interacts with operator

– sends signals to shunting hardware

– sends out reports and communicates with server in factory floor. (pg 265)

Page 9: Illinois Institute of Technology

CS48704-9/31

SortingStation

Operator

Bar CodeRdr

ConveryorLine

ConveyorLine

SortingSystem

SortingStation

Operator

SortingMechanism

Server

Request

Queries

Barcode

Line spd

shuntcmds

DiagData

Reports

User Interface

OuputMaintenanceInput

Initial System Context Diagram

Page 10: Illinois Institute of Technology

CS48704-10/31

Refine Into a System Flow Diagram

Page 265 shows refined diagram– Look at important lines of data and

control flow.– Might be the top level of a series of

SFDs that are later developed (See page 266.

Page 11: Illinois Institute of Technology

CS48704-11/31

High-Level Modeling Tools System Modeling

– System Context Diagram– Partitioning

Data Modeling – Entity-Relation - Data objects and their

relationships Information flow diagrams

– Data flow diagrams - how data transforms in system- how functions transform data

Control Specifications– State diagrams - how system behaves

as result of external events .

Page 12: Illinois Institute of Technology

CS48704-12/31

Partitioning

A straightforward way to break-down a complex system (divide and conquer)

– decompose system into parts

create a hierarchical representation of function/information by

– More detail by moving vertically

– functional decomposition horizontally

Page 13: Illinois Institute of Technology

CS48704-13/31

Partitioning - Home Safe

Specification From Requirements gathering (interview)

– HS monitors sensors, interacts with owner via keypad (via control pad)

– Control pad can be program and config system

– Master passwd is programmed for arming and alarming system. Phone numbers are input for dialing out for help.

– When sensor event, alarm then after T time, dial phone number and downloads event info (sensor, time, type of event). Repeat every 20 seconds

Page 14: Illinois Institute of Technology

CS48704-14/31

Partitioning - Example

SafeHomeSoftware

Configure System Monitor SensorsInteract With

Users

Hoizontal parition --------------->(Functioal decomposito of

problem)

Vertical parition(Add more detail)

Page 15: Illinois Institute of Technology

CS48704-15/31

Partitioning - continue example

Page 16: Illinois Institute of Technology

CS48704-16/31

High-Level Modeling Tools System Modeling

– System Context Diagram– Partitioning

Data Modeling - (See page 301 diag)– Entity-Relation - Data objects and their

relationships Information flow diagrams

– Data flow diagrams - how data transforms in system- how functions transform data

Control Specifications– State diagrams - how system behaves

as result of external events .

Page 17: Illinois Institute of Technology

CS48704-17/31

Data Modeling

DM answers questions like: – What are data objects in the system– What are the Data Objects made of– How are they related

One common method is the ERD - Has the following pieces:

– Data Object: representation of something with attributes E.g., Width (1 property) VS dimension (HGt, width)

– Relationship: The nature of the connection between data Objects..

– Attributes: properties that describe the object

Page 18: Illinois Institute of Technology

CS48704-18/31

Data Modeling - Data Objects

Data Object - representation of object with multiple properties that software deals with:

– width VS Dimension – car (color, engine, body style) – Dashboard

DO can be – something producing information (e.g., report)– occurrence - phone call, event– role - salesperson, manager, engineer– place - warehouse, house, Chicago, – physical thing - car, saw, airplane, – structure - directory, file,

DO in system have some relationship – CAR has an ENGINE

Page 19: Illinois Institute of Technology

CS48704-19/31

Data Modeling - Attributes

Attributes - define the properties of the DO They can:– name an instance of the DO– describe the instance– point to another table– 1 or more attributes become the key or identifier. – Attributes that are used depend on the problem.Make MODEL ID# BodyTYPE COLOR OWNERLexus LS400 AB123 Sedan Blue DALChevy Vette XYZ1 Sports RED ABC

- ID# is a key or identifier - OWNER is points or refers to another DO - others are naming and descriptive attributes

- An instance is 1 row e.g., lexus - DO is CARS

Page 20: Illinois Institute of Technology

CS48704-20/31

Data Modeling - Relationships

Relationships - define how DO are connected:– DO1 - books DO2 - bookstore– Within the software

bookstore orders books bookstore displays books book stores stocks books bookstore sells books bookstore returns books

Page 21: Illinois Institute of Technology

CS48704-21/31

Data Modeling - Relationships Example

Bookstore BooksSTOCKS

SELLS

ORDERS

DISPLAYS

RETURNS

Page 22: Illinois Institute of Technology

CS48704-22/31

Data Modeling - Relationships (Cardinatlity)

Just saying DO1 related to DO2 need more info– How many DO1 are related to DO2?

Relationships have characteristics:– Cardinality – The number of occurrences that that 1 DO

can be related to another: - one-to-one (e.g., husband only 1 wife) - one-to-many. (e.g., mother many

Children)– Child to have 1 mother

- many-to-many (e.g., uncle many nephews, Nephew many uncles)

- Defines the maximum number of DO in a relationship.

- Does not indicate if a particular instance must participate

Page 23: Illinois Institute of Technology

CS48704-23/31

Data Modeling - Relationships - Modality

Modality – How required is the relation.

– 0 – when no explicit need for relationship to occur

– 1 – when an occurrence is mandatory

Page 24: Illinois Institute of Technology

CS48704-24/31

ERD

Cornerstone of the Data Model Diagram the DO, Relationships and attributes

Page 25: Illinois Institute of Technology

CS48704-25/31

Example of Modality and Carnality

Customer has Orders

Modality: Anorder must have acustomer

Modality: Acustomer does notrequire an order

Cardinality: Asingle customerhas order(s)

Cardinality:Multiple orders fora customer.

1 M

Page 26: Illinois Institute of Technology

CS48704-26/31

Example of ERD

Page 27: Illinois Institute of Technology

CS48704-27/31

ERD II example - Homesafe Enables homeowner (HW) to config

security system (SS), during install HS monitors all sensors connected to SS HS interacts with HW via Keypad on cntl

panel (CP) CP is used to program system Each sensor (SEN) is assigned a # and

type A master passwd is programmed, Tel

number are input for dialing on Sensor event (SEN)

on SEN event, alarm invoked & SS dials phone number, and gives info to (MS) monitoring Service

CP has keyboard input stuff

Page 28: Illinois Institute of Technology

CS48704-28/31

ERD II example - Homesafe (Basic Relations)

Sensor

Security System

HomeOwner

MonitoringService

Control Panel

Page 29: Illinois Institute of Technology

CS48704-29/31

ERD II example - Derived Relationships

SS monitors sensor SS enables/disables sensor SS tests sensor SS program sensor

Attributes of Sensor has type, internal id, zone location, alarm level

Page 30: Illinois Institute of Technology

CS48704-30/31

ERD II example - Homesafe

programs

Enables/disables

monitors

SensorSecurity System

Security system controls 1or more sensors

Security System needssensor.

Sensor controled fromsingle security system

Sensor needs securitysystem

Page 31: Illinois Institute of Technology

CS48704-31/31

High-Level Modeling Tools System Modeling

– System Context Diagram– Partitioning

Data Modeling – Entity-Relation - Data objects and their

relationships Information flow diagrams

– Data flow diagrams - how data transforms in system- how functions transform data

Control Specifications– State diagrams - how system behaves

as result of external events .