Восстановление архитектуры программного обеспечения
Восстановление архитектуры программного обеспечения — это набор методов извлечения архитектурной информации из представлений программной системы более низкого уровня, таких как исходный код. Процесс абстракции для создания архитектурных элементов часто включает в себя кластеризацию объектов исходного кода (таких как файлы, классы, функции и т. д.) в подсистемы в соответствии с набором критериев, которые могут зависеть от приложения или нет. Восстановление архитектуры устаревших систем мотивируется тем, что эти системы часто не имеют архитектурной документации, а когда она имеется, эта документация во многих случаях не синхронизирована с реализованной системой.
Восстановление архитектуры программного обеспечения может потребоваться в рамках модернизации программного обеспечения. [1]
Подходы
[ редактировать ]Большинство подходов к восстановлению архитектуры программного обеспечения основаны на статическом анализе систем. При рассмотрении объектно-ориентированного программного обеспечения, в котором используется множество механизмов полиморфизма и динамического связывания, динамический анализ становится важным методом для понимания поведения системы, взаимодействия объектов и, следовательно, для реконструкции ее архитектуры. В данной работе критерии, используемые для определения того, как сущности исходного кода должны быть кластеризованы в архитектурных элементах, в основном основаны на динамическом анализе системы с учетом появления шаблонов и типов взаимодействия (классов и интерфейсов) в реализациях вариантов использования. . [2]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Ронзон, Т. (2015). «Модернизация программного обеспечения в системах высокой доступности: когда время безотказной работы имеет значение». Программное обеспечение IEEE . 32 (3): 11–17. дои : 10.1109/MS.2016.49 .
- ^ Лютелье, Т.; Чоллак, Д.; Гарсия, Дж.; Тан, Л.; Рэйсайд, Д.; Медвидович, Н.; Крегер, Р. (2015). «Сравнение методов восстановления архитектуры программного обеспечения с использованием точных зависимостей». 2015 IEEE/ACM 37-я Международная конференция IEEE по разработке программного обеспечения, Флоренция . стр. 69–78. дои : 10.1109/ICSE.2015.136 . ISBN 978-1-4799-1934-5 .