Емпіричне дослідження програмного забезпечення
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
Зміст
1. Завдання2
2. Призначення, описання й характеристики властивості ПЗ та метрик4
2.1 Пояснення до експертних оцінок4
2.2 Пояснення метрик ПЗ за варіантом5
3. Опис алгоритмів та засобів7
4. Первинний статистичний аналіз метрик та експертних оцінок8
4.1 Openproj-1.4-src10
4.2 TalendOpen Studio 3.2.113
4.3 Plazma-source 0.1.815
4.4 Статичний аналіз трьох проектів разом17
5. Кореляційний аналіз20
5.1 Openproj-1.4-src20
5.2 TalendOpen Studio 3.2.121
5.3 Рlazma-source 0.1.822
5.4 Кореляційний аналіз трьох проектів разом23
6. Регресійний аналіз26
Загальні висновки по курсовій роботі28
1. Завдання
Метою курсової роботи є практичне засвоєння методів емпіричної інженерії програмного забезпечення та алгоритмів збору й аналізу даних.
Завдання включає вимірювання програмного забезпечення, аналіз і вибір прямих та непрямих метрик для дослідження та визначення залежностей між прямими та непрямими метриками.
Побудувати залежності між метриками ПЗ та експертною оцінкою властивості ПЗ. Метрики та властивості використати згідно індивідуального варіанту.
Побудова залежності між метриками та експертною оцінкою включає побудову залежностей між прямими метриками та експертною оцінкою, непрямими метриками та експертною оцінкою.
Значення експертних оцінок отримати з лабораторної роботи № 5, значення метрик (прямих та непрямих) отримати з лабораторної роботи № 6. Метрики та експертні оцінки повинні бути отримані для одних і тих самих проектів. Для достовірності отриманих даних по кожній метриці повинно бути отримано не менше 2000 значень (з лабораторної роботи № 6), експертних оцінок не менше 15-и. Залежності будувати між 5-ма прямими метриками та експертною оцінкою, 5-ма непрямими метриками та експертною оцінкою (використати метрики з лабораторної роботи № 6).
Отримані результати по залежностях між метриками та експертними оцінками порівняти із результатами побудови залежностей між прямими та непрямими метриками в лабораторних роботах № 4 та 5. Визначити чи мають спільні тенденції залежності між тими прямими метриками та експертними оцінками, непрямими метриками та експертними оцінками, які мають залежності між собою (прямі-непрямі метрики). Пояснити чому.
Таблиця №1
Варіанти індивідуальних завдань
ВластивостіПрямі метрикиНепрямі метрикиЛегкість виконання операцій, СупроводжуваністьLOC, NOC, HDD, CALL, NOMWMC, TCC, PNAS, BovR, CDISP
2. Призначення, описання й характеристики властивості ПЗ та метрик
Таблиця №2
Експертні оцінки властивостей ПЗ
Openproj-1.4-srcTalendOpen Studio 3.2.1plazma-source 0.1.8Зрозумілість987 Повнота1089Стислість879Портованість399Узгодженість983 Супроводжуваність765Тестованість789 Юзабіліті1097Надійність976 Структурованість1087 Ефективність988Безпека984Зрозумілість інтерфейсу10910Легкість виконання операцій1089Зрозумілість повідомлень про помилки598Очікуваність функціональності10810Документованість---96
2.1 Пояснення до експертних оцінок
Openproj-1.4-src
Супроводжуваність. Подальша супроводжуваність даного програмного забезпечення буде досить складною. Оскільки у програмному коді присутня велика кількість зайвих коментарів(коментарії були створені лише для автоматичної генерації документів), які не передають важливу інформацію, а лише ускладнюють розуміння програмного коду.
Легкість виконання операцій. Будь-які завдання, що реалізуються даним програмним забезпеченням, виконуються досить легко та швидко за не великий проміжок часу.
TalendOpen Studio 3.2.1
Супроводжуваність. Програмний код є дуже громіздким і простежується досить велика звязаність між окремими класами. Тому при зміні однієї ділянки коду можуть виникнути помилки в інших ділянках коду, при чому їх кількість через високу звязаність класів може бути досить високою.
Легкість виконання операцій. Виконувати операції, що реалізовані в програмі, надзвичайно легко, що забезпечується зрозумілим інтерфейсом та детальною документацією, а також завдяки досить високій швидкості роботи програми.
plazma-source 0.1.8
Супроводжуваність. Велика кількість коду прогамного забезпечення є важко супроводжуваним та простежуваним.
Легкість виконання операцій. Виконувати операції надзвичайно легко, що забезпечується зрозумілим інтерфейсом.
Нотатка. Під час виконання курсової роботи було проаналізовано також такі властивості програмного забезпеченя, як зрозумілість, повнота, стислість, портованість, узгодженість, тестованість, юзабіліті, надійність, структурованість, ефективність, безпека, зрозумілість інтерфейсу, зрозумілість повідомлень про помилки, очікуваність функціональності та документація. Усі експертні оцінки додаються у документі формату Microsoft Office Word Додаток до курсової роботи
2.2 Пояснення метрик ПЗ за варіантом
LOC метрика, що вказує на кількість фізичних рядків коду.
NOM метрика, що вказує на кількість методів у програмному коді.
NOC метрика, що вказує на кількість класів у проекті.
NDD метрика, що вказує на кількість кількості прямих нащадків.
CALL метрика, що вказує на кількість викликів методу.
WMC- метрика, що вказує на вагову значимість методів.
TCC метрика, що вказує на щільність згуртованості класу.
PNAS метрика, що вказує на частки нових додаткових послуг.
BovR метрика, що вказує на співвідношення перевизначених базових класів.
CDISP метрика, що вказує на дисперсійний звязок.
Нотатка. Результати вимірювання метрик вище зазначених проектів подано