Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Оценка трудоемкости разработки программного обеспечения. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
09.08.2026
Размер:
457 Кб
Скачать

1.Определение границ ПС.

2.Идентификацияиоценкафункциональностиданных(ILF,EIF).

3.Идентификация и оценка функциональности транзакций

(EI, EO, EQ).

4.Определение значения нормирующего фактора (VAF).

5.Подсчетнормированногоколичествафункциональныхточек. Напрактикепоследовательностьшаговсовторогопочетвертый

неимеетзначения.Длявыполненияпятогошаганужнаинформация, полученная на предыдущих шагах.

Длявыполнениявсехшаговиспользуютследующиеисточники информации [6]:

– общая спецификация ПС (техническое задание, ТЗ), включающаявсебяфункциональнуюспецификациюиспецификацию качества.

 

 

 

 

 

 

Таблица 13

 

Коэффициенты трудоемкости

 

 

 

 

 

 

 

 

 

 

Коэф-

 

 

 

Значение

 

фици-

Характеристика

Низкий

 

Средний

 

Высокий

ент

 

уровень

 

уровень

 

уровень

МТ1

Требуемая надежность

0,9

 

1,0

 

1,1

 

информационной системы

 

 

 

 

 

МТ2

Размер тестовой базы

0,9

 

1,0

 

1,1

 

данных

 

 

 

 

 

МТ3

Интеграция с внешними

0,9

 

1,0

 

1,1

 

системами

 

 

 

 

 

МТ4

Сложность информацион-

0,9

 

1,0

 

1,1

 

ной системы

 

 

 

 

 

МТ5

Размещение компонентов

0,9

 

1,0

 

1,1

 

на мобильных устройствах

 

 

 

 

 

МТ6

Частота обновления плат-

0,9

 

1,0

 

1,1

 

формы

 

 

 

 

 

МТ7

Новизна информационной

0,9

 

1,0

 

1,1

 

системы

 

 

 

 

 

71

Use Case документ;

имеющаясянамоментоценкидокументациянаинтерфейсы;

имеющаяся на момент оценки документация разработчика;

отчеты о метриках ПС;

общение с пользователем;

предварительное руководство пользователя;

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

логическая модель данных;

результатысистемногоанализа,полученныесиспользованием различных методик, например таблицы решений, сети Петри, диаграммы UML и т. п.

Пример 13.Оценкатрудоемкостиразработкисистемызаказабилетов

спомощью методики Function Points

Идентификацияиоценкафункциональностиданных(ILFиEIF)(табл.14).

Всистеме надо хранить следующую информацию:

ILF-пользователи: ID пользователя; статус пользователя, имя; фамилия; день рождения; пол; телефон; e-mail; имя пользователя (логин); пароль; вопрос, который будет задан, в случае если пользователь забыл пароль; ответ на вопрос. Число типов элементов записей (RET) может быть равно 1 (только символьная информация). Число типов элементов данных (DET) 11. Уровень сложности низкий (Low);

ILF-заявки: номер заказа, статус заказа, ID пользователя, тип билета, дата, количество билетов, место получения билетов, контактная информация. Число типов элементов записей (RET) может быть равно 2 (символьная информация и целое число (количество билетов)). Число типов элементов данных (DET) 8. Уровень сложности низкий (Low);

EIF. Оператор проводит резервирование мест во внешней системе. О количестве DET и RET в этом файле на начальном этапе выполнения проекта мы не имеем полной информации и поэтому будем считать его

сложность средней.

Идентификацияиоценкафункциональноститранзакций(EI,EO,EQ). Уровеньсложностидлявнешнихвводов,внешнихвыводовивнешнихзапросов

Уровеньсложностивнешнихвводов(EI) (табл. 15).Внешнийввод«Ре-

гистрацияпользователя»ссылаетсянаодинвнутреннийлогическийфайл иимеет10элементовданных(поля«Логин»,«Пароль»,«Подтверждение пароля»,«Фамилия»,«Имя»;деньрождения;пол;е-mail;телефон;кноп- ки«Зарегистрироваться»,«Отменазаказа»,«Забылпароль»;сообщение,

72

 

 

 

 

 

 

 

Таблица 14

Оценка функциональности данных

 

 

 

 

 

 

 

 

 

 

 

Логические файлы

 

Количество файлов

Вес

Всего

Внутренние

 

2

 

7

 

14

Внешние

 

1

 

7

 

7

И т о г о

 

 

 

 

 

 

21

Уровень сложности внешних вводов

 

 

Таблица 15

 

 

 

 

 

 

 

 

 

 

 

Оценка внешних вводов

 

Количество

 

Вес

 

Всего

 

вводов

 

 

 

 

 

 

 

 

 

Регистрация

 

1

 

3

 

3

Аутентификация

 

1

 

3

 

3

Добавление нового пользователя

 

1

 

3

 

3

Заказ билетов

 

1

 

4

 

4

И т о г о

 

 

 

 

 

13

подтверждающее факт регистрации). Уровень сложности этого ввода низкий (Low).

Регистрация пользователя – 13 DET, 1 FTR Low. Аутентификация – 4 DET, 1 FTR Low.

Добавление нового пользователя – 10 DET, 1 FTR Low.

Заказ билета – 9 DET, 2 FTR. Средний уровень сложности (Average).

Уровеньсложностивнешнихвыводов(EO)(табл.16).Получениеотчетов

(статистики о работе системы) – 25 DET, 2 FTR. Низкий уровень слож-

ности (High).

Уровень сложности внешних запросов (EQ) (табл. 17)

Внешний запрос «Получение справочной информации» – ссылается на один внутренний логический файл и имеет четыре входных элемента данных (тип билета; дата; кнопки «Справка», «Отмена») и один элемент выходныхданных(количествобилетов).Уровеньсложностиэтогозапроса низкий (Low).

Получение справочной информации – 5 DET, 1 FTR Low. Внешний запрос «Забыл пароль» – 2 DET, 1 FTR. Низкий уровень

сложности.

Внешний запрос «Мониторинг исполнения заказа» – 5 DET, 2 FTR. Низкий уровень сложности.

73

 

 

 

 

 

 

 

Таблица 16

Уровень сложности внешних выводов

 

 

 

 

 

 

 

 

 

 

 

Оценка внешних вводов

 

Количество

 

Вес

 

Всего

 

 

выводов

 

 

 

 

 

 

 

 

 

Получение отчетов

 

 

1

 

7

7

И т о г о

 

 

 

 

 

 

7

 

 

 

 

 

 

 

Таблица 17

Уровень сложности внешних запросов

 

 

 

 

 

 

 

 

 

 

 

Оценка внешних вводов

 

 

Количество

Вес

 

Всего

 

 

запросов

 

 

 

 

 

 

 

 

Получение справочной информации

 

1

 

3

 

3

Забыл пароль

 

 

1

 

3

 

3

Мониторинг исполнения заказа

 

 

1

 

3

 

3

Отмена заказа

 

 

1

 

4

 

4

Оформление заказа

 

 

1

 

3

 

3

Учет проданных билетов

 

 

1

 

3

 

3

Удаление клиента из «черного списка»

 

1

 

3

 

3

Редактирование пользователя

 

 

1

 

3

 

3

Удаление пользователя

 

 

1

 

3

 

3

 

 

 

 

 

 

 

 

И т о г о

 

 

 

 

 

 

28

 

 

 

 

 

 

 

 

 

Внешний запрос «Отмена заказа» – 11 DET, 2 FTR. Средний уровень сложности.

Внешний запрос «Оформление заказа» – 15 DET, 1 FTR. Низкий уровень сложности.

Внешний запрос «Учет проданных билетов» – 5 DET, 1 FTR. Низкий уровень сложности.

Внешний запрос «Удаление клиента из "черного списка" – 5 DET, 1 FTR. Низкий уровень сложности.

Внешний запрос «Редактирование пользователя» – 16 DET, 1 FTR. Низкий уровень сложности.

Внешний запрос «Удаление пользователя» – 6 DET, 1 FTR. Низкий уровень сложности.

Подсчетобщегоколичестваненормированныхфункциональныхточек представлен в табл. 18.

74

Итого: UFP = 69.

РасчетзначенияфакторавыравниванияпроизводитсяпоформулеVAF=

=(TDI·0,01) + 0,65, где TDI – сумма параметров для системы заказов.

Втабл. 19 представлены параметры для системы заказов.

 

 

 

 

 

 

 

 

 

Таблица 18

 

Расчет количества ненормированных Function Points

 

 

 

 

 

 

 

 

 

 

 

Функциональность

 

 

Уровень

 

 

Итого

 

низкий

средний

 

высокий

 

 

 

 

 

 

 

 

ILF

 

 

 

7·2

 

 

14

EIF

 

 

 

7·1

 

 

7

EI

 

 

 

3·3

4·1

 

 

13

EO

 

 

 

 

1·7

 

7

EQ

 

 

 

3·8

4·1

 

 

28

И т о г о

 

 

 

47

15

 

7

 

69

 

 

Параметры для фактора выравнивания

Таблица 19

 

 

 

 

 

 

 

 

 

 

 

 

 

Системный

 

 

 

Характеристика

 

 

Значение

параметр

 

 

 

 

 

 

 

 

 

 

 

 

 

 

DI1

 

Обмен данными

 

 

 

 

1

DI2

 

Распределенная обработка данных

 

 

1

DI3

 

Производительность

 

 

 

 

1

DI4

 

Ограничения аппаратных ресурсов

 

 

0

DI5

 

Транзакционная нагрузка

 

 

1

DI6

 

Интенсивностьвзаимодействияспользователем

 

2

DI7

 

Эргономика

 

 

 

 

 

1

DI8

 

Интенсивность изменения данных

 

 

1

DI9

 

Сложность обработки

 

 

 

 

1

DI10

 

Повторное использование

 

 

0

DI11

 

Удобство инсталляции

 

 

 

 

1

DI12

 

Удобство администрирования

 

 

2

DI13

 

Портируемость

 

 

 

 

1

DI14

 

Гибкость

 

 

 

 

 

1

TDI

 

 

 

 

 

 

 

 

14

75

Итак, TDI = 14. В этом случае фактор выравнивания VAF = (14·0,01) + + 0,65 = 0,79.

Дляпрограммногоприложенияоценкаколичествавыровненныхфункцио-

нальных точек AFP = UFP·VAF = 69·0,79 = 54,5.

РазмерразрабатываемогоПОрассчитываемпоформулеРР=AFP·Кп/1000. При реализации системы заказов на С++ коэффициент Кп = 50; РР =

= 54,5·50/1000 = 2,7.

Трудозатраты определяют по формуле OTp= A PPB П7i=1MTi.

ДлявсехMTi установимсреднийуровеньравным1;А = 5,17; В=0,94.Тогда ОТр = 5,17·2,7·0,94·1 = 13,1 чел.-мес.

Получившаяся по методике функциональных точек оценка трудоемкости13,1чел.-меснемногобольше,чемоценкапомето- дикеUseCasePoints(10,8чел.-мес).Однакообеоценкивыполне- ны на самом раннем этапе реализации проекта и такая разница допустима.

ЗАКЛЮЧЕНИЕ

В пособии рассмотрен подход к формированию требований к программномуобеспечениюикоценкетрудоемкостиразработки,

основанныйнаметодикахUseCasePointsиFunctionPoints.Приве-

денпримерформированиятребованийввидеUseCaseдокумента для системы заказа билетов и пример определения трудоемкости разработки для этой системы по двум методикам.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1.Коберн А. Современные методы описания функциональных требований к системам / А. Коберн. – М. : Изд. дом «Лори», 2002. – 263 с.

2.Вигерс К. Разработка требований к программному обеспечению / К. Вигерс. – М. : Изд.-торг. дом «Русская редакция», 2004. – 576 с.

3.МацяшекЛ.Анализтребованийипроектированиесистем.Разработ- каинформационныхсистемсиспользованиемUML/Л.Мацяшек.–М.: Изд. дом «Вильямс», 2002. – 432 с.

76

4.ЛеффингуелД.Принципыработыстребованиямикпрограммному обеспечению. Унифицированный подход / Д. Леффингуел, Д. Уидриг. – М. : Изд. дом «Вильямс», 2000. – 431 с.

5.ОсобенностипримененияметодаUseCasePointsсоткрытымисходным кодом / И. В. Евдокимов [и др.] // Проблемы социально-экономи- ческого развития Сибири. – 2017. – № 4. – С. 36–42.

6.https://infopedia.su/ [Электронный ресурс]. 2021. URL: https:// infopedia.su/18x7736.html (дата обращения: 31.08.2023).

 

Приложение

ОСНОВНЫЕ СИСТЕМНЫЕ ПАРАМЕТРЫ

Параметр

Описание

Обмен дан-

Степень необходимости обмена данными для ПС,

ными (Data

его коммуникационные возможности:

Сommwiications)

0 – ПС реализовано как единый пакет на автоном-

 

ном компьютере;

 

1–ПСреализованокакединыйпакет,ноимеетуда-

 

ленныйвводданныхилиудаленныйвывод(печать);

 

2 – ПС реализовано как единый пакет, но имеет

 

удаленный ввод данных и удаленный вывод (пе-

 

чать);

 

3 – ПС включает в себя отдельный интерфейсный

 

блок или клиентскую часть, предназначенную для

 

сбора или удаленной обработки данных в режиме

 

реального времени (online);

 

4–вПСвполномобъемеиспользованыклиент-сер-

 

верныетехнологии,ноподдерживаетсятолькоодин

 

тип телекоммуникационного протокола;

 

5–вПСвполномобъемеиспользованы клиент-сер-

 

верные технологии и поддерживается более одного

 

типа телекоммуникационного протокола

Распределенные

НаличиевПСфункцийподдержкираспределенной

функции

обработки данных:

(Distributed

0 – данные между компонентами ПС и системы не

Functions)

передаются;

 

1 – ПС готовит данные для конечной обработки

 

другими средствами, например электронными таб-

лицами или СУБД; 2 – ПС готовит данные, которые затем передаются

для обработки (но не для конечной) другому компоненту системы; 3 – ПС поддерживает распределенную обработку

и передачу данных в режиме реального времени (online), но только в одном направлении;

4 – ПС поддерживает распределенную обработку и передачу данных в режиме реального времени (online) в обоих направлениях;

78

 

Продолжение

Параметр

Описание

 

5 – функции обработки данных динамически вы-

 

полняются на наиболее подходящем компоненте

 

системы

Производи-

Степенькритичиоститребованийкпроизводитель-

тельность

ности ПС:

(Performance)

0–никакихспециальныхтребованийкпроизводи-

 

тельности ПС пользователем не установлено;

 

1 – требования к производительности и проекти-

 

рованию ПС были установлены и рассмотрены, но,

 

чтобы их удовлетворить, никаких специальных мер

 

не требуется;

 

2–времяоткликаилипропускнаяспособностьПС

 

критичнывопределенныепиковыепериоды,однако

 

проектированиеПСсучетомзагрузкицентрального

 

процессора не требуется;

 

3–времяоткликаилипропускнаяспособностьПС

 

критичнывтечениевсегорабочегопериода,однако

 

проектированиеПСсучетомзагрузкицентрального

 

процессора не требуется;

 

4 – в дополнение: требования к производительно-

 

сти ПС, установленные пользователем, жесткие,

 

поэтомунаэтапепроектированиятребуетсяанализ

 

производительности;

 

5–вдополнение:длятогочтобыдостичьтребований

 

пользователя,наэтапахпроектированияиреализа-

 

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

Интенсивно

Интенсивностьиспользованияоборудования,нако-

используемая

тором будет установлено ПС:

конфигурация

0–явныхилинеявныхограниченийиспользования

(Heavily Used

ресурсов оборудования не установлено;

Сonfiguration)

1–операционныеограничениясуществуют,ноони

 

меньше, чем у типичного приложения, и поэтому

 

специальных усилий для их выполнения не требу-

 

ется;

 

2–присутствуютнекоторыетребованиякбезопас-

 

ности и времени, вызванные функционированием

 

других ПС;

79

Продолжение

Параметр

Описание

 

3 – присутствуют связанные с работой отдельных

 

частей ПС требования к процессору;

 

4 – установленные операционные ограничения

 

требуют лимитированного использования ПС

 

центрального или удаленного процессора;

 

5 – в дополнение: существуют специальные огра-

 

ничения, накладываемые на ПС, в распределен-

 

ных компонентах системы

Интенсивность

Мера интенсивности транзакций:

транзакций

0 – пиковые периоды транзакций не ожидаются;

(Transaction Rate)

1–пиковыепериодытранзакцийожидаютсяежегод-

 

но, ежесезонно, ежеквартально, ежемесячно;

 

2 – пиковые периоды транзакций ожидаются еже-

 

недельно;

 

3 – пиковые периоды транзакций ожидаются еже-

 

дневно;

 

4–интенсивностьтранзакций,установленнаяполь-

 

зователем в требованиях к ПС или в соглашениях

 

обуровнеобслуживания,достаточновысокая,что-

 

бытребоватьанализапроизводительностинаэтапе

 

проектировання;

 

5–интенсивностьтранзакций,установленнаяполь-

 

зователемвтребованияхкПСиливсоглашенияхоб

 

уровне обслуживания, достаточно высокая, чтобы

 

требоватьанализапроизводительностисиспользо-

 

ванием специальных инструментов на этапах про-

 

ектирования, реализации и внедрения

Диалоговый ввод

Сложность диалоговых транзакций с учетом числа

данных

экранов и функций:

(Online Data

0 – все транзакции обрабатываются в пакетном ре-

Entry)

жиме;

 

1–от1до7%транзакцийявляютсяинтерактивным

 

вводом данных;

 

2–от8до15%транзакцийявляютсяинтерактивным

 

вводом данных;

 

3 – от 16 до 23 % транзакций являются интерактив-

 

ным вводом данных;

80

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]