Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Architecture Metrics Hany Ammar, Mark Shereshevsky, Ali Mili, Walid Rabie and Nicholay Gradetsky Lane Department of Computer Science & Electrical.

Similar presentations


Presentation on theme: "Software Architecture Metrics Hany Ammar, Mark Shereshevsky, Ali Mili, Walid Rabie and Nicholay Gradetsky Lane Department of Computer Science & Electrical."— Presentation transcript:

1 Software Architecture Metrics Hany Ammar, Mark Shereshevsky, Ali Mili, Walid Rabie and Nicholay Gradetsky Lane Department of Computer Science & Electrical Engineering hammar@wvu.edu; (smark, amili, rabie, grani)@csee.wvu.edu

2 Initiative Title: Architectural Level Software Metrics '01 Architectural Level Software Metrics '01 FY2001 University SOFTWARE INITIATIVE PROPOSAL for the NASA SOFTWARE IV&V FACILITY

3 Outline Project Overview Hub Control Software (HCS) case study Definition of the entropy based metrics Definition of the Quantitative Factors Informational Integrity Coefficient (IIC) Conclusions (achievements) Papers submitted Work In Progress Future work (2 nd year plans)

4 Project Overview Developing a class of architectural metrics that quantify information flow in the architecture. Different metrics reflect: Coupling vs. cohesion; Data flow vs. control flow; Static measurement vs. dynamic measurement; Introducing a group of quantitative factors: mathematically defined functions, that are relevant with respect to qualitative attributes of the architecture Establishing analytical relationship between the metrics and the quantitative factors Automating computation of the metrics

5 Product Artifacts Architecture, Design, Code, External Attributes: Maintainability,Testability, Reliability, Computable Metrics: Coupling, cohesion, complexity, etc. Error Propagation, ChangePropagation, Requirements Propagation impacts computed for Analytical Definitions Mathematical Formula have Historical Data Measurement Values produce Validation Analytical Derivations Quantified McCall's model of software quality [McCall 1977], Three-level hierarchy of software attributes Project Overview

6 Project Overview McCall's model of software quality in UML

7 Hub Control Software (HCS) Case Study International Space Station

8 General HCS-ITCS scheme HCS ITCS SCITCS FRITCS LRITCS PPA mon PFMC LT PFMC MT Scheduler State manger CMD Queue O/P CMD Queue N3-1 Data Access RPCM N3-2 Data Access Other HCS sub-systems

9 HCS case study: Hierarchical Architecture

10 Definition of entropy based metrics n Definition 1: Coupling: The coupling from A to B, denoted Coupling(A,B), is the entropy of random variable V A  B. Cohesion: The cohesion of A is defined as coupling from A to A. Ensemble CNTL, DATA  E p is the probability distribution of E. V A  B is a random variable defined by E and p S CNTL AB DATA

11 HCS case study : ITCS Static Control Matrix ScitcsFritcsPfmc mtpfmc ltlritcsppa mon Scitcs3.71.58 Fritcs23.9100 Pfmc mt1220 pfmc lt1202 lritcs ppa mon

12 HCS case study : HCS Static Control Matrix (LEVEL 1) itcsN3queuesrpcmschstate man itcs1.0601000 N3100000 Queues010000 rpcm000200 sch000010 state man000001.58

13 Information Theoretic metrics Method of data collection Aspect of inform. exchange Static (syntactic analysis, Comprehensive statistics) Dynamic (running actual instances of the architecture) Control Entropy of set of methods, with statically computed probabilities Entropy of set of methods, with dynamically computed probabilities Data Entropy of set of parameter values, with statically computed probabilities Entropy of set of parameter values, with dynamically computed probabilities

14 HCS case study : ITCS Dynamic Control Matrix ScitcsFritcsPfmc mtpfmc ltlritcsppa mon Scitcs3.3191194811.56378971.19243058 Fritcs1.539484763.6526901400 Pfmc mt0.732066691.462349791.91325050 pfmc lt0.805804911.4834360401.93555927 lritcs ppa mon

15 HCS case study : HCS Dynamic Control Matrix (LEVEL 1) itcsN3queuesrpcmschstate man itcs1.1757360800.590576000 N30.98801621 5 00000 Queues010000 rpcm0001.9261207500 sch00000.9999920 state man000001.584963

16 Definition of the Quantitative Factors n Quantitative Factors bridge the gap between qualitative attributes (which we want to assess) and computable metrics (which we can measure). n Some Quantitative Factors: Error Propagation Change Propagation Requirements propagation

17 Definition of the Quantitative Factors: error propagation  B (x) is the state of B resulting from invoking B on input x. Suppose, due to a fault in A, the information transmitted from A to B is corrupted from the expected x to some erroneous x`.  The error propagation (EP) is a measure of the likelihood that an error in the message sent by A will propagate into B. S X AB x x` x OR Error

18 Definition of the Quantitative Factors: error propagation Continued n Definition 2: Error Propagation: The error propagation from A to B is defined as the following conditional probability: EP(A,B) = Prob( B (x)  B (x’) | x  x’). This equation can be reduced to: EP(A,B) = 1 – exp( – Coupling(A, B)) + exp( – Cohesion(B)).

19 Definition of the Quantitative Factors: error propagation Continued From the analysis of the above equation:  The higher the coupling from A to B – the higher is the error propagation from A to B.  The lower the cohesion of component B – the higher is the error propagation from A to B. These observations, consistent with intuition, provide an analytical validation of our metrics. Our equation gives these relationships (which are not surprising by themselves) precise analytical form.

20 Informational Integrity Coefficient (IIC) n One of architecture quality guidelines is to maximize cohesion and minimize coupling of components. n We introduce a quantitative characteristic, which we call the informational integrity coefficient of an architecture which assesses its conformance to this guideline. n The coefficient is computed based on the information flow matrix. IIC =

21 HCS case study : HCS-ITCS (flattened) Static Control Matrix IIC = 0.749

22 HCS case study : ITCS Static Control Matrix ScitcsFritcsPfmc mtpfmc ltlritcsppa mon Scitcs3.71.58 Fritcs23.9100 Pfmc mt1220 pfmc lt1202 lritcs ppa mon IIC = 0.795

23 HCS case study : HCS Static Control Matrix (LEVEL 1) itcsN3queuesrpcmschstate man itcs1.0601000 N3100000 Queues010000 rpcm000200 sch000010 state man000001.58 IIC = 0.861

24 IIC = 0.773 HCS case study : HCS-ITCS (flattened) Dynamic Control Matrix

25 HCS case study : ITCS Dynamic Control Matrix ScitcsFritcsPfmc mtpfmc ltlritcsppa mon Scitcs3.3191194811.56378971.19243058 Fritcs1.539484763.6526901400 Pfmc mt0.732066691.462349791.91325050 pfmc lt0.805804911.4834360401.93555927 lritcs ppa mon IIC = 0.884

26 HCS case study : HCS Dynamic Control Matrix (LEVEL 1) itcsN3queuesrpcmschstate man itcs1.1757360800.590576000 N30.98801621 5 00000 Queues010000 rpcm0001.9261207500 sch00000.9999920 state man000001.584963 IIC = 0.887

27 HCS case study : IIC Comparison Flattened Architecture Vs Hierarchical Architecture ArchitectureStaticDynamic HCS-ITCS (flattened)0.7490.773 HCS_ITCS (Level 1)0.8610.887 ITCS (Level 0)0. 7950.844 N3 (Level 0)11 Queues (Level 0)11 n The flattened architecture shows a lower IIC than the hierarchical architecture, this proves that the hierarchical architecture is more cohesive and less coupled

28 Conclusions (achievements) We defined coupling and cohesion metrics for hierarchical architectures based on the information theory. We introduced a normalized measure, the informational integrity coefficient (IIC) of an architecture based on the computed metrics We derived the relationship between the coupling/cohesion metrics and the error propagation factor between components.

29 Papers submitted Conferences Annual International Computer Software and Applications Conference (COMPSAC 2001) Title: "Information-Theoretic Metrics for Software Architectures“ – Status: Accepted for publication Automated Software Engineering Conference (ASE 2001) Title: "Quantifying Architectural Attributes of UML Specifications: A Framework and Its Automation" – Status: Submitted June 29, 2001 Journals Automated Software Engineering Journal Title: "Quantifying Software Architectures: Definitions and Automation Plans“ – Status: submitted: May 11, 2001 Transactions on Software Engineering Journal Title: "Information Theoretic Metrics for Software Architectures" – Status: submitted: April, 2001

30 Future Work Deriving a relationship between our coupling/cohesion metrics and the change propagation, Developing an automation methodology for computing the metrics given a UML description of the architecture, Validating the metrics using a NASA CASE Study

31 Canonical Architectural Style Automation support for metrics computation Software System Conceptual view (RoseRT-UML) Static Metrics Quantitative factors (EP, CP) In progress Planned Has a view Other views (UML, Rapide) Dynamic Metrics Transformation Information Integrity Coefficient


Download ppt "Software Architecture Metrics Hany Ammar, Mark Shereshevsky, Ali Mili, Walid Rabie and Nicholay Gradetsky Lane Department of Computer Science & Electrical."

Similar presentations


Ads by Google