CSC/ECE 517 Summer 2008/wiki3 3 cd

From Expertiza_Wiki
Revision as of 01:43, 1 August 2008 by Cadedam (talk | contribs)
Jump to navigation Jump to search

Problem Statement

We introduced the idea of low coupling in Lecture 20, and used the Observer pattern as an example in Lecture 23. But we've really only scratched the surface on what there is to know about achieving low coupling. Browse the Web and the ACM DL for other information, both theoretical and practical, and produce a guide to what there is to know about low coupling. Be sure to highlight those aspects that would be appropriate for inclusion in CSC/ECE 517.

Low coupling.

Coupling in Software Design can be either High or Low. What this means is that object and classes in your code can exist indepently of other objects or classes. For example a system that has high coupling might experience the following issues:

  • Change in one module forces a ripple of changes in other modules.
  • Modules are difficult to understand in isolation.
  • Modules are difficult to reuse or test because dependent modules must be included.

Coupling in Theory

Coupling in Practice

File:Http://leansoftwareengineering.com/wp-content/uploads/2007/08/abc.jpg Coupling is easy to measure and understand because it is mechanical in nature and requires less interpretation. Suppose there are three components A, B, and C. A's behavior depends upon B in some way (any way), A’s behavior depends upon C in some way, and the behavior of B and C do not appear to depend upon anything else.

That is the coupling of the system and it is measureable.

Links

What is Coupling Really?


Back to the assignment page