Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Конспект лекций для специальности Прикладная информатика в экономике

Работа добавлена на сайт samzan.net: 2016-03-13

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 18.5.2024

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

«Калининградский государственный технический университет»

Кафедра систем управления и вычислительной техники

Топоркова О.М.

ИНФОРМАЦИОННЫЕ СИСТЕМЫ

Конспект лекций

для специальности «Прикладная информатика в экономике»

Калининград

2007

Оглавление

[1]
Глава 1. Производство. Информация. Общество

[1.1] 1.1. Информатизация общества

[1.2] 1.2. Информационный характер процесса управления производством

[1.3] 1.3. Элементы субъекта управления и функции управления

[1.4] 1.4. Уровни управления и информация

[1.5] 1.5. Превращение информации в ресурс общества

[2]
Глава 2.  Понятие информационной системы

[2.1] 2.1. Общая характеристика информационной системы

[2.2] 2.2. Классификация информационных систем

[2.3] 2.3. Хранение данных как важнейшая общая задача ИС

[3] Глава 3. Фактографические информационные системы

[3.1] 3.1. Основные понятия

[3.2] 3.2. Проектирование структуры данных

[3.3] 3.3. Логическое проектирование структур данных

[3.4] 3.4. Физическое проектирование структур данных

[3.4.1] 3.4.1. Методы физического проектирования для реляционных моделей

[3.4.1.1] 3.4.1.1. Последовательная организация

[3.4.1.2] 3.4.1.2. Индексно-последовательная организация

[3.4.1.3] 3.4.1.3. Индексно-произвольная организация

[3.4.1.4] 3.4.1.4. Рандомизация

[3.4.1.5] 3.4.1.5. Цепь подобных записей

[3.4.1.6] 3.4.1.6. Инвертированные файлы

[3.4.2] 3.4.2. Методы физического проектирования для иерархических моделей

[3.4.2.1] 3.4.2.1. Множественные ссылки на порожденные записи

[3.4.2.2] 3.4.2.2. Ссылки на подобные и порожденные записи

[3.4.2.3] 3.4.2.3. Кольцевые структуры

[3.4.2.4] 3.4.2.4. Справочники

[3.4.2.5] 3.4.2.5. Битовые отображения

[3.4.3] 3.4.3. Методы физического проектирования для сетевых моделей

[3.4.3.1] 3.4.3.1. Множественные ссылки на порожденные записи

[3.4.3.2] кафедра     должность

[3.4.3.3] 3.4.3.2. Ссылки на подобные и порожденные записи

[3.4.3.4] 3.4.3.3. Кольцевые структуры

[3.4.3.5] Выполнение поисковых задач осуществляется аналогично иерархическим структурам.

[3.4.3.6] 3.4.3.5. Справочники

[3.4.3.7] 3.4.3.6. Битовые отображения

[4]
Глава 4. Документальные информационные системы

[4.1] 4.1. Методы организации хранения неструктурированных данных

[4.1.1] 4.1.1. Последовательные файлы

[4.1.2] 4.1.2. Цепочечные файлы

[4.1.3] 4.1.3. Инвертированные файлы

[4.1.4] 4.1.4. Кластерные файлы

[4.2] 4.2. Методы индексирования

[4.2.1] 4.2.1. Позиционные методы назначения весов

[4.2.2] 4.2.2. Статистические методы назначения весов

[4.2.2.1] 4.2.2.1. Частотные модели

[4.2.2.2] 4.2.2.2. Модель, учитывающая различительную силу термина

[4.2.3] 4.2.3. Динамический метод назначения весов

[4.3] 4.3. Кластеризация текстов

[4.4] 4.4. Поиск релевантных текстов

[4.4.1] 4.4.1. Поиск в инвертированных файлах

[4.4.2] 4.5.2. Поиск при кластерной организации хранения

[4.5] 4.5. Методы расширенного поиска

[4.5.1] 4.5.1. Построение словаря синонимов

[4.5.2] 4.5.2. Ассоциативное индексирование терминов

[4.5.3] 4.5.3. Вероятностное индексирование терминов

[5]
Глава 5. Организация интерфейса пользователя в информационных системах

[5.1] 5.1. Типы диалогов

[5.2] 5.2. Эргономичность интерфейса

[6]
ИНДИВИДУАЛЬНЫЕ ЗАДАНИЯ

[7]
ЛИТЕРАТУРА


Глава 1. Производство. Информация. Общество

1.1. Информатизация общества

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

  1.  банковских систем - виртуальные, компьютерные расчеты и платежи, прогноз банковского кредитного риска и надежности банков;
  2.  систем рыночной экономики - прогноз и анализ спроса и предложения на рынке, моделирование поведения сегментов рынка и прибыли от продаж;
  3.  систем социального обеспечения - прогноз и анализ инфляции в страховании, моделирование принятия решений в различных социо-экономических и социо-культурных ситуациях, в частности катастрофических;
  4.  систем налоговой службы - прогноз и анализ собираемости налогов, моделирование и прогнозирование тяжести налогового бремени, расчет оптимальных ставок налогообложения;
  5.  систем биржи и биржевой деятельности - прогноз и анализ динамики курса ценных бумаг, валют, моделирование потоков (товаров, ценных бумаг, платежей, услуг и др. ресурсов) на бирже, моделирование и прогнозирование аномалий, катастроф на бирже;
  6.  систем промышленности - прогноз и анализ производительности труда, рентабельности и прибыльности, финансовой устойчивости и платежеспособности предприятий, состава и структуры производства, поставок, сбыта;
  7.  систем транспорта и связи - прогноз и анализ, выбор оптимального маршрута движения транспорта, трафика сетей связи, управление транспортными потоками и средствами, навигация транспортных средств;
  8.  систем топливно-энергетического комплекса - прогноз и анализ (распознавание) мощности нефтеносного пласта, его профиля, автоматизация систем распределения и учета расхода энергии;
  9.  систем строительного комплекса - прогноз, анализ (оптимизация) парка строительных машин, механизмов, их простоя, учет стройматериалов, автоматизированная компоновка (например, прокладка с использованием пакета программ AutoCAD водопроводных, тепловых, электрических коммуникаций), расчет надежности и долговечности конструкций;
  10.  систем правительственных услуг и права - разработка консультационных правовых компьютерных систем, прогноз и анализ динамики правонарушений в зависимости от различных факторов, разработка и использование различных систем консультирования по вопросам права и государства;
  11.  систем здравоохранения и медицины - прогноз и анализ эпидемий и различных медико-социо-экономических ситуаций, разработка и использование автоматизированных систем "Поликлиника", "Скорая помощь", "Реабилитационный центр" и др., АРМ терапевта, хирурга, кардиолога, медсестры и др.;
  12.  систем экологии - прогноз и анализ загрязнения водного и воздушного бассейна, моделирование и прогнозирование катастроф, разработка экспертных систем и баз знаний для принятия экологически обоснованных решений;
  13.  систем сельского хозяйства - прогноз и выбор оптимального режима полива и подкормки растений, автоматизация учета и хранения сельхозпродукции, моделирование прироста биомассы в динамике, принятие рациональных, экологически обоснованных решений;
  14.  систем образования и образовательных услуг - разработка и использование систем дистанционного обучения, различных программных, методических продуктов педагогического характера, актуализация и визуализация междисциплинарных связей, в частности с помощью компьютерных лабораторных работ по физике, химии, разработка АРМ директора, завуча, зав. кабинетом, автоматизация составления расписания занятий;
  15.  систем военного дела - прогноз и анализ ситуаций на военном поле, обеспечение автоматизированных систем управления огнем, оптимальный выбор рациона питания армии, моделирование тактики поведения военных и судов, кораблей, самолетов, танков, в частности, уклонения их от нападения;
  16.  систем безопасности - разработка высоконадежных средств шифрования и передачи данных, разработка систем защиты и обеспечения надежности сетей и систем ЭВМ, обеспечение защиты от помех и перехвата информационного характера;
  17.  систем делопроизводства - использование систем делопроизводства, контроля, электронных словарей и переводчиков, распознавание текстов и их ввод в компьютер.

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

  1.  информатизация страны: обеспечение дистанционного обучения в рамках страны; разработка и/или исследование адекватных математических моделей демографической ситуации в стране; разработка математических моделей и компьютерных систем прогноза погоды; разработка внутригосударственной автоматизированной системы управления транспортом и продажи билетов;
  2.  информатизация региона: информатизация образования или решение задач информатизации регионального компонента образования; компьютеризация налоговых и банковских региональных структур; разработка математических моделей и компьютерных систем планирования целей, исследования, принятия решений и управления различными (например, эколого-медицинскими) системами региона;
  3.  информатизация города: информатизация, компьютеризация АТС города, например, на базе цифровых систем связи; информатизация и компьютеризация управления таксопарком города; разработка баз данных по юридическим и физическим лицам города.
  4.  информатизация быта и досуга: разработка автоматизированной системы ведения домашней бухгалтерии; разработка и использование мультимедийных программных обучающих систем для домашней и самостоятельной работы школьников; разработка и использование различных игровых систем.

Основные социально-экономические проявления информатизации выражаются в следующем:

  1.  высокая информационная культура членов общества и его систем, государственное воспитание и поддержание этой культуры на государственном уровне;
  2.  индустриализация информационного обслуживания членов и институтов общества;
  3.  превращение информации в товар с его классическими атрибутами (цена, стоимость, спрос, предложение, наличие денежного эквивалента, издержки, реклама и т.д.) и развитие рынка этого товара;
  4.  потенциально свободный доступ каждого к интеллектуальному богатству общества, всего мирового сообщества;
  5.  превращение знаний и профессионализма в непосредственный атрибут товарно-денежных отношений, капитализация информационных ресурсов и отношений, знаний;
  6.  превращение труда в преимущественно умственный и интеллектуальный труд, высвобождение большего времени для духовного развития или саморазвития человека, высокий уровень информационного сервиса быта и труда;
  7.  обеспечение информационной защиты и информационной безопасности общества, стабильности и устойчивости существования этого общества;
  8.  более высокий уровень принятия решений на базе соответствующих систем (баз данных, знаний, экспертных систем и др.).

В процессе информатизации общества необходимо решить следующие задачи:

  1.  создать математическую и элементную (техническую) базу;
  2.  создать качественную и гибкую индустрию информационных потоков, технологий;
  3.  подготовить системы информатизации и совершенствования управления;
  4.  обеспечить информационную безопасность (предупреждение негативного воздействия информации на человека и общество);
  5.  воспитать членов общества, обладающих компьютерной грамотой, создать все условия для этого.

1.2. Информационный характер процесса управления производством

Наиболее значимый объект информатизации – производство. Оно является источником экономического эффекта, и в нем наиболее сложны и многообразны процессы обработки информации.

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

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

Информация о внешней среде

Цель            Осведомляющая информация

 

Входной материальный поток          Готовая продукция 

      Ресурс         Технологии

Обозначения:

- материальная связь;   - информационная связь.

Рис. 1.1 - Схема взаимодействия производства с внешней средой

Цель – это желаемое состояние системы, отражающее волю субъекта управления и имеющее строго определенный срок существования. Она определяет функционирование производства, регламентируя то, что должно быть произведено. Цель связана с понятиями стратегии и показателя: стратегия – образ действия, обеспечивающий достижение поставленной цели; показатель - измеритель степени достижения цели.

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

Осведомляющая информация – данные, отражающие состояние результата производства продукции.

Информация о внешней среде – данные, определяющие функционирование производства в условиях внешних воздействий.

Готовая продукция – целевой материальный поток произведенной продукции.

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

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

Совокупность технологий, ресурсов и входного материального потока формирует технологический процесс производства.

Примером производства может служить подготовка специалистов учебными заведениями высшей школы - вузами. Во времена плановой экономики целью функционирования вуза являлась подготовка специалистов для нужд народного хозяйства. Однако в условиях рыночных отношений цель поменялась - это удовлетворение потребностей членов общества в знаниях. Смена цели в данном примере отвечает приведенному свойству ее срочности. Входной материальный поток в обоих случаях – это граждане общества, которые, будучи зачисленными в вуз, стали его студентами, готовая продукция – это специалисты, получившие диплом о высшем образовании. Ресурсы – это преподаватели и технический персонал, аудитории, лаборатории  и т.д. Технологии обучения включают: операции по обучению (проведение занятий в форме лекций, лабораторных и практических занятий, семинаров и т.п.) и контролю знаний студентов (экзамены, зачеты, тесты); технические средства обучения (например, компьютеры как средство автоматизированного тестирования), методическое обеспечение учебного процесса – как инструментальную среду; специальную терминологию, включающую такие понятия как сессия, переэкзаменовка, академический отпуск и т.д., – как информационную среду; взаимодействие преподавателей и студентов во время учебного процесса – как систему управления учебной деятельностью. Осведомляющая информация содержит данные о качественном и количественном выпуске специалистов, о расходовании фонда заработной платы и т.д. Информация о внешней среде включает, в частности, сведения о перспективах развития экономики в регионе или в стране, что позволяет вузам открывать новые специальности; о прогнозируемой демографической обстановке и т.п.

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

Например, выходя утром из дома, мы слушаем по радио прогноз погоды на день и принимаем решение о том, понадобится ли нам зонт. В этом случае информация, содержащаяся в прогнозе, является входной. Она влияет на наше решение, которое рождается в недрах собственного сознания в виде другой, выходной информации, например, в форме фразы: «возьму-ка я зонтик, поскольку давление понижается».  

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

В практике современных сложных производственных предприятий типовыми видами деятельности являются:

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

Часто производство рассматривается как система, состоящая из двух подсистем:

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

Это позволяет представить производство схемой рис. 1.2.

Информация о внешней среде

Цель            Осведомляющая информация

Управляющая   Информация

информация   о состоянии ОУ

Входной материальный           Готовая продукция

поток

Ресурс           Технологии

Производство

Рис. 1.2 - Производство как система взаимодействия объекта и субъекта

управления

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

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

1.3. Элементы субъекта управления и функции управления

Рис. 1.2 показывает, что с информацией, в основном, связан субъект управления. Его элементами служат:

  1.  персонал – сотрудники разной степени квалификации и уровней управления – от секретарей до менеджеров, принимающих стратегические решения. Каждый сотрудник является служащим определенного структурного подразделения (например, преподаватель вуза числится на одной из кафедр) и выполняет ряд функциональных обязанностей, в которые входит, в частности, решение производственных задач (для преподавателя такими обязанностями является проведение учебных занятий, промежуточного и итогового контроля знаний и т.п.). При этом между отдельными представителями персонала, или между ними и структурными подразделениями, или между самими структурными подразделениями устанавливаются отношения подчинения, с помощью которых реализуются управленческие решения (например, каждый преподаватель кафедры подчиняется заведующему кафедрой, каждая кафедра входит в состав того или иного факультета). Отношение подчиненности, заданное на структурных подразделениях производства или отдельных персоналиях, формирует организационную структуру СУ, а функциональные обязанности как набор производственных задач – его функциональную структуру;
  2.  субкультура – совокупность представлений, принципов, типов поведения персонала;
  3.  оргтехника и материальные средства, используемые при реализации задач управления (компьютерная и телекоммуникационная техника, рабочие столы и помещения, канцелярские принадлежности и т.д.);
  4.  стандартные процедуры – точно определенные правила выполнения заданий в различных ситуациях: от технологических операций по ведению деловой переписки (для секретарей) до выполнения собственно управленческих функций, связанных с решением производственных задач (для менеджеров различных уровней управления).

Сами производственные задачи по степени сложности и возможности их автоматизации делятся на три вида:

  1.  структурированные задачи - те, для которых можно задать алгоритм решения, известны входные и выходные параметры. Подобные задачи персоналу приходится решать многократно, они носят рутинный характер. Их решение можно полностью автоматизировать, т.е. свести роль человека к нулю;
  2.  частично структурированные задачи - те, для которых применяются и строгие алгоритмы решения части подзадач, и эвристические методы, например, профессиональные знания специалистов. Такие задачи можно и целесообразно автоматизировать, что и происходит на практике;
  3.  неструктурированные задачи те, для которых либо невозможно создать алгоритм, либо его создание сопряжено с большими сложностями. Возможности автоматизации здесь невелики, поскольку для их решения человек использует собственный опыт и интуицию (т.е. эвристические методы), которые практически не поддаются формализации или позволяют строить грубые модели.

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

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

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

Стандартные процедуры отвечают следующим функциям управления:

  1.  учетная (учет) – получение, регистрация, накопление, простейшая первичная обработка фактической информации о реальных производственных процессах;
  2.  контрольная (контроль) – выявление отклонений фактической информации от плановой;
  3.  аналитическая (анализ) – выявление причин тех отклонений, которые обнаружены при контроле;
  4.  нормативная (нормирование) – разработка норм и нормативов для дальнейшего планирования и организации производства;
  5.  плановая (планирование) – разработка планов по выполнению задач и достижению целей управления. В зависимости от временного периода, на который составляется план, различают виды планирования: долгосрочное – более года; текущее – от месяца до года; оперативное – меньше месяца;
  6.  организационная (организация) – принятие конкретных мер по выполнению планов. Может включать мотивационную функцию – применение различных методов стимулирования труда: финансовые стимулы, психологические стимулы.

Взаимосвязь функций управления показана на рис. 1.3. В результате выполнения каждой из них формируется определенная информация, названная далее по имени соответствующей функции.


   

          

              

         

 

     

Обозначения:

  •  информационная связь, Включает учетную (УИ), контрольную (КИ), аналитическую (АИ), нормативную (НИ), плановую (ПИ), организационную (ОИ) информацию, а также информацию о состоянии ОУ;
  •  управляющая связь.

Рис. 1.3 - Взаимосвязь функций управления

Учетную функцию выполняет, в частности, преподаватель, когда отмечает в учетной карточке группы присутствующих на лекции студентов. Учетная информация – это отметки о присутствии или отсутствии студентов. Контроль тогда состоит в выделении отсутствующих студентов в общем списке, поскольку, как правило, посещение лекций является обязательным (т.е. плановым) для студентов. Контрольная информация в этом случае может фиксироваться в памяти преподавателя или в виде выписки с фамилиями отсутствующих. Поскольку причина отсутствия студента может быть уважительной, за контролем следует анализ, в результате которого вырабатывается аналитическая информация, например, в виде записи о причине отсутствия. Предположим, что отсутствие студента вызвано непосильной учебной нагрузкой, заложенной в учебном плане, что привело к физическому срыву и болезни. Тогда следует пересмотреть нормы нагрузки, что выполняется при нормировании процесса обучения. Нормативная информация тогда – это часовые нормы, выделяемые на выполнение самостоятельной работы и аудиторной нагрузки студента. Следует отметить, что нормирование – не обязательная функция СУ. Часто нормы и нормативы «спускаются» на производство из вышестоящей организации, например, общее число часов на обучение, состав обязательных дисциплин и т.п. зафиксированы в Государственном образовательном стандарте специальности или направления. После получения таких норм и нормативов следует планирование учебного процесса – составление учебного плана для специальности конкретного года приема (это долгосрочное планирование – на все время обучения), разработка планов обучения на семестр в виде расписания занятий (это текущее планирование), а также оперативное планирование, например, дополнительных занятий со студентами отдельным преподавателем. Совокупность всех планов составляет плановую информацию. Когда планы составлены, следует организационная функция.   Она заключается, например, в вывешивании расписания занятий для студентов, информировании преподавателей об их нагрузке и т.д. Можно сказать, что организационная информация есть управляющая информация для ОУ (по крайней мере, в данном случае).

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

1.4. Уровни управления и информация

Процессы управления, осуществляемые в СУ, в зависимости от решаемых задач делятся на уровни:

  1.  организационно-экономическое управление производством в целом или его подразделениями. Позволяет достичь оптимального значения показателей цели производства. Это стратегический (высший) уровень, который реализуется персоналом, представляющим высшее руководство производства;
  2.  организационно-технологическое управление. Оперирует средствами реализации технологического процесса для их оптимального использования. Это функциональный или тактический (средний) уровень управления, реализуемый персоналом среднего звена;
  3.  управление технологическими процессами. Обеспечивает непосредственное выполнение технологического процесса путем решения многократно и часто повторяющихся задач и операций и быстрое реагирование на изменения в ОУ. Реализуется персоналом нижнего звена. Это операционный (оперативный), нижний уровень.

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

Уровни управления связаны с агрегированностью информации: чем выше уровень, тем больше период обновления информации и степень ее агрегирования.

В самом деле, такая подробная информация о работе студента в течение семестра, как его посещаемость и оценки за самостоятельные и домашние задания, вряд ли интересует руководство высшего звена вуза. А вот агрегированная информация о трудоустройстве выпускников позволяет принимать решения о востребованности той или иной специальности и корректировать наборы абитуриентов.

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

1.5. Превращение информации в ресурс общества

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


             

           АИ, КИ, УИ          ПИ, НИ, ОИ  

            

         АИ, КИ, УИ          ПИ, НИ, ОИ

Рис. 1.4 - Взаимосвязь функций управления по уровням

информационного обслуживания: так, в начале 20 века информационной деятельностью занимались 10% населения, в конце 20 века – около 50%.

В постиндустриальной экономике традиционная промышленность по показателям занятости и доле в национальном продукте постепенно уступает ведущее место сфере услуг, которая основывается преимущественно на обработке информации и производстве знаний.

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

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

Превращение информации в ресурс выражается в следующих фактах:

  •  резко уменьшилось время накопления знаний: удвоение накопленных знаний происходит за 2 – 3 года;
  •  знания, полученные специалистом в высшей школе, устаревают за 5 – 7 лет;
  •  материальные затраты общества на информационные процессы уже превышают затраты в целом на энергетику.

Эти тенденции заставляют по-новому относиться к процессу накопления, хранения и использования информации.

Если информация становится предметом труда, то в результате этой трудовой деятельности возникает новый вид ресурса – информационный. Возникают производства, занятые выпуском информации (рис. 1.5):

Информация о внешней среде

Цель          Осведомляющая информация

Входной информационный         Готовая продукция-

поток           информационный ресурс

    Ресурс         Технологии

Рис. 1.5 - Структура информационного производства

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

Отличительными особенностями информационного ресурса являются следующие:

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

Таким образом, информация становится стратегическим ресурсом общества в целом. Его использование возможно за счет информатизации общества, для чего должны быть выполнены условия: использование средств вычислительной техники во всех общественно значимых сферах общества; поднятие престижа интеллектуальной деятельности в информационной сфере общества; охват информацией всех слоев общества.

Различают два вида информационных ресурсов – данные и знания.

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

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

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

Примером данных могут служить сведения о результатах сдачи сессии некоторой учебной группой и о последующих решениях деканата по тому или иному студенту по поводу его последующего обучения: это факты, имеющие место в некоторой предметной области, в роли которой выступает конкретный деканат, определенная учебная группа и результаты сдачи ею сессии. Так, например, студент Х имеет двойку по дисциплине Y; студента Х отчислили из вуза. Обобщенный факт – это результат абстрагирования от конкретных характеристик предметной области: результаты сдачи любой сессии любой учебной группой являются основанием для решений произвольного деканата по каждому из студентов группы по поводу его дальнейшей судьбы в вузе. Например, студент имеет двойку по какой-либо дисциплине; студента отчислили из вуза. Эмпирический закон определяет общие правила, которыми руководствуется деканат, выявленные в результате анализа обобщенных фактов. Например, студент не сдал экзамен; студента отчисляют из вуза.2. Теоретический закон означает еще большее обобщение: он записывается с использованием кванторов «всегда», «иногда»: для каждого студента, не сдавшего экзамен, выполняется его отчисление из вуза.

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

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

Эмпирические методы включают:

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

Кроме классических форм их реализации, в последнее время используются опрос, интервью, тестирование и другие.

Эмпирико-теоретические методы включают:

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

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

Теоретические методы включают:

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

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

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


Глава 2.  Понятие информационной системы

2.1. Общая характеристика информационной системы

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

Цели внедрения ИС:

  1.  получение более рациональных вариантов решения управленческих задач за счет внедрения математических методов и интеллектуальных систем;
  2.  освобождение персонала от рутинной работы за счет ее автоматизации;
  3.  обеспечение достоверности информации;
  4.  внедрение безбумажной технологии обработки информации;
  5.  совершенствование структуры потоков информации и системы документооборота;
  6.  уменьшение затрат на производство продуктов и услуг.

Задачи ИС делятся на общие и конкретные. Конкретные задачи зависят от предметной области, для которой предназначена система. Общие задачи связаны с общими чертами ИС и должны:

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

В соответствии с данными задачами структура ИС в основном включает три составляющие: информационные массивы, программное обеспечение, интерфейс (рис. 2.1).

Рис. 2.1. Структура информационной системы

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

Программное обеспечение выполняет две основные функции: ведение информационных массивов как поддержание их в актуальном состоянии; обработка информации в соответствии с задачами того производства, на котором эксплуатируется ИС.

Интерфейс предназначен для организации диалога пользователя с ИС с целью решения определенных функциональных задач.

Эволюция информационных систем приведена в табл. 2.1.

Эволюция информационных систем

Таблица 2.1

Период времени

Средства реализации

Концепция использования информации

Вид информационной системы

Цель использования

50–60 г.г.20 века

Электромеханические бухгалтерские счетные машины

Бумажный поток расчетных документов

ИС обработки расчетных документов

Сокращение затрат на подготовку бумажных документов, повышение качества их подготовки

60-70 г.г.20 века

Компьютеры

Помощь в подготовке отчетов

Управленческие ИС для производственной информации

Ускорение подготовки отчетности, повышение качества подготовки

70-80 г.г.20 века

-«-

Управленческий контроль реализации

Системы поддержки принятия решений, системы для высшего звена управления

Выработка наиболее рационального решения

с 80 г.г.20 века

Сетевые компьютеры

Информация – стратегический ресурс, обеспечивающий конкурентное преимущество

Стратегические ИС, автоматизированные офисы

Выживание и процветание фирмы

2.2. Классификация информационных систем

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

По масштабу ИС будем подразделять на однопользовательские, групповые и корпоративные:

  1.  Однопользовательские ИС предназначены для использования на одном рабочем месте - это автоматизированные рабочие места (АРМы). Могут быть реализованы с использованием:
  •  интегрированных программных продуктов типа MS Office, не имеющих проблемной специализации;
  •  СУБД, обладающих высокоуровневой инструментальной средой, позволяющей спроектировать
    •  базу данных,
    •  логику обработки,
    •  пользовательский интерфейс,
    •  отчеты с помощью специальных построителей.
  1.  Групповые ИС предназначены для автоматизации деятельности в рабочей группе (отделе, группе проекта и т.д.). Представляют специализированные решения для различных участников группы. Например, для оптовой торговой фирмы, ИС может представлять набор таких АРМов, как "Менеджер по продажам", "Кладовщик", "Снабженец", "Директор"; для учебного заведения - "Преподаватель", "Работник бюро планирования", "Работник учебного отдела", "Специалист по планированию на кафедре", "Работник деканата". При создании групповых ИС в целом используются те же средства и инструментальные среды, что и при создании однопользовательских ИС.
  2.  Корпоративные ИС предназначены для автоматизации деятельности предприятия. Как правило, они обеспечивают управление основными ресурсами - финансами, кадрами, материальными ресурсами. Среди требований, предъявляемых к современным КИС, можно отметить:
  •  централизация данных в единой базе (в основе - всегда СУБД),
  •  близкий к реальному времени режим работы,
  •  сохранение общей модели управления для предприятий разных отраслей,
  •  поддержка территориально-распределенных структур,
  •  работа на широком круге аппаратно-программных платформ и СУБД.

В соответствии с архитектурой различают три класса ИС: с файл-серверной, клиент-серверной и трехслойной архитектурой.

  1.  Архитектура "файл-сервер"  является исторически первой архитектурой ИС. Характерные черты:
  •  программные модули и данные размещаются в отдельных файлах операционной системы, причем для хранения данных используется выделенный сервер (отдельный компьютер), который и является файловым сервером, а программы хранятся либо на рабочих станциях, либо на файловом сервере;
  •  доступ к данным осуществляется путем указания пути (path) и использования файловых операций (открыть, считать, записать).
  1.  Архитектура "клиент-сервер". Характерные черты:
  •  исполняемый модуль (клиент) запрашивает те или иные сервисы в соответствии с определенным протоколом обмена данными;
  •  отсутствует необходимость в использовании прямых путей операционной системы: клиент их "не знает", ему "известны" лишь имя источника данных и другие специальные сведения, используемые для авторизации клиента на сервере;
  •  сервер физически может находиться на том же компьютере, что и клиент; он обрабатывает запрос клиента и, произведя соответствующие манипуляции с данными, передает клиенту запрашиваемую порцию данных.

В рамках архитектуры "клиент-сервер" существуют два основных понятия:

  1.  "тонкий" клиент. Используется мощный сервер баз данных и библиотека хранимых процедур, позволяющих производить вычисления, реализующие основную логику обработки данных, непосредственно на сервере. Клиентское приложение, соответственно, предъявляет невысокие требования к аппаратному обеспечению рабочей станции;
  2.  "толстый" клиент реализует основную логику обработки на клиенте, а сервер представляет собой в чистом виде сервер баз данных, обеспечивающий исполнение только стандартных запросов на манипуляцию с данными (как правило - чтение, запись, модификацию данных в таблицах реляционной базы данных).
  3.  Трехслойная архитектура базируется на дальнейшей специализации компонент архитектуры:
  •  клиент занимается только организацией интерфейса с пользователем,
  •  сервер баз данных выполняет только стандартную обработку данных,
  •  для реализации логики обработки данных архитектура предусматривает отдельный слой - слой бизнес-логики. Он может представлять собой либо выделенный сервер (сервер приложений), либо размещаться на клиенте в качестве библиотеки.

 

В зависимости от характера использования информации выделяют классы ИС:

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

Рассмотрим классификацию по поддерживаемым стандартам управления и технологиям коммуникации.:

  •  MRP (Material Requirements Planning) - планирование поставок материалов, исходя из данных о комплектации производимой продукции и плана продаж.
  •  CRP (Capacity Requirements Planning) - планирование производственных мощностей, исходя из данных о технологии производимой продукции и прогноза спроса.
  •  MRPII (Manufacture Resource Planning) - планирование материальных, мощностных и финансовых ресурсов, необходимых для производства. Стандартизовано ISO.
  •  ERP (Enterprise Resource Planning) - финансово-ориентированное планирование ресурсов предприятия, необходимых для получения, изготовления, отгрузки и учета заказов потребителей на основе интеграции всех отделов и подразделений компании.
  •  SCM (Supply Chain Management) - управление цепочками поставок. Реализация бизнес-процессов на базе внешних предприятий и торговых площадок Основано на референтной модели SCOR, стандартизованной Supply Chain Council.
  •  CRM (Customer Relationship Management) - управление взаимоотношениями с заказчиками. Комплекс методов и средств, нацеленный на завоевание, удовлетворение требований и сохранение платежеспособных клиентов.
  •  ERPII (Enterprise Resource & Relationship Processing) - управление ресурсами и взаимоотношениями предприятия. Объединяет в себе 3 вышеперечисленные технологии.
  •  Workflow - технология, управляющая потоком работ при помощи программного обеспечения, способного интерпретировать описание процесса, взаимодействовать с его участниками и при необходимости вызывать соответствующие программные приложения.
  •  OLAP (Online Analytical Processing) - оперативный анализ данных. Технология поддержки принятия управленческих решений на основе концепции многомерных кубов информации.
  •  Project Management - управление проектами. Поддерживается рядом международных стандартов.
  •  CALS (Continuous Acquisition and Lifecycle Support) - непрерывная информационная поддержка поставок и жизненного цикла. Описывает совокупность принципов и технологий информационной поддержки жизненного цикла продукции на всех его стадиях. Объединяет в себе практически все вышеперечисленные подходы и технологии.

В соответствии со степенью автоматизации выделяют классы ИС:

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

2) автоматические ИС выполняют все операции по переработке информации без участия человека;

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

По структурированности решаемых задач ИС делятся на два класса:

  1.  создающие управленческие отчеты. Ориентированы на стандартные процедуры обработки данных - поиск, сортировку, агрегирование, фильтрацию, группирование и т.д. Используя данные, которые они формируют, человек принимает управленческое решение. Применяются для структурированных задач;
    1.  разрабатывающие возможные альтернативы решений. Применяются для частично структурированных задач. Генерируют множество решений, предлагаемых человеку; принятие им решения сводится к выбору одной из альтернатив. Данные ИС делятся на два вида:
  •  модельные - предоставляют пользователю различные модели (математические, статистические, финансовые и т.д.), использование которых облегчает выработку и оценку альтернатив решения. Пользователь может получить недостающую информацию путем установления диалога с моделью в процессе ее исследования;
  •  экспертные - обеспечивают выработку и оценку возможных альтернатив за счет создания экспертных систем, связанных с обработкой знаний.

Классификации ИС по функциональному признаку определяет назначение системы, ее основные цели, задачи и функции. В соответствии с этим признаком определяются следующие классы ИС:

  1.  производственные. Осуществляют планирование объемов работ и разработку календарных планов, оперативный контроль и управление производством, анализ работы оборудования, участие в формировании заказов поставщикам, управление запасами;
  2.  маркетинговые. Исследуют рынок и прогнозируют продажи, управляют продажами, вырабатывают рекомендации по производству новой продукции, анализируют и устанавливают цены, учитывают заказы;
  3.  финансовые. Управляют портфелем заказов; кредитной политикой; разрабатывают финансовый план; выполняют финансовый анализ и прогнозирование; контролируют бюджет; осуществляют бухучет и расчет зарплаты;
  4.  кадровые. Анализируют и прогнозируют потребности в трудовых ресурсах, ведут архивы записей о персонале, планируют подготовку и переподготовку кадров;
  5.  прочие (например, для руководства). Контролируют деятельность предприятия, выявляют оперативные проблемы, анализируют управленческие и стратегические ситуации, обеспечивают процесс выработки стратегических решений.

Классификация по уровням управления соответствует приведенной ранее иерархической структуре субъекта управления. Выделяют классы ИС:

  1.  оперативного уровня - поддерживают персонал, состоящий из специалистов-исполнителей, обрабатывая данные о событиях, происходящих в объекте управления. Назначение таких ИС – отвечать на запросы о текущем состоянии ОУ и отслеживать поток событий на производстве, что соответствует оперативному управлению. Для этого информационная система должна быть легкодоступной, непрерывно действующей и предоставлять точную информацию. Задачи, цели и источники информации заранее определены и в высокой степени структурированы;
  2.  тактического уровня - включают следующие виды информационных систем:
  •  офисной автоматизации - имеют целью повышение эффективности работы персонала, упрощение канцелярского труда, поддержание информационных коммуникаций. Основные функции: обработка текстов на компьютерах, производство высококачественной печатной продукции, архивация документов, ведение электронных календарей и записных книжек для деловой документации, поддержка электронной и аудиопочты, видео- и телеконференций;
  •  обработки знаний (включая экспертные системы) - имеют целью создание новой информации и нового знания на основе включенного в них знания экспертов в некоторой предметной области;
  •  управленческие - обслуживают персонал, который нуждается в ежедневной, еженедельной информации о состоянии дел. Основное назначение – отслеживание ежедневных действий на производстве и периодическое формирование строго структурированных сводных типовых отчетов. Информация поступает из ИС оперативного уровня управления. Характерные черты: используются для поддержки принятия решений структурированных и частично структурированных задач на уровне контроля за операциями; ориентированы на контроль, отчетность и принятие решений по оперативной обстановке; опираются на существующие данные и их потоки внутри организации; имеют малые аналитические возможности и негибкую структуру;
  •  поддержки принятия решений - обслуживают частично структурированные задачи, результаты которых трудно спрогнозировать заранее. Имеют более мощный аналитический аппарат с несколькими моделями. Информацию получают из управленческих и операционных ИС. Используются всеми, кому необходимо принимать решение. Характеристики: обеспечивают решение проблем, развитие которых трудно прогнозировать; оснащены сложными инструментальными средствами моделирования и анализа; позволяют легко менять постановки решаемых задач и входные данные; отличаются гибкостью и легко адаптируются к изменению условий по несколько раз в день; имеют технологию, максимально ориентированную на пользователя;
  1.  стратегического уровня - обеспечивают поддержку принятия решений по реализации стратегических, перспективных целей развития производства. Обладают следующими возможностями: помогают персоналу высшего звена решать неструктурированные задачи; осуществляют долгосрочное планирование путем сравнения изменений вовне производства с потенциалом производства; реализуют информационную поддержку в любой момент из многих источников. Играют вспомогательную роль из-за сложности решаемых задач.

В соответствии с классификацией по сфере применения выделяют следующие виды ИС:

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

По типу используемой информации выделяют классы ИС:

  1.  фактографические. В таких ИС регистрируются факты – конкретные значения данных об объектах реального мира. Все данные сообщаются компьютеру в заранее обусловленном формате. Информация имеет четкую структуру, позволяющую компьютеру отличать одно данное от другого. Такая информационная система способна давать однозначные ответы на вопросы типа: «Сколько студентов получили 5 по информатике?» и т.д.;
  2.  документальные. Обслуживают принципиально иной класс задач, которые не предполагают однозначного ответа на поставленный вопрос. БД таких систем образует совокупность неструктурированных текстовых документов и графических объектов, снабженная тем или иным формализованным аппаратом поиска. Цель системы – выдать в ответ на запрос пользователя список документов или других объектов, удовлетворяющих сформулированным в запросе условиям. Примером подобной системы является любая поисковая система Интернета.

2.3. Хранение данных как важнейшая общая задача ИС

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

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

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

  •  при добавлении элемента БД пополняется новыми данными в виде записи файла или файла в целом, соответственно, для структурированных и неструктурированных данных. В запросе в этом случае, помимо указанной выше информации, приводится и сам новый элемент. При этом объем БД увеличивается;
  •  удаление, наоборот, является обратным действием, вызывающим исключение упомянутых данных. Это действие приводит к уменьшению объема БД;
  •  изменение относится не к элементу, а к его составляющим – полям записи файла или тексту, хранящемуся в файле, и означает, в свою очередь,  удаление прежних значений полей или строк текста и/или добавление новых. В запрос включается дополнительная информация, указывающая на требуемые составляющие изменяемого элемента, а также сами новые значения этих составляющих. Объем БД при этом не меняется для структурированных данных и, возможно, меняется для неструктурированных;
  •  просмотр связан с предоставлением данных пользователю на устройстве вывода компьютера, как правило, на дисплее. В запросе в этом случае дополнительно указывается, какие составляющие элемента требуется просмотреть (по умолчанию просматривается весь элемент);
  •  обработка предусматривает выполнение некоторых арифметических и/или логических операций над данными элемента, например, накопление суммы и т.д., и относится только к структурированным данным, а потому далее не рассматривается.  

Таким образом, запрос q в общем случае имеет структуру:

q = (<действие>, <ключ> [{,<указание на составляющую элемента>[=<значение составляющей элемента>]}] ),

где скобки <> означают, что они и их содержимое в конкретных случаях заменяются некоторыми значениями; скобки [] свидетельствуют о возможном отсутствии их содержимого; скобки {} представляют возможное повторение их содержимого.

Тогда для указанных ранее действий можно определить следующие структуры запросов:

qдобавление = (<ключ> {,<указание на составляющую элемента>=<значение составляющей элемента>}),

qудаление = (<ключ>),

qизменение = (<ключ> {,<указание на составляющую элемента>=<значение составляющей элемента>}),

qпросмотр = (<ключ> [{,<указание на составляющую элемента>}]).

Чтобы выполнить любое их указанных выше действий, нужный элемент должен быть предварительно найден в БД, для чего выполняется его поиск (для добавления нового элемента тоже делается попытка его поиска, которая заканчивается неудачно, и тогда элемент добавляется). Под поиском элемента понимается определение его местонахождения в БД. Таким образом, любой доступ к элементам БД включает поиск, что делает эту фазу доступа наиболее значимой. Технологии доступа при выполнении действий добавления или изменения элемента БД показаны на рис. 2.2, технология удаления изображена на рис. 2.3, технология просмотра элемента приведена на рис. 2.4. Различие в схемах состоит в том, что по технологии рис. 2.2 выполняется воздействие на БД с целью ее изменения, для чего в БД передаются данные, по технологии рис. 2.3 воздействие на БД не связано с передачей данных, а по схеме рис. 2.4 данные выводятся из БД без изменения БД.

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


информационные связи

управляющие связи

Рис. 2.2. Схема доступа к БД при выполнении действий добавления или изменения элемента БД


Рис. 2.3. Схема доступа к БД при выполнении удаления элемента БД

Рис. 2.4. Схема доступа к БД при выполнении просмотра элемента БД


Глава 3. Фактографические информационные системы

3.1. Основные понятия

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

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

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

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

Например, если ИС предназначена для учета успеваемости студентов вуза, то в качестве информационного объекта можно рассматривать студента как участника учебного процесса. Его характеристиками являются фамилия, телефон (для связи деканата), средняя оценка в сессию (для назначения стипендии) и т.д. Это – имена характеристик.

Если задаться конкретным студентом, то характеристики приобретают значения. Например (в порядке перечисления характеристик), Иванов, 123456, 4.

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

Для нашего примера элементами данных являются (в каждой строке представлен элемент данных):

фамилия (Иванов);  

телефон (123456);

средний балл (4).

Если студентов трое, элементы данных приобретут вид (каждая строка по-прежнему  - элемент данных):

фамилия (Иванов; Федоров; Петров);  

телефон (123456, 234567, 345678);

средний балл (4, 5, 4).

Подобные данные привычнее (и удобнее) представлять таблицей:

фамилия

телефон

средний балл

Иванов

123456

4

Федоров

234567

5

Петров

345678

4

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

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

Для нашего примера, представленного таблицей, запись об объекте – это одна из строк таблицы со значениями, например,

 

Иванов

123456

4

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

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

Так, в нашем примере поля «фамилия» и «телефон» могут служить однозначным идентификатором – каждое значение соответствующей характеристики определяет только одну запись. В то же время поле «средний балл» является примером многозначного идентификатора – одинаковые результаты сдачи сессии принадлежат разным студентам.

3.2. Проектирование структуры данных3

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

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

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

сущность (объект); ранее - информационный объект

атрибут сущности (свойство, характеризующее объект);

ранее – характеристика информационного объекта

ключевой атрибут (атрибут, входящий в первичный ключ);

ранее – идентификатор информационного объекта

связь; ранее отсутствовала

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

Объект и его атрибуты соединяются ненаправленными дугами:

Связи между объектами могут быть 3-х типов:

  •  Один - к одному. Этот тип связи означает, что каждому объекту первого вида соответствует не более одного объекта второго вида, и наоборот. Например: студент может иметь только одну зачетную книжку и, наоборот, одна зачетная книжка принадлежит только одному студенту.
  •  Один - ко многим. Этот тип связи означает, что каждому объекту первого вида может соответствовать более одного объекта второго вида, но каждому объекту второго вида соответствует не более одного объекта первого вида. Например: в каждой учебной группе может числиться множество студентов, но каждый студент числится только в одной учебной группе.
  •  Многие - ко многим. Этот тип связи означает, что каждому объекту первого вида может соответствовать более одного объекта второго вида, и наоборот. Например: каждый преподаватель может обучать множество студентов, и каждый студент может обучаться у разных преподавателей.

Ромб связи и прямоугольник объекта соединяются ненаправленными дугами в сторону "ко многим" и направленными в сторону "к одному":

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


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

сотрудник – ФИО, ученая степень, научное звание, контактные данные;

кафедра – название, шифр в вузе;

должность – название, образование.

Сформируем ER-диаграммы, описывающие сущности и связи между ними:

Определим, какие атрибуты могут играть роль ключевых:

  •  для сущности кафедра оба атрибута однозначно определяют объект, поскольку не бывает в рамках одного вуза разных кафедр с одинаковыми названиями или шифрами. Для выбора следует ориентироваться на то, какой атрибут, скорее всего, будет использоваться при поиске нужной записи в БД. Очевидно, пользователю удобнее применять название кафедры, поэтому данный атрибут определим как ключевой;
  •  для сущности должность ключевым может служить атрибут название, поскольку  разные должности могут характеризоваться одним значением атрибута образование (высшее, среднее и т.д.);
  •  для сущности сотрудник дело обстоит гораздо сложнее. Предметная область такова, что в реальной ситуации ни один из указанных атрибутов не может служить ключевым. В самом деле, в вузе возможны сотрудники с одинаковыми ФИО. Гораздо меньше вероятность полных тезок и однофамильцев в рамках одной кафедры. Тогда в качестве ключевых атрибутов следует использовать совокупность идентификаторов сотрудников и кафедр.

На этапе логического проектирования требования к данным преобразуются в структуры, применяемые в используемой системе управления данными.

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

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

3.3. Логическое проектирование структур данных 

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

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

фамилия, имя, отчество

оценки в сессию

Иванов Иван Иванович

Информатика – 5, КСЕ – 4, Программирование – 5

Федоров Федор Федорович

Информатика – 3, КСЕ – 3, Программирование – 4

Петров Петр Петрович

Информатика – 5, КСЕ – 4, Программирование – 5

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

Для построенной ранее концептуальной модели можно сформировать три реляционные структуры, поскольку выделены три сущности, причем для таблицы, соответствующей сущности сотрудник, требуется составной первичный ключ, включающий атрибуты ФИО, название кафедры (первичные ключи выделены полужирно):


сотрудник   кафедра  должность

ФИО

ученая степень

научное звание

контактные данные

название кафедры

название

должности

название

шифр в вузе

название

образование

Все остальные поля могут рассматриваться как вторичные ключи, если пользователь заинтересован в организации последующего доступа к данным по этим полям.

Иерархическая модель (или дерево) – это конечное множество Т элементов, такое, что выполняются следующие условия:

  1.  имеется один специально выделенный элемент, называемый корнем дерева;
  2.  остальные элементы (кроме корня) содержатся в m0 попарно не пересекающихся множествах Т1, ....Тm, каждое из которых в свою очередь является деревом. Деревья Т1, ....Тm являются поддеревьями данного дерева.

Пример дерева показан на рисунке:

Дадим некоторые определения, которые понадобятся нам в дальнейшем:

  1.  уровень иерархии – показывает упорядоченность элементов дерева по старшинству. Корень дерева – нулевой уровень, затем уровни нумеруются по возрастанию номеров;
  2.   родительские элементы – элементы (вершины дерева), расположенные на предыдущем уровне иерархии (с непосредственно меньшим номером);
  3.  порожденные элементы – элементы (вершины дерева), расположенные на следующем уровне иерархии (с непосредственно большим номером);
  4.  подобные элементы – элементы (вершины дерева), расположенные на одном уровне иерархии и/или имеющие одного «родителя». Такие элементы, как правило, имеют одинаковую структуру.

Построим иерархическую модель для концептуальной модели из рассмотренного ранее примера. Для этого воспользуется видом связи «один-ко-многим», которая показана на ER-диаграмме. Чтобы продемонстрировать эту связь на схеме, сущность, выступающую в роли «ко-многим», изобразим в виде повторяющихся прямоугольников:

Видно, что имеют место два дерева, одно из которых моделирует отношения сотрудников с кафедрами, а второе – сотрудников и занимаемые ими должности.

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

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

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

3.4. Физическое проектирование структур данных

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

3.4.1. Методы физического проектирования для реляционных моделей

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

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

3.4.1.1. Последовательная организация

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

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

  •  для неупорядоченного файла сравнение повторяется до достижения его конца. В этом случае, если совпадения ключей так и не было, делается вывод об отсутствии нужной записи;
  •  для упорядоченного файла проверяется условие, например, превышения значения ключа доступа Кдоступ  значения ключа К: если файл упорядочен по возрастанию, поиск продолжается; если по убыванию – поиск прекращается ввиду отсутствия нужной записи.

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

Файл разделяется на виртуальные блоки размером N записей, где N – число записей в файле. С ключом доступа Кдоступ сравниваются ключевые поля последних записей в блоках - Кjблока, начиная с первого блока (j – номер блока). С помощью такого сравнения вначале определяется блок, в котором возможно нахождение нужной записи (для этого требуется выполнение условия Кдоступ < Кjблока)5, а затем уже, как правило, методом последовательного сканирования - сама запись в блоке.

При двоичном способе записи файла также должны быть упорядочены по первичному ключу. Файл последовательно делится на две части, уменьшая пространство поиска каждый раз вдвое. Ключ доступа Кдоступ сравнивается с ключевым полем «средней» записи - Кср. Здесь возможны варианты:

Кдоступср; «средняя» запись является искомой, алгоритм заканчивает работу;

Кдоступср; поиск продолжается в той половине файла, где первичные ключи имеют бóльшие значения;

Кдоступср; поиск продолжается в той половине файла, где первичные ключи имеют мéньшие значения.

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

3.4.1.2. Индексно-последовательная организация

Записи файла должны быть упорядочены по первичному ключу. Аналогично блочному методу доступа, файл делится на виртуальные блоки размером N. Затем ключевые поля последних записей блоков вместе с порядковыми номерами этих записей в файле включаются в дополнительные файлы, которые называются индексами. Видно, что данный способ использует дополнительные построения, - назовем тогда исходный файл основным.

Пусть основной файл соответствует реляционной модели для сущности кафедра из рассмотренного ранее примера и имеет вид (здесь и далее графа № п/п не входит в состав записей файла, а формируется операционной системой при создании файла):

кафедра

№ п/п

название 

шифр в вузе

1

АПП

238

2

СУиВТ

239

3

ТАМ

145

4

Экономики

056

Для этого файла N = 4. Это значит, что индекс будет иметь вид (графа ссылки формируется как номера соответствующих записей основного файла):

название

ссылки

СУиВТ

2

Экономики

4

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

  1.  Кдоступ=К – запись найдена, известен ее номер в основном файле, по этому номеру она считывается из него и предоставляется пользователю, алгоритм заканчивает работу;
    1.  Кдоступ>К – считывается следующая запись индекса. Если индекс закончен, алгоритм заканчивает работу – запись не найдена. Иначе вновь ключевое поле К очередной записи индекса сравнивается с ключом Кдоступ; возможные варианты исхода сравнения описаны выше, начиная с п.1);
    2.  Кдоступ<К – обнаружен блок основного файла, который может содержать искомую запись. Выполняется переход к найденному блоку по полю индекса ссылки – к последней его записи. Все записи блока основного файла последовательно сканируются в поисках искомой записи в соответствии с рассмотренным ранее методом последовательного сканирования.

3.4.1.3. Индексно-произвольная организация

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

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

Пусть основной файл вновь соответствует реляционной модели для сущности кафедра из рассмотренного ранее примера и имеет вид:

кафедра

№ п/п

название 

шифр в вузе

1

АПП

238

2

СУиВТ

239

3

ТАМ

145

4

Экономики

056

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

Формируются два индекса: первый – для ключа название – аналогичен предыдущему примеру:

название

ссылки

СУиВТ

2

Экономики

4

Второй индекс имеет вид:

шифр в вузе

ссылки

056

4

145

3

238

1

239

2

Видно из второй таблицы, что значения ключа шифр в вузе упорядочены по возрастанию. Это позволяет данный индекс рассматривать как упорядоченный последовательный файл и применять к нему рассмотренные методы доступа в разделе «Последовательная организация».

3.4.1.4. Рандомизация

Этот метод доступа имеет несколько названий: перемешивание, рандомизация, хэширование. Общая схема представлена на рисунке.

Область размещения записей файла

 

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

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

Алгоритм рандомизации состоит из следующих шагов:

  1.  этот шаг выполняется только для нечисловых значений ключа и состоит в их преобразовании в числовые значения. Для этого каждому символу алфавита, который используется для записи значения ключа, приписывается десятичная цифра от 0 до 9 и ключ переписывается. Например, пусть значения ключа формируются из букв русского алфавита. Припишем им десятичные цифры:

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

0  1  2  3  4  5  6  7  8  9  0  1   2  3   4  5  6  7  8   9  0  1  2  3   4  5  6   7  8  9 0 1  2

Тогда, например, ключ Сидоров запишется как 8945752 (различие прописных и строчных букв игнорируется). Очевидно, такая замена может привести к тому, что разные нечисловые значения будут иметь одинаковые числовые замены. Это одна из причин потери информации при выполнении алгоритмов рандомизации;

  1.  порядок числового значения ключа приводится к порядку максимального номера бакета. Например, если максимальный номер бакета  - четырехзначное число, то числовой ключ 8945752, полученный в предыдущем шаге, должен быть преобразован в четырехзначное число. Для такого преобразования существуют разные способы. Некоторые из них показаны ниже (в предположении, что максимальный номер бакета – четырехзначное число):
  •  метод квадратов: значение ключа возводится в квадрат. В полученном числе выбирается средняя часть, состоящая из требуемого количества цифр. Например, для числа 8945752 такое преобразование будет иметь вид:

8945752    80026478845504    4788;

средняя часть числа,

состоящая из 4 цифр

  •  сдвиг разрядов: разряды ключа делятся на старшие и младшие и сдвигаются друг к другу так, чтобы число перекрывающихся разрядов соответствовало требуемому числу цифр. Совмещенные цифры складываются. Например, для числа 8945752 такое преобразование будет иметь вид:

8945752    894   (13)(16)92 4792;

  5752

старшие младшие совмещенные  результат окончательный

разряды разряды разряды  сложения      результат                                    совмещенных разрядов

  •  метод складывания: ключ делится на 3 части, средняя из которых по количеству цифр равна требуемому порядку. Первая и третья части налагаются на среднюю часть и совмещенные цифры складываются. Например, для числа 8945752 такое преобразование будет иметь вид:

8945752 9457   (17)47(12) 8473.

   8  25

средняя        результат    окончательный

часть          наложенные   сложения         результат

   части числа

Очевидно, рассмотренные методы могут дать одинаковые результаты для разных числовых значений ключа. Это вторая причина потери информации при рандомизации. Выбор того или иного метода из трех рассмотренных выполняется экспериментально: лучшим считается тот метод, при использовании которого бакеты заполняются записями относительно равномерно;

  1.  полученное на предыдущем шаге число умножается на константу С, которая рассчитывается как отношение максимального номера бакета Nmax к максимальному n-разрядному числу, где n – порядок максимального номера бакета. Это позволяет сформировать реальные номера бакетов. Например, пусть максимальный номер бакета – 7000 (это Nmax). Очевидно, n = 4. Тогда упомянутая константа С имеет значение:

С=7000/9999=0,7.

Рассчитаем реальный номер бакета для результата предыдущего шага, полученного методом складывания: 8473*0,7=5931.

3.4.1.5. Цепь подобных записей

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

Пусть основной файл имеет вид:

сотрудник

№ п/п

ФИО

ученая степень

научное звание

контактные данные

название (кафедры)

название

(должности)

1

Иванов И.И.

к.т.н.

доцент

234567

СУиВТ

доцент

2

Петров П.П.

к.т.н.

нет

456789

ТАМ

доцент

3

Сидоров С.С.

нет

нет

123456

СУиВТ

ассистент

4

Яковлев Я.Я.

д.т.н.

профессор

345678

ТАМ

профессор

     

Вторичными ключами являются ученая степень, научное звание, название (кафедры), название (должности). Построим индексы для этих ключей:

ученая степень

ссылки

научное звание

ссылки

название (кафедры)

ссылки

название (должности)

ссылки

д.т.н.

4

доцент

1

СУиВТ

1

ассистент

3

к.т.н.

1

нет

2

ТАМ

2

доцент

1

нет

3

профессор

4

профессор

4

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

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

сотрудник

№ п/п

ФИО

ученая степень

№ п/п

научное звание

№ п/п

контактные данные

название (кафедры)

№ п/п

название (должности)

№ п/п

1

Иванов И.И.

к.т.н.

2

доцент

-

234567

СУиВТ

3

доцент

2

2

Петров П.П.

к.т.н.

-

нет

3

456789

ТАМ

4

доцент

-

3

Сидоров С.С.

нет

-

нет

-

123456

СУиВТ

-

ассистент

-

4

Яковлев Я.Я.

д.т.н.

-

профессор

-

345678

ТАМ

-

профессор

-

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

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

  1.  по индексу для ключа название (должности) определяется запись со значением первого поля, равным ассистент (поскольку индекс – это упорядоченный файл, к нему применяются рассмотренные ранее методы, например, метод последовательного сканирования, анализ работы которых в данном случае не приводится). Это первая запись индекса;
  2.  по полю ссылки выясняется номер записи основного файла с искомым ключом доступа – это запись с номером 3;
  3.  в основном файле выбирается третья запись. Выводится фамилия и инициалы сотрудника – это Сидоров С.С.;
  4.   в соответствии со значением поля № п/п для поля название (должности) в основном файле определяется номер следующей записи основного файла с аналогичным значением вторичного ключа – поскольку данное поле не содержит ссылки, это означает, что цепочка записей закончилась, следовательно, список сотрудников сформирован; алгоритм заканчивает работу.

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

Например, основной список представлен таблицей:

сотрудник

№ п/п

ФИО

ученая степень

№ п/п

научное звание

№ п/п

контактные данные

название (кафедры)

№ п/п

название (должности)

№ п/п

1

Иванов И.И.

к.т.н.

2

доцент

-

234567

СУиВТ

3

доцент

2

2

Петров П.П.

к.т.н.

-

нет

3

456789

ТАМ

4

доцент

-

3

Сидоров С.С.

нет

-

нет

-

123456

СУиВТ

-

ассистент

-

4

Яковлев Я.Я.

д.т.н.

-

профессор

-

345678

ТАМ

-

профессор

-

        

Индексы модифицированы и показаны в таблицах (дополнительные поля показаны заливкой):

ученая степень

ссылки

длина цепочки

научное звание

ссылки

длина цепочки

название (кафедры)

ссылки

длина цепочки

название (должности)

ссылки

длина цепочки

д.т.н.

4

1

доцент

1

1

СУиВТ

1

2

ассистент

3

1

к.т.н.

1

2

нет

2

2

ТАМ

2

2

доцент

1

2

нет

3

1

профессор

4

1

профессор

4

1

Значения полей длина цепочки – это количество записей основного файла с соответствующим значением вторичного ключа.

Пусть надо определить, какие сотрудники работают в должности доцентов и не имеют ученой степени. Очевидно,  Кдоступ=<название (должности)=доцент, ученая степень=нет). Задача решается следующим образом:

  1.  в индексах для вторичных ключей название (должности) и ученая степень ищутся записи со значениями полей доцент и нет: это, соответственно, записи с номерами 2 и 3;
  2.  анализируется, для какого индекса поле длина цепочки имеет минимальное значение: очевидно, длина цепочки для ключа со значением нет короче, чем для ключа со значением доцент, поэтому для поиска в основном файле определяется ключ ученая степень со значением нет;
  3.  в соответствии со значением поля ссылки выбранного ключа осуществляется обращение к элементу с номером 3 основного файла;
  4.  у выбранного элемента анализируется поле название (должности): его значение равно ассистент: данная запись не удовлетворяет условиям поиска, а потому никакого вывода данных пользователю не происходит;
  5.  в соответствии со значением поля ссылки для поля ученая степень определяется номер следующей записи основного файла с аналогичным значением вторичного ключа. Поскольку это поле не содержит ссылки, это означает, что цепочка записей закончилась, следовательно, список сотрудников сформирован (он пуст); алгоритм заканчивает работу.

3.4.1.6. Инвертированные файлы

Основной файл не изменяется. Строятся индексы в нужном количестве. В индекс включаются все значения соответствующего вторичного ключа, а также все ссылки на записи основного файла с данным значением вторичного ключа.

Пусть основной файл показан в таблице:

сотрудник

№ п/п

ФИО

ученая степень

научное звание

контактные данные

название (кафедры)

название (должности)

1

Иванов И.И.

к.т.н.

доцент

234567

СУиВТ

доцент

2

Петров П.П.

к.т.н.

нет

456789

ТАМ

доцент

3

Сидоров С.С.

нет

нет

123456

СУиВТ

ассистент

4

Яковлев Я.Я.

д.т.н.

профессор

345678

ТАМ

профессор

Соответствующие индексы показаны в таблицах:

ученая степень

ссылки

научное звание

ссылки

название (кафедры)

ссылки

название (должности)

ссылки

д.т.н.

4

доцент

1

СУиВТ

1, 3

ассистент

3

к.т.н.

1, 2

нет

2, 3

ТАМ

2, 4

доцент

1, 2

нет

3

профессор

4

профессор

4

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

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

Пусть надо определить список всех сотрудников, работающих в должности доцента, Кдоступ=<название (должности)=доцент>. Поиск осуществляется последовательным выполнением шагов:

  1.  по индексу для ключа название (должности) находится соответствующий элемент: это вторая запись в файле;
  2.  выбираются ссылки для этой записи: это множество {1, 2};
  3.  по основному файлу выбираются последовательно записи с номерами 1 и 2 и выводится содержимое поля ФИО для этих записей; получаем список - Иванов И.И. и Петров П.П. Работа алгоритма закончена.

3.4.2. Методы физического проектирования для иерархических моделей 

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

3.4.2.1. Множественные ссылки на порожденные записи

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

Рассмотрим данную организацию хранения элементов для дерева, описывающего состав кафедр некоторого факультета:

Этому абстрактному дереву соответствует следующая структура, показывающая конкретный состав кафедр вуза (верхний уровень описывает кафедры, нижний - сотрудников):

СУиВТ

239

ТАМ

145

Иванов И.И.

к.т.н.

доцент

234567

Петров П.П.

к.т.н.

нет

456789

Сидоров С.С.

нет

нет

123456

Яковлев Я.Я.

д.т.н.

профессор

345678

Поскольку в этом дереве есть два множества подобных элементов (кафедры и сотрудники), сформируем для них таблицы:

сотрудник    кафедра

№ п/п

ФИО

ученая степень

научное звание

контактные данные

№ п/п

название

шифр в вузе

1

Иванов И.И.

к.т.н.

доцент

234567

1

СУиВТ

239

2

Петров П.П.

к.т.н.

нет

456789

2

ТАМ

145

3

Сидоров С.С.

нет

нет

123456

4

Яковлев Я.Я.

д.т.н.

профессор

345678

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

название

шифр в вузе

ссылки

СУиВТ

239

1, 3

ТАМ

145

2, 4

В таком дереве «хорошо» решаются задачи поиска записей в направлении от корня к терминальным вершинам.

Пусть надо сформировать список сотрудников кафедры СУиВТ (эта задача подобна задаче поиска по вторичному ключу для линейных списков), т.е. Кдоступ = <название (кафедры) = СУиВТ>. Задача решается следующим образом:

  1.  по таблице (файлу) кафедра находят требуемую кафедру (для решения этой задачи применимы методы поиска, рассмотренные ранее для последовательной организации данных) – это строка (запись) с номером 1;
  2.  выбирают ссылки – это множество {1, 3};
  3.  по таблице (файлу) сотрудник обращаются к строкам (записям) с номерами 1 и 3. Получают список сотрудников: Иванов И.И., Сидоров С.С. Алгоритм заканчивает работу.

3.4.2.2. Ссылки на подобные и порожденные записи

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

Рассмотрим данную организацию хранения элементов для дерева:

СУиВТ

239

ТАМ

145

Иванов И.И.

к.т.н.

доцент

234567

Петров П.П.

к.т.н.

нет

456789

Сидоров С.С.

нет

нет

123456

Яковлев Я.Я.

д.т.н.

профессор

345678

Для уровня кафедр устанавливаются только ссылки на порожденные записи. Для уровня сотрудников поддерживается ссылка на подобные элементы, с помощью которой показывается «цепочка» сотрудников, работающих на одной кафедре:


сотрудник         кафедра

№ п/п

ФИО

ученая степень

научное звание

контактные данные

ссылки

№ п/п

название

шифр в вузе

ссылки

1

Иванов И.И.

к.т.н.

доцент

234567

3

1

СУиВТ

239

1

2

Петров П.П.

к.т.н.

нет

456789

4

2

ТАМ

145

2

3

Сидоров С.С.

нет

нет

123456

-

4

Яковлев Я.Я.

д.т.н.

профессор

345678

-

Преимущество этого метода организации хранения иерархических моделей состоит в однотипности списков ссылок: они всегда содержат по одной ссылке (пустой, если цепочка закончена или нет порожденных записей).

Пусть надо сформировать список сотрудников кафедры СУиВТ, т.е. Кдоступ = <название (кафедры) = СУиВТ>. Задача решается следующим образом:

  1.  по таблице (файлу) кафедра находят требуемую кафедру – это запись с номером 1;
  2.  выбирают значение поля ссылки – это 1;
  3.  по таблице (файлу) сотрудник обращаются к строке (записи) с номером 1 и выводят значение поля ФИО – это Иванов И.И.;
  4.  анализируют поле ссылки: оно содержит 3: это значит, что под номером 3 в этой таблице (файле) имеются данные о сотруднике, также работающем на данной кафедре;
  5.  обращаются к строке (записи) с номером 3 и выводят значение поля ФИО – это Сидоров С.С.,
  6.  поскольку в поле ссылки записи 3 находится символ «-», алгоритм заканчивает работу.

3.4.2.3. Кольцевые структуры

В отличие от предыдущих методов позволяют от порожденных записей переходить к родительским. Для этого в структуре записей поддерживаются специальные ссылки на «родителей».

Представим данным методом дерево:

СУиВТ

239

ТАМ

145

Иванов И.И.

к.т.н.

доцент

234567

Петров П.П.

к.т.н.

нет

456789

Сидоров С.С.

нет

нет

123456

Яковлев Я.Я.

д.т.н.

профессор

345678

Его описание сведем в таблицы:


сотрудник        кафедра

№ п/п

ФИО

ученая степень

научное звание

контактные данные

ссылки на подобные элементы

ссылки на родительские элементы

№ п/п

название

шифр в вузе

ссылки на порожденные элементы

1

Иванов И.И.

к.т.н.

доцент

234567

3

1

1

СУиВТ

239

1

2

Петров П.П.

к.т.н.

нет

456789

4

2

2

ТАМ

145

2

3

Сидоров С.С.

нет

нет

123456

1

1

4

Яковлев Я.Я.

д.т.н.

профессор

345678

4

2

Как видно, в таблице сотрудников отсутствуют пустые ссылки. Это означает, что конечные записи в цепочках подобных записей ссылаются на первые записи в этих цепочках. Так получаются «горизонтальные» кольца. Наличие таких колец позволяет решать задачи, требующие многократного просмотра записей от начала к концу. Подобная задача, например, имеет место при сортировке файла некоторыми методами. Например, когда требуется отсортировать список сотрудников кафедры СУиВТ по возрастанию значений ключа, а кафедры ТАМ – по убыванию. В то же время совокупность ссылок на порожденные и родительские записи формирует «вертикальные» кольца. Они позволяют переходить от порожденных записей к родительским, чего не было в предыдущих методах.

Задачи поиска требуемых данных в направлении просмотра дерева «сверху вниз» решаются аналогично предыдущим методам и здесь не рассматриваются.

Рассмотрим, как решается противоположная задача просмотра дерева в направлении «снизу вверх», например, когда надо определить, на какой кафедре работает некоторый сотрудник.

Пусть надо определить, на какой кафедре работает сотрудник по фамилии и инициалам Сидоров С.С., т.е. Кдоступ=<ФИО=Сидоров С.С.>. Задача решается следующим образом:

  1.  по таблице (файлу) сотрудник находят требуемого сотрудника – это запись с номером 3;
  2.  выбирают значение поля ссылки на родительские элементы – это 1;
  3.  по таблице (файлу) кафедра обращаются к строке (записи) с номером 1 и выводят значение поля название – это СУиВТ. Алгоритм заканчивает работу.

3.4.2.4. Справочники

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

Пусть исходное дерево имеет вид:


СУиВТ

239

ТАМ

145

Иванов И.И.

к.т.н.

доцент

234567

Петров П.П.

к.т.н.

нет

456789

Сидоров С.С.

нет

нет

123456

Яковлев Я.Я.

д.т.н.

профессор

345678

Описание сотрудников и кафедр располагается в таблицах:

    сотрудник           кафедра

№ п/п

ФИО

ученая степень

научное звание

контактные данные

№ п/п

название

шифр в вузе

1

Иванов И.И.

к.т.н.

доцент

234567

1

СУиВТ

239

2

Петров П.П.

к.т.н.

нет

456789

2

ТАМ

145

3

Сидоров С.С.

нет

нет

123456

4

Яковлев Я.Я.

д.т.н.

профессор

345678

Сформируем для дерева справочник - это файл, в котором в качестве полей, идентифицирующих записи основных файлов, выступают соответствующие первичные ключи (поле элемент дерева):

№ п/п

элемент дерева

ссылки на родительскую запись6

ссылки на порожденную запись7

1

СУиВТ

-

3, 5

2

ТАМ

-

4, 6

3

Иванов И.И.

1

-

4

Петров П.П.

2

-

5

Сидоров С.С.

1

-

6

Яковлев Я.Я.

2

-

Пусть надо определить, каков шифр кафедры, на которой работает сотрудник по фамилии и инициалам Сидоров С.С., т.е. Кдоступ=<ФИО=Сидоров С.С.>. Задача решается следующим образом:

  1.  по справочнику находят требуемого сотрудника – это запись с номером 5;
  2.  выбирают значение поля ссылки на родительскую запись – это 1;
  3.  обращаются к строке (записи) с номером 1 и определяют значение поля элемент дерева – это СУиВТ;
  4.  по таблице (файлу) кафедра ищется строка (запись) с ключом СУиВТ – это запись с номером 1;
  5.  выводится значение поля шифр в вузе – это 239. Алгоритм заканчивает работу.

Пусть надо определить контактные данные сотрудников кафедры СУиВТ, т.е. Кдоступ = <название (кафедры)=СУиВТ>. Задача решается следующим образом:

  1.  по справочнику находят требуемую кафедру – это запись с номером 1;
  2.  выбирают значение поля ссылки на порожденную запись – это {3,5};
  3.  обращаются к строке (записи) с номером 3 и определяют значение поля элемент дерева – это Иванов И.И.;
  4.  по таблице (файлу) сотрудник ищется строка (запись) с ключом Иванов И.И. – это запись с номером 1;
  5.  выводится значение поля контактные данные – это 234567;
  6.  обращаются к строке (записи) с номером 5 справочника и определяют значение поля элемент дерева – это Сидоров С.С.;
  7.  по таблице (файлу) сотрудник ищется строка (запись) с ключом Сидоров С.С. – это запись с номером 3;
  8.  выводится значение поля контактные данные – это 123456. Алгоритм заканчивает работу.

3.4.2.5. Битовые отображения

Структура дерева представляется бинарной матрицей. Вначале формируются обозначения строк и столбцов матрицы следующим образом:

  1.  выписываются ключевые поля элементов максимального уровня иерархии дерева в качестве обозначений строк;
  2.  выписываются обозначения столбцов, начиная с первого столбца, - им соответствуют ключевые поля элементов предыдущего уровня иерархии дерева;
  3.  процесс выписывания обозначений строк и столбцов продолжается, чередуясь, пока ни будут выбраны все уровни иерархии дерева.

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

Пусть дерево имеет вид:

СУиВТ

239

ТАМ

145

Иванов И.И.

к.т.н.

доцент

234567

Петров П.П.

к.т.н.

нет

456789

Сидоров С.С.

нет

нет

123456

Яковлев Я.Я.

д.т.н.

профессор

345678

Описание сотрудников и кафедр располагается в таблицах:

    сотрудник           кафедра

№ п/п

ФИО

ученая степень

научное звание

контактные данные

№ п/п

название

шифр в вузе

1

Иванов И.И.

к.т.н.

доцент

234567

1

СУиВТ

239

2

Петров П.П.

к.т.н.

нет

456789

2

ТАМ

145

3

Сидоров С.С.

нет

нет

123456

4

Яковлев Я.Я.

д.т.н.

профессор

345678

Связи между вершинами дерева фиксируются в битовой матрице:


Обозначения строк

Обозначения столбцов

СУиВТ

ТАМ

Иванов И.И.

1

0

Петров П.П.

0

1

Сидоров С.С.

1

0

Яковлев Я.Я.

0

1

 

Данная матрица является логической моделью связей между элементами дерева, которой соответствует следующая физическая модель в виде файла:

№ п/п

ФИО

название

1

Иванов И.И.

СУиВТ

2

Петров П.П.

ТАМ

3

Сидоров С.С.

СУиВТ

4

Яковлев Я.Я.

ТАМ

Пусть надо определить, каков шифр кафедры, на которой работает сотрудник по фамилии и инициалам Сидоров С.С., т.е. Кдоступ=<ФИО=Сидоров С.С.>. Задача решается следующим образом:

  1.  по физической модели битовой матрицы находят требуемого сотрудника – это запись с номером 3;
  2.  выбирают значение поля название – это СУиВТ;
  3.  по таблице (файлу) кафедра ищется строка (запись) с ключом СУиВТ – это запись с номером 1;
  4.  выводится значение поля шифр в вузе – это 239. Алгоритм заканчивает работу.

Пусть надо определить контактные данные сотрудников кафедры СУиВТ, т.е. Кдоступ=<название (кафедры)=СУиВТ>. Задача решается следующим образом:

  1.  по физической модели битовой матрицы путем последовательного сканирования находят первую запись с требуемой кафедрой – это запись с номером 1;
  2.  выбирают значение поля ФИО – это Иванов И.И.;
  3.  по таблице (файлу) сотрудник ищется запись с первичным ключом Иванов И.И. – это запись с номером 1 – выводится значение поля контактные данные – 234567;
  4.  по физической модели битовой матрицы путем последовательного сканирования находят следующую запись с требуемой кафедрой – это запись с номером 3;
  5.  выбирают значение поля ФИО – это Сидоров С.С.;
  6.  по таблице (файлу) сотрудник ищется запись с первичным ключом Сидоров С.С. – это запись с номером 3 – выводится значение поля контактные данные – 123456;
  7.  делается попытка по физической модели битовой матрицы путем последовательного сканирования найти следующую запись с требуемой кафедрой, файл заканчивается. Алгоритм заканчивает работу.

3.4.3. Методы физического проектирования для сетевых моделей 

Для организации хранения сетей и доступа к их элементам используют методы: множественные ссылки на порожденные записи; ссылки на порожденные и подобные записи; кольцевые структуры; справочники; битовые отображения. Следует отметить, что рассматриваемые далее способы аналогичны тем, которые приводились ранее для деревьев.

3.4.3.1. Множественные ссылки на порожденные записи

Пусть исходная сеть имеет вид:

Этой абстрактной сети соответствует конкретизированная данными структура:

СУиВТ

239

ТАМ

145

Иванов И.И.

к.т.н.

доцент

234567

Петров П.П.

к.т.н.

нет

456789

Сидоров С.С.

нет

нет

123456

Яковлев Я.Я.

д.т.н.

профессор

345678

ассистент

высшее

доцент

высшее

профессор

высшее

Здесь два дерева: кафедра – сотрудник и должность – сотрудник. Они «сцеплены» своими терминальными вершинами – сотрудниками, которые являются вершинами максимального уровня иерархии для обоих деревьев.

Описание этой сети задано в таблицах (формируются по аналогии с деревьями):

сотрудник     

№ п/п

ФИО

ученая степень

научное звание

контактные данные

1

Иванов И.И.

к.т.н.

доцент

234567

2

Петров П.П.

к.т.н.

нет

456789

3

Сидоров С.С.

нет

нет

123456

4

Яковлев Я.Я.

д.т.н.

профессор

345678


кафедра     должность

№ п/п

название

шифр в вузе

ссылки

№ п/п

название

образование

ссылки

1

СУиВТ

239

1, 3

1

ассистент

высшее

3

2

ТАМ

145

2, 4

2

доцент

высшее

1, 2

3

профессор

высшее

4

Выполнение поисковых задач осуществляется аналогично иерархическим структурам. Однако некоторые задачи могут быть оптимизированы.

Пусть, например, надо определить сотрудников, работающих в должности доцента на кафедре СУиВТ, т.е. Кдоступ=<название (кафедры)=СУиВТ&должность=доцент>. Задача решается следующим образом:

  1.  по таблице (файлу) кафедра находим строку (запись) со значением ключевого поля СУиВТ – это запись 1. Ее поле ссылки дает множество {1,3};
    1.  по таблице (файлу) должность находим строку (запись) со значением ключевого поля доцент – это запись 2. Ее поле ссылки дает множество {1,2};
      1.  применяем операцию пересечения двух множеств: {1,3}{1,2}={1};
      2.  по таблице (файлу) сотрудник считываем запись с номером 1 – это Иванов И.И. Алгоритм заканчивает работу.

3.4.3.2. Ссылки на подобные и порожденные записи

Пусть сеть имеет вид:

СУиВТ

239

ТАМ

145

Иванов И.И.

к.т.н.

доцент

234567

Петров П.П.

к.т.н.

нет

456789

Сидоров С.С.

нет

нет

123456

Яковлев Я.Я.

д.т.н.

профессор

345678

ассистент

высшее

доцент

высшее

профессор

высшее

Тогда ее описание задано в таблицах (формируются по аналогии с деревьями):

        сотрудник

№ п/п

ФИО

ученая степень

научное звание

контактные данные

ссылки  для цепи кафедр

ссылки для цепи должностей

1

Иванов И.И.

к.т.н.

доцент

234567

3

2

2

Петров П.П.

к.т.н.

нет

456789

4

-

3

Сидоров С.С.

нет

нет

123456

-

-

4

Яковлев Я.Я.

д.т.н.

профессор

345678

-

-

кафедра      должность

№ п/п

название

шифр в вузе

ссылки

№ п/п

название

образование

ссылки

1

СУиВТ

239

1

1

ассистент

высшее

3

2

ТАМ

145

2

2

доцент

высшее

1

3

профессор

высшее

4

Выполнение поисковых задач осуществляется аналогично иерархическим структурам.

3.4.3.3. Кольцевые структуры

Пусть сеть имеет вид:

СУиВТ

239

ТАМ

145

Иванов И.И.

к.т.н.

доцент

234567

Петров П.П.

к.т.н.

нет

456789

Сидоров С.С.

нет

нет

123456

Яковлев Я.Я.

д.т.н.

профессор

345678

ассистент

высшее

доцент

высшее

профессор

высшее

Описание элементов сети задано в таблицах (формируются по аналогии с деревьями):

сотрудник

№ п/п

ФИО

ученая степень

научное звание

контактные данные

ссылки   для цепи кафедр

ссылки для цепи должностей

на подобные элементы

на родительские элементы

на подобные элементы

на родительские элементы

1

Иванов И.И.

к.т.н.

доцент

234567

3

1

2

2

2

Петров П.П.

к.т.н.

нет

456789

4

2

1

2

3

Сидоров С.С.

нет

нет

123456

1

1

3

1

4

Яковлев Я.Я.

д.т.н.

профессор

345678

2

2

4

4

   

кафедра      должность

№ п/п

название

шифр в вузе

ссылки

№ п/п

название

образование

ссылки

1

СУиВТ

239

1

1

ассистент

высшее

3

2

ТАМ

145

2

2

доцент

высшее

1

3

профессор

высшее

4

Выполнение поисковых задач осуществляется аналогично иерархическим структурам.

3.4.3.5. Справочники

Пусть сеть имеет вид:

СУиВТ

239

ТАМ

145

Иванов И.И.

к.т.н.

доцент

234567

Петров П.П.

к.т.н.

нет

456789

Сидоров С.С.

нет

нет

123456

Яковлев Я.Я.

д.т.н.

профессор

345678

ассистент

высшее

доцент

высшее

профессор

высшее

Описание элементов сети задано в таблицах:

сотрудник           кафедра            должность

№ п/п

ФИО

ученая степень

научное звание

контактные данные

№ п/п

название

шифр в вузе

№ п/п

название

образование

1

Иванов И.И.

к.т.н.

доцент

234567

1

СУиВТ

239

1

ассистент

высшее

2

Петров П.П.

к.т.н.

нет

456789

2

ТАМ

145

2

доцент

высшее

3

Сидоров С.С.

нет

нет

123456

3

профессор

высшее

4

Яковлев Я.Я.

д.т.н.

профессор

345678

  

Описание связей между элементами сети задано таблицей  - справочником (формируется аналогично иерархическим структурам с учетом того, что сеть из примера представлена двумя деревьями):

№ п/п

элемент сети

ссылки на родительскую запись

ссылки на порожденную запись

1

СУиВТ

-

6, 8

2

ТАМ

-

7, 9

3

ассистент

-

8

4

доцент

-

6, 7

5

профессор

-

9

6

Иванов И.И.

1

-

7

Петров П.П.

2

-

8

Сидоров С.С.

1

-

9

Яковлев Я.Я.

2

-

Выполнение поисковых задач осуществляется аналогично иерархическим структурам.

3.4.3.6. Битовые отображения

Пусть исходная сеть соответствует последнему примеру. Описание элементов сети задано в таблицах:

сотрудник          кафедра                       должность

№ п/п

ФИО

ученая степень

научное звание

контактные данные

№ п/п

название

шифр в вузе

№ п/п

название

образование

1

Иванов И.И.

к.т.н.

доцент

234567

1

СУиВТ

239

1

ассистент

высшее

2

Петров П.П.

к.т.н.

нет

456789

2

ТАМ

145

2

доцент

высшее

3

Сидоров С.С.

нет

нет

123456

3

профессор

высшее

4

Яковлев Я.Я.

д.т.н.

профессор

345678

Связи между элементами сети показаны в таблице – битовой матрице (формируется аналогично иерархическим структурам):

Обозначение строк

Обозначение столбцов

СУиВТ

ТАМ

ассистент

доцент

профессор

Иванов И.И.

1

0

0

1

0

Петров П.П.

0

1

0

1

0

Сидоров С.С.

1

0

1

0

0

Яковлев Я.Я.

0

1

0

0

1

Данная матрица является логической моделью связей между элементами сети, которой соответствует следующая физическая модель в виде файла:

№ п/п

ФИО

название (кафедры)

название (должности)

1

Иванов И.И.

СУиВТ

доцент

2

Петров П.П.

ТАМ

доцент

3

Сидоров С.С.

СУиВТ

ассистент

4

Яковлев Я.Я.

ТАМ

профессор

Выполнение поисковых задач осуществляется аналогично иерархическим структурам.


Глава 4. Документальные информационные системы

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

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

При организации хранения неструктурированных данных решаются две основные задачи:

  1.  минимизация времени доступа к данным. Это приводит к дополнительным построениям при размещении данных, что требует затрат времени и памяти компьютера;
  2.  уменьшение «шума» отклика ИС, т.е. нахождение данных, наиболее релевантных запросу.

4.1. Методы организации хранения неструктурированных данных

Различают следующие методы хранения неструктурированных данных, организованных в виде файлов:

  1.  последовательные файлы,
  2.  цепочечные файлы,
  3.  инвертированные файлы,
  4.  кластерные файлы.

Совокупность файлов, содержащих текстовые данные, составляет полнотекстовую базу данных – ТБД, т.е. информационные массивы ИС.

4.1.1. Последовательные файлы

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

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

Пусть, например, имеются тексты, которые хранятся в файлах с именами, соответственно, Ф1, Ф2, Ф3, Ф4, содержащие некоторые ключи Кi (на рисунке схематично показаны текстовые файлы, где в тексте среди слов содержатся ключевые слова):

Рассмотрим решение задачи поиска релевантного текста.

Пусть запрос содержит ключевое слово К1, например, компьютер. Тогда алгоритм поиска имеет вид:

  1.  из группы файлов выбирается первый файл Ф1 и соответствующий текст сканируется от начала – ищется совпадение слов текста с заданным ключевым словом;. Поскольку совпадение установлено, сканирование данного файла прекращается, пользователю выдается первый релевантный текст из файла Ф1;
  2.  из группы выбирается файл Ф2 и выполняется его сканирование от начала до конца. Совпадений нет, выполняется переход к анализу файла Ф3;
  3.  из группы файлов выбирается файл Ф3 и соответствующий текст сканируется. Выявляется совпадение, сканирование файла прекращается, и он выдается пользователю как второй релевантный текст. Выполняется переход к анализу файла Ф4;
  4.  из группы выбирается файл Ф4 и выполняется его сканирование от начала до конца. Совпадений нет, делается попытка перехода к анализу следующего файла, а поскольку все файлы просмотрены, алгоритм заканчивает работу.

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

4.1.2. Цепочечные файлы

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

Пусть ТБД содержит те же файлы, что и в предыдущем примере. Индекс – это структурированный файл вида:

Ключевое слово

Ссылка

К1

Ф1

К2

Ф2

К3

Ф1

К4

Ф4

Кроме того, претерпевают изменения и сами файлы Ф1 – Ф4: они содержат описания цепочек подобных файлов, размещенные, например, в конце самих текстов (показаны заливкой):

Из рисунка видно, что структура этих описаний соответствует структуре самого индекса: первое поле – это ключевое слово, а второе – ссылка на файл, следующий в цепочке подобных текстов.

Рассмотрим, как решается задача поиска релевантного текста при такой организации.

Пусть запрос по-прежнему содержит ключевое слово К1. Тогда алгоритм просмотра имеет вид:

  1.  по индексу определяется элемент со значением ключевого слова К1;
  2.  по полю ссылки находится имя файла, первого в цепочке файлов, содержащих данное слово – это Ф1; выводится содержимое данного файла;
  3.  по полю ссылки для ключевого слова К1 файла Ф1 определяется имя файла, следующего в цепочке ключевого слова К1, – это Ф3;
  4.  выводится содержимое файла Ф3;
  5.  по полю ссылки для ключевого слова файла Ф3 определяется имя файла, следующего в цепочке ключевого слова К1. Поскольку ссылка пуста, цепочка закончена, и алгоритм прекращает работу.

4.1.3. Инвертированные файлы

Этот способ организации текстовых файлов является развитием предыдущего: в справочник включаются все адресные ссылки, соответствующие тому или иному ключевому слову. Одновременно адресные ссылки исключаются из самих текстовых файлов. Тогда ТБД из предыдущего раздела при данной организации хранения будет иметь в составе следующие составляющие:

  1.  текстовые файлы Ф1, Ф2, Ф3, Ф4 вида:


  1.  индекс вида:

Ключевое слово

Ссылки

К1

Ф2, Ф3

К2

Ф2

К3

Ф1, Ф2

К4

Ф4

Как видно, поле Ссылки индекса содержит список ссылок на все файлы, содержащие то или иное ключевое слово.

Рассмотрим решение задачи поиска релевантного текста.

Пусть запрос содержит ключевое слово К1. Тогда алгоритм просмотра имеет вид:

  1.  по индексу определяется строка, содержащая данное ключевое слово; по полю Ссылки выбираются имена файлов ТБД, которые характеризуются данным ключевым словом, – это файлы с именами Ф2 и Ф3;
  2.  средствами файловой системы выполняется поиск и вывод текстов файлов пользователю. Алгоритм заканчивает работу.

Рассмотренный метод позволяет легко решать задачи поиска по сложным запросам.

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

для К1 – {Ф1, Ф3};

для К3 – {Ф1, Ф2}.

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

К1К3 {Ф1, Ф3}{Ф1, Ф2} = {Ф1, Ф2, Ф3}.

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

для К1 – {Ф1, Ф3};

для К3 – {Ф1, Ф2}.

Тогда множество файлов, удовлетворяющих запросу в целом, соответствует пересечению полученных множеств:

К1К3 {Ф1, Ф3}{Ф1, Ф2} = {Ф1}.

4.1.4. Кластерные файлы

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

Пусть ТБД содержит файлы Ф1 – Ф4, которые входят в состав двух кластеров С1 и С2 следующим образом: С1 = {Ф2, Ф4}, С2 = {Ф1, Ф2, Ф3}. Профили П1 и П2 кластеров С1 и С2, соответственно, имеют в составе ключевые слова: П1 = {К2, К4}, П2 = {К1, К3}. Файлы внутри кластеров имеют последовательную организацию.

Тогда ТБД имеет в составе следующие компоненты:

  1.  описание кластеров в виде индекса, где в графе Ссылка заданы адреса кластеров (т.е. имена папок), а в графу Ключевое слово включен список ключевых слов, формирующих профили кластеров;

Ключевое слово

Ссылка

К1

С2

К2

С1

К3

С2

К4

С1

  1.  текстовые файлы Ф1 – Ф4, распределенные по кластерам С1 и С2:

Рассмотрим решение задачи поиска релевантного текста.

Пусть запрос содержит ключевое слово К1. Тогда алгоритм просмотра:

  1.  по индексу находится элемент с заданным ключом;
  2.  по полю Ссылка определяется нахождение кластера, содержащего требуемый текст, – это кластер С2;
  3.  в кластере С2 ищется текст (тексты) с нужным ключевым словом. При этом применяются методы поиска, рассмотренные ранее для последовательной организации. Такими текстами являются тексты в файлах Ф1 и Ф3.

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

4.2. Методы индексирования

Как видно из описаний методов организации ТБД, в них активно используются ключевые слова. Задача выделения в том или ином тексте ключевых слов имеет самостоятельное значение и рассматривается в данном разделе.

Выделение ключевых слов в тексте называется его индексированием. Эта процедура сводится к последовательным действиям:

  1.  выделение из текста всех слов на основании различных разделителей (пробелов, знаков препинания и т.д.). При этом в состав выделенных слов попадают такие, которые не отвечают смыслу ключевого слова, например, союзы, предлоги, числительные и другие служебные слова;
  2.  удаление из полученного списка упомянутых служебных слов. Они известны для каждого естественного языка и заранее включаются в так называемые стоп-словари;
  3.  нормализация оставшихся слов, которая состоит в приведении существительных и прилагательных в единственное число, именительный падеж, глагола – в неопределенную форму, причастий и деепричастий – в неопределенную форму глагола и т.д. Кроме того, средствами морфологического анализа слова возможно выделение его основы и использование ее в качестве ключевого слова. Для этого используются обширные лингвистические данные, и вся эта задача в целом носит прикладной лингвистический характер, а потому в данном пособии не рассматривается. В результате получается список ключевых слов (или их основ), подобный тому, что был использован в приведенных ранее примерах (внимательный читатель заметил, что ключевые слова из справочников отличались местами от тех, которые встречались в исходных текстах);
  4.  для придания бóльшей значимости выделенным словам присваиваются весовые коэффициенты (веса), которые позволяют числовым образом оценить, насколько хорошо данное слово отражает смысл текста в целом. На практике, как правило, применяются не просто списки ключевых слов, как это было сделано в предыдущих примерах, а списки взвешенных ключевых слов. Методы назначения весов могут быть статистическими, позиционными и динамическими и рассматриваются далее.

Таким образом, приведенные ранее примеры упрощали представление индексов, а также  процедуры просмотра и добавления новых текстов в ТБД: на самом деле они включают и используют веса ключевых слов.

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

4.2.1. Позиционные методы назначения весов

На значение веса термина влияют следующие факторы:

  1.  более значимыми являются термины, входящие в заглавие всего текста или его разделов, в начальные абзацы и т.д.;
  2.  повышаются веса терминов, входящих в толковые словари по некоторой предметной области, значимой или совпадающей с предметной областью.

К сожалению, в литературе отсутствуют публикации аналитических зависимостей веса термина и его позиции в тексте. Решение данной задачи выполняется эвристическими методами на усмотрение разработчиков соответствующего программного обеспечения.

4.2.2. Статистические методы назначения весов

Используют частотные параметры терминов tk в тексте Di, которые характеризуют частоту встречаемости того или иного слова в том или ином тексте. Эти параметры называют частотами и обозначают fik, где i – обозначение текста, k – обозначение термина. Следует иметь в виду, что методы используют абсолютную частоту терминов, т.е. число их появлений. Данные методы включают частотные модели; модель, учитывающую различительную силу термина, и ее модификацию; модель, использующую динамическую оценку информативности.

4.2.2.1. Частотные модели

В применение частоты для оценки значимости термина вкладывают следующий смысл: чем чаще используется тот или иной термин, тем теснее он связан с семантикой текста. Этот тезис побуждает связать вес wik термина tk в тексте Di напрямую с частотой, т.е. wik = fik. Однако этого делать нельзя по двум причинам:

  1.  бóльшей частотой могут обладать служебные слова типа предлогов, союзов и т.п., которые не связаны с выражением семантики текста;
    1.  минимальной частотой могут характеризоваться «узкие» термины, которые хорошо отражают семантику текста.

По этим соображениям формула для расчета веса термина приобретает вид:

wik = fik* К,

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

Так, модель, использующую текстовую частоту термина, определяет К:

К = IDFk,

где IDFk (Inverse Document Frequency) – обратная частота tk в наборе из n текстов:

IDFk = ,     

Dk – текстовая частота - число текстов набора из n, в которых есть tk.

Модель, учитывающая соотношение «сигнал-шум», рассчитывает К как:

,         

где Nk – шум термина tk в наборе из n текстов:

,             

- суммарная частота термина tk в наборе из n текстов,

Sk - сигнал термина tk в наборе из n текстов:

.     

Модель, учитывающая распределение частоты термина, определяет К по формуле:

,    

где  - средняя частота термина tk в наборе из n текстов:

,      

(Vk)2 -  среднеквадратическое уклонение термина tk:

.  

4.2.2.2. Модель, учитывающая различительную силу термина

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

Введем некоторые понятия:

  •  вектор Vi текста Di: Vi = {(tk, fik)} или Vi = {(tk, wik)};
  •  коэффициент подобия S(Di, Dj) текстов Di и Dj:

где T = |{tk}| - число индексационных терминов.

Коэффициент подобия принимает значения от 0 до 1: при 0 тексты различны, при 1 – полностью идентичны (по смыслу).

В данной модели К = DVk

где  - различительная сила (Difference Volume) термина tk:

,       

- среднее значение коэффициента попарного подобия текстов данного набора в присутствии термина tk:

,  

- то же в отсутствие термина tk.

Недостатком данной модели является то, что для вычисления средних попарных подобий текстов из набора n текстов требуется n2 операций. Модификация этого метода использует понятие пространства текстов и его характеристик - профиля и плотности пространства текстов.

Пространство текстов – множество текстов, каждый из которых характеризуется вектором. Профиль П пространства из n текстов – это виртуальный текст, вектор которого VП определяется как:

VП = {(tПk, fПk)},

где {tпk} = , т.е.множество {tпk} индексационных терминов есть объединение индексационных терминов текстов набора,

, т.е. частоты терминов есть усредненные частоты терминов по текстам набора.

Плотность Q пространства текстов:

,

где S(П,Di) – коэффициент подобия профиля и текста Di:

 

Чем больше Q, тем больше сходство между текстами набора.

С использованием плотности пространства Q можно по другому определить различительную силу DVk термина tk:

DVk = QkQ,            

где Qk – плотность пространства текстов, когда термин tk исключен из всех текстов набора n,

Q - плотность пространства текстов в присутствии термина tk.

4.2.3. Динамический метод назначения весов

Вес wik  термина tk в тексте Di определяется как:

wik = IVik,         

где IVik – информативность (Information Value) термина tk в тексте Di, принимает значения от 0 до 2.

Информативность того или иного термина определяется экспериментально, а первоначально всем терминам приписываются одинаковые значения информативности, например, равные 1 (точка             на рисунке).

Таким образом, начальными условиями для динамического назначения информативности для каждого tik являются: IVik = 1 и xik = 0. Тогда в случае полезности термина в процессе его использования его информативность увеличивается, а в случае бесполезности – уменьшается, причем указанные изменения имеют синусоидальный характер.


   IV      IV=1+sin(x)

    

       2

       1

       0   

          -/2      0       /2  x

 

Увеличение (+) или уменьшение (-) информативности выполняется по формуле

,      

где ,;

c – константа, имеющая смысл: число экспериментов для установления информативности термина.

Таким образом, в результате индексирования набора из n текстов (любым из рассмотренных методов) формируется справочник со структурой:

Термин tk

Текст Di

Ф1

Ф2

...

Фn

t1

w11

w21

wn1

t2

w12

w22

wn2

...

tT

w1T

w2T

wnT

Такие справочники характерны для инвертированных файлов.

4.3. Кластеризация текстов

Для организации хранения кластерных файлов требуется их разбиение на кластеры.

Методы кластеризации основаны на построении полной матрицы подобия текстов заданного пространства, в которой для каждой пары текстов Di, Dj приводится коэффициент подобия S(Di,Dj). Затем вводится некоторое пороговое значение коэффициента подобия Ŝ: если S(Di,Dj)> Ŝ, тексты Di, Dj включаются в кластер, иначе – не включаются.

4.4. Поиск релевантных текстов

Как отмечалось, наиболее употребляемыми на практике являются два способа – инвертированные и кластерные файлы. Рассмотрим, как решается задача поиска релевантных текстов в этих случаях.

4.4.1. Поиск в инвертированных файлах

Пусть есть пространство текстов размером n, каждый из которых характеризуется вектором Vi = {(tk; wki)}. Пусть запрос содержит множество ключевых слов (терминов): q = ({tkq}). Определим формально текст, релевантный запросу q, как такой текст ТБД, для которого коэффициент подобия с запросом отличен от нуля.

Для расчета коэффициента подобия запроса и текстов ТБД применяются вектора текстов и запроса. Определим вектор запроса Vq:

Vq = {(tkq; wkq)},          

где tkq – термин запроса;

wkq - вес этого термина.

Тексты Di характеризуются векторами Vi:

Vi = {(tk; wki)},         

где tk – термин вектора текста – индексационный термин;

wki  - вес этого термина:

Тогда при поиске релевантного текста (текстов) по запросу q рассчитываются коэффициенты подобия запроса и каждого из текстов  ТБД:

 

После определения релевантных текстов возможны два подхода:

  1.  тексты упорядочиваются по убыванию релевантности, т.е. коэффициента подобия запросу, и предоставляются пользователю в таком упорядоченном виде;
  2.  вводится пороговый коэффициент подобия Ŝ: пользователю выдаются только те тексты ТБД, для которых подобие с запросом превышает пороговое значение.

4.5.2. Поиск при кластерной организации хранения

Пусть пространство текстов разбито на множество кластеров {Cl}, каждый из которых есть своё подпространство размером nl текстов исходного пространства размером n текстов. При этом каждый кластер характеризуется профилем Пl и вектором Vl вида:

Vl = {(tlk, flk)},

где {tlk} = , т.е. множество {tlk} индексационных терминов есть объединение индексационных терминов текстов кластера Сl,

, т.е. частоты терминов есть усредненные частоты терминов по текстам кластера.

Рассчитываются коэффициенты подобия S(q, Cl) запроса и кластера, представленного своим вектором:

 

где wlk – вес термина tk в профиле кластера Cl;

Тl – число индексационных терминов в профиле кластера Сl.

После определения релевантного кластера (его подобие с запросом отлично от нуля) поиск релевантного текста (текстов) выполняется внутри кластера.

4.5. Методы расширенного поиска

Часто при поиске в ТБД необходимо увеличить число релевантных текстов (в поисковых системах Интернет это называется расширенным поиском). Пространство релевантности увеличивается за счет дополнительных совпадений терминов запроса и индексационных терминов.

Для увеличения числа совпадений используются методы:

  1.  применение словаря синонимов (тезауруса), в котором термины сгруппированы в классы синонимии, или эквивалентности. Для построения тезауруса используют методы кластеризации элементов, в которых в качестве элементов выступают индексационные термины;
  2.  исключение из рассмотрения префиксной и постфиксной частей терминов и выделение их основ путем проведения морфологического анализа;
  3.  использование ассоциативного индексирования для приписывания терминам дополнительных терминов, которые ассоциируются с исходными;
  4.  вероятностное индексирование.

4.5.1. Построение словаря синонимов

Смысл этого метода сводится к тому, что с каждым термином tk связывается множество его синонимов Synk. Образуется тезаурус. Тогда вектор запроса пополняется терминами из тезауруса, что расширяет число текстов, релевантных запросу.

Связь термина tk с множеством Synk  может быть представлена дополнительной графой справочника, в которой множество синонимов задано либо явно, либо списком номеров синонимичных терминов из того же справочника, например:

Термин tk

Синонимы Synk

Текст

Ф1

Ф2

Ф3

Ф4

К1

К4

wФ1К1

wФ2К1

wФ3К1

wФ4К1

К2

-

wФ1К2

wФ2К2

wФ3К2

wФ4К2

К3

-

wФ1К3

wФ2К3

wФ3К3

wФ4К3

К4

К1

wФ1К4

wФ2К4

wФ3К4

wФ4К4

Тогда, например, если в запросе участвует термин К1, а его синонимом является термин К4, то запросу релевантны тексты, характеризующиеся как термином К1, т.е. Ф1, так и К4, т.е. Ф4.

При формировании тезауруса применяются рассмотренные выше для текстов методы кластеризации. Для этого каждый термин tk представляется вектором Vk вида:

Vk = {(Di, fik)} или Vk = {(Di, wik)}.

Тогда для терминов tk и tr коэффициент подобия S(tk,tr) рассчитывается по формуле:

  

где pir – параметр (частота или вес), характеризующий термин tr в тексте Di,

n – число текстов в наборе.

4.5.2. Ассоциативное индексирование терминов

Для каждого термина tk находятся дополнительные термины, которые ассоциируются с исходным, - Assk. Тогда вектор запроса, аналогично предыдущему методу, пополняется дополнительными терминами. Это, очевидно, расширяет число релевантных запросу текстов. Связь термина tk с множеством Assk  может быть также представлена дополнительной графой справочника.

Для выявления ассоциируемых терминов строится матрица ассоциируемости, задающая для каждой пары терминов (tk, tr) показатель ассоциируемости a(k, r):

    

где fik, firчастоты терминов tk, tr в тексте Di.

Этот показатель принимает значения от 1 до 0: если он равен 1, то термины полностью ассоциируются, если равен 0, то никакой ассоциации между ними не существует. На практике для определения ассоциируемости вводится некоторое пороговое значение показателя â. Тогда термины ассоциируются, если для них показатель ассоциируемости превышает это пороговое значение.

4.5.3. Вероятностное индексирование терминов

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

Суть метода состоит в том, что наличие в векторе запроса некоторых терминов используется как основа для утверждения, что данный запрос с вероятностью p относится к кластеру Сl с профилем Пl. Если вероятность превышает некоторое пороговое значение, термины из профиля (или их веса) приписываются к вектору запроса.

Вероятность p рассчитывается следующим образом:

p(t1, t3,..., tT, Cl) = в*p(Cl)*p(Cl, t1)*p(Cl, t3)*...*p(Cl, tT),   

где р(Cl) - вероятность кластера Cl:

,   

|DiCl| - число текстов в кластере Cl,

n - число текстов во всех кластерах,

р(Cl, tk) - вероятность того, что каждый текст из кластера Cl содержит термин tk:

p(Cl, tk) =    

FClkобщее число терминов tk в текстах кластера Cl,

FCl общее число терминов в текстах кластера Cl,

Т’ -  число терминов с ненулевым весом в векторе запроса,

вконстанта, значение которой выбирается таким образом, чтобы выполнялось условие:

,

где С – общее число кластеров.


Глава 5. Организация интерфейса пользователя в информационных системах

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

5.1. Типы диалогов

К настоящему моменту сложились следующие типы диалогов: вопрос-ответ; меню; экранная форма; командный язык; прямое манипулирование.

Диалог типа «вопрос-ответ», или регламентированный диалог, является первым в истории взаимодействия пользователя и ЭВМ. Почти сразу после появления первых вычислительных машин в середине 20-го века возникло желание организовать общение с ними на привычном для человека естественном языке9. Это позволило бы исключить специальную подготовку пользователя. Однако, в силу сложности данной задачи, она не решена практически до настоящего времени, хотя надежда разработать подобный интерфейс не оставляет исследователей. При этом виде диалога запросы пользователя и формируемые ответы системы имеют наперед заданную структуру и кодируются с использованием лингвистического обеспечения ИТ (ИС). В зависимости от ситуации инициатива ведения диалога может принадлежать компьютеру или пользователю.

Некое подобие данного вида диалога реализовано в условиях ограничений на язык или предметную область. При ограничениях на предметную область создаются 2 словаря:

  •  функциональный. Содержит функциональные слова, которые означают по смыслу характер требуемой задачи: например, вопросительные слова что, сколько, какие, когда, а также императивы найти, определить и т.д. Состав этих слов соответствует функциональным возможностям системы. Данные слова являются ключевыми, и их смысл не может меняться. Они, как правило, связаны с соответствующей процедурой или с другими такими же словами;
  •  специфический. Содержит внешние имена полей БД, т. е. профессиональную лексику пользователей системы. Эти слова вводятся при настройке системы и отражают предметную область (например, фамилия, номер зачетки и т.д. – для учебных заведений), а также жаргон (сленг) пользователя. Они также являются ключевыми в том смысле, что определяют последующую обработку запроса.

Например, БД имеет структуру, соответствующую таблице:

фамилия

дисциплина

оценка

Словари функциональных и специфических слов имеют вид:


Функциональное слово

Интерпретация

Специфическое слово

Интерпретация

какие

найти и напечатать

студент

фамилия

найти

Search

пятерка

оценка=5

напечатать

Print

фамилия

поле БД

оценка

поле БД

информатика

дисциплина

дисциплина

поле БД

Тогда возможен запрос: Какие студенты сдали информатику на пятерку?

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

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

Search (фамилия | дисциплина=информатика оценка=5)

Print (фамилия)

При ограничениях на язык также поддерживаются два аналогичных словаря, но к структуре запроса предъявляются жесткие требования:

  1.  запрос (задание) формируется в виде последовательности фраз естественного языка, описывающих операции, необходимые для его выполнения. Таким образом, пользователь должен представлять, какие действия следует реализовать компьютеру для выполнения его запроса;
  2.  предложение должно начинаться с функционального слова, определяющего нужное действие;
  3.  при формулировке условий поиска значения полей БД должны предваряться их именами.

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

Найти фамилии студентов, сдавших экзамены по дисциплине = информатика с оценкой = 5. Напечатать фамилии.

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

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

Форматы меню хорошо известны читателю из интегрированных оболочек операционных систем типа Far, Norton Commander, прикладных программных продуктов и т.п. Особым формат меню - иконки в качестве изображений объектов, приложений  или действий, которые являются одним из элементов графического интерфейса и рассматриваются далее.

Для удовлетворения требованиям эргономичности интерфейса меню должно иметь следующие характеристики:

  1.  содержать 5 – 6 пунктов (практически не выполняется в настоящее время);
  2.  большое число различных вариантов выбора (пунктов меню) следует сгруппировать в иерархию небольших меню (всплывающих или выпадающих);
  3.  структура меню должна соответствовать структуре решаемой задачи, организация меню должна отразить наиболее эффективную последовательность шагов, чтобы достичь поставленной задачи;
  4.  пункты меню должны быть краткими, грамматически правильными и соответствовать своему заголовку в меню;
  5.  выбор пунктов меню должен быть обеспечен несколькими способами – с помощью клавиатуры, с помощью мыши, а также через другие объекты пользовательского интерфейса. Необходимо использовать легко запоминаемые сочетания клавиш для более быстрого доступа к пунктам меню, поскольку это очень экономит время;
  6.  пункты меню должны быть упорядочены в соответствии с одним из принципов:
    •  в алфавитном порядке;
    •  по соглашению с пользователями;
    •  по частоте использования;
    •  в соответствии с порядком использования опций.

Диалог типа меню применяется в случаях, когда: диапазон возможных ответов достаточно мал, и все они могут быть явно отражены; пользователю необходимо видеть возможные варианты ответов; пользователь неопытен.

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

Пример – две команды копирования файлов операционной системы MS DOS (первая использует позиционные параметры, вторая – ключевые):

copy a.com b.com

copy source = a.com destination = b.com

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

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

Для эргономичности интерфейса экранная форма должна отвечать следующим требованиям:

  1.  если форма переносится из бумажной формы, по передвижение по смежным полям не должно вызывать затруднений у пользователя;
  2.  размещение информационных единиц на пространстве формы должно соответствовать логике ее будущего использования: это зависит от необходимой последовательности доступа к информационным единицам, частотой их использования, а также относительной важности элементов;
  3.  важно использовать незаполненное пространство, чтобы создать равновесие и симметрию среди информационных элементов формы, для фиксации внимания пользователя в нужном направлении;
  4.  логические группы элементов необходимо отделять пробелами, строками, цветовыми или другими визуальными средствами;
  5.  взаимозависимые или связанные элементы должны отображаться в одной форме;
  6.  для дизайна заголовков и полей:
  •  для отдельных полей заголовок должен быть выровнен по левому краю; для полей списков заголовок должен быть выше и левее по отношению к основному полю, числовые поля выравниваются по правому полю;
  •  длинные колоночные поля или длинные столбцы информационных единиц с одиночными полями необходимо объединять в группы по пять элементов, разделяемых пустой строкой – это помогает пользователю мысленно обрабатывать информацию по выделенным группам;
  •  в формах с большим количеством информации необходимо использовать названия разделов, которые однозначно свидетельствуют о характере принадлежащей им информации;
  •  необходимо четко разделять отображение заголовков и непосредственно полей ввода, поскольку такая путаница может вызвать дискомфорт у пользователя;
  •  заголовки должны быть краткими, знакомыми и содержательными;
  •  поля, необязательные для заполнения либо не имеющие особой важности, должны отличаться визуально (цветом или другими эффектами) от полей важных и обязательных для заполнения;
  1.  для форматов ввода данных:
  •  необходимо обеспечить ввод значений по умолчанию во все поля, которые это допускают, если такая функция не будет раздражать пользователя; можно назначить клавиши или коды для ввода часто повторяющихся значений;
  •  входные данные должны быть значимыми и общепринятыми; данные или коды на международном английском языке будут проще для узнавания и понимания, чем произвольные коды;
  •  не рекомендуется объединять поля ввода чисел и символов, поскольку числовые и алфавитные клавиши находятся неудобно относительно друг друга на клавиатуре;
  •  поля ввода должны быть короткими, насколько это возможно;
  •  необходимо исключить частое переключение между верхним и нижним регистрами для ускорения ввода данных;
  •  нельзя требовать от пользователя ввода незначимых цифр, например, вместо 000000010 пользователь должен ввести только 10.

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

Графический интерфейс (прямое манипулирование) – самый молодой вид диалога. В этом случае пользователь управляет объектами на экране посредством устройства манипулирования типа мышь. Этими объектами могут быть:

  •  кнопки – используются, чтобы выбрать опцию или вызвать событие, например, запуск программы;
  •  переключатели – подобны кнопкам, в которых пользователь выбирает значение из фиксированного списка, причем пользователь может выбрать более одного значения;
  •  радиоклавиши – разновидность переключателей, среди которых можно выбрать только одно значение;
  •  слайдеры – полоса (линейка) прокрутки, позволяют скроллировать текст или изображение на экране;
  •  метки – не редактируемые поля, используемые только для отображения текста типа подсказок, команд пользователя и т.д.;
  •  текстовые блоки – позволяют пользователю вводить текстовые данные в поля;
  •  списки – специализированные средства управления, которые отображают раскрывающиеся списки значений (часто с присоединенными слайдерами) и позволяют пользователю выбирать значение из списка или вводить другое значение в присоединенное текстовое поле;
  •  иконки. Их можно классифицировать согласно тому, насколько точно они отображают несущую функцию:
  •  иконки подобия – похожи на объекты, которые они отображают (типа ножниц, чтобы отобразить операцию «Вырезать»);
  •  по образцу – представляют пример типа объекта (например, иконкой, показывающей линию, чтобы представить средство рисования);
  •  символические – используются, чтобы представить действие или состояние в символической форме (например, разорванная линия между компьютерами для того, чтобы показать разорванное сетевое соединение);
  •  произвольные – не несут никакой информации по поводу их представления, поэтому их назначение должно быть описано (например, обратная круговая стрелка, чтобы представить действие «отмена последней команды»).

5.2. Эргономичность интерфейса

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

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

  1.  интерфейс должен поддерживаться на родном языке пользователя (в случае применения текстовых подписей и полей), причем возможно употребление профессионального жаргона;
  2.  подписи, подсказки и другие текстовые надписи, которые появляются по ходу ведения диалога, не должны требовать дополнительных пояснений, им следует быть однозначными для интерпретации пользователем;
  3.  порядок ведения диалога должен соответствовать порядку, в котором обычно пользователь обрабатывает информацию в процессе решения задачи;
  4.  должна быть исключена предварительная обработка данных перед их вводом пользователем. Это обеспечивает быстрый диалог и уменьшение ошибок со стороны пользователя.

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

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

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

Способы выделения элементов:

  1.  движение (мигание или изменение позиции). Очень эффективный метод, поскольку глаз имеет специальный детектор для движущихся элементов;
  2.  яркость. Не очень эффективный метод, поскольку люди могут обнаружить всего лишь несколько уровней яркости;
  3.  цвет. Очень эффективный метод. Основное его назначение – создание интерфейсов, более интересных для пользователя. Он используется для группировки информации, выделения различий между информацией, выделения простых сообщений (ошибки, состояния). Важно отметить, что 9% людей не различают цвета (обычно красно-зеленые сочетания). Однако эти люди могут отличать черно-белые оттенки, поэтому проектировщики интерфейса должны проверять, не нарушает ли восприятие пользователей этой категории использование различных цветов. Принципы использования цвета:
  •  необходимо ограничить число цветов на экране до 4 и до 7 – для последовательности экранов. При этом для неактивных экранов нужно использовать бледные цвета;
  •  если цвет используется для колировки информации, необходимо удостовериться, что пользователь правильно понимает код, например, просроченные счета выделяются красным цветом, а непросроченные - зеленым;
  •  необходимо использовать цвета согласно представлениям пользователя, например, для картографа зеленый – лес, желтый – пустыня, синий – вода. Для химика красный – горячий, синий – холодный;
  •  можно использовать цвет для отображения состояния: красный – опасность или стоп, зеленый – нормально или продолжение работы, желтый - предостережение;
  •  для привлечения внимания наиболее эффективны белый, желтый и красный цвета;
  •  для упорядочения данных можно использовать спектр семи цветов радуги;
  •  для разделения данных необходимо выбрать цвета из различных частей спектра (красный – зеленый, синий – желтый, любой цвет – белый);
  •  для группировки данных, объединения и подобия нужно использовать цвета, которые являются соседями в спектре (оранжевый – желтый, синий - фиолетовый).
  1.  форма (вид символа, шрифт, начертание, размер). Используется для того, чтобы отличить различные категории данных. Обычно применяют увеличение в 1,5 раза. Некоторые принципы, которыми надо руководствоваться при создании текстовых сообщений:
  •  текст в нижнем регистре читается на 13% быстрее, чем текст, который полностью напечатан в верхнем регистре;
  •  символы верхнего регистра наиболее эффективны для информации, которая должна привлечь внимание;
  •  выровненный по правому краю текст читать труднее, чем равномерно распределенный текст с не выровненным правым краем;
  •  оптимальный интервал между строками равен или немного больше, чем высота символов;
  1.  оттенение (различная текстура объектов);
  2.  окружение (подчеркивание, рамки, инвертированное изображение).

Система навигации обеспечивает пользователю способность перемещаться между различными экранами, информационными единицами и подпрограммами в ходе ведения диалога. Тип системы навигации существенно зависит от принятого вида интерфейса: для интерфейса языка команд очень мало способов обеспечения полноценной навигации; в интерфейсах с меню можно использовать иерархически структурированные меню, которые будут «направлять» пользователя. Общие принципы проектирования системы навигации включают: использование заголовков страниц для каждого экрана; использование номеров страниц, номеров строк и столбцов; отображение текущего имени файла вверху страницы.

Поддержка пользователя во время диалога - это мера помощи, которую диалог оказывает пользователю при его работе с системой. Включает:

1) инструкции пользователю - необходимы для направления пользователя в нужную сторону, подсказок и предупреждений для выполнения необходимых действий на пути решения задачи. Инструкции могут быть обеспечены в форме диалога, экранных заставок, справочной информации и т.п. Они могут предложить пользователю: выбрать из предложенных альтернатив некую опцию или набор опций; ввести некоторую информацию; выбрать опцию из набора опций, которые могут изменяться в зависимости от текущего контекста; подтвердить фрагмент введенной информации перед продолжением ввода. Инструкции могут быть помещены в модальные диалоговые окна, которые вынуждают пользователя ответить на вопрос прежде, чем может быть предпринято любое другое действие, потому что все другие средства управления заморожены. Это может быть полезно, когда система должна вынудить пользователя принять решение перед продолжением работы. Немодальные диалоговые окна позволяют работать с другими элементами интерфейса, в то время как само окно может игнорироваться;

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

3) сообщения об ошибках - должны объяснить, в чем ошибка, и указать, как ее исправить.

Ошибки могут быть классифицированы следующим образом:

  1.  ошибки, основанные на неправильном понимании действия или порядка действий;
  2.  ошибки, которые возникли случайно (непреднамеренно), например, опечатка при вводе текста. Это ошибки могут подразделяться на виды:
    •  ошибки неточности выбора опции, например, пользователь случайно нажал кнопку «Выход» и программа закрылась;
    •  ошибки управления данными (например, присвоение ошибочного имени файла из-за неточности отображения последнего);
    •  ошибки ассоциативного характера (например, сохранение файла с именем какого-либо человека, т.к. пользователь думал о нем в момент сохранения);
    •  ошибки потери активности, когда пользователь забывает необходимую последовательность действий для продолжения работы;
    •  ошибка режима или состояния, когда пользователь думает, что находится в одном состоянии, но фактически – в другом, например, режим вставки взамен режима печати поверх текста в текстовом процессоре.

Техника защиты от ошибок включает в себя аспекты:

  1.  принудительные действия в системе, которые предотвращают или затрудняют появление ошибок;
  2.  обеспечение хороших и информативных сообщений об ошибках;
  3.  использование обратимых действий, которые позволяют пользователям исправлять их собственные ошибки;
  4.  обеспечение нормальной диагностики системы, в процессе которой пользователю объясняется, в чем суть ошибки и пути ее исправления.

Обработка ошибок в формах ввода включает обеспечение следующих действий:

  1.  посимвольного редактирования введенных записей для исправления ошибок ввода (опечаток);
  2.  если ошибка обнаружена системой, желательно вернуть курсор в поле с ошибочными данными и каким-либо образом выделить это поле визуально;
  3.  обеспечить значимые сообщения об ошибках, использующие стиль языка пользователя и соответствующую терминологию;
  4.  обеспечить сообщения об ошибках, которые объясняют и предлагают пути устранения.

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

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

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

Косметическая адаптация является промежуточной адаптацией: гибкость обеспечивается без учета поведения пользователя и без однозначного выбора им конкретного стиля диалога.

Это достигается применением специальных приемов:

  •  сокращений. Примером сокращений может быть использование шаблонов имен файлов в командном языке MS DOS. Так, для определения множества документов MS Word используется шаблон *.doc;
  •  частично совпадающих данных. Используются метрики, позволяющие определить «расстояние» между входными данными и каждым из возможных ответов. Выбираются те, которые ближе всего к входным данным. Пример такого алгоритма - поиск англоязычных имен по их произношению с использованием фонетической близости различных символов:
  •  удаляются все небуквенные символы, например _, &, !;
  •  сохраняется первая буква имени; удаляются буквы A, E, I, O, U, W, H, Y;
  •  оставшимся буквам присваиваются цифры по следующим правилам:

1B, F, P, V    4L

2G, J, K, Q, S, X, Z  5M, N

3D, T    6R

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

Например, вводится имя FORBES. Оно преобразуется в код F612. Пусть в системе есть имена FARBES, FFORBES, FORBOUYS, которые имеют такие же числовые коды. Поскольку возникла неоднозначность, пользователю поступает запрос на ее снятие.

  •  синонимов. Пользователь выбирает то, что ему ближе. Например, команды MS DOS del и erase удаляют файлы. Пользователь волен выбрать любую (если его не волнует возможность последующего восстановления удаленных файлов). Одна из форм синонимичности – ввод сообщений, набранных любой комбинацией строчных и прописных букв;
  •  опережающих вводов ответов;
  •  использования ответов по умолчанию и макросов;
  •  многоуровневой помощи.


ИНДИВИДУАЛЬНЫЕ ЗАДАНИЯ 

Реляционные модели

  1.  Сформировать реляционную модель с описанием состава ближайших родственников – родителей и их родителей. Элементы таблицы имеют структуру (поля): имя (например, Наталья, Ирина, Сергей и т.д.), степень родства относительно автора работы (например, мама, бабушка и т.д.), возраст, род занятий (например, пенсионер, студент, служащий и т.д.), профессия, место проживания. Определить ключевые поля (первичные и вторичные). Первичные ключевые поля выделить полужирным курсивом.
  2.  Выполнить дополнительные построения для основной таблицы, сформированной в п.1), для индексно-последовательного, индексно-произвольного методов доступа по первичному ключу. Оформить полученные индексы в виде таблиц.
  3.  Выполнить дополнительные построения для основной таблицы, сформированной в п. 1), для методов доступа по вторичному ключу: цепь подобных записей (обычный и оптимизированный варианты), инвертированные файлы. Оформить полученные индексы в виде таблиц.
  4.  Для реляционной модели разработать алгоритм для решения задачи (номер варианта задается преподавателем). Алгоритм представить в виде блок-схемы:
  5.  Создать последовательный файл фамилий.
  6.  Сортировать последовательный файл, созданный в варианте 1, по алфавиту.
  7.  Модифицировать алгоритм для решения задачи варианта 1 так, чтобы при создании последовательного файла одновременно выполнялась его сортировка по алфавиту.
  8.  Даны N возможно повторяющихся фамилий (исходные данные). Решить задачу создания последовательного файла фамилий, обеспечив при этом уникальность фамилий в файле: при попытке ввода уже имеющейся в файле фамилии выдать диагностическое сообщение и проигнорировать ее.
  9.  Найти запись по первичному ключу в неупорядоченном последовательном файле методом последовательного сканирования.
  10.  Найти запись по первичному ключу в упорядоченном последовательном файле методом последовательного сканирования, если файл упорядочен по убыванию ключа.
  11.  Найти запись по первичному ключу в упорядоченном последовательном файле методом последовательного сканирования, если  файл упорядочен по возрастанию ключа.
  12.  Добавить запись в неупорядоченный последовательный файл.
  13.  Добавить запись в упорядоченный последовательный файл, если он упорядочен по убыванию ключа.
  14.  Добавить элемент в упорядоченный последовательный файл, если он упорядочен по возрастанию ключа.
  15.  Найти запись блочным способом при условии, что N = m2 (N – число записей в файле, m – целое число), а файл упорядочен по убыванию ключа.
  16.  Найти запись блочным способом при условии, что N = m2 (N – число записей в списке, m – целое число), а файл упорядочен по возрастанию ключа.
  17.  Найти запись двоичным способом, если файл упорядочен по убыванию ключа.
  18.  Найти запись двоичным способом, если файл упорядочен по возрастанию ключа.
  19.  Сформировать индекс для индексно-последовательного способа доступа при условии, что N = m2 (N – число записей в файле, m – целое число).
  20.  Найти запись индексно-последовательным способом при условии, что индекс сформирован в задаче 15.
  21.  Сформировать индекс для ключа, по которому планируются редкие запросы при индексно-произвольном способе доступа.
  22.  Найти запись индексно-произвольным способом при условии, что индекс сформирован в задаче 17.
  23.  Сформировать индекс для вторичного ключа при способе доступа «Цепь подобных записей».
  24.  Найти запись по вторичному ключу без использования индексов.
  25.  Модифицировать основной файл адресными ссылками при способе доступа по вторичным ключам «Цепь подобных записей».
  26.  Найти запись по вторичному ключу при использовании способа доступа «Цепь подобных записей».
  27.  Добавить запись в файл, модифицированный в задаче 21.
  28.  Модифицировать индекс с вторичными ключами, если в основной файл добавляется запись (задача 23).
  29.  Сформировать индекс для вторичного ключа при оптимизированных цепях подобных записей.
  30.  Модифицировать индекс с вторичными ключами, если в основной файл добавляется запись, при способе доступа «Оптимизированные цепи подобных записей».
  31.  Найти запись по вторичному ключу при использовании способа доступа «Оптимизированные цепи подобных записей».
  32.  Сформировать индекс для вторичного ключа при способе доступа «Инвертированные файлы».
  33.  Найти элемент по вторичному ключу при использовании способа доступа «Инвертированные файлы».
  34.  Модифицировать индекс с вторичными ключами, если в основной файл добавляется запись, при способе доступа «Инвертированные файлы».
  35.  Удалить запись в упорядоченном последовательном файле.
  36.  Построить блок-схему для решения задачи:

1. Дан последовательный файл из N фамилий. Фамилия – первичный ключ. Файл упорядочен по алфавиту. По вводимой фамилии (Кпоиск) двоичным способом определить номер требуемой записи в файле или выдать сообщение о её отсутствии.

2. Дан последовательный файл из N фамилий (N = m2, где m – натуральное число). Фамилия – первичный ключ. Файл упорядочен по алфавиту. По вводимой фамилии (Кпоиск) блочным способом определить номер требуемой записи в файле или выдать сообщение о её отсутствии.

3. Дан последовательный файл из N фамилий (N = m2, где m – натуральное число). Фамилия – первичный ключ. Файл упорядочен по алфавиту. Сформировать индекс для индексно-последовательного способа доступа.

4. Дан последовательный файл из N элементов (N = m2, где m – натуральное число), содержащих поля «фамилия» и «номер зачетной книжки». Фамилия и номер зачетной книжки – первичные ключи. Файл упорядочен по алфавиту по полю «фамилия». Сформировать индексы для индексно-произвольного способа доступа. Доступ организовать по обоим полям, причем поле «фамилия» имеет приоритет.

5. Дан последовательный файл из N фамилий (N = m2, где m – натуральное число). Фамилия – первичный ключ. Файл упорядочен по алфавиту. Сформирован индекс для индексно-последовательного способа доступа (он размещен в отдельном файле). По вводимой фамилии (Кпоиск) индексно-последовательным способом доступа определить номер требуемой записи в основном файле или выдать сообщение об отсутствии искомой записи.

6. Дан последовательный файл из N записей (N = m2, где m – натуральное число), содержащих поля «фамилия» и «номер зачетной книжки». Фамилия и номер зачетной книжки – первичные ключи. Файл упорядочен по алфавиту по полю «фамилия». Построены два индекса для организации индексно-произвольного способа доступа, причем приоритет в поиске принадлежит ключу «фамилия». По ключу Кпоиск, содержащему значение зачетной книжки, индексно-произвольным методом  доступа определить значение поля «фамилия» требуемой записи в основном файле или выдать сообщение об отсутствии искомой записи.

7. Дан последовательный файл из N записей, содержащих поля «фамилия», «оценка по математике», «оценка по физике». Фамилия – первичный ключ, каждая из оценок – вторичный ключ. Файл упорядочен по алфавиту по полю «фамилия». Сформировать индексы для поиска по вторичному ключу способом «Цепи подобных записей», для поиска по обоим вторичным ключам.

8. Дан последовательный файл из N записей, содержащих поля «фамилия», «оценка по математике», «оценка по физике». Фамилия – первичный ключ, каждая из оценок – вторичный ключ. Файл упорядочен по алфавиту по полю «фамилия». Модифицировать основной файл, добавив в него поля ссылок, для организации доступа по каждому  из вторичных ключей  способом «Цепи подобных записей».

9. Дан последовательный файл из N записей, содержащих поля «фамилия», «оценка по математике», «оценка по физике», а также поля ссылок для организации доступа способом «Цепи подобных записей». Фамилия – первичный ключ, каждая из оценок – вторичный ключ. Файл упорядочен по алфавиту по полю «фамилия». Построены индексы для организации доступа к записям файла по вторичным ключам способом «Цепи подобных записей». Индексы размещены в дополнительных файлах. По ключу Кпоиск, содержащему оценку по математике, способом «Цепи подобных записей», определить фамилии тех, кто имеет искомую оценку.

10. Дан последовательный файл из N записей, содержащих поля «фамилия», «оценка по математике», «оценка по физике». Фамилия – первичный ключ, каждая из оценок – вторичный ключ. Файл упорядочен по алфавиту по полю «фамилия». Сформировать индексы для поиска по вторичному ключу способом оптимизированных цепей подобных записей для поиска по обоим вторичным ключам.

11. Дан последовательный файл из N записей, содержащих поля «фамилия», «оценка по математике», «оценка по физике», а также поля ссылок для организации доступа способом «Цепи подобных записей». Фамилия – первичный ключ, каждая из оценок – вторичный ключ. Файл упорядочен по алфавиту по полю «фамилия». Построены индексы для организации доступа к записям файла по вторичным ключам методом оптимизированных цепей подобных записей. Индексы размещены в дополнительных файлах. По ключам К1поиск и К2поиск, содержащим оценки по математике и физике, соответственно, методом оптимизированных цепей подобных записей определить фамилии тех, кто имеет искомые оценки.

12. Дан последовательный файл из N записей, содержащих поля «фамилия», «оценка по математике», «оценка по физике». Фамилия – первичный ключ, каждая из оценок – вторичный ключ. Файл упорядочен по алфавиту по полю «фамилия». Сформировать индексы для поиска по вторичному ключу способом инвертированных файлов для поиска по обоим вторичным ключам.

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

Деревья

  1.  По данным последовательного файла из задачи 1 предыдущего задания сформировать свое генеалогическое дерево, в котором указать два поколения предков – своих родителей и их родителей. Себя представить корнем дерева (нулевой уровень), родителей – первым уровнем, их родителей (т.е. своих бабушек и дедушек) – вторым уровнем иерархии. Все элементы дерева обозначить их именами. Изобразить дерево рисунком. Например, если имя студента – Алексей, его родителей – Анна и Сергей, бабушек – Ольга и Марина, а дедушек – Станислав и Иван, то генеалогическое дерево (с учетом родственных связей) будет выглядеть следующим образом:

    Алексей

      Анна       Сергей

Ольга   Иван   Марина Станислав

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

Сети

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

женщины

Анна  Марина  Ольга

мать/сын   жена/муж        мать/сын бабушка/внук    сватья/сват    жена/муж  теща/зять

Алексей       Сергей  Станислав  Иван

мужчины

Здесь в записи <x>/<y> элемент <x> означает степень родства со стороны женщины, а <y> - мужчины.

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


ЛИТЕРАТУРА

  1.  Дейт К. Введение в системы баз данных. – М.: Наука, 1980. – 463 с.
  2.  Мартин Дж. Организация баз данных в вычислительных системах. – М.: Мир, 1980. – 662 с.
  3.  Нагао М., Катаяма Т., Уэмура С. Структуры и базы данных. – М.: Мир, 1986. – 198с.
  4.  Олле Т.В. Предложения КОДАСИЛ по управлению базами данных. – М.: Финансы и статистика, 1981. – 285 с.
  5.  Солтон Дж. Динамические библиотечно-информационные системы. – М.: Мир, 1979. – 557 с.
  6.  Хаббард Дж. Автоматизированное проектирование баз данных. – М.: Мир, 1984. – 292с.
  7.  Четвериков В.Н., Ревунков Г.И., Самохвалов Э.Н. Базы и банки данных. – М.: Высшая школа, 1987. – 245 с. Список литературы
  8.  Аладьев В.З. Основы информатики: учеб. пособие / В.З.Аладьев. – М., 1998. –  496 с.
  9.  Бажин И.И. Информационные системы менеджмента / И.И. Бажин. – М., 2000. – 688 с.
  10.  Годин В.В. / Управление информационными ресурсами / В.В. Годин, И.К. Корнеев. – М., 1999. – 402 с.
  11.  Дракин В.И. Общение конечных пользователей с системами обработки данных / В.И. Дракин, Э.В. Попов, А.Б. Преображенский. – М., 1988. – 288 с.
  12.  Информационные системы и технологии в экономике: учебник / под ред. В.И. Лойко. – М., 2003. – 416 с.
  13.  Информационные технологии (для экономиста): учеб. пособие / под ред. А.К. Волкова. – М., 2001. – 309 с.
  14.  Информационные технологии в маркетинге: учебник / под ред. Г.А. Титоренко. – М., 2000. – 336 с.
  15.  Информационные технологии управления: учеб. пособие для вузов / под ред. Г.А. Титоренко. – М., 2003. – 439 с.
  16.  Каймин В.А. Информатика / В.А. Каймин. – М., 2000. – 232 с.
  17.  Карминский А.М. Информатизация бизнеса / А.М. Карминский, С.А. Карминский, П.В. Нестеров, Б.В. Черников. – М., 2004. – 620 с.
  18.  Карпова Т.Т. Базы данных. Модели, разработка, реализация / Т.Т. Карпова. – СПб., 2001. – 304 с.
  19.  Козырев А.А. Информационные технологии в экономике и управлении: учебник / А.А. Козырев. – СПб., 2000. – 322 с.
  20.  Кульгин М. Технологии корпоративных сетей. Энциклопедия / М. Кульгин. – СПб., 2000. – 704 с.
  21.  Мишенин А.В. Теория экономических информационных систем / А.В. Мишенин. - М., 1999. – 187 с.
  22.  Могилев А.В. Информатика / А.В. Могилев. – М., 1999. – 811 с.
  23.  Ойхман Е.Г. / Реинжиниринг бизнеса: реинжиниринг организаций и информационных технологий / Е.Г. Ойхман, Э.В. Попов. – М., 1997. – 336 с.
  24.  Острейковский В.А. Информатика / В.А. Острейковский.– М.,2001. – 511 с.
  25.  Попов Э.В. Общение с ЭВМ на естественном языке / Э.В.Попов. – М., 1982. – 360 с.
  26.  Романов А.Н. Советующие информационные системы в экономике: учеб. пособие для вузов / А.Н. Романов, Б.Е. Одинцов. – М.. 2000. – 487 с.
  27.  Савельев А.Я. Основы информатики / А.Я. Савельев. – М., 2001. – 327 с.
  28.  Советов Б.Я. Информационная технология: учебник / Б.Я.Советов. – М., 1994. – 360 с.
  29.  Тарасов В.Б. Предприятия XXI века: проблемы проектирования и управления / В.Б. Тарасов. - Автоматизация проектирования, № 4, 1998. – С. 46 – 53.
  30.  Топоркова О.М. Информатика: учеб. пособие / О.М. Топоркова. – Калининград, 2001. – 205 с.
  31.  Топоркова О.М. Модели данных и технологии их обработки: учеб. пособие / О.М. Топоркова. – Калининград, 2003. – 105 с.
  32.  Топоркова О.М. Анализ и синтез формальных текстов: учеб. пособие / О.М. Топоркова. – Калининград, 2002. – 116 с.  
  33.  Уткин В.Б. Информационные системы и технологии в экономике: учебник / В.Б. Уткин, К.В. Балдин. – М., 2003. – 335 с.

1 Гносеология – это раздел философии, связанный с теорией познания; он объединяет методологические проблемы получения нового научного знания.

2 Обратите внимание на изменение формы глагола «отчислить»: для фактических данных он употребляется в прошедшем времени, фиксируя тем самым факт отчисления; для эмпирического закона он имеет смысл «обычно отчисляют» - это уже закономерность.

3 Более подробно и строго данные вопросы рассматриваются в курсе «Базы данных»

4 ER – (Entity-Relationship) – сущность-отношение (или связь)

5 Напомним, что записи файла упорядочены по возрастанию первичного ключа

6 в текущей таблице

7 в текущей таблице

8 Напомним, что ключами для структурированных данных являются поля, а не слова или словосочетания

9 Интересные описания подобных диалоговых систем и казусов, которые сопровождали их создание, можно найти в книге Б. Рафаэла «Думающий компьютер».


Производство

СУ

ОУ

АИ

НИ

КИ

ПИ

УИ

ОИ

Нормирование

Контроль

Планирование

Учет

Информация

о внешней среде

Цель

Управляющая информация (к ОУ)

Информация о

состоянии ОУ

(от ОУ)

Осведомительная информация

Анализ

Организация

Тактический уровень

Оперативный уровень

Стратегический уровень

Информация о внешней среде

Контроль

Учет

Нормирование

Планирование

Организация

АИ

НИ

КИ

ПИ

УИ

Анализ

Учет

Нормирование

Планирование

Организация

АИ

НИ

КИ

ПИ

УИ

Анализ

Планирование

Организация

АИ

НИ

КИ

ПИ

УИ

ОУ

ОИ

ОИ

ОИ

Цель

Осведомительная информация

Анализ

Информация о

состоянии ОУ

Управляющая

информация

Контроль

Контроль

Учет

Нормирование

Производство

Информационные массивы

Программное обеспечение

Интерфейс

Н

Ввод запроса

БД

Поиск элемента

Найден?

Модификация элемента

К

Нет

Да

Ключ

Данные

Размещение элемента

Н

Ввод запроса

БД

Поиск элемента

Найден?

Исключение элемента

К

Нет

Да

Ключ

Н

Ввод запроса

БД

Поиск элемента

Найден?

Вывод

К

Нет

Да

Ключ

Данные

студент

ФИО

номер зачетной книжки

числится

студент

номер  зачетной книжки

ФИО

учебная группа

студент

числится

поставщик

потребитель

товар

заказ

сотрудник

ФИО

ченая степень

научное звание

контактные данные

кафедра

название

шифр в вузе

работает

числится

должность

название

образование

сотрудник

сотрудник

кафедра

сотрудник

должность

сотрудник

сотрудник

сотрудник

сотрудник

сотрудник

кафедра

сотрудник

сотрудник

сотрудник

кафедра

сотрудник

должность

название    шифр в вузе

название     образование

ФИО ученая  научное контактные

         степень звание   данные

сотрудник

сотрудник

сотрудник

ФИО ученая  научное контактные

         степень звание   данные

кафедра

должность

название    шифр в вузе

название     образование

сотрудник

сотрудник

сотрудник

ФИО ученая  научное контактные

         степень звание   данные

Алгоритм рандомизации

Бакет 1

Бакет 2

.......

Бакет Nmax

К1

К2

К3

(1)

кафедра

название    шифр в вузе

сотрудник

сотрудник

сотрудник

кафедра

название    шифр в вузе

ФИО ученая  научное контактные

         степень звание   данные

должность

название     образование

кафедра

название    шифр в вузе

кафедра

название    шифр в вузе

должность

название     образование

сотрудник

сотрудник

сотрудник

ФИО ученая  научное контактные

         степень звание   данные

хронология поступления файлов в ТБД      t

Ф1

Ф2

Ф3

Ф4

К1

К3

К2

К3

К1

К4

хронология поступления файлов в ТБД      t

Ф1

Ф2

Ф3

Ф4

К1

К3

К2

К3

К1

К4

К1      Ф3

К3      Ф2

К2      Ф4

К3        -

К1           -

К4          -

хронология поступления файлов в ТБД      t

Ф1

Ф2

Ф3

Ф4

К1

К3

К2

К3

К1

К4

С1    С2

Ф2  Ф4  Ф1  Ф2  Ф3

1

1

  1.  



1. Реферат- Международный опыт взаимодействия бухгалтерского и налогового учета
2. Тема- Покупки Підтема- Магазини
3. Контрольная работа- Психологія особистості управлінця або навіщо мені потрібна психологія та педагогіка
4. Понятие менталитета этнокультурных общностей
5. Харчові добавки ' природні і синтезовані хімічні сполуки призначені для введення в харчові продукти з мет
6. Реферат- Сахарный диабет СД ~ эндокринное заболевание характеризующееся синдромом хронической гиперглик
7. Славянский костюм
8. .назначение и принцип работы серверов
9. Типология маркетинговой информации Маркетинговое исследование в соответствии с различными целями и возм
10.  Техникоэкономический анализ аудит Доц
11. К вопросу о понятии феномена физическая рекреация
12. всего Оплата по сдельным расценкам
13. Педагогічні ідеї Гринченка
14. Любой документ состоит из ряда элементов дата текст подпись которые называют реквизитами
15. Судно александр матросов
16. Если вы не знаете этого то спросите людей Писанияrdquo; Сура Пчелы 16-43; Сура Пророки 21-7 Этот аят из Священн
17. я категория трещиностойкости допускает продолжительное раскрытие трещин при действии-постоянной длительн
18. Региональный мониторинг
19. Башкирский государственный медицинский университет Министерства здравоохранения Российской Федерации1
20. Тема 1 Философия как социокультурный феномен Что буквально означает греческое слово философия