Основы информатики
Выбери формат для чтения
Загружаем конспект в формате doc
Это займет всего пару минут! А пока ты можешь прочитать работу в формате Word 👇
Содержание
Лекция 1. Введение. Основные понятия информатики. 3
Лекция 2. Основные процессы преобразования информации 7
Лекция 3. Понятие информационной системы. Задачи и функции ИС. 11
Лекция 4. Структура информационной системы 13
Лекция 5. Жизненный цикл информационных систем 17
Лекция 6. Классификация информационных систем 22
Лекция 7. Виды информационного обслуживания 26
Лекция 8. Документальные информационные системы. Назначения и основные понятия 29
Лекция 8. Информационно-поисковые языки 33
Лекция 9. Технология обработки данных в ДИПС. Автоматическое индексирование 37
Лекция 10.Автоматическое рубрицирование 41
Лекция 11. Автоматическое обучение, основанное на обучении по примерам 45
Лекция 12. Поиск текстовой информации. Механизм обратной связи 49
Лекция 13. Фактографические информационные системы 54
Лекция 14. Инфологическая модель “Сущность - связь” 58
Лекция 15. Концептуальные модели данных 61
Лекция 16. Модели данных 65
Лекция 17. Программные средства реализации фактографических информационных систем 70
Список используемой литературы 77
Лекция 1. Введение. Основные понятия информатики.
Научной дисциплиной, изучающей движение, структуру и свойства семантической информации, является информатика. Информатика в определенной степени связана с математической теорией информации, основы которой были разработаны Клодом Шенноном. Более того, методы математической теории информации широко применяются в информатике. Однако следует различать математическую теорию информации и информатику.
Математическая теория информации целиком и полностью отвлекается от содержательной, семантической стороны информации, тогда как в информатике именно эта сторона является наиболее существенной. Информатика, кроме количественных характеристик информации, рассматривает также ее качественную особенность, ее смысловое (семантическое) значение, важность информации для потребителей. В информатике понятие информации ассоциируется со знанием всех присущих ей свойств: старением, достоверностью, соответствием достигнутому научно-техническому уровню и т. д.
Понятие информации весьма широко и многосторонне, поэтому оно имеет целый ряд определений и синонимов: информация - это обозначение содержания, полученного из внешнего мира, до настоящего времени каждая попытка дать универсальное определение информации терпит крах из-за неразрешимости основного вопроса: един ли для всех "приемников" информации предлагаемый критерий отбора из всего множества воздействий материального мира тех и только тех воздействий, которые несут информацию для данного "приемника"?
В настоящее время наиболее распространено убеждение, что такого универсального критерия и, следовательно, универсального определения информации не существует. С этой точки зрения информацией являются все сведения об объекте, полезные "приемнику" (человеку, коллективу, человеко-машинной системе) для решения задачи (достижения цели). Если данные сведения не нужны, они представляют собой "шум", а не информацию. Если данные сведения способствуют принятию неправильного решения, они представляют собой дезинформацию.
Данные представляют собой потенциальную информацию, и с этой точки зрения в информационных системах накапливается не информация, а данные (потенциальная информация). Информацией они становятся лишь по предоставлению их некоторому потребителю. В приведенном определении информация не отождествляется со знаниями. Информация - собрание данных, тогда как знание предполагает постижение действительности сознанием, организующим данные путем их анализа.
Данные могут рассматриваться как признаки или записанные наблюдения, которые по каким-то причинам не используются, а только хранятся. В том случае, если появляется возможность использовать эти данные для уменьшения неопределенности о чем-либо, данные превращаются в информацию. Поэтому информацией являются используемые данные
Информация обладает следующими свойствами:
1. Объективность и субъективность информации:
Понятие объективности информации является относительным, т. к. методы являются субъективными. В ходе информационного процесса степень объективности информации всегда понижается.
2. Полнота информации:
Характеризует качество информации и определяет достаточность данных для принятия решений или для создания новых данных, на основе имеющихся. Пример: Вы прочитали в газете такое сообщение: "Будет дождь". Это неполная информация, т. к. не сказано, когда именно будет дождь. "Завтра после полудня будет дождь" - полная информация.
3. Достоверность информации:
При регистрации сигналов могут появляться не только "полезные" сигналы, но и посторонние сигналы - информационный шум. Если полезный сигнал зарегистрирован более чётко, чем посторонние сигналы, достоверность информации будет более высокой. Чем выше информационный шум, тем ниже достоверность информации. Пример: "Волга впадает в Черное море" - недостоверная информация. "Волга впадает в Каспийское море" - достоверная информация.
4. Адекватность информации:
Это степень соответствия реальному объективному состоянию тела. Неадекватная информация может образоваться при создании новой информации на основе неполных или недостоверных данных. Достоверные данные + неадекватные методы = неадекватная информация
5. Доступность информации:
Мера возможности получить ту или иную информацию. На степень доступности информации влияют одновременно как доступность данных, так и доступность адекватных методов.
6. Актуальность информации:
Это степень соответствия информации текущему моменту времени. Достоверная и адекватная устаревшая информация - неактуальна.
Независимо от сферы деятельности человека выполнение любой работы и решение любой проблемы всегда связано с использованием уже существующей и созданием новой информации. С этой точки зрения любая основная деятельность человека связана с его информационной деятельностью, т. е. с деятельностью по сбору и обработке существующей и созданию новой информации.
Иными словами, информационная деятельность неразрывно связана с основной деятельностью, а субъект основной деятельности (СОД) всегда выполняет три взаимосвязанных функции: потребителя (приемника) информации, собственно исполнителя основной работы (деятельности) и генератора (источника) информации.
Следовательно, понятие информации тесно связано с понятием потребителя (приемника) информации, генератора (источника) информации, информационной потребности и другими понятиями, определяющими степень соответствия информации, полученной потребителем, его информационным потребностям.
Под потребителем (приемником) информации понимают отдельное лицо, коллектив, машинную или человеке - машинную (организационную) систему, использующие информацию/данные в целях выполнения определенной работы в процессе основной деятельности. Иными словами потребителем информации является любой субъект основной деятельности.
В отличие от потребителя информации генератором (источником) информации является отдельное лицо, коллектив, машинная или человеко-машинная система, создающая сообщения в ходе (или в результате) выполнения той или иной деятельности.
Информация имеет разную ценность для субъектов, и при ее оценке выделяют несколько аспектов:
1. Синтаксический – связан со способом представления информации и не зависит от ее семантических и прагматических свойств. На этом уровне рассматриваются формы представления информации. Они зависят от способа хранения, передачи, отображения и преобразования информации. Например – формат сообщений.
2. Семантический – связан со смысловым содержанием информации между словами и другими элементами. Отражает тезаурус или др. словами словарь, который имеет 2 части: список слов и список словосочетаний, которые сгруппированы по смыслу.
3. Прагматический – определяет возможность достижения цели в результате получения информации. Он определяет потребительские свойства информации.
Информационная потребность (ИП) - совокупность элементов информации/данных, необходимая и достаточная для эффективного выполнения заданной работы (решения задач) субъектом основной деятельности. ИП зависит от степени подготовленности СОД к выполнению заданной работы, его знаний, умений, наличия уже собранной информации/данных, а также от трудоемкости и сложности заданной работы, ее внутреннего многообразия и взаимосвязей с внешней средой.
Информационная потребность СОД удовлетворяется в результате поиска сообщений в информационной среде по информационному запросу, сформулированному на естественном языке, и в той или иной мере отражающему информационную потребность. Степень адекватности (соответствия) информационного запроса информационной потребности определяется различными факторами, основным из которых является способность СОД сформулировать свою информационную потребность на естественном языке с учетом специфики как стоящей перед СОД проблемы, так и информационной среды.
Найденные в результате информационного поиска сообщения в только той или иной мере соответствуют информационному запросу и информационной потребности.
Характеристика степени соответствия сообщения информационной потребности носит название пертинентности.
Характеристика степени соответствия сообщения информационному запросу получила название релевантности.
В силу того, что информационный запрос практически никогда не соответствует полно и точно информационной потребности (информационный запрос может быть адекватен информационной потребности только в единственном случае, когда СОД абсолютно полно и точно знает свою информационную потребность и может ее сформулировать, но это может быть только после получения им всей необходимой информации), релевантность информации всегда отличается от ее пертинентности.
Информационная потребность отражает намеченные цели и однозначно определяется решаемыми задачами.
Смысловая релевантность - смысловое соответствие текста (документа, фактографической записи) информационному запросу, предусматривает понимание текстов на естественном языке. Это семантическая операция. Она несет в себе долю неопределенности. Но пользователь должен точно определить свое отношение к результату поиска и определить релевантен или нерелевантен данный текст.
Формальная релевантность - соответствие поискового образа документа поисковому предписанию. Существуют критерии формального и смыслового соответствия. Смысловая и формальная релевантность может отличаться количественно. Построение оценки технических характеристик базируется на эксперименте.
Лекция 2. Основные процессы преобразования информации
С информационной точки зрения любая деятельность человека или человеко-машинной системы включает следующие этапы.
1.Поиск сообщений.
Внешняя среда с точки зрения СОД представляет собой некоторый генератор потока сообщений, представленных на языке коммуникаций, в общем случае, не тождественном "внутреннему языку" потребителя информации, связанному с конкретной решаемой проблемой. Целью данного этапа является отбор из внешнего потока сообщений тех из них, которые могут быть использованы при выполнении основной деятельности. На этапе поиска сообщений используются услуги различных информационных систем и неформальные каналы, доступные конкретному потребителю информации.
2.Интерпретация сообщений.
В связи с конкретным характером решаемой задачи и тезауруса потребителя информации, имеет место упомянутое различие "языка коммуникаций" и "внутреннего языка".
Данный этап заключается в адаптации сообщений, интерпретации в терминах "внутреннего языка", т. е. в конечном итоге - в извлечении из сообщений информации, необходимой для решения поставленной задачи. Этап 2 приводит к созданию информационного обеспечения решаемой задачи, которое должно привести к повышению эффективности ее решения. В более узком смысле информационным обеспечением можно считать результат этапа 1 - построение совместными усилиями СОД и информационной системы некоторой совокупности сообщений, релевантных (потенциально полезных) задачам СОД.
3.Решение задачи.
На данном этапе, используя полученную информацию, собственные знания и опыт, а также материальные, энергетические, трудовые и иные ресурсы, СОД вырабатывает новую информацию, которая является результатом решения задачи. Эта информация зафиксирована на "языке задачи" и без дополнительных затрат труда, как правило, не представляет ценности при выходе за пределы конкретной задачи, являясь достоянием СОД или достаточно ограниченного множества лиц (организаций), связанных с конкретной проблемой.
4.Создание сообщений.
На данном этапе СОД интерпретирует полученный результат на "языке коммуникаций", т. е. подготавливает сообщение в стандартной форме, принятой на данном этапе развития системы научной коммуникации вообще и систем научно-технической информации (НТИ), в частности это может быть подготовка статьи, отчета, выступления на научной конференции, семинаре и т. д. Новая информация, зафиксированная в форме сообщения (например, документальной), потенциально представляет собой общественную ценность для решения большого круга задач, так или иначе связанных с задачей, в результате решения которой она получена.
5. Распространение и преобразование сообщений. Автор сообщения вступает в активное взаимодействие с системой коммуникации, затрачивая определенные усилия (в основном организационного характера) по вводу сообщения в один (или несколько) из доступных каналов коммуникации (депонирование сообщения, публикация, выступление и т. д.). Эффективность данного этапа деятельности определяется как степенью усилий, предпринимаемых СОД, так и теми возможностями, которые ему предоставляет система коммуникации.
Очевидно, что в общем случае данные этапы реализуются сложным последовательно-параллельным образом. Кроме того, в конкретных ситуациях процесс решения задачи необязательно включает все указанные этапы, или, по крайней мере, не все они предполагают сравнимые затраты труда (времени).
Этапы 1 и 5 приведенной декомпозиции деятельности являются этапами собственно информационной деятельности - собственно основная деятельность. Этапы 2 и 4 носят пограничный, диффузный характер и могут быть отнесены как к основной, так и к информационной деятельности.
Приведенная линейная макроструктура (последовательность разных типов деятельности) представляет собой некоторый элемент деятельности. В виде взаимосвязанной совокупности подобных элементов может быть представлена любая весьма сложная и разветвленная система (деятельность), функционирование которой опирается на информационный обмен.
Элементы такого типа принято называть организационными элементами первичной сложной системы. Организационными элементами являются отдельные люди, группы и коллективы, НИИ, отрасли, и другие формально и организационно структурированные элементы и объединения. Характерными признаками организационного элемента являются компактность (территориальная, административная, физическая и т. д.) и гетерогенность (включение различных типов деятельности). Наряду с организационными могут быть выделены функциональные элементы, соответствующие определенному типу (этапу) деятельности (например, "сбор информации" или "передача информации").
В системах, базирующихся на обмене информацией, целесообразно выделять два типа организационных элементов: включающие и не включающие основную деятельность.
Элементы первого типа являются потребителями-поставщиками (конечными) информации и могут взаимодействовать как непосредственно (реализуя информационную деятельность в собственных организационных рамках), так и при содействии и посредстве элементов второго типа, которые представляют собой чисто информационные элементы
Принимая во внимание многозначность самого понятия "информация", информационной можно назвать любую систему, представляющую совокупность элементов информационной деятельности. Это и группа людей, и любая человеко-машинная или чисто машинная система. Если рассмотреть замкнутый цикл производства, преобразования и использования информации, то, имея в виду, что использование любой информации приводит к появлению новых данных и соответственно информации, этот цикл можно назвать циклом обмена информации, а систему, в рамках которой он реализуется, - системой информационного обмена.
Взаимосвязанную совокупность поставщиков (источников) информации, органов ее преобразования или передачи (в том числе информационных и издательских органов), а также потребителей (приемников) информации будем называть системой информационного обмена (СИОБ) или просто системой. В такой интерпретации система информационного обмена включает в себя как основную, так и информационную деятельность в их органическом единстве.
В зависимости от характера информационных связей системы с внешней средой можно рассматривать три разновидности систем обмена.
1) Система называется замкнутой, если она не имеет информационных связей с другими системами (внешней средой) и, следовательно, по отношению к ним не является ни источником, ни приемником информации. Примером такой системы может служить любая изолированная само развивающаяся система. Любое государство или группа людей, изолированные от внешнего мира, ученый, в одиночку работающий над решением некоторой проблемы и не использующий информацию внешнего мира - все это примеры замкнутых систем. Исторически эта форма систем обмена является наиболее ранней.
2) Систему, которая открыта для поступления информации извне, но закрыта для выхода информации во внешнюю среду, т. е. которая является только приемником по отношению к внешним системам, назовем закрытой системой.
3) Открытой системой назовем систему, играющую роль одновременно и источника и приемника информации по отношению к внешним системам.
Примерами закрытых систем информационного обмена являются военно-промышленные комплексы, которые только потребляют информацию и держат в секрете результаты своих разработок. К этому классу систем с определенными допущениями можно отнести некоторые развивающиеся страны и т. д., т. е. системы, выходная информация которых не представляет ценности для других систем. Здесь можно говорить о государствах, политика которых базируется на приобретении лицензий, а не на развитии собственных исследований. Открытые системы, наоборот, не только принимают, но и поставляют информацию. Это высокоразвитые в области "производства" новой информации системы, стоящие в авангарде научных исследований и разработок. Нетрудно видеть, что система, образованная объединением (интеграцией) двух или более открытых систем, есть открытая система или замкнутая система. Объединение нескольких закрытых систем дает закрытую или замкнутую систему.
Иными словами, всякая интеграция систем сопровождается переходом от открытых и закрытых систем к замкнутым и открытым системам, что соответствует переходу от простого "потребления" информации к процессам ее обмена между участниками системы.
Лекция 3. Понятие информационной системы. Задачи и функции ИС.
Информационной системой (ИС) назовем систему, предназначенную для сбора, обработки и распространения информации. Цель функционирования ИС - информационное обслуживание или обеспечение основной деятельности системы информационного обмена. Функционирование ИС предполагает наличие исходных, промежуточных и конечных информационных продуктов, технологических процессов и ресурсов. Необходимой составляющей ИС является подсистема управления, обеспечивающая ее эффективное функционирование (необходимое разнообразие, объем и качество выходных информационных продуктов). В отличие от системы обмена в ИС не включены как поставщики (источники), так и потребители (приемники) информации ИС объединяет элементы, только преобразующие информацию, т. е. ввода, обработки, хранения, поиска, вывода и распространения информации соответствии с общей теорией систем, информационную систему можно определить как совокупность информационных элементов ввода, обработки, переработки, хранения, поиска, вывода и распространения информации, находящихся в отношениях и связях между собой и составляющих определенную целостность, единство. Если рассматривать ИС как подсистему ОС, то вторую часть этого определения целесообразно расшифровать указанием роли и места ИС как подсистемы более общей системы (ОС), которые и обеспечивают ее "целостность" и "единство".
ИС - это взаимосвязанная совокупность элементов ввода, обработки, переработки, хранения, поиска, вывода и распространения информации, цель функционирования которой состоит в информационном обеспечении эффективной деятельности организационной системы, подсистемой которой она является. Как система ИС естественно обладает основными свойствами систем, такими как иерархичность, централизация и децентрализация, целостность и независимость.
Выделение ИС из системы обмена, как самостоятельной системы является следствием организационного обособления основной и информационной деятельности. Существующие автоматизированные документальные и фактографические информационно-поисковые системы (ИПС), АСУ, банки данных (БД), отделы научно-технической информации (ОНТИ), системы НТИ в целом организационно обособлены. Возникает вопрос, как рассматривать поставщиков и потребителей этих систем: как элементы собственно систем или как элементы внешней среды? Этот вопрос в настоящее время решается по-разному. Рассматривают даже внешних и внутренних потребителей этих систем, внешних и внутренних поставщиков информации.
Если считать, что потребители информации являются элементами систем НТИ, АСУ, БД и т. д., то необходимо предположить, что данные системы могут управлять их информационными потребностями. В действительности это не так. Системы могут только изучать эти потребности и приспосабливаться к ним. Функции управления по отношению к потребителям реализует система более высокого уровня - система информационного обмена. Для системы существенно взаимодействие ее элементов для достижения общей цели. Если этого взаимодействия нет, то нет и системы. С другой стороны, потребители ОНТИ, БТИ (бюро технической информации), АСУ, БД и т. д. организационно не принадлежат этим системам. Возникает вопрос: как можно эффективно управлять функционированием системы, имеющей элементы, организационно не принадлежащие ей? Ответ может быть только один - рассматривать эти элементы как элементы внешней среды. То же можно сказать и в отношении поставщиков информации.
При организационном обособлении ИС может решать две группы задач. Первая группа связана с чисто информационным обеспечением основной деятельности: отбор необходимых сообщений, их обработка, хранение, поиск и выдача субъекту основной деятельности с заранее заданной полнотой, точностью и оперативностью в наиболее приемлемой для СОД форме. Вторая группа задач связана с обработкой полученной информации/данных в соответствии с теми или иными алгоритмами или программами с целью подготовки решений задач, стоящих перед субъектом основной деятельности (так называемых "пользовательских" задач или задач блоков 2 и 4). Для решения таких задач ИС должна обладать необходимой информацией о предметной области СОД, стоящих перед ним проблемах, она должна уметь использовать существующие модели решения задач субъекта основной деятельности или самостоятельно строить такие модели. Для решения таких задач ИС должна обладать определенным искусственным или естественным интеллектом. С развитием вычислительной техники и ее программного обеспечения, упрощением технологии работы с ВТ задачи второй группы все чаще выполняют сами субъекты основной деятельности. Однако существует определенный спектр задач второй группы любой из сфер основной деятельности, решение которых целесообразно возлагать на ИС. Задачи первой группы - это задачи информатизации общества "вширь". Задачи второй группы - задачи информатизации общества "вглубь".
Для решения поставленных задач ИС должна выполнить следующие функции:
- отбор сообщений из внутренней и внешней среды, необходимых для реализации основной деятельности;
- ввод информации в ИС;
- хранение информации в памяти ИС, ее актуализация и поддержание целостности;
- обработка, поиск и выдача информации в соответствии с заданными СОД требованиями. Обработка может включать и подготовку вариантов решения пользовательских прикладных задач по соответствующим алгоритмам/программам.
Лекция 4. Структура информационной системы
Структуру ИС составляет совокупность отдельных ее частей, называемых подсистемами.
Общую структуру информационной системы можно рассматривать как совокупность подсистем независимо от сферы применения. В этом случае говорят о структурном признаке классификации, а подсистемы называют обеспечивающими. Таким образом, структура любой информационной системы может быть представлена совокупностью обеспечивающих подсистем (рис. 1).
Рис. 1. Структура информационной системы как совокупность обеспечивающих подсистем
Среди обеспечивающих подсистем обычно выделяют информационное, техническое, математическое, программное, организационное и правовое обеспечение.
Информационное обеспечение
Назначение подсистемы информационного обеспечения состоит в своевременном формировании и выдаче достоверной информации для принятия управленческих решений.
Информационное обеспечение — совокупность единой системы классификации и кодирования информации, унифицированных систем документации, схем информационных потоков, циркулирующих в организации, а также методология построения баз данных.
Унифицированные системы документации создаются на государственном, республиканском, отраслевом и региональном уровнях. Главная цель — это обеспечение сопоставимости показателей различных сфер общественного производства. Разработаны стандарты, где устанавливаются требования:
1. к унифицированным системам документации;
2. к унифицированным формам документов различных уровней управления;
3. к составу и структуре реквизитов и показателей;
4. к порядку внедрения, ведения и регистрации унифицированных форм документов.
Схемы информационных потоков отражают маршруты движения информации и ее объемы, места возникновения первичной информации и использования результатной информации. За счет анализа структуры подобных схем можно выработать меры по совершенствованию всей системы управления.
Построение схем информационных потоков, позволяющих выявить объемы информации и провести ее детальный анализ, обеспечивает:
1. исключение дублирующей и неиспользуемой информации;
2. классификацию и рациональное представление информации.
При этом подробно должны рассматриваться вопросы взаимосвязи движения информации по уровням управления. Следует выявить, какие показатели необходимы для принятия управленческих решений, а какие нет. К каждому исполнителю должна поступать только та информация, которая используется.
Техническое обеспечение
Техническое обеспечение — комплекс технических средств, предназначенных для работы информационной системы, а также соответствующая документация на эти средства и технологические процессы.
Комплекс технических средств составляют:
1. компьютеры любых моделей;
2. устройства сбора, накопления, обработки, передачи и вывода информации;
3. устройства передачи данных и линий связи;
4. оргтехника и устройства автоматического съема информации;
5. эксплуатационные материалы и др.
К настоящему времени сложились две основные формы организации технического обеспечения (формы использования технических средств): централизованная и частично или полностью децентрализованная.
Централизованное техническое обеспечение базируется на использовании в информационной системе больших ЭВМ и вычислительных центров.
Децентрализация технических средств предполагает реализацию функциональных подсистем на персональных компьютерах непосредственно на рабочих местах.
Перспективным подходом следует считать, по-видимому, частично децентрализованный подход — организацию технического обеспечения на базе распределенных сетей, состоящих из персональных компьютеров и большой ЭВМ для хранения баз данных, общих для любых функциональных подсистем.
Математическое и программное обеспечение
Математическое и программное обеспечение — совокупность математических методов, моделей, алгоритмов и программ для реализации целей и задач информационной системы, а также нормального функционирования комплекса технических средств.
К средствам математического обеспечения относятся:
1. средства моделирования процессов управления;
2. типовые задачи управления;
3. методы математического программирования, математической статистики, теории массового обслуживания и др.
В состав программного обеспечения входят общесистемные и специальные программные продукты, а также техническая документация.
К общесистемному программному обеспечению относятся комплексы программ, ориентированных на пользователей и предназначенных для решения типовых задач обработки информации. Они служат для расширения функциональных возможностей компьютеров, контроля и управления процессом обработки данных.
Специальное программное обеспечение представляет собой совокупность программ, разработанных при создании конкретной информационной системы. В его состав входят пакеты прикладных программ, реализующие разработанные модели разной степени адекватности, отражающие функционирование реального объекта.
Техническая документация на разработку программных средств должна содержать описание задач, задание на алгоритмизацию, экономико-математическую модель задачи, контрольные примеры.
Организационное обеспечение
Организационное обеспечение — совокупность методов и средств, регламентирующих взаимодействие работников с техническими средствами и между собой в процессе разработки и эксплуатации информационной системы.
Организационное обеспечение реализует следующие функции:
1. анализ существующей системы управления организацией, где будет использоваться ИС, и выявление задач, подлежащих автоматизации;
2. подготовку задач к решению на компьютере, включая техническое задание на проектирование ИС и технико-экономическое обоснование ее эффективности;
3. разработку управленческих решений по составу и структуре организации, методологии решения задач, направленных на повышение эффективности системы управления.
Организационное обеспечение создается по результатам предпроектного обследования на 1-м этапе построения баз данных, с целями которого вы познакомились при рассмотрении информационного обеспечения.
Правовое обеспечение
Правовое обеспечение — совокупность правовых норм, определяющих создание, юридический статус и функционирование информационных систем, регламентирующих порядок получения, преобразования и использования информации.
Главной целью правового обеспечения является укрепление законности.
В состав правового обеспечения входят законы, указы, постановления государственных органов власти, приказы, инструкции и другие нормативные документы министерств, ведомств, организаций, местных органов власти. В правовом обеспечении можно выделить общую часть, регулирующую функционирование любой информационной системы, и локальную часть, регулирующую функционирование конкретной системы.
Правовое обеспечение этапов разработки информационной системы включает нормативные акты, связанные с договорными отношениями разработчика и заказчика и правовым регулированием отклонений от договора.
Правовое обеспечение этапов функционирования информационной системы включает:
1. статус информационной системы;
2. права, обязанности и ответственность персонала;
3. правовые положения отдельных видов процесса управления;
4. порядок создания и использования информации и др.
Лекция 5. Жизненный цикл информационных систем
Понятие жизненного цикла является одним из базовых понятий методологии проектирования информационных систем. Жизненный цикл информационной системы представляет собой непрерывный процесс, начинающийся! с момента принятия решения о создании информационной системы и заканчивается в момент полного изъятия ее из эксплуатации.
Стандарт ISO/IEC 12207 определяет структуру жизненного цикла, содержащую процессы, действия и задачи, которые должны быть выполнены во время создания информационной системы. Согласно данному стандарту структура жизненного цикла основывается на трех группах процессов:
1. основные процессы жизненного цикла (приобретение, поставка, разработка, эксплуатация, сопровождение);
2. вспомогательные процессы, обеспечивающие выполнение основных процессов (документирование, управление конфигурацией, обеспечение качества, верификация, аттестация, оценка, аудит, разрешение проблем);
3. организационные процессы (управление проектами, создание инфраструктуры проекта, определение, оценка и улучшение самого жизненного цикла, обучение).
Среди основных процессов жизненного цикла наибольшую важность разработка, эксплуатация и сопровождение. Каждый процесс характеризуется определенными задачами и методами их решения, исходными данными; полученными на предыдущем этапе, и результатами.
1. Разработка
Разработка информационной системы включает в себя все работы по разработке информационного программного обеспечения и его компонентов в соответствии с заданными требованиями. Разработка информационного программного обеспечения также включает:
1. оформление проектной и эксплуатационной документации;
2. подготовку материалов, необходимых для проведения тестирования тайных программных продуктов;
3. разработку материалов, необходимых для организации обучения персонала.
Разработка является одним из важнейших процессов жизненного цикла информационной системы и, как правило, включает в себя стратегическое планирование, анализ, проектирование и реализацию (программирование).
2. Эксплуатация
Эксплуатационные работы можно подразделить на подготовительные и основные. К подготовительным относятся:
1. конфигурирование базы данных и рабочих мест пользователей;
2. обеспечение пользователей эксплуатационной документацией;
3. обучение персонала.
Основные эксплуатационные работы включают;
1. непосредственно эксплуатацию;
2. локализацию проблем и устранение причин их возникновения;
3. модификацию программного обеспечения;
4. подготовку предложений по совершенствованию системы;
5. развитие и модернизацию системы.
3. Сопровождение
Службы технической поддержки играют весьма заметную роль в жизни любой корпоративной информационной системы. Наличие квалифицированного технического обслуживания на этапе эксплуатации информационной системы является необходимым условием для решения поставленных перед ней задач. Причем ошибки обслуживающего персонала могут приводить к явным или скрытым финансовым потерям сопоставимым со стоимостью самой информационной системы.
Модели жизненного цикла
Под моделью жизненного цикла понимается структура, определяющая последовательность выполнения и взаимосвязи процессов, действий и задач, выполняемых на протяжении жизненного цикла. Модель жизненного цикла зависит от специфики информационной системы и специфики условий, в которых последняя создается и функционирует
К настоящему времени наибольшее распространение получили следующие основные модели жизненного цикла:
1. задачная модель;
2. каскадная модель (или системная) (70-85 г.г.);
3. спиральная модель (настоящее время).
Задачная модель
При разработке системы "снизу-вверх" от отдельных задач ко всей системе (задачная модель) единый поход к разработке неизбежно теряется, возникают проблемы при информационной стыковке отдельных компонентов. Как правило, по мере увеличения количества задач трудности нарастают, приходится постоянно изменять уже существующие программы и структуры данных. Скорость развития системы замедляется, что тормозит и развитие самой организации. Однако в отдельных случаях такая технология может оказаться целесообразной:
Крайняя срочность (надо чтобы хоть как-то задачи решались; потом придется все сделать заново);
Эксперимент и адаптация заказчика (не ясны алгоритмы, решения нащупываются методом проб и ошибок).
Общий вывод: достаточно большую эффективную информационной системы таким способом создать невозможно.
Каскадная модель
В ранних не очень больших по объему однородных информационных систем каждое приложение представляло собой единое целое. Для разработки такого типа приложений применялся каскадный способ. Его основной характеристикой является разбиение всей разработки на этапы, причем переход с одного этапа на следующий происходит только после того, как будет полностью завершена работа на текущем (рис. 2). Каждый этап завершается выпуском полного комплекта документации, достаточной для того, чтобы разработка могла быть продолжена другой командой разработчиков.
Положительные стороны применения каскадного подхода заключаются в следующем:
на каждом этапе формируется законченный набор проектной документации, отвечающий критериям полноты и согласованности;
выполняемые в логичной последовательности этапы работ позволяют планировать сроки завершения всех работ и соответствующие затраты.
Рис. . Каскадная схема разработки
Каскадный подход хорошо зарекомендовал себя при построении информационных систем, для которых в самом начале разработки можно достаточно точно и полно сформулировать все требования, с тем, чтобы предоставить разработчикам свободу реализовать их как можно лучше с технической точки зрения. В эту категорию попадают сложные расчетные системы, системы реального времени и другие подобные задачи. Однако в процессе использования этого подхода обнаружился ряд его недостатков, вызванных прежде всего тем, что реальный процесс создания систем никогда полностью не укладывался в такую жесткую схему. В процессе создания постоянно возникала потребность в возврате к предыдущим этапам и уточнении или пересмотре ранее принятых решений. В результате реальный процесс создания программного обеспечения принимал следующий вид (рис. 3):
Рис. 3. Реальный процесс разработки ПО по каскадной схеме
Основным недостатком каскадного подхода является существенное запаздывание с получением результатов. Согласование результатов с пользователями производится только в точках, планируемых после завершения каждого этапа работ, требования к информационным системам "заморожены" в виде технического задания на все время ее создания. Таким образом, пользователи могут внести свои замечания только после того, как работа над системой будет полностью завершена. В случае неточного изложения требований или их изменения в течение длительного периода создания программного обеспечения, пользователи получают систему, не удовлетворяющую их потребностям. Модели (как функциональные, так и информационные) автоматизируемого объекта могут устареть одновременно с их утверждением. Сущность системного подхода к разработке ИС заключается в ее декомпозиции (разбиении) на автоматизируемые функции: система разбивается на функциональные подсистемы, которые в свою очередь делятся на подфункции, подразделяемые на задачи и так далее. Процесс разбиения продолжается вплоть до конкретных процедур. При этом автоматизируемая система сохраняет целостное представление, в котором все составляющие компоненты взаимоувязаны. Таким образом, данная модель основным достоинством имеет системность разработки, а основные недостатки - медленно и дорого.
Спиральная модель
Для преодоления перечисленных проблем была предложена спиральная модель жизненного цикла (рис. 4), делающая упор на начальные этапы жизненного цикла: анализ и проектирование. На этих этапах реализуемость технических решений проверяется путем создания прототипов. Каждый виток спирали соответствует созданию фрагмента или версии программного обеспечения, на нем уточняются цели и характеристики проекта, определяется его качество и планируются работы следующего витка спирали. Таким образом, углубляются и последовательно конкретизируются детали проекта и в результате выбирается обоснованный вариант, который доводится до реализации.
Разработка итерациями отражает объективно существующий спиральный цикл создания системы. Неполное завершение работ на каждом этапе позволяет переходить на следующий этап, не дожидаясь полного завершения работы на текущем. При итеративном способе разработки недостающую работу можно будет выполнить на следующей итерации. Главная же задача - как можно быстрее показать пользователям системы работоспособный продукт, тем самым, активизируя процесс уточнения и дополнения требований.
Основная проблема спирального цикла - определение момента перехода на следующий этап. Для ее решения необходимо ввести временные ограничения на каждый из этапов жизненного цикла. Переход осуществляется в соответствии с планом, даже если не вся запланированная работа закончена. План составляется на основе статистических данных, полученных в предыдущих проектах, и личного опыта разработчиков.
Рис 4. Спиральная модель ЖЦ ИС
Одним из возможных подходов к разработке программного обеспечения в рамках спиральной модели жизненного цикла является получившая в последнее время широкое распространение методология быстрой разработки приложений RAD (Rapid Application Development). Под этим термином обычно понимается процесс разработки программного обеспечения, содержащий 3 элемента:
небольшую команду программистов (от 2 до 10 человек);
короткий, но тщательно проработанный производственный график (от 2 до 6 мес.);
повторяющийся цикл, при котором разработчики, по мере того, как приложение начинает обретать форму, запрашивают и реализуют в продукте требования, полученные через взаимодействие с заказчиком.
Жизненный цикл программного обеспечения по методологии RAD состоит из четырех фаз:
1. фаза определения требований и анализа;
2. фаза проектирования;
3. фаза реализации;
4. фаза внедрения.
Лекция 6. Классификация информационных систем
Информационная система — взаимосвязанная совокупность средств, методов и персонала, используемых для хранения, обработки и выдачи информации в интересах достижения поставленной цели
Классификация по масштабу
По масштабу информационные системы подразделяются на следующие группы:
1. одиночные;
2. групповые;
3. корпоративные.
Одиночные информационные системы реализуются, как правило, на автономном персональном компьютере (сеть не используется). Такая система может содержать несколько простых приложений, связанных общим информационным фондом, и рассчитана на работу одного пользователя или группы пользователей, разделяющих по времени одно рабочее место. Подобные приложения создайся с помощью так называемых настольных или локальных систем управления базами данных (СУБД). Среди локальных СУБД наиболее известными являются Clarion, Clipper, FoxPro, Paradox, dBase и Microsoft Access.
Групповые информационные системы ориентированы на коллективное использование информации членами рабочей группы и чаще всего строятся на базе локальной вычислительной сети. При разработке таких приложений используются серверы баз данных (Называемые также SQL-серверами) для рабочих групп. Существует довольно большое количество различных SQL-серверов, как коммерческих, так и свободно распространяемых. Среди них наиболее известны такие серверы баз данных, как Oracle, DB2, Microsoft SQL Server, InterBase, Sybase, Informix.
Корпоративные информационные системы являются развитием систем для рабочих групп, они ориентированы на крупные компании и могут поддерживать территориально разнесенные узлы или сети. В основном они имеют иерархическую структуру из нескольких уровней. Для таких систем характерна архитектура клиент-сервер со специализацией серверов или же многоуровневая архитектура. При разработке таких систем могут использоваться те же серверы баз данных, что и при разработке групповых информационных систем. Однако в крупных информационных системах наибольшее распространение получили серверы Oracle, DB2 и Microsoft SQL Server.
Для групповых и корпоративных систем существенно повышаются требования к надежности функционирования и сохранности данных. Эти свойства обеспечиваются поддержкой целостности данных, ссылок и транзакций в серверах баз.
Классификация по сфере применения
По сфере применения информационные системы обычно подразделяются на четыре группы:
1. системы обработки транзакций;
2. системы принятия решений;
3. информационно-справочные системы;
4. офисные информационные системы.
Системы обработки транзакций, в свою очередь, по оперативности обработки данных, разделяются на пакетные информационные системы и оперативные информационные системы. В информационных системах организационного управлений преобладает режим оперативной обработки транзакций, для отражения актуального состояния предметной области в любой момент времени, а пакетная обработка занимает весьма ограниченную часть.
Системы поддержки принятия решений — DSS (Decision Support Systeq) — представляют собой другой тип информационных систем, в которых с помощью довольно сложных запросов производится отбор и анализ данных в различных разрезах: временных, географических и по другим показателям.
Обширный класс информационно-справочных систем основан на гипертекстовых документах и мультимедиа. Наибольшее развитие такие информационные системы получили в сети Интернет.
Класс офисных информационных систем нацелен на перевод бумажных документов в электронный вид, автоматизацию делопроизводства и управление документооборотом.
Классификация по способу организации
По способу организации групповые и корпоративные информационные системы подразделяются на следующие классы:
1. системы на основе архитектуры файл-сервер;
2. системы на основе архитектуры клиент-сервер;
3. системы на основе многоуровневой архитектуры;
4. системы на основе Интернет/интранет - технологий.
В любой информационной системе можно выделить необходимые функциональные компоненты, которые помогают понять ограничения различных архитектур информационных систем.
Архитектура файл-сервер только извлекает данные из файлов так, что дополнительные пользователи и приложения добавляют лишь незначительную нагрузку на центральный процессор. Каждый новый клиент добавляет вычислительную мощность к сети.
Архитектура клиент-сервер предназначена для разрешения проблем файл-серверных приложений путем разделения компонентов приложения и размещения их там, где они будут функционировать наиболее эффективно. Особенностью архитектуры клиент-сервер является использование выделенных серверов баз данных, понимающих запросы на языке структурированных запросов SQL (Structured Query Language) и выполняющих поиск, сортировку и агрегирование информации.
В настоящее время архитектура клиент-сервер получила признание и широкое распространение как способ организации приложений для рабочих групп и информационных систем корпоративного уровня. Подобная организация работы повышает эффективность выполнения приложений за счет использования возможностей сервера БД, разгрузки сети и обеспечения контроля целостности данных.
Многоуровневая архитектура стала развитием архитектуры клиент-сервер и в своей классической форме состоит из трех уровней:
1. нижний уровень представляет собой приложения клиентов, имеющие программный интерфейс для вызова приложения на среднем уровне;
2. средний уровень представляет собой сервер приложений;
3. верхний уровень представляет собой удаленный специализированный сервер базы данных.
Трехуровневая архитектура позволяет еще больше сбалансировать нагрузку на разные узлы и сеть, а также способствует специализации инструментов для разработки приложений и устраняет недостатки двухуровневой модели клиент-сервер.
В развитии технологии Интернет/интранет основной акцент пока что делается на разработке инструментальных программных средств. В то же время наблюдается отсутствие развитых средств разработки приложений, работающих с базами данных. Компромиссным решением для создания удобных и простых в использовании и сопровождении информационных систем, эффективно работающих с базами данных, стало объединение Интернет/интранет-технологии с многоуровневой архитектурой. При этом структура информационного приложения приобретает следующий вид: браузер — сервер приложений — сервер баз данных — сервер динамических страниц — web-сервер.
По характеру хранимой информации БД делятся на фактографические и документальные. Если проводить аналогию с описанными выше примерами информационных хранилищ, то фактографические БД — это картотеки, а документальные — это архивы. В фактографических БД хранится краткая информация в строго определенном формате. В документальных БД — всевозможные документы. Причем это могут быть не только текстовые документы, но и графика, видео и звук (мультимедиа).
Автоматизированная система управления (АСУ) - это комплекс технических и программных средств, совместно с организационными структурами (отдельными людьми пли коллективом), обеспечивающий управление объектом (комплексом) в производственной, научной или общественной среде.
Выделяют информационные системы управления образования (Например, кадры, абитуриент, студент, библиотечные программы). Автоматизированные системы для научных исследований (АСНИ), представляющие собой программно-аппаратные комплексы, обрабатывающие данные, поступающие от различного рода экспериментальных установок и измерительных приборов, и на основе их анализа облегчающие обнаружение новых эффектов и закономерностей. Системы автоматизированного проектирования и геоинформационные системы.
Систему искусственного интеллекта, построенную на основе высококачественных специальных знании о некоторой предметной области (полученных от экспертов - специалистов этой области), называют экспертной системой. Экспертные системы - один из немногих видов систем искусственного интеллекта - получили широкое распространение, и нашли практическое применение. Существуют экспертные системы по военному делу, геологии, инженерному делу, информатике, космической технике, математике, медицине, метеорологии, промышленности, сельскому хозяйству, управлению, физике, химии, электронике, юриспруденции и т.д. И только то, что экспертные системы остаются весьма сложными, дорогими, а главное, узкоспециализированными программами, сдерживает их еще более широкое распространение.
Экспертные системы (ЭС) - это компьютерные программы, созданные для выполнения тех видов деятельности, которые под силу человеку-эксперту. Они работают таким образом, что имитируют образ действий человека-эксперта, и существенно отличаются от точных, хорошо аргументированных алгоритмов и не похожи на математические процедуры большинства традиционных разработок.
Лекция 7. Виды информационного обслуживания
В процессе развития автоматизированных информационно-поисковых систем сформировались три вида информационного обслуживания документальное, фактографическое и концептографическое. Каждому из этих видов соответствует своя информационная система.
Документальная система, в течение уже многих веков обеспечивала информационное обслуживание общества в целом и различных его институтов, в том числе науки и техники.
Сущность документального обслуживания заключается в том, что информационные потребности членов общества удовлетворяются путем предоставления им первичных документов, необходимые сведения из которых потребители извлекают сами. Обычно грамотное документальное обслуживание осуществляется в два этапа: сначала потребителю предоставляется некоторая совокупность релевантных (релевантность - смысловое соответствие содержания документа информационному запросу {смысловое соответствие между двумя текстами}) его запросу вторичных документов (этот этап называется библиографическим), а затем, после отбора потребителем из этой совокупности определенного числа уже пертинентных (пертинентность - соответствие содержания документа информационной потребности конкретного специалиста) документов, ему предоставляют сами документы (этот этап называется библиотечным обслуживанием). Таким образом, потребность в информации при документальном обслуживании удовлетворяется опосредовано, через первичный документ.
В отличие от документального обслуживания фактографическое предполагает удовлетворение информационных потребностей непосредственно, т.е. путем представления потребителям самих сведений (отдельных данных, фактов, концепций). Эти сведения, также релевантные запросам потребителей, предварительно извлекаются информационными работниками из первичных документов и после определенной их обработки (оформления) представляются потребителям. Следует уточнить само понятие "фактографическая информация". Под ним следует понимать сведения не только фактического характера, но и теоретического, предположительного, оценочного характера, т.е. включать и факты, и концепции, все то, что может быть объектом извлечения из текста, описания на определенном информационном языке, хранения и поиска в той или иной информационной системе.
Если в случае документального и фактографического обслуживания потребителю информации предоставляются документы или сведения, извлеченные из информационного потока, так сказать, в "натуральном" виде, то при концептографическом обслуживании все это
(документы и сведения) подвергаются интерпретации, оценке, обобщению со стороны информационного работника. В результате такой интерпретации формулируется так называемая ситуативная информация, содержащая в себе оценку рассматриваемых сведений, тенденций и перспективы развития отдельных научных и технических направлений, рекомендаций и пр. По этой причине под концептографическим обслуживанием можно также понимать формулирование и доведения до потребителей ситуативной информации, в явном виде не содержащейся в анализируемых источниках, а полученной в результате информационно-логического и концептографического анализа некоторой совокупности сообщений. Другими словами, в случае концептографического обслуживания потребителю представляются не только сведения о документе или сами сведения из документа, но и некоторая дополнительная информация, привнесенная информационным работником в процессе их интерпретации.
Все виды информационного обслуживания функционируют на основе своих специфичных рядов вторичных документов. По сути дела каждая из разновидностей обслуживания сводиться к созданию своего ряда вторичных документов и доведению их до потребителя различными средствами и в различных режимах информационного обслуживания.
Существенное повышение эффективности информационных систем в настоящих условиях, когда открыты возможности внедрения в информационный процесс высокопроизводительных технических средств, может быть достигнута за счет их автоматизации. Появление автоматизированных информационных систем - результат объективного процесса, обусловленного научно-технической революцией. Эти системы, интегрируя информацию, обеспечивают комплексное решение задач управления.
Документальные информационные системы обслуживают принципиально иной класс задач, которые не предполагают однозначного ответа на поставленный вопрос. Базу данных таких систем образует совокупность неструктурированных текстовых документов (статьи, книги, рефераты, тексты законов и т. п.) и графических объектов, снабженная тем или иным формализованным аппаратом поиска.
Цель системы, как правило, — выдать в ответ на запрос пользователя список документов, в какой-то мере удовлетворяющих сформулированным в запросе условиям. Например, выдать список всех статей, в которых встречается слово "энтропия". Принципиальной особенностью документальной системы является ее способность, с одной стороны, выдавать ненужные пользователю документы (например, где "энтропия" употреблена в ином смысле, чем предполагалось), а с другой — не выдавать нужные (например, если автор употребил какой-то синоним или ошибся в написании).
В фактографических ИС регистрируются факты – конкретные значения данных (атрибутов) об объектах реального мира. Основная идея таких систем заключается в том, что все сведения об объектах (фамилии людей и названия предметов, числа, даты) сообщаются компьютеру в каком-то заранее обусловленном формате. Информация, с которой работает фактографическая ИС, имеет четкую структуру, позволяющую машине отличать одно данное от другого, например фамилию от должности человека, дату рождения от роста и т.п.
Фактографические системы, в отличие от документальных, способны однозначно решать поставленные задачи и давать однозначные ответы на запросы. Эти ИС иногда условно делят на информационно-справочные системы, информационно-поисковые системы и системы оперативной обработки данных.
По масштабу и принципам доступа к данным мы различаем:
• настольные (автономные) или "персональные" ИС;
• простые сетевые ИС, построенные по технологии "файл-сервер";
• мощные информационные системы в архитектуре "клиент-сервер".
Фактографические ИС можно классифицировать по признаку: универсальные и специализированные.
Универсальные системы могут работать с любой предметной областью, с любой "начинкой", если данные организованы в соответствии с рассмотренными нами принципами и формализованы согласно дополнительным требованиям конкретной ИС. Кроме того, она может сортировать тексты, составлять словари, выполнять ряд других операций по формальной обработке данных. Для такой системы, скажем, нет понятия "Болезнь" ("Диагноз"), — есть некий код экземпляра, который сопровождается набором произвольных символов определенной длины (названием) и который в равной степени может быть и кодом болезни, и кодом завода, и табельным номером человека. Область применения таких систем широка — от личных ("персональных") баз данных всевозможного назначения до профессиональных систем (гуманитарные БД, медицина, небольшие офисы).
Специализированные ИС широко применяются в материальном производстве, банковском деле, криминалистике, научных исследованиях.
Лекция 8. Документальные информационные системы. Назначения и основные понятия
Классические модели и методы в теории БД изначально ориентировались на организацию хранения и обработки детально структурированных данных. Чаще всего эти данные представляли собой числовые значения, описывающие те или иные характеристики информационных объектов. Однако на практике оказалось, что чаще информация представлена не в виде структурированных массивов данных, а в виде простых текстовых документов. Вследствие этого документальные БД (иногда их еще называют полнотекстовыми) сразу выделялись в особый тип баз данных.
Исторически сложилось так, что за системами, ориентированными на работу с текстовыми документами, укоренился термин информационно-поисковые системы (ИПС). Хотя, если быть точнее, их следует называть документальными ИПС (ДИПС), поскольку традиционные СУБД также являются ИПС, только фактографическими (ФИПС). В отличие от традиционных БД, ориентированных на полное и точное представление данных достаточно простой смысловой структуры, документальные БД ориентированы на частичное, приближенное представление данных, имеющих значительно более сложную смысловую структуру, представленных на входе в форме текста.
Основной функцией любой ДИПС является информационное обеспечение потребителей на основе выдачи ответов на их запросы. Осуществление выдачи системой требуемых данных реализуется с помощь главной операции ДИПС-проведения информационного поиска. Информационный поиск является процедурой отыскания документов, содержащих ответ на заданные потребителем вопросы.
Заметим, что в отличие от ФИПС, которые в ответ на запрос потребителя осуществляют выдачу конкретных сведений (фактов), ДИПС в результате проведения информационного поиска предоставляют потребителю совокупность документов, смысловое содержание которых соответствует его запросу.
Информационный поиск в системе проводится на основе поступившего от потребителя запроса на отыскание необходимой ему информации. Потребность человека в определенной информации в процессе его практической деятельности носит название информационной потребности. Под действием получаемой информации информационная потребность людей постоянно изменяется и трансформируется. Вследствие этого ее невозможно однозначно выразить и описать. Однако информационная потребность может быть представлена в виде некоторой последовательности ее частных значений в фиксированные моменты времени. Такое частное значение информационной потребности потребителя в определенные моменты времени, выраженное на естественном языке (ЕЯ), и представляет собой информационный запрос, с которым пользователь обращается к системе.
Однако запрос может быть неправильно сформулирован потребителем и не отражать его истинной информационной потребности в момент обращения к системе. Таким образом, при проведении информационного поиска в системе фактически рассматривается не информационная потребность пользователя, а только информационный запрос, в ответ на который и выдаются те или иные документы системы. Следовательно, реакцию системы необходимо рассматривать не только по отношению к информационной потребности, но по отношению к информационному запросу.
Для выражения данных отношений в теории ДИПС введены два фундаментальных понятия: пертинентность и релевантность. Под пертинентностъю понимается соответствие смыслового содержания документа информационной потребности потребителя. Документы, содержание которых удовлетворяет информационной потребности, называют пертинентными.
Релевантность представляет собой соответствие содержания документа информационному запросу в том виде, в каком он сформулирован, а документы, содержание которых отвечает запросу потребителя, носят название релевантных.
Автоматизация процесса информационного поиска потребовала формализации представления основного смыслового содержания информационного запроса и документов в виде соответственно поискового предписания (ПП) и поисковых образов документов (ПОД). Для записи ПП и ПОД применяются специальные языки, называемые информационно-поисковыми (или просто информационными).
В процессе проведения информационного поиска в ДИПС определяется степень соответствия содержания документов и запроса пользователя путем сопоставления ПОД с ПП. А на основе такого сопоставления принимается решение о выдаче документа (он признается релевантным) или его невыдаче (он считается нерелевантным).
Решение о выдаче или невыдаче документа в ответ на запрос принимается на основе некоторого набора правил, по которому данной ДИПС определяется степень смысловой близости между ПОД и ПП. Такой набор правил получил название критерия смыслового соответствия (КСС). Критерий может задаваться явно или неявно. На самом деле КСС базируется не на ранее введенном понятии релевантности, а на понятии формальной релевантности - соответствии содержания ПОД и ПП.
Фактическая релевантность, понимаемая как смысловое соответствие содержания документа информационному запросу, может быть установлена только человеком в процессе осмысления содержания документа и запроса.
Общая функциональная структура документальных информационно-поисковых систем
В состав типичной ДИПС входят, как правило, четыре основные подсистемы (рис. 5):
1. Подсистема ввода и регистрации.
2. Подсистема обработки.
3. Подсистема хранения.
4. Подсистема поиска.
Рис.5. Общая функциональная структура ДИПС
Текстовые документы, поступающие на вход системы, могут быть представлены как в бумажном, так и в электронном виде (в одном из многочисленных форматов). Поэтому подсистема ввода и регистрации решает следующие основные задачи:
1. создание электронных копий бумажных документов (например, сканирование с последующим распознаванием текста или ввод с клавиатуры);
2. обеспечение подключения к каналам доставки электронных документов;
3. распознавание, а при необходимости и преобразование формата электронных документов;
4. присвоение электронным документам уникальных идентификаторов (регистрация), а также ведение таблицы синхронизации имен (при необходимости сохранения прежних имен).
Все поступающие документы без внесения в них каких-либо изменений направляются в подсистему хранения для сохранения в базе документов. База документов может представлять собой простую совокупность файлов, распределенную по каталогам жесткого диска. Однако такой тип представления базы документов характеризуется двумя недостатками:
1. неэффективным использованием дискового пространства;
2. низкой скоростью доступа при большом количестве файлов.
Поэтому для хранения документов применяют средства сжатия и быстрого поиска информации. В этом случае подсистема хранения представляет собой совокупность стандартных или специализированных средств архивации, СУБД и т.п., обеспечивающих возможность доступа к данным по предъявляемому идентификатору.
Далее документы поступают на вход подсистемы обработки, задачей которой является формирование для каждого документа ПОД, в который заносится информация, необходимая для последующего поиска документа. ПОД сохраняются в индексе. Логически индекс представляет собой таблицу, строки которой соответствуют документам, а столбцы - информационным признакам, на основе которых строится ПОД.
В ячейках таблицы могут храниться либо 1, либо О-в зависимости от наличия или отсутствия данного признака в данном документе. Очевидно, что такая таблица будет сильно разреженной, и хранить все значения не имеет смысла. Поэтому на практике используют свертку таблицы по строкам или столбцам. Такую форму хранения называют прямой или инверсной соответственно. Поскольку при свертке таблицы структура индекса усложняется, для его поддержания могут использоваться средства СУБД.
При поступлении на вход системы запроса пользователя он преобразуется в ПП и передается в подсистему поиска, задачей которой является отыскание в индексе ПОД, удовлетворяющих ПП с точки зрения КСС. Идентификаторы релевантных документов подаются с выхода подсистемы поиска на вход подсистемы хранения, которая осуществляет выдачу пользователю самих релевантных документов.
Лекция 8. Информационно-поисковые языки
Недостатки естественного языка
Как известно, естественный язык (ЕЯ) является универсальной знаковой системой, служащей для обмена информацией между людьми. Поскольку документы, поступающие на вход ДИПС, записаны на ЕЯ, справедливо было бы задаться вопросом, а нельзя ли использовать ЕЯ в качестве основного средства представления информации во время всего цикла функционирования ДИПС? Ответ будет положительным, если речь идет о тех ИПС, в которых соответствие между запросом и документом устанавливает человек. Однако в современных ДИПС эта операция выполняется компьютером, что практически исключает применение ЕЯ в качестве основного средства представления информации. Это объясняется существенными недостатками ЕЯ с точки зрения машинной технологии обработки информации, основные из которых рассмотрены ниже.
Многообразие средств передачи смысла. Несмотря на то, что основным средством передачи смысла сообщения является лексика естественного языка, в сообщениях на ЕЯ функцию передачи смысла выполняет и ряд других элементов:
1. контекст;
2. парадигматические отношения между словами;
3. текстуальные отношения между словами;
4. ссылки на слова (словосочетания, фразы и т.д.), ранее упоминавшиеся в тексте сообщения.
Семантическая неоднозначность. Сообщения, записанные на естественном языке, могут быть семантически неоднозначными. Семантическая неоднозначность возникает в основном из-за синонимии и многозначности слов естественного языка.
Синонимия представляет собой тождественность или близость по значению слов, выражающих одно и то же понятие, которые отличаются одно от другого или оттенками значений, или стилистической окраской, или одновременно обоими названными признаками. Синонимами естественного языка являются как отдельные слова, так и словосочетания.
Многозначность характеризует возможность неоднозначного понимания смысла отдельных слов естественного языка. Многозначность слов представлена двумя разновидностями - полисемией и омонимией. Полисемия – это совпадение названий различных предметов, имеющих между собой какие- либо общие свойства или признаки. К типичным общим свойствам, служащим базой полисемии, следует отнести сходство предметов, их смежность (пространственную, временную и т.д.), а также одинаковое функциональное назначение. Примерами полисемии являются: "команда" (воинское подразделение) – "команда" (экипаж судна) – "команда" (спортивная). Омонимия - это совпадение названий различных предметов, не имеющих между собой каких-либо общих свойств. Например: "лук" (оружие) - "лук" (растение); "ключ" (родник) - "ключ" (дверной).
Омонимичные слова, совпадающие между собой как по написанию, так и по звучанию, следует отличать от омографов - слов, обозначающих различные предметы, одинаковые по написанию, но разные по звучанию, например: "замок" (дверной) – "замок" (дворец). Однако, поскольку ДИПС оперируют с сообщениями на естественном языке, представленными в письменной форме, вследствие чего фонетика языка не оказывает решающего влияния на смысл таких сообщений, омографы могут быть приравнены к омонимичным словам.
Эллипсность. Во многих сообщениях на ЕЯ встречаются эллипсы или пропуски подразумеваемых слов. Эллипсность сообщения зачастую играет отрицательную роль при непосредственной работе с ним человека. Очевидно, что она тем более отрицательно скажется в том случае, если сообщения на ЕЯ будут обрабатываться компьютером.
Информационно-поисковые языки. Их классификация
Невозможность использования ЕЯ в качестве основного средства представления информации в ДИПС приводит к необходимости применения искусственных языковых средств. Информационно-поисковым языком (ИПЯ) называется специализированный искусственный язык, предназначенный для описания основного смыслового содержания поступающих в систему сообщений, с целью обеспечения возможности последующего их поиска. ИПЯ создается на базе ЕЯ, однако отличается от него компактностью, наличием четких грамматических правил и отсутствием семантической неоднозначности.
ИПЯ принято разбивать на два основных типа: классификационные языки, дескрипторные языки.
Принципиальная разница между данными типами языков заключена в процедуре построения предложений (фраз) языка. В ряде языков в их лексический состав наряду со словами, выражающими простые понятия, заранее включены также словосочетания и фразы, выражающие сложные понятия. Для записи смыслового содержания сообщений в таких ИПЯ используются только отдельные элементы из этого набора, в том числе и готовые сложные понятия. Фактически построение сложных синтаксических конструкций заменяется выбором соответствующего сложного понятия (в виде словосочетания или фразы) из готового набора. Например:
Политика. Внутренняя. Федеральная
Политика. Внутренняя. Региональная
Политика. Внешняя...
Таким образом, с помощью таких языков производится классификация сообщений, т.е. отнесение их к классам, обозначенным лексическими единицами (ЛЕ) ИПЯ. Поэтому такие языки получили название классификационных.
Частным случаем классификационного ИПЯ является рубрикатор, лексическими единицами которого являются названия тематических рубрик. В целом под рубрикатором некоторой предметной области понимается ориентированный граф, состоящий из независимых деревьев. Листья деревьев будем называть рубриками - объектами, инкапсулирующие знания о конкретных фрагментах данной предметной области. Все нелистовые вершины являются классификационными родово-видовыми обобщениями листовых вершин и используются лишь при ведении информационного поиска.
Обычно рубрикатор формируется группой экспертов, на основании их знаний о предметной области с учетом информационных потребностей пользователей. На рис. 6 приведен пример рубрикатора некоторой предметной области.
Следует подчеркнуть одну особенность классификационных языков. Поскольку сложные понятия задаются заранее, до начала процедуры записи сообщений с помощью ИПЯ, образующие их слова также заранее связаны (скоординированы) определенными связями. Поэтому такие языки носят название предкоординируемых.
Другой тип языков составляют дескрипторные ИПЯ, в которых ЛЕ заранее не связаны никакими текстуальными отношениями. Сложные синтаксические конструкции - предложения или фразы - создаются в этих языках путем объединения (координации) ЛЕ во время процедуры представления смыслового содержания документов системы. Готовых предложений или фраз в таких языках нет,поэтому отсутствуют ограничения на составление сложных понятий. Фактически из небольшого числа ЛЕ данные языки позволяют строить предложения, выражающие практически любой смысл. Такие ИПЯ носят также название посткоординируемых, поскольку координация между словами предложения возникает во время его записи.
Различают дескрипторные ИПЯ с грамматикой и без грамматики. Первые характеризуются наличием ряда жестких правил формирования синтаксических конструкций. Например, при использовании дескрипторного ИПЯ с позиционной грамматикой, в котором при описании действий принято на первом месте записывать наименование действия, далее субъекта, а затем объекта этого действия, фраза: "Иванов владеет автомобилем" может выглядеть так: "владеть Иванов автомобиль". В дескрипторных ИПЯ без грамматики такие правила отсутствуют, и порядок следования ЛЕ в ПОД или ПП не играет роли. Т.е. приведенный выше пример может быть одинаково представлен последовательностями "владеть Иванов автомобиль", "Иванов владеть автомобиль" и т.п.
Рис. 6 Пример рубрикатора
Кроме того, различают дескрипторные ИПЯ с контролируемой и со свободной лексикой. Лексический состав первых строго ограничен и зафиксирован в словаре ИПЯ, в то время как на лексический состав вторых не налагается никаких ограничений, и он может постоянно пополняться за счет включения новых ЛЕ.
Лекция 9. Технология обработки данных в ДИПС. Автоматическое индексирование
Обработка входящей текстовой информации
Т.к. документы, поступающие на вход ДИПС, записаны на ЕЯ, в ней обязательно должна проводиться операция перевода текстов входных документов с ЕЯ на ИПЯ. Тип используемого ИПЯ оказывает сильное влияние на суть процессов обработки информации в конкретных ДИПС. В случае применения ИПЯ дескрипторного типа такая операция перевода называется индексированием, при использовании рубрикатора - рубрицированием.
На сегодняшний день среди дескрипторных ИПЯ наибольшее распространение в автоматизированных ДИПС получили языки без грамматики и без контроля по словарю. При их использовании говорят о полнотекстовом индексировании.
В операции перевода можно выделить два этапа:
1.Анализ смыслового содержания текста с целью выделения из него сведений об известных системе объектах, их свойствах, а также отношениях между ними.
2.Выражение этих сведений на ИПЯ, т.е. принятие решения о приписывании данному сообщению выражений на ИПЯ (о включении соответствующих выражений на ИПЯ в ПОД).
Этап анализа смыслового содержания текста связан с необходимостью использования лингвистических и экстралингвистических знаний. Лингвистические знания являются общими для одного языка и на сегодняшний день являются достаточно хорошо формализованными, в то время как экстралингвистические сильно зависят от конкретной предметной области, а задача их формализации является одной из самых сложных. В этой связи в современных ДИПС этап анализа текста чаще всего сводится к лингвистическому анализу, проводимому с целью нормализации слов и словосочетаний.
Под нормализацией слов понимается их приведение к канонической форме (например, для существительных - именительному падежу, единственному числу и т.п.), под нормализацией словосочетаний - нормализация составляющих и запись их в определенной последовательности (например, сначала записывается основное слово, а затем - зависимые слова). Нормализованные слова и словосочетания часто называют терминами.
Лингвистический анализ текста
Лингвистический анализ текста может состоять из двух этапов:
1.морфологического анализа;
2.синтаксического анализа.
Цель морфологического анализа состоит в получении основ (под основой понимается словоформа с отсеченным окончанием) со значениями грамматических категорий (например, часть речи, род, число, падеж) для каждой из словоформ.
Различают точные и приближенные методы морфологического анализа. Точных методы базируются на использовании словаря основ слов или словоформ, приближенные – на экспериментально установленной связи между конечными буквосочетаниями словоформ и их грамматической информацией.
Использование словаря словоформ в точных методах позволяет легко преодолеть трудности морфологического анализа, связанные с такими явлениями в русском языке, как, например, чередование гласных и согласных. При таком подходе задача получения основ слов и грамматических признаков сводится в основном к поиску в словаре и выбору соответствующей информации (собственно же морфологический анализ требуется лишь в том случае, если словоформа не найдена в словаре). При достаточно полном словаре скорость обработки материала достаточно высока, но объем необходимой памяти в 2-3 раза больше, чем при использовании словаря основ.
Морфологический анализ с использованием словаря основ базируется на флективном анализе, цель которого - правильное выделение основы слова. Основная трудность при использовании данного подхода связана с явлением омонимии основ слов. Для ее устранения проверяется совместимость выделенной основы слова и его окончания.
В основе приближенных методов морфологического анализа лежит гипотеза, согласно которой по конечным буквам и буквосочетаниям можно практически однозначно определить грамматический класс слова. Основа слова выделяется следующим образом - от конца слова последовательно отсоединяется по 1-й букве и полученные буквосочетания сравниваются со списком окончаний, соответствующих данному грамматическому классу. Как только появится совпадение, делается вывод о том, что оставшаяся часть слова - его основа. Для анализа обычно хватает биграмм, триграммы и четырехграммы используются редко.
Автоматическое индексирование
Автоматическое индексирование документов может основываться на простых, однословных или многословных составных терминах (фразах). Простые, однословные термины далеко не идеальны для индексирования, поскольку смысл слов вне контекста нередко бывает неоднозначным. Термины-фразы более осмысленны, обладают большей дискриминирующей мощью. Для генерации фраз может использоваться как синтаксический анализ, так и ряд эвристических алгоритмов. Ниже приведено описание одного из них.
Предположим, что термин-фраза состоит из основы фразы (обычно это ее главная часть) и остальных компонентов. Термин с частотой вхождения в документы, превышающей установленный порог, например df >2 , отмечается как основа фразы. Другими компонентами фразы должны быть термины со средней или низкой частотой вхождения. При этом учитывается их связь с основой фразы, например, размещение их в одном предложении или на некотором заданном расстоянии друг от друга.
Для генерации групп взаимосвязанных слов по замеченным закономерностям совместного их вхождения в документы применяются методы группирования или кластеризации терминов. Если представить матрицу терминов-документов в виде двухмерного массива, то вышеупомянутый метод сравнивает друг с другом столбцы матрицы и делает заключение о том, входит ли та или иная группа терминов в несколько документов совокупности. Если такое неоднократное вхождение имеет место, то термины считаются связанными и группируются в один класс.
Простые и составные термины, выполняющие чисто грамматическую функцию, заносятся в так называемые списки исключения и удаляются.
Основу современных методов автоматического индексирования составляет присваивание весовых коэффициентов терминам на основе статистических характеристик. Предположим, что в исследуемой совокупности имеется N документов. Пусть tfij – частота вхождения термина Tj в документ Di . Индексирование на основе частоты термина позволяет достичь лишь одной из целей индексирования - полноты поиска. Между тем термины, сконцентрированные в отдельных документах совокупности, можно использовать для повышения точности поиска. Это позволит отделить документы, где такие термины встречаются, от тех, где их нет.
Пусть dfj - число документов, в которых встречается термин Tj . Тогда величина log(N/dfj ) может служить хорошим индикатором того, является ли термин Tj . дискриминатором документов. Частоту термина и полученную выше величину можно объединить в рамках единой модели индексирования по частоте (здесь wij обозначает вес термина Tj в документе Di ).
wij= tf ij *log(N/df j)
Еще один статистический метод индексирования основывается на дискриминации по термину. Здесь каждый документ рассматривается как точка в пространстве документов. Чем больше сходства у множеств терминов двух документов, тем ближе расположены соответствующие точки в пространстве документов (иными словами, повышается плотность точек в пространстве документов), и наоборот. В рамках данной схемы можно оценивать качество термина как дискриминатора документа, основываясь на том, какие изменения произойдут в пространстве документов после введения термина в индекс. Для количественной оценки такого изменения удобно использовать увеличение или уменьшение расстояния между документами. Термин является хорошим дискриминатором, если его введение увеличивает среднее расстояние между документами. Другими словами, термин с хорошими дискриминирующими качествами снижает плотность в пространстве документов. Дискриминирующая характеристика термина Tj , обозначаемая dvj , вычисляется как разность между плотностями пространства документов до и после введения термина Tj . Оказалось, что часто встречающиеся термины имеют отрицательные значения дискриминирующих характеристик, термины со средней частотой - положительные, а для редко встречающихся терминов эти значения близки к нулю. Для совместного учета частоты термина и его дискриминирующей характеристики применяют схему взвешивания, основанную на выражении
Полученные значения весов терминов могут использоваться в процессе принятия решения о включении каждого из терминов в ПОД. Однако чаще решение не принимается, а в ПОД заносятся все термины, встретившиеся в документе, и их веса.
Лекция 10.Автоматическое рубрицирование
В современных исследованиях по данной проблеме выделяют два основных подхода: рубрицирование, основанное на знаниях, и рубрицирование, основанное на обучении по примерам.
Методы автоматического рубрицирования, основанные на знаниях
В системах, реализующих данный подход, используются заранее сформированные базы знаний, в которых описываются языковые выражения, соответствующие той или иной рубрике, правила выбора между рубриками. Процесс создания подобных систем часто сравнивают с созданием экспертных систем для диагностики и классификации. Наибольшее распространение среди данных методов получили две модели представления знаний: модель семантической сети и продукционная модель.
В первом случае знания о предметной области описываются независимо от рубрикатора в специального вида тезаурусе, который связывается с одним или более рубрикаторами гибкой системой отношений.
Под тезаурусом понимается иерархическая сеть понятий и отношений между ними. Тезаурус может быть разработан независимо от какой-либо системы рубрицирования. В нем могут быть накоплены разнообразные варианты представления в тексте понятий предметной области (дескрипторов). В качестве вариантов (синонимов или эквивалентов) дескрипторов в тезаурусе встречаются именные и глагольные группы, отдельные существительные, прилагательные или глаголы. Тезаурус может быть разработан в полуавтоматическом режиме. Например, сначала обрабатывается совокупность документов большого объема при помощи программ морфологического и синтаксического анализа с целью выделения терминоподобных групп слов. Затем выбранные группы слов исследуются экспертами, и принимается решение относительно того:
1. может ли данная группа слов быть включена в тезаурус (в этом случае она становится термином);
2. является ли данный термин дескриптором или синонимом другого дескриптора;
3. как должны быть описаны отношения данного термина.
Кроме того, в комплекс знаний могут также быть включены дополнительные базы данных, например: географическая база данных, содержащая описания географических объектов, база данных организаций, персоналий и т.д.
Тезаурус и базы данных имеют одну структуру и состоят из следующих частей:
1.Дескрипторов, которые соответствуют понятиям или конкретным объектам. Обычно дескриптором является существительное или именная группа.
2. Каждый дескриптор имеет совокупность текстовых входов или синонимов. Текстовый вход может быть существительным, прилагательным или группой существительного. Одно слово может быть синонимом различных дескрипторов. Устранение смысловой неоднозначности производится во время автоматического обработки документа.
3. Отношения между дескрипторами внутри каждой базы данных, например:
◦ более широкий термин (выше);
◦ более узкий термин (ниже);
◦ связанный термин (ассоциация);
◦ целое для термина (часть);
◦ часть для термина (целое).
4.Отношения между дескрипторами различных баз данных. В данном случае добавляется отношение - "равенство термина", которое появляется, когда базы данных содержат дескрипторы, соответствующие одному понятию или объекту.
Дескриптор D1 находится в дескрипторной среде дескриптора D, если между D1 и D существует дескрипторное отношение или существует транзитивная зависимость. Дескриптор D называют главным дескриптором среды.
Иерархическая организованность тезауруса и наличие тезаурусных связей позволяет использовать понятия среды дескрипторов и главных дескрипторов (опорных дескрипторов) среды для формирования дескрипторных кустов, используемых при автоматическом рубрицировании текстов в данной технологии. В целом же комплекс знаний представляет собой иерархическую сеть, полнота и целостность которой поддерживается и отслеживается экспертами.
Существует два типа представления рубрик последовательностью опорных дескрипторов в виде булевских нормальных форм:
1. дизъюнкция опорных дескрипторов 1 2 n D D D Ъ Ъ Ъ K ;
2. конъюнкция дизъюнкций опорных дескрипторов
11 12 1 1 2 & & n n n nn D D D D D D Ъ Ъ Ъ Ъ Ъ Ъ K K K .
После того как для всех рубрик рубрикатора установлены связи с соответствующими опорными дескрипторами, автоматически определяются рубрики для всех дескрипторов тезауруса. Таким образом, для каждого дескриптора создается список соответствующих рубрик с указанием того, в какую из дизъюнкций рубрики входит данный дескриптор.
Каждая рубрика в данной технологии фиксирует запрос пользователя, который описывается посредством дескрипторов тезауруса. При этом в тезаурусе находится куст дескрипторов, соответствующий данной рубрике, и устанавливается связь между рубрикой и наивысшим дескриптором (опорный дескриптор рубрики) в иерархии дескрипторного куста. Одной рубрике может соответствовать несколько опорных дескрипторов.
Дальнейшее развитие данной технологии состоит в предоставлении пользователю возможности описывать рубрику на ЕЯ. Суть процесса рубрицирования в рамках данного подхода состоит в выделении из текста опорных дескрипторов и отношений между ними с последующим сопоставлением их с описаниями рубрик. Представленная технология автоматического рубрицирования текстов позволяет классифицировать различные типы текстовой информации, быстро настраиваться на различные рубрикаторы и типы документов. Но и имеет существенные ограничения в своем использовании, так как трудоемкость разработки тезауруса достаточно высока и требует больших временных затрат (от нескольких месяцев до нескольких лет), кроме того, формирование тезауруса производится в соответствии с той или иной предметной областью, что делает невозможным использование одного тезауруса при классификации текстов из различных предметных областей.
Основу методов, использующих продукционную модель представления знаний, составляет выделение из текста концепций (или понятий), заранее описанных экспертом.
Каждое понятие предметной области описываются экспертом при помощи особой конструкции - определения понятия, объединяющего в себе набор характерных для данного понятия слов и фраз. Определение понятия представляет собой выражение, записанное на специальном языке, позволяющем объединять эти слова и фразы при помощи стандартных булевых функций. В определении понятия при записи слов и фраз допускается использование символов-шаблонов (&, * и т.д.), что позволяет отказаться от процедуры морфологического анализа, используемой для нормализации лексики документа. Поскольку описание понятий производится экспертом вручную, то это не доставляет особых неудобств, зато позволяет значительно повысить производительность. В дополнение к этим функциям в языке определения понятий может быть предусмотрена возможность введения контекстуальных ограничений, заключающаяся в указании порядка следования слов в тексте, расстояния между словами и т.д. Кроме того, фразам в определении понятия могут быть назначены экспертные веса, показывающие, насколько каждая из фраз характерна для данного понятия. Ниже приведен пример определения понятия золото:
(gold (&n (reserve! medal! jewelry)))
Процесс рубрицирования разбивается на два этапа. Первым из них является выделение понятий из текста, которое можно представить как процесс распознавания, основывающийся на использовании данных из базы определений. Решение о наличии понятия в тексте принимается путем вычисления справедливости выражения, определяющего понятие, относительно данного текста. Если выражение справедливо, то считается, что понятие присутствует в тексте. Кроме того, если в определении понятия присутствуют экспертные веса, то вычисляется вес или вероятность появления данного понятия в обрабатываемом тексте с учетом частоты встречаемости фраз в тексте сообщения.
На втором этапе принимается решение о принадлежности текста к конкретной рубрике. На его вход поступают выделенные на первом этапе из текста понятия, с возможными весами. Решение принимается на основе правил рубрицирования, которые, так же как и определения понятий, формулируются экспертом заранее с использованием языка правил
Язык правил позволяет основывать решения на комбинации понятий, появившихся в тексте. Кроме того, он позволяет учесть вероятность появления, а также положение каждого понятия в тексте. Существует также возможность учета длины сообщения. Совокупность определений понятий и правил рубрицирования составляет базу правил, (см. рис. 7)
Разработка базы правил представляет собой очень трудоемкий процесс, требующий привлечения высококвалифицированных специалистов, как в предметной области, так и в области инженерии знаний. Суть этого процесса заключается в обработке большего массива отрубрицированных документов, в ходе которого для каждой из рубрик выявляются статистические закономерности, основанные на частоте встречаемости слов и фраз, а также совместной частоте встречаемости отдельных из них. Полученные данные затем используются экспертами при выявлении характерных слов и фраз для описания понятий и формирования правил рубрицирования.
Рис.7. База правил
Преимуществами данного подхода являются высокое качество рубрицирования и высокое быстродействие на тех текстовых потоках, для которых они проектировались. Основными недостатками подобных систем являются, как и в предыдущем случае:
1. высокая трудоемкость и значительные затраты, необходимые для разработки системы;
2. жесткая привязка баз знаний и алгоритмов к предметной области, конкретному рубрикатору, а также размеру и формату рубрицируемых текстов.
Большинство же систем автоматического рубрицирования текстов требуют более быстрого и дешевого построения.
Лекция 11. Автоматическое обучение, основанное на обучении по примерам
Системы автоматического рубрицирования, основанные на обучении по примерам, рассматривают в качестве понятий, которым нужно обучиться, рубрики. Машинное обучение производится на основе примеров текстов, которые были заранее отрубрицированы экспертом вручную.
Можно выделить статистические и нейросетевые методы рубрицирования.
Идея статистического рубрицирования состоит в определении степени соответствия терминологического портрета документа и терминологического портрета рубрик на основе статистических характеристик субъектов сравнения. Под терминологическим портретом документа понимают совокупность наиболее важных терминов, содержащихся в тексте документа. В качестве показателя важности термина в документе чаще всего используется частота его встречаемости. Под терминологическим портретом рубрики понимается набор наиболее характерных для этой рубрики терминов с их весами (в работах 'по статистическим моделям рубрицирования под терминологическим портретом рубрики часто понимается множество ее характеристических терминов и частоты их встречаемости в рубрике). Таким образом, семантика рубрики задается однозначно только ее терминологическим портретом.
Отметим, что терминологический портрет можно рассматривать как частный случай тезауруса, имеющего более простую модель и допускающего его автоматическое построение и корректировку. Формирование терминологических портретов каждой рубрики производится экспертом не вручную, а с помощью одной из технологий обучения рубрикатора. При этом роль эксперта сводится к формированию для каждой рубрики обучающей выборки - совокупности максимально коротких фрагментов текстов, содержащих полное и минимально избыточное лингвистическое наполнение одной обучаемой рубрики.
Выделение характеристических терминов для рубрики производится автоматически, на основе их
весов, которые могут быть получены в процессе анализа обучающей выборки. Например, log rtrtrN wdf
где r N - количество документов в обучающей выборке, принадлежащих рубрике r , tr df количество документов в обучающей выборке, принадлежащих рубрике r и содержащих термин t . Список характеристических терминов рубрики упорядочен по убыванию весов терминов в ней. Таким образом, единую модель для всех рубрик одного рубрикатора можно представить в виде двухмерной матрицы весов tk w . Рубрицирование выполняется по некоторому решающему правилу, учитывающему как важность терминов в документе, так и их веса для рубрик. Например, можно считать, что документ принадлежит рубрике r , если t tr r t tf w k е
где t tf - частота встречаемости термина t в документе, r k - пороговое значение для рубрики r . Значение левой части указанного выражения может использоваться в качестве количественной оценки релевантности документов рубрикам.
Пороговые значения для каждой из рубрик определяются таким образом, чтобы при применении решающего правила ко всей обучающей выборке к данной рубрике было отнесено максимальное количество релевантных и минимальное количество не релевантных ей текстов. Вычисление может производиться как при помощи различных математических методов, так и эмпирическим путем. К достоинствам такого подхода относятся:
1. простота определения семантики рубрики, что дает возможность организовать автоматическое обучение рубрик;
2. универсальность подхода, заключающаяся в том, что таким способом может быть определена семантика очень широкого класса рубрик из любой предметной области;
3. наличие аппарата количественной оценки релевантности документов рубрикам;
4. высокое быстродействие.
Главным недостатком данной группы методов является более низкое по сравнению с методами, основанными на знаниях, качество рубрицирования.
Основой нейросетевых методов рубрицирования текстов является использование нейронной сети (НС) в качестве обучаемого классификатора. Считается, что в наличии имеется подборка примеров текстов, каждый из которых помечен как релевантный или нерелевантный определенной рубрике. Задача НС, обученной на этих примерах, состоит в определении степени релевантности любого нового текста данной рубрике. Данный подход предполагает, что семантика рубрики однозначно задается примерами принадлежащих ей текстов.
Поскольку НС оперирует векторами, для представления текста используется одна из векторных моделей, например: 1, , : 1 0 , 1, , a iD iiv d Tt t td T i D vNЫ О мпн Ы П поK ,
где D - мощность словаря;
i d — лексическая единица из словаря;
T - текст, рассматриваемый как неупорядоченное множество лексических единиц;
N - количество i d T О .
Поскольку обучающая выборка состоит из примеров с заранее известной принадлежностью текстов рубрикам, то имеет смысл использовать НС, в которых реализована парадигма обучения с учителем. Так, предлагается использовать вероятностную нейросеть (ВНС). НС имеет D входов и 2 выхода, один из которых отражает вероятность принадлежности предъявляемого текста к классу релевантных запросу текстов (Ррел), другой - к классу нерелевантных. На практике имеет смысл использовать лишь первый, поскольку сумма значений на выходах равна 1. Схематично описываемый процесс представлен на рис. 8 и рис. 9.
Рис. 8. Обучение
Рис. 9. Определение вероятности релевантности текста рубрике
Словарь рубрики могут составлять как простые, так и составные термины. Его формирование производится так же, как и в статистических методах, с той лишь разницей, что веса терминов в дальнейшем не используются.
По качеству рубрицирования нейросетевые методы рубрицирования занимают среднее положение между статистическими методами и методами, основанными на знаниях.
К основным недостаткам нейронных сетей чаще всего относят два факта:
1.Экспертам непонятно, как нейронная сеть работает.
2.На обучение сети требуется очень много времени.
Однако ВНС выгодно отличается тем, что имеет:
1.строгое математическое обоснование (по сути ВНС представляет собой оптимальный по Байесу классификатор);
2.огромное (в тысячи раз большее) по сравнению с другими нейросетевыми парадигмами быстродействие.
Кроме того, характер решаемой задачи позволяет существенно оптимизировать ВНС, а также устранить зависимость объема вычислений от мощности словаря. Этот факт позволяет полностью отказаться от усечения словаря, опасного тем, что в ходе его могут быть отброшены существенные для классификации термины. В целом, выбор данной нейросетевой парадигмы позволяет свести к минимуму указанные недостатки
Лекция 12. Поиск текстовой информации. Механизм обратной связи
Модель поиска текстовой информации характеризуется четырьмя параметрами:
1. представлением документов и запросов;
2. критерием смыслового соответствия;
3. методами ранжирования результатов запроса;
4. механизмами обратной связи, обеспечивающими оценку релевантности пользователем.
Рассмотрим наиболее распространенные модели поиска с позиции первых трех параметров.
Булева модель представляет документы с помощью набора терминов, присутствующих в индексе, каждый из которых рассматривается как булева переменная. При наличии термина в документе соответствующая переменная принимает значение True. Присваивание терминам весовых коэффициентов не допускается. Запросы формулируются как произвольные булевы выражения, связывающие термины с помощью стандартных логических операций: AND, OR или NOT. Мерой соответствия запроса документу служит значение статуса выборки (RSV, retrieval status value). В булевой модели RSV равно либо 1, если для данного документа вычисление выражения запроса дает True, либо 0 в противном случае. Все документы с RSV = 1 считаются релевантными запросу.
Такая модель проста в реализации и применяется во многих коммерческих системах. Она позволяет пользователям вводить в свои запросы произвольные сложные выражения. Однако эффективность поиска обычно невысока. К тому же, ранжировать результаты невозможно, так как все найденные документы имеют одинаковые RSV, а терминам нельзя присвоить весовые коэффициенты.
Нередко результаты выглядят противоестественно. Например, если пользователь указал в запросе десять терминов, связанных логической операцией AND, документ, содержащий девять таких терминов, в выборку не попадет. Для повышения эффективности поиска в ИПС часто применяется обратная связь с пользователем. Как правило, система просит пользователя указать релевантность или нерелевантность нескольких документов, включенных в начало списка вывода. Поскольку результаты не ранжируются, выбор документов для подобной экспертной оценки релевантности затруднен.
Модель нечетких множеств основывается на теории нечетких множеств, допускающей (в отличие от обычной теории множеств) частичную принадлежность элемента тому или иному множеству. Здесь логические операции переопределены таким образом, чтобы учесть возможность неполной принадлежности множеству, а обработка запросов пользователя выполняется аналогично булевой модели. Тем не менее, ИПС на основе подобной модели оказывается практически столь же не способной классифицировать полученные результаты, что и системы, базирующиеся на булевой модели.
Строгая булева модель и модель, использующая методы теории нечетких множеств, требуют меньших объемов вычислений (при индексировании и оценке соответствия документов запросу), чем другие модели. Они менее сложны алгоритмически и предъявляют не очень жесткие требования к другим ресурсам, таким как дисковое пространство для хранения представлений документов.
Пространственно-векторная модель основана на предположении, что совокупность документов можно представить набором векторов в пространстве, определяемом базисом, из n нормализованных векторов терминов. Значение первого компонента вектора представляющего документ отражает вес термина в нем. Запрос пользователя также представляется n-мерным вектором. Показатель RSV, определяющий соответствие документа запросу, задается скалярным произведением векторов запроса и документа. Чем больше RSV, тем выше релевантность документа запросу.
Достоинство подобной модели в ее простоте. Она позволяет легко реализовать обратную связь для оценки релевантности пользователем. В то же время приходится жертвовать выразительностью спецификации запроса, присущей булевой модели.
Вероятностные модели. В пространственно-векторной модели подразумевается, что векторы терминов, ортогональны и существующие взаимосвязи между терминами не должны приниматься во внимание. Кроме того, в такой модели не специфицируется степень соответствия "запрос - документ" и она оценивается достаточно произвольно. Вероятностная модель учитывает все взаимозависимости и связи терминов, а также определяет такие основные параметры, как веса терминов запросови форма соответствия "запрос - документ".
Данная модель базируется на двух главных параметрах: Pr(rel) и Pr(nonrel), т.е. на вероятности релевантности и нерелевантности документа запросу пользователя, которые вычисляются на основе вероятностных весовых коэффициентов терминов и фактического присутствия терминов в документе.
Подразумевается, что релевантность является бинарным свойством, и поэтому Pr(rel) = 1 - Pr(nonrel). Кроме того, в этой модели применяются два стоимостных параметра: al и а2. Они характеризуют соответственно потери, связанные с включением в результат нерелевантного документа и пропуском релевантного документа.
Данная модель требует определения вероятностей вхождения термина в релевантные и нерелевантные части совокупности документов, оценить которые довольно сложно. Между тем она выполняет важную функцию, объясняя процесс поиска и предлагая теоретическое обоснование методов, применявшихся ранее эмпирически (например, введение некоторых систем определения весовых коэффициентов терминов).
Методы введения обратной связи с пользователем
В отличие от среды баз данных в ДИПС нет четкого представления документов и
пользовательских запросов. Пользователи обычно начинают с неточного и неполного запроса, а, следовательно - с низкой эффективности поиска, постепенно уточняя его методом итераций. Система поддерживает обратную связь с пользователем, позволяя тем самым оценить релевантность документов, найденных по первоначальному запросу. Такой подход позволяет повысить эффективность поиска.
Чтобы упростить представление обратной связи, будем считать, что используется пространственно-векторная модель поиска, а пользователю предоставлена возможность просто отметить: релевантен документ или нет.
Множество документов, считающихся релевантными, формируют положительную обратную связь, а множество документов, рассматриваемых как нерелевантные, - отрицательную.
Существуют два основных подхода к использованию такой обратной связи: модификация запроса и модификация представления документов.
Методы, модифицирующие представление запроса, влияют только на текущий сеанс, но никак не сказываются на обработке других запросов. Методы, основанные на модификации представления документов, оказывают влияние и на эффективность поиска в последующих запросах.
Базовое допущение, на которое опирается методология обратной связи, состоит в том, что документы, релевантные некоторому пользовательскому запросу, близки друг к другу в векторном пространстве, т. е. соответствующие векторы в каком-то смысле "похожи" друг на друга. Использование обратной связи в механизмах поиска информации требует более описательного и семантически богатого представления документов, чем то, что получается в результате индексирования лишь названий или рефератов документов. Один из возможных способов - индексирование всего документа. Пространственно-векторную модель нетрудно адаптировать ко всем методам поиска с обратной связью, в то время как вероятностная модель требует специальных расширений.
Модификация представления запроса. Существуют три способа повышения эффективности поиска путем модификации представления запроса. Первый - модификация весов терминов - предусматривает корректировку весов терминов в запросе, осуществляемую путем сложения вектора запроса и векторов, представляющих документы, которые получили положительную оценку (положительную обратную связь). Наряду с этим возможна дополнительная корректировка за счет вычитания векторов, входящих во множество с отрицательной обратной связью.
Переформулированный таким образом запрос должен возвращать дополнительные релевантные документы, аналогичные тем, что попали во множество с положительной обратной связью. Данный процесс можно повторять итерационно до тех пор, пока качество выборки и число документов в ней не достигнут приемлемого уровня.
Результаты экспериментов показывают, что положительная обратная связь более содержательна и эффективна. Причина в том, что документы из множества с положительной обратной связью обычно более однородны, чем формирующие отрицательную обратную связь. Один из эффективных методов использует все документы с положительной обратной связью, но для вычитания из запроса берет только те векторы с отрицательной обратной связью, которые обладают наибольшим рангом нерелевантности.
Второй метод, называемый методом расширения запроса, модифицирует исходный запрос путем добавления к нему новых терминов. Эти термины выбираются из документа с положительной обратной связью и сортируются на основе их весов. К запросу добавляется заранее заданное число терминов из начала отсортированного списка. Эксперименты показывают, что последние три метода сортировки дают наилучшие результаты и добавление ограниченного числа наиболее важных терминов предпочтительнее учета всех терминов. При включении в запрос более 20 дополнительных терминов эффективность практически не увеличивается.
В некоторых случаях представленные два метода не дают удовлетворительного результата. Наличие ошибок 1-го и 2-го рода в реальной системе обуславливает разбиение всего массива документов системы по отношению к запросу на 4 подмассива:
Разбиение массива документов
Выданные Невыданные
Релевантные А С
Нерелевантные В D
А - массив выданных релевантных документов; В - массив выданных нерелевантных документов; С - массив невиданных релевантных документов; D - массив невиданных нерелевантных документов; Введем следующие обозначения: a - количество выданных релевантных документов; b – количество выданных нерелевантных документов; c - количество невиданных релевантных документов; d -количество невыданных нерелевантных документов; Существуют следующие показатели эффективности ДИПС:
1.Коэффициент полноты p , характеризующий долю выданных релевантных документов во всем массиве релевантных документов:
a pa c.
2.Коэффициент точности n , характеризующий долю выданных релевантных документов во всем массиве выданных документов:
a na b.
3.Коэффициент шума е, характеризующий долю выданных нерелевантных документов во всем массиве выданных документов:
1 b e na b.
4.Коэффициент осадка q, характеризующий долю выданных нерелевантных документов во всем массиве нерелевантных документов:
b qb d.
5.Коэффициент специфичности k , характеризующий долю невиданных нерелевантных документов во всем массиве нерелевантных документов:
d kb d.
Часто для удобства перечисленные показатели измеряют в %, т.е. в указанных формулах появляется дополнительный сомножитель 100 %.
При оценке качества реальных систем наиболее часто используются лишь коэффициенты полноты и точности. Ясно, что и точность поиска, и его полнота зависят не только от свойств поисковой системы, но и от правильности построения конкретного запроса, а также от субъективного представления пользователя о том, что такое нужная ему информация. Однако при желании можно вычислить и средние значения полноты и точности для конкретной системы, протестировав ее на эталонной базе документов. Очевидно, хорошая поисковая система должна иметь как можно большие полноту и точность, желательно - 100%, т. е. находить все нужные документы и ни одного лишнего. Однако стопроцентное качество поиска невозможно, потому что на фиксированном уровне мощности поискового средства все попытки улучшить один из этих параметров приводят к ухудшению другого (см. рис. 10.)
Рис. 10. Пример зависимости между коэффициентами полноты и точности
Наряду с перечисленными показателями, которые основаны на сопряженности релевантности и выдачи, целесообразно использовать также и другие показатели эффективности, что обычно и делается на практике. К основным из них следует отнести:
1. быстродействие ДИПС (интервал времени между моментом формулировки запроса и получением ответа на него);
2. пропускная способность (оценивается количеством вводимых документов и количеством ответов в единицу времени при заданных значениях коэффициентов полноты и точности);
3. производительность (оценивается количеством пользователей системы и частотой обращения с их стороны);
4. надежность работы (оценивается вероятностью того, что система будет выполнять свои функции при заданных условиях в течение требуемого времени); тип запросов, обслуживаемых системой.
Лекция 13. Фактографические информационные системы
Предметная область
Понятие "предметная область" является базисным понятием в теории БД и поэтому не имеет строгого определения. Чтобы выяснить его смысл, обратимся к понятиям объект и предмет.
Объект - это то, что существует вне нас и независимо от нашего сознания, явления внешнего мира и материальной действительности.
Объекты потенциально обладают огромным количеством свойств и находятся в потенциально бесконечном числе взаимосвязей между собой. Однако среди всего множества свойств и взаимосвязей между объектами имеет смысл выделять лишь существенные, важные с точки зрения потребителя информации.
Предмет - это объект, ставший носителем определенной совокупности свойств и входящий в различные взаимоотношения, которые представляют интерес для потребителей информации. Один и тот же объект может восприниматься разными системами как разные предметы. Таким образом, предмет - это модель реального объекта.
Совокупность объектов, информация о которых представляет интерес для пользователей, образует объектное ядро предметной области.
Понятие "предметная область" соответствует точке зрения потребителей информации на объектное ядро, при которой выделяются только те свойства объектов и взаимосвязи между ними, которые представляют определенную прагматическую ценность и должны фиксироваться в базе данных. Таким образом, предметная область представляет собой абстрактную картину реальной действительности, определенная часть которой фиксируется в качестве модели фрагмента действительности.
В каждый момент времени предметная область находится в одном из состояний, которое характеризуется совокупностью объектов и их взаимосвязей. Если объекты образуют объектное ядро, то совокупность взаимосвязей отражает структуру фрагмента действительности. С течением времени одни объекты исчезают, другие появляются, меняются свойства и взаимосвязи. Тем не менее возникающие новые состояния считаются состояниями одной и той же предметной области. Таким образом, предметную область целесообразно рассматривать как систему, переживающую свою историю, которая состоит из определенной последовательности состояний.После задания пространства состояний, можно рассматривать в нем определенные траектории или последовательности состояний so,s,,...,st, в которых находится предметная область в моменты времени 0,1 ,...,t. Члены такой последовательности не могут быть совершенно произвольными, поскольку состояние st обычно каким-либо образом связано с предшествующими состояниями s(1, s,,...,st,. Поэтому предметную область можно определить как класс всех действительно возможных последовательностей состояний. Такие последовательности называются траекториями предметной области. Совокупность всех общих свойств траекторий называется семантикой предметной области.
Концептуальные средства описания предметной области
Поскольку объектное ядро произвольной предметной области потенциально содержит бесконечное число объектов, которые находятся в потенциально бесконечном множестве взаимосвязей, то становится ясным, что прямой подход к описанию предметной области через описание всех объектов и взаимосвязей между ними обречен на провал. _ Очевидной альтернативой в этой ситуации является подход к описанию предметной области, фиксирующий только то общее, что является неизменным и характеризует ситуацию в любой момент времени, или, говоря иными словами, отражающий семантику предметной области.
Отсюда следует, что необходимы специальные средства описания предметной области, которые были бы применимы к любым областям, достаточно просто интерпретировались в конкретном фрагменте внешнего мира и одновременно являлись точными, структурированными и обозримыми (конечными). Приспособленность указанных средств для описания любой предметной области означает, что они обязаны быть достаточно универсальными. Для обеспечения универсальности необходима высокая общность, абстрактность системы базисных метапонятий и правил порождения новых понятий, которые допускают интерпретацию в любой предметной области. В силу своей абстрактности средства описания предметной области называются концептуальными.
Тип - это понятие, объединяющее все объекты данного типа. В отличие от объекта, существующего в данный момент в конкретном месте, тип не имеет пространственно-временной локализации. Он охватывает все существовавшие, существующие и мыслимые объекты, относимые к данному типу. Типы обеспечивают непротиворечивое объединение локальных "точек зрения" различных групп пользователей. Каждый тип имеет уникальное имя. Например, при описании учебного процесса могут быть введены следующие типы людей: ПРЕПОДАВАТЕЛЬ, СТУДЕНТ, АСПИРАНТ и т. д.
Считается, что в каждом состоянии предметной области любой объект имеет один или несколько типов. Множество типов данной предметной области, снабженное некоторой структурой, является моделью в математическом смысле. Эту модель естественно называть концептуальной моделью или схемой предметной области.
Отметим, что различны не только множества типов различных предметных областей, но и связи между ними. Поэтому для концептуальных моделей предметных областей, по-видимому, нельзя указать общую структуру или, более точно, указать общую сигнатуру отношений и операций. Однако некоторые базовые типы, отношения и операции целесообразно включать в любую концептуальную схему.
Процесс проектирования БД является весьма сложным. По сути, он заключается в определении перечня данных, хранимых на физических носителях (магнитных дисках и лентах), которые достаточно полно отражают информационные потребности потенциальных пользователей в конкретной предметной области. Проектирование БД начинается с анализа предметной области и возможных запросов пользователей. В результате этого анализа определяется перечень данных и связей между ними, которые адекватно—с точки зрения будущих потребителей — отражают предметную область. Завершается проектирование БД определением форм и способов хранения необходимых данных на физическом уровне.
Весь процесс проектирования БД можно разбить на ряд взаимосвязанных этапов, каждый из которых обладает своими особенностями и методами проведения. На рис. 10 представлены типовые этапы.
Рис. 11. Этапы проектирования БД
На этапе инфологического (информационно-логического) проектирования осуществляется построение семантической модели, описывающей сведения из предметной области, которые могут заинтересовать пользователей БД. Семантическая модель (semantic model) — представление совокупности о предметной области понятий в виде графа, в вершинах которого расположены понятия, в терминальных вершинах — элементарные понятия, а дуги представляют отношения между понятиями.
Сначала из объективной реальности выделяется предметная область, т. е. очерчиваются ее границы. Логический анализ выделенной предметной области и потенциальных запросов пользователей завершается построением инфологической модели — перечня сведений об объектах предметной области, которые необходимо хранить в БД, и связях между ними.
Анализ информационных потребностей потенциальных пользователей имеет два аспекта: определение собственно сведений об объектах предметной области; анализ возможных запросов к БД и требований по оперативности их выполнения.
Анализ возможных запросов к БД позволяет уточнить связи между сведениями, которые необходимо хранить. Пусть, например, в БД по учебному процессу института хранятся сведения об учебных группах, читаемых курсах и кафедрах, а также связи «учебные группы—читаемые курсы» и «читаемые курсы —кафедры». Тогда запрос о том, проводит ли некоторая кафедра занятия в конкретной учебной группе, может быть выполнен только путем перебора всех читаемых в данной группе курсов.
Хранение большого числа связей усложняет БД и приводит к увеличению памяти ЭВМ, но часто существенно ускоряет поиск нужной информации. Поэтому разработчику БД (администратору БД) приходится принимать компромиссное решение, причем процесс определения перечня хранимых связей, как правило, имеет итерационный характер.
Этап датологического проектирования подразделяется на логическое (построение концептуальной модели данных) и физическое (построение физической модели) проектирование.
Главной задачей логического проектирования является представление выделенных на предыдущем этапе сведений в виде данных в форматах, поддерживаемых выбранной СУБД.
Задача физического проектирования — выбор способа хранения данных на физических носителях и методов доступа к ним с использованием возможностей, предоставляемых СУБД.
Инфологическая модель «сущность—связь» (entity-relationship model; ER-model) П.Чена представляет собой описательную (неформальную) модель предметной области, семантически определяющую в ней сущности и связи.
Лекция 14. Инфологическая модель “Сущность - связь”
Модель была предложена Петером Пин-Шен Ченом в 1976 г. На использовании разновидностей ER-модели основано большинство современных подходов к проектированию баз данных (главным образом, реляционных). Моделирование предметной области базируется на использовании графических диаграмм, включающих небольшое число разнородных компонентов. В связи с наглядностью представления концептуальных схем баз данных ER-модели получили широкое распространение в CASE-системах, поддерживающих автоматизированное проектирование реляционных баз данных. Базовыми понятиями ER-модели являются сущность, связь и атрибут.
Сущность - это реальный или воображаемый объект, информация о котором представляет интерес. В диаграммах ER-модели сущность пред-ставляется в виде прямоугольника, содержащего имя сущности. При этом имя сущности - это имя типа, а не конкретного объекта - экземпляра этого типа. Каждый экземпляр сущности должен быть отличим от любого другого экземпляра той же сущности.
Связь - это графически изображаемая ассоциация, устанавливаемая между двумя сущностями. Эта ассоциация всегда является бинарной и может существовать между двумя разными сущностями или между сущностью и ей же самой (рекурсивная связь). В любой связи выделяются два конца (в соответствии с парой связываемых сущностей), на каждом из которых указывается имя конца связи, степень конца связи (сколько экземпляров данной сущности связывается), обязательность связи (т. е. любой ли экземпляр данной сущности должен участвовать в данной связи).
Связь представляется в виде линии, связывающей две сущности или ведущей от сущности к ней же самой. При этом в месте "стыковки" связи с сущностью используются трехточечный вход в прямоугольник сущности, если для этой сущности в связи могут использоваться много экземпляров сущности, и одноточечный вход, если в связи может участвовать только один экземпляр сущности. Обязательный конец связи изображается сплошной линией, а необязательный - прерывистой линией.
Как и сущность, связь - это типовое понятие, все экземпляры обеих пар связываемых сущностей подчиняются правилам связывания.
На рис.12 приведен пример изображения сущностей и связи между ними.
Рис. 12. Пример связи между сущностями
Данная диаграмма может быть интерпретирована следующим образом: Каждый СТУДЕНТ учится только в одной ГРУППЕ; Любая ГРУППА состоит из одного или более СТУДЕНТОВ. На следующем рисунке (рис.13) изображена сущность ЧЕЛОВЕК с рекурсивной связью, связывающей ее с ней же самой.
Рис.13. Пример рекурсивной связи
Лаконичной устной трактовкой изображенной диаграммы является следующая:
Каждый ЧЕЛОВЕК является сыном одного и только одного ЧЕЛОВЕКА;
Каждый ЧЕЛОВЕК может являться отцом для одного или более ЛЮДЕЙ ("ЧЕЛОВЕК").
Атрибутом сущности является любая деталь, которая служит для уточнения, идентификации, классификации, числовой характеристики или выражения состояния сущности. Имена атрибутов заносятся в прямоугольник, изображающий сущность, под именем сущности и изображаются малыми буквами. Например (см рис.14) :
Рис.14. Изображение сущности с ее атрибутами
Уникальным идентификатором сущности является атрибут, комбинация атрибутов, комбинация связей или комбинация связей и атрибутов, уникально отличающая любой экземпляр сущности от других экземпляров сущности того же типа.
Как и в реляционных схемах баз данных, в ER-схемах вводится понятие нормальных форм, причем их смысл очень близко соответствует смыслу реляционных нормальных форм. Заметим, что формулировки нормальных форм ER-схем делают более понятным смысл нормализации реляционных схем. Мы рассмотрим только очень краткие и неформальные определения трех первых нормальных форм.
В первой нормальной форме ER-схемы устраняются повторяющиеся атрибуты или группы атрибутов, т. е. производится выявление неявных сущностей, "замаскированных" под атрибуты.
Во второй нормальной форме устраняются атрибуты, зависящие только от части уникального идентификатора. Эта часть уникального идентификатора определяет отдельную сущность.
В третьей нормальной форме устраняются атрибуты, зависящие от атрибутов, не входящих в уникальный идентификатор. Эти атрибуты являются основой отдельной сущности.Мы остановились только на самых важных понятиях ER-модели данных. К числу более сложных элементов модели относятся следующие:
Подтипы и супертипы сущностей. ER-модель позволяет задавать отношение IS-A между типами. При этом если Т1 IS-A Т2 (где Т1 и T2 - типы сущностей), то Т1 называется подтипом Т2 а Т2- супертипом Т1. Т.о., существует возможность наследования типа сущности, исходя из одного или нескольких супертипов.
Связи "многие-со-многими". Иногда бывает необходимо связывать сущности таким образом, что с обоих концов связи могут присутствовать несколько экземпляров сущности (например, все члены кооператива сообща владеют имуществом кооператива). Для этого вводится разновидность связи "многие-со-многими".
Уточняемые степени связи. Иногда бывает полезно определить возможное количество экземпляров сущности, участвующих в данной связи (например, служащему разрешается участвовать не более чем в трех проектах одновременно). Для выражения этого семантического ограничения разрешается указывать на конце связи ее максимальную или обязательную степень.
Каскадные удаления экземпляров сущностей. Некоторые связи бывают настолько сильными (конечно, в случае связи "один-ко-многим"), что при удалении опорного экземпляра сущности (соответствующего концу связи "один") нужно удалить и все экземпляры сущности, соответствующие концу связи "многие". Соответствующее требование "каскадного удаления" можно сформулировать при определении сущности.
Домены. Как и в случае реляционной модели данных, бывает полезна возможность определения потенциально допустимого множества значений атрибута сущности (домена).
Эти и другие, более сложные элементы модели данных "Сущность-Связь", делают ее более мощной, но одновременно несколько усложняют ее использование. Конечно, при реальном использовании ER-диаграмм для проектирования баз данных необходимо ознакомиться со всеми возможностями.
Лекция 15. Концептуальные модели данных
В отличие от инфологической модели предметной области, описывающей по некоторым правилам сведения об объектах материального мира и связи между ними, которые следует иметь в БД, концептуальная модель описывает хранимые в ЭВМ данные и связи. В силу этого каждая модель данных неразрывно связана с языком описания данных конкретной СУБД.
По существу, модель данных — это совокупность трех составляющих: типов структур данных, операций над данными, ограничений целостности.
Другими словами, модель данных представляет собой некоторое интеллектуальное средство проектировщика, позволяющее реализовать интерпретацию сведений о предметной области в виде формализованных данных в соответствии с определенными требованиями, т. е. средство абстракции, которое дает возможность увидеть «лес» (информационное содержание данных), а не отдельные «деревья» (конкретные значения данных).
Типы структур данных
Среди широкого множества определений, обозначающих типы структур данных, наиболее распространена терминология CODASYL (Conference of DAta SYstems Language) — международной ассоциации по языкам систем обработки данных, созданной в 1959 г.
В соответствии с этой терминологией используют пять типовых структур (в порядке усложнения):
1. элемент данных;
2. агрегат данных;
3. запись;
4. набор;
5. база данных.
Дадим краткие определения этих структур.
Элемент данных — наименьшая поименованная единица данных, к которой СУБД может адресоваться непосредственно и с помощью которой выполняется построение всех остальных структур данных.
Агрегат данных — поименованная совокупность элементов данных, которую можно рассматривать как единое целое. Агрегат может быть простым или составным (если он включает в себя другие агрегаты).
Запись — поименованная совокупность элементов данных и (или) агрегатов. Таким образом, запись — это агрегат, не входящий в другие агрегаты. Запись может иметь сложную иерархическую структуру, поскольку допускает многократное применение агрегации.
Набор — поименованная совокупность записей, образующих двухуровневую иерархическую структуру. Каждый тип набора представляет собой связь между двумя типами записей. Набор определяется путем объявления одного типа записи «записью-владельцем», а других типов записей — «записями-членами». При этом каждый экземпляр набора должен содержать один экземпляр «записи-владельца» и любое количество «записей-членов». Если запись представляет в модели данных сущность, то набор — связь между сущностями. Например, если рассматривать связь «учится» между сущностями «учебная группа» и «студент», то первая из сущностей объявляется «записью-владельцем» (она в экземпляре набора одна), а вторая — «записью-членом» (их в экземпляре набора может быть несколько).
База данных — поименованная совокупность экземпляров записей различного типа, содержащая ссылки между записями, представленные экземплярами наборов.
Отметим, что структуры БД строятся на основании следующих основных композиционных правил:
1. БД может содержать любое количество типов записей и типов наборов;
2. между двумя типами записей может быть определено любое количество наборов;
3. тип записи может быть владельцем и одновременно членом нескольких типов наборов.
Следование данным правилам позволяет моделировать данные о сколь угодно сложной предметной области с требуемым уровнем полноты и детализации.
Рассмотренные типы структур данных могут быть представлены в различной форме — графовой; табличной; в виде исходного текста языка описания данных конкретной СУБД.
Операции над данными
Операции, реализуемые СУБД, включают селекцию (поиск) данных и действия над ними. Селекция данных выполняется с помощью критерия, основанного на использовании или логической позиции данного (элемента, агрегата, записи) или значения данного, либо связей между данными. Селекция на основе логической позиции данного базируется на упорядоченности данных в памяти системы. При этом критерии поиска могут формулироваться следующим образом:
1. найти следующее данное (запись);
2. найти предыдущее данное;
3. найти п-е данное;
4. найти первое (последнее) данное.
Этот тип селекции называют селекцией посредством текущей селекции, в качестве которой используется индикатор текущего состояния, автоматически поддерживаемый СУБД и, как правило, указывающий на некоторый экземпляр записи БД.
Критерий селекции по значениям данных формируется из простых или булевых условий отбора. Примерами простых условий поиска являются:
1. ВОЕННО-УЧЕТНАЯ СПЕЦИАЛЬНОСТЬ = 200100;
2. ВОЗРАСТ > 20;
3. ДАТА < 19.04.2002 и т.п.
Булево условие отбора формируется путем объединения простых условий с применением логических операций, например:
1. (ДАТА_РОЖДЕНИЯ < 28.12.1963) И (СТАЖ > 10);
2. (УЧЕНОЕ_ЗВАНИЕ = ДОЦЕНТ) ИЛИ (УЧЕНОЕ ЗВАНИЕ = ПРОФЕССОР) и т.п.
Если модель данных, поддерживаемая некоторой СУБД, позволяет выполнить селекцию данных по связям, то можно найти данные, связанные с текущим значением какого-либо данного. Например, если в модели данных реализована двунаправленная связь «учится» между сущностями «студент» и «учебная группа», можно выявить учебные группы, в которых учатся юноши (если в составе описания студента входит атрибут «пол»).
Как правило, большинство современных СУБД позволяют осуществлять различные комбинации описанных выше видов селекции данных.
Ограничения целостности. Эти логические ограничения на данные используются для обеспечения непротиворечивости данных некоторым заранее заданным условиям при выполнении операций над ними. По сути ограничения целостности — это набор правил, используемых при создании конкретной модели данных на базе выбранной СУБД.
Различают внутренние и явные ограничения.
Ограничения, обусловленные возможностями конкретной СУБД, называют внутренними ограничениями целостности. Эти ограничения касаются типов хранимых данных (например, «текстовый элемент данных может состоять не более чем из 256 символов» или «запись может содержать не более 100 полей») и допустимых типов связей (например, СУБД может поддерживать только так называемые функциональные связи, т.е. связи типа 1:1, 1: М или М: 1). Большинство существующих СУБД поддерживают прежде всего именно внутренние ограничения целостности, нарушения которых приводят к некорректности данных и достаточно легко контролируются.
Ограничения, обусловленные особенностями хранимых данных о конкретной ПО, называют явными ограничениями целостности. Эти ограничения также поддерживаются средствами выбранной СУБД, но они формируются обязательно с участием разработчика БД путем определения (программирования) специальных процедур, обеспечивающих непротиворечивость данных. Например, если элемент данных «зачетная книжка» в записи «студент» определен как ключ, он должен быть уникальным, т.е. в БД не должно быть двух записей с одинаковыми значениями ключа. Другой пример: пусть в той же записи предусмотрен элемент «военно-учетная специальность» и для него отведено шесть десятичных цифр. Тогда другие представления этого элемента данных в БД невозможны. С помощью явных ограничений целостности можно организовать как «простой» контроль вводимых данных (прежде всего на предмет принадлежности элементов данных фиксированному и заранее заданному множеству значений: например, элемент «ученое звание» не должен принимать значение «почетный доцент», если речь идет о российских ученых), так и более сложные процедуры (например, введение значения «профессор» элемента данных «ученое звание» в запись о преподавателе, имеющем возраст 25 лет, должно требовать, по крайней мере, дополнительного подтверждения).
Элементарная единица данных может быть реализована множеством способов, что, в частности, привело к многообразию известных моделей данных. Модель данных определяет правила, в соответствии с которыми структурируются данные. Обычно операции над данными соотносятся с их структурой.
Разнообразие существующих моделей данных соответствует разнообразию областей применения и предпочтений пользователей.
В специальной литературе встречается описание довольно большого количества различных моделей данных. Хотя наибольшее распространение получили иерархическая, сетевая и, бесспорно, реляционная модели, вместе с ними следует упомянуть и некоторые другие.
Используя в качестве классификационного признака особенности логической организации данных, можно привести следующий перечень известных моделей:
1. иерархическая модель данных;
2. сетевая модель данных;
3. реляционная модель данных;
4. бинарная модель данных;
5. семантическая сеть.
Лекция 16. Модели данных
Существуют 3 модели данных - реляционная, сетевая и иерархическая; у них разные множества допустимых информационных конструкций. Вообще можно говорить о наличии самостоятельной модели данных в каждой СУБД. Однако, при создании СУБД происходит модификация модели данных, исходя из удобства программной реализации системы.
Внутреннее описание определяет организацию данных в памяти ЭВМ и организацию доступа к ним. Оно соответствует наиболее детальному представлению о процессах обработки данных в системе.
Реляционная модель данных
Модель данных - указание множества допустимых информационных конструкций, операций над данными и множества ограничений для хранимых значений данных.
Концепция реляционной модели данных была предложена Е.Ф. Коддом в 1970 г. в связи с необходимостью обеспечить независимость представления и описания данных от прикладных программ.
Основа реляционной модели - отношение (relation). Оно удобно представляется двумерной таблицей при соблюдении определенных ограничивающих условий. Таблица понятна, обозрима и привычна для человека (см. рис.15).
Рис.15 Пример таблицы реляционной модели данных
Набор отношений (таблиц) может быть использован для хранения данных об объектах реального мира и моделирования связей между ними. Ниже приведенная схема представляет термины реляционной модели.
Схема отношения: СОТРУДНИКИ (Фамилия, Должность, Возраст). Число атрибутов - степень отношения, число кортежей - мощность отношения.
Реляционная база данных - набор взаимосвязанных отношений. Каждое отношение (таблица) представляется в памяти компьютера в виде файла.
Существуют следующие соответствия понятий:
Оригинальность подхода Кодда состояла в том, что он предложил применять к отношениям стройную систему операций, позволяющих получать (выводить, вычислять подобно арифметическим операциям) одни отношения из других. Это дает возможность делить информацию на хранимую и нехранимую (вычисляемую) части, тем самым экономя память.
Основных операций над отношениями насчитывается 8:
- традиционные операции над множествами (объединение, пересечение, разность (вычитание), декартово произведение, деление);
- специальные реляционные операции: проекция, соединение и выбор (селекция, ограничение).
Языки для выполнения операций над отношениями делят на 2 класса:
1) языки реляционной алгебры, описывающие последовательность действий для получения желаемого результата; это процедурные языки.
2) языки реляционного исчисления, предоставляющие пользователю набор правил для записи “запросов” к базе данных, в которых содержится только информация о желаемом результате. Пример - языки запросов SQL (Structured Query Language).
Реляционная база данных в целом соответствующая 3НФ, обладает рядом свойств, знание которых облегчает и упорядочивает процедуры обработки хранящейся в ней информации. Типичные процедуры, выполняемые с базой данных: выборка, корректировка и арифметические вычисления.
Условия запросов второго типа могут комбинироваться с помощью логических операций И, ИЛИ, НЕ.
Существуют правила реализации запросов к базе данных с помощью операторов реляционной алгебры:
1. В словесной формулировке запроса выделяются имена атрибутов, составляющие оболочку, вход и выход запроса, а такие условия выборки.
2. Зафиксировать множество атрибутов оболочки. Если все необходимые атрибуты находятся в одном отношении, то последующие операции выборки и проекции проводятся только с ним. Если они распределены по нескольким отношениям, то эти отношения необходимо соединить. Каждая пара отношений соединяется по условию равенства атрибутов с совпадающими именами (или определенных на общем домене). После каждого соединения с помощью проекции можно отсечь ненужные для последующих операций атрибуты.
3. Полученное единственное отношение далее обрабатывается операциями выборки и проекции. Выборка по значениям атрибута должна предшествовать проекции, в которой этот атрибут выводится из отношения.
4. Если запрос можно разделить на части (подзапросы), то его реализация также делится на части, где результатом подзапроса является отдельное отношение.
5. Указанная последовательность действий является стандартной, но, возможно, создает промежуточные отношения слишком большого размера. Этот недостаток можно компенсировать, выполняя некоторые выборки и проекции над исходными отношениями (до проведения соединения) и меняя взаимный порядок требуемых соединений.
Иерархическая модель данных
Структура данных называется иерархической, если ее схема представлена в виде дерева. Узлами дерева-схемы являются записи, дугами - иерархические связи между записями. Иерархическая связь предполагает, что одной «верхней» записи соответствует несколько реализаций «нижней», т.е. структура использует связи вида «один-ко-многим».
Что представляет собой запись в иерархической структуре? Множество записей, относящихся к заданному узлу схемы, рассматриваемое вне связи с другими узлами, имеет сходство с нормализованным файлом и характеризуется уникальной совокупностью атрибутов.
Совокупность иерархически организованных записей называется иерархической базой данных; отдельный тип записи, соответствующий узлу схемы, называется сегментом.
Если два узла дерева соединены дугой, то узел более высокого уровня называется порождающим, а узел более низкого уровня - порожденным (или подчиненным).
Всякий узел иерархической структуры (кроме корня дерева) имеет один порождающий узел. Ниже (см. рис.16) изображен пример схемы иерархической структуры.
Рис. 16. Пример иерархической модели данных
По заданной иерархической схеме может быть построен файл в первой нормальной форме, иначе, иерархическая база данных может быть преобразована в один или несколько нормализованных файлов. Возможно обратное преобразование: построение иерархической базы данных по одному или совокупности нормализованных файлов.
Для нормализации иерархического файла достаточно каждый узел дерева заменить нормализованным файлом со схемой, представляющей собой объединение атрибутов данного узла с ключами всех узлов, которые мы будем проходить при движении от данного узла по дугам в направлении снизу вверх. Результат операции объединения не изменится, если вместо ключей узлов будем писать дополнения до ключей (ключи только порожденных узлов без ключей порождающих).
Сетевая модель данных
Рассмотрим табель учета рабочего времени
Исходный документ не нормализован. В клетках указано количество рабочих часов данного сотрудника в данный день.
Таблица позволяет получать ответы на запросы двух типов:
1. По заданной фамилии сотрудника сообщить его рабочие часы на различные даты.
2. По заданной дате сообщить рабочие часы на эту дату для различных сотрудников.
В нормализованном виде получим таблицу:
В составе нормализованного файла можно выделить СЕИ, которые располагаются то в ключе, то в результате запроса, и атрибут Q5, всегда относящийся к результату запроса. Запросы такого вида называются инверсными по отношению друг к другу, СЕИ S12 и S34 назовем инверсным условием поиска, атрибут Q5 - информацией связи. Этим запросам можно поставить в соответствие следующие иерархические структуры, изображенные на рис. 17.
Рис.17
В обоих случаях информация связи располагается в подчиненном сегменте. Структура, обеспечивающая ответы на запросы обоих типов, имеет вид, представленный на рис.18:
Рис.18 V-образная сетевая схема
Такая структура называется V-образной сетевой схемой. Она содержит два порождающих сегмента и один подчиненный. Тип связей, соответствующий схеме - “один-ко-многим”.
Подчиненный сегмент Q5 является информацией связи между S12 и S34.
Экземпляр рассматриваемой V-образной сетевой схемы называется сетевой БД. Его нормализованное представление - таблица ТАБЕЛЬ_1, а двухвходовое - ТАБЕЛЬ (двухвходовая таблица).
Лекция 17. Программные средства реализации фактографических информационных систем
BPwin - мощный инструмент моделирования с возможностью анализа, документирования и корректирования бизнес процессов. Он поможет устранить лишние или неэффективные операции, уменьшить издержки, повысить гибкость и улучшить уровень обслуживания заказчика. В модели BPwin, Вы можете четко задокументировать важные позиции, такие как необходимые операции, проследить, как они выполняются и какие необходимы для этого ресурсы. Модель BPwin обеспечивает интегрированное изображение того, как работает ваша организация. Это изображение, в свою очередь, состоит из подмоделей отделов, пример которых приведен ниже в общей диаграмме дерева узлов. BPwin поддерживает двунаправленные линии связи с: - Программой ERwin.
ERwin - инструмент моделирования данных для разработки базы данных, который поддерживает методологии IDEF1X и IE . Вы можете совместно использовать BPwin и ERwin как для моделирования процесса, так и для моделирования данных и Вы можете обмениваться объектами и названиями атрибута между двумя программами. Эта возможность особенно полезна для пользователей, кто разрабатывает модель бизнес процесса и модель базы данных одновременно. Любые изменения, которые Вы проводите в объекте и названии атрибута в любой модели, могут быть внесены в другую модель. Вы можете также создать двухсторонние линии связи между моделью BPwin и связанной с ней моделью ERwin, что выполняется, автоматически каждый раз, когда Вы открываете одну из связанных диаграмм. Это проводится для синхронизации моделей.
ERwin - CASE-средство проектирования баз данных фирмы Platinum. ERwin сочетает графический интерфейс Windows, инструменты для построения ER-диаграмм, редакторы для создания логического и физического описания модели данных и прозрачную поддержку ведущих реляционных СУБД. Для удобства изложения материала здесь и далее использована оригинальная терминология, принятая в ERwin.
ERwin не привязан к технологии какой-либо конкретной фирмы, поставляющей СУБД или средства разработки. Он поддерживает различные серверы баз данных и настольные СУБД, а также может обращаться к базе данных через интерфейс ODBC.
ERwin можно использовать совместно с некоторыми популярными средствами разработки клиентских частей приложений: PowerBuilder, Visual Basic, Delphi. Кроме того, ERwin поддерживает работу в среде групповой разработки ModelMart, являющейся продуктом той же Platinum.
Процесс моделирования в ERwin базируется на методологии проектирования реляционных баз данных IDEF1X. Данная методология была разработана для ВВС США и теперь широко используется в правительственных учреждениях и частных компаниях как в самих США, так и далеко за их пределами. Она определяет стандарты терминологии и графического изображения типовых элементов на ER-диаграммах.
Структура процесса моделирования в ERwin
В ERwin используются два уровня представления модели данных: логический и физический (что соответствует концептуальному и логическому уровню, принятым в теории БД). На логическом уровне не рассматривается использование конкретной СУБД, не определяются типы данных (например, целое или вещественное число) и не определяются индексы для таблиц. Целевая СУБД, имена объектов и типы данных, индексы составляют второй (физический) уровень модели ERwin.
ERwin предоставляет возможности создавать и управлять этими двумя различными уровнями представления одной диаграммы (модели), равно как и иметь много вариантов отображения на каждом уровне.
Процесс построения информационной модели состоит из следующих этапов:
1. Создание логической модели данных:
◦ определение сущностей;
◦ определение зависимостей между сущностями;
◦ задание первичных и альтернативных ключей;
◦ определение неключевых атрибутов сущностей.
2.Переход к физическому описанию модели:
◦ назначение соответствий имя сущности - имя таблицы, атрибут сущности - атрибут таблицы;
◦ задание триггеров, хранимых процедур и ограничений.
3. Генерация базы данных.
Создание логической модели БД
С точки зрения пользователя ERwin, процесс создания логической модели данных заключается в визуальном редактировании ER-диаграммы. Диаграмма ERwin строится из трех основных блоков: сущностей, атрибутов и связей.
На диаграмме сущность изображается прямоугольником. В зависимости от режима представления диаграммы прямоугольник может содержать имя сущности, ее описание, список ее атрибутов и другие сведения. Основная информация, описывающая сущность, включает:
1. атрибуты, составляющие первичный ключ;
2. неключевые атрибуты;
3. тип сущности (независимая/зависимая).
Первичный ключ - это атрибут или набор атрибутов, уникально идентифицирующий экземпляр сущности. Если несколько наборов атрибутов могут уникально идентифицировать сущность, то выбор одного из них осуществляется разработчиком на основании анализа предметной области и учета следующих требований к первичному ключу.
1. первичный ключ не должен принимать пустые (NULL) значения;
2. первичный ключ не должен изменяться в течение времени;
3. размер первичного ключа должен быть как можно меньшим.
При этом если разработчик считает, что какой-либо из оставшихся наборов будет часто использоваться для доступа к сущности, то он может объявить его альтернативным ключом.
В ERwin можно также составлять группы атрибутов, которые не идентифицируют уникально экземпляры сущности, но часто используются для доступа к данным. Они получили название инверсных входов. Одни и те же атрибуты сущности могут входить в несколько различных групп ключей.
Рассмотрим выше сказанное на примере сущности СОТРУДНИК (рис.19).
Рис. 19. Пример сущности
Среди всех атрибутов данной сущности на роль первичного ключа могут претендовать "табельный номер" и группа атрибутов "фамилия", "имя","отчество", "дата рождения" (последний необходим, т. к. на предприятии могут работать полные тезки). Очевидно, что по соображению размера в качестве первичного ключа следует выбрать первый из вариантов.
На диаграмме атрибуты, составляющие первичный ключ, располагаются в верхней части прямоугольника и отделяются от прочих (не входящих в первичных ключ) горизонтальной линией.
Группа атрибутов "фамилия", "имя", "отчество", "дата рождения" может являться альтернативным ключом. Однако вряд ли кто-либо, пытающийся найти информацию о сотруднике, будет знать дату его рождения. А вот группа атрибутов "фамилия", "имя", "отчество", вполне возможно, будет достаточно часто использоваться для этих целей. Поэтому на основе этих атрибутов было бы логично создать инверсный вход. Инверсный вход обозначается на диаграмме символами IEn, заключенными в скобки.
Пример использования альтернативного ключа приведен на Рис.20. Альтернативный ключ обозначается на диаграмме символами АКп, заключенными в скобки.
Рис. 20. Пример альтернативного ключа
Если экземпляры сущности могут быть уникально идентифицированы без определения ее связей с другими сущностями, она называется независимой. В противном случае сущность называют зависимой. Зависимая сущность отображается в ERwin прямоугольником с закругленными углами.
Связь в ERwin трактуется как функциональная зависимость между двумя сущностями (в частности, возможна связь сущности с самой собой).
Если рассматривать диаграмму как графическое представление правил предметной области, то сущности являются существительными, а связи -глаголами. Например, между сущностями ОТДЕЛ и СОТРУДНИК существует связь "состоит из" (ОТДЕЛ состоит из СОТРУДНИКОВ).
В ERwin связи представлены пятью основными элементами информации: тип связи;
• родительская и дочерняя (зависимая) сущности;• мощность связи;
• допустимость пустых (null) значений;
• требования по обеспечению ссылочной целостности.
ERwin поддерживает следующие основные типы связей: идентифицирующая, неидентифицирующая, полная категория, неполная категория, многие-ко-многим.
Связь называется идентифицирующей, если экземпляр дочерней сущности идентифицируется через ее связь с родительской сущностью. Атрибуты, составляющие первичный ключ родительской сущности, при этом входят в первичный ключ дочерней сущности. Дочерняя сущность при идентифицирующей связи всегда является зависимой.
Связь называется неидентифицирующей, если экземпляр дочерней сущности идентифицируется иначе, чем через связь с родительской сущностью. Атрибуты, составляющие первичный ключ родительской сущности, при этом входят в состав неключевых атрибутов дочерней сущности.
Идентифицирующая связь изображается сплошной линией; неидентифицирующая - пунктирной линией. Линии заканчиваются точкой со стороны дочерней сущности.
При определении связи происходит миграция атрибутов первичного ключа родительской сущности в соответствующую область атрибутов дочерней сущности. Поэтому такие атрибуты не вводятся вручную.
На рис. 21. приведен пример неидентифицируюшей связи. Первичный ключ сущности ОТДЕЛ "номер отдела" мигрировал в область неключевых атрибутов (поскольку связь неидентифицируюшая) сущности СОТРУДНИК. На диаграмме атрибуты, наследованные от родительской сущности, помечаются символами FK, заключенными в скобки.
Рис.21. Пример неидентифицирующей связи
Зависимая сущность может наследовать один и тот же атрибут от более чем одной родительской сущности или от одной и той же родительской сущности через несколько связей.
Поскольку атрибуты первичного ключа родительской сущности по умолчанию мигрируют со своими именами, ERwin считает, что в зависимой сущности атрибуты внешнего ключа появляются только один раз. Чтобы избежать этого ограничения, ERwin позволяет ввести для них роли, т. е. новые имена, под которыми мигрирующие атрибуты будут представлены в дочерней сущности. В случае неоднократной миграции атрибута такое переименование необходимо. Например, при создании модели сделки по обмену валюты сущность СДЕЛКА (рис. 22) должна иметь два различных атрибута для кодов проданной и купленной валюты. В данном случае первичный ключ сущности ВАЛЮТА ("код валюты") имеет две роли в дочерней сущности.
Рис. 22. Пример использования ролей
Ситуация, когда экземпляру одной сущности соответствует один или несколько экземпляров второй сущности, а экземпляру второй сущности соответствует один или несколько экземпляров первой сущности, отражается в логической модели связью многие-ко-мпогим между данными сущностями. На диаграмме связь изображается сплошной линией с точками на концах. Например, для заключения сделки в некоторой фирме клиент обращается к любому из свободных сотрудников этой фирмы. В то же время сотрудник фирмы может обслуживать нескольких клиентов. Поэтому тип связи между сущностями КЛИЕНТ и СОТРУДНИК должен быть мно-гие-ко-многим (рис. 23).
Рис. 23 Пример связи многие-ко-мпогим
Заметим, что связь типа многие-ко-многим возможна только на логическом уровне. Преобразование связи данного типа на физическом уровне будет рассмотрена в следующем пункте. Однако добавим, что связи многие-ко-многим рекомендуется избегать. В рассмотренном примере этого можно добиться, если ввести дополнительную сущность СДЕЛКА (см. рис. 24).
Рис. 24. Пример устранения связи многие-ко-многим
Некоторые сущности определяют целую категорию объектов одного типа. В ERwin в таком случае создается сущность для определения категории и для каждого элемента категории, а затем вводится для них связь категоризации. Родительская сущность категории называется супертипом, а дочерние - подтипом.
Различная часть (например, данные почасовой оплаты для временных работников или данные о зарплате и отпуске для штатных работников) помещается в сущности-подтипы. В сущности - супертипе вводится атрибут-дискриминатор, позволяющий различать конкретные экземпляры сущности-подтипа.
В зависимости от того, все ли возможные сущности-подтипы включены в модель, категорийная связь является полной или неполной. В ERwin полная категория изображается окружностью с двумя подчеркиваниями, а неполная - окружностью с одним подчеркиванием.
На рис.25 категорийная связь между сущностью СОТРУДНИК и сущностями ПОСТОЯННЫЙ СОТРУДНИК и СОВМЕСТИТЕЛЬ является неполной, если предположить, что существует еще один тип сотрудников - консультант.
Включение в модель сущности КОНСУЛЬТАНТ приводит к тому, что категорийная связь становится полной (рис. 26).
Мощность связи представляет собой отношение количества экземпляров родительской сущности к соответствующему количеству экземпляров дочерней сущности. Мощность связи определяется только для идентифицирующих и неидентифицирующих связей и записывается как l:n. ERwin, в соответствии с методологией IDEF1X, предоставляет 4 варианта для п, которые изображаются дополнительным символом у дочерней сущности (рис. 27)
Рис. 25 Пример неполной категории
Рис.26 Пример полной категории
Рис. 27 Обозначение кратности связи
Допустимость пустых (NULL) значений в неидентифицирующих связях ERwin изображает пустым ромбиком на дуге связи со стороны родительской сущности.
В целях контроля ссылочной целостности (под ссылочной целостностью в ERwin понимается обеспечение требования, чтобы значения внешнего ключа экземпляра дочерней сущности соответствовали значениям первичного ключа в родительской сущности) для каждой связи могут быть заданы требования по обработке операций INSERT/UPDATE/DELETE для родительской и дочерней сущности. ERwin представляет следующие варианты обработки этих событий:
1. отсутствие проверки;
2. проверка допустимости;
3. запрет операции;
4. каскадное выполнение операции (DELETE/UPDATE);
5. установка пустого (NULL-значения) или заданного значения по умолчанию.
Список используемой литературы
1. Балдин К. В., Уткин В. Б., Информационные системы в экономике, М.: Издательско-торговая корпорация «Дашков и К0», 2008 г.