- •1. Що включає в себе первинний статистичний аналіз?
- •2. Як побудувати гістограму?
- •3. Що таке гістограма?
- •Як перевірити точність отриманих даних?
- •Які статистичні характеристики використовуються для визначення відхилень?
- •Що таке математичне сподівання?
- •Що таке дисперсія?
- •Що таке середнє квадратичне відхилення?
- •9. Для чого використовується коефіцієнт асиметрії?
- •Що значить коефіцієнт ексцесу?
- •Як визначити, чи існує нормальний закон розподілу?
- •12. Що таке закон розподілу?
- •13. Які види гістограм ви знаєте?
- •14. Що таке коефіцієнт кореляції?
- •15. Які властивості коефіцієнта кореляції?
- •16. Які є види коефіціентів кореляції? Чим вони відрізняються?
- •17.Як розраховується парна рангова кореляція?
- •18. Як визначаэться, чи існує залежність між метриками?
- •1 9. Як можна розрахувати коефіцієнт кореляції?
- •20. Що таке регресія?
- •21. Для чого використовується регресія?
- •22. Які є передумови визначення регресії?
- •23. Які є методи побудови регресії?
- •24. Як побудувати регресію?
- •25. Як визначити функцію регресії?
- •26. Які визнаєте засоби автоматизації обробки даних?
- •27. Які визнаєте засоби автоматизації аналізу даних?
- •28. Що таке caesEзасоби?
- •29. Що таке експертне оцінювання?
- •30. Які ви знаєте властивості програмного забезпечення?
- •31. Як і коли може використовуватися експертне оцінювання програмного забезпечення?
- •32. Що таке рефакторинг?
- •33. Які дані можна отримати після проведення вимірювань в Visual Studio?
- •35. Які дані можна отримати після проведення вимірювань в iPlasma?
- •37. При рефакторингу використовуються наступні метрики пз
- •40. Які метрики краще використовувати при проведенні рефакторинга? Чому?
- •41. Як можна використати метрики при розробці нового пз?
- •42. Які метрики краще використовувати і для яких цілей при розробці нового пз?
32. Що таке рефакторинг?
Рефакторинг — перетворення програмного коду, зміна внутрішньої структури програмного забезпечення для полегшення розуміння коду і легшого внесення подальших змін без зміни зовнішньої поведінки самої системи
Підстави для проведення рефакторингу:
Код дублюється.
Підпрограма занадто довга.
Цикл занадто довгий, або рівень вкладеності тіла циклу занадто великий.
Клас має багато обов'язків, слабо пов'язаних між собою.
Інтерфейс класу не забезпечує достатній рівень абстракції.
Функція має занадто багато параметрів.
Потрібно одночасно змінювати кілька паралельних ієрархій класів.
Споріднені дані, які використовуються разом, не організовані в клас.
Клас не виконує ніяку роботу самостійно, а тільки передоручає обов'язки іншим класам.
Назва класу чи методу має ім'я, яке недостатньо точно відповідає змісту.
Клас має занадто багато відкритих (public) членів.
Нестатичний клас складається тільки з даних або тільки з методів.
В ланцюжку викликів методів передається багато зайвих даних.
- Занадто поширене використання глобальних змінних.
33. Які дані можна отримати після проведення вимірювань в Visual Studio?
За допомогою Visual Studio можна отримати значення 5-и метрик
Опис метрик:
Maintainability Index - комплексний показник якості коду. Цей показник розроблений фахівцями з Carnegie Mellon Software Engineering Institute.
HV - Halstead Volume , обчислювальна складність . Чим більше операторів , тим більше значення цієї метрики ;
CC - Cyclomatic Complexity . Ця метрика описана нижче ;
LoC - кількість рядків коду.
Ця метрика може приймати значення від 0 до 100 і показує відносну складність підтримки коду. Чим більше значення цієї метрики , тим легше підтримувати код .
Visual Studio позначає методи/класи зеленим кольором , якщо значення метрики знаходиться в межах від 20 до 100, жовтим кольором , якщо значення знаходиться в межах від 10 до 20, і червоним кольором, коли значення менше 10.
Cyclomatic Complexity - показує структурну складність коду, тобто кількість різних гілок в коді. Чим біль ше цей показник, тим більше тестів має бути написано, для повного покриття коду.
Depth of Inheritance - глибина успадкування. Ця метрика показує для кожного класу, який він по рахунку в ланцюжку успадкування. Наприклад, є 3 класа A, B, C, B успадкований від А, а С успадкований від В, то значення цієї метрики для класів A, B і C буде дорівнює відповідно 1, 2 і 3.
Class Coupling - показує ступінь залежності класів один з одним. У розрахунок беруться унікальні класи з параметрів, локальних змінних, повертаючого типу, базового класу, атрибутів. Хороший дизайн програмного забезпечення передбачає невелику кількість пов'язаних класів. Чим їх більше, тим складніше надалі перевикористати цей клас, а також підтримувати, тому що існує дуже багато залежностей.
Lines of Code - показує кількість рядків коду. Цей показник показує не точну кількість рядків у вашому файлі, так як підрахунок заснований на IL- коді. У розрахунок не беруться порожні рядки, коментарі, оголошення типів і просторів імен. Велика кількість рядків у методі/класі може показувати на помилки в проектуванні і на те, що цей код можна розділити на кілька частин.
