Общие принципы описания проблемной области
Концептуальная схема и информационная база должны описывать концептуальное представление. Это подразумевает, что концептуальная схема определяется в терминах и конструкциях, относящихся к объектам в самой проблемной области и выражающих состояние этих объектов.
Конструкции, используемые в концептуальной схеме и информационной базе, должны опираться на формальную логику в качестве теоретического обоснования. Можно ограничиться простейшими конструкциями, выражающими фундаментальные понятия. Но всегда можно определить над этими основами более сложные конструкции («макроконструкции»), которые могут быть более удобными или эффективными для описания различных аспектов проблемной области.
Выбор конкретных макроконструкций основывается на таких практических соображениях, как легкость понимания и использования. Этот выбор зависит от области применения информационной системы, для которой предусматривается концептуальная схема и информационная база.
Необходимо тщательно провести различие между сущностями и их описаниями. В этих описаниях сущности идентифицируются именами, которые ссылаются на сущности. Сюда входят синонимы — различные имена, относящиеся к одной и той же сущности, и омонимы — идентичные имена, относящиеся к различным сущностям.
Концептуальная схема описывает статические и динамические аспекты и зависимости проблемной области. Она определяет описания, которые могут присутствовать в концептуальной схеме и информационной базе, и манипуляции, допустимые над описаниями. Для этого необходимы конструкции как для самих описаний, так и для манипулирования ими в информационной системе.
Общие принципы определения содержимого концептуальной схемы
Системный аналитик должен учитывать ряд факторов при определении содержания концептуальной схемы. Среди них могут быть:
описания классов (типов) сущностей проблемной области, а не отдельных экземпляров;
описания понятий, менее подверженных изменениям;
включение правил или ограничений, имеющих широкое воздействие на поведение проблемной области (и поэтому на поведение концептуальной схемы и информационной базы).
В любом случае должны соблюдаться общие принципы концептуальной схемы:
Принцип 100 %
Принцип, согласно которому все общие аспекты, т. е. все правила, законы и т. д., проблемной области должны быть описаны в концептуальной схеме, причем информационная система не может нести ответственность за несоблюдение правил и законов, описанных не в концептуальной схеме.
Принцип концептуализации
Принцип, согласно которому концептуальная схема должна включать статические и динамические аспекты проблемной области только концептуального уровня, не касаясь внешних и внутренних аспектов представления и организации данных (физической организации данных и доступа к ним, аспектов представления, касающихся отдельных пользователей).
Роли концептуальной схемы
Основные роли концептуальной схемы:
обеспечить общую основу для понимания общего поведения проблемной области;
определить допустимую эволюцию и манипулирование информацией о проблемной области;
обеспечить основу для интерпретации внешних и внутренних синтаксических форм, представляющих информацию о проблемной области;
обеспечить основу для преобразований внешних и внутренних схем.
Требования к средству поддержки концептуальной схемы
Средство поддержки концептуальной схемы должно:
обеспечивать основные понятия, пригодные для адекватного описания как статических, так и динамических аспектов проблемной области, и тем самым описания в терминах концептуальной схемы и информационной базы;
иметь язык, на котором можно описать концептуальную схему таким образом, чтобы она была понятна пользователям;
обеспечить язык описания концептуальной схемы, который мог бы интерпретироваться компьютером;
иметь удобные средства внесения изменений в концептуальную схему для отражения изменений в общих классификациях, правилах, законах и т. д. проблемной области и для предсказания непосредственных последствий таких изменений.
Представление информации, необходимой для различных пользователей, не должно противоречить утверждениям в концептуальной схеме. Если такие внешние схемы подлежат изменению, средство поддержки должно быть таким, чтобы изменение не влияло на концептуальную схему. Концептуальная схема должна быть инвариантной по отношению к изменениям во внутреннем (физическом) представлении данных в компьютере.
Основные понятия для концептуальной схемы и информационной базы
Раздел содержит пояснения основных понятий для концептуальной схемы и информационной базы. Определения приведены в указателе терминов в приложении А.
сущность: Любой конкретный или абстрактный объект, включая связи между объектами.
высказывание: Возможное состояние сущностей, по поводу которого можно утверждать или отрицать, что такое состояние имеет место.
Высказывание может относиться к одной сущности, нескольким отдельным сущностям, к группе сущностей и т. д.
лингвистический объект: Грамматически допустимая языковая конструкция.
Лингвистические объекты сами могут считаться сущностями.
Обмениваться информацией о сущностях можно только посредством описаний высказываний. предложение: Лингвистический объект, представляющий определенное высказывание.
Предложения состоят из термов и предикатов.
терм: Лингвистический объект, обозначающий сущность.
предикат: Лингвистический объект, аналогичный глаголу, сообщающий что-либо о сущностях, обозначенных термами.
Например, предложение «Автомобиль РСХХ999 является моделью Мустанг» является примером высказывания. В этом предложении глагол «является» представляет собой предикат.
Термы «автомобиль РСХХ999» и «модель Мустанг» относятся к сущностям.
лексический объект (имя): Простой лингвистический объект, используемый только для ссылки на сущность.
Как правило, лексический объект состоит из одного или нескольких существительных.
Особый вид связи между «основными» сущностями и лексическими объектами, относящимися к ним, называется соглашением об именовании. Если такое соглашение между сущностью и лексическим объектом установлено корректно, всегда возможно, хотя бы в принципе, выявить причинную цепочку по поводу использования этого лексического объекта.
Часть работы проектировщика информационной системы состоит в том, чтобы гарантировать, что на все рассматриваемые сущности можно каким-то образом сослаться. По этой причине проектировщику информационной системы требуется дополнительное описание (в концептуальной схеме и информационной базе) согласованных способов обращения к сущностям.
синонимы: Различные термы, обозначающие одну и ту же сущность.
омонимы: Идентичные термы, обозначающие различные сущности.
Омонимы могут привести к некоторой неоднозначности. В некоторых информационных системах они запрещены. Это запрещение не является фундаментальным требованием.
пространство сущностей: Совокупность сущностей, воспринимаемых как единое целое.
В одно и то же или в различное время можно различать много разных пространств сущностей. Кроме того, сущность может принадлежать многим пространствам сущностей.
пространство высказываний: Совокупность высказываний, каждое из которых истинно для данного пространства сущностей. Совокупность предложений, выражающих высказывания пространства высказываний, содержит информацию о соответствующем пространстве сущностей.
проблемная область: Все сущности, являющиеся объектом интереса, которые были, есть или когда-либо могут быть.
Проблемная область является областью возможных сущностей. Проблемная область ограничивается возможными сущностями, представляющими для нас интерес. В примере из приложения Б проблемная область Органа Регистрации состоит из всех автомобилей, изготовителей, моделей изготовителей, гаражей, людей и т. д., которые существовали, существуют или когда-либо будут существовать и которые интересуют Орган Регистрации.
Все высказывания, которые могут выполняться в одном или нескольких пространствах сущностей, вместе составляющих проблемную сферу, формируют область возможных высказываний. Проектировщика информационной системы должны интересовать те высказывания, которые выполняются во всех возможных пространствах сущностей.
необходимое высказывание
Высказывание, которое должно содержаться во всех возможных пространствах высказываний и является истинным во всех пространствах сущностей.
Необходимые высказывания определяют состояния, обязательные для всех сущностей во всех пространствах сущностей. Эти высказывания представляют абстракцию всех пространств сущностей, обобщающую то, что у них общее.
Необходимые высказывания определяют, какие сущности могут встретиться в любом пространстве сущностей (возможные сущности). В соответствующих случаях они определяют также, какие сущности должны появляться в каждом пространстве сущностей (необходимые сущности).
Классификации, правила, законы и т. д. проблемной области, описанные в разделе 2, образуют необходимые высказывания.
класс [сущностей]: Сущности проблемной области, для которых данное высказывание является истинным.
Каждый класс сущностей полностью определяется его возможными элементами. Любая сущность может быть элементом многих классов, поэтому классы могут пересекаться.
Сами классы являются сущностями, и им могут быть даны имена.
тип [сущности]: Высказывание, устанавливающее, что сущность принадлежит к определенному классу сущностей.
Подразумевается, что такой класс сущностей существует.
На тип можно ссылаться посредством имени типа. Для обозначения имени типа используется имя (существительное) в единственном числе, а для обозначения имени класса — имя (существительное) во множественном числе.
Проектировщик информационной системы произвольно определяет, следует ли связывать понятие типа с определенным классом сущностей. Это зависит от того, что считается удобным или обычным для пользователей концептуальной схемы.
реализация (экземпляр) [типа сущности]: Отдельная сущность, для которой истинно некоторое высказывание по поводу ее типа.
При проектировании информационных систем понятия класса и типа используются, в частности, для установления совокупности необходимых высказываний. С некоторым классом или типом может быть связана совокупность соответствующих необходимых высказываний, которые выполняются для возможных сущностей, являющихся элементами этого класса.
Высказывания, определяющие такие классы или типы, сами относятся к необходимым высказываниям.
концептуальная схема: Непротиворечивая совокупность предложений, выражающих необходимые высказывания, относящиеся к проблемной области.
Все возможные пространства сущностей, составляющие проблемную область, имеют общую концептуальную схему. Эта концептуальная схема определяет проблемную область, так как она несет информацию о том, какой именно должна быть совокупность всех возможных сущностей.
Какие высказывания являются необходимыми, а следовательно, какими будут границы концептуальной схемы, определяется произвольно и зависит от того, какой степени подробности добивается разработчик информационной системы. Эти границы со временем могут изменяться, требуя дополнительных изменений в уже сформулированной концептуальной схеме.
информационная база: Совокупность предложений, выражающих высказывания, отличные от необходимых высказываний, согласующиеся друг с другом и с концептуальной схемой, а также истинные в некотором пространстве сущностей.
Совокупность предложений, составляющих эту концептуальную схему и информационную базу, вместе описывают все высказывания, относящиеся к некоторому пространству сущностей, и тем самым дают описание пространства высказываний для этого пространства сущностей. Предполагается, что эти высказывания выполняются для этого пространства сущностей, воспринимаемого как «реальность». Совокупность предложений, составляющих концептуальную схему и информационную базу, должна обязательно быть непротиворечивой, если она претендует на то, чтобы быть истинным описанием этих высказываний.
Информационная база вместе с концептуальной схемой определяют некоторое пространство сущностей. Пространство сущностей состоит в точности из тех конкретных и абстрактных объектов, сущностей, на которые можно сослаться с помощью термов в предложениях, содержащихся в информационной базе и концептуальной схеме, вместе взятых.
Возможно описание одной проблемной области или одного определенного пространства сущностей в более чем одной концептуальной схеме и информационной базе.
Информационная база может предназначаться для того, чтобы выдавать информацию о сущностях, которые присутствуют в момент или в период времени, обычно называемый «сейчас». Тем не менее, «текущее» состояние информационной базы — актуальная информационная база — может относиться к «прошлому» или «будущему» пространства сущностей.
актуальная информационная база: Информационная база, существующая в указанный момент или период времени, который классифицируется как «сейчас», и отражающая дополнительные высказывания, отличные от необходимых.