1 / 31

Illinois Institute of Technology

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

kizzy
Download Presentation

Illinois Institute of Technology

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Illinois Institute of Technology CS487 Software Engineering Analysis Modeling Instructor David Lash

  2. Illinois Institute of Technology This level of modeling is the very highest level. The basic input-processing-output template.

  3. Modeling

  4. 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 .

  5. 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.

  6. System Context Diagram

  7. 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.

  8. 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)

  9. Initial System Context Diagram

  10. 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.

  11. 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 .

  12. 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

  13. 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

  14. Partitioning - Example

  15. Partitioning - continue example

  16. 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 .

  17. 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

  18. 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

  19. 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 OWNER Lexus LS400 AB123 Sedan Blue DAL Chevy 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

  20. 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

  21. Data Modeling - Relationships Example

  22. 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

  23. 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

  24. ERD • Cornerstone of the Data Model • Diagram the DO, Relationships and attributes

  25. Example of Modality and Carnality

  26. Example of ERD

  27. 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

  28. ERD II example - Homesafe (Basic Relations)

  29. 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

  30. ERD II example - Homesafe

  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 .

More Related