On measuring the complexity of an estelle specification

Software metrics are useful quantitative indicators to assess and predict software quality attributes; a commonly measured attribute is software complexity. The main drawbacks of these metrics are: they can only be calculated after a major development effort has been committed to producing the source codes; they cannot provide early feedback during the specification phase; and subsequently it is expensive to make changes to the system, if so indicated by the metrics. Formal Description Techniques (FDTs) enable formal specification to be systematically analyzed. They should also make it possible to assess software quality attributes like maintainability and reliability, and to predict the development or maintenance cost/effort early in the specification phase of the formal protocol development life cycle. To date, little work has been devoted to this area. In this paper, we describe how the complexity of an Estelle specification can be measured. The Sliding Window Protocol specified in Estelle is used as an example to illustrate our approach to measuring the complexity of an Estelle specification. The Management Decision Support System (MDSS), which integrates software measurement into the formal protocol development, is also described in this paper.

[1]  Victor R. Basili,et al.  An Empirical Study of a Syntactic Complexity Family , 1983, IEEE Transactions on Software Engineering.

[2]  Dar-Biau Liu,et al.  Metrics for requirements engineering , 1995, J. Syst. Softw..

[3]  Tharam S. Dillon,et al.  Software Complexity and Its Impact on Software Reliability , 1988, IEEE Trans. Software Eng..

[4]  Vianney Côté,et al.  Software metrics: An overview of recent results , 1988, J. Syst. Softw..

[5]  H. E. Dunsmore,et al.  Software engineering metrics and models , 1986 .

[6]  Sallie M. Henry,et al.  Software Structure Metrics Based on Information Flow , 1981, IEEE Transactions on Software Engineering.

[7]  Robert L. Glass,et al.  Measuring software design quality , 1990 .

[8]  Anas N. Al-Rabadi,et al.  A comparison of modified reconstructability analysis and Ashenhurst‐Curtis decomposition of Boolean functions , 2004 .

[9]  H. E. Dunsmore,et al.  Software Science Revisited: A Critical Analysis of the Theory and Its Empirical Support , 1983, IEEE Transactions on Software Engineering.

[10]  Martin Shepperd,et al.  Derivation and Validation of Software Metrics , 1993 .

[11]  H. F. Li,et al.  An Empirical Study of Software Metrics , 1987, IEEE Transactions on Software Engineering.

[12]  Stanislaw Budkowski,et al.  An Introduction to Estelle: A Specification Language for Distributed Systems , 1987, Comput. Networks.

[13]  Yair Wand,et al.  An Automated Approach to Information Systems Decomposition , 1992, IEEE Trans. Software Eng..

[14]  Carl A. Sunshine,et al.  Protocol Specification, Testing and Verification - Guest Editorial , 1982, Comput. Networks.

[15]  Kuldeep Kumar,et al.  Informal and Formal Requirements Specification Languages: Bridging the Gap , 1991, IEEE Trans. Software Eng..

[16]  Victor R. Basili,et al.  Analyzing Error-Prone System Structure , 1991, IEEE Trans. Software Eng..

[17]  W. B. Samson,et al.  Predictive software metrics based on a formal specification , 1987 .

[18]  David N. Card,et al.  Resolving the software science anomaly , 1987, J. Syst. Softw..

[19]  Dennis G. Kafura,et al.  The Use of Software Complexity Metrics in Software Maintenance , 1987, IEEE Transactions on Software Engineering.

[20]  Martin Shepperd,et al.  An evaluation of software product metrics , 1988 .

[21]  Maurice H. Halstead,et al.  Elements of software science , 1977 .