Want to create interactive content? It’s easy in Genially!

Get started free

1_Jubair_5 Presentation

Luke Geyer

Created on October 21, 2024

Start designing with a free template

Discover more than 1500 professional designs like these:

Transcript

This can make systems less complex and more customisable, as well as improve maintanability of larger systems

which is a design principle that breaks down a system in to internchangble parts that we call modules

Define Modular Design

A. How closely related parts of a module or class are.

What is Cohesion?

Coupling is a measure of how interconnected modules are. High coupling means lots of interconnections (BAD) Low Coupling means not many interconnections (GOOD)

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

A. Modular design ensures each code module works independently of the rest of the code. A. Helps to pinpoint the source of a bug or problem with the code. A. Also each person will not need to wait for another person to be done in order to continue their work.

Why is Modular Design Important?

If you can identify modules and test them independently of the rest of the code

How will you know if your design is modular?

Layering is a special case of modular design Modules in an upper layer are allowed to use the modules in the lower layer below it

What do you understand by layered design?

Network protocols also use layers
Operating systems often use a layered design (Hardware, kernel, applicaitons)

2 Examples of layered design in real life complex software

A. Provides a blueprint for constructing code. It makes it easier for groups to focus on one part of the code.
A. A layer can be substituted for another layer. Helps update the code
A. It is an important tool for managing complexity. Helps someone understand the functionality one layer at a time.

What are a few outstanding benefits of using layered design?