
- •Инженерия приложений и инженерия предметной области Введение
- •6. 1. Инженерия пик
- •На современном рынке программных продуктов циркулируют следующие виды готовых компонентов:
- •6.2. Спецификация пик
- •6.3. Репозитарий компонентов
- •6.4. Описание интерфейса объектов-компонентов в распределенной среде
- •6.5. Инженерия приложений и предметной области
- •6.6. Инженерия оценивания стоимости реализации ПрО из компонентов
- •Литература
6.6. Инженерия оценивания стоимости реализации ПрО из компонентов
Инженерия программирования ПС для ПрО создаваемой из компонентов, которые вновь разрабатываются из-за отсутствия готовых, а также компонентов многоразового использования и ПИК, включает в себя оценку стоимости разработки ПС в целях получения сделанных затрат на разработку продукта, составленного из совокупности взаимосвязанных компонентов, реализующих функции ПрО.
Общую стоимость создания компонентной системы будем считать, состоящую из таких составных элементов:
С = С1 + С2 + С3 + С4 ,
где С1 – стоимость анализа функций ПрО, С2 – стоимость подбора ПИК из репозитария или библиотеки методов с учетом вновь разработанных компонентов, С3 – стоимость интеграции всех компонентов в систему, С4 – стоимость определения и обработки данных ПС.
Рассмотрим отдельно каждую составную единицу стоимости ПС.
Стоимость анализа функций ПрО имеет вид
M
С1 = b1i С1i Fi (Di),
I
где Di – данные i–функции в ПС, M – количество функций F в системе,
1,
когда функция реализована в компонентах
ПС,
bli = 0, в противном случае.
Стоимость поиска и исследования возможностей применения ПИК, полученного с репозитария, для реализации некоторой определенной функции ПрО, которая вычисляется с помощью выражения:
N M
С2 = a2 ji С2 (Fji )+ С2 ( PFji ),
j I
где С2 (Fji ) – стоимость поиска ПИК для функции Fi , сформулированной на этапе анализа ПрО, N – количество новых компонентов и ПИК, C2(PFji) – стоимость разработки некоторых типичных программных компонентов,
1,
когда
j–
компонент используется функцией
Fi
,
a 2ji = 0, в противном случае.
Стоимость композиции компонентов определяется следующим образом:
N M K
С3 = d2 jik С3 (Ijr ),
j I r
где С3(Ijr) – стоимость создания интерфейсных модулей пары компонентов Ki и K r ,
1, когда r – параметр из набора Х= (Х1, …,Хr ) есть входным
d2 jik = для J –компонента, r– функции (r =1,..., K),
0 , в противном случае.
Т
аким
образом, конечный результат оценивания
стоимости ПС получается путем суммирования
С = С1
+ С2
+ С3
+ С4
( расчет
С4
громоздкий
– не приводится) и имеет вид:
M
N
M
b1и С1и Fi (Di) + a2ji С2 (Fji )+ С2 ( PFji ) +
С = N M K J I
d2 jik С3 (Ijr ) + C4 .
j I r
Основными ограничениями данного выражения является необходимость реализации заданных функций в ПС, наличие средств интеграции пар компонентов Ki и Kr, которые могут быть заданы в любых современных ЯП в заданной среде функционирования, количество компонентов К соответствует заданным функциям, которые обеспечивают решение задач ПрО.
Расчет стоимости С для компонентных систем является трудоемким процессом. Общая стоимость уменьшается, если описание компонентов выполнено на одном из ЯП, за счет отсутствия интерфейсных модулей преобразования данных в системе.
Таким образом, инженерия программирования компонентных систем характеризуется степенью использования в них накопленной программной продукции в виде ПИК и компонентов ПрО многоразового использования. Она требует не только их подбора для применения в новых разработках ПС, но соответствующих инженерных оценок качества, стоимости, риска от приобретения, трудозатрат на разработку с учетом полученных выгод (а также потерь при изменениях и адаптации ПИК) от использования уже произведенного программного изделия и т.п.