Формализм и языковые инструменты для описания семантики программных библиотек
https://doi.org/10.18255/1818-1015-2016-6-754-766
Аннотация
Статья посвящена вопросам спецификации структуры и поведения программных библиотек. Описываются существующие проблемы спецификации библиотек. Дается краткий обзор состояния дел в области формализации спецификации библиотек и библиотечных функций. Формулируются требования к создаваемому формализму. На основе требований предлагается формализм, позволяющий специфицировать все необходимые свойства библиотек, требуемые для автоматизации нескольких классов задач: обнаружение дефектов в программном обеспечении, миграция приложений в новое окружение, генерация программной документации. На базе формализма формулируются требования к языковым средствам спецификации библиотек. В заключении определяются дальнейшие направления исследований.
Об авторе
В. М. ИцыксонРоссия
канд. техн. наук, доцент, ул. Политехническая, д. 29, г. Санкт-Петербург, 195251, Россия
Список литературы
1. Lamb D., “IDL: sharing intermediate representations”, ACM Trans. Program. Lang. Syst, 9:3 (1987), 297–318.
2. Exton C., Watkins D., 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, 15–23.
3. Sankar S., Hayes R., “ADL—an interface definition language for specifying and testing software”, SIGPLAN, 29:8 (1994), 13–21.
4. Allen R., Garlan D., “Formalizing architectural connection”, Proceedings of the 16th international conference on Software engineering (ICSE ’94), IEEE Computer Society Press, Los Alamitos, CA, USA, 1994, 71–80.
5. Хоар Ч., Взаимодействующие последовательные процессы, М.: Мир, 1989.
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.
7. de Alfaro L, 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), ACM, New York, NY, USA, 2001, 109–120.
8. Ramanathan M., Grama A., Jagannathan S., “Static specification inference using predicate mining”, Proceedings of the 28th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI ’07), ACM, New York, USA, 2007, 123–134.
9. Sankaranarayanan S.,Ivancic F.,Gupta A., “Mining library specifications using inductive logic programming”, Proceedings of the 30th international conference on Software engineering (ICSE ’08), ACM, New York, USA, 2008, 131–140.
10. Ball T., Rajamani S.K., SLIC: a Specication Language for Interface Checking (of C), Microsoft Research, Technical Report, MSR-TR-2001-21, 2002.
11. Leavens G.T., “The future of library specification”, Proceedings of the FSE/SDP workshop on Future of software engineering research (FoSER ’10), ACM, New York, USA, 2010, 211–216.
12. Ицыксон В.М., Зозуля А.В., “Формализм для описания частичных спецификаций компонентов программного окружения”, Научно-технические ведомости СПбГПУ. Информатика. Телекоммуникации. Управление, 4 (2011), 81–90.
13. Ицыксон В.М., Глухих М.И., “Язык спецификаций поведения программных компонентов”, Научно-технические ведомости СПбГПУ. Информатика. Телекоммуникации. Управление, 3 (2010), 63–71.
14. Akhin M.Kh., Belyaev M.A., Itsykson V.M., “Software defect detection by combining bounded model checking and approximations of functions”, Automatic Control and Computer Sciences, 48:7 (2014), 389–397.
15. Itsykson V., etc, “Automatic defects detection in industrial C/C++ software”, Proceeding of 5th Central and Eastern European Software Engineering Conference in Russia (CEE- SECR), IEEE, 2009, 50–55.
16. Ицыксон В.М., Зозуля А.В., “Автоматизированная трансформация программ при миграции на новые библиотеки”, Программная инженерия, 6 (2012), 8–14.
17. Kirchner F., etc, “Frama-C: A software analysis perspective”, Formal Aspects of Computing, 27:3 (2015), 5733609.
Рецензия
Для цитирования:
Ицыксон В.М. Формализм и языковые инструменты для описания семантики программных библиотек. Моделирование и анализ информационных систем. 2016;23(6):754-766. https://doi.org/10.18255/1818-1015-2016-6-754-766
For citation:
Itsykson V.M. The Formalism and Language Tools for Semantics Specification of Software Libraries. Modeling and Analysis of Information Systems. 2016;23(6):754-766. (In Russ.) https://doi.org/10.18255/1818-1015-2016-6-754-766