Want to make creations as awesome as this one?

Transcript

TOPIC: MODULAR DESIGN

Q1: Define Modular Design

A way to break down more complex systems into small components called modulesThe code is organized into modules so that each module has high cohesion and modules have low coupling between them

What is Cohesion?

This is a measure of how focused the responsibilities of a single module are.

What is Cohesion?

This is a measure of how focused the responsibilities of a single module are.

What does it mean for a module to have low coupling?

Low coupling means not many interconnections

What are the three main reasons that modular design is important

  1. you can keep to budget
  2. system will be maintainable
  3. system will be reliable

How will you know if your design is modular?

if you can identify modules and test each module independently of the rest of the code

TOPIC: Layered Design

What do you understand by layered design?

Layered design is a software design pattern that organizes a system into horizontal layers, each with a specific role and responsibility

Give two examples of layered design in real-life complex software

  1. Operating System
  2. Networking

What are a few outstanding benefits of using layered design?

improved testability and maintainability of the applicationmanages complexity enhaced portabilityassignment of specilazed teams to specific layers