Prev - Next - Down | SDMetrics - the UML design measurement tool |
Rule: Unnamed | Category: Completeness |
Severity: 1-high | Applies to: all areas |
Package has no name.
|
Rule: Capitalization | Category: Naming |
Severity: 3-low | Applies to: all areas |
Package name has upper case letters. A common naming convention is that package names use all lower case letters.
|
Rule: Keyword | Category: Naming |
Severity: 2-med | Applies to: design |
Package name is a Java or C++ keyword.
|
Rule: EmptyPackage | Category: Completeness |
Severity: 2-med | Applies to: all areas |
The package has no contents. Add model elements to the package, or delete it from the design. |
Rule: DupClsName | Category: Naming |
Severity: 1-high | Applies to: all areas |
The package has two or more classes or interfaces with identical names. This will cause problems during code generation. Rename the classes or interfaces so that the names are unique.
|
Rule: DepCycle | Category: Style |
Severity: 1-high | Applies to: all areas |
The package has circular dependencies to other packages. Cycles in the package dependency graph should be avoided. The packages participating in the cycle cannot be tested, reused, or released independently. The more packages participate in the cycle, the worse the problem is. Other design guidelines such as the Stable-Dependencies Principle (see rule SDP1) are also invariably violated. Revise the design to eliminate the cycle. |
Rule: SDP1 | Category: Style |
Severity: 2-med | Applies to: all areas |
Package violates the Stable-Dependencies Principle (SDP). The package depends on another package, P that is less stable than itself (as measured by metric I). Package P is less stable and therefore more liable to change than this package. A change to P may ripple to this package. This is undesirable because this package is more stable and therefore harder to change. Therefore, the Stable-Dependencies Principle says that dependencies should run in the direction of stabilities. |
Rule: SDP2 | Category: Style |
Severity: 2-med | Applies to: all areas |
Package violates the Stable-Dependencies Principle (SDP). The package depends on another package that is less abstract than itself. The Stable-Abstractions-Principle (SAP) says that a package should be as abstract (as measured by metric A) as it is stable (as measured by metric I). The Stable-Dependencies Principle (SDP) says that dependencies should run in the direction of stabilities. Therefore, dependencies should run in the direction of abstraction: a package should be more abstract than the packages it depends on. |
Prev | Up | Next |
Appendix C.6 "Parameter Rules" | Contents | Appendix C.8 "Association Rules" |