Lecture 9-QMOOD Flashcards
Why was the QMOOD proposed?
For the assessment of high-level quality attributes in object-oriented designs.
Why is the QMOOD useful?
It allows to assess the quality of a software system at design level(UML class diagram) without source code implementation.
What are the 6 quality attributes ? (FEUFRE)
1) Functionality
2) Effectiveness
3) Understandability
4) Extendibility
5) Reusability
6) Flexibility
What are the 11 QMOOD metrics ?
1) DSC(Design size in classes)
2) NOH (Nb of hierarchies)
3) ANA (Average nb of ancestors)
4) DAM (Data access metric)
5) DCC (Direct class coupling)
6) CAMC ( Cohesion among methods of class)
7) MOA (Measure of aggregation)
8) MFA (Measure of functional abstraction)
9) NOP (Nb of polymorphic methods)
10) CIS (Class interface size)
11) NOM (Nb of methods)
Give the description, design property and system level aggregation of DSC.
-Nb of classes in design
-Design Size
-Sum
Give the description, design property and system level aggregation of NOH.
-Number of class hierarchies in design
-Hierarchies
-Sum
Give the description, design property and system level aggregation of ANA.
-Nb of classes from which a class inherits info
-Abstraction
-Average
Give the description, design property and system level aggregation of DAM.
-Ratio : nb of private attributes/ total nb of attributes
-Encapsulation
-Average
Give the description, design property and system level aggregation of DCC.
-Count of nb of classes that a class is directly related to.
-Coupling
-Average
Give the description, design property and system level aggregation of CAMC.
CAMC = 1* count /kl :
-k : nb of methods
-l : nb of distance parameter types
-Cohesion
-Average
Give the description, design property and system level aggregation of MOA.
-Count of part-whole relationships realized by attributes.
-Composition
-Sum
Give the description, design property and system level aggregation of MFA.
-Ratio : nb of methods inherited / total nb methods inherited + defined
-Inheritance
-Average
Give the description, design property and system level aggregation of NOP.
-Count of abstract methods
-Polymorphism
-Sum
Give the description, design property and system level aggregation of CIS.
-Count of nb public methods
-Messaging
-Average
Give the description, design property and system level aggregation of NOM.
-Count of all methods defined in a class
-Complexity
-Average