Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Modules in Software Design

Similar presentations


Presentation on theme: "Software Modules in Software Design"— Presentation transcript:

1 Software Modules in Software Design

2 What is a Module? “A set of one or more contiguous program statements having a name by which other parts of the system can invoke it, and preferably having its own distinct set of variable names.” [Stevens, Myers…74]

3 “A module is a lexically contiguous sequence of program statements, bounded by boundary elements, having an aggregate identifier.” [Yourdon, Constantine 79]

4 Avantages Decomposition into easily dealt with pieces
can abstract call by descriptive naming break up program into system “architecture” reduce complexity that one inspector needs to view when considering a design concept debug by following trail of destruction through interfaces to independent module for repair what properties does a module need to accomplish all this?

5 Conservation of Complexity
Move complexity of singular program module to interfaces between less complex modules hierarchy and decomposition, “divide and conquer” Net complexity is conserved, but it is divided so as to give programmers some leverage?

6 Cohesion and Coupling (a “system” concept!)
the degree of interaction within a module Coupling the degree of interaction between modules

7 Module Cohesion Informational Functional


Download ppt "Software Modules in Software Design"

Similar presentations


Ads by Google