Емпіричне дослідження програмного забезпечення

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

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

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

 

6. Регресійний аналіз

 

На основі попередніх обчислень було проведено регресійний аналіз, результатом якого є побудова ліній регресії. Побудовані лінії регресії представлені нижче. Усі обчислення та сама побудова ліній регресії представлена у додатковому документі формату STATISTICA Workbook Курсовий проект_регресія.

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

 

Мал.12. Регресійний аналіз метрики NOC відносно експертної оцінки властивості Легкість у виконанні

 

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

 

Загальні висновки по курсовій роботі

 

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

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

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

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