Главная Случайная страница


Полезное:

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


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Компонентный подход. Модульность Сложность системы





 
 

Компонентно-ориентированная модель реализуется по принципу, представленному на рисунке 25. Она широко использует программные модули.

Рис. 25

 
 

Зависимость стоимости системы от количества модулей может быть представлена диаграммой рис. 26.

Рис. 26

 

При реализации модульных систем применяется принцип информационной закрытости. Содержание (процедуры, данные) модулей должно быть скрыто друг от друга. Это означает следующее: все модули независимы, обмениваются только той информацией, которая необходима для работы. Доступ к операциям и структурам модуля ограничен. Достоинства такого подхода - возможность работы разных команд и простая модификация системы. Идеальный модуль – «черный ящик».

Связность модуля (cohesion) – внутренняя характеристика модуля, характеризующая меру прочности соединения функциональных и информационных объектов внутри одного модуля. При проектировании модулей нужно стремиться к высокой связности, так как чем выше связность, тем лучше спроектирован модуль.

Существует 7 типов связности:

1. По совпадению (CC=0)

2.Логическая (CC=1)

3.Временная (CC=3)

4.Процедурная (CC=5) – рис. 27

5.Коммуникативная (Информационная) (CC=7) – рис. 28

6.Последовательная (CC=9) – рис. 29

7.Функциональная связность (CC=10) – рис. 30.

 
 

 
 

Рис. 27

 

Рис. 28

 

Рис. 2

 
 

9

 

Рис. 30

 

 

 
 

Характеристики мер связности модулей приведены в таблице.

 

Связанность (сцепление, coupling) модулей является мерой их взаимозависимости. При создании систем необходимо стремиться к максимальной независимости модулей, т.е. связанность модулей должна быть минимальной.

Сцепление может быть следующих типов:

1) По данным (рис. 31);

2) По образцу (рис. 32);

3) По управлению (рис. 33);

4) По общей области (рис. 34);

5) По содержимому (рис. 35).

 

 
 

 
 

Рис. 31

 

 

Рис. 32

 

 
 

Рис. 33

Рис. 34

Рис. 3

 
 

5

 

Характеристики иерархической структуры программы – высота и ширина. Высота равна количеству уровней иерархии (на рис. 36 их 3), а ширина определяется по формуле, приведенной ниже.

 
 

 

Рис. 36

 


 

Сложность программной системы

 

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

1) Отображает управляющую структуру;

2) Узлы (вершины) графа = линейным участка;

3) Дуги = поток управления;

4) Узлы могут быть операторные и предикатные;

5) Предикатный узел = простое условие;

6) Регионы – отдельные подграфы;

7) Окружающая среда.

 
 

Условный оператор на графе отображается как показано на рис. 37.

Рис. 37

Условие с операцией Or представляется графом рис. 38.

 
 

Рис. 38

Наиболее часто используется понятие цикломатической сложности, которая определяет:

● Количество независимых путей в базовом множестве алгоритма;

● Верхнюю оценку количества тестов, которая гарантирует однократное выполнение всех операторов.

 
 

Все независимые пути образуют базовое множество. Для графа рис. 38 таких путей 3 (см. рис. 39)..

Рис. 39

 

Способы расчета:

1. Количество регионов потокового графа;

2. V(G)=E-N+2, где E — кол-во дуг, N — кол-во узлов;

3. V(G)=p+1, где p — кол-во предикатных узлов.

 

Date: 2016-07-18; view: 469; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.007 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию