Лекция 15. Методы оценки стоимости, продолжительности и трудоемкости проекта Проектирование АСОИУ. Цели изучения Приобретение знаний в области прогнозирования объемов работ при выполнении программных проектов Изучение технологии прогнозирования ресурсов проекта на основе метода Боэма Проектирование АСОИУ. Содержание 1. 2. 3. 4. 5. Оценка граничных сроков начала и окончания работ Методы оценки времени, трудоемкости и стоимости работы Размерно-ориентированный метод Функционально-ориентированный метод Метод определения трудоемкости разработки ПО по БОЭМу. 1. Уравнение базисной «COCOMO » 2. Усовершенствованная модель «COCOMO2 » 1. Модель композиции приложений 2. Модель раннего этапа проектирования 3. Модель постархитектур Проектирование АСОИУ. Методы оценки стоимости, продолжительности и трудоемкости проекта. Оценка сроков реализации для подсистем Определяются: Раннее время начала работ Тinmin – самый ранний момент выполнения предшествующих работ. Позднее время начала работ Тinmax – самый поздний момент окончания предшествующих работ. НЕ должен определять запаздывание проекта. Раннее время окончания работ Тoutmin = Тinmin + Треш Позднее время окончания работ Тoutmax = Тinmax + Треш Проектирование АСОИУ. Методы оценки стоимости, продолжительности и трудоемкости проекта Проектирование АСОИУ. Рекомендации по распределению времени между работами: Правило 40-20-40 Первые 40% - это время на определение требований, анализ и проектирование. 20% времени – кодирование. 40% времени – тестирование, отладка. Проектирование АСОИУ. Размерно-ориентированный метод оценки времени, трудоемкости и стоимости конкретной работы Основывается на оценке количества строк кода будущего проекта. LOC (lines of code) Данные по предыдущим проектам сводятся в таблицу. Имя проекта Трудоемкость (чел - мес) Стоимость (тыс. $) KLOC (тыс. строк) Програ ммные документы (стр.) Ошибки (шт.) Люди (чел) А1 24 168 12,1 365 20 3 П2 62 440 27,2 1224 86 5 G1 43 314 20,2 1050 64 6 Проектирование АСОИУ. Расчет показателей производительность Произ = Длина кода (KLOC)/Трудоемкость, [KLOC/чел-мес] качество Качество = Ошибки/Длина кода Ошибки – количество ошибок, обнаруженных в течении года после сдачи проекта в эксплуатацию. удельная стоимость Уд.стоим. = Стоимость/Длина кода документированность Документированность = Программные документы/Длина кода Проектирование АСОИУ. Функционально-ориентированный метод оценки времени, трудоемкости и стоимости работы Используется 5 специальных информационных характеристик: 1.Количество внешних вводов ЭТО- количество процессов, с помощью которых перемещается информация из внешней среды в будущие файлы приложений. Данные могут поступать как с экрана, так и из внешних приложений. 2. Количество внешних выводов ЭТО количество элементарных процессов, перемещающих информацию из внутренних файлов во внешнюю среду, в том числе: Отчеты Производные данные от внутренних файлов Считается, что в рамках формирования внешних выводов используются расчетные функции. 3. Количество внешних запросов ЭТО количество запросов (элементарных процессов), которые поставляют на экран содержание базы данных без преобразований. 4. Количество внутренних логических файлов. 5. Количество внешних (интерфейсных) логических файлов. Проектирование АСОИУ. Таблица «Ранг и оценка сложности внешних вводов» Элементы данных (поля в записи) Количество ссылок на файлы 1-4 5-15 >15 0-1 низкий (3) низкий (3) средний (4) 2 низкий (3) средний (4) высокий (6) >2 средний (4) высокий (6) высокий (6) Проектирование АСОИУ. Для каждого ввода, вывода, запроса на основании таблиц определяется уровень сложности. Все данные сводятся в общую таблицу. Имя характеристики Ранг, сложность, количество низкий средний высокий Внешние вводы □х3= □х4= □х6= Внешние выводы □х4= □х5= □х7= □х7= □ х 10 = □ х 15 = Внешние запросы Внешние файлы логические Внешние файлы логические Общее количество () Проектирование АСОИУ. итого Сложность системы определяется кол-вом функциональных точек 14 FP = Общ. кол-во * (0,65 + 0,01 * ∑Fi) 1 Fi – коэффициенты регулировки сложности. Проектирование АСОИУ. Системный параметр Описание Передача данных Сколько средств связи требуется для обмена информацией с данным приложением Распределенная обработка данных Производительность Требуется ли указать время реакции системы на что-либо. Распространенность используемой конфигурации (платформы) Скорость транзакций On-line’овый ввод данных Эффективность работы конечного пользователя Оперативное обновление файлов в on-line Сложность обработки (расчет, математическая зависимость) Повторная используемость Тиражируемость Легкость инсталляции Легкость эксплуатации Процедуры запуска, резервирования, администрирования Разнообразные условия размещения На различных аппаратных средствах Простота изменений (модификации) Проектирование АСОИУ. Метод Боэма оценки трудоемкости разработки ПО Проектирование АСОИУ. Уравнения БОЭМА Время проекта y=2,5*x^0,35 Трудозатраты Трудозатраты y=3*x^1,12 KLOC Проектирование АСОИУ. Уравнение базисной «COCOMO » E a ( KLOC ) , b E – затраты в [чел/мес] KLOC – количество тысяч строк кода Проектирование АСОИУ. Типы проектов Распространенный – небольшие программные проекты, над которыми работает небольшая группа разработчиков (5-6 чел.) с хорошим стажем работы и система работает в реальном времени. Встроенный – встроенная в оборудование программная система, которая управляет работой оборудования в реальном масштабе времени, предъявляются жесткие временные ограничения Полунезависимые – нечто среднее между двумя предыдущими, средний проект, который выполняется группой разработчиков с разным уровнем подготовки, часть требований жесткие, часть мягкие. Проектирование АСОИУ. Тип проекта a b c d Распространенный 2,4 1,05 2,5 0,38 Полунезависимый 3,0 1,12 2,5 0,35 Встроенный 3,6 1,2 2,5 0,32 Проектирование АСОИУ. Усовершенствованная модель В 1995 г. была введена «COCOMO2», усовершенствованная модель , которая была названа способом анализа в 21 веке. Модель композиции приложений основывается на знании: количества и сложности экранов, количества и сложности отчетов, количества специальных компонент кода. Модель раннего этапа проектирования применяется для начального определения архитектуры, когда начинается определение требований к системе. Модель постархитектур используется тогда, когда архитектура уже определена. Проектирование АСОИУ. Модель композиции приложений Объектный указатель – средство косвенного измерения объекта ПО, основанное на определении необходимых экранов, отчетов и компонент. Тип Кол-во Вес Итого объекта Простой Средний Сложный Экран □ x1 x2 x3 =□ Отчет □ x2 x5 x8 =□ - - Компонент □ а Объектные указатели Проектирование АСОИУ. x 10 =□ ∑□ Оценка сложности экрана Количество представлений Кол-во серверных и клиентских таблиц данных Простой Средний Сложный меньше 3 Простой Простой Средний от 3 до 7 Простой Средний Сложный 8 и более Средний Сложный Сложный Проектирование АСОИУ. Расчет затрат NOP (объектные _ указатели ) [(100 % REUSE ) / 100] где NOP – количество объектных указателей %REUSE - процент повторного использования кода Затраты = NOP/PROD PROD – скорость разработки продукта Опытность коллектива Зрелость среды разработки PROD Очень низкая Очень низкая 4 Низкая Низкая 7 Номинальная Номинальная 13 Высокая Высокая 25 Очень высокая Очень высокая 50 Проектирование АСОИУ. Модель раннего этапа проектирования Затраты A размер b M ЗАТРАТЫавто Проектирование АСОИУ. Выводы В рамках данной лекции изучены модели прогнозирования оценок времени, трудоемкости и стоимости работы с использованием размерно-ориентированного и функционально-ориентированного методов Проектирование АСОИУ. Выводы В рамках данного курса изучены: модели объекта и процесс автоматизации, стандарты и средства, используемые в процессе проектирования, вопросы анализа качества и управления созданием ИС Проектирование АСОИУ. Информационное обеспечение лекции Литература по теме: Технология разработки программного обеспечения. Учебное пособие. 2-е изд./ С.А. Орлов._ СПб,: Питер, 2003. -480с.: ил. Электронный адрес: [email protected] Проектирование АСОИУ. Вопросы 1. 2. 3. На анализе каких данных основывается анализ трудоемкости программного проекта В чем суть размерно-ориентированного метода Чем отличается функционально-ориентированный метод от размерно-ориентированного метода Проектирование АСОИУ. Вопросы 1. 2. 3. 4. 5. 6. Определите метод оценки трудоемкости разработки ПО по БОЭМу. Что представляет собой уравнение базисной «COCOMO» Что представляет собой усовершенствованная модель «COCOMO2 » Что представляет собой модель композиции приложений Что представляет собой Модель раннего этапа проектирования Что представляет собой Модель постархитектур Проектирование АСОИУ.