Введение в информационные системы (ИС)

 Вместо истории ИС:

"Утром Петр Иванович привез племянника в департамент... Александр знакомился с этим новым для него миром...

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

            Где же разум, оживляющий и двигающий эту фабрику бумаг? - думал Александр,- в книгах ли, в самих ли бумагах, или в головах этих людей?"

И.А. Гончаров. "Обыкновенная история.

 

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

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

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

Имеются:

  1. Некоторая система (событие, процесс), информация о которой представляет интерес;
  2. Наблюдатель, способный воспринимать состояния системы и в определенной форме фиксировать их в своей памяти;

Тогда говорят, что в памяти наблюдателя находятся “данные”, описывающие состояние системы. В общем случае таким наблюдателем является информационная система.

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

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

    1. Она завтра совершенно свободна;
    2. Ей скучно.

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

            Существуют три аспекта работы с данными  (д): 

 

Под информационной технологией (ИТ) будем понимать некоторый процесс, который схематически (в нотации международного стандарта IDEF0) можно представить так:

 

Рис. 1.

 

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

В уже достаточно долгой истории компьютерной индустрии (в 1997г. был 50-летний юбилей) всегда можно было выделить два основных направления: вычисления и накопление и поиск информации. Как известно, возникновение компьютеров главным образом стимулировалось необходимостью проведения трудоемких расчетов для создания ядерного оружия и ракетной техники. Объемы требуемых вычислений просто не позволяли произвести их в приемлемое время традиционным коллективом расчетчиков. Итак, первыми пользователями компьютеров и разработчиками компьютерных программ стали вычислительные математики. До сих пор многие представители старшего поколения программистов предпочитают называть себя математиками (или прикладными математиками), даже если в последние 20-30 лет им не пришлось написать хотя бы одну вычислительную программу, не говоря уже о разработке методов и алгоритмов компьютерных вычислений.

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

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

Особенности информационных систем

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

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

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

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

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

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

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

 

Задачи, решаемые информационными системами

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

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

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

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

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

Файл, запись, поле

Файл - это любой набор данных, состоящих из элементов одинаковой структуры - записей. В свою очередь запись - представляет собой структуру, состоящую из полей. Поле - это минимальная поименованная структура данных. Пример файл "Кадры"; запись - "Личное дело"; поле - "ФИО".

Файловые информационные системы.

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

Самодельные системы управления базами данных (СУБД) – в 70-ые годы разрабатывались повсеместно, практически в каждой компьютерной организации. Разработчик СУБД постоянно добавляет в нее новые функции, пока не решает создать общий язык запросов, на котором можно сформулировать любой запрос к базе данных соответствующей ИС. Через некоторое время в корпорации принимают решение разработать еще одну информационную систему, структуры хранимых данных которой, естественно, отличаются от тех, что были в БД первой ИС. Это приводит к тому, что самодельщик вынужден был создать простую (скорее всего, персональную) СУБД общего назначения, которая может получить из базы данных информацию о структуре ее файлов (т. е. в базе данных хранятся теперь еще и метаданные, определяющие структуры обычных данных, - схема базы данных), а также выполнить произвольный запрос к этой базе данных. В результате, даже если удавалось добиться работоспособности разработанной СУБД, это означало всего лишь изобретение еще одного велосипеда, поскольку СУБД такого уровня существует великое множество.  

Таким образом, файловые информационные системы (ФИС) обладали следующими основными недостатками:

Именно эти причины сдерживали повсеместное внедрение систем.

ИДЕЯ СУБД. ОТЛИЧИЕ ОТ ФИС

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

Переход от ФИС к ИС, созданных на базе СУБД привел к повсеместному распространению информационных систем.

 

ОПРЕДЕЛЕНИЕ БАНКА ДАННЫХ. ТРЕБОВАНИЯ К БнД

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

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

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

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

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

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

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

БнД должен:

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

ПРЕИМУЩЕСТВА ЦЕНТРАЛИЗАЦИИ УПРАВЛЕНИЯ ДАННЫМИ:

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

 

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

Рассматривая данные как один из ресурсов АС, можно сказать, что БнД централизованно управляет этим ресурсом в интересах всей системы. Наличие централизованного управления данными - главная отличительная черта БнД.

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

ПОНЯТИЕ О КОРПОРАТИВНЫХ И РАСПРЕДЕЛЕННЫХ СИСТЕМАХ

 

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

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

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

Рис. 2.

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

ИСТОЧНИКИ

  1. С. Кузнецов СИСТЕМЫ УПРАВЛЕНИЯ БАЗАМИ ДАННЫХ 02/97.
  2. С.Д. Кузнецов. Основы современных баз данных. osbdkuz.zip
  3. Г.И. Ревунков и др. Базы и банки данных и знаний., 1992.
Hosted by uCoz