Технология программирования стр.26

Процедурно связаны функции или данные, которые являются частями одного процесса (рис.

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

Временная связность функций подразумевает, что эти функции выполняются параллельно или в течение некоторого периода времени (рис. 2.1, д). Временная связность данных означает, что они используются в некотором временном интервале. Например, временную связность имеют функции, выполняемые при инициализации некоторого процесса. Отличительной особенностью временной связности является то, что действия, реализуемые такими функциями, обычно могут выполняться в любом порядке. Содержание модуля с временной связностью функций имеет тенденцию меняться: в него могут включаться новые действия и/или исключаться старые. Большая вероятность модификации функции еще больше уменьшает показатели технологичности модулей данного вида по сравнению с предыдущим.

Логическая связь базируется на объединении данных или функций в одну логическую группу

(рис. 2.1, е). В качестве примера можно привести функции обработки текстовой информации или данные одного и того же типа. Модуль с логической связностью функций часто реализует альтернативные варианты одной операции, например, сложение целых чисел и сложение вещественных чисел. Из такого модуля всегда будет вызываться одна какая-либо его часть, при этом вызывающий и вызываемый модули будут связаны по управлению. Понять логику работы модулей, содержащих логически связанные компоненты, как правило, сложнее, чем модулей, использующих временную связность, следовательно, их показатели технологичности еще ниже.

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

Обратите внимание, что в трех предпоследних случаях связь между несколькими подпрограммами в модуле обусловлена внешними причинами. А в последнем - вообще отсутствует. Это соответствующим образом проецируется на технологические характеристики модулей. В табл. 2.2 представлены характеристики различных видов связности по экспертным оценкам [21, 30].

Анализ табл. 2.2 показывает, что на практике целесообразно использовать функциональную, последовательную и информационную связности.

Таблица 2.2

Вид связности

Сцепление, балл

Наглядность

(понятность)

Возможность изменения

Сопровождаемость

Фу нкциональная

Хорошая

Хорошая

Хорошая

Последовательная

Хорошая

Хорошая

Хорошая

Информационная

Средняя

Средняя

Средняя

Процедурная

Средняя

Средняя

Плохая

Временная

Средняя

Средняя

Плохая

Логическая

Плохая

Плохая

Плохая

Случайная

Плохая

Плохая

Плохая

Как правило, при хорошо продуманной декомпозиции модули верхних уровней иерархии имеют функциональную или последовательную связность функций и данных. Для модулей обслуживания данных характерна информационная связность функций. Данные таких модулей могут быть связаны по-разному. Так, модули, содержащие описание классов при объектноориентированном подходе, характеризуются информационной связностью методов и функциональной связностью данных. Получение в процессе декомпозиции модулей с другими видами связности, скорее всего, означает недостаточно продуманное проектирование. Исключением являются лишь библиотеки ресурсов.


⇐ назад к прежней странице | | перейти на следующую страницу ⇒

Читайте также:

Помоги себе сам

Что может быть обыденней интернета в наши дни? Он стал незаменимой частью жизни всех нас. И это можно понять, ведь с его помощью люди работаю во всевозможных сферах деятельности, является очень эффективным. Но очень часто стоит вопрос о том, с помощью чего лучше всего добиваться лучших результатов и делать это более оперативно и с комфортом.

Яркая жизнь с компьютерными программами

На каждом шагу сегодня мы слышим нарекания на современную молодёжь и её бездеятельность. А ведь и правда – ребят кроме компьютера и досконального его знания мало что интересует и беспокоит, даже будучи на шашлыках, они тянут с собой компьютер и включают музыку либо фильмы. Такая зависимость является страшной для развития человечества в целом хотя б потому что все вокруг становятся замкнутыми и променивают реальный мир на виртуальное общение. Раньше, вспоминают люди постарше, у костра играли на гитаре вживую, ездили в горы с палатками, игрались миниатюрными поездами теперь заменённое компьютерными играми и различными программами симуляторами. Возникает закономерный вопрос – так ли вредны эти самые компьютерные программы и для чего они были созданы.

AlgoMusic M51 Galaxy - виртуальный инструмент на основе PD-синтеза

Виртуальный инструмент M51 Galaxy позволяет синтезировать "космические" звуки, обладает завораживающим звучанием. Обычно музыканты не очень жалуют инструменты, созданные с помощью SynthEdit. Однако M51, хоть и относится к их числу, действительно очень хорош. Секрет его звучания кроется в оригинальной архитектуре синтеза. На M51 Galaxy распространяется поговорка, что "все новое - это хорошо забытое старое". Идеи, заложенные в M51, уже были успешно реализованы в 80-х годах XX века.