140 likes | 732 Views
www.codeswat.com. Software Metrics. Software metrics deals with the measurement of software product and the process by which it is developed. Software metrics can be classified as either product metrics (internal metrics) or process metrics(external metrics). Product metrics are measure of the so
E N D
1. www.codeswat.com Software Quality Model Swat4j – Quality Model Overview
2. www.codeswat.com Software Metrics Software metrics deals with the measurement of software product and the process by which it is developed.
Software metrics can be classified as either product metrics (internal metrics) or process metrics(external metrics). Product metrics are measure of the software product measured from artifacts of the software, while Process Metrics are measures of software development process, such as overall development time, methodology and staff experience etc.
3. www.codeswat.com Software Metrics Product (Internal) Metrics such as SEI Maintainability Index, Cyclomatic Complexity and Object Oriented Metrics helps us to understand software quality goals such as Testability, Maintainability, Design Quality, Understandability, Reusability ..
One can use these metrics to understand the quality of code. For e.g..
Cyclomatic Complexity can be used to understand the ‘Testability’ of code,
SEI Maintainability Index can be used to understand the ‘Maintainability’ of code.
4. www.codeswat.com Software Best Practices Disciplined personal practices can reduce defect introduction rates by up to 75 percent. - Barry Boehm, Victor R. Basili
Like ‘Software Metrics’, best practices rules can help us understand quality conformance levels of source code.
5. www.codeswat.com Technology Fortunately we have an effective technology ‘Static Code Analysis’ to automate these measurements ( Software Metrics & Best Practices). Static code analysis is a technique of analyzing software without actually executing it. It can be used to reverse engineer the structural and relational information of software from source code. A simple but very useful technique to automatically extract information about the software and its components.