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

Черников / Лекции / Buyanov_2

.txt
Скачиваний:
69
Добавлен:
15.04.2018
Размер:
6.57 Кб
Скачать
Назначение программы
92г - первая программа(Shapeware), позже Visio.
2000 - Visio in Microsoft.
Не входит в инсталятор Офиса.
В Visio - диаграммы(векторные, растровые)

Есть: Шаблоны из категорий. С инструментами.
Visio - рисунок, не среда моделирования. Все зависимость на человеке.
План в масштабе, не плоские а даже 3д схемы(Карты и планы этажей).
В сети - приличные схемы.
очень хорошие виды соедененеий, если сравнивать с Exel.
Visio оптимизирует линии.
Существуют графические приметивы, например линия на листе.
Контейнер - блок операций.
Поля для склейки - очень удобно.
Соединения - от фигурке к фигуре. Соеденительная линия либо стенселов и автосоединение.
Возможность доп.точек.
объединение фигур, возможность вычитания.
Пересечение фигур - объеденить непересекающиеся фрагменты и удалить общие. Возможно и деление.
Visio док можно перенесмти в Word.

Алгоритм Сложности
Печать 0011 n раз
печать 101 n раз
С помощью алгоритма подсчета.

Если в кач-ве объектов будем рассматривать произвольные последовательности символов из нкоторого алфавита ,
то ннаиболее экономичнеым способ их описания будет алгоритмический.

За меру сложности произвольной последовательности симовлов из некоторго фиксированного алфавита, принимается длина(кол-во двоичных разрядов)
самой короткой программсы, генерерируюбщий эту последовательностьт.
Раньше были более длинные программы. На языках выского уровня размер.
Свойства алгоритмической сложности:
1. Сложность не может быть длинее ее самой.
2. Сложность последовательности неогрниченно растет с увеличением ее длины.
3. Множество N, тогда общшее число всех последовательностей = 2^N

Подавляющее число последовательностей(почти все) несжимаемы, т.е случайны.
Из 1000 последовательностей, можно сжать 1 программу до 10бит.
4. Функция К невычисляема. Т.Е не существует алгоритма ее опредления для произвольной символьной последовательности,
однако существует общий способ оценкий этой велечины сверху.

Из св-ва 1 : алгоритмическая сложность любой из этих последовательностей не может
превосходить количества двоичнеых разрядов для записи их порядеовых номеров, тогда экнтропия произвольной последовательности для N.
Алгоритмическая сложность любой последовательности не превосходит ее энтропии, которую можно найти, определив частоты (вероятности)
символов в последовтальности в последовательности.

Струтурная сложность:
Количетсво
число связей
сложность взаимоейдствия

Разнообразие поведения программы определяется набором маршрутов.

Сложэность программногоо модуля связана не столько с размером программы, сколько с числом.

Маршрутты возможностей обработки данных определяют сложность разработки программы.

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

Маршруты исполнения программеного модуля(Вычислительные маршруты, маршруты принятия логических операций)

Общее число арифметических операций нее выходит за пределы 5-10%, поэтому вычислительные машруты не определяют структурную сложность программ.

Количество арифметических операций.

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

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

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

Недостаток критерия - не учитывает комибаторику.

Критерий 2
Оснеован на анализе базовых маршрутов в программе, формируемых и оцениваемых на основе цикломатического числа графа потока управления.

Цикломатическое число исходго графа программы z = m -n + 2*p

Число связных компоененторв графа p равно количеству дуг необходимых для превращения исходгол графа в максимсально связный граф.

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

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

Суммнарн7ая сложэность тестов почти не зависит от детальной структуры графа и в соновом определяется числом предикатов ветвлений графа.
При неизменом числе вершин в широлких графах имеется большее количество маршрутов, чем в узких графах.



С помощью матрицы достижимости можно сравить просто выделить циклы, отмечая диагональные элементы, равные 1 и идентичные строки (6-8, 9-10, 7- 9- 10 -11)


Критерий 3

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

Особенностью четырех последних маршрутов с циклами и соответствующих им ациклических маршрутов является полный перебьор ветвлений 3 и 12 вершин.

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

Для проверки реальных программ это количество проерок может быть недоступно.

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



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

Программа (алгоритм, спецификация) должна быть представлена в виде управляющего ориентированного графа

Граф, описывающий программу в виде вершин-операторов и дуг-переходов.

Метрика Маккейба яляется цикломатическим числом графа управления программы.
Цикломатическая сложность.

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

Временная сложность алгорнитма.

Временная сложность алгоритма зависит от количества входных данных.

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