Главное преимущество COSMIC-FFP - использование процессо-ориентированного взгляда на функции программного обеспечения. В соответствии с моделью ПО, предложенной в FFP-методе, функциональные требования пользователей отображаются в совокупность функциональных процессов. Каждый из этих процессов представляет собой упорядоченное множество подпроцессов, выполняющих либо перемещение данных, либо их обработку (рисунок 7.2).
Модель COSMIC-FFP различает четыре типа подпроцессов перемещения данных - вход, выход, чтение и запись. Каждый из этих подпроцессов перемещает данные, принадлежащие только к одной группе данных (в рамках границ группы). Подпроцессы- входы перемещают данные извне - в границы приложения пользователя, подпроцессы-выходы - изнутри границ приложения - наружу (пользователям или устройствам, которые обслуживаются программно), а подпроцессы чтения и записи перемещают данные из и в хранилища (рисунок 7.3).
Подпроцессы манипулирования данными в данной версии (2.0) метода FFP не определены, поскольку концепция измерения процедур обработки данных остается пока не согласованной.
Программное обеспечение (на рисунке 7.3) включает все программные средства (и разрабатываемые, и не разрабатываемые). В зависимости от того, каких программных средств касаются требования пользователя, ПО разделяется на слои, с каждым из которых связывается свой набор функциональных процессов.
Например, если пользователь определяет функциональные требования к приложению и функциональные требования к графическому интерфейсу пользователя (GUI), но не предъявляет требований к другим компонентам ПО (например, драйверам устройств), модель ПО может включать два слоя (рисунок 7.4).
Процесс измерения функционального размера ПО включает следующие шаги:
• проанализировать
требования к ПО и взаимодействию ПО с технически
ми
средствами, установить границы той части ПО, размер которой будет опреде
ляться;
• идентифицировать все
возможные функциональные процессы, триггеры
событий
(осуществляющих «запуск» этих процессов из среды слоя) и группы дан
ных;
• из идентифицированных
объектов построить модель ПО в контексте тре
бований
FFP (отобразить функциональные требования на модель FFP) и выделить
слои;
• идентифицировать все
подпроцессы в каждом функциональном процессе.
Оценить функциональные процессы в единицах CFSU (Cosmic Functional Size Unit)
- одна единица на один подпроцесс перемещения данных;
• применить функцию измерения размера COSMIC-FFP для каждого слоя:
PазмepCFSU(слойi) = Саrd(входы) + Саrd(выходы) + Саrd(чтениe) +
Саrd(запись),
где Саrd(множество) - мощность множества подпроцессов одного типа.
Очевидно, что метод COSMIC-FFP может эффективно применяться только в том случае, когда полностью сформирована спецификация требований пользователя, что редко бывает на ранних стадиях ЖЦ. Поэтому неудивительно, что для целей
раннего прогнозирования функционального размера систем реального времени (для которых не мог быть применен метод Early Function Points) P. Мели и А. Эбрен предложили новый метод - Early& QuickCOSMIC-FFP(E&Q) [9].
Как и в методе EFP, в Е&О-методе ПО моделируется в виде иерархии функций -функциональных процессов (ФП). Они классифицируются по уровням сложности - «низкий», «средний» и «высокий» в зависимости от прогнозируемого количества подпроцессов. Далее вводится понятие главный процвсс(ГП) - как множество средних ФП. Уровень сложности ГП, в зависимости от количества ФП, может также быть «низким» (6-12 ФП), «средним» (13-19 ФП) или «высоким» (20 - 25 ФП). По аналогии вводится макропроцесс (МП) как совокупность ГП средней сложности. Уровни сложности МП - «низкий» (2-3 ГП), «средний» (4-7 ГП) или «высокий» (8-12 ГП). И, наконец, 4-й вид процессов - типовые процессы (ТП) - множество из четырех наиболее часто используемых функциональных процессов - создание, выборка, обновление, удаление. Это разновидность главных процессов. Веса сложности указывают количество единиц CFSU, которое должно быть присвоено процессу.
За рамками обзора осталась еще одна открытая проблема, часто обсуждаемая на технических форумах, - применимость методов измерения (прогнозирования) функционального размера к Web-приложениям. Работы над этой проблемой проводятся в двух направлениях:
• интерпретация правил IFPUG для Web-приложений
(некоторые примеры
можно
найти у Д. Лонгстрита на сайте www.softwaremetrics.com и у Д. Натали на
сайте www.mondomatica.it);
• создание новых FPA-подобных методов,
как, например метод Web
Objects, предложенный Д. Рифером [10].
7.3. Стандартизация методов измерения функционального
размера
Проект международного стандарта ISO/IEC 14143, разрабатываемого группой WG12, включает пять частей:
1. Определение концепции (стандарт ISO/IEC 14143-1. Принят в 1998).
2. Оценивание соответствия методов определения
размера программных
средств стандарту ISO/IEC 14143-1:1998.
3. Верификация метода измерения размера функциональных возможностей.
4. Эталонная модель
измерения размера (объема) функциональных возмож
ностей.
5. Определение
функциональных доменов, для которых может применяться
метод
определения размера.
Часть 1 этого стандарта ISO/IEC 14143-1:1998 была опубликована в 1998 году, а остальные, как ожидается, будут эволюционировать в полноценные международные стандарты в течение следующих пяти лет. О текущем состоянии проекта стандарта можно узнать, посетив сайт: www.info.uqam.ca/Labo_Recherche/Lrgl/sc7.
В части 1 стандарта описаны общие основные особенности методов измерения функционального размера и определяется перечень обязательных требований, которым должен отвечать метод, претендующий называться методом FSM Назначение этой части стандарта - обеспечить однозначную интерпретацию принци-
пов FSM и облегчить сравнение мер функционального размера. Предвидится, что главными потребителями части 1 стандарта будут лица, которые привлекаются к разработке методов измерения функционального размера и нуждаются в знании основных характеристик этих методов, а также те, кто хочет проверить, отвечает ли конкретный метод определения размера ПС основным концепциям FSM.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.