SlideShare a Scribd company logo
1 of 25
Software Technical Metrics




             Software Technical Metrics


                   The metrics which help software
                   engineers to gain insight into the design
                   and construction of the products they
                   build and the product itself.


13 January, 2012      Mady By Utpal Ray                        1
Software Technical Metrics


  McCall’s Quality Factors
                    ( McCall, Richards, Walters; 1977 )
 It’s a direction towards measuring software quality.
    Considering the fact that software quality is very much
    subjective in nature, quantifying software quality is quite a
    debatable issue.
 McCall expressed software quality in terms of 11 measurable
    quality factors. These 11 quality factors focus on three
    important aspects of a software product.
 Some of the quality factors are responsible for successful
    product operation; some of the quality factors are
    responsible for successful product revision and some are
    responsible for successful product transition.


13 January, 2012   Mady By Utpal Ray                                2
Software Technical Metrics


  McCall’s Quality Factors ( contd. )


                              Flexibility              Portability



                                                              Reusability
                    Testability



     Maintainability                                                      Interoperability
                                   Product Operation
                   Correctness             Usability               Efficiency
                             Reliability               Integrity



13 January, 2012           Mady By Utpal Ray                                                 3
Software Technical Metrics


  McCall’s Quality Factors ( contd. )
 - Correctness : The extent to which a program satisfies
     it’s specification and fulfills customer’s mission
     objective.
 -   Reliability : The extent to which a program can be
     expected to perform it’s intended function with
     required precision.
 -   Usability : The effort required to
     learn, operate, prepare input, and interpret output of a
     program.
 -   Integrity : The extent to which access to software or
     data by unauthorized persons can be controlled.
 -   Efficiency : The amount of computing resources and
     code required by a program to perform it’s functions.

13 January, 2012   Mady By Utpal Ray                            4
Software Technical Metrics




  McCall’s Quality Factors ( contd. )
 - Flexibility : The effort required to modify an
   operational program.
 - Testability : The effort required to test a program to
   ensure that it performs it’s intended functions.
 - Maintainability : The effort required to locate and fix
   an error in a program.




13 January, 2012   Mady By Utpal Ray                         5
Software Technical Metrics



  McCall’s Quality Factors ( contd. )
 - Portability : The effort required to transfer the
   program from one hardware and/or software system
   environment to another.
 - Reusability : The extent to which a program or parts
   of a program can be reused in another application.
 - Interoperability : The effort required to couple one
   system to another.




13 January, 2012   Mady By Utpal Ray                      6
Software Technical Metrics


     McCall’s Quality Factors ( contd. )
 - All the quality factors mentioned above depends upon quite a few
      metrics; and the dependency can be given by the following
      formulae :
 Fq = c1 x m1 + c2 x m2 + … + cn x mn
 Where, Fq is the software Quality Factor;
          cn are the regression co-efficient;
                ( c1 + c2 + … + cn = 1.0 )
          mn are the metrics which affects Fq.
 - Most of these metrics ( there are about 22 ) can be measured
      subjectively. These metrics can be in the form of a check list. The
      grading scheme for each of the metric is between 0 ( low ) and 10
      ( high ).
 - The value of the regression co-efficient is dependent upon the
      products and the weight given for that particular metrics.


13 January, 2012    Mady By Utpal Ray                                       7
Software Technical Metrics


  McCall’s Quality Factors ( contd. )
                    The list of 22 metrics
 Auditability – The ease with which conformance to standards can be
   checked.
 Accuracy – The precision of computation and control.
 Communication Commonality – The degree to which standard
   interfaces, protocols and bandwidth are used.
 Completeness – The degree to which full implementation of required
   function has been achieved.
 Complexity – The degree to which the program is complex.
 Conciseness – The compactness of the program in terms of lines of
   codes.
 Consistency – The use of uniform design and documentation technique
   throughout the software development project.
 Data Commonality – The use of standard data structures and types
   throughout the program.

13 January, 2012    Mady By Utpal Ray                                  8
Software Technical Metrics

  McCall’s Quality Factors ( contd. )
          The list of 22 metrics ( contd. )
 Error Tolerance – The damage that occurs when the program
   encounters an error
 Execution Efficiency – The run time performance of a program.
 Expandability – The degree to which architectural, data or
   procedural data can be extended.
 Generality – The breadth of potential application of program
   components.
 Hardware Independence – The degree to which the software is
   decoupled from the hardware on which it operates.
 Instrumentation – The degree to which the program monitors it’s
   own operation and identifies errors that do occur.
 Modularity – The functional independence of program
   components.



13 January, 2012   Mady By Utpal Ray                               9
Software Technical Metrics

  McCall’s Quality Factors ( contd. )
              The list of 22 metrics ( contd. )
 Operability – The ease of operation of a program.
 Security – The availability of mechanisms that control or protect
   programs and data.
 Self-Documentation – The degree to which the source code provides
   meaningful documentation.
 Simplicity – The degree to which a program can be understood
   without difficulty.
 Software System Independence – The degree to which the program
   is independent of nonstandard programming language
   features, operating system characteristics, and other environmental
   constraints.
 Traceability – The ability to trace a design representation or actual
   program component back to requirements.
 Training – The degree to which the software assists in enabling new
   users to apply the system.


13 January, 2012   Mady By Utpal Ray                                 10
Software Technical Metrics


  McCall’s Quality Factors ( contd. )
 The relationship between few of the quality factors and
   the metrics are given below.
 Reliability = c1 x Accuracy + c2 x Complexity + c3 x
   consistency + c4 x Error-Tolerance + c5 x Modularity +
   c6 x Simplicity
 Testability = c1 x Auditability + c2 x Complexity + c3 x
   Instrumentation + c4 x Modularity + c5 x Self-
   Documentation + c6 x Simplicity
 Portability = c1 x Generality + c2 x Hardware-
   Independence + c3 x Modularity + c4 x Self-
   Documentation + c5 x Software-System-Independence


13 January, 2012   Mady By Utpal Ray                    11
Software Technical Metrics


   Architectural Design Metrics
 There are two categories of Architectural Design
    Metrics. They are :-
 1. Architectural Structure Metrics – This category has
    an emphasis on architectural structure.
 2. Architectural Complexity Metrics – This category
    has an emphasis on the complexity of different
    modules.




13 January, 2012   Mady By Utpal Ray                      12
Software Technical Metrics


  Architectural Design Metrics ( contd. )
       Architectural Structure Metrics
 - Fenton’s Size Metric = a + n
 - Fenton’s Connectivity Density Metric = (a/n)
           Where, n is the number of nodes
                  a is the number of arcs


                                       Nodes




                           Arcs


13 January, 2012   Mady By Utpal Ray              13
Software Technical Metrics


        Architectural Design Metrics (contd. )
                   Architectural Structure Metrics ( contd. )
       Sl Different Structure              Nodes Arcs     Size    Density
       No                                                 (n+a)   ( a/n)
         1                                        2   1     3       0.5




         2                                        3   2     5     2/3=0.7




13 January, 2012              Mady By Utpal Ray                             14
Software Technical Metrics


             Architectural Design Metrics ( contd. )

                      Architectural Structure Metrics ( contd. )


       Sl.     Different Structure                Nodes      Arcs   Size    Density
       No.                                        ( n)       (a)    (n+a)   ( a/n)

         3                                               8     7      15       0.9




13 January, 2012                     Mady By Utpal Ray                                15
Software Technical Metrics


                   Architectural Design Metrics ( contd. )

                        Architectural Structure Metrics (contd. )


       Sl.     Different Structure                Nodes      Arcs   Size    Density
       No.                                        ( n)       (a)    (n+a)   ( a/n)

         4                                               6     8      14    8/6=1.3




13 January, 2012                     Mady By Utpal Ray                                16
Software Technical Metrics


        Architectural Design Metrics ( contd. )
           Architectural Complexity Metrics

 Under these category there are three types of metrics.
    They are :-

 1.      Structural Complexity Metrics
 2.      Data Complexity Metrics
 3.      System Complexity Metrics




13 January, 2012    Mady By Utpal Ray                     17
Software Technical Metrics


     Architectural Design Metrics ( contd. )
       Architectural Complexity Metrics ( contd. )
 1. Structural Complexity – S(i) of a module is given by
          S(i) = ( fout (i) ) ** 2
    where, fout (i) is the fan out for the module i.
 2. Data Complexity – D(i) of a module i is given by
          D(i) = V(i) / ( fout(i) +1 )
     where, V(i) is the total number of input and output
      variables that are passed to and from module i.
 3. System Complexity – C(i) is given by
          C(i) = S(i) + D(i)


13 January, 2012   Mady By Utpal Ray                       18
Software Technical Metrics


        Architectural Design Metrics ( contd. )
                   Architectural Complexity Metrics ( contd. )

       Sl.         Different    Fan Out Total          Struct.   Data      System
       No.         Architecture fout(i) Input          Comple-   Comple-   Comple-
                                        output         xity      xity      Xity
                                        variable       S(i)      D(i)
                                        V(i)                               C(i)

         1.                        1              2       1         1         2


                       i
                           1,1




13 January, 2012                   Mady By Utpal Ray                                 19
Software Technical Metrics


        Architectural Design Metrics ( contd. )
                   Architectural Complexity Metrics ( contd. )

       Sl. Different                 Fan     Total       Struct.   Data      System
       No. Architecture              Out     Input       Comple-   Comple-   Comple-
                                     fout(i) output      xity      xity      Xity
                                             variable    S(i)      D(i)
                                             V(i)                            C(i)

        2.                              3           12      9         3        12

                           i
                   4,1         3,2
                         1,1




13 January, 2012                     Mady By Utpal Ray                                 20
Software Technical Metrics


   Architectural Design Metrics ( Summary )

                              Architectural Design Metrics



    Architectural Structure Metrics                     Architectural Complexity Metrics



                                               Structural Complexity        Data
Fenton’s Size Metric                           Metrics                      Complexity
                                                                            Metrics
                    Fenton’s Connectivity
                    Density Metric

                                                            System Complexity Metrics



 13 January, 2012          Mady By Utpal Ray                                            21
Software Technical Metrics



   Component Level Design Metrics
 There are two types of metrics in this category.
 1. Coupling Metric
 2. Complexity Metric ( Cyclometic Complexity )
 Both this metrics require the knowledge of the internal
    structure of the module at least in a component
    level. The two metrics mentioned above can be used
    to determine the quality of the component level
    design.



13 January, 2012   Mady By Utpal Ray                       22
Software Technical Metrics


      Component Level Design Metrics ( contd. )
                          Coupling Metric
 This metric determine the coupling efficiency of a module. Three types of
       coupling definitions has been incorporated into the formulae for
       computing this metric.
 1. Data and Control Flow Coupling:
          di = no. of input data parameter
          ci = no. of input control parameter
         do = no. of output data parameter
         co = no. of output control parameter
 2. Global Coupling:
          gd = no. of global variables used as data
          gc = no. of global variables used as control
 3. Environmental Coupling:
          fout = fan out for that module
          fin = fan in for that module


13 January, 2012    Mady By Utpal Ray                                    23
Software Technical Metrics


  Component Level Design Metrics ( contd. )
               Coupling Metric ( contd. )
 The coupling metric C is given by:-
 C = 1 – k / ( di + (a*ci) + do + (b*co) + gd + (c*gc) + fout
   + fin )
 The values of k, a, b, c are adjusted as per experimental
   verification. In general they are taken as 1, 2, 2, 2
   respectively.
 C will be higher ( closer to 1 ), if a module have high
   coupling. The minimum value of C will be 0. This will
   occur when the module has only one parent module
   and there are no global coupling or control coupling.
   The module accepts no data variable and also returns
   no data variable.

13 January, 2012   Mady By Utpal Ray                            24
Software Technical Metrics



        Home Task
 1.      Take any “Call and Return Architecture” of your
         choice ( which has at least 6 modules ). Compute the
         value of all the metrics which fall under the category
         of ‘Architectural Design Metrics’. Regarding input-
         output data variable passing, assume 3 input variable
         and 1 output variable.
 2.      Prove that the minimum value of coupling efficiency
         is 0.66.




13 January, 2012    Mady By Utpal Ray                         25

More Related Content

What's hot

Software Metrics - Software Engineering
Software Metrics - Software EngineeringSoftware Metrics - Software Engineering
Software Metrics - Software EngineeringDrishti Bhalla
 
Software Engineering Practice - Software Metrics and Estimation
Software Engineering Practice - Software Metrics and EstimationSoftware Engineering Practice - Software Metrics and Estimation
Software Engineering Practice - Software Metrics and EstimationRadu_Negulescu
 
Software Metrics & Measurement-Sharbani Bhattacharya
Software Metrics & Measurement-Sharbani BhattacharyaSoftware Metrics & Measurement-Sharbani Bhattacharya
Software Metrics & Measurement-Sharbani BhattacharyaSharbani Bhattacharya
 
Lecture 04 Software Metrics and Estimation
Lecture 04 Software Metrics and EstimationLecture 04 Software Metrics and Estimation
Lecture 04 Software Metrics and EstimationAchmad Solichin
 
Importance of software quality metrics
Importance of software quality metricsImportance of software quality metrics
Importance of software quality metricsPiyush Sohaney
 
Software process and project metrics
Software process and project metricsSoftware process and project metrics
Software process and project metricsIndu Sharma Bhardwaj
 
Software reliability
Software reliabilitySoftware reliability
Software reliabilityAnand Kumar
 
What is Software Quality and how to measure it?
What is Software Quality and how to measure it?What is Software Quality and how to measure it?
What is Software Quality and how to measure it?Denys Zaiats
 
Software Metrics
Software MetricsSoftware Metrics
Software MetricsSwati Patel
 
Unit 8 software quality and matrices
Unit 8 software quality and matricesUnit 8 software quality and matrices
Unit 8 software quality and matricesPreeti Mishra
 
software metrics(process,project,product)
software metrics(process,project,product)software metrics(process,project,product)
software metrics(process,project,product)Amisha Narsingani
 

What's hot (20)

Software Metrics - Software Engineering
Software Metrics - Software EngineeringSoftware Metrics - Software Engineering
Software Metrics - Software Engineering
 
Software Engineering Practice - Software Metrics and Estimation
Software Engineering Practice - Software Metrics and EstimationSoftware Engineering Practice - Software Metrics and Estimation
Software Engineering Practice - Software Metrics and Estimation
 
Software Metrics & Measurement-Sharbani Bhattacharya
Software Metrics & Measurement-Sharbani BhattacharyaSoftware Metrics & Measurement-Sharbani Bhattacharya
Software Metrics & Measurement-Sharbani Bhattacharya
 
Lecture 04 Software Metrics and Estimation
Lecture 04 Software Metrics and EstimationLecture 04 Software Metrics and Estimation
Lecture 04 Software Metrics and Estimation
 
Importance of software quality metrics
Importance of software quality metricsImportance of software quality metrics
Importance of software quality metrics
 
Metrics
MetricsMetrics
Metrics
 
Software process and project metrics
Software process and project metricsSoftware process and project metrics
Software process and project metrics
 
Software Metrics
Software MetricsSoftware Metrics
Software Metrics
 
The importance of quality software
The importance of quality softwareThe importance of quality software
The importance of quality software
 
Software Reliability
Software ReliabilitySoftware Reliability
Software Reliability
 
Software quality
Software qualitySoftware quality
Software quality
 
Software reliability
Software reliabilitySoftware reliability
Software reliability
 
Software Quality Metrics
Software Quality MetricsSoftware Quality Metrics
Software Quality Metrics
 
What is Software Quality and how to measure it?
What is Software Quality and how to measure it?What is Software Quality and how to measure it?
What is Software Quality and how to measure it?
 
Software Metrics
Software MetricsSoftware Metrics
Software Metrics
 
Unit 8 software quality and matrices
Unit 8 software quality and matricesUnit 8 software quality and matrices
Unit 8 software quality and matrices
 
Software design metrics
Software design metricsSoftware design metrics
Software design metrics
 
software metrics(process,project,product)
software metrics(process,project,product)software metrics(process,project,product)
software metrics(process,project,product)
 
Software metrics
Software metricsSoftware metrics
Software metrics
 
Software metrics
Software metricsSoftware metrics
Software metrics
 

Viewers also liked

Marketing Agility: The Missing Metric?
Marketing Agility: The Missing Metric?Marketing Agility: The Missing Metric?
Marketing Agility: The Missing Metric?Shelly Lucas
 
JavaOne’12 Session 3992 - Software Modularity: Paradoxes, Principles, and Arc...
JavaOne’12 Session 3992 - Software Modularity: Paradoxes, Principles, and Arc...JavaOne’12 Session 3992 - Software Modularity: Paradoxes, Principles, and Arc...
JavaOne’12 Session 3992 - Software Modularity: Paradoxes, Principles, and Arc...Andrzej Olszak
 
How to define Quality Models for Measuring Software Quality
How to define Quality Models for Measuring Software QualityHow to define Quality Models for Measuring Software Quality
How to define Quality Models for Measuring Software Qualityuqasar
 
A New Reusability Metric for Object-Oriented Software
A New Reusability Metric for Object-Oriented SoftwareA New Reusability Metric for Object-Oriented Software
A New Reusability Metric for Object-Oriented Softwarenewreusabilitymetric
 
Sa 006 modifiability
Sa 006 modifiabilitySa 006 modifiability
Sa 006 modifiabilityFrank Gielen
 
Agile Metrics : A seminal approach for calculating Metrics in Agile Projects
Agile Metrics : A seminal approach for calculating Metrics in Agile ProjectsAgile Metrics : A seminal approach for calculating Metrics in Agile Projects
Agile Metrics : A seminal approach for calculating Metrics in Agile ProjectsPrashant Ram
 
Software Engineering unit 3
Software Engineering unit 3Software Engineering unit 3
Software Engineering unit 3Abhimanyu Mishra
 
Software Quality Metrics for Testers - StarWest 2013
Software Quality Metrics for Testers - StarWest 2013Software Quality Metrics for Testers - StarWest 2013
Software Quality Metrics for Testers - StarWest 2013XBOSoft
 
Software Engineering - Ch8
Software Engineering - Ch8Software Engineering - Ch8
Software Engineering - Ch8Siddharth Ayer
 
Software Measurement: Lecture 1. Measures and Metrics
Software Measurement: Lecture 1. Measures and MetricsSoftware Measurement: Lecture 1. Measures and Metrics
Software Measurement: Lecture 1. Measures and MetricsProgrameter
 
Non Functional Requirement.
Non Functional Requirement.Non Functional Requirement.
Non Functional Requirement.Khushboo Shaukat
 
Software quality
Software qualitySoftware quality
Software qualityjagadeesan
 
Sistemas De Riego
Sistemas De RiegoSistemas De Riego
Sistemas De Riegocsemidei
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assuranceAman Adhikari
 

Viewers also liked (19)

Software Metrics
Software MetricsSoftware Metrics
Software Metrics
 
Marketing Agility: The Missing Metric?
Marketing Agility: The Missing Metric?Marketing Agility: The Missing Metric?
Marketing Agility: The Missing Metric?
 
JavaOne’12 Session 3992 - Software Modularity: Paradoxes, Principles, and Arc...
JavaOne’12 Session 3992 - Software Modularity: Paradoxes, Principles, and Arc...JavaOne’12 Session 3992 - Software Modularity: Paradoxes, Principles, and Arc...
JavaOne’12 Session 3992 - Software Modularity: Paradoxes, Principles, and Arc...
 
Confidentiality ppt[1] (1)
Confidentiality ppt[1] (1)Confidentiality ppt[1] (1)
Confidentiality ppt[1] (1)
 
How to define Quality Models for Measuring Software Quality
How to define Quality Models for Measuring Software QualityHow to define Quality Models for Measuring Software Quality
How to define Quality Models for Measuring Software Quality
 
A New Reusability Metric for Object-Oriented Software
A New Reusability Metric for Object-Oriented SoftwareA New Reusability Metric for Object-Oriented Software
A New Reusability Metric for Object-Oriented Software
 
Sa 006 modifiability
Sa 006 modifiabilitySa 006 modifiability
Sa 006 modifiability
 
Ooad 3
Ooad 3Ooad 3
Ooad 3
 
Agile Metrics : A seminal approach for calculating Metrics in Agile Projects
Agile Metrics : A seminal approach for calculating Metrics in Agile ProjectsAgile Metrics : A seminal approach for calculating Metrics in Agile Projects
Agile Metrics : A seminal approach for calculating Metrics in Agile Projects
 
Agile Metrics That Matter
Agile Metrics That MatterAgile Metrics That Matter
Agile Metrics That Matter
 
Software Engineering unit 3
Software Engineering unit 3Software Engineering unit 3
Software Engineering unit 3
 
Software Quality Metrics for Testers - StarWest 2013
Software Quality Metrics for Testers - StarWest 2013Software Quality Metrics for Testers - StarWest 2013
Software Quality Metrics for Testers - StarWest 2013
 
12 software maintenance
12 software maintenance12 software maintenance
12 software maintenance
 
Software Engineering - Ch8
Software Engineering - Ch8Software Engineering - Ch8
Software Engineering - Ch8
 
Software Measurement: Lecture 1. Measures and Metrics
Software Measurement: Lecture 1. Measures and MetricsSoftware Measurement: Lecture 1. Measures and Metrics
Software Measurement: Lecture 1. Measures and Metrics
 
Non Functional Requirement.
Non Functional Requirement.Non Functional Requirement.
Non Functional Requirement.
 
Software quality
Software qualitySoftware quality
Software quality
 
Sistemas De Riego
Sistemas De RiegoSistemas De Riego
Sistemas De Riego
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 

Similar to 14 software technical_metrics

Analysis of Software Complexity Measures for Regression Testing
Analysis of Software Complexity Measures for Regression TestingAnalysis of Software Complexity Measures for Regression Testing
Analysis of Software Complexity Measures for Regression TestingIDES Editor
 
Class quality evaluation using class quality scorecards
Class quality evaluation using class quality scorecardsClass quality evaluation using class quality scorecards
Class quality evaluation using class quality scorecardsIAEME Publication
 
Class quality evaluation using class quality
Class quality evaluation using class qualityClass quality evaluation using class quality
Class quality evaluation using class qualityIAEME Publication
 
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...IJERD Editor
 
RELIABILITY ESTIMATION FRAMEWORK -COMPLEXITY PERSPECTIVE
RELIABILITY ESTIMATION FRAMEWORK -COMPLEXITY PERSPECTIVERELIABILITY ESTIMATION FRAMEWORK -COMPLEXITY PERSPECTIVE
RELIABILITY ESTIMATION FRAMEWORK -COMPLEXITY PERSPECTIVEcscpconf
 
Software Quality presentation.pptx
Software Quality presentation.pptxSoftware Quality presentation.pptx
Software Quality presentation.pptxChrisMunyau
 
Software enginnering unit 01 by manoj kumar soni
Software enginnering unit 01 by manoj kumar soniSoftware enginnering unit 01 by manoj kumar soni
Software enginnering unit 01 by manoj kumar sonimanojsonikgn
 
Application Quality Best Practices with VS2010
Application Quality Best Practices with VS2010Application Quality Best Practices with VS2010
Application Quality Best Practices with VS2010adrian8three
 
Application Quality Best Practices with Visual Studio 2010 - Adrian Dunne
Application Quality Best Practices with Visual Studio 2010 - Adrian DunneApplication Quality Best Practices with Visual Studio 2010 - Adrian Dunne
Application Quality Best Practices with Visual Studio 2010 - Adrian DunneSpiffy
 
IRJET- Analysis of Software Cost Estimation Techniques
IRJET- Analysis of Software Cost Estimation TechniquesIRJET- Analysis of Software Cost Estimation Techniques
IRJET- Analysis of Software Cost Estimation TechniquesIRJET Journal
 
Design concepts
Design conceptsDesign concepts
Design conceptsJoshuaU1
 
Software quality assurance (sqa) Parte II- Métricas del Software y Modelos d...
Software quality assurance (sqa)  Parte II- Métricas del Software y Modelos d...Software quality assurance (sqa)  Parte II- Métricas del Software y Modelos d...
Software quality assurance (sqa) Parte II- Métricas del Software y Modelos d...Renato Gonzalez
 
Intro softwareeng
Intro softwareengIntro softwareeng
Intro softwareengPINKU29
 

Similar to 14 software technical_metrics (20)

Analysis of Software Complexity Measures for Regression Testing
Analysis of Software Complexity Measures for Regression TestingAnalysis of Software Complexity Measures for Regression Testing
Analysis of Software Complexity Measures for Regression Testing
 
Iv2515741577
Iv2515741577Iv2515741577
Iv2515741577
 
Iv2515741577
Iv2515741577Iv2515741577
Iv2515741577
 
Class quality evaluation using class quality scorecards
Class quality evaluation using class quality scorecardsClass quality evaluation using class quality scorecards
Class quality evaluation using class quality scorecards
 
Class quality evaluation using class quality
Class quality evaluation using class qualityClass quality evaluation using class quality
Class quality evaluation using class quality
 
Cm24585587
Cm24585587Cm24585587
Cm24585587
 
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
 
RELIABILITY ESTIMATION FRAMEWORK -COMPLEXITY PERSPECTIVE
RELIABILITY ESTIMATION FRAMEWORK -COMPLEXITY PERSPECTIVERELIABILITY ESTIMATION FRAMEWORK -COMPLEXITY PERSPECTIVE
RELIABILITY ESTIMATION FRAMEWORK -COMPLEXITY PERSPECTIVE
 
A Study of Significant Software Metrics
A Study of Significant Software MetricsA Study of Significant Software Metrics
A Study of Significant Software Metrics
 
Software Quality presentation.pptx
Software Quality presentation.pptxSoftware Quality presentation.pptx
Software Quality presentation.pptx
 
Software enginnering unit 01 by manoj kumar soni
Software enginnering unit 01 by manoj kumar soniSoftware enginnering unit 01 by manoj kumar soni
Software enginnering unit 01 by manoj kumar soni
 
Application Quality Best Practices with VS2010
Application Quality Best Practices with VS2010Application Quality Best Practices with VS2010
Application Quality Best Practices with VS2010
 
Application Quality Best Practices with Visual Studio 2010 - Adrian Dunne
Application Quality Best Practices with Visual Studio 2010 - Adrian DunneApplication Quality Best Practices with Visual Studio 2010 - Adrian Dunne
Application Quality Best Practices with Visual Studio 2010 - Adrian Dunne
 
Ashish_Kumar_Singh_resume
Ashish_Kumar_Singh_resumeAshish_Kumar_Singh_resume
Ashish_Kumar_Singh_resume
 
IRJET- Analysis of Software Cost Estimation Techniques
IRJET- Analysis of Software Cost Estimation TechniquesIRJET- Analysis of Software Cost Estimation Techniques
IRJET- Analysis of Software Cost Estimation Techniques
 
Design concepts
Design conceptsDesign concepts
Design concepts
 
Software quality assurance (sqa) Parte II- Métricas del Software y Modelos d...
Software quality assurance (sqa)  Parte II- Métricas del Software y Modelos d...Software quality assurance (sqa)  Parte II- Métricas del Software y Modelos d...
Software quality assurance (sqa) Parte II- Métricas del Software y Modelos d...
 
1841 1843
1841 18431841 1843
1841 1843
 
1841 1843
1841 18431841 1843
1841 1843
 
Intro softwareeng
Intro softwareengIntro softwareeng
Intro softwareeng
 

More from University of Computer Science and Technology

More from University of Computer Science and Technology (18)

Real time-embedded-system-lec-02
Real time-embedded-system-lec-02Real time-embedded-system-lec-02
Real time-embedded-system-lec-02
 
Real time-embedded-system-lec-06
Real time-embedded-system-lec-06Real time-embedded-system-lec-06
Real time-embedded-system-lec-06
 
Real time-embedded-system-lec-05
Real time-embedded-system-lec-05Real time-embedded-system-lec-05
Real time-embedded-system-lec-05
 
Real time-embedded-system-lec-04
Real time-embedded-system-lec-04Real time-embedded-system-lec-04
Real time-embedded-system-lec-04
 
Real time-embedded-system-lec-03
Real time-embedded-system-lec-03Real time-embedded-system-lec-03
Real time-embedded-system-lec-03
 
Real time-embedded-system-lec-02
Real time-embedded-system-lec-02Real time-embedded-system-lec-02
Real time-embedded-system-lec-02
 
Real time-embedded-system-lec-07
Real time-embedded-system-lec-07Real time-embedded-system-lec-07
Real time-embedded-system-lec-07
 
11 software testing_strategy
11 software testing_strategy11 software testing_strategy
11 software testing_strategy
 
10 software testing_technique
10 software testing_technique10 software testing_technique
10 software testing_technique
 
09 coding standards_n_guidelines
09 coding standards_n_guidelines09 coding standards_n_guidelines
09 coding standards_n_guidelines
 
08 component level_design
08 component level_design08 component level_design
08 component level_design
 
07 interface design
07 interface design07 interface design
07 interface design
 
06 architectural design_workout
06 architectural design_workout06 architectural design_workout
06 architectural design_workout
 
05 architectural design
05 architectural design05 architectural design
05 architectural design
 
04 design concepts_n_principles
04 design concepts_n_principles04 design concepts_n_principles
04 design concepts_n_principles
 
03 requirement engineering_process
03 requirement engineering_process03 requirement engineering_process
03 requirement engineering_process
 
02 software process_models
02 software process_models02 software process_models
02 software process_models
 
01 software engineering_aspects
01 software engineering_aspects01 software engineering_aspects
01 software engineering_aspects
 

Recently uploaded

Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
PSYCHIATRIC History collection FORMAT.pptx
PSYCHIATRIC   History collection FORMAT.pptxPSYCHIATRIC   History collection FORMAT.pptx
PSYCHIATRIC History collection FORMAT.pptxPoojaSen20
 
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991RKavithamani
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Celine George
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxRoyAbrique
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsKarinaGenton
 
MENTAL STATUS EXAMINATION format.docx
MENTAL     STATUS EXAMINATION format.docxMENTAL     STATUS EXAMINATION format.docx
MENTAL STATUS EXAMINATION format.docxPoojaSen20
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentInMediaRes1
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 

Recently uploaded (20)

Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
PSYCHIATRIC History collection FORMAT.pptx
PSYCHIATRIC   History collection FORMAT.pptxPSYCHIATRIC   History collection FORMAT.pptx
PSYCHIATRIC History collection FORMAT.pptx
 
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
Staff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSDStaff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSD
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its Characteristics
 
MENTAL STATUS EXAMINATION format.docx
MENTAL     STATUS EXAMINATION format.docxMENTAL     STATUS EXAMINATION format.docx
MENTAL STATUS EXAMINATION format.docx
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media Component
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 

14 software technical_metrics

  • 1. Software Technical Metrics Software Technical Metrics The metrics which help software engineers to gain insight into the design and construction of the products they build and the product itself. 13 January, 2012 Mady By Utpal Ray 1
  • 2. Software Technical Metrics  McCall’s Quality Factors ( McCall, Richards, Walters; 1977 ) It’s a direction towards measuring software quality. Considering the fact that software quality is very much subjective in nature, quantifying software quality is quite a debatable issue. McCall expressed software quality in terms of 11 measurable quality factors. These 11 quality factors focus on three important aspects of a software product. Some of the quality factors are responsible for successful product operation; some of the quality factors are responsible for successful product revision and some are responsible for successful product transition. 13 January, 2012 Mady By Utpal Ray 2
  • 3. Software Technical Metrics  McCall’s Quality Factors ( contd. ) Flexibility Portability Reusability Testability Maintainability Interoperability Product Operation Correctness Usability Efficiency Reliability Integrity 13 January, 2012 Mady By Utpal Ray 3
  • 4. Software Technical Metrics  McCall’s Quality Factors ( contd. ) - Correctness : The extent to which a program satisfies it’s specification and fulfills customer’s mission objective. - Reliability : The extent to which a program can be expected to perform it’s intended function with required precision. - Usability : The effort required to learn, operate, prepare input, and interpret output of a program. - Integrity : The extent to which access to software or data by unauthorized persons can be controlled. - Efficiency : The amount of computing resources and code required by a program to perform it’s functions. 13 January, 2012 Mady By Utpal Ray 4
  • 5. Software Technical Metrics  McCall’s Quality Factors ( contd. ) - Flexibility : The effort required to modify an operational program. - Testability : The effort required to test a program to ensure that it performs it’s intended functions. - Maintainability : The effort required to locate and fix an error in a program. 13 January, 2012 Mady By Utpal Ray 5
  • 6. Software Technical Metrics  McCall’s Quality Factors ( contd. ) - Portability : The effort required to transfer the program from one hardware and/or software system environment to another. - Reusability : The extent to which a program or parts of a program can be reused in another application. - Interoperability : The effort required to couple one system to another. 13 January, 2012 Mady By Utpal Ray 6
  • 7. Software Technical Metrics  McCall’s Quality Factors ( contd. ) - All the quality factors mentioned above depends upon quite a few metrics; and the dependency can be given by the following formulae : Fq = c1 x m1 + c2 x m2 + … + cn x mn Where, Fq is the software Quality Factor; cn are the regression co-efficient; ( c1 + c2 + … + cn = 1.0 ) mn are the metrics which affects Fq. - Most of these metrics ( there are about 22 ) can be measured subjectively. These metrics can be in the form of a check list. The grading scheme for each of the metric is between 0 ( low ) and 10 ( high ). - The value of the regression co-efficient is dependent upon the products and the weight given for that particular metrics. 13 January, 2012 Mady By Utpal Ray 7
  • 8. Software Technical Metrics  McCall’s Quality Factors ( contd. ) The list of 22 metrics Auditability – The ease with which conformance to standards can be checked. Accuracy – The precision of computation and control. Communication Commonality – The degree to which standard interfaces, protocols and bandwidth are used. Completeness – The degree to which full implementation of required function has been achieved. Complexity – The degree to which the program is complex. Conciseness – The compactness of the program in terms of lines of codes. Consistency – The use of uniform design and documentation technique throughout the software development project. Data Commonality – The use of standard data structures and types throughout the program. 13 January, 2012 Mady By Utpal Ray 8
  • 9. Software Technical Metrics  McCall’s Quality Factors ( contd. ) The list of 22 metrics ( contd. ) Error Tolerance – The damage that occurs when the program encounters an error Execution Efficiency – The run time performance of a program. Expandability – The degree to which architectural, data or procedural data can be extended. Generality – The breadth of potential application of program components. Hardware Independence – The degree to which the software is decoupled from the hardware on which it operates. Instrumentation – The degree to which the program monitors it’s own operation and identifies errors that do occur. Modularity – The functional independence of program components. 13 January, 2012 Mady By Utpal Ray 9
  • 10. Software Technical Metrics  McCall’s Quality Factors ( contd. ) The list of 22 metrics ( contd. ) Operability – The ease of operation of a program. Security – The availability of mechanisms that control or protect programs and data. Self-Documentation – The degree to which the source code provides meaningful documentation. Simplicity – The degree to which a program can be understood without difficulty. Software System Independence – The degree to which the program is independent of nonstandard programming language features, operating system characteristics, and other environmental constraints. Traceability – The ability to trace a design representation or actual program component back to requirements. Training – The degree to which the software assists in enabling new users to apply the system. 13 January, 2012 Mady By Utpal Ray 10
  • 11. Software Technical Metrics  McCall’s Quality Factors ( contd. ) The relationship between few of the quality factors and the metrics are given below. Reliability = c1 x Accuracy + c2 x Complexity + c3 x consistency + c4 x Error-Tolerance + c5 x Modularity + c6 x Simplicity Testability = c1 x Auditability + c2 x Complexity + c3 x Instrumentation + c4 x Modularity + c5 x Self- Documentation + c6 x Simplicity Portability = c1 x Generality + c2 x Hardware- Independence + c3 x Modularity + c4 x Self- Documentation + c5 x Software-System-Independence 13 January, 2012 Mady By Utpal Ray 11
  • 12. Software Technical Metrics  Architectural Design Metrics There are two categories of Architectural Design Metrics. They are :- 1. Architectural Structure Metrics – This category has an emphasis on architectural structure. 2. Architectural Complexity Metrics – This category has an emphasis on the complexity of different modules. 13 January, 2012 Mady By Utpal Ray 12
  • 13. Software Technical Metrics  Architectural Design Metrics ( contd. ) Architectural Structure Metrics - Fenton’s Size Metric = a + n - Fenton’s Connectivity Density Metric = (a/n) Where, n is the number of nodes a is the number of arcs Nodes Arcs 13 January, 2012 Mady By Utpal Ray 13
  • 14. Software Technical Metrics  Architectural Design Metrics (contd. ) Architectural Structure Metrics ( contd. ) Sl Different Structure Nodes Arcs Size Density No (n+a) ( a/n) 1 2 1 3 0.5 2 3 2 5 2/3=0.7 13 January, 2012 Mady By Utpal Ray 14
  • 15. Software Technical Metrics Architectural Design Metrics ( contd. ) Architectural Structure Metrics ( contd. ) Sl. Different Structure Nodes Arcs Size Density No. ( n) (a) (n+a) ( a/n) 3 8 7 15 0.9 13 January, 2012 Mady By Utpal Ray 15
  • 16. Software Technical Metrics Architectural Design Metrics ( contd. ) Architectural Structure Metrics (contd. ) Sl. Different Structure Nodes Arcs Size Density No. ( n) (a) (n+a) ( a/n) 4 6 8 14 8/6=1.3 13 January, 2012 Mady By Utpal Ray 16
  • 17. Software Technical Metrics  Architectural Design Metrics ( contd. ) Architectural Complexity Metrics Under these category there are three types of metrics. They are :- 1. Structural Complexity Metrics 2. Data Complexity Metrics 3. System Complexity Metrics 13 January, 2012 Mady By Utpal Ray 17
  • 18. Software Technical Metrics  Architectural Design Metrics ( contd. ) Architectural Complexity Metrics ( contd. ) 1. Structural Complexity – S(i) of a module is given by S(i) = ( fout (i) ) ** 2 where, fout (i) is the fan out for the module i. 2. Data Complexity – D(i) of a module i is given by D(i) = V(i) / ( fout(i) +1 ) where, V(i) is the total number of input and output variables that are passed to and from module i. 3. System Complexity – C(i) is given by C(i) = S(i) + D(i) 13 January, 2012 Mady By Utpal Ray 18
  • 19. Software Technical Metrics  Architectural Design Metrics ( contd. ) Architectural Complexity Metrics ( contd. ) Sl. Different Fan Out Total Struct. Data System No. Architecture fout(i) Input Comple- Comple- Comple- output xity xity Xity variable S(i) D(i) V(i) C(i) 1. 1 2 1 1 2 i 1,1 13 January, 2012 Mady By Utpal Ray 19
  • 20. Software Technical Metrics  Architectural Design Metrics ( contd. ) Architectural Complexity Metrics ( contd. ) Sl. Different Fan Total Struct. Data System No. Architecture Out Input Comple- Comple- Comple- fout(i) output xity xity Xity variable S(i) D(i) V(i) C(i) 2. 3 12 9 3 12 i 4,1 3,2 1,1 13 January, 2012 Mady By Utpal Ray 20
  • 21. Software Technical Metrics  Architectural Design Metrics ( Summary ) Architectural Design Metrics Architectural Structure Metrics Architectural Complexity Metrics Structural Complexity Data Fenton’s Size Metric Metrics Complexity Metrics Fenton’s Connectivity Density Metric System Complexity Metrics 13 January, 2012 Mady By Utpal Ray 21
  • 22. Software Technical Metrics  Component Level Design Metrics There are two types of metrics in this category. 1. Coupling Metric 2. Complexity Metric ( Cyclometic Complexity ) Both this metrics require the knowledge of the internal structure of the module at least in a component level. The two metrics mentioned above can be used to determine the quality of the component level design. 13 January, 2012 Mady By Utpal Ray 22
  • 23. Software Technical Metrics  Component Level Design Metrics ( contd. ) Coupling Metric This metric determine the coupling efficiency of a module. Three types of coupling definitions has been incorporated into the formulae for computing this metric. 1. Data and Control Flow Coupling: di = no. of input data parameter ci = no. of input control parameter do = no. of output data parameter co = no. of output control parameter 2. Global Coupling: gd = no. of global variables used as data gc = no. of global variables used as control 3. Environmental Coupling: fout = fan out for that module fin = fan in for that module 13 January, 2012 Mady By Utpal Ray 23
  • 24. Software Technical Metrics  Component Level Design Metrics ( contd. ) Coupling Metric ( contd. ) The coupling metric C is given by:- C = 1 – k / ( di + (a*ci) + do + (b*co) + gd + (c*gc) + fout + fin ) The values of k, a, b, c are adjusted as per experimental verification. In general they are taken as 1, 2, 2, 2 respectively. C will be higher ( closer to 1 ), if a module have high coupling. The minimum value of C will be 0. This will occur when the module has only one parent module and there are no global coupling or control coupling. The module accepts no data variable and also returns no data variable. 13 January, 2012 Mady By Utpal Ray 24
  • 25. Software Technical Metrics  Home Task 1. Take any “Call and Return Architecture” of your choice ( which has at least 6 modules ). Compute the value of all the metrics which fall under the category of ‘Architectural Design Metrics’. Regarding input- output data variable passing, assume 3 input variable and 1 output variable. 2. Prove that the minimum value of coupling efficiency is 0.66. 13 January, 2012 Mady By Utpal Ray 25