Design Phase

Design phase

Author:Author ImageZachary Kublalsingh

Edu Level: Unit2

Date: Jul 17, 2024

⏱️Read Time:



  • Design process

    Transforming the customer's requirements into a form implementable using a programming language.
    • Architectural design

The specification of the major components of the systems, their responsibilities, properties, interfaces and the relationships and interactions between them.

  • Interface design

The specification of the interaction between the system and its environment. It is focused on the dialogue between the system and the users and other systems it interacts with.

  • Data structure design

Starts with specification of the program and then leads to a detailed design expressed in pseudocode.

  • Algorithm design

Creating step-by-step procedures or instructions for a computer to follow while performing a task or solving a problem.

 

Tools and Techniques

  • Structure charts

Depict the relationships between modules, functions and subfunctions enabling developers to design and maintain complex systems

  • CASE tools

Aid in the developmental system to produce high-quality, maintainable software.

  • Semantic Data Models (Entity-Relationship Diagrams)

Provide a visual representation of data structure and relationships.

 

Basic principles in each of the Design Methods:

  • Top-down

Breaks down system into smaller components and designs each component until the entire system is defined.

  • Bottom-up

Starts with the smallest components and builds all the way up to the larger ones.

  • System structuring

Breaks down a system into smaller and smaller components and defines the relationships between the components.

  • Sub-systems

A group of components that work together to perform a specific function.

  • Modules

A unit of code that performs a specific function.

  • Programs

A collection of modules that are combined to perform a specific task.

 

Design Strategies

FUNCTIONAL OBJECT ORIENTED
Simple Complex
Not likely to change over time Likely to change
Smaller projects Larger projects
Not easily scalable Easily scalable



Clarity and Simplicity

  • Clean and simple design
  • Clear Concise language
  • Avoid clutter

Consistency

  • Same font, colors etc.
  • Terminology
  • Buttons, menus and forms

Hierarchy and Organization

  • Use visual cues to establish clear hierarchy of information
  • Logical and intuitive organization
  • Use headings, subheadings and whitespace

Feedback and error prevention

  • Clear and timely to user actions
  • Clear error and warning messages
  • Easy to und0/correct mistakes
  • Help button/menu

Accessibility

  • Suitable for disabilities
  • High contrast colors
  • Alternative text for images

Testing and Iteration

  • Test with real users
  • Change based on feedback

Dont't forget to check out our Instagram Page!
edukatte_tt