Учебники

Измерение структуры

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

Типы структурных мероприятий

Структура программного обеспечения состоит из трех частей. Они —

  • Структура потока управления — это последовательность выполнения инструкций в программе.

  • Структура потока данных — это поведение данных при взаимодействии с программой.

  • Структура данных — это организация элементов данных в форме списков, очереди, стеков или других четко определенных структур вместе с алгоритмом их создания, изменения или удаления.

Структура потока управления — это последовательность выполнения инструкций в программе.

Структура потока данных — это поведение данных при взаимодействии с программой.

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

Измерение структуры управления потоком

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

Если «m» является структурной мерой, определенной в терминах модели потокового графа, и если программа A является структурно более сложной, чем программа B , то мера m (A) должна быть больше, чем m (B) .

Измерение структуры потока данных

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

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

  • Локальный прямой поток — если либо модуль вызывает второй модуль и передает ему информацию, либо вызванный модуль возвращает результат вызывающей стороне.

  • Локальный косвенный поток — если вызванный модуль возвращает информацию, которая впоследствии передается во второй вызываемый модуль.

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

Локальный прямой поток — если либо модуль вызывает второй модуль и передает ему информацию, либо вызванный модуль возвращает результат вызывающей стороне.

Локальный косвенный поток — если вызванный модуль возвращает информацию, которая впоследствии передается во второй вызываемый модуль.

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

Сложность информационного потока может быть выражена по Генри и Кафуре как,

Сложность потока информации (M) = длина (M) × разветвление (M) × (разветвление (M)) 2

Куда,

  • Fan-in (M) — количество локальных потоков, оканчивающихся на M + количество структур данных, из которых информация извлекается M.

  • Fan-out (M) — количество локальных потоков, исходящих из M + количество структур данных, которые обновляются M.

Fan-in (M) — количество локальных потоков, оканчивающихся на M + количество структур данных, из которых информация извлекается M.

Fan-out (M) — количество локальных потоков, исходящих из M + количество структур данных, которые обновляются M.

Структура данных измерений

Структура данных может быть как локальной, так и глобальной .

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

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