Software Metrics, Reliability Dimensions, and Fault Classification
Classified in Computers
Written on in
English with a size of 3.18 KB
Software Metrics Classification and Analysis
Analysis Model Metrics
- PF (Prediction Factor) Metrics: Used to predict the size of a system based on the analysis model.
- Bang Metric: Provides an independent indication of the system's implementation size.
- Quality Metrics of the Specification: Characteristics used to assess the quality of the analysis model and the Engineering Requirements Specification (ERS).
Design Model Metrics
- Object-Oriented (OO) Design Metrics: Provide indicators for OO design characteristics (e.g., inheritance, coupling, size of classes).
- Component-Level Design Metrics: Focus on cohesion, coupling, and complexity of individual software components.
- User Interface Design Metrics: Based on the appropriateness of the design as a metric representation of man-machine interfaces.
- Architectural Design Metrics: Focused on the program architecture, emphasizing architectural structure and module efficiency.
Source Code Metrics
- Text-Based Metrics: Based on the code text (e.g., Halstead's metrics, Lines of Code (LDC)).
- Design Structure-Based Metrics: Based on the idea that a well-designed structure influences system behavior.
Software Testing and Evidence Metrics
These metrics focus on the testing process itself, rather than the technical characteristics of the tests. They utilize analysis, design, and test code metrics for software evaluation.
Maintenance Metrics
- IEEE 982.1-1988 Standard: Suggests a Software Maturity Index (SMI) which indicates the stability of a software product.
Dimensions of Computer System Reliability
Reliability involves three closely related dimensions within a computer system:
- Hardware Reliability: The probability of a hardware component failure and the time required for repair.
- Software Reliability: The probability that a software component will fail or produce unintended side effects.
- Operator Reliability: The probability that the system operator makes a mistake.
Software Fault and Failure Classification
Faults and failures can be classified based on their duration, recoverability, and impact:
Fault Duration
- Transient: Occurs only with certain inputs.
- Permanent: Happens with all inputs.
Failure Recoverability
- Recoverable: The system is recovered without external intervention.
- Unrecoverable (Operator Intervention): Recovery requires operator action.
- Unrecoverable (No Operator Intervention): The system cannot be recovered even with operator intervention.
Data Integrity Impact
- Non-Corruptive: The failure does not corrupt the system state or data.
- Corruptive: The fault corrupts the system state or data.