Title: Chapter 4 Documenting Information Systems
1Chapter 4Documenting Information Systems
2System Concept
- A system exits by taking input from the
environment , transforming (processing) input,
and release an output - A system may be decomposed (exploded) into
subsystems - Output of one subsystem may become the input of
other subsystems
3System Concept (condt)
4System Decomposition (General)
5Decomposition Diagram (Hierarchy Chart)
6Example of Decomposition Diagram
SoundStage Entertainment Club
7Decomposition Use-Case Diagram
8Separating data and processes
- Characteristic
- System focus
-
- Design stability
- Data organization
- State of data
- Data-orientation
- Operation of Data
- More stable as data needs change slowly
- Designed for enterprise
- Controlled
- Process-orientation
- what, when how to do
- Limited due to change in business processes
- Designed for individual applications
- unstructured
9Separating data and processes
- Process-oriented approach
- An IS development strategy that focuses on how
and when data are moved through and transformed
by an IS - Sequence of steps in the process-oriented
approach - define problem -gt identify necessary decisions
-gt describe information needs -gt determine
necessary processing -gt specify data needs - Data-oriented approach
- An IS development strategy that focuses on the
optimal organization of data, not on where or how
data are used - Sequence of steps in the data-oriented approach
- define problem -gt identify requirements -gt
develop data model for each user's data -gt
integrate all the data models into an overall
model
10Process Modeling with DFD
- Process Modeling is a technique for organizing
and documenting the structure and flow of data
through a systems processes, and the logic,
policies, and procedures to be implemented by a
systems processes. - A Data Flow Diagram (DFD) is a graphical modeling
tool to depict the flow of data through a system
and the work or processing performed by that
system. - Whats the system doing
11Data Flow Diagrams (DFD)
- Key points for modeling
- How data moves through the organization
- Relationships between various data flows
- Storage of data
- There are no FIXED rules about how a DFD should
be developed - There is no such a DFD call CORRECT DFD
- Expert SAs may not need much..but definitely
need for YOU!!
12Developing a DFD
13Simple Data Flow Diagram for Banking
14Process Logic
- DFDs 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 - However, it is better than
- Flowcharts and Pseudocode (difficult for users to
understand).
15Flowchart
16Flowchart Limitations
- Complex logic Sometimes, the program logic is
quite complicated. In that case, flowchart
becomes complex and clumsy. - Alterations and Modifications If alterations are
required the flowchart may require re-drawing
completely. - Reproduction As the flowchart symbols cannot be
typed, reproduction of flowchart becomes a
problem. - The essentials of what is done can easily be lost
in the technical details of how it is done.
17Pseudocode
- This is the pseudocode for a Game of Monopoly,
including one person's move as a procedure - Main Procedure Monopoly_Game
- Hand out each player's initial money.
- Decide which player goes first.
- Repeat
- Call 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_Move
- Begin 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.
18Elements of a DFD
DE MARCO YOURDON NOTATIONS (Textbook)
External Entity
Data Flow
Process
Data Store
19Elements of a DFD
GANE SARSON NOTATIONS (more universal)
External Entity
Data Flow
3
Pay Bill
Process
AP Clerk
Data Store
20External Entities
SUPPLIER
- An External Entity is a provider (source) or
receiver (sink) of data and information of the
system - External agents define the boundary or scope
of a system being modeled.
21External Entities
- An external entity (agent) defines a person,
organization unit, or other organization that
lies outside of the scope of the project but that
interacts with the system being studied. - 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 information system.
- One of systems end-users or managers
22Data Stores
D1
Accounts Receivable
- A data store is an inventory of data.
- A data store means data at rest.
- A data flow means data in motion.
23Data Stores
- Almost always one of the following
- Persons (or groups of persons) e.g., customer
- Places e.g, cash register
- Objects e.g., product
- Events (about which data is captured) e.g.,
sales - Concepts (about which data is important) e.g.,
discount - Data stores depicted on a DFD store all instances
of data entities (depicted on an ERD)
24Data Flows
DELIVERY SLIP
- A Data Flow represents an input of data to a
process, or the output of data from a process. - A data flow may also be used to represent the
creation, reading, deletion, or updating of data
in a data store. - A composite data flow (packet) is a data flow
that consists of other data flows. - 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
25Processes
1
Pay Bill
- A Process is a work or action performed on input
data flow to produce an output data flow - Use a verb to label the action performed by the
process (not the name of person or department who
does it as in physical DFD) - A Process must have at least one input data flow
and at least one output data flow.
26How to find each one
- External Entities (EE)
- people/organizations/things that supply
information to or use information from the system - Processes (P)
- actions/doing words/verbs
- Data Flows (DF)
- movement/exchange of information/data between
external entities to processes, and processes to
processes - Data Stores (DS)
- store/record information/data
27DFD using Use-Case
- The actor that initiates the event
- External entities
- The use cases
- Will be handled by a process
- Inputs (or triggers) outputs and responses
- Will become a flow of data
- data store is a result of data flow..thus,
need naming creativity
28DFD Naming Guidelines
- External Entity ? Noun
- Data Flow ? Names of data
- Process ? verb phrase
- a system name
- a subsystem name
- Data Store ? Noun
29Guidelines for Developing DFD
- Develop a list of business activities
- Similar to business rules of ERD
- Create the Context Diagram (we know this)
- shows external entities and data flows to and
from the system conceptual DFD - Create level 0 DFD (or Diagram 0 in textbook)
- shows general processes at the highest level
- Create level 1 DFD (or Child Diagram in textbook)
- shows more detailed processes
30Apply logical sequence of the system..
- A student (EE / DS) sends in an application form
(DF) containing their personal details, and their
desired course - The 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
for the course to the student. - Or if the course is unavailable the student is
sent a rejection letter (DF).
31Level 0 Tips
- Generally move from top to bottom, left to right
- Minimize crossed lines
- Iterate as needed
- The DFD is often drawn many times before it is
finished, even with very experienced systems
analysts
32Level 0 and 1 DFD Building Procedure
- Level-0 DFD
- Identify what is being done between each input
and its corresponding output - Identify the processes
- Identify external data flows between external
entities and processes - Identify internal data flows between processes
and data stores
33Tips for Level 1 and Below
- Level-1 DFDs
- Sub-processes (primitive processes) of Level-0
processes - Sources for inputs and outputs listed at higher
level - List source and destination of data flows to
processes and stores within each DFD - Depth of DFD depends on overall system complexity
- Two processes generally dont need lower level
- More than seven processes become overly complex
and difficult to read
34Context diagram for the example
External entity Student Process Student
Administration process application Data Flows
Application Form, Confirmation/Rejection Letter
35Apply logical sequence of the system..
- A student (EE / DS) sends in an application form
(DF) containing their personal details, and their
desired course - The 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
for the course to the student. - Or if the course is unavailable the student is
sent a rejection letter (DF).
36Level-0 DFD
- External entity Student
- Processes Check course available, Enroll
student, Confirm Registration - Data Flows Application Form, Course Details,
Course Enrolment Details, Student Details,
Confirmation/Rejection Letter - Data Stores Courses, Students.
- Also see the Lemonade Stand example from the
class website
37(No Transcript)
38Rules in DFD Building
- Rule 1 Use only DFD notations to avoid
confusion - Rule 2 Use an action VERB to label a process
(because a process is an action !!!)
39Rules in DFD Building ...
- Rule 3 Must be one process associated with each
data flow
M
M
40Detail Rules in DFD Building ...
- Rule 3 Must be one process associated with each
data flow
M
N
M
N
41Detail Rules in DFD Building ...
- Rule 3 Must be one process associated with each
data flow.
42Detail Rules in DFD Building ...
- Rule 4 Shaded corner must appear in ALL
occurrences of a duplicated symbol in a same
diagram
Accounts Receivable
CUSTOMER
D3
CUSTOMER
D3
Accounts Receivable
43Detail Rules in DFD Building ...
- Rule 5 No process without output data flow
(black hole !!!)
44Detail Rules in DFD Building ...
- Rule 6 No process without input data flow
(miracle !!!)
45Detail Rules in DFD Building ...
- Rule 7 No need for routing (without
transforming) a data flow with a process (non
value-added activities !!!)
Info A
Info A
46Detail Rules 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
47Detail Rules in DFD Building ...
M
Context Diagram
P
N
M
1
2
P
3
N
Level-0 Diagram
48Detail Rules in DFD Building ...
- Rule 9 Data flows cannot split by themselves
49Detail Rules in DFD Building ...
- Rule 9 Data flows cannot split
50Detail Rules in DFD Building ...
- Rule 10 A data packet can combine many data
elements being transmitted at the same time to
the same destination
51Detail Rules in DFD Building ...
- Rule 11 Double-headed arrows are forbidden in-
flow (update) and out-flow (extract info) of a
data store are different
52Common Process Errors on DFDs