Применение модели COCOMO II для оценки разработки программного обеспечения в Windows проектах

Суть метода оценки разработки программного обеспечения COCOMO II на примере программы для электронно-вычислительных машин по нематериальному стимулированию труда – "Стимул". Аспекты внедрения информационных технологий и автоматизации на предприятиях.

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 24.07.2020
Размер файла 69,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http: //www. allbest. ru/

Сибирский федеральный университет (Россия, г. Красноярск)

Применение модели COCOMO II для оценки разработки программного обеспечения в Windows проектах

И.Д. Садовский, студент

Аннотация

Раскрывается суть метода оценки разработки программного обеспечения COCOMO--II на примере программы для ЭВМ по нематериальному стимулированию труда - «Стимул». Данное программное обеспечение нацелено на руководящий состав коммерческих и некоммерческих организаций, сотрудников кадровых служб. Программа позволит эффективнее применять на практике методы и приемы нематериального стимулирования труда персонала:

- своевременно поздравлять сотрудников с различными праздниками;

- получать доступ к информации о достижениях сотрудника;

- следить за этапами горизонтального и вертикального карьерного роста;

- иметь доступ к информации о сбоях в работе, нарушений правил компании сотрудниками.

Ключевые слова: COCOMO II, программа для ЭВМ, IT-проект, оценка эффективности, экономическая эффективность, программное обеспечение, нематериальное стимулирование труда.

COnstructive COst MOdel (конструктивная модель стоимости) - это алгоритмическая модель оценки стоимости разработки программного обеспечения (ПО), разработанная Барри Боэмом (Barry Boehm) [1]. Модель использует простую формулу регрессии с параметрами, определенными из данных, собранных по ряду проектов [2].

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

Существует достаточно много моделей оценки создания ПО, активно применяемых на практике, но, к сожалению, большинство из них уже достаточно устаревшие и доказавшие свою несостоятельность [5-8]. Примером может служить метод линейного подхода, в котором применяется простейшая формула: С = Т Ч Ц, где Т -- количественная мер трудозатрат, а Ц - удельная стоимость. Под мерой трудозатрат в основном понимается количество строк кода и временная производительность, другие аспекты не учитываются. Абсурдность данного метода можно доказать тем, что с опытом программист начинает писать более сжато и лаконично, что является плюсом для последующей отладки, доработке или изменения программы, но данный метод абсолютно не стимулирует программиста к таким действиям. Данный пример говорит об актуальности данной темы. При стремлении к повышению качества ПО, средства его оценки должны быть адекватны. В данное время нет идеального подхода к разрешению данной проблемы, однако, рассматривая модель COCOMO--II, по нашему мнению, наиболее полно и адекватно учитывает все аспекты разработки, не даром она стала одной из самых популярных.

Модель COCOMO--II является наследником первоначальной модели COCOMO, которая к данному времени уже достаточно устарела, так как была представлена в 1981 г. В данной статье предпринята попытка оценить стоимость IT--проекта на начальном этапе. По окончании разработки будет возможна оценка по другим, расширенным критериям. Модель COCOMO--II предоставляет такую возможность. Как было сказано, в COCOMO--II различаю две стадии оценки: предварительная оценка на начальном этапе и детальная оценка после проработки архитектуры [1]. В данной статье рассматривается предварительная оценка.

Формула для оценивания трудоемкости в челмес имеет вид:

, где … …(1)

…… …(2)

1.  = 0,91;  = 2,94 предварительная оценка; = 2,45 детальная.

2. - фактор масштаба (Scale Factors) (табл. 1--2). Для данного проекта выбранные коэффициенты выделены в таблице 2.

3.  - объем программного продукта в тысячах строк исходного текста (KSLOC - Kilo of Source Line of Code)

4.  - множители трудоемкости (Effort Multiplier). n=7 - для предварительной оценки, n=17 - для детальной оценки (табл. 3). Для данного проекта выбранные коэффициенты выделены в таблице 3.

5.  (Effort Adjustment Factor) - произведение выбранных множителей трудоемкости:

Таблица 1 Описание уровней значимости факторов масштаба

Описание

Уровень значимости фактора

Очень низкий

Низкий

Средний

Высокий

Очень высокий

Критический

PREC

Прецедентность, наличие опыта аналогичных разработок

опыт в продукте и платформе отсутствует

продукт и платформа немного знакомы

некоторый опыт в продукте и платформе присутствует

продукт и платформа в основном известны

продукт и платформа в большой степени знакомы

продукт и платформ а полностью знакомы

FLEX

Гибкость процесса разработки

процесс строго предопределен

допускаются некоторые компромиссы

значительная жесткость процесса

относительная жесткость процесса

незначительная жесткость процесса

определены только общие цели

RESL

Архитектура и разрешение рисков

риски известны/

проанализированы на 20%

--"--

На 40%

--"--

На 60%

--"--

На 75%

--"--

На 90%

--"--

На 100%

TEAM

Сработанность команды

формальные взаимодействия

тяжелое взаимодействие до некоторой степени

чаще всего коллективная работа

в основном коллективная работа

высокая степень взаимодействия

полное доверие, взаимозаменяемость и взаимопомощь

PMAT

Зрелость процессов

СММ Уровень 1 ниже среднего

СММ Уровень 1 выше среднего

СММ Уровень 2

СММ Уровень 3

СММ Уровень 4

СММ Уровень 5

СММ (Capability Maturity Model) -- пятиуровневая модель зрелости возможностей компании-разработчика ПО, предложенная SEI (Software Engineering Institute, США).

Таблица 2 Значение фактора масштаба

Оценка уровня фактора

Очень низкий

Низкий

Средний

Высокий

Очень высокий

Критический

PREC

6.20

4.96

3.72

2.48

1.24

0.00

FLEX

5.07

4.05

3.04

2.03

1.01

0.00

RESL

7.07

5.65

4.24

2.83

1.41

0.00

TEAM

5.48

4.38

3.29

2.19

1.10

0.00

PMAT

7.80

6.24

4.68

3.12

1.56

0.00

Данные факторы применяются на обеих стадиях оценки проекта.

Рассмотрим множители трудоемкости. Для предварительной и детальной стадии оценки, множители трудоемкости имеют отличия. В данном случает для предварительной оценки выделяют семь множителей трудоемкости.

- PERS квалификация персонала.

- PREX опыт персонала.

- RCPX сложность и надежность продукта.

- RUSE разработка для повторного использования.

- PDIF сложность платформы разработки.

- FCIL оборудование (инструменты простейшие/интегрированные средства поддержки жизненного цикла).

- SCED требуемое выполнение графика работ.

Значения множителей приведены в табл. 3 Главной особенностью метода является наличие информации о размере кода(SIZE). Размер продукта может быть оценен экспертами с помощью метода PERT или с помощью анализа продукта методом функциональных точек. Во втором случае размер может быть рассчитан с помощью таблицы 4.

Таблица 3 Значения множителей трудоемкости

Множитель трудоемкости,

Описание

Оценка уровня множителя трудоемкости

Супер низкий

Очень низкий

Низкий

Нормальный

Высокий

Очень высокий

Супер высокий

1

PERS

квалификация персонала

2.12

1.62

1.26

1.00

0.83

0.63

0.50

2

PREX

опыт персонала

1.59

1.33

1.22

1.00

0.87

0.74

0.62

3

RCPX

сложность и надежность продукта

0.49

0.60

0.83

1.00

1.33

1.91

2.72

4

RUSE

разработка для повторного использования

n/a

n/a

0.95

1.00

1.07

1.15

1.24

5

PDIF

сложность платформы разработки

n/a

n/a

0.87

1.00

1.29

1.81

2.61

6

FCIL

оборудование

1.43

1.30

1.10

1.00

0.87

0.73

0.62

7

CSED

требуемое выполнение графика работ

n/a

1.43

1.14

1.00

1.00

n/a

n/a

Примечание: n/a - соответствующий уровень не оценивается

Таблица 4 Количества строк, необходимых на реализацию одной не выровненной функциональной точки

Язык

Количество строк кода одной функциональной точки

Вероятная

Оптимистичная

Пессимистичная

Assembler

172

86

320

C

148

9

704

C++

60

29

178

C#

59

51

66

JavaScript

56

44

65

Visual Basic

50

14

276

Итак, программа «Стимул», с помощью метода функциональных точек была оценена в 10 KSLOC. По формулам (1) и (2) имеем:

 

 

Число 62.85 челмес говорит о том, что данный проект может быть выполнен за 62.85 месяце - одним человеком или, например, чуть больше чем за год группой из 5 человек (62.85/5 = 12.57).

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

Рассмотрим влияние факторов масштаба, которые могут менять трудоемкость в 4.3 раза.

Пример (100 KSLOC):

E = 0,91 + 0,01  0,00;

PM = 2,94  (100)0,91 = 194 челмес;

E = 0,91 + 0,01 31,6;

PM = 2,94 (100)1,226 = 832;

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

программный стимулирование труд автоматизация

Библиографический список

1. Barry Boehm, et al. «Software cost estimation with COCOMO II». Englewood Cliffs, NJ:Prentice--Hall, 2000.

2. Евдокимов И.В. Аспекты внедрения информационных технологий на предприятиях г. Братска // Труды Братского государственного университета, Серия: Экономика и управление. - 2006. - Т.1. - С. 144-148.

3. Евдокимов И.В. Кадровое обеспечение внедрения SCADA-систем на предприятиях // Труды Братского государственного университета. Серия: Экономика и управление. - 2005. - Т.1. - С. 116-119.

4. Прокопенко А.В., Русаков М.А., Царев Р.Ю. Синтез систем реального времени с гарантированной доступностью программно-информационных ресурсов // Сибирский федеральный университет, Институт космических и информационных технологий. Красноярск, 2013. - 91 с.

5. Евдокимов И.В. Математическое и программное обеспечение идентификации нелинейных динамических объектов при использовании суммы гармонических сигналов: Дис. … канд. техн. наук / Евдокимов Иван Валерьевич; Братский государственный университет. - Братск., 2006. - 135 с.

6. Буштрук Т.Н., Буштрук А.Д., Евдокимов И.В. Метод идентификации моделей фильтр Заде // Современные информационные технологии. - 2004. - № 1. C. 122-125.

7. Евдокимов И.В. Математическое и программное обеспечение идентификации нелинейных динамических объектов при использовании суммы гармонических сигналов: Автореф. … дис. канд. техн. наук. - Братск: БрГУ, 2006. - 17 с.

8. Евдокимов И.В. Сумма гармонических сигналов с постоянной составляющей как тестирующее воздействие в одном методе активной идентификации // Труды Братского государственного университета. Серия: Естественные и инженерные науки. - 2005. - Т.1. - С. 39-41.

Размещено на Allbest.ru


Подобные документы

  • Реализация задачи использования методики SDLC (управление жизненным циклом разработки программного обеспечения) при внедрении реальной системы информационных технологий. Описание проекта внедрения системы автоматической регистрации участников выставок.

    реферат [585,1 K], добавлен 10.09.2010

  • Современные методологические проблемы разработки и внедрения программного обеспечения ERP систем. Основные концептуальные подходы к методологии разработки и внедрения программного обеспечения. Исследование методологии ASAP: ее сильные и слабые стороны.

    дипломная работа [4,3 M], добавлен 29.04.2011

  • Базовые основы разработки программного обеспечения: его классический жизненный цикл, макетирование, стратегии конструирования, модели качества процессов разработки. Применение параллельных алгоритмов и CASE-системы, критерии оценки их эффективности.

    курсовая работа [179,5 K], добавлен 07.04.2015

  • Основные процессы разработки, приобретения и внедрения сложных систем. Семейство стандартов ISO 9000. Зрелые и незрелые организации-разработчики программного обеспечения. Основные направления формирования метрик для оценки компьютерных программ.

    дипломная работа [656,8 K], добавлен 27.11.2012

  • Понятие и специфика автоматизированных систем. Описание методики разработки программы для автоматизации. Ее тестирование и отладка. Внедрение АС в работу предприятия. Расчет экономического эффекта от разработки и реализации программного продукта.

    дипломная работа [1,4 M], добавлен 23.06.2015

  • Использование моделирования в программной инженерии в процессе разработки программного обеспечения. Основные этапы процесса разработки программного обеспечения, их характеристика. Моделирование процессов, их определение фазами и видами деятельности.

    реферат [2,2 M], добавлен 25.12.2017

  • Понятие и ключевое отличие распределенной разработки программного обеспечения, его достоинства и недостатки. Концептуальное решение и выбор типа разработки. Особенности программного обеспечения с открытым исходным кодом. Идея и развитие Open Source.

    курсовая работа [97,7 K], добавлен 14.12.2012

  • Методика исследования и анализа средств аудита системы Windows с целью обнаружения несанкционированного доступа программного обеспечения к ресурсам вычислительных машин. Анализ угрозы информационной безопасности. Алгоритм работы программного средства.

    дипломная работа [2,9 M], добавлен 28.06.2011

  • Понятие технологии разработки программы. Основа проектирования программного обеспечения. Модели жизненного цикла, возникшие исторически в ходе развития теории проектирования программного обеспечения. Спиральная (spiral), каскадная и итерационная модели.

    презентация [1,0 M], добавлен 11.05.2015

  • Архитектура Windows NT 5. Приоритеты выполнения программного кода. Описание формата MIDI-данных. Установка драйвера в системе. Выбор средств разработки программного обеспечения. Обработка запросов драйверной модели WDM. Использование библиотеки DirectKS.

    курсовая работа [498,8 K], добавлен 24.06.2009

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.