Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Метрическая теория программ. Разновидности метрик. ШкалыСодержание книги
Поиск на нашем сайте
Метрика – это мера, определяющая расстояние между элементами множества, которая обладает следующими свойствами: 1. Неотрицательна (>=0) 2. Нулевая при совпадении элементов 3. Симметрична (AB = BA) 4. Подчиняется закону треугольника (AB + BC > AC) Метрика качества программ – система измерений качества программ. Эти измерения могут поводится на уровне критериев качества программ (сравнение программ по качеству) или на уровне отдельных характеристик качества. В исследовании метрик выделяют два основных подхода: 1. Метрики оценки самого ПО (поиск метрик, характеризующих наиболее специфические свойства программ) 2. Метрики оценки технологии разработки ПО (оценка технических характеристик и факторов разработки программ) По виду информации, получаемой при оценке качества ПО метрики можно разбить на три группы: 1. Метрики, оценивающие отклонение от нормы характеристик исходных проектных материалов (устанавливают полноту заданных технических характеристик исходного кода); 2. Метрики, позволяющие прогнозировать качество разрабатываемого ПО; 3. Метрики, по которым принимается решение о соответствии конечного ПО заданным требованиям. В зависимости от характеристик и особенностей применяемых метрик им ставятся в соответствие различные измерительные шкалы: 1. Номинальной шкале соответствуют метрики, классифицирующие программы по признаку наличия или отсутствия какой-либо характеристики без учёта градации. Например: программы можно группировать как "нетрудные для понимания", умеренно трудные для понимания", "трудные для понимания", "очень трудные для понимания". 2. Порядковой шкале соответствуют метрики, позволяющие ранжировать некоторые характеристики путем сравнения с опорными значениями, т.е.программы классифицируются по градации наличия какой-либо характеристики и упорядоченно располагаются по оси этой характеристики. Например: некоторые программы А,В,С, относятся к разряду "умеренно трудных для понимания", но программа В труднее программы А, а программа А труднее программы С. 3. Метрики интервальной шкалы показывают не только относительное положение программ, но и то на сколько условных единиц отстоит одна программа от другой. Например: можно сказать: программа В труднее программы А на 10 единиц. 4. Относительная шкала позволяет не только расположить программы определенным образом и оценить положение программ относительно друг друга, но и позволяют классифицировать их таким образом, что возможна сравнительная оценка других программ относительно базовой. Например: можно сказать, программа В в два раза труднее программы А. 3. В настоящее время в мировой практике используется несколько сотен метрик программ. Существующие качественные оценки можно сгруппировать по 6 основным направлениям: 1. Оценка топологической и информационной сложности программ. 2. Оценка надёжности ПС, позволяющая прогнозировать отказы и отказовые ситуации. 3. Оценка производительности ПО и повышения его эффективности путем выявления ошибок проектирования. 4. Оценка уровня языковых средств и их применения. 5. Оценка трудности восприятия и понимания программных текстов, ориентированная на психологические факторы, существенные для сопровождения и модификации программ. 6. Оценка производительности труда программиста для прогнозирования сроков и этапов разработки программ. Метрики сложности программ Поскольку проблема сложности программ включает широкий круг вопросов, начнем с рассмотрения основных направлений исследований в области оценки сложности программ, используя примеры метрических характеристик, применяемых на практике. При оценке сложности выделяют 3 группы метрик: 1. Метрики размера.2. Метрики сложности потоков управления программы. 3.Метрики сложности потоков данных программы.
1. Оценки первой группы наиболее просты и потому получили более широкое применение. Традиционной характеристикой размера программ является количество строк исходного текста. (Под строкой понимается любой оператор программы, поскольку реально при оценке размера программ используется информация именно о количестве операторов). Непосредственное измерение размера программы, несмотря на свою простоту, дает хорошие результаты. Ее недостаточно для принятия решения о сложности, но она вполне применима для классификации программ, различающихся по объему. Т.о., оценка размера программы – оценка по номинальной шкале. К группе оценок размера программ можно отнести метрику Холстеда. За базу принят подсчет количества операторов и операндов, используемых в программе., т.е. также определение размера программы. Основу метрики Холстеда составляют четыре измеряемые характеристики программы: η1 – число уникальных, различных операторов программы, включая символы-разделители, знаки операций, имена процедур и функций (словарь операций). η2 – число уникальных, различных операндов программы (словарь операндов). N1 – общее количество операторов в программе. N2 – общее количество операндов в программе. Опираясь на эти характеристики, получаемые непосредственно при анализе исходных текстов программ, М.Холстед вводит следующие оценки: словарь программы η = η1 + η2 (1) длину программы N = N1+N2 (2) объем программы V = Nlog2 η (3)
Далее М.Холстед вводит η* - теоретический словарь программы, т.е.словарный запас, необходимый для написания программы с учетом того, что необходимая функция уже реализована в данном языке и, следовательно, программа сводится к вызову этой функции. Например: согласно М.Холстеду, возможное осуществление процедуры выделения простого числа могло бы выглядеть так:
CALL SIMPLE (X,Y), где Y- массив численных значений, содержащих искомое число X. Теоретический словарь в данном случае будет состоять из
η*: { CALL, SIMPLE (…)}, η1*=2 η2*: {X,Y}, η2* = 2,
а его длина η* = η1* + η2*, будет равна 4. (4)
Используя η*, Холстед вводит характеристику V*: V* = η*log2 η*, (5) с помощью которой описывается потенциальный объем программы, соответствующий максимально компактному тексту программы, реализующей данный алгоритм. Задание: Для одной из своих программ рассчитать: 1) Реальную длину программы, (N). 2) Теоретическую длину программы, (η*) 3) Реальный объем программы, (V) 4) Потенциальный объем программы(V*). КОНТРОЛЬНЫЕ ВОПРОСЫ 1. Перечислите наиболее известные методы оценки метрических характеристик качества программных продуктов. 2. Перечислите основные требования к критериям качества ПО. 3. Перечислите разновидности метрик, шкал. Поясните принципы двух основных подходов в исследовании метрик. 4. Как с помощью метрик сложности программ определить длину и объём программы? ЛИТЕРАТУРА 1. Липаев В.В. Качество программного обеспечения. – М.: Финансы и статистика, 1983. 2. Холстед М. Начала науки программирования. - М.: Финансы и статистика, 1981.
Лабораторная работа №6
|
||||
Последнее изменение этой страницы: 2016-12-28; просмотров: 1111; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.219.13.53 (0.009 с.) |