This Article 
 Bibliographic References 
 Add to: 
A Model for Estimating the Size of a Formal Communication Protocol Specification and Its Implementation
January 2003 (vol. 29 no. 1)
pp. 46-62

Abstract—Good project management is key when developing a software system successfully. To manage a project well, it is important to have the optimal resource allocation which is affected by the size of an implementation. Early software size estimation is essential for good project management. Existing software size models estimate the size of an implementation usually in terms of the number of lines of code. The main drawback of these models is that there is a wide margin of uncertainty as the actual size depends on the type of application and the software development method adopted. To address this drawback, we focus our work on communication protocol, and propose that the size of a formal specification needs to be estimated from an informal specification. This paper presents a two-stage size model for estimating the sizes of a formal communication protocol specification and its implementation, with the model validated using a test data set. The main benefit of this work is that it can give an indication of the likely sizes of both a formal specification and its implementation early at the development stage, giving developers a technique for managing communication software project better.

[1] F.P. Brooks, “Report of the Defense Science Board Task Force on Military Software,” Office of the Undersecretary of Defense for Acquisition, Sept. 1987.
[2] F.J. Redmill, “Considering Quality in the Management of Software-Based Development Projects,” Information and Software Technology, vol. 32, no. 1, pp. 18–25, 1990.
[3] S.D. Conte, H. E. Dunsmore, and V. Y. Shen, Software Engineering Metrics and Models, Benjamin/Cummings, Menlo Park, Calif., 1986.
[4] B. Boehm, Software Engineering Economics, Prentice Hall, Upper Saddle River, N.J., 1981, pp. 533-535.
[5] L.H. Putnam, “A General Empirical Solution to the Macro Software Sizing Problem,” IEEE Trans. Software Eng., vol. 4, pp. 345–361, Apr. 1978.
[6] J.W. Bailey and V.R. Basili, ”A Meta Model for Software Development Resource Expenditure,” Proc. Int'l Conf. Software Eng., pp. 107–115, Mar. 1981.
[7] A.J. Albrecht and J.E. Gaffney, “Software Functions, Source Lines of Code, and Development Effort Prediction: A Software Science Validation,” IEEE Trans. Software Eng., vol. 9, no. 9, pp. 639–648, Nov. 1983.
[8] L.H. Rubin, “Macro-Estimation of Software Development Parameters: The ESTIMACS System,” SOFTFAIR-Software Development: Tools, Techniques, and Alternatives, pp. 109–118, 1983.
[9] C. Jones, Programming Productivity. New York: McGraw-Hill, 1986.
[10] A. Heiat and N. Heiat, “A Model for Estimating Efforts Required For Developing Small-Scale Business Applications,” J. Systems Software, vol. 39, no. 1, pp. 7–14, Oct. 1997.
[11] J. Verner and G. Tate, “A Software Size Model,” IEEE Trans. Software Eng., vol. 18, no. 4, pp. 265–278, Apr. 1992.
[12] T. Mukhopadhyay and S. KeKre, “Software Effort Models for Early Estimation of Process Control Applications,” IEEE Trans. Software Eng., vol. 18, no. 10, pp. 915–923, Oct. 1992.
[13] L.A. Laranjeira, "Software Size Estimation," IEEE Trans. Software Eng., vol. 16, pp. 512-522, 1990.
[14] C.J. Lokan, “Early Size Prediction for C and Pascal Programs,” J. Systems Software, vol. 32, no. 1, pp. 65–72, Jan. 1996.
[15] J.E. Matson, B.E. Barret, and J.M. Mellichamp, “Software Development Cost Estimation Using Function Points,” IEEE Trans. Software Eng., vol. 20, no. 4, pp. 275–287, Apr. 1994.
[16] D.J. Reifer, “Asset-R: A Function Point Sizing Tool for Scientific and Real-Time Systems,” J. Systems Software, vol. 11, no. 3, pp. 159–171, Mar. 1990.
[17] M. Hakuta, F. Tone, and M. Ohminami, “A Software Size Estimation Model and Its Evaluation,” J. Systems and Software, vol. 37, pp. 253–263, 1997.
[18] J.M. Schneider, L.F. Mackert, G. Zorntlein, R.J. Velthuys, and U. Bar, “An Integrated Environment for Developing Communication Protocols,” Computer Networks and ISDN Systems, vol. 25, no. 1, pp. 43–61, Aug. 1992.
[19] D. Sidhu and A. Chung, “Experience with Formal Methods in Protocol Development,” Formal Description Techniques, II, S.T. Voung, ed., pp. 437–453, 1990.
[20] ISO9074, Information Processing Systems—Open System Interconnection, Estelle (Formal Description Technique Based on Extended State Transition Model), 1989.
[21] S. Budkowski and P. Dembinski, “An Introduction to Estelle: A Specification Language for Distributed Systems,” Computer Networks and ISDN Systems, vol. 14, no. 1, pp. 3–23, 1987.
[22] ITU-T, “Specification and Description Language,” ITU-T Recommendation Z. 100, 1987.
[23] S.J. Huang and R. lai, “Estimating the Size of an Estelle Specification for a Communication Protocol,” Proc. 21st Int'l Computer Software and Applications Conf., pp. 565–568, 1997.
[24] S. Budkowski, “Estelle Development Toolset (EDT),” Computer Networks and ISDN Systems, vol. 25, no. 1, pp. 63–82, 1992.
[25] J. Neter, W. Wasserman, and M.H. Kutner, Applied Linear Statistical Models: Regression, Analysis of Variance, and Experimental Designs, third ed. Irwin, Inc., 1990.
[26] B.A. Kitchenham, "Empirical Studies of Assumptions that Underlie Software Cost-Estimation Models," Information and Software Technology, vol. 34, no. 4, pp. 211-218, 1992.
[27] A.J. Albrecht, “Measuring Application Development Productivity,” Proc. IBM Applications Development Symp., pp. 83–92, 1979.
[28] A. Lombardo, A. Morzenti, and S. Palazzo, “On The Use of Estelle in the OSI Framework,” Computer Standards and Interfaces, vol. 9, pp. 21–29, 1989.
[29] A.V. Levitin, “How To Measure Software Size, and How Not To,” Proc. 10th Int'l Computer Software and Applications Conf., pp. 314–318, 1986.
[30] D.P. Sidhu and T.P. Blumer, “Semi-Automatic Implementation of OSI Protocols,” Computer Networks and ISDN Systems, vol. 18, no. 3, pp. 221–238, 1989/1990.
[31] C. Kemerer, "An Empirical Validation of Software Cost Estimation Models," Comm. ACM, vol. 30, pp. 416-429, May 1987.
[32] “A Descriptive Evaluation of Software Sizing Models,” prepared for Headquarters USAF/Airforce Cost Ctr., Washington, DC, by IIT Research Inst., Lanham, MD Sept. 1987.
[33] A. Jirachiefpattana and R. Lai, “Application of Estelle to Modeling and Analysis of the ISO RTSE Protocol,” Int'l J. Computer and Eng. Management, vol. 5, no. 1, 1997.
[34] ISO Logical Link Control Type-3 Operations: Acknowledged Connectionless Service, ISO/IEC JTC 1/SC6, 1988.
[35] S.J. Huang and R. Lai, “On Measuring the Complexity of an Estelle Specification” J. Systems and Software, vol. 40, no. 2, pp. 161–181, Feb. 1998.
[36] S.J. Huang and R. Lai, “Deriving Complexity Information from a Formal Communication Protocol Specification,” Software Practice and Experience, vol. 28, no. 14, pp. 1465-1491, Dec. 1998.
[37] Y. Chernov, “Application of SDL Metric Suite Through Development Phases,” Proc. Specification and Description Language Conf., 1999.

Index Terms:
Size model, regression analysis, formal description techniques, Estelle, EDT.
Richard Lai, Sun-Jen Huang, "A Model for Estimating the Size of a Formal Communication Protocol Specification and Its Implementation," IEEE Transactions on Software Engineering, vol. 29, no. 1, pp. 46-62, Jan. 2003, doi:10.1109/TSE.2003.1166588
Usage of this product signifies your acceptance of the Terms of Use.