Как рассчитать трудоемкость программы

Калькуляторы оценки трудоемкости предназначены для планирования трудозатрат на программном проекте.

Для этой задачи служат

  • калькулятор оценки трудоемкости проектирования программного обеспечения (оценка задач аналитика);
  • калькулятор оценки трудоемкости разработки программного обеспечения (оценка задач программиста).

В калькуляторах используется методика расчета PERT. Эта методика подразумевает наличие неопределённости трудоемкости выполнения отдельных работ.

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

Инженерный метод оценки трудоемкости проекта PERT (Program / Project Evaluation and Review Technique) был разработан в 1958 году в ходе проекта по созданию баллистических ракет морского базирования «Поларис».

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

Формула труда или как рассчитать эффективную численность персонала

  • Mi — наиболее вероятная оценка трудозатрат.
  • Oi — минимально возможные трудозатраты на реализацию пакета работ. Ни один риск не реализовался. Быстрее точно не сделаем. Вероятность такого, что мы уложимся в эти затраты, равна 0.
  • Pi — пессимистическая оценка трудозатрат. Все риски реализовались.

Оценку средней трудоемкости по каждому элементарному пакету можно определить по формуле:

Ei = (Pi + 4Mi + Oi)/6.

Для расчета среднеквадратичного отклонения используется формула:

CKOi = (Pi — Oi)/6.

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

А среднеквадратичное отклонение для оценки суммарной трудоемкости будет составлять:

Тогда для оценки суммарной трудоемкости проекта, которую мы не превысим с вероятностью 95%, можно применить формулу:

Это значит, что вероятность того, что проект превысит данную оценку трудоемкости составляет всего 5%. А это уже вполне приемлемая оценка, под которой может расписаться профессиональный менеджер.

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

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

  • номенклатура типовых работ аналитика по проектированию программного обеспечения ;
  • номенклатура типовых работ программиста по разработке программного обеспечнения.

Однако существование предопределенного перечня работ не ограничивает вас в измении формулировок этих работ, которые необходимы именно для вашего проекта.

Производительность труда. Понятие и методы расчета

Назначение кнопок приведено на риcунке ниже.

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

Полученный расчет можно скопировать в буфер и разместить в описании задачи JIRA.

Источник: jiraved.ru

1.1 Расчет трудоемкости разработки программного продукта

Базовый показатель для определения составляющих затрат труда вычис­ляется по формуле:

(1)

где q — число операторов (исходных команд) в программном продукте (1086);

с — коэффициент сложности программы;

р — коэффициент коррекции программы в ходе ее разработки, зависит от точности и корректности поставленной задачи (0,6).

Читайте также:
Не открывает программы на весь экран

Коэффициент сложности программы определяется из таблицы 1 на пере­сечении «группы сложности» и «степени новизны». При этом новизна опреде­ляется по принципу:

А — разработка принципиально новых задач,

Б — разработка оригинальных программ,

В — разработка программ с использованием типовых решений,

Г — разовая типовая задача.

Сложность определяется исходя из типа решаемых задач:

  1. — алгоритмы оптимизации и моделирования систем,
  2. — задачи учета, отчетности и статистики,
  3. — стандартные алгоритмы.

Кроме того, в таблице указан коэффициент недостаточности описания программы, который потребуется при расчете затрат труда на исследование ал­горитма решения задачи. Таблица 1 — Коэффициенты расчета трудоемкости

Язык программирования Группа сложности Степень новизны Коэффи­циент В
А Б В Г
Высокого уровня 1 1,38 1,26 1,15 0,69 1,2
2 1,30 1,19 1,08 0,65 1,35
3 1,20 1,10 1,00 0,60 1,5
Низкого уровня 1 1,58 1,45 1,32 0,79 1,2
2 1,49 1,37 1,24 0,74 1,35
3 1,38 1,26 1,15 0,69 1,5

Уровень написания программного продукта (язык программирования) группа сложности и степень новизны программы определяются на основе дан­ных приложения 1. Затем по формуле определяется базовый показатель Q. Далее, рассчитаем составляющие затраты труда, среди которых выделя­ют: затраты труда на подготовку и описание алгоритма, затраты труда на ис­следование алгоритма, затраты труда на разработку алгоритма, затраты труда на программирование и отладку и затраты труда на подготовку документации. Затраты труда на подготовку и описание задачи может определяться эм­пирически или по формуле: ton=(Tmin+4THB+Tmax)/6 (2) где Ттах — трудоемкость операции в наиболее неблагоприятных условиях (пессимистическая оценка); Tmin- трудоемкость операции при благоприятных условиях (оптимисти­ческая оценка); — ; :Тнв~ трудоемкость операции при нормальных условиях (наиболее веро­ятная оценка). Ориентировочные величины оценки трудоемкости операций по подго­товке описания задачи в зависимости от числа операторов q приводятся в таб­лице 2. Таблица 2 — Затраты времени на подготовку описания задачи

Число операторов Т min Тнв Т max
100-400 10 15 20
500-900 20 35 50
1000-1400 25 50 75
1500-1900 30 60 90
2000-2400 40 70 100
2500-2900 50 80 110
5000-9000 70 110 150
10000 100 150 200

Затраты труда на исследование алгоритма решения задачи определяются формулой: (3) где Q — базовый коэффициент, В — коэффициент недостаточности описания задачи, который берется из таблицы 1; к- коэффициент квалификации, зависит от опыта программиста. На основе исходных данных приложения 2 по таблице 3 определяем ко­эффициент к. Таблица 3 — Коэффициенты квалификации программиста

Опыт работы Коэффициент квалификации
до 2 лет 0,8
2-3 года 1
3-5 лет 1.1-1.2
5-7 лет 1.3- 1.4
более 7 лет 1.5-1.6

Таким образом, рассчитываем затраты труда на исследование алгоритма решения задачи: Затраты труда на разработку диаграмм, описывающих систему: (4) Затраты труда на программирование системы и отладку вычисляются по формулам: (5) (6) Затраты труда на подготовку документов по задаче состоят из затрат труда на подготовку и времени на оформление документов и вычисляются по формуле: (7) Суммарные затраты труда рассчитываются как сумма составных затрат труда по формуле: (8)

Источник: studfile.net

Определение затрат труда на разработку ИС

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

Рассмотрим несколько способов расчета трудоемкости работ.

Способ 1. Расчет трудоемкости методом экспресс — оценки

Читайте также:
Программа битрикс 24 как работать

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

Под исходной командой понимается физически представимая строка на экране дисплея (n).

Для быстрой приближенной оценки может использоваться базовая модель. Она состоит из двух простейших формул для каждого из трех типов программных продуктов – независимого, полунезависимого и встроенного (см. табл. 1. 5).

Уравнения базовой модели для оценки трудоемкости
и продолжительности разработки программного продукта

Тип программного продукта Трудоемкость разработки t, чел.-мес. Продолжительность разработки T, мес.
Независимый t = 2,4 · n 1,05 T = 2,5 · t 0,38
Полунезависимый t = 3,0 · n 1,12 T = 2,5 · t 0,35
Встроенный t = 3,6 · n 1,20 T = 2,5 · t 0,32

Способ 2. Расчет трудоемкости методом уточненной модели

Для более точного определения трудоемкости разработки программного продукта по отдельным элементам и операциям процесса может быть исполь­зован метод, в котором составляющие затраты труда определяются с учетом особенностей организации, ведущей разработку, и основных параметров программного продукта:

— степени новизны задачи,

— количества разновидностей входной и выходной информации,

— сложность организации контроля входной и выходной информации,

— использования стандартных модулей и типовых задач.

Трудоемкость разработки программного обеспечения решения задачи можно рассчитать по формуле:

где t0 — затраты труда на подготовку описания задачи;

t и — затраты груда на исследование алгоритма решения задачи;
t а — затраты труда на разработку блок-схемы алгоритма;

t п — затраты труда на программирование по готовой блок-схеме;

tотл. — затраты труда на отладку программы на ЭВМ;

tд — затраты труда на подготовку документации.

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

где q — предполагаемое число операторов,

с — коэффициент сложности программы,

р — коэффициент коррекции программы в ходе ее разработки.

Кроме этого, используются коэффициенты квалификации разработчиков алгоритмов и программ – k и увеличения затрат труда вследствие недостаточного или некаче­ственного описания задачи — В.

Коэффициент сложности задачи c характеризует относительную слож­ность программы по отношению к так называемой типовой задаче, реализую­щей стандартные методы решения, сложность которой принята равной единице (величина с лежит в пределах от 1,25 до 2); коэффициент коррекции програм­мы р — увеличение объема работ за счет внесения изменений в алгоритм или программу по результатам уточнения постановок и описаний ее, изменения состава и структуры информации, а также уточнений, вносимых разработчиками для улучшения качества самой программы без изменения постановки задачи (величина р находится в пределах 0,05…0,1); коэффициент квалификации разра6отчика k — степень подготовленности исполнителя к порученной, ему работе (он определяется а зависимости от стажа работы и составляет: для работающих до двух лет 0,8; от двух до трех лет — 1,0; от трех до пяти лет -1,1-1,2; от пяти до семи — 1,3 — 1,4; свыше семи лет-1,5-1,6) коэффициент увеличения затрат труда вследствие недостаточного описания задачи В – качество постановки задачи, выданной для разработки, в связи с тем, что задачи, как правило, требуют уточнения и некоторой доработки (этот коэффициент в зависимости от сложности задачи принимается от 1,2 до 1,5).

Читайте также:
Составить программу печатающую значение true если указанное высказывание является истинным

Затраты труда на подготовку описания задачи t0 точно определить невозможно, так как это связано с творческим характером работы.

Затраты труда на изучение описания задачи tи с учетом уточнения описания и квалификации программиста могут быть определены по формуле:

Затраты труда на разработку алгоритма задачи tа рассчитываются по формуле:

Затраты труда на составление программы по готовой блок-схеме tп определяются по формуле:

Затраты труда на отладку программы на ЭВМ tотл рассчитываются по следующим формулам:

— при автономной отладке одной задачи

— при комплексной отладке задачи

Затраты труда на подготовку документации по задаче tд определяются по формуле:

где tдр. – затраты труда на подготовку материалов в рукописи, равные:

tдо – затраты труда на редактирование, печать и оформление документации, равные:

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

С учетом уровня языка программирования трудоемкость отдельных этапов разработки программы может быть скорректирована следующим образом:

где k кор. – коэффициент изменения трудоемкости (см. табл. 1.6).

Изменение трудоемкости
в зависимости от уровня языка программирования

Уровень языка Характеристика языка программирования Коэффициент kкор.
Покомандный автокод – ассемблер
Макроассемблер 0,95
Алгоритмические языки высокого уровня 0,8-0,9
Алгоритмические языки сверхвысокого уровня 0,7-0,8

Способ 3. Экспертный метод расчета трудоемкости

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

Трудоемкость выполнения отдельных видов работ определяется двумя видами оценок:

аi — минимальные затраты времени на выполнение отдельного вида работ при наиболее благоприятных условиях;

bi — максимальное время выполнения при наименее благоприятных условиях.

По этим величинам оценивается ожидаемое значение трудоемкости ti и стандартное отклонение Di по следующим формулам:

Стандартное отклонение характеризует степень неопределенности выполнения работы за ожидаемое время ti. Если разброс между ai и bi мал, то степень достоверности того, что работа будет выполнена в срок, велика.

Трудоемкость всей разработки и ее стандартное отклонение составят:

Экспертные оценки и расчетные величины трудоемкости и стандартные отклонения по всем видам работ сводятся в таблицу (табл. 1. 7).

Оценка трудоемкости отдельных видов работ

Вид работ Оценка трудоемкости, чел. — дн. Расчетные величины, чел. — дн.
ai bi ti Di

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:

Источник: studopedia.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru