Дипломная работа: Автоматизация процесса проверки текущих знаний в ГОУ СОШ №868

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
36
2. Проектная часть
2.1. Разработка проекта автоматизации
2.1.1. Этапы жизненного цикла проекта автоматизации
Для разработки программного обеспечения были разработаны стандарты,
регламентирующие последовательность работ по созданию программных продуктов.
Эти стандарты носят рекомендательный характер и не предписывают четких и
однозначных схем построения структуры жизненного цикла ПО. Международные
стандарты регламентируют перечень видов деятельности, из которых должен состоять
процесс разработки, и вводят ту или иную структуру жизненного цикла разработки ПО.
Существуют стандарты, определяющие различные элементы в структуре
жизненных циклов ПО. Основу таких элементов составляют технологические
процессы – структурированные наборы деятельностей, решающие некоторую общую
задачу или совокупность задач, такие, как процесс определения требований, процесс
разработки, процесс сопровождения ПО, процесс обеспечения качества, процесс
разработки документации, процесс тестирования и пр.
Рекомендуемый состав стадий жизненного цикла программного обеспечения
регламентируют стандарты ISO, которые описывают технологические процессы.
Стандарт ГОСТ Р ИСО/МЭК 12207-2010 «Информационная технология. Системная и
программная инженерия. Процессы жизненного цикла программных средств»
определяет общую структуру жизненного цикла ПО в виде трехуровневой модели,
элементами которой являются процессы, виды деятельности, задачи [2]. Процессы
объединены в четыре группы: основные процессы, поддерживающие процессы,
организационные процессы, адаптация. Процессы состоят из отдельных видов
деятельности.
Стандарт ISO/IEC 15288:2015 «Разработка систем и программного обеспечения
– Процессы жизненного цикла систем» рассматривает программно-аппаратную
систему как единое целое [1]. Стандарт предлагает рассматривать структуру
жизненного цикла ПО как набор групп процессов, каждый из которых описывается
набором результатов, и каждый из результатов достигается при помощи набора
различных видов деятельности. Эффективность разработки ПО в целом зависит от
точности и корректности формулировки требований к программному продукту.
37
Для разработки информационной системы, автоматизирующей процесс
проверки текущих знаний учащихся, будет использован стандарт ГОСТ Р ИСО/МЭК
12207-2010 «Информационная технология. Системная и программная инженерия.
Процессы жизненного цикла программных средств» поскольку он основан на
процессном подходе к разработке программного обеспечения, в его основе лежит
классическая модель разработки ПО и все процессы являются детализированными до
уровня шаблонов проектной документации.
Поскольку стандарт разработки программного обеспечения носит
рекомендательный характер и содержит перечень процессов разработки программного
обеспечения, необходимо выделить этапы разработки информационной системы,
автоматизирующей процесс проверки текущих знаний учащихся. Рассмотрим модели
разработки ПО:
• «Custom Development Method» - методика компании «Oracle»,
применяемая для разработки прикладных информационных систем [3]. Этот метод
является технологическим материалом, детализированным до уровня шаблонов
проектной документации, рассчитанной на применение в проектах компании. Согласно
этому стандарту при разработке программного обеспечения применяется классическая
модель жизненного цикла программного продукта.
• Модель «Rational Unified Process» (RUP) представляет разработку
программного обеспечения в виде итеративной модели жизненного цикла, который
включает следующие фазы: начало, исследование, построение и внедрение [6]. Каждая
фаза жизненного цикла АИС может разбиваться на этапы, называемые итерациями. В
результате осуществления этих этапов происходит выпуск версий программного
продукта для внутреннего или внешнего использования. Прохождение процесса
разработки через четыре этапа называют циклом разработки. Каждый цикл разработки
завершается генерацией версии системы. Если версия системы не удовлетворяет
требованиям пользователя, то разработанный продукт продолжает свое развитие и
проходит те же этапы разработки.
• Модель «Microsoft Solution Framework» (MSF) похожа на модель «RUP»
тем, что делит разработку программного обеспечения на четыре фазы: анализ,
проектирование, разработка, стабилизация [4]. Эта модель является итерационной, что
предполагает использование объектно-ориентированного подхода при моделировании
38
системы. Модель «MSF» в сравнении с моделью «RUP» больше ориентирована на
разработку бизнес- приложений.
• Модель «Extreme Programming» (XP) была создана в 1996 году и является
самой новой среди рассмотренных моделей [7]. Основу этой модели составляет
командная работа, с организацией эффективной коммуникацией между заказчиком и
разработчиком во время всей разработки АИС. При этом разработка АИС проводится
с использованием последовательно разрабатываемых прототипов АИС.
Рассмотрим модели жизненного цикла разработки программного обеспечения.
Когда программные продукты только начали разрабатываться, они имели однородную
структуру и каждое приложение являлось единым целым. Поэтому для разработки
программных продуктов такого типа применялась каскадная модель жизненного цикла
программного обеспечения.
Основной характеристикой этой модели является деление всего процесса
разработки программного обеспечения на ряд этапов. При этом переходы между
этапами осуществлялись только после полного завершения работ на текущем этапе.
Каждый этап каскадной модели завершался выпуском полного пакета проектной
документации, которой достаточно для продолжения процесса разработки другой
командой разработчиков.
Каскадная модель была разработана в 1970 году, и она являлась первой моделью,
которая формализовала структуру этапов разработки ПО, что придавало особое
значение исходным требованиям к программному обеспечению и этапу
проектирования системы, а также созданию документации на ранних этапах процесса
разработки. Структура каскадной модели представлена на рисунке 11.
Рисунок 11. Структура каскадной модели жизненного цикла
программного обеспечения
39
На схеме этапов каскадной модели жизненного цикла программного
обеспечения видно, что процесс разработки осуществляется при помощи
упорядоченной последовательности шагов. Каскадная модель предусматривает начало
каждой фазы только тогда, когда полностью завершается выполнение предыдущей
фазы. При этом у каждой фазы есть определенные критерии входа и выхода: входные
и выходные данные.
Требования к проектируемой АИС определяются на стадии анализа и затем
документируются в техническом задании, которое является опорным документом при
создании АИС. Каждая стадия каскадной модели должна завершаться выпуском
полного комплекта проектной документации, которая включает в себя:
1. Техническое задание;
2. Эскизный проект;
3. Технический проект;
4. Рабочую программу.
Перечисленный пакет документов является достаточным для продолжения
процесса разработки другой командой разработчиков. Критерий качества при
использовании каскадной модели жизненного цикла программного обеспечения –
точное соответствие спецификациям технического задания на разработку АИС. При
этом особое внимание разработчики уделяют достижению оптимального значения
технических характеристик разрабатываемой АИС: производительности, объема
занимаемой памяти и т.д.
Переход от одного этапа проекта к другому осуществляется с помощью
формального обзора проекта. При этом клиент получает общее представление о
процессе разработки, а также происходит проверка качества программного продукта.
Как правило, стадия обзора проекта указывает на присутствие договоренности между
командами разработчиков и заказчиков о завершении текущей фазы. Окончание
каждого этапа разработки АИС удобно принимать за стадию в процессе выполнения
проекта.
При завершении определенных фаз проекта происходит формировании базовой
линии, которая в данной точке осуществляет фиксацию состояния АИС. При
возникновении потребности во внесении изменения в проект, используется
формальный процесс изменений.
40
В критических точках каскадной модели жизненного цикла программного
продукта происходит формирование базовых линий, последняя из которых является
базовой линией продукта. После формирования заключительной базовой линии
производится обзор приемки.
С ростом объема коммерческих проектов разработки программных продуктов
было установлено, что детальная проработка проекта разрабатываемой системы не
всегда удается на этапе анализа, потому что многие аспекты функционирования АИС
в динамических сферах деятельности меняются во время создания информационной
системы. В связи с этим потребовалось внесение изменений в процесс разработки АИС
таким образом, чтобы гарантировалось внесение необходимых исправлений после
завершения какого-либо этапа разработки. Это послужило созданию итерационной
модели жизненного цикла программного продукта.
Каскадная модель жизненного цикла разработки АИС являлась идеальной,
поскольку только очень простые проекты проходили все этапы создания ПО без
участия в каких-либо итерациях — возвратов на предыдущие этапы разработки
программных средств. Например, на этапе программирования могло быть обнаружено,
что реализация некоторой функции является очень громоздкой, неэффективной и
вступает в противоречие с требуемой от системы производительностью. В таких
случаях может потребоваться перепроектирование или переделка спецификаций
требований к АИС. При разработке больших АИС необходимость в итерациях может
возникать регулярно на любой стадии жизненного цикла как из-за допущенных на
предыдущих шагах ошибок и неточностей, так и из-за изменений внешних требований
к условиям эксплуатации системы.
Итерационную модель также называют моделью с промежуточным контролем
или моделью с циклическим повторением фаз. Структура итерационной модели
представлена на рисунке 12. Рассмотрим этапы спиральной модели:
1. На этапе планирования осуществляется определение целей, вариантов и
ограничений проекта.
2. На этапе анализа риска осуществляется анализ вариантов и
распознавание/выбор риска проекта.
Источник: https://baza.diplomsite.ru/previewfile/2131