CSC/ECE 517 Fall 2009/wiki1b 13 zz: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 6: Line 6:


Following are the list of few design principles quoted by him to avoid the pitfalls associated with unsuccessful software engineering,
Following are the list of few design principles quoted by him to avoid the pitfalls associated with unsuccessful software engineering,
[http://labs.cs.utt.ro/labs/ip2/html/lectures/5/lecture5.ppt Reuse/Release Equivalence Principle]
[http://labs.cs.utt.ro/labs/ip2/html/lectures/5/lecture5.ppt Reuse/Release Equivalence Principle],
[http://iface.wordpress.com/2006/04/08/common-closure-principle/ Common Closure Principle]
[http://iface.wordpress.com/2006/04/08/common-closure-principle/ Common Closure Principle],
[http://www.objectmentor.com/omSolutions/oops_what.html Common Reuse Principle]
[http://www.objectmentor.com/omSolutions/oops_what.html Common Reuse Principle],
[http://ifacethoughts.net/2006/04/10/acyclic-dependencies-principle/ Acyclic Dependencies Principle]
[http://ifacethoughts.net/2006/04/10/acyclic-dependencies-principle/ Acyclic Dependencies Principle],
[http://www.objectmentor.com/resources/articles/stability.pdf Staple Dependencies Principle]
[http://www.objectmentor.com/resources/articles/stability.pdf Staple Dependencies Principle],
[http://ifacethoughts.net/2006/04/20/stable-abstractions-principle/ Stable Abstraction Principle]
[http://ifacethoughts.net/2006/04/20/stable-abstractions-principle/ Stable Abstraction Principle].
 
The objective of this article is to discuss in detail Stable Dependencies Principle.

Revision as of 17:13, 15 November 2009

Bob Martin's Stable Dependencies Principle says, "The dependencies between packages should be in the direction of the stability of the packages. A package should only depend upon packages that are more stable than it is."

Bob Martin

Robert C. Miller defines the domain of design patterns to be the architecture of systems modules (packages, classes and components) and their interconnections. His design patterns address the four major reasons for failure of the systems: rigidity, fragility, immobility and viscosity [1].

Following are the list of few design principles quoted by him to avoid the pitfalls associated with unsuccessful software engineering, Reuse/Release Equivalence Principle, Common Closure Principle, Common Reuse Principle, Acyclic Dependencies Principle, Staple Dependencies Principle, Stable Abstraction Principle.

The objective of this article is to discuss in detail Stable Dependencies Principle.