Методы оценки размера программной системы, страница 3

•  функция реализуется элементарным процессом;

•  для функции, отождествляемой с элементарным процессом, выполняется
одно из следующих правил:

о    логика обработки данных (в части ввода и в части вывода) отличает функцию от других ЗАП;

о    данные, которые обрабатывает функция (в части ввода и в части выво­да), отличаются от данных в других ЗАП.

Шаг 3. Определение сложности каждого ВВЦ, ВЫВ и ЗАП.

Уровень сложности функции может квалифицироваться как «низкий», «сред­ний» и «высокий». Отнесение функции к тому или иному уровню сложности про­изводится исходя из числа ссылочных объектов функции и числа элементарных данных функции, представляющих вход, выход или выборку.

Ссылочный объект функции (СОФ) - внутренний логический объект, кото­рый сопровождается функцией, или внешний интерфейсный объект, который ис­пользуется функцией измеряемого ПК.

Элементарное данное функции (ЭДФ) - уникальное (неповторяющееся) иден­тифицируемое пользователем данное (поле), относящееся ко входу, выходу или выборке функции. Например, вводимое поле, список, управляющее воздействие, отождествляемое на уровне реализации со щелчком на управляющем объекте экра­на (кнопке) и др.

Элементарные данные функции связываются с элементарными данными объ­екта в ВИО и ВЛО, которые используются или сопровождаются функцией.


Оценка уровня сложности каждого внешнего запроса выполняется отдельно в части ввода и в части вывода. Результирующим значением считается высшая из


Матрица оценки уровня сложности ВВД представлена в таблице 7.3.




двух оценок.

Матрица оценки уровня сложности ВЫВ представлена в таблице 7.4.


Шаг 4. Взвешивание ВВД, ВЫВ и ЗАП по уровням сложности. Веса, присваиваемые ВВД и ВЫВ, представлены в таблице 7.5.


Шаг 5. Подсчет условных единиц функциональности по всем функциям обра­ботки данных ПК.

Для подсчета условных единиц функциональности для функций (УЕФф) не­обходимо определить количество ВВД, ВЫВ и ЗАП по каждому уровню сложности для каждого функционального требования и полученные значения просуммиро­вать.

Шаг 6. Определение размера (объема) функциональных возможностей или просто показателя функционального размера (ПФР) выполняется по формуле:

ПФР = УЕФо + УЕФф

Значение ПФР при необходимости может быть конвертировано в эквива­лентное число строк исходного кода (SLOC) ПК на соответствующем языке про­граммирования.

7.1.5. Определение эквивалентного числа строк кода

Конвертирование значения показателя функционального размера в эквива­лентное число строк исходного кода ПК (SLOC) на соответствующем языке про­граммирования обычно выполняется для применения вычисленного размера ПК в формулах расчета стоимости, производительности или надежности ПС. Относи­тельное количество единиц SLOC, приходящихся на одну единицу УЕФ для неко­торых языков программирования, представлено в таблице 7.6 3.

3 Данные David Consulting Group, адрес в Интернете: http://www.davidconsultinggroup.com/indata.htm


7.1.6. Учет нефункциональных требований к ПС

Рассчитанное значение ПФР характеризует объем и сложность только функ­циональных требований и не учитывает сложности технических (нефункциональ­ных) требований к разрабатываемой ПС. Для их учета необходимо оценить 14 об­щесистемных характеристик, отражающих влияние сложности этих требований на реализационные особенности ПС4 (таблица 7.7).

Нужно отметить, что если организация разрабатывает однотипные про­граммные средства в однородной среде, общесистемные характеристики можно считать постоянными. Для того чтобы узнать, какой - «чистый» или скорректиро­ванный - показатель функционального размера служит лучшим предсказателем трудоемкости разработки, нужно проводить эксперименты, пробуя сочетать чистый ПФР с другими метриками. Так, например, многие методологии оценки трудоемко­сти ПС не допускают использование скорректированного ПФР (например, СОСОМО).

Оценка общесистемных характеристик выполняется экспертным путем по 5 уровням сложности от 0 до 5:

4Информация получена на сайте www SoftwareMetrics Com


0 - не оказывает никакого влияния;

1 - оказывает несущественное влияние;

2 - оказывает умеренное влияние;

3 - оказывает среднее влияние;

4 - оказывает существенное влияние;

5 - оказывает сильное влияние.

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

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


протокол TCP/IP, который предоставляет общий язык для взаимодействия сетей, использующих множество локальных протоколов (Ethernet, Netware, AppleTalk, DECnet и др.). Рейтинги влияния характеристики передачи данных на сложность приложения представлены в таблице 7.8.

Примечание. Приложение, которое поддерживает web-запросы и локальный доступ, должно получить оценку 3, а приложение, которое допускает модификацию объектов ВЛО через Интернет и локальное обновление, должно получить оценку 5.

Оценка влияния требований к распределенной обработке данных. Рейтин­ги влияния характеристики на сложность приложения представлены в таблице 7.9.

Оценка влияния требований к производительности. Требования к произ­водительности устанавливаются в виде целевых показателей продолжительности ожидания ответа на запросы пользователя или пропускной способности средств передачи данных. Рейтинги влияния характеристики на сложность приложения представлены в таблице 7.10.

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