шніе виводи1 * 4=40 * 4=00 * 5=04Внешніе запроси1 * 3=00 * 3=00 * 4=03Внутренніе логічні файли0 * 7=00 * 7=00 * 10=00Внешніе інтерфейсні файли0 * 5=00 * 5=00 * 7=00Общее кількість FP16
Розглянемо другу налаштовувану форму «Лікування».
. Кількість зовнішніх вводів: 3 (Додати, Видалити, Скасувати) кожен елемент введення складається з 5 елементів даних (id, найменування, вартість лікування, дата).
. Кількість зовнішніх висновків: 1 (повідомлення повідомлення про помилку, якщо обов'язкові поля не заповнені);
. Кількість зовнішніх запитів: 2
. Кількість внутрішніх логічних файлів: 1
. Кількість зовнішніх інтерфейсних файлів: 0
Таблиця 2
НСВІтогоВнешніе вводи0 * 3=93 * 4=00 * 6=012Внешніе виводи1 * 4=00 * 5=00 * 7=04Внешніе запроси2 * 3=00 * 4=00 * 6=06Внутренніе логічні файли1 * 7=00 * 7=00 * 10=07Внешніе інтерфейсні файли0 * 5=00 * 7=00 * 10=00Общее кількість FP29
Розглянемо третій налаштовувану форму «Путівка».
. Кількість зовнішніх вводів: 3 (Додати, Видалити, Скасувати) кожен елемент введення складається з 7 елементів даних (id, лікування, кількість, номер, транспорт, вартість).
. Кількість зовнішніх висновків: 0
. Кількість зовнішніх запитів: 3
. Кількість внутрішніх логічних файлів: 1 таблиці (Лікування).
. Кількість зовнішніх інтерфейсних файлів: 0.
Таблиця 3
НСВІтогоВнешніе вводи0 * 3=03 * 4=120 * 6=012Внешніе виводи0 * 4=00 * 5=00 * 7=00Внешніе запроси3 * ??3=90 * 4=00 * 6=09Внутренніе логічні файли1 * 7=70 * 10=00 * 15=07Внешніе інтерфейсні файли0 * 5=00 * 7=00 * 10=00Общее кількість FP28
Підрахуємо загальну функціональну метрику для всього проекту:
FP=16 +29+ 28=73
Отриману загальну метрику необхідно суб'єктивним образом зважити, використовуючи наступну формулу:
=Общее_колічество * (0,65+ 0,01 *? 14 i=1 F i),
де F i - коефіцієнти регулювання складності.
Визначення системних параметрів програми
Кожен коефіцієнт може приймати наступні значення: 0 - немає впливу, 1 - випадкове, 2 - невелике, 3 - середнє, 4 - важливе, 5 - основне.
Таблиця 4
№Сістемний параметрОпісаніеКоеф.1Передача даннихСколько засобів зв'язку потрібно для передачі або обміну інформацією з додатком або системою? 22Распределенная обробка даннихКак обробляються розподілені дані і функції обробки? 33ПроізводітельностьНуждается користувач в фіксації часу відповіді або продуктивності? 34Распространенность використовуваної конфігурацііНасколько поширена поточна апаратна платформа, на якій буде виконуватися додаток? 25Скорость транзакційКак часто виконуються транзакції? (кожен день, кожну тиждень, кожен місяць) 56Оператівний введення даннихКакой відсоток інформації треба вводити в режимі онлайн? 57Еффектівность роботи кінцевого пользователяПріложеніе проектувалося для забезпечення ефективної роботи кінцевого користувача? 58Оператівное обновленіеКак багато внутрішніх файлів оновлюється в онлайновій транзакції? 59Сложность обработкіВиполняет Чи додаток інтенсивну логічну або математичну обробку? 210Повторная іспользуемостьПріложеніе розроблялося для задоволення вимог одного або багатьох користувачів? 511Легкость інсталляцііНасколько важкі перетворення та інсталяція програми? 212Легкость експлуатацііНасколько ефективні і/або автоматизовані процедури запуску, резервування і відновлення? 413Разнообразние умови размещеніяБила Чи спроектована, розроблена і підтримана можливість інсталяції програми в різних місцях для різних організацій? 214Простота ізмененійБила Чи спроектована, розроблена і підтримана в додатку простота змін? 4
В результаті кількість функціональних покажчиків одно:
FP=73 * (0.65 + 0.01 * (2 + 3 + 3 + 2 + 5 + 5 + 5 + 5 + 2 + 5 + 2 + 4 + 2 + 4))=73 * (0.65 + 0.49)=83.22
Зіставлення з LOC метрикою
Оцінивши складність проекту по функціонально орієнтованим метрикам необхідно пов'язати їх з конкретним мовою програмування. Для такої оцінки використовуються LOC-метрики (lines of code, LOC).
Отримані FP перераховуються в LOC використовую середньостатистичні показники.
Таблиця 5
Мова программірованіяКолічество LOC на FPAssembler320C128Fortran106Pascal90C ++ 64Java53Perl21HTML315Visual Basic32Visual C ++ 34Delphi29
Розробляється інформаційна система буд...