Presentation on theme: "Chapter 4 Documenting Information Systems"— Presentation transcript:
1Chapter 4 Documenting Information Systems Yong ChoiBPACSUB
2Learning Objectives Read and evaluate data flow diagrams. Read and evaluate systems flowcharts.Prepare data flow diagrams from a narrative.Prepare systems flowcharts from a narrative.
3Process Documentation Preparing and using process documentation is a important skill for an accountant.Data flow diagrams portray a business process activities, stores of data, and flows of data among those elements.System flowcharts present a comprehensive picture of the management, operations, information systems, and process controls embodied in business processes.
4System ConceptA system exits by taking input from the environment , transforming (processing) input, and release an outputA system may be decomposed (exploded) into subsystemsOutput of one subsystem may become the input of other subsystems
8Example of Decomposition Diagram ABC Online Entertainment CompanyNo additional notes.
9Data Flow DiagramsData flow diagram: is a graphical modeling tool to depict the flow of data through a system and the work or processing performed by that system.What’s the system doing?Use a limited number of symbols.Do not depict management or operational elements of a system.
10Notations of DFD External Entity Data Flow Process Data Store DE MARCO & YOURDON NOTATIONS (Textbook)External EntityData FlowProcessData Store
11Notations of DFD External Entity Data Flow Process Data Store GANE & SARSON NOTATIONS (more universal)External EntityData FlowProcessData Store
12Data Flow Diagram (DFD) Key points for modelingHow data moves through the organizationRelationships between various data flowsStorage of dataThere are no FIXED rules about how a DFD should be developed…There is no such a DFD call “CORRECT DFD”…Yours can be different than mine but both are correct.It is ambiguous development process (each one’s view and opinion can be different).
13Simple Data Flow Diagram for Banking Teaching NotesWe have found it useful to walk through this first DFD. Don’t be alarmed if students take exception to some of the oversimplification of the illustrated problem—it can actually contribute to the learning experience.
14Process LogicDFDs are effective tools for identifying processes, but are not good at showing all the detail logic inside those processes.Not always easy to know what the lowest logical level is (see next slide)However, it is better than:Flowcharts and Pseudocode (difficult for users to understand).No additional notes.
15Decomposition of Context Diagram Context DiagramPNLevel-0 DiagramMD112P3Level-1 DiagramN
20Flowchart Limitations Complex logic: If the system (or process) logic is quite complicated (most systems and processes), flowchart becomes complex and clumsy.Inventory-logistics management with all the accounting transactionsAlterations and Modifications: If alterations are required the flowchart may require re-drawing completely.The essentials of what is done can easily be lost in the technical details of how it is done.
21PseudocodeThis is the pseudocode for a Game of Monopoly, including one person's move as a procedure:Main Procedure Monopoly_GameHand out each player's initial money.Decide which player goes first.RepeatCall Procedure Monopoly_Move for next player.Decide if this player must drop out.Until all players except one have dropped out.Declare the surviving player to be the winner.Procedure Monopoly_MoveBegin one's move.Throw the dice.Move the number of spaces on the board shown on the dice.If the token landed on "Go to Jail,"then go there immediately.Else if the token landed on "Chance" or "Community Chest,"then draw a card and follow its instructions.Elsefollow the usual rules for the square (buying property, paying rent, collecting $200 for passing "Go", etc.).End one's move.
22External EntitiesAn External Entity is a provider (source) or receiver (sink) of data and information of the systemSUPPLIER
23External Entities …As scope changes, external agents can become processes, and vice versa.Almost always one of the following:Office, department, division inside the business but outside the system scope.An external organization or agency.Another business or another system.One of system’s end-users or managers
24Data Stores A data store is an inventory of data. Accounts ReceivableA data store is an inventory of data.A data store means “data at rest.”A data flow means “data in motion.”
25Data Stores … Almost always one of the following: Persons (or groups of persons): e.g., customerPlaces: e.g, cash registerObjects: e.g., productEvents (about which data is captured): e.g., sales
26Data FlowsDELIVERY SLIPA Data Flow represents an input of data to a process, or the output of data from a process.A Data Flow does not represent a document or a physical good: it represents the exchange of information in the document or about the good
27Processes1Pay BillA Process is a work or action performed on input data flow to produce an output data flowUse a verb/verb phrase to label the action performed by the processA Process must have at least one input data flow and at least one output data flow.
28How to find each one… External Entities (EE): noun people/organizations/things that supply information to or use information from the systemProcesses (P): verb/verb phraseactions/doing wordsData Flows (DF): name of datamovement/exchange of information/data between external entities to processes, and processes to processesData Stores (DS): nounstore/record information/data
29Example for finding each one… A student (EE/DS) sends in an application form (DF) containing their personal details, and their desired courseThe university (EE) checks (P) that the course (EE/DS) is available.If the course is available and the student is enrolled (P) in the course, the university confirms (P) the enrolment by sending a confirmation letter (DF) that they are registered (P) for the course to the student.Or if the course is unavailable the student is sent a rejection letter (DF).What system is being modeled?
30Guidelines for Developing DFD Develop a list of business activitiesSimilar to business rules of ERDCreate the Context Diagram (first task)shows external entities and data flows to and from the system: conceptual DFDCreate level 0 DFD (or Diagram 0)shows general processes at the highest levelCreate level 1 DFD (or Child Diagram)shows more detailed processesCreate level n-1 DFD…..
31Context Diagram Building Procedure Identify the system and its boundaries (the context)Identify external entities (providers, receivers of system info)Identify external data flows (input, output)However, NO DATA STORE !!!Note: the whole system itself is a process (it receives input and transforms into output)Go back to the class website for the Context Diagram!
32Decomposition of Context Diagram Context DiagramPNLevel-0 DiagramMD112P3Level-1 DiagramN
33Description of Each Level Context Diagram: This is the highest level and represents the overall system and its interaction with its environmentLevel 0 Diagram: This shows the major subsystems and their interactionsLevel x Diagram: Shows the processes that make up each of the major subsystems
34Level 0 DFD Building Procedure Identify what is being done between each input and its corresponding outputIdentify the processesIdentify external data flows between external entities and processesIdentify internal data flows between processes and data stores
35Level 0 Tips Generally move from top to bottom, left to right Minimize crossed linesIterate as neededThe DFD is often drawn many times before it is finished, even with very experienced systems analysts
36Tips for Level 1 and Below Sources for inputs and outputs listed at higher levelList source and destination of data flows to processes and stores within each DFDDepth of DFD depends on overall system complexityTwo processes generally don’t need lower levelMore than seven processes become overly complex and difficult to read
37Tips for Level 1 and Below Level-1 DFD’sSub-processes (primitive processes) of Level-0 processesSources for inputs and outputs listed at higher levelList source and destination of data flows to processes and stores within each DFDDepth of DFD depends on overall system complexityTwo processes generally don’t need lower levelMore than seven processes become overly complex and difficult to read
38Context diagram of Student Administration System External entity: StudentProcess: Student Administration process applicationData Flows: Application Form, Confirmation/Rejection Letter
39Apply logical sequence of the system.. A student (EE / DS) sends in an application form (DF) containing their personal details, and their desired courseThe university checks (P) that the course is available.If the course (DS) is available the student is enrolled (P) in the course, and the university confirms (P) the enrolment by sending a confirmation letter (DF) that they are registered (P) for the course to the student.Or if the course is unavailable the student is sent a rejection letter (DF).
40How to find each one… External Entities (EE): noun people/organizations/things that supply information to or use information from the systemProcesses (P): verb/verb phraseactions/doing wordsData Flows (DF): name of datamovement/exchange of information/data between external entities to processes, and processes to processesData Stores (DS): nounstore/record information/data
41Level-0 DFD External entity: Student Processes: Check course available, Enroll student, Confirm RegistrationData Flows: Application Form, Course Details, Course Enrolment Details, Student Details, Confirmation/Rejection LetterData Stores: Courses, Students.Also see the “Lemonade Stand” example from the class website
43Common Process Errors on DFDs Teaching NotesIdea: Correct this diagram as an in-class exercise.3.1.1: To correct the diagram, a data flow, ACCOUNTING DATA, should be added from the data store, MEMBER ACCOUNTS, to process3.1.2: To fix the black hole, we might add an output data flow called NEW MEMBER ACCOUNT from process to the data store MEMBER ACCOUNTS.3.1.3: To fix the miracle, you would need to at least add a data flow such as ACCOUNTING DATA from the data store, MEMBER ACCOUNTS, to process In all likelihood, you also need some type of triggering data flow, such as ACCOUNT FREEZE AUTHORIZATION, from a new external agent, such ACCOUNTING DEPARTMENT, to process
44Rules in DFD Building ... M Context Diagram P N M 1 2 P 3 N Level-0 Diagram
45Rules in DFD BuildingRule 1 : Use only DFD notations to avoid confusionRule 2 : Use an action VERB to label a process (because a process is an action !!!)
46Rules in DFD Building ...Rule 3 : Must be one process associated with each data flow …MM
47Rules in DFD Building ...Rule 3 : Must be one process associated with each data flow …MNMN
48Rules in DFD Building ...Rule 3 : Must be one process associated with each data flow.
49Rules in DFD Building ...Rule 4 : Shaded corner must appear in ALL occurrences of a duplicated symbol in a same diagramCUSTOMERD3Accounts ReceivableCUSTOMERD3Accounts Receivable
50Rules in DFD Building ...Rule 5 : No process without output data flow (black hole !!!)
51Rules in DFD Building ...Rule 6 : No process without input data flow (miracle !!!)
52Rules in DFD Building ...Rule 7 : No need for routing (without transforming) a data flow with a process (non value-added activities !!!)Info AInfo A
53Rules in DFD Building ...Rule 8 : Identical input, output data flows for parent and child processes (but the child processes can have their own throughputs)See the picture in next slide
54Detail Rules in DFD Building ... MContext DiagramPNM12P3NLevel-0 Diagram
55Rules in DFD Building ...Rule 9 : Data flows cannot split by themselves
56Rules in DFD Building ...Rule 9 : Data flows cannot split …
57Rules in DFD Building ...Rule 10 : A data packet can combine many data elements being transmitted at the same time to the same destination
58Rules in DFD Building ...Rule 11 : Double-headed arrows are forbidden [in- flow (update) and out-flow (extract info) of a data store are different]