Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 12 Analysis Modeling. Analysis Modeling ä Two primary methods today ä Structured Analysis ä Object-oriented analysis ä Some important considerations.

Similar presentations


Presentation on theme: "Chapter 12 Analysis Modeling. Analysis Modeling ä Two primary methods today ä Structured Analysis ä Object-oriented analysis ä Some important considerations."— Presentation transcript:

1 Chapter 12 Analysis Modeling

2 Analysis Modeling ä Two primary methods today ä Structured Analysis ä Object-oriented analysis ä Some important considerations ä Analysis products must be maintainable ä Effective partitioning is essential ä Graphics should be used whenever possible ä Distinguish between logical and implementation

3 Elements of the Analysis Model ä Primary Objectives ä Describe what customer requires ä Establish basis for creating software design ä Define requirements that can be validated

4 The structure of analysis model Data Dictionary Entity Relationship Diagram Data Flow Diagram State Transition Diagram Data Object Description Process Specification Control Specification ( ERD) (DFD) (STD)

5 The Flow Model Every computer-based system is an information transform.... computerbasedsystem input output

6 Data Modeling ä The model consists of ä Data object [types] ä Attributes ä Relationships ä Data objects ä A representation of almost any composite information that must be understood by software.

7 …Data Modeling ä Attributes ä Attributes define the properties of a data object and take on one of three different characteristics: ä Name an instance of the data object ä Describe the instance ä Make reference to another instance Make Model ID# Body type Color Owner Ford Taurus Q12A45.. Sedan Blue ABC Lexus LS400 AB123... Sports White XYZ Naming attributes Descriptive attributes Referential attributes Identifier

8 …Data Modeling ä Relationships ä Defined pairwise -- many varieties BookBookstore orders displays sells returns

9 Cardinality and Modality ä Cardinality ä How many occurrences of object X are related to how many occurrences of object Y ä One-to-one (1:1) ä One-to-many (1:N) ä Many-to-many (M:N) ä Modality ä =0 => optional relationship ä =1 => relationship must appear

10 Example: Modality Customer Repair action is provided with Mandatory: in order to have a repair action, we must have a customer Optional: there may be a situation in which a repair action is not necessary

11 Entity Relation Diagrams (ERD) ä Cornerstone of the data model -- includes ä data objects, ä attributes, ä relationships, and ä various type indicators manufacturer car builds ID# modelbody typeenginetransmission... Data Object Table

12 Example: Expanded ERD

13 Data Object type hierarchies

14 Associative Data Objects

15 Functional Modeling Data Dictionary Entity Relationship Diagram Data Flow Diagram State Transition Diagram Data Object Description Process Specification Control Specification ( DFD )

16 Data Flow Diagrams (DFD) ä A graphical technique that depicts information flow and the transforms applied as data move from input to output ä Not the same as flow charts. Does not show the logic of the transformations ä Can be used at any level of abstraction

17 General Information Flow Model

18 Basic Notation

19 Information Flow Refinement A B A B V W X Y Z X Y z z z x x y y Z 1 2 3 1 1 2 2 F f f f f f f f f f f f f 1 2 3 4 5 6 7 41 42 43 44 45

20 Real Time Extensions ä Fundamental issue - The time at which results are produced is a part of the correctness of the computation.

21 Example: Time continuous data flow

22 Ward/Mellor Notation

23 Example: Data and control flows, Ward and Mellor

24 Hatley and Pirbhai Extensions ä Use separate data flow diagram (DFD) and control flow diagram (CFD) ä Data flow diagrams ä Used to represent data and the processes that manipulate it ä Control flow diagrams ä Show how events flow among processes and show those external events that cause various processes to be activated

25 Relationship Between Models

26 Example: Data Conditions

27 CFD for Photocopier Software read operator input manage copying produce user displays reload paper perform problem diagnosis paper feed status (jammed, empty) start/stop alarm full repro fault Copy Info status Reload status Problem type

28 Behavioral Modeling Data Dictionary Entity Relationship Diagram Data Flow Diagram State Transition Diagram Data Object Description Process Specification Control Specification ( STD )

29 State Transition Diagrams ä A State is any observable mode of behavior ä e.g., reading commands, computing control, waiting for next time event ä States represented as rectangles ä Arrows represent transitions ä Value above arrow identifies event causing transition ä Value below arrow indicates ensuring action

30 State Transition Diagram reading commands making copies reloading paper diagnosing problem jammed invoke perform problem-diagnosis empty invoke reload paper not jammed invoke read-op-input full invoke read-op-input idle invoke read-op-input full and start invoke manage-coping copies done invoke read-op-input

31 Creating an ERD ä List entities that customer addresses ä For each, determine the connections ä For each connection, create one or more object-relationship pairs ä For each relationship, determine cardinality and modality ä Define the attributes of each entity ä Formalize and review ERD ä Iterate

32 Example1: Home Security System ä Initial entities ä Homeowner, control panel, sensors, security system and monitoring service

33 Example2: Home Security System ä Relationships between sensor and security sys. ä Security system monitors sensor ä Security system enables/disables sensor ä Security system tests sensor ä Security system programs sensor

34 Creating a Data Flow Model ä First create level 0 diagram ä Depict software system as single bubble ä Show primary inputs and outputs ä Identify processes, data objects, and data stores to be expanded at next level ä Label all arrows with meaningful names ä Information flow continuity must be maintained ä Refine only one bubble at a time

35 Example3: Home Security System

36 Refinement ä Analyze textual description of bubble ä verbs are often processes ä nouns are often external entities, data or control objects or data stores ä Examples ä Control panel is used to program and configure the system ä Upon a sensor event, the software invokes an alarm

37 Example4: Home Security System

38 Example5: Home Security System

39 Creating Control Flow Models ä Strip arrows from DFD ä Add event and control items. E.g., try ä List all sensors read by the software ä List all interrupt conditions ä List all operator actuated switches ä List all data conditions ä Check noun-verb parse for possible CSPEC I/O ä Identify states, how each is reached and transitions ä Focus on possible omissions

40 Level 1 CFD for Safe-Home

41 State transition diagram for SafeHome

42 Process Activation Table for SafeHome

43 Process Specifications ä Describes all flow model processes at final level of refinement ä Narrative text, ä Program design language description ä Mathematical equations ä Tables ä Diagrams ä Charts

44 Data Dictionary Data Dictionary Entity Relationship Diagram Data Flow Diagram State Transition Diagram Data Object Description Process Specification Control Specification

45 Data Dictionary ä Why a data dictionary? Need an organized way to represent data & control characteristics ä Usual contents ä Name ä Alias ä Where and how used ä Content description (of composite items) ä Supplementary information, e.g., restrictions, limitations, preset values

46 Example ä Name:Shuttle pose ä Aliases:Position-orientation vector ä Where used:Display of Shuttle on map ä Content:x, y, z position wrt to Earth’s Center, roll, pitch, yaw ä Supplementary Info: Elevation must be above 140 nautical miles

47 Data Dictionary ä Common tools supporting DD ä Preventing creation of duplicate names ä Enforce naming conventions ä Printing dictionary ä Determine the range of impact of changes, i.e., which processes are affected ä Assist configuration management

48 End


Download ppt "Chapter 12 Analysis Modeling. Analysis Modeling ä Two primary methods today ä Structured Analysis ä Object-oriented analysis ä Some important considerations."

Similar presentations


Ads by Google