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

       

Репозитарий компонентов


ПИК и производные от них объекты размещаются в разных хранилищах (библиотеках, репозитариях  ПС, в  репозитариях Интернет) и используются многократно при построении ПС [30–31]. Например, каждый репозитарий (например, библиотека GreenStone) ориентирован на одну или несколько  предметных  областей.

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

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

В отличие от них компоненты  ПИК записываются  в репозитарий с  поисковым образом,  создаваемый путем  аннотирования ПИК на основе описания информационной части ПИК. В соответствии терминологии UML, лица, которые обеспечивают функционирование репозитария,  называются актерами, а сами работы  с ПИК  – сценариями.

Репозитарий компонентов ПС   упрощает и сокращает сроки разработки ПС за счет:

–  отображения в них  базовых  функций и понятий  ПС;

–   скрытия представления данных, операций обновления и получения доступа к этим данным;

–  обработки исключительных ситуаций, возникающих в процессе выполнения и др.

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


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

Для отображения ПИК в репозитарии проводится их классификация и каталогизация, аннотирование и размещение.

Классификация компонентов обеспечивает  унификацию представления информации о компонентах для  последующего их поиска и отбора из среды репозитария. Она  проводится  с учетом  следующих их групп:

– компонент типа модуль, класс и т.п.;

–  компоненты, которые имеют интерфейс (входные и выходные параметры, пред-, пост- условия функционирования), функциональность и реализацию на ЯП, из которых  создается ПИК со спецификацией шаблона развертывания;

–   готовые к употреблению  ПИК;



– сложные ПИК типа каркасы и  паттерны, которые обеспечивают взаимодействие  простых ПИК.

Каталогизация направлена на  физическое размещение кодов ПИК в  репозитарии  для   извлечения их при необходимости встраивания новый программный проект ПС. Для  выбранных  компонентов  осуществляется их  настройка на условия среды функционирования.

Инженерия ПИК и других компонентов (КОМ1, …, КОМk ) в  разработку новых ПС    осуществляется примерно по технологии, представленной на рис.6.1. Если компоненты написаны на разных ЯП, создаются интефейсные модули (Int1,…, Intk),  в которых подготавливаются и преобразуются  типы передаваемых  данных.

    

1.  Разработка компонентов (КОМ) на ЯП                                                  Среда интеграции

2.  Выбор  ПИК

3. Разработка интерфейсов­ (Іnt) для КОМ  и ПИК                                                 КОМ1                     

4.


Генерация интерфейсов пары КОМ  на  ЯП                                   Int

1                                                                                                                                    

                                                                                                                                           

5.  Разработка  среды и репозитария КОМ                                                  КОМ2   

6.  Типизация и классификация компонентов

7.  Тестирование КОМ, интерфейсов, ПС                                                            КОМ3

8.  Интеграция  разных видов компонентов                                     Int2 

9.  Загрузка ПС  в среде выполнения                                                           Int3                        

10. Сопровождение компонентной ПС                                                                              КОМ



11. Эволюция компонентной ПС                                                              КОМ i                   Intк                                                                                                                                       

 

         

                

                      

                         Рис 6.1 Технология инженерии компонентов в разработке ПС

 

 


Содержание раздела