Software Design Development - Design Flashcards
Structure Diagrams
Description:
Visual representations of a system’s structure, showing components and their relationships.
Use:
Illustrate how different parts of a software system are organized.
Examples: UML class diagrams, entity-relationship diagrams.
Flowcharts
Description:
Diagrams that depict the flow of control or data in a process, often using symbols and arrows.
Use:
Visualize the sequence of actions and decisions in a program.
Aid in understanding complex processes.
Examples: Process flowcharts, decision flowcharts.
Pseudocode
Description:
A simplified and human-readable description of a program’s logic, using natural language with some programming-like constructs.
Use:
Plan and outline the logic of a program before coding.
Bridge the gap between design and implementation.
Example;
IF temperature > 30 THEN
PRINT “It’s hot outside.”
ELSE
PRINT “It’s cool outside.”
END IF
Creating a Design Using These Techniques
Process:
Based on the purpose and functional requirements, choose the appropriate design technique (e.g., flowchart, pseudocode).
Create a visual or textual representation of the software’s structure or logic.
Ensure that the design accurately reflects how the software will function.
This design becomes a blueprint for implementation.
Structure Diagrams in Software Development
Definition:
Are a visual design technique used to show the steps needed to solve a problem.
Purpose:
Visual design technique to illustrate the steps required to solve a problem or accomplish a task.
Reading Structure Diagrams
Reading Process:
Start at the top of the diagram.
Progress from top to bottom.
If a level has multiple branches, read from left to right before moving to the next level.
Common Symbols in Structure Diagrams
Symbols:
Rectangle: Represents a process or action.
Diamond: Represents a decision or branching point (usually with a yes/no outcome).
Ellipse: Indicates the start or end of a process.
Arrows: Show the flow of control or direction.
Using Structure Diagrams
Purpose:
Visualize and communicate the sequence of steps and decisions in a process.
Aid in understanding and planning complex procedures.
Analysis Phase’s Role in Design
Purpose:
The information gathered during the analysis phase informs the design phase.
Purpose and functional requirements established during analysis guide the design of the software.
Example Analysis Information
Purpose (from Analysis):
Create software for user to enter ten numbers, validate each number (0 to 100), and calculate a running total, outputting the final total.
Usage in Structure Diagrams
Incorporation:
When creating structure diagrams, the stated purpose and functional requirements influence the design of steps and decision points.
Design diagrams should address how the software will achieve the specified goals.
Flowcharts in Software Development
Purpose:
are another example of a visual design technique.
Use:
Flowcharts are a visual design technique used to represent the sequence of actions, decisions, and processes in a software solution.
Symbols Used in Flowcharts
Symbols:
Start/End: Represents the beginning or end of a process.
Rectangle: Denotes a process or action step.
Diamond: Signifies a decision or branching point (usually with yes/no outcomes).
Parallelogram: Represents input or output (e.g., user input or data output).
Arrows: Indicate the flow of control or direction.
Connectors: Used to link different parts of a flowchart.
Terminal: Represents a connector to another part of the flowchart.
Advantages of Flowcharts
Benefits:
Provide a clear visual representation of process logic.
Aid in understanding and communicating complex procedures.
Help identify errors and bottlenecks in a process.
Pseudocode in Software Development
Definition:
Pseudocode is a written design notation used to plan algorithms without relying on any specific programming language.
Description:
It’s not natural language like English and not formal code but bridges the gap between human-readable and formal code.