Методы и средства инженерии программного обеспечения


Аспектно–ориентированное программирование


Аспектно–ориентированное программирование (АОП) [18–20] – это парадигма   построения гибких к изменению ПС за счет добавление  новых  функций, средств безопасности и взаимодействия компонентов с другой средой,  синхронизации  одновременного доступа частей ПС к данным, вызова   общесистемных средств и др.

Аспектом может быть некоторая функция, ПИК, элемент или часть готовой программы, отдельный компонент,  концепция взаимодействия, защиты и др.  Созданная средствами  АОП  ПС из отдельных программ семейства  может включать  набор  ПИК,  объекты, небольшие   методы и  аспекты, как средство  дополнения ПС  необходимыми концепциями взаимодействия или защиты для новой среды, которые  пересекают (переплетают) компоненты и тем самым  значительно  усложняют процесс вычислений. 

Реализация  аспектов в различных  частях программного кода ПС решается  путем установления перекрестных ссылок и точек соединения, через которые осуществляется  связь аспекта с транзакциями,  защитой данных и т.п.

В основе  АОП лежит метод разбиения задач ПрО на ряд функциональных компонентов с применением  аспектов (синхронизации, взаимодействия, защиты и др.), которые встраиваются в отдельные компонентов в некоторые  их точки для выполнения соответствующих нефункциональных требований к организации выполнения компонента с другими компонентами или средами.

Кроме того, в качестве аспекта может использоваться некоторая  задача,  которая интересует нескольких заинтересованных лиц проекта и представленная  с помощью  вариантов использования, функции для компонента или программы. Некоторые аспекты могут  реализовываться  на этапах ЖЦ процесса разработки, способствуя улучшению  результат разработки ПС.

Создание конечного  продукта ПС  в АЛП выполняется по технологии, соответствующей разработке компонентных систем, с той разницей, что здесь используются аспекты, которые задают условия  выполнения компонентов (безопасность, защиту, взаимодействие  и др.) в среде функционирования.  В процессе разработки аспекты отображают разные роли взаимодействующих лиц, что приближает аспект к роли программного агента в плане  выполнения некоторых  функций при  определении архитектуры системы,  управления проектом и повышения качества ПС.




- Начало -  - Назад -  - Вперед -