Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
55
Добавлен:
10.02.2015
Размер:
199.68 Кб
Скачать

12

Лекция 22. Этап «Разработка» программных продуктов

«Разработка» — одна из стадий модели процесса разработки программ. Она следует за стадией «Планирование», которая завершается одобрением плана проекта. На стадии «Разработка» основная задача — выполнение проекта.

Стадия «Разработка» завершается написанием кода и выпуском первой версии приложения. Результаты этапа «Завершение разработки» таковы:

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

    • продукт прошел первоначальное тестирование; продолжается устранение выявленных ошибок (завершение этой работы на данном этапе не обязательно);

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

    • завершена подготовка к тестированию производительности продукта и его стабилизации.

Рис. 1 Стадия разработки

Эта стадия Разработка завершается, когда подготовлены пересмотренные варианты этих документов, а также:

    • исходный код и исполняемые модули проекта;

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

    • основные составляющие процесса тестирования.

Проектирование архитектуры продукта на стадии «Проектирование» определяет успех его реализации на стадии «Разработка». Стив Макконнелл в своей книге «Software Project Survival Guide» описывает связь этих стадий, сравнивая их с движением против течения реки и по течению. Разработка архитектуры на стадии «Планирование», считает он, похожа на движение вверх по течению — чем выше вы заберетесь, тем проще будет сплавляться вниз на стадии «Разработка».

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

График проекта описывает предварительный распорядок работ на стадии «Разработка».

Функциональные спецификации описывают концептуальный, логический и физический проекты приложения, представляющие собой основу кодирования.

Анализ и управление рисками продолжается на стадии «•Разработка», поскольку не исключено как появление новых, так и изменение уже известных факторов риска. План разработки реализуется последовательно через промежуточные этапы.

Например, отдельный элемент архитектуры решения по мере перехода от разработки концепции к проектированию и затем к разработке может «вылиться» сначала в десяток вариантов физического проекта, а затем - в сотни строк кода. При переходе от проектирования к кодированию проектная группа не способна сразу создать код всех функций, сервисов и объектов - ясно, что это делается последовательно. По мере завершения кодирования отдельные фрагменты связывают друг с другом, создавая приложение.

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

Основная цель стадии «Разработка» - согласие всех участников проекта с тем, что реализованы все запланированные функциональные возможности продукта. Кроме того, заказчик и проектная группа должны принять решение о том, что реализация всех элементов и продукта в целом завершена.

На стадии «Разработка» все участники проектной группы выполняют свои функции, а также выявляют риски и управляют ими. Каждый член группы выполняет свои обязанности, что в сочетании обеспечивает успешное выполнение стадии «Разработка»,

Менеджер продукта — отвечает за выполнение требований заказчика, информирует заказчика и других участников проекта о состоянии проекта и продукта, готовит пользователей к выпуску альфа- и бета-версий.

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

Разработчики — пишут код, реализующий все запланированные функциональные возможности продукта, выполняют предварительное тестирование кода и функциональных возможностей, отвечают за создание альфа- и бета-версий продукта, а также первой окончательной версии в конце этапа «Завершение разработки».

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

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

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

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

Соседние файлы в папке Лекции разработка ПО