illinois institute of technology
DESCRIPTION
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 PresentationTRANSCRIPT
![Page 1: Illinois Institute of Technology](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/1.jpg)
CS48704-1/31
Illinois Institute of Technology
CS487
Software Engineering
Analysis Modeling
Instructor David Lash
![Page 2: Illinois Institute of Technology](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/2.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/3.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/4.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/5.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/6.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/7.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/8.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/9.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/10.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/11.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/12.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/13.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/14.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/15.jpg)
CS48704-15/31
Partitioning - continue example
![Page 16: Illinois Institute of Technology](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/16.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/17.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/18.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/19.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/20.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/21.jpg)
CS48704-21/31
Data Modeling - Relationships Example
Bookstore BooksSTOCKS
SELLS
ORDERS
DISPLAYS
RETURNS
![Page 22: Illinois Institute of Technology](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/22.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/23.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/24.jpg)
CS48704-24/31
ERD
Cornerstone of the Data Model Diagram the DO, Relationships and attributes
![Page 25: Illinois Institute of Technology](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/25.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/26.jpg)
CS48704-26/31
Example of ERD
![Page 27: Illinois Institute of Technology](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/27.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/28.jpg)
CS48704-28/31
ERD II example - Homesafe (Basic Relations)
Sensor
Security System
HomeOwner
MonitoringService
Control Panel
![Page 29: Illinois Institute of Technology](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/29.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/30.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062808/56815287550346895dc0ae82/html5/thumbnails/31.jpg)
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 .