Modular and structure design



Module specifications,

Top-down and bottom-up design

Module coupling and cohesion

Module specifications: -

1. The way to improve the structure design known as module, by breaking down the problem for solving it into independent task.

2. Partitions of structured design program into small and independent modules. These modules are designed in top manner and details are shown in bottom

3. An approach called modularization and decomposition used by structured design to minimize the complexity and to manage the problem by subdividing it into smaller segments.

4. An important characteristic feature of a good design solution is layering the modules.

5. A layered design achieves control abstraction and is easier to understand and debug.

Advantages of Module specification: -

a. Module specifications are breakdown the problem into independent modules so the complexity of the problem can be minimized.

b. Each module which is independent can be easily assigned to the various members of the development team.

c. Independent module can be easily run and tested from other independently.

 Structured design: -

1. The data flow based methodology that helps in identifying the input and output of the developing system is said to be structured design.

2. To minimize the complexity and increase the modularity of a program is the main objective of structured design.

3. Structured design helps in describing the functional aspects of the system.

4. In structured design the system specifications acts as a basic graphically representing the flow of data and process of sequences that are involved in the development of the software with the help of Data Flow Diagram (DFDs).

5. The next step, after the developing of DFDs for the system is to develop the structure chart.

Top down designing approach: -

1. The top-down designing approach is a technique of breakdown a problem into major tasks and task can be performed.

2. Each major task is further divided or broken down into separate sub-task.

3. This process is done until each sub-task is sufficiently simple to be solved and to be written as a self contained module.

4. The top-down designing approach strategy uses the modular approach to develop the design of a system because of it starts from the top or the highest-level module and moves towards the lowest modules.

5. We initially describes the problem at the highest level in top-down designing approach that describe what must be done and it does not show how it must be done.

6. We can use this system throughout the system analysis and design process.

Advantages of Top-down approach: -

a. When we divide the problem into number of sub-problems we have made it easier to share problem development.

b. To debug a large program it is easier to debug a number of smaller units of program rather than one big program.

c. Problems whose solution is not prepared by using this approach we can delay decision on problems.

d. Using this designing approach, it allows programmer to remain on the top a problem and view the developing solution, the solution always proceeds from higher level to the lowest level thats why programmer remains on the top of problem.

e. An ideal structure for managing the implementation of a computer program using team of the programmer is top-down designing.


Bottom – up designing approach

1. Bottom-up design is starts from the bottom or the most basic level modules and moves towards the highest level i.e. from bottom to top.

2. The strategy follows by the bottom-up approach is that the modular approach to develop the design of the system.

3. In large and complex problem, it is difficult to see how the whole thing can be done so it may easier to solve the problem by part or individual.

4. In this designing approach the common and easy aspects are solved and then more difficult task or problem is solved.

5. At last, all problems are gathered together to form complete solution, all this process is known as bottom-up designing approach.

6. Due to its bottom-up approach it suffers from disadvantages is that the part of the program may not fit together very easily and there may be lack of consistency between modules and reprogramming have to be done.

7. For bottom-up design approach there are some technique to done this approach: -

a. The most basic or the lowest levels of modules are identified.

b. Theses lowest levels of modules are then grouped together based on the function performed by each module to form the next higher-level modules.

c. Again these higher level modules are further combined to form the next higher-level modules.

d. This process is repeating continuously until the main module of system development process is achieved.

Module Coupling and Cohesion: -

1.         Modules: -

a. Modules are represented by rectangle box with its module name.

b. When we defining the general purpose of each program then it is divided into modules.

c. Each module will perform a single task.

d. Each upper level module can use one or more than one lower level modules until the desired function is performed.

2. Connectors: -

Connectors are the connections between modules which are represented using links and it is drown by an arrow line in downward direction.


3. Coupling: -

a. The strength of relationship between modules in the system termed as coupling and good software have low coupling.

b. The measurement of the independence of components and the degree to which two distinct modules are bound together is measured by the coupling.

c. The degree of dependency of each module of system development on the other is defined by the coupling.

d. In coupling each module must have simple, clean interface with other modules. The minimum number of data elements should be shared between them i.e. modules.

There is some various type of coupling techniques shown in the figure:

Types of coupling

4. Cohesion: -

a. Module cohesion defines to the degree to which the elements of a module belong together and used to denote the intra module strength.

b. Cohesion is a relationship among elements within a module and it measures the strength of relationship between pieces of functionality within a given module.

c. To get modular design a system designer should aim at minimizing coupling and maximizing cohesion.

d. Minimizing coupling and low coupling means that low interdependence between modules and high cohesion or maximizing cohesion means that high interrelationship within the elements of a single module.

e. A system designer must ensure that each module performs a specific function and can be developed independently

Some other link related to this topic (Very Very Important)

Types of cohesion

Difference between coupling and cohesion

For more information whats_app:- 8873466244

For more information contact us: - Click me

Or follow our FACEBOOK page @diploma.1234


  1. Thank you so much sir.....i appereciate u for making such a good note....

  2. Tq sir.. it's very helpful fr me

  3. Tq you so much sir , this is very nyc and helpful blog for cse dept ,keep it up

    1. You are most welcome and thank you for your comment!!


Please do not enter any spam link in the comment box and use English and Hindi language for comment.

Latest Update

Queue data structure

Popular Posts