Трудоемкость работ на этапе Анализа оценивается на основании указанных в п. 3.3.2.1 подэтапов, а также в соответствии с количеством экспертов, которых предполагается интервьюировать.
Работы на этом этапе рекомендуется выполнять группе аналитиков – специалистов по исследуемой предметной области, по информационным технологиям, которые предполагается использовать в проекте, по методологиям обследования и проектирования (3-6 человек, при ограниченных сроках - больше).
Проектирование
Назначение и особенности
На этапе Проектирования создаются документы, на основании которых программисты будут разрабатывать компоненты системы, а затем внедрять готовую систему.
Состав этапа (подэтапы)
Выходные документы
На этом этапе разрабатываются следующие модели и методики:
· «Модель данных» или «Информационная модель». Документ содержит:
· описание архитектуры БД (серверы, клиенты, обмен данными, доступ к данным, сегменты данных);
· описание объектов системы и их взаимосвязей;
|
|
· концептуальные и физические ER-диаграммы.
· «Методики информационного наполнения» - методики сбора и обработки исходных данных (для тестирования и внедрения). Документ разрабатывается вслед за Моделью данных.
· «(Программная) архитектура» или «Функциональная модель» - описание компонентов системы, их группировки и взаимосвязей.
· «Модель представления интерфейса» - описание структуры экранных форм и отчетов, бизнес-логики процедур преобразования входных и выходных данных.
· «Модель процессов» - описание работы системы и с системой на этапах внедрения и эксплуатации, сопровождаемое диаграммами DFD или UML.
· «Спецификация на программирование» - описание входных и выходных параметров, обработки исключительных ситуаций модулями и функциями системы.
· «Методики функционального наполнения» или «Встраивание в бизнес-процессы» - варианты планов дальнейшего расширения функциональных возможностей системы, описание перспектив ее развития.
· «Технические требования» - требования к аппаратной части и программному окружению серверов и рабочих мест. Предназначено для тестировщиков и клиентов (в первую очередь – администраторам системы).
Трудоемкость и состав исполнителей
Реализация
Назначение и особенности
Назначением этапа является создание БД, кодирование, тестирование и документирование разработанной системы.
Состав этапа (подэтапы)
1. Разработка модулей системы в соответствии с требованиями ТЗ и проекта.
2. Разработка тестов.
3. Подготовка тестовой БД (заполнение системы минимально необходимым для стендовых испытаний набором данных).
|
|
4. Стендовое тестирование и доработка.
5. Опытная эксплуатация («пилотное» внедрение системы на реальном предприятии).
Выходные документы
Выходные документы:
· Новая техническая документация на модифицированные серверную и клиентскую части системы, новые подсистемы:
· Описание системы.
· Руководство пользователя.
· Руководство администратора.
· Задание на тестирование (планы тестирования модулей и системы).
· Отчет о тестировании и выявленных несоответствиях ТЗ.
· Отчет по ликвидации ошибок и несоответствий ТЗ.
· Отчет о результатах пилотного внедрения (о соответствии работы системы требованиям ТЗ).
Трудоемкость и состав исполнителей
Внедрение
Назначение и особенности
Этот этап включает в себя работы по инсталляции и настройке системы, обучению пользователей, оказанию консультаций на начальной фазе эксплуатации системы (в первую очередь, при вводе данных) и пр.
Состав этапа (подэтапы)
1. Сбор данных.
2. Создание справочников, классификаторов, кодификаторов.
3. Наполнение БД системы производственными и др. (например, географическими) данными.
4. Конфигурирование системы для решения задач предметной области (встраивание в бизнес-процессы).
Выходные документы
Выходные документы:
· Отчет о наполнении системы данными.
· Отчет о соответствии работы системы требованиям ТЗ.
Трудоемкость и состав исполнителей
Сопровождение и развитие
Назначение и особенности
Назначение этапа состоит в сопровождении промышленной эксплуатации системы (абонентском обслуживании), главным образом в устранении проблем при эксплуатации системы и ее развитие включает в себя следующие основные работы:
· оказание консультаций.
· регистрация, диагностика и локализация ошибок;
· исправление ошибок и тестирование;
· проведение доработок и тестирование;
· тиражирование и распространение новых версий ПО в места его эксплуатации;
· перенос приложений на новую платформу и масштабирование системы.
· приведение системы в соответствие с изменившимися бизнес-процессами (в оговоренных объемах).
Исполнительные документы
Выходные документы:
· Договор на абонентское обслуживание.
· Журнал регистрации консультаций.
· Журнал регистрации и устранения ошибок.
· Журнал регистрации доработок и тиражирования обновленных релизов (с указанием инициаторов доработок).
· Технические задания на доработку системы (в рамках абонентского обслуживания).
Трудоемкость и состав исполнителей
Развитие
Назначение этапа состоит в развитии программного продукта в объемах, превосходящих задачи абонентского обслуживания системы.
Фактически, этот этап является итерацией ЖЦ системы с какого-либо этапа (в основном – с этапа ее проектирования, а иногда даже обследования), в то время как доработка системы в рамках абонентского обслуживания – в основном, итерация с этапа ее реализации.
Оценка сроков работ
В соответствии с указанной методологией, опытом нашей и ряда других фирм можно оценить долевую часть каждого этапа работ и их примерную продолжительность (для среднего проекта).
По поводу распределения времени в проекте Брукс в своей книге «Мифический человеко-месяц» приводит следующие эмпирические данные для этапов разработки информационных систем:
· 1/3 – планирование (этапы Стратегии, Анализа и Проектирования).
· 1/6 - написание программ (начало этапа Реализации).
· 1/4 - тестирование компонентов и предварительное системное тестирование (завершение этапа Реализации).
· 1/4 - системное тестирование при наличии всех компонентов (завершение этапа Реализации).
|
|
Таким образом, этап Реализации занимает 2/3 времени ЖЦ ПО, причем работы по тестированию – 50% времени ЖЦ ПО.
Далее, условно будем считать, что:
· Малые проекты: несложные АРМ (типа «Кадры»).
· Средние проекты, например:
· сложные АРМ (например, «Бухгалтерия», «Операционный день банка»);
· АСУ (например, системы диспетчеризации);
· ГИС;
· САПР;
· системы паспортизации;
· контроля исполнения договоров и т.д.
· Крупные проекты: проект масштаба всего предприятия (ERP-система) и т.д.
Для среднего проекта оценка трудоемкости выглядит следующим образом:
· Стратегия: 1-2 недели.
· Анализ (бизнес-обследование): от 4 месяцев.
· Проектирование: от 4 месяцев.
· Реализация (кодирование и тестирование) – не менее 7 месяцев.
· Внедрение и обучение– от 1 недели до 1 месяца (с полным вводом данных) в 1 филиале.
Итого, на анализ предметной области, проектирование и реализацию среднего проекта необходимо не менее 15 месяцев.
Приведем более детальную схему работ по указанным этапам.
· Стратегия – 1-2 недели:
· Разработка предварительной версии «Технического задания» - 4-7 дней.
· Разработка предварительной версии «Календарного плана» (в документе точно оцениваются только работы на этапе Анализа) – 1 день.
· Разработка предварительной версии «Сметы» (в документе точно оцениваются только работы на этапе Анализа) – 1-3 дня.
· Согласование и утверждение «Договора о проведении обследования» (для этапа Анализа) – 1-3 дня.
· Согласование и утверждение «Соглашения о конфиденциальности» – 1-2 дня.
· Анализ – 4-6 месяцев:
· Интервьюирование экспертов, протоколирование интервью и утверждение протоколов – от 3 недель (на каждого эксперта 2-3 дня, всего интервьюируется не менее 10 экспертов).
· Разработка Модели предметной области – 9-10 недель:
· Обзор предметной области – 2 недели.
· Организационная структура предприятия – 1-2 дня.
· Эксплуатируемые информационные системы – 1 неделя.
· Словарь терминов – 1-2 недели.
· Составление диаграмм бизнес-процессов и их уточнение у экспертов – от 1 месяца.
· Описание первичных данных (потоков между бизнес-процессами) – 2-3 дня.
|
|
· Разработка Концепции системы - около 1 месяца:
· Обзор существующих систем – 2-3 дня.
· Экономическое обоснование целесообразности проекта – 1-2 дня.
· Уточненные технические требования – 1 неделя.
· Стратегия проектирования системы (фактически, наметки ко всем 8 будущим проектным документам, по 2-3 дня для каждого) – 16-24 дня.
· Составление окончательной документации на последующие этапы – 1-2 недели:
· Разработка Технического задания – от 2-3 дней.
· Составление Календарного плана работ – 1-2 дня.
· Калькуляция работ - 2-5 дней.
· Составление и согласование Договора на проектирование, разработку и внедрение системы - 2-5 дней.
· Проектирование – от 4 месяцев:
· Разработка Модели данных (архитектура базы данных и ER-диаграммы с описанием) – от 3 недель.
· Разработка Методик информационного наполнения (для тестирования и внедрения) – 1 неделя.
· Разработка Программной архитектуры (описание компонентов и их взаимосвязей) – от 2 недель.
· Разработка Модели представления интерфейса (структура экранных форм и отчетов, бизнес-логика процедур преобразования данных) – от 3 недель.
· Разработка Модели процессов системы (DFD-диаграммы и описание работы системы на этапах внедрения и эксплуатации) – от 2 недель.
· Разработка Спецификации на программирование (модулей и функций) – от 3 недель.
· Разработка Методологии встраивания системы в бизнес-процессы (план расширения функциональных возможностей системы и описание перспектив ее развития) – 1 неделя.
· Разработка Технических требований к аппаратной части и программному окружению серверов и рабочих мест (для тестировщиков и клиентов) – 1 неделя.
· Реализация – от 7 месяцев (наиболее сложный этап для ориентировочной оценки):
· Кодирование компонент (модулей, драйверов, инструментов и пр.) – от 3 месяцев (зависит от количества компонент).
· Тестирование и доработка компонент – от 1 месяца (в среднем, 30% от этапа кодирования).
· Создание скриптов и генерация базы данных – от 1-3 месяцев, в т.ч.:
· Создание скриптов генерации табличных пространств и настройка конфигурационных параметров БД – 1 неделя.
· Создание скриптов генерации таблиц, последовательностей, индексов, несложных триггеров и функций – 1 неделя.
· Создание скриптов настройки репликации – 1 неделя.
· Разработка запросов к БД (на выборку данных для отчетов и пр.) – от 1 месяца.
· Разработка хранимых процедур – от 1 месяца.
· Информационное наполнение системы для стендового испытания – 1 неделя.
· Стендовое тестирование и доработка системы – от 1 месяца, в т.ч.:
· Тестирование и оптимизация запросов на выборку данных
· Тестирование транзакций при добавлении, изменении, удалении данных на правильную работу последовательностей, ограничений, триггеров, функций и пр.; исправление ошибок, оптимизация запросов и настройка БД, подготовка отчета – от 2 недель.
· Тестирование и настройка обмена данными для распределенной БД (репликации); исправление ошибок, оптимизация запросов и настройка БД, подготовка отчета – от 2 недель.
· Подготовка документации (описание системы, руководство пользователя, и руководство администратора с приложениями) – от 1 месяца.
· Внедрение в одном филиале – от 1 месяца:
· Инсталляция системы на рабочих местах пользователей и администратора – 1 неделя.
· Сопровождение пользователей при наполнении системы – 1-2 недели.
· Устранение проблем (если таковые будут) – до 1 недели.
· Обучение пользователей и администратора – до 1 недели.
· Подготовка и утверждение приемо-сдаточных актов – 1-3 дня.
Общий план работ
Наглядное представления по этапам жизненного цикла нового ПО (на примере средних проектов), их результатам (отчетным документам), трудоемкости и продолжительности дает следующая таблица:
№ | Этапы и подэтапы | Документы (в скобках – трудоемкость разработки, ЧМ) | Трудо-ёмкость (ЧМ) | Продол-житель-ность (мес) | Персонал |
1. | Стратегия | · Описание общих требований (0,5) · Календарный план НИР · Смета затрат по НИР · Соглашение о конфиденциальности · Договор о проведении обследования | 1 | 0,5 | 3 (рук-тель, гл.бухгалтер, аналитик) |
2. | Анализ | · Протоколы интервью (2-3) · Модель предметной области (3) · Концепция (3) · Техническое задание (1,5-2) · Календарный план (0,5) · Калькуляция работ (0,5) · Договор (0,5) | 12 | От 4 | 3 аналитика (и более) |
3 | Проекти-рование | · Информационная модель (3) · Методика наполнения (1-2) · Функциональная модель (2) · Модель интерфейса (2) · Модель процессов (2) · Спецификация (2-3) · Методика встраивания в БП (1) | 15 | От 4 | 4 аналитика (и более) |
4. | Реализация | · Описание системы (0,5) · Руководство пользователя (1) · Руководство администратора (1) · Отчеты о стендовых испытаниях и результатах пилотного внедрения (1) | 20 | От 7 | 4 (аналитик, прогр-сты) |
Итого по этапам 1-4 | 48 | От 15 | От 4 | ||
5. | Внедрение | · Отчет о наполнении системы данными. · Отчет о соответствии работы системы требованиям ТЗ. | Около 1 мес. на 1 объект | 2 (прогр-сты клиента и сервера или прогр-ст и оператор) |