Presentation on theme: "Chapters 7 & 9 System Scope"— Presentation transcript:
1 Chapters 7 & 9 System Scope DFDs, Use Cases, ERDs
2 Agenda Summary Documenting System Scope Context and Level-0 DFDs Use Case DiagramsEnterprise Entity-Relationship DiagramsSummary
3 Scope What’s in and what’s out: boundary Constraints and givens What can changeWho / what is affected
4 Process ModelingGraphically represent the processes that capture, manipulate, store, and distribute data between a system (what’s in) and its environment (what’s out) and among system components (functionalities)Utilize information gathered during requirements determinationProcesses and retained data are modeled
5 Data Flow Diagram (DFD) A picture of the movement of data between external entities and the processes and data stores within a systemDifference from system flowcharts:DFDs depict logical data flow independent of technologyFlowcharts depict details of physical systems
7 DFD Symbols (cont.)Process: work or actions performed on data (inside the system)Data store: data at rest (inside the system)Source/sink: external entity that is origin or destination of data (outside the system)Data flow: arrows depicting movement of data
8 Context DiagramContext diagram shows the system boundaries, external entities that interact with the system, and major information flows between entities and the system.NOTE: only one process symbol, and no data stores shown.
9 Level-0 DFDLevel-0 DFD shows the system’s major processes, data flows, and data stores at a high level of abstraction.Processes are labeled 1.0, 2.0, etc. These will be decomposed into more primitive (lower-level) DFDs.
10 Use CasesDepiction of a system’s behavior or functionality under various conditions as the system responds to requests from usersWhat are tasks in which each actor (external entity) is involvedAlternative to DFDs (especially Level-0)
11 UML Use Case Diagram Symbols ActorBoundaryConnectionInclude relationshipExtend relationship<<include>><<extend>>
12 What is an Actor?Actor is an external entity that interacts with the system.Most actors represent user roles, but actors can also be external systems.An actor is a role, not a specific user; one user may play many roles, and an actor may represent many users.
13 What is a Boundary?A boundary is the dividing line between the system and its environment.Use cases are within the boundary.Actors are outside of the boundary.
14 What is a Connection?A connection is an association between an actor and a use case.Depicts a usage relationshipConnection does not indicate data flow
15 What is an <<extend>> Relationship? A connection between two use casesExtends a use case by adding new behavior or actionsSpecialized use case extends the general use case
17 What is an <<include>> Relationship? A connection between two use casesIndicates a use case that is used (invoked) by another use caseLinks to general purpose functions, used by many other use cases
19 Conceptual Data Modeling A detailed model that captures the overall structure of data in an organizationIndependent of any database management system (DBMS) or other implementation considerationsEnterprise data model: the major categories of data and the relationships between the categories
20 Process of Conceptual Data Modeling Develop a data model for the current systemDevelop a new conceptual data model that includes all requirements of the new systemIn the design stage, the conceptual data model is translated into a physical designProject repository links all design and data modeling steps performed during SDLC
22 Gathering Information for Conceptual Data Modeling Two perspectivesTop-downData model is derived from an intimate understanding of the business.Bottom-upData model is derived by reviewing specifications and business documents.
23 Requirements Determination Questions for Data Modeling What are subjects/objects of the business?Data entities and descriptionsWhat unique characteristics distinguish between subjects/objects of the same type?Primary keysWhat characteristics describe each subject/object?Attributes and secondary keysHow do you use the data?Security controls and user access privileges
24 Requirements Determination Questions for Data Modeling (cont.) Over what period of time are you interested in the data?Cardinality and time dimensionsAre all instances of each object the same?Supertypes, subtypes, and aggregationsWhat events occur that imply associations between objects?Relationships and cardinalitiesAre there special circumstances that affect the way events are handled?Integrity rules, cardinalities, time dimensions
25 Summary Scope: What may change (in vs. out) What interactions must be preservedWhat are major functionalitiesWho / what will be affectedProcesses, data, people, systems