Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Черников / Лекции / Username5 (2)

.docx
Скачиваний:
76
Добавлен:
15.04.2018
Размер:
441.92 Кб
Скачать

Оценка качества программ на основе процедурно-ориентированных метрик.

Метрики на основе функциональных указателей

Для косвенной оценки уровня качества процедурно-ориентированных ПС используют метрику дефектов качества

DQ=

Предполагается 0<=DQ<=1

Эту метрику качества можно рассчитать не на основе количества строк программы(LOC), а на основе функциональных указателей (FP-Function Points) Алана Альбрехта(ввел метрику в 1979 году)

Достоинство – легкость вычисления.

Недостаток – результаты основываются на субъективных данных: используются не прямые, а косвенные измерения.

Количество функциональных указателей является мерой внешних обращений к данным, под которыми понимают ссылки на внешние ввод, внешний вывод, внешний запрос, автономный локальный файл, раздельный глобальный файл

F=

Ki=коэффициенты регулировки сложности

F-общее количество функциональных указателей

F=

Оценочные элементы:

f1-количество внешних вводов (вводов данных пользователем)

f2-количество внешних выводов (отчеты , экраны, распечатки, сообщения)

f3-количество внешних запросов (диалоговых вводов-выводов)

f4-количество локальных внутренних логических файлов (группа логически связанных данных, которая размещена внутри приложения и обслуживается через внешние вводы, наборы без данных)

f5-количество внешних интерфейсных файлов-разделяемых с другими программами глобальных файлов (группа логически связанных данных, которая размещена внутри другого приложения и поддерживается им, внутренний логический файл в другом приложении)

Исходные данные для расчета FP-метрик

Характеристика

Учет сложности

Итого

Низкая

Средняя

Высокая

Внешние вводы

m × 3 =

m × 4 =

m × 5 =

Внешние выводы

m × 4 =

m × 5 =

m × 7 =

Внешние запросы

m × 3 =

m × 4 =

m × 6 =

Внутренние логические файлы

m × 7 =

m × 10 =

m × 15 =

Внешние интерфейсные файлы

m × 5 =

m × 7 =

m × 10 =

Общее количество

Значение коэффициентов регулировки сложности зависит от ответов на 14 вопросов, касающихся влияния определенных факторов на выполнение функций программного обеспечения:

1. Какое влияние имеет наличие средств передачи данных?

2. Какое влияние имеет распределенная обработка данных?

4. Какое влияние имеет критичность к требованиям производительности и ограничению времени

ответа?

5. Какое влияние имеет частота транзакций?

6. Какое влияние имеет ввод данных в режиме реального времени?

7. Какое влияние имеет эффективность работы конечного пользователя?

8. Какое влияние имеет оперативное обновление локальных файлов в режиме реального времени?

9. Какое влияние имеет скорость обработки данных (вычислений)?

10. Какое влияние имеют количество и категории пользователей?

11. Какое влияние имеет легкость инсталляции?

12. Какое влияние имеет легкость эксплуатации?

13. Какое влияние имеет разнообразие условий применения?

14. Какое влияние имеет простота внесения изменений?

Варианты ответов:

  1. Влияние случайное

  2. Небольшое эпизодическое

  3. Основное, существенное

DQ=

На основе FP формируются другие оценки:

Производительность = Функц_Указатель/Затраты(FP/чел-мес)

Удельная Стоимость = Стоимость/Функц_Указатель(тыс.руб/FP)

Документированность = Страниц_Документа/Функц_Указатель(Страниц/FP)

Для продуктов с высокой алгоритмической сложностью используются метрики свойств (Features Points) применимы к системному и инженерному ПО, ПО реального времени и встроенному ПО

Для вычисления указателя свойств добавляется ещё одна характеристика – количество алгоритмов (алгоритм здесь определяется как ограниченная программа вычислений, которая включается в общую программу)

Значение каждого указателя свойств вычисляется по формуле расчета функционального указателя FP

Для сложных систем в реальном масштабе времени это значение на 25-30 % больше значения, вычисляемого по таблице для количества функциональных указателей

Известны примерные соотношения значений указателей FP c количеством строк кода LOC для различных языков программирования

Метрики связанности и сцепления модулей

Уровень качества ПС – прямо пропорционален силе связанности(прочности) и обратно пропорционален силе сцепления модулей

Для повышения надежности качество ПС предполагает максимизацию связанности и минимизацию сцепления модулей.

Для измерения связанности используют целочисленную шкалу силы связанности в интервале значений от 0 до 10.

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

Процедура определения типа связанности модуля

В случаях, когда такая процедура окажется неприемлемой (модулю соответствует сразу

несколько типов связанности) ему приписывают тип с наименьшей связанностью.

Слабое сцепление между модулями служит признаком хорошо спроектированной системы по следующим причинам:

  • Уменьшение количества соединений между модулями приводит к уменьшению вероятности появления «волнового эффекта»

  • Минимализация риска появления «эффекта ряби», т.к. изменение влияет на минимальное количество модулей

  • При сопровождении модуля отсутствие необходимости беспокоиться о внутренних деталях других моделей

  • Упрощение системы для понимания, насколько это возможно

Способы достижения слабого сцепления модулей:

  1. Удаление необязательных связей

  2. Упрощение необходимых связей

  3. Уменьшение количества необходимых связей

Рекомендации по ослаблению сцепления модулей:

  • Создание минимальных по количеству параметров межмодульных связей

  • Создание прямых межмодульных связей

  • Создание гибких связей для облегчения модификаций

  • Создание локализированных связей

  • Создание явных связей

Соседние файлы в папке Лекции