SE-565 Software System Requirements IX. Data Flow DiagramsTopicsRole of methods in RENecessary properties for a RE methodNo ideal RE methodSA and OOAData-Flow ModelingData-Flow Modeling (cont.)The four basic elements of the DFD notationSlide 10Slide 11Slide 12The Data-Flow Diagram Notation SummarySlide 14Guidelines for building DFDsSlide 16Guidelines for building DFDs (cont.):Example: Simple library systemSlide 19Example: A Distribution System Context level data flow diagramLevel 1 data flow diagramLevel 2 DFD: Receiving correspondenceClass exerciseData DictionariesSlide 25Simple Book Order DFDSlide 27Data Dictionaries (cont.)Class exercise: Create a 5 item data dictionary for this DFD01/14/19 Jiacun Wang 1SE-565Software System RequirementsIX. Data Flow DiagramsDr. Jiacun WangDepartment of Software EngineeringMonmouth University01/14/19Jiacun Wang RE-9 2TopicsRequirements engineering methodsStructured techniques for documenting and analyzing requirementsData-Flow DiagramsData Dictionaries01/14/19Jiacun Wang RE-9 3Role of methods in REProcess of requirements engineering (RE) is usually guided by a requirements method Requirement methods are systematic ways of producing system modelsSystem models are important bridges between the analysis and the design process01/14/19Jiacun Wang RE-9 4Necessary properties for a RE methodSuitability for agreement with the end-user (using intuitive notation)The precision of definition of its notation Assistance with formulating requirementsDefinition of the world outside Scope for malleability Scope for integrating other approachesScope for communication Tool support01/14/19Jiacun Wang RE-9 5No ideal RE methodThere is no ideal requirement method A number of methods use a variety of modelling techniques to formulate system requirementsSystem models can be enriched by modelling different aspects of using modelling techniques01/14/19Jiacun Wang RE-9 6SA and OOAStructured analysis (SA)focus on functionalityfocus on data Object-oriented analysis (OOA)integrate data and functions01/14/19Jiacun Wang RE-9 7Data-Flow ModelingOne of the most popular structured methodsThe Data-Flow Diagram (DFD) method (DeMarco, 1979) provides a description of a system based on modelingthe transformational processes of a system, the collections (stores) of data that the system manipulates, and the flows of data between the processes, stores and the outside world.The DFD describes the functional viewpoint of the system e.g. it describes the system in terms of its operation (tasks).01/14/19Jiacun Wang RE-9 8Data-Flow Modeling (cont.)This method works well for transaction-processing systems and other function-intensive applications.The DFD provides a way to represent the steps involved in a business process or the operations of a proposed software system.A DFD illustrates how the functional requirements in the SRS combine to let the user perform specific tasks.01/14/19Jiacun Wang RE-9 9The four basic elements of the DFD notationThe circle (the bubble)It denotes an operation and is labeled with a brief description of the operationTransformation of data into other dataNotation3.Reserveseat01/14/19Jiacun Wang RE-9 10The box or rectangle (terminator)It denotes external entities - source or sink of information outside the boundaries of the systemThe source/sink can be a human user or other systemNotationSource of informationCustomer01/14/19Jiacun Wang RE-9 11The paralleled bars or parallel linesIt denotes a data store or fileA place where data are held for later transformation or reference.NotationUser databaseUpdateuser details01/14/19Jiacun Wang RE-9 12The arc (arrow)It denotes the flow of information between the other three elements - data flowNotationPINCustomer’s card detailsAccess mapNetwork databaseValidatecustomer accessCustomer01/14/19Jiacun Wang RE-9 13The Data-Flow Diagram NotationSummaryData TransformationInputData dictionaryOutputTerminatorTerminator01/14/19Jiacun Wang RE-9 14The DFD can present the system at different levels of details. (Hierarchical/functional decomposition)•Context level •Level 1•Level 2•……….•Level ndetailsThe decomposition continues until the lowest level diagram contains only primitive process operations that can be clearly represented in narrative text, pseudocode, activity diagram, etc.Hierarchical/functional decomposition01/14/19Jiacun Wang RE-9 15Guidelines for building DFDs1. All names should be unique.2. Suppress logical decisions (no diamond shaped boxes!).3. Don’t become bogged down in details. Defer error conditions and error handling until the end of the analysis (not in the case of a diagnostic system or patient monitoring system, for ex.). 4. Preserve the number of inputs and outputs between the levels.5. As bubbles are decomposed into less abstract bubbles, the corresponding data flows may also need to be decomposed.01/14/19Jiacun Wang RE-9 16A AI1I1I1II2I2I2OO3O3IOO1O2A top level processis decomposed into some numberof lower level processesRules of decomposition01/14/19Jiacun Wang RE-9 17Guidelines for building DFDs (cont.):6. Place data stores only on the Level 1 and lower levels, not on the context diagram.7. Name each process as a concise action: verb + object8. Number the processes uniquely and hierarchically. On level 1 diagram number each process with an integer. If you create a child DFD for process 2, number the processes in that child diagram 2.1, 2.2, etc.9. Don’t show more than 10 processes on a single diagram because it becomes harder to understand and change. Instead, introduce another layer of abstraction by grouping related processes into a higher-level process.01/14/19Jiacun Wang RE-9 18Example: Simple library systemLibrary cardRequested itemIssued itemReturn dateThe context - level DFD forIssue library itemLibraryuserIssue library itemLibraryassistant01/14/19Jiacun Wang RE-9 19Example: Simple library systemLibrarycardRequested itemIssueditemReturn dateLevel 1 of the DFD for the Issue library itemLibraryuserUpdateuserdetailsLibraryassistantIssueitemCheck itemCheckuserItem databaseUser databaseUser detailsUser statusUser IDItem IDUpdated detailsUpdate detailsItem detailsItemstatus01/14/19Jiacun Wang RE-9 20Example: A Distribution SystemContext level data flow diagramGreenbelt Distribution SystemDept-QueriesReports to DeptsResponse to
View Full Document