Метрика програмного забезпечення
Матеріал з Вікіпедії — вільної енциклопедії.
(Перенаправлено з Метрики програмного забезпечення)
Метрика програмного забезпечення (англ. software metric) — це міра, що дозволяє отримати числове значення деяких властивостей програмного забезпечення та його специфікацій.
Кількісні методи оцінювання добре показали себе в інших сферах науки, а тому багато теоретиків та практиків в галузі інформаційних технологій, спробували перенести цей підхід в розробку програмного забезпечення.
Метрики [ред.]
Набір метрик складається з:
- порядок зростання (мається на увазі аналіз алгоритмів, в термінах теорії складності обчислень)
- кількість рядків коду
- цикломатична складність
- аналіз функціональних точок
- кількість помилок на рядок коду
- ступінь покриття коду тестуванням
- покриття вимог
- кількість класів та інтерфейсів
- метрики від Роберта Сесіль Мартіна. ([1])
- зв'язність (англ. coupling)
- пов'язаність (англ. cohesion)
- час завантаження програми
- час виконання програми
- розмір бінарних файлів
- та інше.
Критика [ред.]
Потенційні недоліки підходу, на які націлена критика:
- Неетичність: стверджується, що неетично зводити оцінку роботи людини до декількох числових параметрів та за ними судити про продуктивності. Менеджер може назначити найталановитішого програміста на дуже важку частину роботи; це не значить, що розробка цієї частини займе найбільше часу та буде зроблено найбільше помилок, через складність роботи. Інший менеджер, що не знає про ці деталі, може вирішити, що програміст зробив свою роботу погано.
- Заміна «управління людьми» на «управління цифрами», які не враховують досвід програмістів та інші якості.
- Спотворення процесу. Процес розробки може бути перекрученим через те, що програмісти знають про метрики та намагаються оптимізувати ці показники, а не свою роботу. Наприклад, якщо кількість рядків вихідного коду є важливим показником, то програмісти зможуть писати неоптимальні рішення, які займають багато місця на екрані. Так, в середовищі програмістів є фразеологізм «індуський код».
- Неточність: нема метрик, які б були одночасно значущими та досить точними. Наприклад, кількість рядків коду — це просто кількість рядків, цей показник не демонструє складність рішення проблеми. Аналіз функціональних точок був розроблений з метою кращого вимірювання складності коду та специфікацій, але він використовує особисті оцінки оцінювача, тому різні люди отримують різні результати.
