Проблемно-ориентированные ППП.

Пакеты прикладных программ

Классификация пакетов прикладных программ (ППП) приведена на рис.

Классификация пакетов прикладных программ

 

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

• ППП автоматизированного бухгалтерского учета;

• ППП финансовой деятельности;

• ППП управления персоналом;

• ППП управления производством;

• банковские информационные системы и т. п.

 

Основные тенденции развития:

• создание программных комплексов в виде автоматизированных рабочих мест (АРМ) управленческого персонала;

• создание интегрированных систем управления предметной областью на базе вычислительных сетей, объединяющих АРМы;

• организация данных больших информационных систем в виде распределенной БД на сети ЭВМ;

• наличие простых языков средств конечного пользователя и др.

 

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

К ППП общего назначения относят:

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

2. Серверы БД — это ПО, предназначенное для создания и использования при работе в сети интегрированных БД в архитектуре «клиент — сервер». Многопользовательские СУБД в сетевом варианте обработки информации хранят данные на файл-сервере, специально выделенном компьютере, но сама обработка ведется на рабочих станциях. Общим для различных видов серверов БД является использование реляционного языка SQL (Structured Query Language) для реализации запросов к данным.

3. Генераторы отчетов (серверы отчетов), обеспечивающие реализацию запросов и формирование отчетов в печатном или экранном виде в условиях сети с архитектурой «клиент — сервер». Сервер отчетов подключается к серверу БД, использующему драйверы сервиса БД (Crystal Reports, Profit for Windows).

4. Текстовые процессоры, предназначенные для работы с текстовыми документами. Развитием данного направления являются издательские системы (Microsoft Word).

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

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

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

 

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

Наиболее распространены методы математического программирования, решения дифференциальных уравнений, имитационного моделирования, исследования операций (Storm, SYSTAT, SAS и другие).

 

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

• органайзеры (планировщики) — ПО для планирования рабочего времени, составления протоколов встреч, расписаний, ведение записей и телефонной книжки.

В состав входят: калькулятор, записная книжка, часы, календарь и т. п.

• программы-переводчики, средства проверки орфографии, распознавание текста (Tiger — система распознавания русского языка, Stylus Lingvo Office, содержащий Fine Reader, Stylus for Windows — переводчик на указанный язык, корректор орфографии Lingvo Corrector и резидентный словарь Lingvo);

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

• браузеры, средства создания WWW-страниц;

• средства электронной почты (Pegasys Mail).

 

Настольные издательские системы. Данный класс ПО включает программы (PageMaker, CorelDraw, PhotoShop for Windows и т. д.), обеспечивающие информационную технологию компьютерной издательской деятельности:

• форматирование и редактирование текстов;

• автоматическую разбивку текста на страницы;

• компьютерную верстку печатной страницы;

• монтирование графики;

• подготовку иллюстраций и т. п.

 

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

Системы искусственного интеллекта:

• программы-оболочки для создания экспертных систем путем наполнения баз знаний и правил логического вывода;

• готовые экспертные системы для принятия решений в рамках определенных предметных областей;

 

• системы анализа и распознавания речи, текста и т. п.

 

Содержание фазы разработки

  1. системный анализ;
  2. проектирование;
  3. программирование (кодирование);
  4. отладка и тестирование;

Жизненный цикл программного продукта состоит из трех крупных фаз (рис. 1.1):

1) разработка;

2) использование (эксплуатация);

3) сопровождение и продолжающаяся разработка.

Фазы жизненного цикла программного продукта

В фазе разработки программный продукт разрабатывается и выпускается.

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

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

 

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

 

Фазу разработки обычно разделяют на следующие логические этапы [15, 11]:

1) системный анализ;

2) проектирование;

3) программирование (кодирование);

4) отладка и тестирование;

5) документирование;

6) выпуск.

 

В ЕСПД описываются следующие формальные этапы работ:

1) техническое задание;

2) эскизный проект",

3) технический проект;

4) рабочий проект;

5) внедрение.

 

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

 

В терминах ЕСПД (Единая система программной документации) это этап технического задания.

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

 

Спецификация (ТЗ), полученная на этапе системного анализа, является исходным пунктом в этапе проектирования.

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

 

Этап кодирования при наличии достаточно детального проекта (каковым является технический проект) является рутинным. Фактически, кодирование — это в некоторой степени механический процесс реализации спроектиро­ванных алгоритмов на конкретном языке программирования с использовани­ем конкретного инструментария. Результатом кодирования являются собст­венно программы как в исходном тексте, так и в бинарном виде, пригодном к исполнению.

 

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

 

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

На этапе выпуска продукт проходит испытания по утвержденной методи­ке, после чего поставляется, внедряется или продается.

На проектирование, кодирование и тестирование приходится более 75% стоимости конструирования ПС.

 

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

 

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

Ироническое изображение процесса разработки ПО