Formalism and Language Tools for Specification of the Semantics of Software Libraries
- 16 Downloads
The paper considers the specification of the structure and the behavior of software libraries. It describes the existing problems of library specifications. A brief overview of the research field concerned with formalizing the specification of libraries and library functions is presented. The requirements imposed on the formalism designed are established; the formalism based on these requirements allows specification of all the properties of the libraries needed for automation of several classes of problems: defect detection in software, migration of applications into a new environment, and generation of software documentation. Requirements for language tools based on the developed formalism are proposed. The conclusion defines potential directions for further research.
Keywordsformal specification software library behavioral description software defect specification language
Unable to display preview. Download preview PDF.
- 2.Exton, C., Watkins, D., and Thompson, D., Comparisons between CORBA IDL and COM/DCOM MIDL: Interfaces for distributed computing, Proceedings of the technology of object-oriented languages and systems, Tools-25 (TOOLS’97), IEEE Computer Society, Washington, DC, USA, 1997, pp. 15–23.Google Scholar
- 6.Roscoe, A.W., Modelling and verifying key-exchange protocols using CSP and FDR, Proceedings of 1995 IEEE Computer Security Foundations Workshop, IEEE Computer Society Press, 1995.Google Scholar
- 7.de Alfaro, L. and Henzinger, T., Interface automata, Proceedings of the 8th European Software Engineering Conference Held Jointly with 9th ACM SIGSOFT International Symposium on Foundations of Software Engineering (ESEC/FSE-9), New York: ACM, 2001, pp. 109–120Google Scholar
- 8.Ramanathan, M., Grama, A., and Jagannathan, S., Static specification inference using predicate mining, Proceedings of the 28th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI '07), New York: ACM, 2007, pp. 123–134Google Scholar
- 9.Sankaranarayanan, S., Ivancic, F., and Gupta, A., Mining library specifications using inductive logic programming, Proceedings of the 30th International Conference on Software Engineering (ICSE’08), New York: ACM, 2008, pp. 131–140Google Scholar
- 10.Ball, T. and Rajamani, S.K., SLIC: A Specication Language for Interface Checking (of C), Microsoft Research, Technical Report, MSR-TR-2001-21, 2002.Google Scholar
- 12.Itsykson, V.M. and Zozulya, A.V., The formalism for description of the partial specifications of program envinroment components, S.-Petersb. State Polytech. Univ. J., Comput. Sci., Telecommun. Control Syst., 2011, vol. 4, pp. 81–90.Google Scholar
- 13.Itsykson, V.M. and Glukhikh, M.I., A program component behavior specification language, St.-Petersb. State Polytech. Univ. J., Comput. Sci., Telecommun. Control Syst., 2010, vol. 3, pp. 63–71.Google Scholar
- 15.Itsykson, V., et al., Automatic defects detection in industrial C/C++ software, Proceeding of 5th Central and Eastern European Software Engineering Conference in Russia (CEESECR), IEEE, 2009, pp. 50–55Google Scholar
- 16.Itsykson, V.M. and Zozulya, A.V., Automated program transformation for migration to new libraries, Software Eng., 2012, vol. 6, pp. 8–14.Google Scholar