Preview

Труды Института системного программирования РАН

Расширенный поиск

Моделирование семейств программных систем

https://doi.org/10.15514/ISPRAS-2016-28(6)-4

Полный текст:

Аннотация

Большие программные системы всегда создаются достаточно долго, в несколько этапов, это приводит к необходимости появления версий (релизов) систем. Кроме того, у большой системы всегда есть несколько, а иногда много, конфигураций установки, что обуславливается либо разным набором программно-аппаратного окружения, либо требованиями пользователя системы. Тем самым результатом разработки можно рассматривать не отдельную систему, а цепочку и семейство программных систем или программных продуктов (Product Lines/Product Families). Появление этого понятия можно рассматривать как развитие методов повышения доли повторно-используемого программного обеспечения (re-use). Однако, в отличие от ранних работ по повторно-используемому ПО исследования по семействам программ рассматривают весь спектр работ и задач создания ПО, то есть не только собственно проектирование и программирование, но и документирование, верификацию, поддержку эксплуатации, в частности, инсталляцию и так далее. Одной из работ, выполняемых в ходе создания семейства программ, является моделирование. Статья рассматривает современные подходы к моделированию семейств программных систем, а также, подробнее, одно из направлений этого исследования - моделирование семейств операционных систем (описывая задачи исследования, поддержанного грантом РФФИ).

Об авторах

Е. М. Лаврищева
Институт системного программирования РАН; Московский физико-технический институт (гос. университет)
Россия


А. К. Петренко
Институт системного программирования РАН; Московский государственный университет имени М.В. Ломоносова; Национальный исследовательский университет Высшая школа экономики
Россия


Список литературы

1. Clements P., Northrop L. Software Product Lines: Practices and Patterns. SEI Series in Software Engineering, Addison-Wesley, 2001. ISBN-13: 978-0201703320.

2. Pohl K., Böckle G., van der Linden F. J. Software Product Line Engineering: Foundations, Principles and Techniques. Springer-Verlag, 2005. DOI: 10.1007/3-540-28901-1.

3. Bachmann F., Clements P. Variability in software product lines. CMU/SEI Technical Report CMU/SEI-2005-TR-012, 2005.

4. Лаврищева Е. М., Коваль Г.И., Слабоспицькая О.O., Колесник А.Л. Особенности процессов управления при создании семейств программных систем. Проблемы программирования, (3):40-49, 2009.

5. Лаврищева Е.М., Слабоспицькая О.А., Коваль Г.И., Колесник А.А. Теоретические аспекты управления вариабельностью в семействах программных систем. Весник КНУ, серия физ.-мат. наук, (1):151-158, 2011.

6. Jacobson I., Griss M., Jonsson P. Software Reuse, Architecture, Process and Organization for Business Success. Addison-Wesley, 1997. ISBN-13: 978-0201924763.

7. Буч Г., Рамбо Д., Джекобсон А. Язык UML. Руководство пользователя: Пер. с англ. М.: ДМК, 2000, 432 с.

8. Kang K., Cohen S., Hess J., Novak W., Peterson S. Feature-oriented domain analysis (FODA) feasibility study. CMU/SEI Technical Report CMU/SEI-90-TR-21, 1990.

9. Benavides D., Segura S., Ruiz-Cortés A. Automated analysis of feature models 20 years later: a literature review. Information Systems, 35(6):615-636, 2010. DOI: 10.1016/j.is.2010.01.001.

10. Chen L., Babar M.A. A systematic review of evaluation of variability management approaches in software product lines. Information and Software Technology, 53(4):344-362, 2011. DOI: 10.1016/j.infsof.2010.12.006.

11. Berger T., She S., Lotufo R., Wąsowski A., Czarnecki K. A study of variability models and languages in the systems software domain. IEEE Transactions on Software Engineering, 39(12):1611-1640, 2013. DOI: 10.1109/TSE.2013.34.

12. Thüm T., Apel S., Kästner C., Kuhlemann M., Schaefer I., Saake G. A classification and survey of analysis strategies for software product lines. ACM Computing Surveys, 47(1):article 6, 2014. DOI: 10.1145/2580950.

13. Liebig J., von Rhein A., Kästner C., Apel S., Dörre J., Lengauer C. Scalable analysis of variable software. Proceedings of the 2013 9-th Joint Meeting on Foundations of Software Engineering, pp. 81-91. ACM, 2013. DOI: 10.1145/2491411.2491437.

14. She S., Berger T. Formal semantics of the Kconfig language. Technical note, University of Waterloo, 2010. https://www.kernel.org/doc/Documentation/kbuild/kconfig-language.txt.

15. Эммерих В. Конструирование распределенных объектов. Методы и средства программирования интероперабельных объектов в архитектурах OMG/CORBA, Microsoft COM и JAVA RMI. М.: Мир, 2002. 510с.

16. Лаврищева Е.М. Теория объектно-компонентного моделирования изменяемых программных систем. ИСП РАН, 2015. http://www.ispras.ru/preprints/docs/prep_29_2015.pdf.

17. Berger T., Rublack R., Nair D., Atlee J.M., Becker M., Czarnecki K., Wąsowski A. A survey of variability modeling in industrial practice. Proc. of the 7-th Intl. Workshop on Variability Modelling of Software-intensive Systems (VaMoS’2013), article Νο. 7, ACM 2013. DOI: 10.1145/2430502.2430513.

18. Лаврищева Е.М. Программная инженерия. Парадигмы, технологии, CASE-средства. Изд. Юрайт, М.: 2015, 280 с.

19. Batory D. Feature models, grammars, and propositional formulas. Proc. of the 9-th Intl. Conf. on Software Product Lines (SPLC’05), LNCS 3714, pp. 7-20, 2005. DOI: 10.1007/11554844_3.

20. Wang H., Li Y., Sun J., Zhang H., Pan J. A semantic web approach to feature modeling and verification. Proc. of Workshop on Semantic Web Enabled Software Engineering (SWESE’05), p. 44, 2005.

21. Benavides D., Segura S., Trinidad P., Ruiz-Cortés A. Using Java CSP solvers in the automated analyses of feature models. Generative and Transformational Techniques in Software Engineering, LNCS 4143:399-408. Springer, 2006. DOI: 10.1007/11877028_16.

22. White J., Doughtery B., Schmidt D., Benavides D. Automated reasoning for multi-step software product-line configuration problems. Proc. of the 13-th Sofware Product Line Conference, pp. 11-20, 2009.

23. Zhang W., Mei H., Zhao H. Feature-driven requirement dependency analysis and high-level software design. Requirements Engineering, 11(3):205-220, 2006. DOI: 10.1007/s00766-006-0033-x.

24. Dietrich C., Tartler R., Schröder-Preikshat W., Lohmann D. Understanding Linux feature distribution. Proceedings of the 2012 Workshop on Modularity in Systems Software, pp. 15-20. ACM, 2012. DOI: 10.1145/2162024.2162030.

25. Melo J., Flesborg E., Brabrand C., Wąsowski A. A quantitative analysis of variability warnings in Linux. Proceedings of the 10-th International Workshop on Variability Modelling of Software-intensive Systems, pp. 3-8. ACM, 2016. DOI: 10.1145/2866614.2866615.

26. Sayyad A. S., Ingram J., Menzies T., Ammar H. Scalable product line configuration: a straw to break the camel's back. Proc. of IEEE/ACM 28-th International Conference on Automated Software Engineering (ASE 2013), pp. 465-474. IEEE, 2013. DOI: 10.1109/ASE.2013.6693104.

27. Nguyen T., Colman A., Han J. A web services variability description language (WSVL) for business users oriented service customization. Proc. Int. Workshop on User-Focused Service Engineering, Consumption and Aggregation (USECA 2011).

28. Meinicke J., Thüm T., Schröter R., Benduhn F., Saake G. An overview on analysis tools for software product lines. Proc. of the 18-th Intl. Software Product Line Conf.: Companion Vol. for Workshops, Demonstrations and Tools, vol. 2, pp. 94-101. ACM, 2014. DOI: 10.1145/2647908.2655972.

29. Hemakumar A. Finding Contradictions in Feature Models. Proc. of 12-th Intl. Conf. on Software Product Lines (SPLC’2008), v. 2, pp. 183-190, 2008.

30. Бейер Д., Петренко А.К. Верификация драйверов операционной системы Linux. Труды ИСП РАН, Том 23, 2012 г., стр. 405-412. DOI: 10.15514/ISPRAS-2012-23-23.

31. Apel S., Beyer D., et al. Strategies for product-line verification: case studies and experiments. Proceeding ICSE '13 Proceedings of the 2013 International Conference on Software Engineering, pp. 482-491.

32. Кулямин В.В., Лаврищева Е.М., Мутилин В.С., Петренко А.К. Верификация и анализ вариабельных операционных систем. Труды ИСП РАН, 28(3):189-208, 2016. DOI: 10.15514/ISPRAS-2016-28(3)-12.


Для цитирования:


Лаврищева Е.М., Петренко А.К. Моделирование семейств программных систем. Труды Института системного программирования РАН. 2016;28(6):49-64. https://doi.org/10.15514/ISPRAS-2016-28(6)-4

For citation:


Lavrischeva K.M., Petrenko A.K. Software Product Lines Modeling. Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS). 2016;28(6):49-64. (In Russ.) https://doi.org/10.15514/ISPRAS-2016-28(6)-4

Просмотров: 120


Creative Commons License
Контент доступен под лицензией Creative Commons Attribution 4.0 License.


ISSN 2079-8156 (Print)
ISSN 2220-6426 (Online)