

Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Community
Ask the community for help and clear up your study doubts
Discover the best universities in your country according to Docsity users
Free resources
Download our free guides on studying techniques, anxiety management strategies, and thesis advice from Docsity tutors
The fundamental principles, or axioms, of object-oriented design (ood) and the propositions, or corollaries, derived from them. The axioms include the independence axiom and the information axiom, which emphasize the importance of maintaining component independence and minimizing design complexity, respectively. The document also covers the origin and implications of various corollaries, such as uncoupled design, cohesion, single purpose, large number of simple classes, strong mapping, and standardization.
Typology: Schemes and Mind Maps
1 / 3
This page cannot be seen from the preview
Don't miss anything!
Design axioms and Corollaries.
OO Design Axioms
An axiom is a fundamental truth that always is observed to be valid and for which there is no counterexample or exception. The axioms cannot be proven or derived. A theorem is a proposition that may not be self-evident but can be proven from accepted axioms. Therefore, is equivalent to a law or principle. A theorem is valid if its referent axioms & deductive steps are valid.
A corollary is a proposition that follows from an axiom or another proposition that has been proven Suh’s design axioms to OOD :
o Axiom 1 : The independence axiom. Maintain the independence of components o Axiom 2 : The information axiom. Minimize the information content of the design.
Axiom 1 States that, during the design process, as we go from requirement and use - case to a system component, each component must satisfy that requirement, without affecting other requirements
Axiom 2 Concerned with simplicity. Rely on a general rule known as Occam‟s razor. Occam‟s razor rule of simplicity in OO terms :
The best designs usually involve the least complex code but not necessarily the fewest
number of classes or methods. Minimizing complexity should be the goal, because that produces
the most easily maintained and enhanced application. In an object-oriented system, the best way
to minimize complexity is to use inheritance and the system‟s built-in classes and to add as little
as possible to what already is there.
Corollaries
May be called Design rules , and all are derived from the two basic axioms :The origin of
collaries as shown in figure 2. Corollaries 1,2 and 3 are from both axioms, whereas corollary 4 is
from axiom 1 and corollaries 5 & 6 are from axiom 2.
Origin of corollaries
Corollary 1:
Uncoupled design with less information content.
Coupling is a measure of the strength of association established by a connection from one object or software component to another. Coupling is a binary relationship.
It is important for design because a change in one component should have a minimal impact on the other components.
Degree or strength of coupling between two components is measured by the amount & complexity of information transmitted between them. OO design has 2 types of coupling : o Interaction coupling and Inheritance coupling.
Interaction coupling (^) The amount & complexity of messages between components. (^) Desirable to have a little interaction. (^) Minimize the number of messages sent & received by an object
Types of coupling among objects or components
Inheritance coupling (^) coupling between super-and subclasses (^) A subclass is coupled to its superclass in terms of attributes & methods (^) High inheritance coupling is desirable (^) Each specialization class should not inherit lots of unrelated & unneeded methods & attributes