System Analysis Study Guide

Course Learning Outcome

Chapter 3: System Analysis

3.1 Conduct Preliminary Analysis

3.2 Understand Data and Process Modelling

  • Overview of Data and Process Modelling Concepts and Tools:

    • Data Flow Diagrams (DFDs)

    • Data Dictionary

    • Process Descriptions

  • Symbols Used in Data Flow Diagrams:

    • Understand the meanings and uses of various symbols

  • Drawing Data Flow Diagrams:

    • Draw in a sequence from general to specific

  • Leveling and Balancing DFDs:

    • Ensure consistency

  • Purpose of Data Dictionary:

    • Usage and contents

    • Relationship between logical and physical models

Data and Process Modelling

  • Purpose of Data and Process Modelling:

    • Techniques are used to develop a logical model of the proposed system and document requirements.

    • Logical Model: Shows what the system must do.

    • Physical Model: Describes how the system will execute its functions.

Data Flow Diagrams (DFD)

  • Definition: DFDs illustrate how an information system transforms input data into useful information.

    • Key Characteristics:

    • Displays data movement through the information system.

    • Does not indicate program logic or processing steps.

    • Focuses on what the system does not how it does it.

  • Basic Symbols in DFDs:

    • Processes: Represented by rectangles with rounded corners showing input data and output data.

    • Data Flows: Illustrated by lines with arrowheads indicating the movement of data.

    • Data Stores: Shown as flat rectangles to indicate where the system stores data for future use.

    • External Entities: Rectangles representing outside sources or destinations of data.

  • Symbol Sets:

    • Gane and Sarson Symbol Set

    • Yourdon Symbol Set

  • Symbols are denoted in all capital letters for clarity.

DFD Symbols

1. Process

  • Functionality: Receives input data and produces output with differing content or form.

    • Contains business logic or rules.

    • Symbol: Rectangle with rounded corners; names inside contain a verb and noun.

2. Data Flow

  • Description: Path for data movement between different parts of the system.

    • Symbol: Line with an arrowhead; names consist of nouns and adjectives, as needed.

  • Special Cases:

    • Spontaneous Generation: A process that generates output without an input (shown as a special case in DFD).

    • Black Hole: A process with no output.

    • Gray Hole: Insufficient input to produce an output.

3. Data Store

  • Definition: Represents data stored within the system for later use by processes.

    • Importance of logical over physical characteristics.

    • Symbol: A flat rectangle with an open right side indicating stored data.

    • Naming convention: Plural nouns with adjectives, if necessary.

4. Entity

  • Definition: External factors (people, places, things, events) for which data is collected.

    • Symbol: Rectangle that is sometimes shaded for clarity.

    • Differentiate between sources (suppliers of data) and sinks (receivers of data).

Guidelines for Drawing DFDs

  • Best Practices:

    • Keep context diagrams on one page.

    • Use the system’s name as the process name in a context diagram.

    • Ensure unique names within sets of symbols (e.g., STUDENT).

    • Avoid crossing lines; limit symbols per DFD to maintain clarity.

    • Obtain user feedback to ensure accurate and understandable models.

Creating DFDs

Step 1: Draw a Context Diagram

  • Top-level overview showing system boundaries and scope.

  • Important Note: Do not show data stores in context diagrams as they are internal to the system.

Step 2: Draw a Diagram 0 DFD

  • Zooms in on major processes, data flows, and data stores.

  • Retains connections from the context diagram.

Step 3: Draw Lower-Level Diagrams

  • Requires leveling and balancing techniques.

  • Leveling: Series of increasingly detailed diagrams until all functional primitives are identified.

  • Balancing: Ensures input/output data flows align across DFDs.

Data Dictionary

  • Definition: A central repository of information about the system’s data components.

  • Purpose: Collect, document, and organize facts about data flows, stores, entities, and processes.

  • Elements Documented in Data Dictionary: Data Elements, Data Flows, Data Stores, Processes, Entities, Records, Reports.

Process Description Tools

  • Documents details of functional primitives (specific processing step sets).

  • Common tools include Structured English, Decision Tables, and Decision Trees.

Modular Design

  • Based on three logical structures for processes:

    • Sequence: Completion of steps in a specific order.

    • Selection: Process completion based on condition outcomes.

    • Iteration (Looping): Repetition of steps until a condition changes.

Structured English

  • A logical subset that describes processes clearly.

  • Must include rules of sequence, selection, and iteration. Indentation for readability is essential.

Decision Table

  • A logical structure featuring all combinations of conditions and resulting actions.

  • Best used for complex conditions with various combinations of possibilities.

  • Classifications of Conditions:

    • One Condition: Two possibilities (Yes/No).

    • Two Conditions: Every possibility must be listed clearly.

    • Additional conditions exponentially increase combinations.

Decision Tree

  • Graphical representation of logical structures akin to a tree.

  • Decisions and outcomes displayed left to right.

  • Choice between tables and trees based on preference.

Logical vs. Physical Models

  • Logical Models: Designed using structured analysis tools for new systems.

  • Physical Models: Show how system requirements are practically implemented.

Summary of Data and Process Modelling

  • Concepts and tools related to data and process modelling including:

    • Data flow diagrams

    • Data dictionaries

    • Process descriptions

  • Emphasis on learning the symbols used in DFDs, drawing techniques, leveling and balancing DFDs, and understanding the contents of a data dictionary; along with the relationship between logical and physical models.