Определение. Этапы развития
Прикладной называют программу для решения конкретной задачи пользователя. С развитием компьютерных технологий были выделены наборы взаимосвязанных задач, которые требовалось решать в интересах определенных групп пользователей. Естественно было объединить прикладные программы связанных задач в комплекс программ, разработать такой комплекс централизованно и поставлять его отдельным пользователям и заинтересованным организациям. С конца 1960-х годов многофункциональные комплексы взаимосвязанных программ стали называть пакетами прикладных программ (ППП). Формальной границы между прикладной программой и ППП нет, поскольку любой ППП можно рассматривать как прикладную программу. По мере разработки все большего числа прикладных программ появлялись и новые определения того, что следует понимать под пакетом программ. Вместе с тем концепция ППП, переход от отдельных программ к пакетам - это переход к новому качеству прикладного программного обеспечения (ПО). Рассмотрим концепцию ППП на примере программ для решения расчетных задач. Все многообразие прикладного ПО можно разделить на два больших класса: «расчетчики» и «анализаторы». Расчетными будем называть задачи, в которых входные и выходные данные являются числовыми, решение задачи получается в результате применения математических методов. К расчетным задачам можно отнести выполнение расчетов по формулам, решение систем линейных и нелинейных уравнений, численное дифференцирование и интегрирование, определение экстремумов функций и т.п. Исходные данные для решения расчетной задачи могут задаваться или все сразу в начале выполнения программы, или поступать порциями (записями, сообщениями). Решение многих расчетных задач укладывается в типовую схему, включающую последовательные шаги ввода исходных данных, выполнения вычислений и вывода результатов. В ряде случаев решение расчетных задач сводится к последовательному применению нескольких алгоритмов (программ). Например, при решении систем обыкновенных дифференциальных уравнений может потребоваться сначала провести расчет начальных условий и коэффициентов уравнений, а затем вычислить обобщенные характеристики исследуемого процесса по заданным формулам. Можно выделить несколько типовых подходов к организации применения ЭВМ для решения расчетных задач. Эти подходы, рассматриваемые в историческом плане, можно считать этапами развития ППП: 1. При возникновении потребности в решении конкретной задачи составляется и отлаживается программа или несколько последовательно выполняемых программ. Для программирования используется один из универсальных языков программирования (Basic, Pascal, Fortran, С, C++, Assembler и т.д.). 2. Заранее составляются подпрограммы реализации типовых шагов алгоритмов, например, для реализации методов численного анализа, преобразования форм представления данных и т.п. Такие готовые подпрограммы накапливаются в форме исходных или объектных модулей в библиотеке. При составлении прикладной программы в нее включаются обращения к библиотечным подпрограммам. Сами библиотечные подпрограммы присоединяются к прикладной программе в процессе трансляции (исходные модули) или при редактировании связей (объектные модули). Библиотеку готовых подпрограмм уже можно рассматривать как ППП, используемый совместно с прикладной программой. 3. Для совокупности родственных задач разрабатывается ППП, охватывающий некоторую предметную область. Здесь ППП - это совокупность программных модулей, между которыми установлены связи по управлению и по данным в соответствии с решаемой прикладной задачей. Модули пакета могут объединяться в программы, а программы - использовать общие файлы данных. Для запуска программ пакета в нужной последовательности могут использоваться средства операционной системы. Для решения новой прикладной задачи нужно готовить соответствующие исходные данные и разрабатывать последовательность обращений к операционной системе (ОС) для выполнения программ пакета в требуемой последовательности. 4. Дальнейшим развитием ППП стало построение пакетов с собственным языком управления - входным языком пакета (ВЯ). От пользователя требуется составление описания задачи, которую требуется решить на ВЯ пакета и подготовка необходимых данных. Для запуска такого пакета обычно требуются минимальные сведения об используемой ОС. Перечисленные выше четыре подхода к применению ЭВМ предполагают различную квалификацию пользователей. Для реализации первого подхода требуется знание языка программирования, языка управления ОС и знание прикладной предметной области. То есть первый подход типичен для специалиста в области прикладного программирования. Это в полной мере относится и ко второму подходу, где применение библиотек подпрограмм обеспечивает повышение производительности труда прикладного программиста. В третьем подходе функции прикладного программиста и пользователя пакета разделены. Прикладной программист разрабатывает пакет программ, для чего обычно требуется более высокий уровень квалификации, чем для разработки отдельных программ. От пользователя пакета требуются знание правил применения пакета и квалификация в той предметной области, к которой относятся задачи, решаемые с применением пакета, а также ограниченные сведения об используемой ОС. Четвертый подход требует от пользователя пакета еще меньшей квалификации в области программирования, для него достаточно изучить сравнительно несложный входной язык пакета. В настоящее время термин «пакет прикладных программ» применяется к комплексам программ различной сложности и назначения. Отметим, что наряду с этим термином все чаще используются понятия программного приложения или информационно-вычислительной системы. ППП - это совокупность совместимых программ для решения задач определенного класса. ППП всегда ориентируется на пользователей определенной квалификации, как в программировании, так и в области, к которой относятся задачи, решаемые с применением этого ППП. Совместимость программ, составляющих ППП, означает возможность их взаимного использования, общность структуры управляющих данных и используемых информационных массивов. Кроме того, ППП следует рассматривать как самостоятельное программное изделие, как особый вид прикладного ПО. Исходя из определения, можно выделить некоторые общие свойства ППП: 1. Пакет состоит из нескольких программных единиц. 2. Пакет предназначен для решения определенного класса задач, и в пределах своего класса обладает определенной универсальностью, т.е. позволяет решать большинство задач этого класса. 3. Пакет допускает настройку на конкретные условия применения, т.е. в пакете предусмотрены средства управления, позволяющие выбирать конкретные возможности из числа предусмотренных. 4. Пакет разработан с учетом возможности его использования за пределами той организации, в которой он создан, и удовлетворяет общим требованиям к программному изделию: ü соответствует существующим стандартам; ü снабжается пользовательской документацией; ü допускает возможность послепродажного обслуживания; ü имеет установленную цену; ü документация и способы применения пакета ориентированы на пользователя, имеющего определенный уровень квалификации в той области знаний, к которой относятся решаемые пакетом задачи. Поскольку ППП предназначен для решения задач определенного класса, можно говорить о функциональном назначении пакета. Классификация ППП Классификация ППП по их функциональному назначению приведена на рис. 1 Рис. 1. Классификация пакетов прикладных программ. Рассмотрим каждый пакет подробнее.
|