Software Engineering CSCI 4700
Popular in Course
Popular in ComputerScienence
This 36 page Class Notes was uploaded by Hester Ernser on Wednesday September 23, 2015. The Class Notes belongs to CSCI 4700 at Middle Tennessee State University taught by Medha Sarkar in Fall. Since its upload, it has received 70 views. For similar materials see /class/213008/csci-4700-middle-tennessee-state-university in ComputerScienence at Middle Tennessee State University.
Reviews for Software Engineering
Report this Material
What is Karma?
Karma is the currency of StudySoup.
You can buy or earn more Karma at anytime and redeem it for class notes, study guides, flashcards, and more!
Date Created: 09/23/15
i 1 lquot A Roadmap We are going to examine some of the key tools used for creating an analysis model General I Usecases I Usecase diagrams These tools are not specific to either structured analysns I ActIVIty diagrams or 00 analysis I Swimlane diagrams Structured Analysis 00 Analysis I ERD diagrams I Class diagrams I Data flow diagrams I Packages I Process specifications I CRC cards I Sequence Diagrams Requirements Modeling Strategies I One view of requirements modeling called considers data and the processes that transform the data as separate entities l Data objects are modeled in a way that defines their attributes and relationships i Processes that manipulate data objects are modeled in a manner that shows how they transform data as data objects flow through the system I A second approach to analysis modeled called focuses on the definition of classes and the manner in which they collaborate with one another to effect customer requirements L L in Data Objects quotl A data object is a domain element that will be manipulated by the system Characteristics Examples I Playsanecessary role I Roles I External entities I Events I Structures I Characterized by attributes I Places I Otherthlngs I Uniquely identifiable Obiect car Attributes ere o M k Modeling Mid Price 39 i Entity Relationship Diagram 1 An entity relationship diagram is an abstract and conceptual representation of data 1 The first stage of these models is used during requirements analysis to describe needs or the type of information that is to be stored in a database This conceptual data model can be at a later stage mapped to a logical data model such as the relational model 39 If The Building Blocks Entities Relationships and Attributes I An entity is defined as a thing which is recognized as being capable of an independent existence and which can be uniquely identified Examples a house a car They can be thought of as nouns l A relationship captures how two or more entities are related to one another Relationships can be thought of as verbs linking two or more nouns Examples An owns relationship between a company and a computer A pen orms relationship between an artist and a song quot The Building Blocks Entities Relationships and Attributes l Entities can have attributes Example Employee entity can have SSN Name Address Join Date etc as attributes l Every entity must have a minimal set of uniquely identifying attributes which is called the entity s primary key bra7 Relationships Cardinality Modality I Relationships K 1 Define connections between objects 1 1 insured owns I Cardinality l j Defines the number of items on either end of a connection Person Car attached I Modality ll Defines the necessity of a connection V Trailer EntityRelationship Diagram ERD 3941 ERD Notations Chen style MN Infomatlon Engineering style one to one e Cardinality one to many mandatory 5911133 the describes the a mmnnum magnum many optional vs mandatory 3H one or more mandatory LN 01 1 2 3 D H one to zero or more one and only one mandatory MN m and 110 1 2 3 lzero or 01130p 0nal zero or more to zero or more manon many 30 zero or many opnonal 1 to one Martin style 1 one and only one mandatory many zero or more optional 1 one or more mandatory l1 zero or one optional 01 zero or one optional Ln one or more mandatory ILn zero or more optional 11 one and only one mandatory Employees D artmem mth Employees Employees 39 2 39quot quot a aquot Refatimsh a 39 i Data Flow Diagrams Structured Analysis Modeling Tools 39 M dels data elements I Data object diagrams L Attr39butes I ERD diagrams 5 Relationships modeled usmg I Models processes that I Data OW diagram transform data I Process narrative modeled using A data flow diagram describes information flow among a set of processes and actors 1 A process narrative describes how a single process transforms input data to output data I FlowOriented Modeling I Represents how data objects are transformed at they move through the system I is the diagrammatic form that is used I Considered by many to be an old school approach but continues to provide a view of the system that is unique it should be used to supplement other analysis model elements 12 How are DFDs Constructed Scope Grammatical Level 0 document Develop process narratives x 39 nouns external entities datacontrol objects data stores verbs processes Note that nouns and verbs are associated with one another 39 The Flow Model Every computer based system is an information transform commuter 9312332 system 14 Flow Modeling Notation external entity process data flow OU data store 15 L D External Entity A prodllcer or consumer of data Examples 3 person a device a sensor Another example computer based system 16 t 7 7 J Process A da a transformer changes input to 0 put Examples compute taxes determine area format report display graph 17 L 14 Data Flow Data I iows through a system beginning as input and transformed into output base sompuis triangle height area 18 Data Stores Data is often stored for later use sensor report required sensor number 33ng sensor type Jookaup location age 5J3 21 type location age sensor data 19 Data Flow Diagramming Guidelines all icons must be labeled with meaningful names the DFD evolves through a number of levels of detail always begin with a context level diagram also called level 0 I always show external entities at level 0 always label data flow arrows do not represent procedural logic 20 Constructing a DFD I review user scenarios andor the data model to isolate data objects and use a grammatical parse to determine operations I determine external entities producers and consumers of data I create a level 0 DFD nouns external entities datacontrol objects data stores verbs processes Note that nouns and verbs are associated with one another 21 39 i Context Diagram I Shows the context into which the business process fits I Shows the overall business process as just one process I Shows all the outside entities that receive information from or contribute information to the system Slide 22 processing request video source video signal Video digi39iEJJ signal video pmseasw reqyested monks 23 39 Some Guidelines I Level 0 DFD should contain only a single bubble I All arrows and bubbles should be meaningfully labeled I Refinement begins by isolating next level processes data objects and data stores I Refine only one bubble at a time I Data flow continuity must be maintained between levels 39 i Key Definition l Decomposition is the process of modeling the system and its components in increasing levels of detail I Balancing involves insuring that information presented at one level of a DFD is accurately represented in the next level DFD Slide 25 Constructing a DFD I write a narrative describing the transform I parse to determine next level transforms I balance the flow to maintain data flow continuity I develop a level 1 DFD I use a 15 approx expansion ratio 26 39 quot Level 0 Diagram I Shows all the input and output data for the overall system I One bubbleprocess depicts the entire system I Shows data stores Slide 27 39 i Level 1 Diagrams I Shows all the processes that comprise a single process on the level 0 diagram I Shows how information moves from and to each of these processes I Shows in more detail the content of higher level process I Level 1 diagrams may not be needed for all level 0 processes Slide 28 39 Iii Level 2 Diagrams I Shows all processes that comprise a single process on the level 1 diagram I Shows how information moves from and to each of these processes I Level 2 diagrams may not be needed for all level 1 processes I Correctly numbering each process helps the user understand where the process fits into the overall system Slide 29 level 1 1 I levelO 30 Flow Modeling Notes each bubble is refined until it does just one thing the expansion ratio decreases as the number of levels increase most systems require between 3 and 7 levels for an adequate flow model a single data flow item arrow may be expanded as levels increase data dictionary provides information 31 39 Process Speci cation PSPEC I bubble I Mimi v a psaudosode PDL aqua gns 39iabJres 5113ngsz andor sharia 32 E1 1 DFDs A Look Ahead analysis model DFD A Basic Example See Pressman Chapter 7 Section 72 pg 187 display information commands 7 and data alarm I l l l l l l l I l l l telephone x tones l I l l I I l External entities Data ows Processes squares directed edges circles I I 1 Notice that the system is represented as a single bubble This is known as a level 0 DFD or a context diagram DFDs and Progressive Refinement Each DFD reveals progressively more detail than the DFD that preceded it Level 1 DFD commands and data Configure request Startstop request password Refinement continues until each bubble can be easily implemented as a program module I Process Narrative semi recess w paSsword a A process specification describes all of the flow processes in the final most detailed DFD a quot The process password transform performs password validation at the control panel for the SafeHome security function Process password receives a fourdigit password from the interact with user function The password is first compared to the master password stored within the system A process specification can be represented as a collection of process narratives
Are you sure you want to buy this material for
You're already Subscribed!
Looks like you've already subscribed to StudySoup, you won't need to purchase another subscription to get this material. To access this material simply click 'View Full Document'