Жизненный цикл ПО(Этапы решения задач на ЭВМ).

 

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

1. По числу пользователей различают тиражное ПО и ПО проекта.

Тиражное ПО производится для широкого круга пользователей, т.е. для того, чтобы его могли использовать во многих местах различные пользователи. Поэтому у него нет конкретных "заказчиков", а решение о начале разработки принимается исходя из предполагаемого рыночного спроса. К такому ПО можно отнести инструментальные системы: текстовые процессоры, электронные таблицы, СУБД, электронные словари и т.д. Есть только пользователи.

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

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

3. По масштабу различают небольшой проект (до 10 разработчиков в течение 3-6 месяцев), средний (20-30 разработчиков в течение 1-2 лет), крупномасштабный (100-300 разработчиков в течение 3-5 лет) и гигансткий проект (1000-3000 человек, 7-10 лет

4. По длительности жизненного цикла ПО делится на два класса: с малым и большим временем жизни.

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

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

Развитие ВТ постоянно расширяет классы задач, решаемых на ЭВМ, и связанных с обработкой информации различного характера.

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

1) Вычислительные задачи, связанные с обработкой числовой информации. К ним относится, например, задача решения системы линейных уравнений большой размерности. Раньше была основной, доминирующей областью использования ЭВМ.

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

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

4) Задачи по обработке алфавитно-цивровой информации – ИС. В настоящее время стало одной из основных областей применеия ЭВМ и задачи все усложняются.

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

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

Знания, методы и средства могут использоваться в разных процессах и, следовательно, технологиях.

Технологии удобно характеризовать в двух измерениях – вертикальном (представляющем процессы) и горизонтальном (представляющем стадии).

Рисунок

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

Рисунок

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

Рисунок.

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

Разработка ПО подчиняется определенному жизненному циклу.

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

а) морального старения;

б) потери необходимости решения соответствующих задач.

Технологические подходы – это механизмы реализации жизненного цикла.