8 Developing DFDs Context Diagram Zero Level Explosion System OverviewLittle or no detailZero Level ExplosionMore detailedFirst,Second, Third LevelsMore detailed levels
9 Context DFD Basic overview of the system Contains only 1 process given the number zeroShows all external entitiesMajor data flows among entitiesGenerally no data storesAssign a name to the whole system
11 Recall: on-line university registration (from Use Case examples) The system should enable the staff of each academic department to examine the course offered by their department, add and remove course, and change the information about them (e.g., the maximum number of students). It should permit students to examine currently available courses, add and drop courses to and from their schedules, and examine the course for which they are enrolled. Department staff should be able to print a variety of reports about the courses and the students enrolled in them. They system should ensure that no student takes too many course and that students who have any unpaid fees are not permitted to register. (Assume that a fees data store is maintained by the university's financial office that the registration system accesses but does not change.)
13 Recall: real estate (from Use Case examples) A Real Estate Inc. (AREI) sells houses. People who want to sell their houses sign a contract with AREI and provide information on their house. This information is kept in a database by AREI and a subset of this information is sent to the citywide multiple-listing service used by all real estate agents. AREI works with two types of potential buyers. Some buyers have an interest in one specific house. In this case, AREI prints information from its database, which the real estate agent uses to help show the house to the buyer (a process beyond the scope of the system to be modeled). Other buyers seek AREI’s advice in finding a house that meets their needs. In this case, the buyer completes a buyer information form that is entered into a buyer database, and AREI real estate agents use its information to search AREI’s database and the multiple-listing service for houses that meet their needs. The results of these searches are printed and used to help the real estate agent show houses to the buyer.
14 AREI Context Diagram AREI System Buyer information Sellers Buyers BuyerinformationSellersBuyersHouseinformationHouseinformationHouseInformationHouseInformationMultipleListingService
15 Level 0 DFD Detail from “exploding” the context-level DFD Show less than 9 processesNumber each processShow data stores (master files)Ignore the handling of exceptionsShow all external entities
18 Level 0 DFD: AREI Sellers Maintain house seller information D2 Sales ContractsHouseGeneraterequestedreport12Sales ContractD3Offered HousesHouse informationBuyer information formD1Multiple ListingServices FileSalesContractBuyersHouse information requestD4Buyer
19 Create Child Diagrams Vertical Balancing A child diagram cannot produce output or receive input that the parent does not produce or receiveExternal entities are not shownMay contain additional data storese.g.., transaction filesPrimitive when no longer exploded
25 Common Errors Forgetting data flows Arrow pointing wrong way Connecting data stores & sourcesIncorrectly labeling processes or flowsToo many processes (break it up!)Data flows entering a process must be different when leaving!
26 Logical & Physical DFDs focuses on modeling the businesssystem independentPhysicalfocuses on modeling the systemsystem dependent
27 Logical DFDs - Current System Good for communication & understandingFocus on business activitiesUser view of the current systemModel of the business
28 Logical DFDs - New System Look for improvementseffectiveness - i.e., doing the “right thing”efficiency - i.e., doing the “thing right”Transition from “Analysis” to “Design”
29 Physical DFDs Use the new logical DFD to make transition to a CBIS Define Machine versus manual boundariesprocesses = programs or manual proceduresdata stores = data files or manual filesDefine controls, validations, & securityDefine actual file names & printoutsMaster & transaction files
30 Partitioning the Physical DFD Definingmanual proceduresautomated procedurescircled using a dotted lineBatch versus On-Line Procedures
31 2.1.1 Deposit Check 2.1.2 Update Info D1 Tenant File 2.1.3 Receipt Bank DepositMakeBankDepositDepositInfo2.1.2UpdateInfoUpdateTenantFileD1Tenant File2.1.3ReceiptCreateReceiptTenantInfo