Structure Charts, Pseudocode and Flowcharts in Software Design

Chapter 18

Structure Charts, Pseudocode and Flowcharts in Software Design

Software design becomes much easier when we can represent the solution before writing the final program. Structure charts help us understand modules, pseudocode helps us describe logic in simple steps, and flowcharts help us see the flow of processing visually.

What are Structure Charts, Pseudocode and Flowcharts?

Structure charts show the hierarchical organisation of software modules and their relationships.

Pseudocode expresses program logic using simple structured statements without following the strict syntax of a programming language.

Flowcharts represent the sequence of processing using standard graphical symbols and arrows.

Why Do Students Confuse These Three?

Structure Charts, Pseudocode and Flowcharts in Software Design

All three techniques are used before or around coding, so students often feel that they represent the same thing.

But their purpose is different.

Structure

Structure Chart

Shows which modules exist and how they are organised.

Logic

Pseudocode

Shows what logical steps a module or algorithm performs.

Visual Flow

Flowchart

Shows how control moves from one processing step to another.

Structure → Logic → Flow

Structure Chart → Pseudocode → Flowchart

Understand All Three with One Simple Example

Suppose we are designing a student result system.

The system needs to:

  • Read marks.
  • Calculate total.
  • Calculate percentage.
  • Decide whether the student passed.
  • Display result.

We can represent the same problem in three different ways.

Structure Chart View

Result Processing System
Read Marks
Calculate Result
Display Result

The structure chart tells us that the complete system has been divided into three modules.

Pseudocode View

Student Result Pseudocode
START

INPUT marks1, marks2, marks3

total = marks1 + marks2 + marks3

percentage = total / 3

IF percentage >= 40 THEN
    result = "PASS"
ELSE
    result = "FAIL"
END IF

DISPLAY total
DISPLAY percentage
DISPLAY result

END

Pseudocode focuses on the processing logic.

Flowchart View

Start
↓
Input Marks
↓
Calculate Total & Percentage
↓
Percentage ≥ 40?
↓
Set PASS or FAIL
↓
Display Result
↓
End

The flowchart makes the order of steps visible.

What is a Structure Chart?

Structure Chart Definition

A structure chart is a hierarchical diagram used in structured software design to show the decomposition of a system into modules and the calling relationships between those modules.

It gives a high-level picture of how the software has been divided into manageable parts.

Purpose of a Structure Chart

Structure charts are mainly used to show:

  • Major modules of the software.
  • Parent and child module relationships.
  • Which module calls another module.
  • Data passed between modules.
  • Control information passed between modules.
  • Overall modular organisation of the program.

Basic Elements of a Structure Chart

Module

Usually shown as a rectangular box. It represents one software module or function.

Connection Line

Shows that one module invokes or uses another module.

Data Couple

Shows data being passed from one module to another.

Control Couple

Shows control information such as a flag or condition passed between modules.

Data Couple in a Structure Chart

A data couple represents information that one module passes to another.

Order Module
orderAmount →
← paymentStatus
Payment Module
Example:

Order Module sends orderAmount to Payment Module.

Payment Module returns paymentStatus.

Control Couple in a Structure Chart

A control couple represents information that affects the execution or decision behaviour of another module.

Main Controller
isAdmin = true →
User Module

Here, isAdmin is not ordinary business data only. It controls which operation another module may perform.

Hierarchy in a Structure Chart

Structure charts are usually read from top to bottom.

Higher-level modules control or coordinate lower-level modules.

Online Shopping System
User Management
Order Management
Payment Management

Fan-In and Fan-Out in Structure Charts

Fan-In

Fan-in refers to the number of modules that call or use a particular module.

Example:

If Login Validation is reused by Student Login, Teacher Login and Admin Login, that validation module has multiple incoming uses.

Fan-Out

Fan-out refers to the number of lower-level modules directly controlled or called by one module.

Example:

If Order Processing directly calls Payment, Inventory, Invoice, Notification, Shipping and Logging modules, its fan-out is relatively high.

Very high fan-out can make a module difficult to understand and maintain, although the acceptable level depends on the design context.

Characteristics of a Good Structure Chart

✓
Modules have clear responsibilities.
✓
Hierarchy is easy to understand.
✓
Data movement is clearly indicated where needed.
✓
Control information is not confused with normal data.
✓
Modules have high cohesion.
✓
Unnecessary coupling is avoided.

Structure Chart vs Data Flow Diagram

Students often confuse Structure Charts with Data Flow Diagrams (DFDs).

Basis Structure Chart DFD
Main Focus Software module structure Movement and transformation of data
Shows Modules and calling relationships Processes, data flows, stores and external entities
Used Mainly In Software design System/requirement analysis
Hierarchy Module hierarchy Process decomposition

Structure Chart vs Flowchart

Basis Structure Chart Flowchart
Main Purpose Show modular organisation Show sequence of control or processing
Focus Modules Steps and decisions
Main Shape Module boxes Different symbols for different operations
Question Answered Which modules exist and how are they related? What happens first, next and under which condition?

What is Pseudocode?

Pseudocode Definition

Pseudocode is an informal way of describing an algorithm using simple English-like statements and programming-style control structures without following the exact syntax of a programming language.

Pseudocode allows us to think about logic before worrying about semicolons, brackets, data types or language-specific syntax.

Why Do We Use Pseudocode?

Easy to Read

Logic can be understood even without knowing a specific programming language.

Easy to Modify

Algorithm steps can be changed before implementation begins.

Focuses on Logic

Developers concentrate on the solution rather than language syntax.

Common Pseudocode Conventions

There is no single programming-language syntax for pseudocode, but good pseudocode should remain clear and consistent.

START / END

Indicate the beginning and ending of an algorithm when useful.

INPUT / READ

Represent data received from the user or another source.

OUTPUT / DISPLAY

Represent output produced by the algorithm.

IF / ELSE

Represent conditional decision making.

FOR / WHILE

Represent repetition or loops.

CALL

Represent execution of another procedure or module.

Sequence in Pseudocode

Sequence means statements are executed one after another.

Sequence Example
START

INPUT length
INPUT width

area = length * width

DISPLAY area

END

Selection in Pseudocode

Selection is used when different actions are required under different conditions.

IF-ELSE Example
INPUT age

IF age >= 18 THEN
    DISPLAY "Eligible"
ELSE
    DISPLAY "Not Eligible"
END IF

Multiple Selection in Pseudocode

Grade Example
INPUT marks

IF marks >= 80 THEN
    grade = "A"
ELSE IF marks >= 60 THEN
    grade = "B"
ELSE IF marks >= 40 THEN
    grade = "C"
ELSE
    grade = "FAIL"
END IF

DISPLAY grade

Iteration in Pseudocode

Iteration means repeating one or more steps.

FOR Loop Example
FOR number = 1 TO 5
    DISPLAY number
END FOR
WHILE Loop Example
number = 1

WHILE number <= 5
    DISPLAY number
    number = number + 1
END WHILE

Rules for Writing Good Pseudocode

✓
Write one clear action per line where possible.
✓
Use meaningful names.
✓
Indent nested logic clearly.
✓
Avoid language-specific syntax unless required.
✓
Keep conditions easy to read.
✓
Show loops and decisions clearly.

Bad Pseudocode vs Good Pseudocode

Poor Pseudocode:

Check everything and calculate result then if okay show it otherwise do error.

Better Pseudocode:
Clearer Version
INPUT marks

IF marks < 0 OR marks > 100 THEN
    DISPLAY "Invalid Marks"
ELSE
    IF marks >= 40 THEN
        DISPLAY "PASS"
    ELSE
        DISPLAY "FAIL"
    END IF
END IF

Complete Pseudocode Example: ATM Withdrawal

ATM Withdrawal Logic
START

INPUT accountNumber
INPUT pin

IF credentials are invalid THEN
    DISPLAY "Invalid Login"
    STOP
END IF

INPUT withdrawalAmount

IF withdrawalAmount <= 0 THEN
    DISPLAY "Invalid Amount"

ELSE IF withdrawalAmount > accountBalance THEN
    DISPLAY "Insufficient Balance"

ELSE
    newBalance = accountBalance - withdrawalAmount

    UPDATE accountBalance

    DISPENSE cash

    DISPLAY newBalance
END IF

END

Advantages of Pseudocode

  • Easy to understand.
  • Independent of programming language.
  • Helps plan algorithm logic.
  • Easy to convert into code.
  • Useful for communication among developers and students.
  • Helps identify missing cases before coding.

Limitations of Pseudocode

  • No single universal syntax exists.
  • It cannot normally be executed directly by a computer.
  • Very large pseudocode can become difficult to maintain.
  • Poorly written pseudocode may still be ambiguous.
  • It does not automatically show system structure.

What is a Flowchart?

Flowchart Definition

A flowchart is a graphical representation of an algorithm, process or program logic in which different symbols represent different types of operations and arrows show the direction of flow.

Important Flowchart Symbols

Start / End
Terminal Symbol

Represents the beginning or end of a process.

Process
Process Symbol

Represents calculation, assignment or processing activity.

Input
Input / Output Symbol

Represents data entering or leaving the process.

Yes?
Decision Symbol

Represents a condition that can lead to different paths.

A
Connector

Connects separated parts of a flowchart and helps reduce long crossing lines.

→
Flow Line

Shows the direction in which processing moves.

Rules for Drawing a Good Flowchart

✓
Use standard symbols consistently.
✓
Show a clear start and end.
✓
Use arrows to show direction.
✓
Label decision paths such as Yes and No.
✓
Avoid unnecessary crossing lines.
✓
Keep each symbol short and readable.

Flowchart Example: Find the Larger Number

Start
↓
Input A and B
↓
A > B?
↓
Display Larger Value
↓
End

Basic Logic Patterns in Flowcharts

Sequence

Steps execute one after another.

Selection

A decision chooses one of two or more paths.

Iteration

A group of steps repeats while a condition is satisfied.

Flowchart Logic for a Loop

Start
↓
i = 1
↓
i ≤ 5?
↓ Yes
Display i
↓
i = i + 1
↺ Return to Condition

Advantages of Flowcharts

  • Easy to understand visually.
  • Shows sequence clearly.
  • Makes decision paths visible.
  • Useful for explaining algorithms.
  • Can reveal missing or repeated logic.
  • Helpful for documentation and teaching.

Limitations of Flowcharts

  • Large flowcharts can become difficult to read.
  • Updating complex diagrams can take time.
  • They focus mainly on processing flow, not complete software architecture.
  • Too many branches may make the diagram confusing.
  • Detailed object relationships are better represented using other design models.

Pseudocode vs Flowchart

Basis Pseudocode Flowchart
Form Textual Graphical
Main Purpose Describe algorithm logic Visualise logic and flow
Editing Usually easy Complex diagrams may require more effort
Best For Detailed logical steps Understanding sequence and decisions visually
Programming Syntax Not strict Not programming language syntax

Structure Chart vs Pseudocode vs Flowchart

Basis Structure Chart Pseudocode Flowchart
Main Focus Module organisation Algorithm logic Visual processing flow
Representation Hierarchical modules Structured text Graphical symbols
Shows Decisions Not mainly Yes Yes
Shows Modules Yes Not primarily Not primarily
Shows Execution Sequence Not detailed Yes Very clearly
Typical Use Structured software design Algorithm planning Algorithm/process representation

How These Three Work Together

A useful way to understand them is to see them as different views of one solution.

Break the System into Modules

Use a structure chart to understand the major module hierarchy.

Select One Module

Choose one module whose internal processing needs to be designed.

Write Pseudocode

Describe the module's processing logic using simple structured statements.

Draw the Flowchart

Convert important sequence, decision and loop logic into a visual diagram.

Convert into Code

Use the final design as guidance while implementing the module.

Complete Example: Online Order Processing

Step 1: Structure Chart

Process Order
Validate Order
Process Payment
Save Order
Send Confirmation

Step 2: Pseudocode

Order Processing Pseudocode
START

INPUT order

IF order is invalid THEN
    DISPLAY "Invalid Order"
    STOP
END IF

paymentStatus = PROCESS PAYMENT

IF paymentStatus = SUCCESS THEN
    SAVE order
    SEND confirmation
    DISPLAY "Order Confirmed"
ELSE
    DISPLAY "Payment Failed"
END IF

END

Step 3: Flowchart

Start
↓
Input Order
↓
Valid Order?
↓ Yes
Process Payment
↓
Payment Success?
↓ Yes
Save Order & Send Confirmation
↓
End

Relation with Low-Level Design

Structure charts, pseudocode and flowcharts can support Low-Level Design, but they represent different details.

  • Structure charts help show module decomposition.
  • Pseudocode helps specify processing inside a module.
  • Flowcharts help visualise logic and control flow.
Important:

These techniques do not replace every other design model. Class diagrams, sequence diagrams, state diagrams and interface specifications may also be required depending on the software.

Common Mistakes Students Make

Mistake 1: Drawing a Flowchart as a Structure Chart

A structure chart shows module hierarchy. It should not be used mainly to show step-by-step algorithm flow.

Mistake 2: Showing Data Stores in Structure Charts Like a DFD

Structure charts and Data Flow Diagrams serve different purposes.

Mistake 3: Writing Real Programming Code as Pseudocode

Pseudocode should focus on logic without unnecessary language syntax.

Mistake 4: No Indentation in Pseudocode

Indentation helps make nested IF statements and loops easy to understand.

Mistake 5: Missing Yes/No Labels in Flowcharts

Decision paths should make the meaning of each direction clear.

Mistake 6: Too Many Lines Crossing

Use connectors when a large flowchart becomes difficult to follow.

Mistake 7: Very Large Structure Chart Modules

A module that performs many unrelated responsibilities may need further decomposition.

Mistake 8: Treating All Three as Interchangeable

Each technique answers a different design question.

Advantages of Structure Charts

  • Shows software modularity clearly.
  • Helps understand parent-child module relationships.
  • Supports decomposition of a large program.
  • Can help identify excessive module dependencies.
  • Useful for structured design documentation.

Limitations of Structure Charts

  • Do not show detailed algorithm flow.
  • Do not show detailed timing behaviour.
  • Large systems may produce very large charts.
  • Not ideal for showing detailed object interactions.

When Should You Use Each Technique?

Need Best Technique
Show module hierarchy Structure Chart
Plan detailed algorithm logic Pseudocode
Explain logic visually Flowchart
Show input, processing and decision flow Flowchart
Prepare logic before programming Pseudocode
Show software decomposition Structure Chart

Exam-Oriented Definition of Structure Chart

A structure chart is a hierarchical design diagram that shows the decomposition of a software system into modules and represents relationships and communication between those modules.

Exam-Oriented Definition of Pseudocode

Pseudocode is an informal, programming-language-independent method of describing an algorithm using simple English-like statements and structured control constructs.

Exam-Oriented Definition of Flowchart

A flowchart is a graphical representation of a process or algorithm in which standard symbols are connected by arrows to show the sequence of processing and decision paths.

2 Marks: What is a Data Couple?

A data couple represents data passed between two modules in a structure chart, such as an amount, ID or calculated value.

2 Marks: What is a Decision Symbol?

A decision symbol in a flowchart is generally shown using a diamond and represents a condition that can cause control to follow different paths such as Yes or No.

5 Marks: Explain Structure Chart

A structure chart shows the hierarchical organisation of software modules. It represents parent-child relationships, module calls and the data or control information exchanged between modules.

Important concepts include:

  1. Modules
  2. Calling relationships
  3. Data couples
  4. Control couples
  5. Fan-in
  6. Fan-out

5 Marks: Explain Pseudocode

Pseudocode is used to describe algorithm logic without the strict syntax of a programming language.

It commonly uses constructs such as INPUT, OUTPUT, IF, ELSE, FOR and WHILE. It is easy to understand, language-independent and useful before coding.

5 Marks: Explain Flowchart Symbols

  1. Oval / Terminal: Start or end.
  2. Rectangle: Processing step.
  3. Parallelogram: Input or output.
  4. Diamond: Decision.
  5. Arrow: Direction of flow.
  6. Connector: Connects separated flowchart sections.

10 Marks: Explain Structure Charts, Pseudocode and Flowcharts

For a strong long-answer response, use this order:

  1. Define software design representation.
  2. Define Structure Chart.
  3. Draw a small structure chart.
  4. Explain module, data couple and control couple.
  5. Explain fan-in and fan-out.
  6. Define pseudocode.
  7. Explain sequence, selection and iteration.
  8. Write one pseudocode example.
  9. Define flowchart.
  10. Explain important flowchart symbols.
  11. Draw one flowchart.
  12. Compare all three techniques.
  13. Write advantages and limitations.
  14. Finish with a short conclusion.

Easy Memory Tricks

S = Structure

Structure Chart tells us how modules are organised.

P = Plain Logic

Pseudocode explains logic in simple statements.

F = Flow

Flowchart shows the movement of control visually.

S-S-I

Sequence – Selection – Iteration

Quick Revision Notes

  • A structure chart shows software modules and their hierarchy.
  • It is mainly used in structured software design.
  • A data couple represents data passed between modules.
  • A control couple carries information that affects module execution.
  • Fan-in is related to how many modules use a module.
  • Fan-out is related to how many modules are directly called by a module.
  • A structure chart is not the same as a DFD.
  • Pseudocode describes algorithm logic using simple structured statements.
  • Pseudocode is not tied to strict programming-language syntax.
  • Main logic patterns are sequence, selection and iteration.
  • Flowcharts represent logic graphically.
  • Oval represents Start or End.
  • Rectangle represents processing.
  • Parallelogram represents input/output.
  • Diamond represents decision.
  • Arrows show the direction of control flow.
  • Structure Chart = Modules.
  • Pseudocode = Text Logic.
  • Flowchart = Visual Logic.

Frequently Asked Questions

What is a structure chart in software engineering?

A structure chart is a hierarchical diagram that shows software modules, their calling relationships and communication between modules.

What is pseudocode?

Pseudocode is an informal method of describing algorithm logic using simple structured statements without strict programming-language syntax.

What is a flowchart?

A flowchart is a graphical representation of a process or algorithm using standard symbols connected by arrows.

What is the main difference between a structure chart and a flowchart?

A structure chart shows the organisation of software modules, while a flowchart shows the sequence of processing and decisions.

What is the difference between pseudocode and a flowchart?

Pseudocode represents logic using text, while a flowchart represents the same type of logic visually using symbols and arrows.

What is a data couple?

A data couple is data passed from one software module to another in a structure chart.

What is a control couple?

A control couple is control information passed between modules that affects how another module performs its processing.

What is fan-in?

Fan-in describes how many modules use or call a particular module.

What is fan-out?

Fan-out describes how many lower-level modules are directly called or controlled by one module.

What are the three basic logic structures?

The three basic logic structures are sequence, selection and iteration.

Which symbol is used for decision in a flowchart?

A diamond symbol is commonly used to represent a decision.

Which flowchart symbol represents input and output?

A parallelogram is commonly used for input and output operations.

Can pseudocode be executed directly?

Normally no. Pseudocode is intended for planning and communicating logic, not direct execution by a computer.

Is a structure chart the same as a DFD?

No. A structure chart focuses on software module organisation, while a DFD focuses on data flow and transformation.

Which is better: pseudocode or flowchart?

Neither is always better. Pseudocode is convenient for detailed textual logic, while a flowchart is useful when the visual sequence and decisions need to be understood quickly.

Conclusion

Structure charts, pseudocode and flowcharts are three useful ways to represent software design and logic before implementation.

A structure chart focuses on modular organisation. It tells us which modules exist, how they are arranged and how they communicate.

Pseudocode focuses on algorithm logic. It lets developers describe sequence, decisions and loops in a simple form without worrying about programming-language syntax.

Flowcharts make this logic visual by using symbols and arrows to show processing, decisions, input/output and control flow.

The most important thing is not to confuse their roles. Each technique gives a different view of the software and can be used together when a design needs both structural and logical clarity.

Final Memory:

Structure Chart = Who calls whom?

Pseudocode = What logic is performed?

Flowchart = How does the logic flow?

Post a Comment

0 Comments
* Please Don't Spam Here. All the Comments are Reviewed by Admin.
Join Telegram Exam updates and free resources