Материал: 970

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Формирование договорной цены на разработку …

205

экономического обоснования стоимости, основываются на статистических данных, обобщающих зарубежный и российский опыт разработки программных систем, а их конкретное значение зависит от типа создаваемого продукта.

По уровню сложности различают три типа программных продуктов [35]:

1)комплексные программные продукты (КПП), отдельные части которых реализованы на различных платформах(первый тип ПП):

·программные продукты, обеспечивающие территориально распределенную обработку данных;

·программные продукты в составе систем автоматизированного либо автоматического управления, функционирующих

врежиме реального времени;

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

3)инженерные и научно-технические пакеты прикладных программ (ППП), характеризующихся четко заданным алгоритмом обработки и малыми объемами исходных данных (третий тип ПП).

3.5.2.Прямой метод определения размеров программного продукта на основе опыта экспертов

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

При декомпозиции целесообразно использовать следующие термины и определения (рис. 3.3):

2063. Финансово-экономические основы ведения бизнеса

·интегрированный программный продукт— совокуп-

ность двух и более программных продуктов, в которых функционирование одного из них зависит от результатов функционирования другого;

·программный продукт — совокупность программных компонентов, реализующих конкретный бизнес-процесс;

·сложный программный компонент— совокупность программных кодов, реализующих две и более функций бизнеспроцесса;

·программный компонент — совокупность программных кодов, реализующих элементарную функцию бизнес-процесса.

Интегрированный программный продукт

 

Программный

 

 

 

 

Программный

 

продукт

 

 

 

 

продукт

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Сложный программный

 

Сложный программный

 

 

компонент

 

 

компонент

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Простой программный

 

 

Простой программный

 

 

компонент

 

 

компонент

 

 

 

 

 

 

 

 

 

 

Рис. 3.3. Структура интегрированного программного продукта

Размеры программного продукта определяются в виде количества строк исходного кода (Lines of code — LOC) [31].

При оценке количества строк исходного кода следует учитывать следующее:

·строка исходного кода содержит только один оператор;

·описание исходных данных учитывается один раз;

Формирование договорной цены на разработку …

207

·не учитываются строки, содержащие комментарии и отладочные операторы;

·учитывается каждая инициализация, вызов либо включение макроса в качестве исходного кода.

В качестве базового показателя количества строк исходного кода следует использовать число операторов языка Ассемблер.

Варианты преобразования размеров программы, оцененной по этому измерителю, в размеры программы, созданной на других языках программирования, и наоборот, представлены в табл.

3.7[31].

Таблица 3.7 Соответствие среднего числа строк текста программы на языке

Ассемблер одной строке других языков программирования

Язык программирования

Количество строк кода

Ассемблер

На одну

 

 

 

(LOC)

функциональную точку

1.

Basic Assembler

3

4

2.

Macro Assembler

1

320

3.

Basic

1,5

213

4.

Pascal

3

107

5. C++

3,5

91

6.

Java

6

53

7.

Oracle, Sybase

6

53

8.

Access

8

40

9.

Delphi

8,5

38

10.

Oracle Developer/2000

11

29

11. Smalltalk

14

23

12.

Cobra

15

21

13. HTML 3.0

16

20

14.

SQL (ANSI)

22

15

15.

Excel

25

13

Каждый из экспертов должен дать оптимистическую о, пессимистическую p и реалистическую b оценки размерности одного из элементов интегрированного ПП (табл. 3.8). Средняя оценка по бета-распределению определяется путем умножения реали-

208

3. Финансово-экономические основы ведения бизнеса

стической оценки на 4, добавлением оптимистической и пессимистической оценок и делением полученного результата на 6:

r k = (o

+ 4b

+ p

ij

) / 6,

(3.8)

ij

ij

ij

 

 

 

где rijk — средняя оценка k-го эксперта j-го программного ком-

понента на i-м уровне.

Таблица 3.8 Бланк экспертного оценивания размерности

программного продукта Язык программирования _____________

Состав

 

Оценки

 

Оптимисти-

Реалистиче-

Пессими-

программного продукта

 

ческая

ская

стическая

1. Программный продукт

1.1.Программный компонент 1

1.2.Программный компонент 2

……………………

После оценивания всех компонентов на каждом уровне, начиная с нижнего, происходит суммирование результатов измерения по принципу «снизу-вверх»:

q n

mi

 

 

 

 

 

 

 

R = å å å rijk / q, k = 1, q, i =1, n, j =1, m,

(3.9)

k =1 i =1

j =1

 

где k =1, q — количество экспертов;

i = 1, n — количество уровней декомпозиции программного продукта;

j = 1, m — количество программных компонентов наi-м уровне.

Очевидно, что эффективность оценивания может быть существенно повышена при наличии прототипов будущего ПП.

В этом случае эксперту предлагается оценить необходимость степени модернизации имеющегося прототипа.

Этот метод целесообразно использовать на ранних стадиях

Формирование договорной цены на разработку …

209

проектирования при разработке концепции и технического задания. Это позволит разработчику и заказчику определить трудоемкость реализации каждого из бизнес-процессов, проранжировать их в соответствии с пожеланиями заказчика, соизмерить финансовые возможности заказчика и сроки реализации проекта.

3.5.3.Определение размеров программного продукта методом функциональных точек

Метод функциональных точек (Function point, FP) осно-

вывается на том, что размеры программного продукта оцениваются в терминах количества и сложности бизнес-процессов(функ- ций), реализуемых в данном программном коде [31].

Будущая система описывается с использованием методологии структурного анализа и проектирования как многоуровневая графическая модель, представленная в виде иерархической совокупности взаимосвязанных функциональных диаграмм пользовательских бизнес-процессов.

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

Процедура оценивания размеров программного компонента состоит из последовательной оценки сложности процедур ввода,

вывода и обработки, интерфейсов и структуры данных (файлов).

При определении количества функций каждого бизнес-про- цесса следует руководствоваться следующими требованиями:

·учитывать только сложные функции, перечисленные в техническом задании (в требованиях);

·при декомпозиции сложной функции учитывать все логические преобразования с данными.

Общее количество функциональных точек F определяет-

Источник: https://studfile.net/preview/16438421/