Литература
1. Вентцель Е.С. Теория вероятностей. М.: Наука, 1969.
2. Смирнов Н.В., Дудин-Барковский И.В. Курс теории вероятностей и математической статистики для технических приложений. М.: Наука, 1965.
3. Обзор «Просто о сложном. Введение в статистический контроль качества производственного процесса». Серия: Все о качестве. Зарубежный опыт. Вып.11. М.: 1999г.
Метрология программного обеспечения (ПО) – дисциплина, изучающая проблемы оценивания метрических характеристик качества ПО на этапах от разработки спецификаций до завершения отладки и тестирования программного продукта. В курсе рассматриваются критерии, характеристики и метрики качества ПО; особый упор делается на характеристики корректности, надежности и сложности программ. Изучаются формальные модели и методы оценивания как статических, так и динамических характеристик качества ПО, позволяющие на различных стадиях разработки выявлять просчеты и дефекты программного изделия. Рассматриваются инструментальные средства поддержки и автоматизации измерения характеристик ПО.
Лабораторная работа №5
Расчет характеристик качества разработки программ
Оценка сложности программ.
Метрики Холстеда для определения размера программ
ЦЕЛЬ РАБОТЫ: изучение методов оценки метрических характеристик качества программных продуктов. Приобретение практических навыков по оценке сложности программных продуктов.
1. ОСНОВНЫЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ
Существует множество разных подходов к оценке качества программ. С одной стороны, оценить качество объективно может только пользователь (причем такая оценка трудно формализуется). С другой – обеспечить необходимый уровень качества может только разработчик, добившись определенных характеристик конструкции и технологии создания программ. Эти характеристики также трудно формализуются и практически не соответствуют оценкам пользователей.
Взаимосвязь этих двух процессов возможна лишь при наличии формализованной модели оценки качества ПО и факторов его определяющих.
Качество ПО – это совокупность свойств, определяющих полезность изделия (программы) для пользователей в соответствии с функциональным назначением и предъявленными требованиями.
Оценка качества включает в себя два основных этапа: 1) получение информации о фактическом состоянии контролируемого объекта; 2) сопоставление этой информации с предъявленными требованиями, т.е.установление факта соответствия реальных свойств с требуемыми.
Следовательно, необходимо располагать некоторой системой измеряемых показателей качества, которая позволила бы сформулировать требования и контролировать их выполнение в процессе разработки ПО. Как правило, для построения такой оценки применяются иерархические многоуровневые модели. Позволяющие: 1) предоставить максимум информации непосредственным исполнителям, для выявления причин ухудшения той или иной характеристики качества; 2)определять требования к ПО на самых ранних стадиях разработки. Здесь важно отметить простоту формулировок и понятность требований
С иерархическими многоуровневыми моделями связано несколько определений:
Свойство программы - это её объективные особенности, проявляющиеся при её разработке, эксплуатации и (или) сопровождении.
Показатель качества программы – это понятие, отражающее определённую часть свойств программы и поддающееся интуитивной оценке.
Характеристика качества программы – это понятие, отражающее отдельные факторы (свойства), влияющие на качество программы и поддающиеся измерению.
Критерий качества – это численный показатель, характеризующий степень, в которой программе присущи оцениваемые свойства.
Основные требования к критериям качества ПО:
Критерий должен численно характеризовать основную целевую функцию программы.
Критерий должен обеспечивать возможность определения затрат (не только денежных), необходимых для достижения требуемого уровня качества, а также степени влияния на показатель качества различных внешних факторов.
Критерий должен быть по возможности простым, хорошо измеримым и иметь малую дисперсию.
Примеры критериев: Сложность, корректность, надёжность, трудоёмкость
Примеры свойств: число строк программы, количество точек входа, время подготовки исходных данных, общее время работы, время выдачи выходных результатов, количество разработчиков.
Примеры свойств программ: субъективные свойства (время ввода исходных данных), объективные (количество операторов, количество строк, время работы программы).
Характеристики: субъективная характеристика (удобство интерфейса), объективная характеристика (точность результата).
Для измерения характеристик и критериев качества необходим соответствующий математический аппарат.
- Предисловие
- Введение
- Техника безопасности при выполнении лабораторных работ
- 1. Общие требования безопасности
- 2. Требования безопасности перед началом работы
- 3. Требования безопасности во время работы
- 1.1.2. Идентификация формы распределения результатов измерений. Критерии согласия
- Критерий пирсона
- Критерий колмогорова
- Составной критерий
- 1.2. Порядок выполнения работы
- Обработка результатов измерений
- 1. 3. Содержание отчета
- 1. 4. Контрольные вопросы
- 2.1.2. Точечные оценки законов распределения
- 2.1.3. Доверительная вероятность и доверительный интервал
- 2.1.4. Грубые погрешности и методы из исключения
- 2.1.4.1. Критерии исключения грубых погрешностей
- 2.1.5. Суммирование погрешностей
- 2.1.6. Порядок обработки результатов прямых многократных измерений
- 1.2. Порядок выполнения работы
- Обработка результатов измерений
- 2. 3. Содержание отчета
- 2.4. Контрольные вопросы
- Учебно-методическое обеспечение
- Лабораторная работа № 3 контроль качества технологического процесса с помощью карт контроля по количественному признаку
- 3.1. Теоретическая часть
- 3.1.1. Общие сведения о контрольных картах
- 3.1.2. Построение контрольной карты
- 3.1.3. Карты контроля по количественному признаку
- 3. 2. Порядок выполнения работы
- Обработка результатов измерений
- 3. 3. Содержание отчета
- 4. Контрольные вопросы
- 4. 2. Порядок выполнения работы
- Обработка результатов измерений
- 2.1. Вычисляется величина среднего квадратического отклонения для всей выборки измерений (изделий) по формуле ,
- 3. 3. Содержание отчета
- 4. Контрольные вопросы
- Литература
- 2. Метрическая теория программ. Разновидности метрик. Шкалы
- 3. Метрики сложности программ
- 2. Цикломатическое число Маккейба
- 3. Метрика Джилба оценки сложности
- 4. Метрика «граничных значений» оценки сложности
- 5. Описание алгоритма
- Подграфы программы
- Скорректированная сложность вершин графа программы
- Задание
- Контрольные вопросы
- 2. "Спен"
- 3. Метрика Чепина.
- 2. Метрики Холседа для оценки стилистики и понятности программ
- Уровень качества программирования
- Задание
- Контрольные вопросы
- Литература
- Лабораторная работа № 9 Метрики использования языков программирования и технологических средств
- Оценки языка программирования
- 2. Уровень автоматизации программирования
- 2.2. Обработка результатов измерений
- 2. 3. Содержание отчета