Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Оценка качества модульной программыСодержание книги
Поиск на нашем сайте
При проектировании модульной программы возникает необходимость оценки качества каждого модуля и всей программы, построенной по модульному принципу. Как уже отмечалось, одной из наиболее простых, но важных характеристик модуля является его сложность, которая в простейшем случае определяется числом строк кода (или числом операторов). Другой оценкой сложности модуля, которая широко используется на практике, выступает число условных операторов IF, которые позволяют оценить число путей выполнения программы. При разработке каждого модуля это число не должно превышать 10. Опыт разработки программной Продукции приводит к выводу, что схема модуляризации удовлетворительна, если минимальна сложность каждого модуля и если сложность равномерно распределена по всей программе. Следует избегать "зон повышенной сложности", т.е. модулей с существенно большей сложностью. Кроме размера модуля, на сложность программы и простоту ее восприятия оказывают существенное влияние связи между внутренними элементами каждого модуля и связи между модулями. Модули связываются с помощью данных, а также структурой управления в программе. Явная связь между модулями появляется, когда между ними передаются данные в виде параметров, а косвенная связь, когда модули ссылаются на одни и те же данные. Для снижения сложности программы связи между модулями необходимо минимизировать. Степень независимости между модулями принято описывать с помощью сцепления (coupling). При малом сцеплении модуль может быть легко понят без изучения другого, либо изменен без изменений в других модулях. Три фактора оказывают влияние на сцепление модулей: 1. Число элементов данных, передаваемых между ними (чем больше передается данных, тем сильнее сцепление). 2. Количество управляющих данных, передаваемых между модулями. 3. Число глобальных элементов данных, которые совместно используются модулями. Первый фактор — это число параметров, которые передаются в вызываемый модуль. Часто передача многих параметров показывает, что модуль выполняет не одну, а несколько функций. На сложность программы оказывает влияние не только число, но и тип передаваемых данных. Целесообразно в качестве передаваемых параметров использовать не структурные, а простые данные. Совместно используемые данные — данные, которые явно упоминаются в модуле, а не передаются в виде параметров. Наиболее ярким примером служат глобальные данные. Использование глобальных данных усложняет понимание и особенно изменение отдельных модулей, так как их данные могут использоваться незаметным образом и разными путями. Между модулями различают несколько типов сцепления (5—7). Наилучшим, наиболее слабым, является сцепление по данным, причем данные передаются явно в качестве параметров в виде простых переменных или массивов и используются непосредственно для решения функциональной задачи модуля, а не для управления. Несколько хуже, когда модули связаны между собой через сложный структурный элемент данных (например, запись). При этом вызываемый модуль использует только отдельные элементы записи. Такой вид сцепления называют сцеплением по образцу- Существенно более сильное сцепление между модулями, когда они используют одну и ту же область глобальных данных (сцепление по общей области). Другим показателем или мерой качества схемы модуляризации является связность (cohesion), которая определяет, как сильно между собой связаны элементы внутри модуля. Наиболее сильная и наилучшая связность — функциональная, которая характеризуется тем, что каждый элемент модуля служит необходимой и существенной частью для выполнения одной, и только одной функции. Такой модуль не может быть разбит на два других модуля, так как он выполняет одну специфическую функцию. Всего принято рассматривать 7 уровней связности. Ориентировочно функциональный уровень связности на практике можно определить, если описать функцию модуля в виде одного повелительного предложения. Обычно через сцепление и связность оценивается качество схемы модуляризации, но они могут быть также использованы и для оценки степени приспособленности программы к изменениям. На простоту изменения программы влияют как внутренняя структура каждого модуля, так и межмодульные связи. Хорошая программа должна иметь высокую связность каждого модуля и слабое сцепление модулей между собой.
|
||||
Последнее изменение этой страницы: 2017-02-07; просмотров: 239; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.188.130.151 (0.005 с.) |