Метрики программного обеспечения — это стандарт измерения, который содержит множество действий, которые включают некоторую степень измерения. Успех в измерении программного обеспечения заключается в качестве данных, собранных и проанализированных.
Что такое хорошие данные?
Собранные данные можно рассматривать как хорошие данные, если они могут дать ответы на следующие вопросы:
-
Они правы? — Данные могут считаться правильными, если они были собраны в соответствии с точными правилами определения метрики.
-
Они точны? — Точность относится к разнице между данными и фактическим значением.
-
Они точно точны? — Точность связана с количеством десятичных знаков, необходимых для выражения данных.
-
Они последовательны? — Данные могут считаться непротиворечивыми, если они не показывают существенных отличий от одного измерительного устройства к другому.
-
Связаны ли они с определенной деятельностью или периодом времени? — Если данные связаны с определенной деятельностью или периодом времени, то они должны быть четко указаны в данных.
-
Могут ли они быть воспроизведены? — Обычно такие исследования, как опросы, тематические исследования и эксперименты, часто повторяются при разных обстоятельствах. Следовательно, данные также должны быть легко воспроизведены.
Они правы? — Данные могут считаться правильными, если они были собраны в соответствии с точными правилами определения метрики.
Они точны? — Точность относится к разнице между данными и фактическим значением.
Они точно точны? — Точность связана с количеством десятичных знаков, необходимых для выражения данных.
Они последовательны? — Данные могут считаться непротиворечивыми, если они не показывают существенных отличий от одного измерительного устройства к другому.
Связаны ли они с определенной деятельностью или периодом времени? — Если данные связаны с определенной деятельностью или периодом времени, то они должны быть четко указаны в данных.
Могут ли они быть воспроизведены? — Обычно такие исследования, как опросы, тематические исследования и эксперименты, часто повторяются при разных обстоятельствах. Следовательно, данные также должны быть легко воспроизведены.
Как определить данные?
Данные, которые собираются для целей измерения, бывают двух типов:
-
Необработанные данные. Необработанные данные являются результатом первоначального измерения процесса, продуктов или ресурсов. Например: еженедельное расписание сотрудников в организации.
-
Уточненные данные — уточненные данные получаются в результате извлечения основных элементов данных из необработанных данных для получения значений атрибутов.
Необработанные данные. Необработанные данные являются результатом первоначального измерения процесса, продуктов или ресурсов. Например: еженедельное расписание сотрудников в организации.
Уточненные данные — уточненные данные получаются в результате извлечения основных элементов данных из необработанных данных для получения значений атрибутов.
Данные могут быть определены в соответствии со следующими пунктами —
- Место нахождения
- тайминг
- симптомы
- Конечный результат
- Механизм
- причина
- Строгость
- Стоимость
Как собирать данные?
Сбор данных требует наблюдения человека и отчетности. Менеджеры, системные аналитики, программисты, тестировщики и пользователи должны записывать данные строк в формы. Для сбора точных и полных данных важно:
-
Сделайте процедуры простыми
-
Избегайте ненужной записи
-
Обучите сотрудников необходимости записи данных и процедурам, которые будут использоваться
-
Своевременно и в удобной форме предоставлять результаты сбора и анализа данных исходным поставщикам, которые помогут им в их работе.
-
Проверьте все данные, собранные в центральном пункте сбора
Сделайте процедуры простыми
Избегайте ненужной записи
Обучите сотрудников необходимости записи данных и процедурам, которые будут использоваться
Своевременно и в удобной форме предоставлять результаты сбора и анализа данных исходным поставщикам, которые помогут им в их работе.
Проверьте все данные, собранные в центральном пункте сбора
Планирование сбора данных включает в себя несколько этапов —
-
Решите, какие продукты измерять на основе анализа GQM
-
Убедитесь, что продукт находится под контролем конфигурации
-
Определите, какие именно атрибуты измерять и как будут получены косвенные показатели
-
После того, как набор метрик станет ясным и будет определен набор измеряемых компонентов, разработайте схему для идентификации каждого вида деятельности, участвующего в процессе измерения.
-
Установите процедуру обработки форм, анализа данных и представления результатов.
Решите, какие продукты измерять на основе анализа GQM
Убедитесь, что продукт находится под контролем конфигурации
Определите, какие именно атрибуты измерять и как будут получены косвенные показатели
После того, как набор метрик станет ясным и будет определен набор измеряемых компонентов, разработайте схему для идентификации каждого вида деятельности, участвующего в процессе измерения.
Установите процедуру обработки форм, анализа данных и представления результатов.
Планирование сбора данных должно начинаться, когда начинается планирование проекта. Сбор фактических данных происходит на многих этапах разработки.
Например, некоторые данные, относящиеся к персоналу проекта, могут быть собраны в начале проекта, в то время как другой сбор данных, например, усилия, начинается в начале проекта и продолжается в процессе эксплуатации и обслуживания.
Как хранить и извлекать данные
В разработке программного обеспечения данные должны храниться в базе данных и настраиваться с использованием системы управления базами данных (СУБД). Пример структуры базы данных показан на следующем рисунке. В этой базе данных будут храниться сведения о разных сотрудниках, работающих в разных отделах организации.
На приведенной выше диаграмме каждое поле представляет собой таблицу в базе данных, а стрелка обозначает отображение «многие к одному» из одной таблицы в другую. Отображения определяют ограничения, которые сохраняют логическую согласованность данных.
После того, как база данных спроектирована и заполнена данными, мы можем использовать языки манипулирования данными для извлечения данных для анализа.