Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SE.docx
Скачиваний:
2
Добавлен:
01.05.2025
Размер:
49 Кб
Скачать
☆
  • OO design metrics

    • Size (population, volume, length, functionality)

    • Complexity (how classes interrelate to one another)

    • Coupling (physical connections between design elements)

    • Sufficiency (how well design components reflect all properties of the problem domain)

    • Completeness (coverage of all parts of problem domain)

    • Cohesion (manner in which all operations work together)

    • Primitiveness (degree to which attributes and operations are atomic)

    • Similarity (degree to which two or more classes are alike)

    • Volatility (likelihood a design component will change)

  • Class-Oriented Metrics

    • Chidamber and Kemerer (CK) Metrics Suite

  • weighted metrics per class (WMC)

  • depth of inheritance tree (DIT)

  • number of children (NOC)

  • coupling between object classes (CBO)

  • response for a class (RFC)

  • lack of cohesion in methods (LCOM)

    • Harrison, Counsel, and Nithi (MOOD) Metrics Suite

  • method inheritance factor (MIF)

  • coupling factor (CF)

  • polymorphism factor (PF)

    • Lorenz and Kidd

  • class size (CS)

  • number of operations overridden by a subclass (NOO)

  • number of operations added by a subclass (NOA)

  • specialization index (SI)

  • Component-level design metrics

    • Cohesion metrics (data slice, data tokens, glue tokens, superglue tokens, stickiness)

    • Coupling metrics (data and control flow, global, environmental)

    • Complexity metrics (e.g., cyclomatic complexity)

  • Operation-Oriented Metrics

    • Average operation size (OSavg)

    • Operation complexity (OC)

    • Average number of parameters per operation (NPavg)

  • Interface design metrics (e.G., layout appropriateness)

Halstead's Metrics (Source Code Metrics)

  • Overall program length

  • Potential minimum algorithm volume

  • Actual algorithm volume (number of bits used to specify program)

  • Program level (software complexity)

  • Language level (constant for given language)

Testing Metrics

  • Metrics that predict the likely number of tests required during various testing phases

    • Function-based metrics (e.g., function points)

    • Architectural design metrics

    • Cyclomatic complexity can target modules that are candidates for extensive unit testing

    • Halstead effort

  • Metrics that focus on test coverage for a given component

    • Cyclomatic complexity lies at the core of basis path testing

Object-Oriented Testing Metrics

  • Encapsulation

    • Lack of cohesion in methods (LCOM)

    • Percent public and protected (PAP)

    • Public access to data members (PAD)

  • Inheritance

    • Number of root classes (NOR)

    • Fan in (FIN)

    • Number of children (NOC)

    • Depth of inheritance tree (DIT)

  • Class complexity

  • Weighted metrics per class (WMC)

  • Coupling between object classes (CBO)

  • Response for a class (RFC)

Maintenance Metrics

  • Software Maturity Index (IEEE Standard 982.1-1988)

  • SMI approaches 1.0 as product begins to stabilize

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]