Значения переводных коэффициентов (kpi) для различных средств разработки
Средство разработки*) | Значение kpi |
Языки низкого уровня (Assembler) | 0,17 |
Процедурные языки высокого уровня (Pascal, C) | 0,42 |
С# | 1,64 |
C++ | 1,00 |
Microsoft Visual С++ | 1,58 |
Borland C++ | 1,95 |
PowerBuilder | 3,33 |
Языки 4GL (Visual Basic, VBA, Delphi) | 3,48 |
Visual FoxPro | 2,85 |
Системы программирования на основе СУБД типа FoxPro (Clipper, Clarion) | 2,56 |
Встроенные в ПО макроязыки | 3,86 |
Системы программирования на основе СУБД типа Oracle, SqlServer, Informix | 1,83 |
Командные скриптовые языки | 1,87 |
HTML/CSS (без использования редакторов) | 0,20 |
HTML/CSS (с использованием редакторов) | 0,10 |
XML/XSLT | 0,20 |
Java | 1,69 |
JavaScript | 1,87 |
Cкриптовые языки для WEB (ASP, PHP, Pearl) | 1,74 |
SQL | 1,96 |
*)Примечание. Указанные в таблице средства разработки обозначают группу средств подобного типа. Поэтому, если имеется средство разработки, непосредственно не указанное в левом столбце, то его необходимо самостоятельно отнести к какой-либо из групп, наиболее близкой по уровню используемого языка.
4.2.2. При использовании 2-го способа определения объема функции (см. пункт 3.2.1) значение объема функции (Vi), выраженное числом строк исходного текста на условном языке, определяется исходя из объема функции (Vиi) на используемом языке (средстве) разработки по формуле:
, (3.2)
где Vиi – объем i-й функции ПС на используемом языке (средстве) разработки;
kpi – переводной коэффициент, определяемый в зависимости от используемого средства разработки по таблице 3.4;
- количество функций ПС.
4.2.3. Отдельные функции разрабатываемого программного средства могут реализовываться неоднократно в неизменном виде или с некоторыми изменениями. Простое суммирование объемов одинаковых функций может привести к завышению трудоемкости их разработки. Скорректированный объем i-ой функции ПС (Vмi) определяется по формуле:
, (3.3)
где Vi – объем i-ой функции ПС (определяемый на основании пункта 3.2.2);
ri – число реализаций i-ой функции;
ki – коэффициент, учитывающий степень повторного использования i-ой функции (может принимать значения от 0 до 1). Под степенью повторного использования функции подразумевается часть программного кода функции, которая пишется разработчиками заново. Так если разработчики пишут весь код функции «с нуля», то степень повторного использования равна 1. Если функция входит в состав готового компонента или библиотеки, то на трудозатраты она никак не влияет и её степень повторного использования равна 0. К примеру, степень повторного использования всех функций, которые реализованы в готовом компоненте, если этот компонент включается в разрабатываемое программное средство, равна 0. Если код функций изменяется частично, то величина коэффициента повторного использования равна доле изменений. Например, если заново переписывается 60% кода функции, входящей в компонент, то степень повторного использования равна 0,6;
- количество функций ПС.
4.2.4. Скорректированный объем функции ПС (Vмi) не учитывает влияние различных субъективных и объективных факторов на трудоемкость разработки ПС. Для учета этого влияния используются поправочные коэффициенты уровня функции. Скорректированный с учетом влияния различных факторов объем функции ПС (Vki) определяется по формуле:
Vki= Vмi *Ксложн * Кср. разр* Копыт, (3.4)
где Vмi – скорректированный объем i-ой функции ПС, определяемый в соответствии с пунктом 3.2.3;
Ксложн – коэффициент сложности функции, определяемый в соответствии с пунктом 3.2.6;
Кср. разр – коэффициент, учитывающий конкретные условия и средства разработки ПС (таблица 3.5);
Копыт – коэффициент, учитывающий опыт работы программистов с данным средством разработки (таблица 3.6).
Таблица 3.5
Значения коэффициента,
учитывающего конкретные условия и средства разработки ПС (Кср. разр)
Средства разработки ПС*) | Значения Кср. разр |
1 | 2 |
Языки низкого уровня (Assembler) | 1,52 |
Процедурные языки высокого уровня (Pascal, C) | 1,18 |
С# | 0,92 |
C++ | 1,00 |
Microsoft Visual С++ | 0,89 |
Borland C++ | 0,84 |
PowerBuilder | 0,84 |
Языки 4GL (Visual Basic, VBA, Delphi) | 0,69 |
Visual FoxPro | 0,76 |
Системы программирования на основе СУБД типа FoxPro (Clipper, Clarion) | 0,58 |
Встроенные в ПО макроязыки | 0,73 |
Системы программирования на основе СУБД типа Oracle, SqlServer, Informix | 0,63 |
Командные скриптовые языки | 0,79 |
HTML/CSS (без использования редакторов) | 0,68 |
HTML/CSS (с использованием редакторов) | 0,59 |
XML/XSLT | 0,69 |
Java | 0,92 |
1 | 2 |
JavaScript | 0,76 |
Cкриптовые языки для WEB (ASP, PHP, Pearl) | 0,81 |
SQL | 0,65 |
*)Примечание. Указанные в таблице средства разработки обозначают группу средств подобного типа. Поэтому, если имеется средство разработки, непосредственно не указанное в левом столбце, то его необходимо самостоятельно отнести к какой-либо из групп, наиболее близкой по уровню используемого языка.
Таблица 3.6
Значения коэффициента,
учитывающего опыт работы программистов с данным средством разработки (Копыт)
Уровень опыта работы | Опыт работы разработчика | Значение Копыт |
Очень низкий | не более 1 законченного проекта | 1,20 |
Низкий | 1-2 законченных проекта | 1,09 |
Средний | 3-4 законченных проекта | 1,00 |
Высокий | 5 законченных проектов | 0,91 |
Очень высокий | более 5 законченных проектов | 0,84 |
4.2.5. Функция ПС может состоять из следующих типов операций:
управляющие операции;
вычислительные операции;
операции, зависящие от аппаратуры;
операции управления данными;
операции управления пользовательского интерфейса;
операции, связанные с бухгалтерским учетом.
Сложность функции определяется на основе характеристик сложности операций, входящих в состав данной функции. Уровень сложности функции зависит от уровня сложности соответствующего типа операции.
Для каждого класса функций, приведенного в Каталоге функций, определены операции, входящие в состав функций данного класса. Перечень операций приведен в таблице 3.7.
Уровни сложности операций (
) определяются по таблицам 3.8 – 3.13.
Таблица 3.7
Операции, входящие в состав различных классов функций
Класс функций | Тип операций |
1 | 2 |
Функции, обеспечивающие прием платежных документов от различных источников | операции, зависящие от аппаратуры |
Функции, обеспечивающие регистрацию входных документов | операции, зависящие от аппаратуры |
Функции, обеспечивающие протоколирование | операции, зависящие от аппаратуры |
Функции, обеспечивающие ввод первичных платежных документов | вычислительные операции |
Функции, обеспечивающие контроль информации документов | операции управления данными |
Функции, обеспечивающие обработку платежных документов | вычислительные операции |
Функции, обеспечивающие обработку ошибочных ситуаций | управляющие операции |
Функции, обеспечивающие работу со справочниками | операции управления данными |
Функции, обеспечивающие формирование отчетов | вычислительные операции |
Функции, обеспечивающие ведение журналов | операции управления данными |
Функции, обеспечивающие создание и поддержку БД | операции управления данными |
Функции, обеспечивающие поиск в БД | операции управления данными |
Функции, обеспечивающие информационную безопасность | управляющие операции |
Функции, обеспечивающие генерацию отчетных документов | вычислительные операции |
Функции, обеспечивающие настройку ПС на условия применения | операции управления пользовательского интерфейса |
Функции, обеспечивающие обработку статистических данных | вычислительные операции |
Функции, обеспечивающие анализ и составление балансов | вычислительные операции |
Функции, обеспечивающие реализацию пользовательского интерфейса | операции управления пользовательского интерфейса |
Функции, обеспечивающие работу с файлами | операции, зависящие от аппаратуры |
Функции, обеспечивающие реализацию интерфейсов между подсистемами | управляющие операции |
Функции, обеспечивающие выполнение регламентных операций | управляющие операции |
Функции, обеспечивающие тестирование | вычислительные операции |
1 | 2 |
Функции, обеспечивающие проведение экономического анализа | вычислительные операции |
Функции, обеспечивающие выполнение задач планирования | вычислительные операции |
Функции, обеспечивающие конвертацию данных | операции, зависящие от аппаратуры |
Функции, обеспечивающие мониторинг | операции, зависящие от аппаратуры |
Функции, обеспечивающие ведение архива и копирование информации | операции, зависящие от аппаратуры |
Функции, обеспечивающие реализацию взаимосвязей систем и компонентов | управляющие операции |
Функции, обеспечивающие ведение бухгалтерского учета в подразделениях банка и расчеты РКЦ со сторонними организациями | операции, связанные с бухгалтерским учетом |
Таблица 3.8
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |


