Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



Оцінка застосування метода СОСОМО на конкретних даних

 

Збір вихідних даних для методу COCOMO та критерії відбору проектів відбирались за такими критеріями:

1) метою проекту була модифікація програмної системи;

2) проект розроблявся з використанням не більше, ніж двох різних мов програмування. Модель COCOMO передбачає використання двох мов програмування: основної та допоміжної;

3) проект використовував такі мови програмування, для яких є чітко визначені правила підрахунку кількості рядків;

4) проект був зовнішнім замовленням.

Зазвичай зовнішні проекти мають більшій пріоритет за внутрішні. Внутрішні проекти виконуються у менш жорстких умовах, а вимоги до проекту більш гнучкі. Це не відповідає умовам, для яких розроблялася модель COCOMO.

Методика визначення параметрів проектів. Дані по проектах приведено у табл. 1.8. У стовпчику “№ Проекту” приведено порядковий номер проекту у списку. Назви проектів не приводяться через обмеження конфіденційності. Величини зусиль, витрачених на виконання проекту було взято з проектної документації. Ці значення відображають фактично витрачений робочий час у людино-годинах. Значення змінної PM (людино-місяці) було розраховано, виходячи з витрачених на розробку проекту зусиль у людино-годинах, та типової кількості робочих годин за місяць 152, відповідно до [21].

Значення SLOC було отримано шляхом підрахунку кількості рядків всього вихідного коду, який було розроблено та модифіковано у ході виконання проекту. Для цього було використано пакет CodeCountÔ, розроблений у Центрі програмної інженерії Університету Південної Каліфорнії [22]. Опис процесу вимірювання розміру проектів приведено у Додатку.

Значення змінних EAF та SF визначались за результатами опиту менеджерів відповідних проектів.

Однакові значення змінних EAF відповідають схожим умовам розробки проектів з точки зору досвіду проектної команди та якості вимог до проекту. Зменшення цих значень для певних проектів пояснюється наявністю досвіду, який було отримано під час розробки попередніх проектів, за рахунок чого було розроблено більш чіткі та повні вимоги до проектів, та покращилося розуміння розробниками прикладної області.

Таблиця 1.8 - Вихідні дані для калібрування COCOMO

№ проекту Зусилля PM KSLOC EAF SF
3.38 1.20 0.54 25.35
11.30 8.38 0.54 25.35
13.00 14.64 0.54 25.35
24.72 18.86 0.48 25.35
5.58 9.71 0.80 25.35
34.64 34.46 0.80 25.35
37.07 15.43 0.80 25.35
2.88 7.82 0.80 25.35
3.19 7.63 0.80 25.35
3.37 8.50 0.80 25.35
3.43 3.68 0.80 25.35
25.28 54.35 0.80 25.35

 

Змінна SF характеризує організацію та її персонал в цілому, тому її значення для різних проектів однакові, оскільки у період, протягом якого розроблялися обрані проекти, суттєвих змін в організації, проектних командах або процесах розробки не відбувалось.

Методика калібрування моделі COCOMO. Модель COCOMO дає змогу отримати більш точні результати, якщо відкалібрувати її за даними по історичних проектах. COCOMO використовує таке рівняння для оцінки бюджету проекту:

 

, де

У цьому рівнянні присутні дві калібровочні константи, A та B0. Маючи достатню кількість даних про вже виконані проекти, можна визначити значення цих констант для умов у даній організації.

Нехай у наявності є дані по n проектах. Нехай – порядковий номер проекту. Після логарифмування та очевидних перетворень рівняння (1) матиме такий вигляд:

Позначимо

Тоді

,  

або у векторному вигляді

 

Якщо ввести позначення

то матимемо

,

звідки можна отримати K як

,

або

Таким чином, можна отримати значення калібровочних констант для певних умов виконання проектів.

Калібрування моделі COCOMO. Розрахунки проводилися за вище наведеними формулами. Було отримано такі результати (табл. 1.9, стовпчик “Локальна калібровка”):

Таблиця 1.9 - Результати калібрування моделі COCOMO

Константа Стандартна калібровка Локальна калібровка
A 2.54 2.23
B0 0.91 0.49

 

Для порівняння у стовпчику “Стандартна калібровка” наведені значення констант для стандартної калібровки COCOMO.

Аналіз результатів калібрування. За результатами калібрування було розраховано зусилля на розробку проектів та порівняно з фактичними даними та результатами обчислень за стандартною калібровкою. Отримані значення та відхилення у відсотках від фактичного значення приведені у таблиці 1.10.

Таблиця 1.10 – Результати обчислень за каліброваною моделлю

№ № PM фактичне PM, стандартна калібровка Відхилення, %, стандартна калібровка PM, локальна калібровка Відхилення, %, локальна калібровка
3.38 1.96 42% 1.37 60%
11.30 18.83 67% 6.40 43%
13.00 16.09 24% 5.75 56%
24.72 43.03 74% 10.84 56%
5.58 33.11 493% 10.66 91%
34.64 144.57 317% 29.14 16%
37.07 56.75 53% 15.40 58%
2.88 25.73 793% 8.97 211%
3.19 25.03 685% 8.81 176%
3.37 28.38 742% 9.60 185%
3.43 10.72 213% 4.94 44%
25.28 109.66 334% 24.13 5%

 

Ці ж результати у графічному вигляді подані на рис 1.6. Можна бачити, що калібрування моделі за базою історичних проектів дозволяє отримати оцінки, у більшості випадків більш близькі до фактичних, ніж з використанням стандартної калібровки. Але навіть для моделі з локальною калібровкою величини та розкид відхилень оцінок від фактичних значень (стовпчик “Відхилення, %, локальна калібровка”) роблять надто ризикованим використання таких оцінок.

Є наступні можливі причини таких відхилень:

1) вибірка проектів надто мала для калібрування моделі;

2) вихідні дані містять шуми або «викиди»;

3) у вибірці проектів присутні проекти, розроблені із використанням різних мов програмування. На процес розробки могли вплинути фактори, пов’язані із мовою програмування та супутніми технологіями, які не враховуються моделлю COCOMO.

Збільшення обсягу вибірки призвело б до включення проектів, які не відповідають моделі COCOMO, та, відповідно, до збільшення зашумленості вихідних даних.

Збільшення точності вихідних даних є неможливим, оскільки значення параметрів KSLOC, EAF, SF вимірюються точно, а уточнення значень PM пов’язане з великими часовими та фінансовими витратами.

Рис. 1.6 – Співставлення розрахунків за моделлю COCOMO з фактичними даними

 

Для перевірки третьої причини, впливу специфіки мови програмування, модель COCOMO було відкалібровано за двома різними вибірками проектів, відповідно, для мов C++ та Java. Результати калібрування наведено у таблиці 1.11.

Таблиця 1.11 – Результати калібрування моделі COCOMO для різних мов програмування

Константа Стандартна калібровка Локальна калібровка Калібровка для мови C++ Калібровка для мови Java
A 2.54 2.23 5.44 0.59
B0 0.91 0.49 0.41 0.88

 

Видно, що параметри моделі для різних мов суттєво відрізняються. Результати застосування відкаліброваних моделей наведено у таблицях 1.12 і 1.13 та у графічному вигляді на рис. 1.7 і 1.8. Для мови C++ максимальне відхилення становить 28%, що є прийнятним для використання, проте отримані результати не можуть вважатись достовірними, оскільки отримані за малою кількість вихідних даних. Результати для мови Java є не такими вражаючими, і максимальне відхилення становить 70%, проте такі оцінки вже можуть використовуватись як орієнтири для подальшого процесу оцінювання.

Таблиця 1.12 – Результати калібрування моделі COCOMO для мови C++ у порівнянні з калібровкою для всіх проектів

PM фактичне PM, калібровка по всіх проектам Відхилення, %, для всіх проектів PM, калібровка по C++ проектах Відхилення, %, для C++ проектів
3.38 1.38 59% 3.31 2%
11.30 5.90 48% 12.00 6%
13.00 5.33 59% 10.98 16%
37.07 13.78 63% 26.65 28%

Рис. 1.7 – Співставлення розрахунків для калібровок за всією вибіркою та за проектами на C++.

Рис. 1.8 – Співставлення розрахунків для калібровок за всією вибіркою та за проектами на Java.

Таблиця 1.13 – Результати калібрування моделі COCOMO для мови Java у порівнянні з калібровкою для всіх проектів

PM фактичне PM, калібровка по всіх проектах Відхилення, %, для всіх проектів PM, калібровка по Java проектах Відхилення, %, для Java проектів
24.72 9.61 61% 7.79 68%
5.58 9.75 75% 6.13 10%
34.64 25.12 27% 25.66 26%
2.88 8.30 188% 4.80 67%
3.19 8.15 155% 4.68 47%
3.37 8.84 162% 5.28 57%
3.43 4.73 38% 2.05 40%
25.28 35.30 40% 42.93 70%

 


Читайте також:

  1. IV. Оцінка вигідності залучення короткотермінових кредитів
  2. V. Виконання вправ на застосування узагальнювальних правил.
  3. А.1 Стан , та проблемні питання застосування симетричної та асиметричної криптографії.
  4. Автоматизований банк даних (АБД).
  5. Автомобільні ваги із застосуванням цифрових датчиків
  6. Аксіоматика простих типів даних
  7. Аксіоматика структурних і складних типів даних. Структурні типи даних.
  8. Акти застосування норм права в механізмі правового регулювання.
  9. Акти застосування юридичних норм: поняття, ознаки, види.
  10. Акти правозастосування, їх види
  11. Акти правозастосування.
  12. Алгоритм із застосування річної процентної ставки r.




Переглядів: 834

<== попередня сторінка | наступна сторінка ==>
 | ДОДАТОК 5.

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

  

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.005 сек.