Инженерия оценивания стоимости реализации ПрО из компонентов

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

Общую стоимость создания компонентной системы будем считать, состоящую из таких составных элементов:

С = С1 + С2 + С3 + С4 ,

где С1 – стоимость анализа функций ПрО, С2 – стоимость подбора ПИК из репозитария или библиотеки методов с учетом вновь разработанных компонентов, С3 – стоимость интеграции всех компонентов в систему, С4 – стоимость определения и обработки данных ПС.

Рассмотрим отдельно каждую составную единицу стоимости ПС.

Стоимость анализа функций ПрО имеет вид

M

С1 = S b1i С1i Fi (Di),

I

где Di – данные i–функции в ПС, M – количество функций F в системе,

Инженерия оценивания стоимости реализации ПрО из компонентов - student2.ru 1, когда функция реализована в компонентах ПС,

bli = 0, в противном случае.

Стоимость поиска и исследования возможностей применения ПИК, полученного с репозитария, для реализации некоторой определенной функции ПрО, которая вычисляется с помощью выражения:

N M

С2 = S S a2 ji С2 (Fji )+ С2 ( PFji ),

j I

где С2 (Fji ) – стоимость поиска ПИК для функции Fi , сформулированной на этапе анализа ПрО, N – количество новых компонентов и ПИК, C2(PFji) – стоимость разработки некоторых типичных программных компонентов,

Инженерия оценивания стоимости реализации ПрО из компонентов - student2.ru 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 ,

Инженерия оценивания стоимости реализации ПрО из компонентов - student2.ru 1, когда r – параметр из набора Х= (Х1, …,Хr ) есть входным

d2 jik = для J –компонента, r– функции (r =1,..., K),

0 , в противном случае.

Инженерия оценивания стоимости реализации ПрО из компонентов - student2.ru Таким образом, конечный результат оценивания стоимости ПС получается путем суммирования С = С1 + С2 + С3 + С4 ( расчет С4 громоздкий – не приводится) и имеет вид: M N M

S b1и С 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, которые могут быть заданы в любых современных ЯП в заданной среде функционирования, количество компонентов К соответствует заданным функциям, которые обеспечивают решение задач ПрО.

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

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

Литература к теме 6.

1. Бабенко Л.П., Лаврищева Е.М. Основы программной инженерии (укр.).– Киев, Знання. –2001.–269с.

2. Грищенко В.Н., Лаврищева Е.М. Методы и средства компонентного пограммирования//Кибернетика и системный анализ, 2003.– №1.– с.39–55.

3.Jacobson I., Griss M., Jonsson P. Software Reuse.–N.Y.:Adison Wesley, 1997.

4. Сrnkovik I, Larsson S., Stafford J. Component-Based Software Engineering: building systems from Components at 9th Conference and Workshops on Engineering of Computer –Based Systems.- Software Engineering Notes.-2002.- vol.27.-N 3.-c.47-50.

5. К.Чернецки, У.Айзенекер. Порождающее программирование. Методы, инструменты, применение.– Издательский дом «Питер».– Москва– Санкт-Петербург… Харьков, Минск.– 2005.–730с.

6. Meyer B. On to Components. Computer. – vol. 32, N 1, January 1999. – pp.139–140.

7. Lowy J. COM and .NET Component Services. - O'Reilly, 2001. – 384 p.

8. Batory D., O'Malley S. The Design and Implementation of Hierarchical Software Systems with Reusable Components/ ACM Transactions on Software Engineering and Methodology. – N 4, vol. 1, October 1992. – pp.355–398.

9. Weide B., Ogden W., Sweden S. Reusable Software Components/ Advances in Computers, vol. 33. – Academic Press, 1991. – pp.1–65.

10. Jacobson I., Griss M., Johnson P. Software Reuse: Architecture, Process and organization for Business Success – Addison Wesley, Reading , MA, May 1997.–501p.

Тема 7

Наши рекомендации