- •1.Особенности промышленной разработки сложных систем
- •2.Объекты уязвимости программных средств. Характеристика дестабилизирующих факторов, влияющих на качество программных средств.
- •3.Схема взаимосвязей факторов, влияющих на качество программных средств
- •4.Структура взаимосвязей метрик характеристик качества программных средств
- •5.Особенности измерения характеристик качества программных средств
- •6.Категории характеристик качества программных средств и соответствующие им шкалы
- •7.Понятие алгоритмической сложности. Верхняя оценка алгоритмической сложности
- •8.Свойства алгоритмической сложности
- •9.Понятие структурной сложности программ. Цикломатическое число (2 лекция)
- •10.Характеристика маршрутов исполнения программ. Сложность вычислительных маршрутов и маршрутов принятия логических решений. Общая сложность программы
- •11.Поток управления. Граф потока управления. Оценка сложности программы по первому критерию выделения маршрутов. Недостатки критерия.
- •12.Полносвязный граф. Оценка сложности программы по второму критерию выделения маршрутов. Правильно структурированные программы, их особенности.
- •13.Оценка сложности программы по третьему критерию выделения маршрутов
- •14.Управляющий граф программы. Метрика Маккейба. Цикломатическая сложность программы
- •15.Временная сложность алгоритмов и программ. Особенности оценки временной сложности
- •16.Базовые принципы оценки временной сложности для операций присваивания, последовательности операций, конструкций ветвления, циклов.
- •17.Назначение и цели сертификации. Объекты сертификации
- •Объекты сертификации
- •18.Обобщенная схема сертификации. Особенности сертификации по. Методики оценки показателей
- •19.Метрика дефектов качества программных средств. Характеристика метода Альбрехта. Производные метрики
- •20.Расчет количества функциональных указателей. Оценочные элементы для расчета количества функциональных указателей
- •21.Коэффициенты регулировки сложности и весовые коэффициенты важности при оценке качества на основе функциональных указателей
- •22.Характеристика оценки качества программ на основе метрик свойств
- •23.Связность модулей программных средств. Шкала и типы связности
6.Категории характеристик качества программных средств и соответствующие им шкалы
Характеристика, субхарактеристики и атрибуты качества ПС
Категорийные-описательные ( набор свойств и общие характеристики ) – его функции, категории ответственности, защищенности и важности, которые могут быть представлены номинальной шкалой
Количественные-представляемые множеством упорядоченных, числовых точек, отражающих непрерывные закономерности и описываемые интервальной и относительной шкалой
Качественные-характеризуются порядковой или точечной шкалой набора категорий (есть-нет, хорошо-плохо), устанавливаются, выбираются и оцениваются в значительной степени субъективно и экспертно
Группа категорийных показателей
Свойство можно сравнивать только в пределах однотипных ПС и трудно упорядочивать по принципу предпочтительности
Функциональная пригодность самая важная и доминирующая характеристика любых ПС
Выбор функциональной пригодности ПС, подробное и максимально корректное описание её свойств являются основными исходными данными для установления требуемых значений всех остальных стандартизированных показателей качества
Группа количественных показателей
Надежность –может отражаться временем наработки на отказ, средним временим восстановления а также коэффициентом готовности – вероятностью застать ПС в работоспособном состоянии при нормальной эксплуатации
Группа качественных показателей
Мобильность программ- возможность перехода на иные операционные и аппаратные платформы
Сопровождаемость-возможность полной замены программ на вновь разрабатываемые версии или осуществляется как непрерывная поддержка
Практичность - можно отразить трудоемкость и длительность, которые необходимы для изучения и полного освоения функций и технологий применения соответствующего ПС
7.Понятие алгоритмической сложности. Верхняя оценка алгоритмической сложности
Это количественная характеристика ресурсов, необходимых алгоритму для работы (успешного решения задачи)
Верхняя оценка сложности алгоритма (tα(v)) – это функция, отражающая максимальное количество операций, выполняемое алгоритмом при поступлении на вход данных объемом V, т.е. это их оценка в худшем случае.
8.Свойства алгоритмической сложности
(1) сложность последовательности не превосходит ее длины;
(2) сложность последовательности неограниченно растет с увеличением ее длины;
(3) количество двоичных последовательностей будет равно 2^n
(4) Функция К невычисляема, т.е. не существует алгоритма ее определения для произвольной символьной последовательности, однако существует общий способ оценки этой величины сверху.
9.Понятие структурной сложности программ. Цикломатическое число (2 лекция)
Структурная сложность программ (число взаимодействующих компонентов, число связей между ними, сложность их взаимодействия)
Z = m – n + 2*p
m-общее число дуг n-общее число вершин p – число элементов
10.Характеристика маршрутов исполнения программ. Сложность вычислительных маршрутов и маршрутов принятия логических решений. Общая сложность программы
Разнообразие поведения программы и связей между ее входными и результирующими данными определяется набором маршрутов (чередующихся последовательностей вершин и дуг графа управления), по которым исполняется программа
Сложность программного модуля связана с числом маршрутов исполнения и их сложностью
Маршруты возможной обработки данных определяют сложность разработки программы.
Маршруты исполнения программного модуля:
- вычислительные (не определяют структурную сложность программ)
- принятия логических решений
Сложность вычислительных маршрутов оценивается формулой
m – кол-во маршрутов исполнения программы.
li – число данных обрабатываемых в i-ом маршруте
vi – число значений обрабатываемых данных j –го типа
Сложность маршрутов принятия логических решений оценивается формулой
pi – число ветвлений или число проверяемых условий в i-ом маршруте.