Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МУ_лабы.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
5.23 Mб
Скачать

1.2 Планування комплексу робіт по розробці теми і оцінка трудомісткості

Для розробки було задіяно дві людини: керівник проекту і виконавець (інженер-програміст). Керівник виконує постановку задачі, курує хід робіт і надає необхідні консультації при розробці системи. Виконавець відповідає за проектування інформаційного забезпечення, розробку структур баз даних, реалізацію обчислювальних алгоритмів у вигляді завершеного продукту, розробку блоків інтерфейсу і налагодження програми.

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

Таблиця 1.2 - Комплекс робіт з розробки проекту

Зміст робіт

Виконавці

Тривалість,

дні

Завантаження

Дні

%

1

2

3

4

5

1. Підготовка процесу розробки і аналіз вимог

1.1 Дослідження та обґрунтування розробки

1.1.1 Постановка завдання

Керівник

Програміст

3

1

3

33

100

1.1.2 Збір вихідних даних

Керівник

Програміст

14

5

14

35

100

1

2

3

4

5

1.2 Пошук аналогів і прототипів

1.2.1 Аналіз існуючих методів вирішення задачі і програмних засобів

Керівник

Програміст

6

0

6

0

100

1.2.2 Обґрунтування принципової необхідності розробки

Керівник

Програміст

2

1

2

50

100

1.3. Аналіз вимог

1.3.1 Визначення та аналіз вимог до проектованої програми

Керівник

Програміст

3

1

3

33

100

1.3.2 Визначення структури вхідних і вихідних даних

Керівник

Програміст

5

1

5

20

100

1.3.3 Вибір технічних і програмних засобів реалізації

Керівник

Програміст

3

1

3

33

100

1.3.4 Узгодження і затвердження технічного завдання

Керівник

Програміст

3

1

3

33

100

Разом по етапу 1

Керівник

Програміст

39

11

39

28

100

2. Проектування

2.1 Проектування програмної архітектури

Керівник

Програміст

3

0

3

0

100

2.2 Технічне проектування компонентів програми

Керівник

Програміст

7

0

7

0

100

Разом по етапу 2

Керівник

Програміст

10

0

10

0

100

3. Програмування та тестування програмних модулів

3.1 Програмування модулів в обраному середовищі програмування

Керівник

Програміст

13

0

13

0

100

3.2 Тестування програмних модулів

Керівник

Програміст

21

0

21

0

100

3.3 Збірка і випробування програми

Керівник

Програміст

5

2

5

40

100

3.4 Аналіз результатів випробувань

Керівник

Програміст

5

1

5

20

100

Разом по етапу 3

Керівник

Програміст

44

3

44

7

100

4. Оформлення робочої документації

4.1 Проведення розрахунків показників безпечності життєдіяльності

Керівник Програміст

3

0

3

0

100

4.2 Проведення економічних розрахунків

Керівник Програміст

4

0

4

0

100

4.3 Оформлення пояснювальної записки

Керівник

Програміст

15

5

15

33

100

Разом по етапу 4

Керівник

Програміст

22

5

22

23

100

Разом

Керівник

Програміст

115

19

115

17

100

На основі даних таблиці 1.2 розроблено календарний графік виконання робіт (таблиця 1.3), що показує послідовність і взаємозв'язок виконання комплексу робіт (з урахуванням неділі; можна брати без урахування неділі та святкових днів).

Таблиця 1.3 - Календарний графік виконання робіт

Зміст роботи

Виконавці

Тривалість,

дні

Графік робіт

Початок

Кінець

1. Постановка задачі

Керівник

Програміст

1

3

21.01.2016

21.01. 2016

21.01.2016

23.01.2016

2. Збір вихідних даних

Керівник

Програміст

5

14

24.01.2016

24.01.2016

28.01.2016

06.02.2016

3. Аналіз існуючих методів рішення задачі і програмних засобів

Керівник

Програміст

0

6

-

07.02.2016

-

12.02.2016

4. Обґрунтування принципової необхідності розробки

Керівник

Програміст

1

2

13.02.2016

13.02.2016

13.02.2016

14.02.2016

5. Визначення та аналіз вимог до програмного забезпечення

Керівник

Програміст

1

3

15.02.2016

15.02.2016

15.02.2016

17.02.2016

6. Визначення структури вхідних і вихідних даних

Керівник

Програміст

1

5

18.02.2016

18.02.2016

18.02.2016

22.02.2016

7. Вибір технічних і програмних засобів реалізації

Керівник

Програміст

1

3

23.02.2016

23.02.2016

23.02.2016

25.02.2016

8. Узгодження і затвердження технічного завдання

Керівник

Програміст

1

3

26.02.2016

26.02.2016

26.02.2016

28.02.2016

9. Проектування програмної архітектури

Керівник

Програміст

0

3

-

01.03.2016

-

03.03.2016

10. Технічне проектування компонентів програми

Керівник

Програміст

0

7

-

04.03.2016

-

10.03.2016

11. Програмування модулів в вибраному середовищі програмування

Керівник

Програміст

0

13

-

11.03.2016

-

23.03.2016

12. Тестування програмних модулів

Керівник

Програміст

0

21

-

24.03.2016

-

13.04.2016

13. Збірка і випробування програми

Керівник

Програміст

2

5

14.04.2016

14.04.2016

15.04.2016

18.04.2016

14. Аналіз результатів випробувань

Керівник

Програміст

1

5

19.04.2016

19.04.2016

19.04.2016

23.04.2016

15. Проведення розрахунків показників безпеки життєдіяльності

Керівник

Програміст

0

3

-

24.04.2016

-

26.04.2016

16. Проведення економічних розрахунків

Керівник

Програміст

0

4

-

27.04.2016

-

30.04.2016

17. Оформлення пояснювальної записки

Керівник

Програміст

5

15

01.05.2016

01.05.2016

05.05.2016

15.05.2016

1.3 Розрахунок витрат на розробку проекту

Капітальні вкладення , пов'язані з автоматизацією обробки інформації, розраховуються за формулою:

,

(1.3)

де: – капітальні вкладення на проектування, грн ,

– капітальні вкладення на реалізацію проекту, грн.

Передвиробничі витрати є одноразовими витратами на розробку систем або елементів, які функціональних або тих, що забезпечують, на всіх етапах проектування, а також витрати на їх вдосконалення, тобто на проведення обстеження і обробку матеріалів дослідження, розробку технічного завдання, розробку технічного та робочого проекту системи та її впровадження. Сюди включаються витрати на розробку алгоритмів і програм, вартість розробок по прив'язці типових проектних рішень (ТПР) і пакетів прикладних програм (ППП) до конкретного об'єкта автоматизації.

Сумарні витрати на проектування системи та її розробку і налагодження на комп'ютері визначаються формулою:

,

(1.4)

де: т – кількість працівників, що беруть участь у розробці проекту;

– коефіцієнт, що враховує додаткову заробітну плату в частках до основної заробітної плати (0,4);

– коефіцієнт, що враховує відрахування на соціальні потреби, в частках до суми основної та додаткової заробітної плати розробників (0,342).

– коефіцієнт, що враховує накладні витрати організації, в частках до основної заробітної плати розробників (0,6);

– витрати на основну заробітну плату працівника-ї категорії, грн.;

– витрати на використання машинного часу;

– витрати на матеріали.

, (1.5)

де: – середньоденна заробітна плата працівника -ї категорії, грн./дн.;

– кількість днів, відпрацьованих працівником -ї категорії.

Витрати часу на розробку системи по кожному виконавцю приймаються, виходячи з його завантаження за календарним графіком виконання робіт (табл.1.3). Розрахунок основної заробітної плати розробників проекту наведено в таблиці 1.4, враховуючи, що у місяці в середньому 21 робочий день.

Таблиця 1.4 – Основна заробітна плата розробників

Посада

Посадовий оклад, грн.

Середня денна ставка, грн.

Витрати часу на розробку, людино-дні

ОЗП, грн.

Керівник

19000

904,76

19

17190,48

Програміст

7000

333,33

115

38333,33

Разом

55523,81

Через те, що проектована інформаційна система повинна бути запрограмована і налагоджена за допомогою комп'ютерів, до сумарних витрат на розробку додаються витрати на використання машинного часу, що обчислюються як:

,

(1.6)

де: – машинний час, необхідний для розробки ПП (460 годин);

– вартість 1 години машинного часу (20грн./год); (розрахувати або використовувати середню вартість платного доступу до ПК у вашому місті);

– коефіцієнт мультипрограмності (показує частку машинного часу, відведеного безпосередньо на роботу над проектом); Км= 1.

Матеріали, набуті в процесі виконання роботи, та їх вартість () наведені в таблиці 1.5.

Таблиця 1.5 – Витрати на матеріали

Матеріали

Одиниця

виміру

Необхідна кількість

Ціна за одиницю, грн.

Сума, грн

Зошит загальний

шт.

1

10

10

Компакт-диск CD-RW

шт.

2

35

70

Тонер для лазерного принтеру

шт.

1

1000

1000

Папір офісний

пачка

1

120

120

Разом

1200

Таким чином, капітальні вкладення на проектування дорівнюють:

= (17190,48+38333,33)*((1+0,4)*(1+0,302)+0,6)+460*20*1+1200 = 144923,09грн.

Кошторис витрат на розробку представлений в таблиці 1.6.

Таблиця 1.6 – Витрати на розробку

Витрати

Сума, грн.

Основна заробітна платня

55523,81

Додаткова заробітна платня

22209,52

Відрахування на соціальні потреби

23475,47

Витрати на матеріали

1200

Витрати на машинний час

9200

Накладні витрати організації

33314,29

РАЗОМ

144923,09

Капітальні вкладення на реалізацію проекту :

, (1.7)

де: – витрати на основне і допоміжне обладнання, грн;

– витрати на будівництво, реконструкцію будівель та приміщень, грн;

– витрати на придбання типових розробок, пакетів, грн;

– витрати на прокладку ліній зв'язку, грн;

– витрати на створення інформаційної бази, грн .;

– витрати на підготовку і перепідготовку кадрів, грн.

У зв'язку з тим, що для впровадження системи, що розглядається в даному проекті, не було витрат, пов'язаних з прокладанням лінії зв'язку, витрат на основне і допоміжне обладнання, витрат на реконструкцію і будівництво будівель, дані витрати для впровадження системи не враховуються. Також не приймаються в розрахунок витрати з підготовки та перепідготовки кадрів, витрати на створення інформаційної бази та витрати на придбання типових розробок.

Таким чином, при впровадженні системи, що розглядається в даному проекті, витрати на його реалізацію визначаються витратами на обладнання та матеріали. В обладнання та матеріали входить комп'ютер. Вартість комп'ютера 22500грн.

Тоді витрати на основне і допоміжне обладнання складають

,

(1.8)

(1.9)

,

(1.10)

де: – балансова вартість -го виду обладнання, грн. (, =22500 грн.);

– кількість одиниць -го устаткування, грн. (1 шт.);

– коефіцієнт завантаження -го виду обладнання при обробці інформації щодо вирішення завдань предметної області;

– ефективний річний фонд роботи технічного засобу -го виду, год./рік;

– час роботи технічного засобу -го виду за рішенням s завдань, год./рік;

– працемісткість одноразової обробки інформації по к-му завданню на j-му виді технічних засобів, годин машинного часу (6);

– частота (періодичність) рішення -го завдання, днів / рік (247).

Витрати на реалізацію:

= 22500*1*6*247/(247*8) = 16875грн.

Таким чином, сумарні витрати на розробку проекту:

= 144923,09 + 16875 =161798,09грн.

Сумарні витрати, пов'язані з впровадженням аналога складаються з наступних витрат:

  • витрати на придбання програмного продукту (37300грн.);

  • витрати з оплати послуг на встановлення та супровід продукту (12000грн.);

  • витрати на основне і допоміжне обладнання 22500грн. (вважаємо, що для впровадження аналога знадобиться такий же комп'ютер, що і для проектованої системи);

  • витрати на підготовку користувача (оплата курсів підвищення кваліфікації, витрати на відрядження та ін.) 9000грн..

Постарайтеся розписати ці статті витрат і обґрунтувати їх. Разом сумарні витрати, пов'язані з впровадженням аналога складуть 80800грн.

1.4 Розрахунок експлуатаційних витрат

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

Поточні витрати () розраховуються за формулою:

, (1.11)

де: – витрати на основну та додаткову зарплати з відрахуваннями в позабюджетні фонди, грн;

– амортизаційні відрахування від вартості обладнання і пристроїв системи, грн;

– витрати на силову енергію, грн;

– витрати на поточний ремонт обладнання і пристроїв системи, грн;

– витрати на матеріали і машинні носії, грн;

– накладні витрати інформаційного відділу, грн.

Експлуатацію розробленої системи здійснюють фахівці. Витрати на основну та додаткову заробітну плату з відрахуваннями на соціальні потреби виробничого персоналу розраховуються за формулою:

,

(1.12)

де: – час експлуатації системи -м працівником, дні;

– середньоденна заробітна плата -го працівника, грн./день.

Дані розрахунку заробітної плати спеціалістів наведені в таблицях 1.7 і 1.8.

Таблиця 1.7 – Дані по заробітній платі фахівців (для проекту)

Посада

Посадовий оклад, грн.

Середня денна ставка, грн./день

Витрати часу на експлуатацію, людино-днів

Фонд заробітної плати, грн.

Співробітник відділу МТС

15000

714,29

40

52080,0

Програміст

10000

476,19

20

17360,0

Разом (з урахуванням нарахувань)

69440.0

= (40*714,29+20*476,19)*1,4*1,302 грн. = 69440,0грн. (за рік).

Таблиця 1.8 – Дані по заробітній платі фахівців (для продукту-аналогу)

Посада

Посадовий оклад, грн.

Середня денна ставка, грн. / день

Витрати часу на експлуатацію, людино-днів

Фонд заробітної плати, грн.

Співробітник відділу МТС

15000

714,29

60

78120

Програміст

10000

476,19

40

21706,2

Разом (з урахуванням нарахувань)

112840

= (60*714,29+40*476,19)*1,4*1,302 = 112840,0грн. (за рік).

Сума амортизаційних відрахувань розраховується наступним чином:

,

(1.13)

, (1.14)

де: – балансова вартість -гo виду обладнання (22500грн.);

– норма річних амортизаційних відрахувань для -го виду обладнання (використовується прискорена амортизація – 20-30%, тобто 0,2-0,3);

– кількість одиниць обладнання -го виду (1).

– час роботи -го виду обладнання, год (40+20 та 60+40 (табл. 1.7,1.8));

– робочих днів у році (247);

– норматив середньодобового завантаження, год./день (8).

– ефективний фонд часу роботи устаткування в рік, час (247*8);

Амортизаційні відрахування для проекту () та аналогу () складають:

= (22500*0,2*1*((40+20)*8)) / 1976 грн. = 1093,12 грн.

= (22500*0,2*1*((60+40)*8)) / 1976 грн. = 1821,86 грн.

Витрати на силову енергію розраховуються за формулою:

,

(1.15)

де: – встановлена потужність j-го виду технічних засобів, кВт;

– час роботи j-го виду технічних засобів, год;

– коефіцієнт використання встановленої потужності устаткування;

– тариф на електроенергію, грн./кВт год.

На сьогоднішній день тариф на електроенергію на поточній території можна прийняти за 0,57 грн/кВт год., якщо використовується до 100кВт, 0,99 грн/кВт год., якщо витрачається від 100 до 600кВт; встановлена потужність комп'ютеру дорівнює 0,4 кВт. Таким чином витрати на силову енергію для проекту складатимуть:

= 0,4*1*250*0,57 + 0,4*1*230*0,99 = 148,80 грн.

= 0,4*1*250*0,57 + 0,4*1*550*0,99 = 274,80 грн.

Витрати на поточний ремонт устаткування розраховуються за формулою:

,

(1.16)

де: – норматив витрат на ремонт (0,05).

Витрати на поточний ремонт устаткування складатимуть:

= (0,05*22500*480) /1976= 273,28 грн.

= (0,05*22500*800) /1976= 455,47 грн.

Витрати на матеріали (), що використовуються на протязі року, складатимуть 1% від балансної вартості основного устаткування і дорівнюють 225 грн. (22500*0,01) для проекту та аналогу.

Накладні витрати () включають у себе витрати на утримання адміністративного та управлінського персоналу, приміщення и т.д. Норматив накладних витрат складає 20% від прямих витрат, що включають перші п'ять статей витрат, що представлені у таблиці 1.9.

Накладні витрати для проекту () та аналогу ():

= (69440,00+1093,12+148,80+273,28+225,00)х0,2 = 14236,04 грн.

= (112840,00+1821,86+274,80+455,47+225,00)х0,2 = 23123,43 грн.

Таблиця 1.9 – Річні експлуатаційні витрати

Статті витрат

Витрати на проект, грн.

Витрати на аналог, грн.

Основна та додаткова зарплата з відрахуваннями

69440,00

112840,00

Амортизаційні відрахування

1093,12

1821,86

Витрати на електроенергію

148,80

274,80

Витрати на поточний ремонт

273,28

455,47

Витрати на матеріали

225,00

225,00

Накладні витрати

14236,04

23123,43

Разом

85416,24

138740,56

1.5 Розрахунок показників економічної ефективності

Оцінка економічної ефективності варіантів проектних рішень елементів АІС ґрунтується на розрахунку показників порівняльної економічної ефективності капітальних вкладень. Річний економічний ефект () від використання розроблюваної системи визначається за різницею приведених витрат на базовий (аналог) і новий (проектований) варіанти в розрахунку на річний обсяг випуску:

, (1.17)

, (1.18)

де , – наведені витрати на одиницю робіт, виконуваних за допомогою аналогового і проектованого варіантів процесу обробки інформації, грн.;

– коефіцієнт експлуатаційно-технічної еквівалентності, або технічного рівня (формула 1.2);

– обсяг робіт, виконуваних за допомогою розробленого продукту (приймемо рівним 1).

– поточні експлуатаційні витрати на аналог і проект, грн.;

– нормативний коефіцієнт економічної ефективності (0,33);

– сумарні витрати на впровадження аналога та розробку проекту

Витрати на одиницю робіт по аналогу () та по проекту ():

= 138740,56+0,33*80800,00 = 165404,56 грн.

= 85416,24+0,33*161798,09 = 138809,61 грн.

= 165404,56*1,60-138809,61 = 125837,67 грн.

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

Таблиця 1.10 – Економічний ефект

Характеристика

Значення

Продукт-аналог

Продукт, що розробляється

Собівартість(поточні експлуатаційні витрати), грн.

138740,56

85416,24

Сумарні витрати, пов'язані з впровадженням проекту, грн.

80800,00

161798,09

Наведені витрати на одиницю робіт, грн.

165404,56

138809,61

Економічний ефект від використання системи, що розробляється, грн.

125837,67

Після визначення річного економічного ефекту необхідно розрахувати термін окупності () витрат на розробку продукту за формулою:

, (1.19)

Таким чином, термін окупності проекту складе 1,28 року.

Потім розрахуємо фактичний коефіцієнт економічної ефективності розробки () і зіставимо його з нормативним значенням коефіцієнта ефективності капітальних вкладень ( =0,33):

, (1.20)

Фактичний коефіцієнт економічної ефективності розробки вийшов більше, ніж нормативний, тому розробка та впровадження розроблюваного продукту є ефективною. Таким чином, в ході проробленої роботи знайдені всі необхідні дані, які доводять доцільність і ефективність даної розробки. Наведемо ці дані в зведеній таблиці 1.11.

Таблиця 1.11 – Зведені дані щодо розробленого проекту

Характеристика проекту

Значення, грн.

Витрати на розробку та впровадження проекту, грн.

161798,09

Загальні експлуатаційні витрати, грн.

85416,24

Економічний ефект, грн.

125837,67

Коефіцієнт економічної ефективності

0,78

Строк окупності, років

1,28

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

1.6. Завдання до виконання лабораторної роботи 1.

  1. Вибравши інструментальну середу програмування, автоматизувати весь розрахунковий процес техніко-економічного обґрунтування, створивши зручний інтерфейс користувача, що дозволяє проводити параметричні дослідження .

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

  1. У календарному графіку робіт (таблиця 1.3) в якості тимчасових вихідних даних вводити тільки дату початку роботи.

  2. Весь розрахунковий процес пропонується розбити на п'ять розрахункових блоків:

  1. розрахунок КТР;

  2. розрахунок план-графіку робіт;

  3. розрахунок витрат на розробку проекту та впровадження аналогу;

  4. розрахунок експлуатаційних витрат;

  5. розрахунок показників економічної ефективності.

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

Лабораторна робота 2

КОНСТРУКТИВНА МОДЕЛЬ ВАРТОСТІ COCOMO

Мета роботи: вивчити алгоритми різних рівнів конструктивних моделей Б.Боема і автоматизувати процес розрахунку економічних показників проекту з розробки програмного продукту.

2.1. COCOMO

COCOMO (Constructive Cost Model) – це конструктивна модель оцінки вартості, розроблена на початку 80-х років Баррі Боемом для оцінки трудомісткості розробки програмних продуктів. Вона заснована на статистичному аналізі фактичних даних по виконанню 63 проектів в компанії TRW Aerospace, де Баррі Боем був директором відділу досліджень програмного забезпечення і технологій. Аналізувалися проекти обсягом від 2 до 100 000 рядків коду, на мовах програмування від асемблеру до високорівневої мови PL/1, засновані на каскадній моделі життєвого циклу розробки ПЗ. Модель складається з ієрархії трьох послідовно деталізованх і уточнюючих рівнів [3]. На кожному рівні всі проекти розбиваються на три групи за рівнем складності:

  • поширений тип (organic projects);

  • вбудований тип (embedded projects);

  • напівнезалежний тип (semidetached projects).

Поширений тип характеризується тим, що проект виконується невеликою групою фахівців, що мають досвід у створенні подібних виробів і досвід застосування технологічних засобів. Умови роботи стабільні, і виріб має відносно невисоку складність.

Вбудований тип характеризується дуже жорсткими вимогами до програмного продукту, інтерфейсу, параметрів ЕОМ. Як правило, у таких програм висока ступінь новизни і планування робіт здійснюється при недостатній інформації, як про сам продукт, так і про умови роботи. Вбудований проект вимагає великих витрат на зміни та виправлення.

Напівнезалежний тип займає проміжне положення між поширеним і вбудованим – це проекти середньої складності. Виконавці знайомі лише з деякими характеристиками (або компонентами) створюваної системи, мають середній досвід роботи з подібними виробами, виріб має елемент новизни. Тільки частина вимог до виробу жорстко фіксується, в іншому розробки мають ступені вибору.

Тип тієї чи іншої групи можна розглядати як один з параметрів моделі COCOMO. Розглянемо рівні моделі.

2.1.1 Базовий рівень (Basic COCOMO)

Модель цього рівня – двохпараметрична. Як параметри виступають тип проекту і обсяг програми (число рядків коду).

Рівняння базового рівня моделі мають вигляд:

, (2.1)

, (2.2)

де (People × Month) – трудомісткість (чол. × міс.);

(Time at Month) – час розробки в календарних місяцях;

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

Коефіцієнти , , і вибираються з табл. 2.1.

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

Таблиця 2.1 – Значення коефіцієнтів базової рівня моделі COCOMO залежно від типу проекту

Тип проекту

a

b

c

d

Поширений

2,4

1,05

2,5

0,38

Напівнезалежний

3,0

1,12

2,5

0,35

Вбудований

3,6

1,20

2,5

0,32

2.1.2 Проміжний рівень (Intermediate COCOMO)

На цьому рівні базова модель уточнена за рахунок введення додаткових 15 «атрибутів вартості» (або факторів витрат) Cost Drivers (CDk), які згруповані за чотирма категоріями.

1.Характеристики продукту (Product Аttributes):

  • необхідна надійність ПЗ (Required Software Reliability);

  • розмір БД додатку (Size of Application Database);

  • складність продукту (Complexity of the Product) .

2.Характеристики апаратного забезпечення (Hardware Аttributes):

  • обмеження швидкодії при виконанні програми (Run-Time Performance Constraints);

  • обмеження пам'яті (Memory Constraints);

  • нестійкість оточення віртуальної машини (Volatility of the Virtual Machine Environment);

  • необхідний час відновлення (Required Turnabout Time) .

3.Характеристики персоналу (Personnel Аttributes):

  • аналітичні здібності (Analyst Capability);

  • здібності до розробки ПЗ (Software Engineer Capability);

  • досвід розробки (Applications Experience);

  • досвід використання віртуальних машин (Virtual Machine Experience);

  • досвід розробки на мовах програмування (Programming Language Experience) .

4.Характеристики проекту (Project Аttributes):

  • використання інструментарію розробки ПЗ (Use of Software Tools);

  • застосування методів розробки ПЗ (Application of Software Engineering Methods);

  • вимоги дотримання графіка розробки (Required Development Schedule).

Значення кожного атрибута вибирається з табл. 2.2 відповідно до його ступеня значущості (рейтингу) в конкретному проекті.

Таблиця 2.2 – Значення атрибутів вартості залежно від їх рівня

Атрибути вартості, CDk

Рейтинг

Дуже низький

Низький

Середній

Високий

Дуже

високий

Критичний

Характеристики продукту

1.

Необхідна надійність ПЗ

0,75

0,88

1,00

1,15

1,40

n/a

2.

Розмір БД додатка

n/a

0,94

1,00

1,08

1,16

n/a

3.

Складність продукту

0,70

0,85

1,00

1,15

1,30

1,65

Характеристики апаратного забезпечення

4.

Обмеження швидкодії

n/a

n/a

1,00

1,11

1,30

1,66

5.

Обмеження пам'яті

n/a

n/a

1,00

1,06

1,21

1,56

6.

Нестійкість оточення віртуальної машини

n/a

0,87

1,00

1,15

1,30

n/a

7.

Необхідний час відновлення

n/a

0,87

1,00

1,07

1,15

n/a

Характеристики персоналу

8.

Аналітичні здібності

1,46

1,19

1,00

0,86

0,71

n/a

9.

Досвід розробки

1,29

1,13

1,00

0,91

0,82

n/a

10.

Здібності до розробки ПЗ

1,42

1,17

1,00

0,86

0,70

n/a

11.

Досвід використання віртуальних машин

1,21

1,10

1,00

0,90

n/a

n/a

12.

Досвід розробки на мовах програмування

1,14

1,07

1,00

0,95

n/a

n/a

Характеристики проекту

13.

Застосування методів розробки ПЗ

1,24

1,10

1,00

0,91

0,82

n/a

14.

Використання інструментарію розробки ПЗ

1,24

1,10

1,00

0,91

0,83

n/a

15.

Вимоги дотримання графіка розробки

1,23

1,08

1,00

1,04

1,10

n/a

Примітка: n / a (not available) - дані відсутні, тобто відповідний рівень не оцінюється

Формула проміжного рівня моделі має вигляд:

, (2.3)

де – трудомісткість (чол. × міс.);

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

(Effort Adjustment Factor) – добуток обраних атрибутів вартості з табл. 2.2: = .

Коефіцієнти моделі і вибираються з табл. 2.3.

Таблиця 2.3 – Значення коефіцієнтів проміжного рівня моделі COCOMO залежно від типу проекту

Тип проекту, i

ai

bi

1.

Поширений

3,2

1,05

2.

Напівнезалежний

3,0

1,12

3.

Вбудований

2,8

1,20

Час розробки розраховується за тією ж формою, що і для базової моделі.

2.1.3 Детальний рівень (Advanced COCOMO)

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

2.2. COCOMO II

У 1997 методика була вдосконалена і отримала назву COCOMO II. Калібрування параметрів проводилася вже по 161 проекту розробки ПЗ.

Відрізняють дві стадії оцінки проекту: попередня оцінка на початковій фазі (Early Design) і детальна оцінка після опрацювання архітектури (Post Architecture).

Формула оцінки трудомісткості проекту в чол. × міс. має вигляд:

, (2.4)

, (2.5)

де = 0,91;

= 2,94 для попередньої оцінки; = 2,45 для детальної оцінки;

– фактори масштабу (Scale Factors) (табл. 2.5);

– обсяг програмного продукту в тисячах рядків вихідного тексту (KSLOC – Kilo of Source Line of Code);

(Effort Adjustment Factor) – добуток обраних множників трудомісткості: .

– множники трудомісткості (Effort Multiplier).

n = 7 – для попередньої оцінки (табл. 2.6), n = 17 – для детальної оцінки (табл. 2.7);

2.2.1 Фактори масштабу (Scale Factors)

У методиці COCOMO II використовуються п'ять факторів масштабу , опис яких наведено в табл. 2.4. Ці фактори застосовуються на обох стадіях оцінки проекту. Числові значення фактору масштабу наведені в таблиці 2.5.

Таблиця 2.4 – Опис рівнів значимості факторів масштабу

Опис

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

Дуже низький

Низький

Середній

Високий

Дуже

високий

Критичний

1. PREC.

Precedentedness.

Прецедентність, наявність досвіду аналогічних розробок

досвід в

продукті

і платформі

відсутній

продукт і платформа трохи знайомі

деякий досвід

в

продукті і платформі

присутній

продукт і платформа в основномувідомі

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

продукт і

платформа повністю

знайомі

2. FLEX.

Development

Flexibility

Гнучкість процесу розробки

процес

строго

детермінований

допускаються деякі

компроміси

значна жорсткістьпроцесу

відносна жорсткістьпроцесу

незначна жорсткістьпроцесу

визначені тільки загальні цілі

3. RESL.

Architecture / Risk Resolution

Архітектура

і дозвіл ризиків

ризики

відомі /

проаналізовані на 20%

ризики

відомі /

проаналізовані на

40%

ризики

відомі /

проаналізовані на

60%

ризики

відомі /

проаналізовані на

75%

ризики

відомі /

проаналізовані на

90%

ризики

дозволені на

100%

4. TEAM.

Team

Cohesion

Спрацьованість команди

формальні

взаємодії

Тяжкі взаємодії до деякої ступені

Частіше всього колективна робота

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

висока

ступінь

взаємодії

повна довіра,

взаємозамінність і взаємодопомога

5. PMAT.

Process

Maturity

Зрілість

процесів

СММ

Рівень 1 (нижче середнього)

СММ

Рівень 1 (вище середнього)

СММ

Рівень 2

СММ

Рівень 3

СММ

Рівень 4

CMM

Рівень 5

Примітка. СММ (Capability Maturity Model) - п'ятирівнева модель зрілості можливостей компанії-розробника ПЗ, запропонована SEI (Software Engineering Institute).

Таблиця 2.5 – Значення фактору масштабу залежно від оцінки його рівня

Фактор

масштабу,

Оцінка рівня фактора

Very Low

Low

Nominal

High

Very High

Extra High

1.

PREC

6,20

4,96

3,72

2,48

1,24

0,00

2.

FLEX

5,07

4,05

3,04

2,03

1,01

0,00

3.

RESL

7,07

5,65

4,24

2,83

1,41

0,00

4.

TEAM

5,48

4,38

3,29

2,19

1,10

0,00

5.

PMAT

7,80

6,24

4,68

3,12

1,56

0,00

2.2.2 Множники трудомісткості (Effort Multipliers)

Кількість і значення множників трудомісткості відрізняються для різних стадій оцінки проекту.

1. Стадія попередньої оцінки трудомісткості програмного проекту (Early Design). Для цієї оцінки необхідно оцінити для проекту рівень семи множників трудомісткості :

а) параметри персоналу:

  • PERS (Personnel Capability) – кваліфікація персоналу (Extra Low – аналітики і програмісти мають нижчу кваліфікацію, плинність більше 45%; Extra High – аналітики і програмісти мають вищу кваліфікацію, плинність менше 4%);

  • PREX (Personnel Experience) – досвід персоналу (Extra Low – новий додаток, інструменти та платформа; Extra High – додаток, інструменти та платформа добре відомі);

б) параметри продукту:

  • RCPX (Product Reliability and Complexity) – складність і надійність продукту (Extra Low – продукт простий, спеціальних вимог по надійності немає, БД маленька, документація не потрібно; Extra High – продукт дуже складний, вимоги щодо надійності жорсткі, БД надвелика, документація потрібна в повному обсязі);

  • RUSE (Developed for Reusability) – розробка для повторного використання (Low – не вимагається; Extra High – передбачається перевикористання в інших продуктах);

в) параметри платформи:

  • PDIF (Platform Difficulty) – складність платформи розробки (Extra Low – спеціальні обмеження по пам'яті і швидкодії відсутні, платформа стабільна; Extra High – жорсткі обмеження по пам'яті і швидкодії, платформа нестабільна);

г) параметри проекту:

  • FCIL (Facilities) – обладнання (Extra Low – інструменти найпростіші, комунікації утруднені; Extra High –- інтегровані засоби підтримки життєвого циклу, інтерактивні мультимедіа комунікації);

  • SCED (Required Development Schedule) - потрібне виконання графіка робіт (Very Low – 75% від номінальної тривалості; Very High – 160% від номінальної тривалості).

Значення множників трудомісткості залежно від їх рівня наведено в табл.2.6.

Таблиця 2.6. Значення множників трудомісткості залежно від оцінки їх рівня (EarlyDesign)

множник

трудомісткості,

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

Extra Low

Very Low

Low

Nominal

High

Very High

Extra High

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

SCED

n/a

1,43

1,14

1,00

1,00

n/a

n/a

Примітка: n / a (not available) - дані відсутні, тобто відповідний рівень не оцінюється

2. Стадія детальної оцінки після опрацювання архітектури (Post Architecture). Для цієї оцінки необхідно оцінити для проекту рівень сімнадцяти множників трудомісткості :

а) параметри персоналу:

  • Analyst Capability (ACAP) - можливості аналітика;

  • Applications Experience (AEXP) - досвід розробки додатків;

  • Programmer Capability (PCAP) - можливості програміста;

  • Personnel Continuity (PCON) - тривалість роботи персоналу;

  • Platform Experience (PEXP) - досвід роботи з платформою;

  • Language and Tool Experience (LTEX) - досвід використання мови програмування та інструментальних засобів.

б) параметри продукту:

  • Required Software Reliability (RELY) - необхідна надійність програми;

  • Database Size (DATA) - розмір бази даних;

  • Software Product Complexity (CPLX) - складність програми;

  • Required Reusability (RUSE) - необхідна можливість багаторазового використання;

  • Documentation Match to Life-Cycle Needs (DOCU) - відповідність документації потребам життєвого циклу.

в) параметри платформи:

  • Execution Time Constraint (TIME) - обмеження часу виконання;

  • Main Storage Constraint (STOR) - обмеження пам'яті;

  • Platform Volatility (PVOL) - змінюваність платформи.

г) параметри проекту:

  • Use of Software Tools (TOOL) - використання інструментальних програмних засобів;

  • Multisite Development (SITE) - багатоабонентська (віддалена) розробка;

  • Required Development Schedule (SCED) - потрібне виконання графіка робіт.

Значення множників трудомісткості залежно від їх рівня наведено в табл.2.7.

Таблиця 2.7 – Значення множників трудомісткості залежно від оцінки їх рівня (Post Architecture)

Effort Multiplier,

Very

Low

Low

Nominal

High

Very

High

Extra

High

Personnel Factors

1

ACAP

Analyst Capability

1,42

1,29

1,00

0,85

0,71

n/a

2

AEXP

Applications Experience

1,22

1,10

1,00

0,88

0,81

n/a

3

PCAP

Programmer Capability

1,34

1,15

1,00

0,88

0,76

n/a

4

PCON

Personnel Continuity

1,29

1,12

1,00

0,90

0,81

n/a

5

PEXP

Platform Experience

1,19

1,09

1,00

0,91

0,85

n/a

6

LTEX

Language and Tool Experience

1,20

1,09

1,00

0,91

0,84

n/a

Product Factors

7

RELY

Required Software Reliability

0,84

0,92

1,00

1,10

1,26

n/a

8

DATA

Database Size

n/a

0,23

1,00

1,14

1,28

n/a

9

CPLX

Software Product Complexity

0,73

0,87

1,00

1,17

1,34

1,74

10

RUSE

Required Reusability

n/a

0,95

1,00

1,07

1,15

1,24

11

DOCU

Documentation Match to Life-Cycle Needs

0,81

0,91

1,00

1,11

1,23

n/a

Platform Factors

12

TIME

Execution Time Constraint

n/a

n/a

1,00

1,11

1,29

1,63

13

STOR

Main Storage Constraint

n/a

n/a

1,00

1,05

1,17

1,46

14

PVOL

Platform Volatility

n/a

0,87

1,00

1,15

1,30

n/a

Project Factors

15

TOOL

Use of Software Tools

1,17

1,09

1,00

0,90

0,78

n/a

16

SITE

Multisite Development

1,22

1,09

1,00

0,93

0,86

0,80

17

SCED

Required Development

Schedule

1,43

1,14

1,00

1,00

1,00

n/a

Примітка: n / a (not available) - дані відсутні, тобто відповідний рівень не оцінюється

2.2.3 Оцінка тривалості проекту

Час розробки проекту в методиці COCOMO II для обох рівнів розраховується за формулою 2.6 (інші параметри визначені вище):

, (2.6)

де = 3,67; = 0,28; розрахована трудомісткість проекту без урахування множника , визначаючого стиск розкладу.

2.3. Завдання до лабораторної роботи 2

  1. Використовуючи вибрану інструментальну середовище розробки, створити програмний додаток «Калькулятор сосом» для розрахунку трудомісткості термінів розробки програмного продукту на основі різних конструктивних моделей вартості COCOMO зі зручним для користувача інтерфейсом.

  2. Дослідити вплив обсягу програмного коду (SIZE) на трудомісткість (РМ) і час розробки проекту (ТМ) для різних рівнів і версій COCOMO.

  3. Отримати значення PM і ТМ по всіх моделях для одного і того ж значення параметра SIZE, вибравши номінальний (середній) рівень складності проекту. Повторити розрахунок для простого проекту і проекту, що має високий ступінь новизни.

  4. Результати досліджень оформити графічно.

СПИСОК РЕКОМЕНДОВАНОЇ ЛІТЕРАТУРИ

  1. Соммервілл, Іан. Інженерія програмного забезпечення, 6-е вид. : Пер.з англ. - М .: Видавничий дім «Вільямс», 2002. - 624 с.

  1. Миньков С.Л. Техніко-економічне обґрунтування виконання проекту: методичний посібник. - Томськ: ТУСУР, 2014. - 30 с. [Електронний ресурс]. - http://asu.tusur.ru/learning/spec080801/d26/s080801_d26_work.docx

  2. Єжова Л. Ф. Інформаційний маркетинг: Навч. посібник. — К.: КНЕУ, 2002. — 560 с.

  3. Макконнелл C. Сколько стоит программный проект [Текст] / С. Макконелл. – СПб: Питер, 2007. – 304 с.

  4. Баценко Д.В. Метод калібрування моделі COCOMO шляхов редукції основного рівняння [Електронний ресурс]. – Режим доступа: http://archive.nbuv.gov.ua/portal/natural/Ipz/2011_1/Batzenko.pdf

Додаток А

Дерево характеристик якості програмного продукту

Додаток Б (довідковий)

Деякі приклади автоматизації розрахунку COCOMO

1. Інтерфейс онлайн-калькулятору

На сайті Центру системного і програмного інжинірингу Університету Південної Кароліни (США) (USC Center for Systems and Software Engineering) можна подивитися інтерфейс інтернет-калькулятора COCOMO Suite of Constructive Cost Models

(http://csse.usc.edu/tools/COCOMOSuite.php).

Рисунок Б.1 – Інтерфейс інтернет-калькулятора «COCOMO Suite of Constructive Cost Models»

У правому верхньому куті розташоване вікно вибору моделі. Тут:

COSYSMO - Constructive Systems Engineering Cost Model, COQUALMO - Constructive Quality Model.

На сайті http://csse.usc.edu/csse/tools/ знаходяться посилання на інші програмні продукти за розрахунком моделей СОСОМ, розроблені в USC CSSE.

2. Інтерфейс програми-калькулятора Costar 7.0

Програма-калькулятор Costar 7.0 розроблена компанією Softstar на основі моделі COCOMO II (http://www.softstarsystems.com/) для автоматизації оцінки вартості розробки програмних продуктів. Нижче наведені приклади інтерфейсу цієї програми для рівня детальної оцінки після опрацювання архітектури (Post Architecture).

Рисунок Б.2 – Встановлення 5-ти факторів масштабу (Scale Drivers)

Рисунок Б.3 – Вибір рівня фактору масштабу «Прецедентність» (Precedentedness, PREC)

Рисунок Б.4 – Вибір рівня фактору масштабу «Гнучкість розробки» (Development Flexibility, FLEX.)

Рисунок Б.5 – Вибір рівня фактора масштабу «Архітектура / Дозвіл ризиків» (Architecture / Risk Resolution, RESL)

Рисунок Б.6 – Вибір рівня фактора масштабу «Спрацьованість команди» (Team Cohesion, TEAM)

Рисунок Б.7 – Вибір рівня фактора масштабу «Зрілість процесів» (Process Maturity, PMAT)

Cost Drivers (Effort Multipliers)

Рисунок Б.8 - Виставлення 17-ти факторів витрат (Cost Drivers, або Effort Multipliers)

Рисунок Б.9 – Методичні рекомендації щодо вибору факторів витрат. Наприклад, «якщо ви не впевнені у виборі фактора, залиште його значення за замовчуванням (Nominal)»

Рисунок Б.10 – Вибір рівня фактора витрат ACAP

Рисунок Б.11 – Вибір рівня фактору витрат APEX

Рисунок Б.12 – Вибір рівня фактору витрат PCAP

Рисунок Б.13 – Вибір рівня фактору витрат PLEX

Рисунок Б.14 – Вибір рівня фактору витрат LTEX

Рисунок Б.15 – Вибір рівня фактору витрат PCON

Рисунок Б.16 – Вибір рівня фактору витрат TOOL

Рисунок Б.17 – Вибір рівня фактору витрат SITE

Рисунок Б.18 – Вибір рівня фактору витрат SCED

Рисунок Б.19 – Вибір рівня фактору витрат TIME

Рисунок Б.20 – Вибір рівня фактору витрат STOR

Рисунок Б.21 – Вибір рівня фактору витрат PVOL

Рисунок Б.22 – Вибір рівня фактору витрат RELY

Рисунок Б.23 – Вибір рівня фактору витрат DATA

Рисунок Б.24 – Вибір рівня фактору витрат CPLX

Рисунок Б.25 – Вибір рівня фактору витрат RUSE

Рисунок Б.26 – Вибір рівня фактору витрат DOCU

Рисунок Б.27 – Оцінка трудомісткості і часу виконання проекту об'ємом в 100 SLOC

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]