Download presentation
Presentation is loading. Please wait.
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
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.