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

Информационная модель


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

– реальные предметы мира, имеющие физическое воплощение;

– абстракции физических предметов этого  мира;

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

– взаимодействия - это отношение между объектами;

– спецификации – это представление правил, стандартов, критериев качества и ограничений на использование системы.

Для классов  объектов   выбираются уникальные имена, устанавливаются атрибуты и  устанавливаются связи между объектами.

Атрибуты объектов. Для  списка выявленных объектов определяются их характерные признаки или свойства,  называемые атрибутами. Каждый атрибут есть абстракция одной характеристики  объекта, которая присуща всем представителям класса объектов.  За атрибутом закрепляется имя, уникальное в границах этого класса.

Для каждого из выбранных атрибутов определяются  возможные значения (типы значений) одним из следующих способов:

– задание числового диапазона;

– перечисление возможных значений;

– ссылка  на документ,  в котором определены возможные значения;

– правила генерации значений.



 

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


Ссылка на атрибут может уточняться именем класса, задаваемым через точку.            Атрибуты объектов представляются как атрибуты отношений согласно следующих правил:

– каждый экземпляр объекта обязательно имеет одно значение (значение не может быть неопределенным  или отсутствующим);

– атрибут  одномерен и не имеет нескольких значений одновременно;

– если идентификатор составляется  из  нескольких  имен атрибутов, все указанные имена атрибутов, кроме  первого, относятся к первому указанному имени объекта.

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

1) проект  имеет  исполнителей, которые   заняты в проекте;

2) руководитель управляет  исполнителями, т.е. исполнитель подчинен руководителю;

3) исполнитель занимает комнату, т.е. комната занята  исполнителем.

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

В методе различаются три фундаментальных вида связи между объектами:

–        один к одному (1:1),  в связи принимают участие по одному экземпляру с каждой стороны (пример, в некоторой организации руководитель занимает отдельный кабинет и руководит лично только одним проектом);

–        один ко многим (1:n), один  экземпляр объекта некоторого класса может поддерживать отношения одновременно с несколькими экземплярами объектов другого или  того же класса (пример, руководитель может иметь несколько подчиненных, но у каждого из них один шеф);



–         много ко многим  (m: n ),  в связи могут принимать участие  несколько экземпляров объектов с каждой стороны.

 Метод С.Шлаер и С.Меллора предусматривает специальную графическую нотацию для фиксации связей, базирующихся  на  диаграммах   метода  Чена сущность -  связь  (entity–relations) [3] для представления  информационной модели проблемной области, суть которого заключается в следующем.

Связи между объектами изображаются стрелками, указывающими направление    связи.    Возле   рамки   объекта, принимающей  участие в связи, на линии стрелки   указывается   роль, которая   этот    объект поддерживает в данной   связи. Связь   1:1   обозначается двунаправленной стрелкой, имеющей по одному "наконечнику" стрелки с каждой стороны, связь 1:n обозначается стрелкой, имеющей  два "наконечника" со стороны объекта, для которого в связи могут принимать участие несколько экземпляров, и, наконец,  по два "наконечника" с каждой стороны имеет стрелка, означающая связь вида n : m.

Над стрелкой может указываться название (имя) связи. Связи могут быть безусловными, т.е. каждый экземпляр объекта заданного класса принимает участие в связи. Условные связи, когда отдельные экземпляры объектов  класса   не  принимают участия в связи, и обозначаются  буквой "у" в конце стрелки.

Отношение, имеющее особый вес для представления онтологии и выражающее общность и различие  между классами объектов, является отношением наследования . Оно представляется с помощью, так называемой, диаграммы классов. На рис.4.1. приведен пример такой диаграммы.

                          

                                  Матрица  

                          – тип элемента   

                          – количество строк

                          – количество столбцов



                            Матрица с неполным

                                 заполнением

                                          является 

 



     Диагональная              Ленточная        Разреженная

            

               Рис.4.1. Пример диаграммы класса

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






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