Функциональная мощность
Первый фактор -- нечто, называемое "функциональной мощностью" -- выражает единообразие назначения всего внутри модуля. Если все эти выражения в совокупности могут быть представлены как выполняющие единую задачу, то они являются функционально ограниченными (связными).
В общем случае можно сказать, являются ли выражения в модуле функционально ограниченными, отвечая на следующие вопросы: первый: можно ли описать их назначение одной фразой ? Если нет, то модуль, скорее всего, не ограничен функционально. Далее дать ответ на следующие четыре вопроса:
Является ли описание составным предложением ? Встречаются ли в нем слова -- описатели времени, такие, как "сначала", "затем", "потом" и т.д. ? Используется ли после глагола существительное общего или неспециального назначения ? Есть ли в нем слова типа "инициализировать", предполагающие выполнение множества различных функций одновременно ?
Если Вы ответите "да" на один из этих вопросов, то перед Вами некоторое менее связное построение, нежели функциональный модуль. Слабые формы связи:
`Совпадающая связность` (выражения встречаются несколько раз в одном модуле) `Логическая связность` (в модуле содержится несколько родственных функций и необходим флаг или параметр для решения о том, какую конкретно выполнять) `Связность по времени` (имеется группа выражений, исполняющихся одновременно, например, инициализация, но не имеющих иной связи) `Коммуникационная связность` (в модуле содержится группа выражений, работающих с одним и тем же набором данных) `Последовательная связность` (когда результат одного выражения служит входными данными для следующего)
Наш модуль "приготовление-овсянки" демонстрирует функциональную связность, поскольку его можно представить как единое целое, несмотря даже на то, что он состоит из нескольких подчиненных задач.
Содержание раздела