Инженерия оценивания стоимости реализации ПрО из компонентов
Инженерия программирования ПС для ПрО создаваемой из компонентов, которые вновь разрабатываются из-за отсутствия готовых, а также компонентов многоразового использования и ПИК, включает в себя оценку стоимости разработки ПС в целях получения сделанных затрат на разработку продукта, составленного из совокупности взаимосвязанных компонентов, реализующих функции ПрО.
Общую стоимость создания компонентной системы будем считать, состоящую из таких составных элементов:
С = С1 + С2 + С3
+ С4 ,
где С1 – стоимость анализа функций ПрО, С2 – стоимость подбора ПИК из репозитария или библиотеки методов с учетом вновь разработанных компонентов, С3 – стоимость интеграции всех компонентов в систему, С4 – стоимость определения и обработки данных ПС.
Рассмотрим отдельно каждую составную единицу стоимости ПС.
Стоимость анализа функций ПрО имеет вид
M
С1 = S b1i С1i Fi (Di),
I
где Di – данные i–функции в ПС, M – количество функций F в системе,
1, когда функция реализована в компонентах ПС,bli = 0, в противном случае.
Стоимость поиска и исследования возможностей применения ПИК, полученного с репозитария, для реализации некоторой определенной функции ПрО, которая вычисляется с помощью выражения:
N M
С2 = S S a2
ji С2 (Fji )+ С2 ( PFji ),
j I
где С2 (Fji )
– стоимость поиска ПИК для функции Fi , сформулированной на этапе анализа ПрО, N – количество новых компонентов и ПИК, C2(PFji) – стоимость разработки некоторых типичных программных компонентов,
1, когда j– компонент используется функцией Fi,
a 2ji = 0, в противном случае.
Стоимость композиции компонентов определяется следующим образом:
N M K
С3 = S S S 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
S b1и С1и Fi (Di) + S S a2ji
С2 (Fji )+ С2 ( PFji ) +
С = N M K J I
S S S d2 jik С3 (Ijr ) + C4 .
j I r
Основными ограничениями данного выражения является необходимость реализации заданных функций в ПС, наличие средств интеграции пар компонентов Ki и Kr, которые могут быть заданы в любых современных ЯП в заданной среде функционирования, количество компонентов К соответствует заданным функциям, которые обеспечивают решение задач ПрО.
Расчет стоимости С для компонентных систем является трудоемким процессом. Общая стоимость уменьшается, если описание компонентов выполнено на одном из ЯП, за счет отсутствия интерфейсных модулей преобразования данных в системе.
Таким образом, инженерия программирования компонентных систем характеризуется степенью использования в них накопленной программной продукции в виде ПИК и компонентов ПрО многоразового использования. Она требует не только их подбора для применения в новых разработках ПС, но соответствующих инженерных оценок качества, стоимости, риска от приобретения, трудозатрат на разработку с учетом полученных выгод (а также потерь при изменениях и адаптации ПИК) от использования уже произведенного программного изделия и т.п.