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.
This is a preview of subscription content, log in to check access.
Buy single article
Instant access to the full article PDF.
Price includes VAT for USA
Lamb, D., IDL: Sharing intermediate representations ACM Trans. Progr. Lang. Syst., 1987, vol. 9, no. 3, pp. 297–318.
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.
Sankar, S. and Hayes, R., ADL—an interface definition language for specifying and testing software, SIGPLAN, 1994, vol. 29, no. 8, pp. 13–21.
Allen, R. and Garlan, D., Formalizing architectural connection, Proceedings of the 16th International Conference on Software Engineering (ICSE’94), Los Alamitos, CA: IEEE Computer Society Press, 1994, pp. 71–80
Hoare, C.A.R., Communicating Sequential Processes, Prentice Hall, 1985.
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.
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–120
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–134
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–140
Ball, T. and Rajamani, S.K., SLIC: A Specication Language for Interface Checking (of C), Microsoft Research, Technical Report, MSR-TR-2001-21, 2002.
Leavens, G.T., The future of library specification, Proceedings of the FSE/SDP Workshop on Future of Software Engineering Research (FoSER’10), New York: ACM, 2010, pp. 211–216
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.
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.
Akhin, M.Kh., Belyaev, M.A., and Itsykson, V.M., Software defect detection by combining bounded model checking and approximations of functions, Autom. Control Comput. Sci., 2014, vol. 48, no. 7, pp. 389–397.
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–55
Itsykson, V.M. and Zozulya, A.V., Automated program transformation for migration to new libraries, Software Eng., 2012, vol. 6, pp. 8–14.
Kirchner, F., et al., Frama-C: A software analysis perspective, Formal Aspects Comput., 2015, vol. 27, no. 3, pp. 573–609.
Original Russian Text © V.M. Itsykson, 2016, published in Modelirovanie i Analiz Informatsionnykh Sistem, 2016, Vol. 23, No. 6, pp. 754–766.
About this article
Cite this article
Itsykson, V.M. Formalism and Language Tools for Specification of the Semantics of Software Libraries. Aut. Control Comp. Sci. 51, 531–538 (2017). https://doi.org/10.3103/S0146411617070100
- formal specification
- software library
- behavioral description
- software defect
- specification language