Министерство образования Российской Федерации Санкт-Петербургский государственный электротехнический университет “ЛЭТИ”
...
19 downloads
216 Views
173KB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
Министерство образования Российской Федерации Санкт-Петербургский государственный электротехнический университет “ЛЭТИ”
РАБОЧАЯ ПРОГРАММА дисциплины Метрология программного обеспечения Для подготовки и дипломированных специалистов по направлению: 654600 “ИНФОРМАТИКА И ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА” по специальности 220400 -“Программное обеспечение вычислительной техники и автоматизированных систем”
Санкт - Петербург 2001
Санкт-Петербургский государственный электротехнический университет “ЛЭТИ”
“УТВЕРЖДАЮ” Проректор по учебной работе д.т.н., проф. Ушаков В.Н. “____”____________ 2002 г.
РАБОЧАЯ ПРОГРАММА дисциплины Метрология программного обеспечения Для подготовки и дипломированных специалистов по направлению: 654600 “ИНФОРМАТИКА И ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА” по специальности 220400 -“Программное обеспечение вычислительной техники и автоматизированных систем”
Факультет компьютерных технологий и информатики Кафедра математического обеспечения и применения ЭВМ Курс –4 Семестр – 8 Лекции
45 ч.
Экзамен
8 семестр
Лабораторные занятия
15 ч.
Зачет
8 семестр
Аудиторные занятия Самостоятельные занятия Всего часов
60 ч. 54 ч. 114 ч.
2001
2
Рабочая программа обсуждена на заседании кафедры математического обеспечения и применения ЭВМ “____”_______________2001 г., протокол №______. Рабочая программа согласована с рабочими программами изученных ранее дисциплин: 1) Организация ЭВМ и систем 2) Программирование и основы алгоритмизации Рабочая программа одобрена методической комиссией факультета компьютерных технологий и информатики “____”_____________2001г.
3
Цели и задачи дисциплины: Метрология программного обеспечения (ПО) – дисциплина, изучающая проблемы оценивания метрических характеристик качества ПО на этапах от разработки спецификаций до завершения отладки и тестирования программного продукта. В курсе рассматриваются критерии, характеристики и метрики качества ПО; особый упор делается на характеристики корректности, надежности и сложности программ. Изучаются формальные модели и методы оценивания как статических, так и динамических характеристик качества ПО, позволяющие на различных стадиях разработки выявлять просчеты и дефекты программного изделия. Рассматриваются инструментальные средства поддержки и автоматизации измерения характеристик ПО. Требования к уровню освоения дисциплины В результате изучения курса студенты должны: 1. ЗНАТЬ основные положения метрологии программных продуктов, принципы построения, проектирования и использования средств для измерений характеристик и параметров программ, программных систем и комплексов; 2. УМЕТЬ оценивать качество и эффективность ПО при решении задач разработки, проверки корректности, тестирования, выбора и усовершенствования программ в различных предметных областях; 3. ИМЕТЬ представление об основных направлениях развития метрологии ПО и проблемах разработки программных средств для автоматизации измерений характеристик программ.
Содержание рабочей программы Тема 1. Назначение курса. Основные понятия и термины метрологии ПО. Стандарты в области метрологии ПО. Цели и задачи курса, его связь с другими дисциплинами учебного плана. Метрология ПО – как основа повышения качества ПО. Основные понятия и ключевые слова: сложность проектирования ПО, трудоемкость, вычислительная сложность, производительность, эффективность, качество, метрика, измерительный монитор. Отечественные ГОСТы и международные стандарты по метрологии и качеству ПО. Рекомендуемая литература по курсу и ее характеристика. Тема 2. Понятие качества программного продукта (ПП). Показатели и характеристики качества ПП. Результаты разработки программного обеспечения: спецификация, проект, код, документация, тестовые наборы. Показатели, характеризующие качество разработки ПП. Характеристики качества собственно ПП: Корректность, Надежность, Сложность, Эффективность, Удобство использования, Сопровождаемость, Мобильность.
4
Тема 3. Критерии качества разработки и использования ПП. Виды метрик качества ПП. Проблемы управления качеством. Этапы цикла жизни ПП. Статический и динамический анализ качества ПП. Критерии качества технологий проектирования ПО и критерии качества собственно ПП. Функциональные и конструктивные критерии качества ПП. Виды метрик для оценки качества ПП: номинальные, порядковые, ранжирующие. Организация сбора метрик качества ПП. Управление качеством ПП по результатам обработки метрик. Тема 4. Интегральные метрики оценки сложности ПП Концептуальные модели и метрики сложности ПП. Подход Холстеда, основанный на измеряемых свойствах программы. Интегральные метрики длины и объема программы. Метрики информационного уровня программы и уровня языка программирования. Интеллектуальное содержание программы. Метрики работы и времени программирования. Метрики ожидаемого числа ошибок в программе. Устранение несовершенств программы по метрикам Холстеда. Тема 5. Измерительные методы анализа программ. Сущность измерительных методов определения характеристик ПО. Трассирующий и выборочный способы регистрации параметров исследуемых программ. Виды измеряемых характеристик программ. Детерминированные и статистические характеристики. Трассировочные записи, временные и частотные профили. Требования к измерительным мониторам. Классификация измерительных мониторов по способу реализации и режимам функционирования. Тема 6. Аппаратные измерительные мониторы. Структура и типы аппаратных измерительных мониторов (АИМ). АИМ с фиксированной и изменяемой программой: отличительные особенности и примеры реализации. Гибридные (программно-аппаратные) мониторы: причины развития и примеры. Проблемы планирования измерительных экспериментов и интерпретации результатов при использовании АИМ. Тема 7. Программные измерительные мониторы. Принцип действия программных измерительных мониторов (ПИМ). Классификация ПИМ. Обобщенная структура ПИМ. Организации функциональной и системной частей. Способы трассирования исходных и загрузочных программных модулей. Типовые ПИМ для контроля работоспособности и оценивания производительности программ. Достоинства и недостатки ПИМ. Тема 8. Примеры серийных и уникальных ПИМ. ПИМ "TurboProfiler" как серийный монитор ПК Intel 80X86 для ОС MSDOS. Назначение и возможности. Организация измерений. ПИМ Vtune как серийный монитор для ПК Intel80X86 под ОС WINDOWS. Назначение и возможности. Организация измерений. Достоинства и недостатки. ПИМ "Sampler" - монитор уникального типа для ПК Intel
5
80X86. Схема и методика измерений. коррекции измерений.
Временная диаграмма снятия отсчета. Способ
Тема 9. Оценка корректности программ. Понятие корректности программ. Методы проверки корректности. Особенности корректности текстов программ, программных модулей и корректности данных. Основные задачи анализа корректности программ. Валидация и верификация ПП. Доказательство корректности программ. Правила индуктивного вывода и аксиоматические методы Хоара. Особенности методов тестирования, влияющих на корректность программ. Тема 10. Модели описания структур программ. Оценка трудоемкости разработки ПП по метрикам структурной сложности. Графовые модели структур потока управления и потока данных программы. Понятие максимально связного графа и цикломатического числа. Метрики структурной сложности программ. Маршруты выполнения программ и их сложность. Критерии выбора маршрутов. Общая характеристика. Критерии выбора маршрутов по принципу минимального покрытия, на основе цикломатического числа и полного состава базовых структур графа управления программы. Влияние структурной сложности на трудоемкость тестирования программы. Тема 11. Тестирование программных продуктов. Цели, методы и критерии тестирования. Понятие теста. Основные принципы тестирования. Объекты тестирования и категории тестов для них. Тестирование на основе потока управления. Критерии покрытия операторов, решений и условий. Функциональное тестирование. Метод эквивалентного разбиения. Анализ граничных значений. Тема 12. Оценка надежности программ. Основные понятия надежности: отказ, сбой, ошибки и восстановление применительно к программным средствам. Количественные оценки (показатели) надежности. Математические модели надежности программ. Классификация и общая характеристика. Методы повышения надежности программ. Виды избыточности и особенности их применения. Методы испытания программ на надежность. ЗАКЛЮЧЕНИЕ Перспективы развития методов и систем автоматизации измерения характеристик программ.
6
Перечень лабораторных работ № 1
Наименование работы Расчет характеристик качества разработки программ по метрикам Холстеда
2
Измерение и настройка характеристик динамической сложности программ с помощью стандартного профилировщика TurboProfiler Измерение и настройка характеристик динамической сложности программ с помощью профилировщика Vtune Поиск «узких мест» и улучшение характеристик динамической сложности Программ с помощью уникального профилировщика Sampler. Разработка графовых моделей программ. Выделение маршрутов и оценка структурной сложности программных модулей. Выбор тестов и проведение тестирования ПП на основе методов Структурного тестирования Выбор тестов и проведение тестирования ПП на основе методов Функционального тестирования Оценка параметров надежности программ по временным моделям обнаружения ошибок
3 4 5 6 7 8
Номер темы 4 7,8 7,8 7,8 10 11 11 12
Распределение учебных часов по темам и видам занятий № те мы 1
Объем учебных часов
Название разделов и тем
Лек
4
Назначение курса. Основные понятия и термины. Стандарты в области метрологии ПО. Понятие качества программного продукта. Показатели и характеристики качества ПП. Критерии качества ПП. Виды метрик качества. Проблемы управления качеством ПП. Интегральные метрики оценки сложности ПП
5
Измерительные методы анализа программ.
6
Всего
Сем.
2
8
2
4
8
2
2
4
8
8
8
16
8
2
2
2
4
8
Аппаратные измерительные мониторы.
2
2
4
6
8
7
Программные измерительные мониторы.
4
4
4
8
8
8
Примеры серийных и уникальных ПИМ.
4
9
8
17
8
9
Оценка корректности программ.
4
4
4
8
8
10
4
2
6
4
10
8
11
Модели структур программ. Оценка трудоемкости ПП по метрикам структурной сложности. Тестирование программных продуктов.
6
4
10
8
18
8
12
Оценка надежности программ.
6
2
8
8
16
8
Заключение.
1
1
8
2 3
ИТОГО:
Сам. Раб.
2
Ауд. Занят 2
2
2
2 6
45
Лаб. Раб.
2
5
1 15
60
54
114
7
ЛИТЕРАТУРА Основная
№ 1
2
3
Название, библиографическое описание Изосимов А.В., Рыжко А.Л. Метрическая оценка качества программ.- М., МАИ, 1989. Иыуду К.А. Надежность, контроль и диагностика вычислительных машин и систем. Учебное пособие для ВУЗов.- М.: Высшая школа, 1989. Кузовлев В.И.,Шкатов П.Н. Разработка САПР: в 10 кн. Кн.8: Математические методы анализа производительности и надежности САПР, М.: Высшая школа, 1990.
Л
8
8
8
Лр
К-во экз. в библ. (на каф.)
Гриф
8
Уч 0, ф2
ГК СССР по нар.обр.
8
Уч 0, ф2
ГК СССР по нар.обр.
8
Уч 11, ф2
ГК СССР по нар.обр.
Дополнительная
№ 1
Название, библиографическое описание
2
Липаев В.В. Качество программного обеспечения. - М.: Финансы и статистика, 1983. Холстед М.Х. Начала науки о программах. - М.: Финансы и статистика,1981.
3
Майерс
4 5 6
Г. Искусство тестирования программ.- М.: Финансы и статистика,1982. Боэм Б. и др. Характеристики качества программного обеспечения. Пер. с англ. Е.К.Масловского. - М.: Мир, 1981. Назаров С.В.,Барсуков А.Г. Измерительные средства и оптимизация вычислительных систем.- М.:Радио и связь, 1990.- 248с. Коган Б.И. Экспериментальные исследования программ.- М.: Наука, 1988.- 184с.
К-во экз. в библ. 16 17 48 0 0 0
8
Автор к.т.н., доцент
Кирьянчиков В.А.
Рецензент к.т.н., доцент
Павлов С.М.
Зав. кафедрой МОЭВМ д.т.н., профессор
Лисс А.Р.
Декан факультета КТИ д.т.н., профессор
Герасимов И.В.
Программа согласована: Зав.отделом учебной литературы Председатель методической комиссии факультета КТИ к.т.н., доцент Руководитель методического отдела, к.т.н., доцент
Смирнова О.Н.
Чугунов Л.А. Марасина Л.А.
9