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

Over 30 million people build interactive content in Genially.

Check out what others have designed:

Transcript

Define Modular Design

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

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

What is Cohesion?

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

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

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

Why is Modular Design Important?

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.

How will you know if your design is modular?

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

What do you understand by layered design?

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

2 Examples of layered design in real life complex software

Operating systems often use a layered design (Hardware, kernel, applicaitons)

Network protocols also use layers

What are a few outstanding benefits of using layered design?

A. It is an important tool for managing complexity. Helps someone understand the functionality one layer at a time.

A. A layer can be substituted for another layer. Helps update the code

A. Provides a blueprint for constructing code. It makes it easier for groups to focus on one part of the code.