Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекции / Лекции по АИУС вечерники.doc
Скачиваний:
153
Добавлен:
29.01.2014
Размер:
1.04 Mб
Скачать

3.3 Программное обеспечение

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

1) операционные системы — operating system — (ОС);

2) системы программирования — application development system, software development system — (СП);

3) приложения (application), или пакеты прикладных программ (ППП) — software package.

В исторической последовательности развития программных средств первыми возникли узко ориентированные приложения («программа, предназначенная для вычисления числа к с точностью до 200-го знака», «программа, предназначенная для расчета и печати платежной ведомости» и пр.), затем — системы программирования (первые версии назывались системами автоматизации программиро­вания), наконец появились операционные системы.

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

• управление данными;

• управление задачами (заданиями, процессами);

• связь с человеком-оператором.

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

Ранние версии OS/360 были ориентированы на пакетную (batch processing) обработку информации — входной поток заданий (на МЛ, МД или перфокартах) подготавливался заранее и поступал в непре­рывном режиме. В дальнейшем возникли расширения OS/360/375, допускающие диалоговую обработку данных с терминалов пользова­теля, последняя из версий (OS SVM) фактически предоставляла в распоряжение пользователя «виртуальную персональную ЭВМ» с полной мощностью вычислительной установки IBM/360/375.

ОС других семейств (поколений), например RSX (для PDP/11 DEC) или Unix, с самого начала ориентировались на интерактивное взаимодействие с пользователями. Относительно Unix следует отме­тить, что она в настоящее время является самой популярной ОС (если судить не по количеству, а по качеству ЭВМ, а также учесть, что MS DOS функционально является подмножеством Unix).

Широко распространены также системы, разработанные под влиянием концепций UNIX — MS DOS, Windows 95/NT, OS/2.

Система программирования представляет собой инструменталь­ную среду программиста, которая обычно позволяет ему разрабаты­вать прикладные программы (программировать приложения, разраба­тывать приложения), а в более общем случае — и системные компо­ненты ПО (ОС и СП) для соответствующих ЭВМ и операционных систем. Это совокупность средств разработки программ (языки про­граммирования — ЯП, текстовые редакторы, трансляторы, редакто­ры связей, библиотеки подпрограмм, утилиты и обслуживающие программы), обеспечивающих автоматизацию составления и отлад­ки программ пользователя. Системы программирования классифи­цируются, как правило, на:

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

замкнутые/открытые. В последнем случае в систему можно ввести новый входной язык с транслятором, не требуя измене­ний в системе;

интерпретирующие/компилирующие. В первом случае осущест­вляется покомандная расшифровка и выполнение инструкций * входного языка (в среде данной системы программирования);

во втором — подготовка результирующего модуля, который может выполняться на ЭВМ практически независимо от про­граммно-аппаратурной среды. В системе OS/360 (а также RSX, UNIX) СП имеют многоязыко­вой открытый характер, являются системными компонентами, вхо­дящими в состав ОС (программы, написанные на языках Фортран, Си, Паскаль и пр., после компиляции и сборки без ограничений могут комбинироваться в сложные исполнительные модули и обра­зовывать библиотеки процедур).

В менее развитых системах (типа DOS) СП являются внешним по отношению ОС слоем программных средств и потому разрабаты­ваются и поставляются отдельно. Это приводит к появлению не вполне совместимых разработок, выполненных для одного и того же исходного ЯП (Turbo-C и Quick-C, например), каждая из которых является замкнутой одноязыковой СП.

Отдельно следует отметить системы программирования АИС (по­добные ADABAS, Foxpro, Clipper и пр.), которые занимают проме­жуточное положение между СП и приложениями и будут рассмотре­ны ниже.

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

АИПС (IRS — Information Retrieval System). Вуз-ком смысле под АИПС принято понимать открытый (обычно) или замкнутый (реже) программный продукт, предназначенный для реа­лизации практически большинства функций (см. рис. 1.2) процес­сов — ввода, обработки, хранения, поиска, представления данных (ор­ганизованных в записи или документы, находящиеся в БД). В этом смысле часто отождествляют АИПС с АИС, и это трудно оспаривать. Среди АИПС в узком смысле принято выделять (см. гл. 2): • фактографические системы (отличающиеся фиксированной структурой данных или записей), для разработки которых, как правило, используются СУБД, поддерживающие табличные (реляционные) БД;

документальные системы ('отличающиеся неопределенной или переменной структурой данных или документов), для разра­ботки которых часто (но не обязательно) применяют оболочки АИПС.

В более широком смысле под АИПС подразумеваются также программные оболочки, ориентированные на разработку продуктов типа АИПС (в узком смысле). Это связанно с тем фактом, что пер­вые системы типа СУБД и оболочек АИПС были предложены в 60—70-е гг. фирмой IBM (и сотрудничавшими с ней организация­ми) и включали в себя:

• IMS/360 (Information Management System) — по-видимому, первую реальную СУБД, поддерживавшую иерархическую мо­дель данных (понятие появилось позже, в связи с необходимо­стью систематизации СУБД), нашедшую достаточно широкое применение (в частности, для информационного обеспечения проекта Apollo, завершившегося, как известно, высадкой гра­ждан США на Луну в 1969 г.);

• DPS/360 (Document Processing System) — первый промышлен­ный ППП, предназначенный для реализации документальных АИПС. В дальнейшем путем развития принципов DPS фир­мой в 1972 г. был выпущен пакет STAIRS (STorage And Information Retrieval System), предназначенный для диалогово­го обслуживания множества (удаленных) пользователей;

• IRMS (Information Retrieval and Management System), TEXT-РАС и другие аналогичные пакеты.

Как следует из наименований продуктов, разработчики понима­ли под АИПС именно ППП-оболочки.

Системы управления базами данных и програм­мирования АИС. Среди различных программных средств дан­ного класса следует различать [5, 6, 30]:

• СУБД в «чистом виде» (IMS, CETOP и пр.);

• СУБД с элементами систем программирования АИС (ADABAS/Natural, реже ORACLE);

• системы программирования АИС с элементами СУБД (Foxpro, Clipper).

Первый тип фактически относится и к начальному этапу разви­тия систем второго (реже — третьего) типов.

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

Соглашения о форматах и структурах такого взаимодействия обычно пытаются оформить в виде некоторого формального языка (языка ядра). В частности, вдохновленная успехами в разработке и распространении универсального ЯП PL/1 (Programming Langu­age #1), фирма IBM разработала описание форматов интерфейса пользовательских программ с БД IMS в форме языка DL/1 (Data Language #1), который однако значительного успеха не имел.

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

• специализированных программных средств;

• вспомогательных файлов;

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

Система обеспечивает доступ пользователей к БД при соблюде­нии следующих существенных критериев:

• целостность и непротиворечивость данных, описывающих различные аспекты объектов реального мира;

• защита информации от несанкционированного доступа на чтение/обновление содержимого БД;

• установление и поддержание связей между зависимыми дан­ными, удобство их использования.

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

Элементы СУБД здесь также заключаются в наличии:

• простейшего словаря данных;

• возможностей создания модели предметной области в форме совокупности таблиц, связанных между собой простейшим образом;

• средств генерации отчетов и управления доступом пользова­телей.

В структурном составе СУБД в двух последних случаях могут быть выделены ядро и среда (рисунок 3).

Рисунок 3 – Структура систем управления базами данных

Ядро СУБД — программный комплекс (модуль или модули), обеспечивающий непосредственное выполнение физических операций над БД (в ранних системах функции Ядра выполняли програм­мы методов доступа ОС ЭВМ).

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

Утилиты АБД образуют библиотеку программ обслуживания БД в привилегированном режиме (работа пользовательских средств па­раллельно утилитам не разрешена) и выполняют основные функ­ции, к которым относятся:

• физическая подготовка дисковой памяти к размещению БД;

• подготовка справок о составе БД, структуре файлов, количест­ве данных и занимаемом объеме;

• загрузка файла БД из последовательного набора данных ОС;

• дозагрузка (расширение существующего файла);

• модификация БД: расширение или перемещение физических наборов данных, реорганизация;

• модификация файла: добавление новых полей в структуру за­писи; инвертирование полей или освобождение (превращение инвертированных полей в сканируемые);

• выгрузка образа БД для сохранения в архивном наборе дан­ных;

• создание и ведение словаря данных и др.

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

• диалоговые интерфейсы;

• генераторы отчетов;

• система конструирования и поддержки интерактивных техно­логий в информационных системах (ЯП АИС).

Соседние файлы в папке лекции