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

694_Metodicheskie_rekomendatsii_po_podgotovke_Kanev_V.S

._.pdf
Скачиваний:
3
Добавлен:
12.11.2022
Размер:
643.58 Кб
Скачать

RESL – архитектура и управление рисками; TEAM– сработанность команды;

PMAT – зрелость процессов; Факторы продукта:

RELY – требуемая надежность ПО; DATA – размер базы данных; CPLX – сложность продукта;

REUSE – требуемая повторная используемость;

DOCU – документирование требований жизненного цикла; Факторы платформы (виртуальной машины):

TIME – ограничение времени выполнения; STOR – ограничения памяти;

PVOL – изменчивость платформы; Факторы персонала:

ACAP– возможности аналитика;

PCAP – возможности программиста;

AEXP– опыт работы с приложением;

PEXP– опыт работы с платформой;

LTEX – опыт работы с языком и утилитами; PCON – текучесть персонала;

Факторы проекта:

TOOL – использование программных утилит; SITE– мультисетевая разработка;

SCED – требуемый график разработки;

Затратыauto – затраты на автоматическую генерацию кода (при ее наличии).

На основе модели COCOMO II можно привести расчет трудозатрат и сроков проекта на различных этапах жизненного цикла ПС. В качестве примера в таблицах 7.2, 7.3 приведено данное распределение при использовании каскадной модели ЖЦ ПС, а по видам работ в пределах каждой фазы – в таблице 7.4.

Таблица 7.2 – Распределение трудозатрат на различных этапах ЖЦ ПС В процентах

Фаза

 

Размер программного средства

 

малый

 

промежу-

средний

большой

 

 

 

точный

 

 

Планирование и анализ требований

6

 

6

6

6

Проектирование

16

 

16

16

16

Программирование:

68

 

65

62

59

– детальное

26

 

25

24

23

– модульное

42

 

40

38

36

Комплексирование и испытания

16

 

19

22

25

31

Таблица 7.3 – Распределение сроков на различных этапах ЖЦ ПС В процентах

Фаза

 

Размер программного средства

 

малый

 

промежу-

средний

большой

 

 

 

точный

 

 

Планирование и анализ требований

10

 

11

12

13

Проектирование

19

 

19

19

19

Программирование

63

 

59

55

51

Комплексирование и испытания

18

 

22

26

30

Таблица 7.4 – Распределение трудозатрат по видам работ на каждой фазе ЖЦ ПС

 

 

 

 

В процентах

 

 

 

 

 

Фаза жизненного цикла

Планирова-

Проектиро-

Программи-

Комплекси-

проекта продукта

ние и анализ

вание

рование

рование

 

требований

 

 

 

Размер продукта

любой

любой

Доля всей фазы

6

16

68 (малый

16 (малый

 

 

 

размер)

размер)

 

 

 

65(промежут

19 (промежу-

 

 

 

очный раз-

точный раз-

 

 

 

мер)

мер)

 

 

 

62 (средний

22 (средний

 

 

 

размер)

размер)

 

 

 

59 (большой

25(большой

 

 

 

размер)

размер)

Доля работы в:

 

 

 

 

Анализ требований

46

15

5

3

Проектирование

20

40

10

6

Программирование

3

14

58

34

Планирование отладки

3

5

4

2

Верификация

6

6

6

34

Управление проектом

15

11

6

7

Управление качеством и

 

 

 

 

конфигурацией

2

2

6

7

Документирование

5

7

5

7

Калибровка модели СОСОМО II (выбор наборов факторов) включает следующие этапы [30]:

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

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

32

трудоемкость производства программного продукта, которые сравниваются с предыдущей оценкой;

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

Функции, корректирующие трудоемкость, имеют следующий вид:

n

b 0,91 0,01 Fi ,

i 1

Mp,e P1 P2 ... Pn ,

где Fi – масштабные факторы; Pi – рейтинговые факторы.

Сущность факторов, определение значений их уровня, а также значения самих факторов приведены ниже и в таблицах 7.5-7.26 [46].

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

DATA – размер базы данных – определяет влияние размера тестовых данных на разработку ПО. Оценка определяется отношением размера базы данных в байтах к количеству строк кода. Уровень фактора оценивается как очень низкий, если величина отношения меньше 10, и очень высоким, если отношение больше 1000.

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

REUSE – требуемая повторная используемость – фактор обусловлен дополнительными затратами, необходимыми для реализации компонентов, которые можно использовать повторно в текущих и будущих проектах. Данные затраты связаны с разработкой более универсального (общего) ПО, более обширной документации и более тщательным тестированием компонентов. Разработка с повторным использованием накладывает ограничения на значения факторов RELY и DOCU. Фактор RELY может быть ниже REUSE не более чем на один уровень. Фактор DOCU должен быть не ниже уровня «Нормальный» для значений «Нормальный» и «Высокий» фактора REUSE и, по крайне мере, должен иметь уровень «Высокий» для значений «Очень высокий» и «Существенно высокий» фактора REUSE.

DOCU – документирование требований жизненного цикла – фактор оценивает пригодность документации для жизненного цикла проекта ПО. Попытки снизить затраты на документацию (уровни «Существенно низкий» и «Низкий»), как правило, сопровождаются ростом расходов на обслуживание ПО.

33

TIME – ограничение времени выполнения – является мерой, определяющей ограничение на время выполнения, обусловленное ограничениями, наложенными на программную систему. Определяется процентом от общего доступного времени выполнения.

STOR – ограничения памяти – фактор, отражающий меру ограничений, наложенных на систему со стороны устройств памяти. Несмотря на то, что в настоящее время доступны практически неограниченные объемы памяти, возможность расширения приложения (а, соответственно, и потребления ресурсов) оставляет влияние этого фактора значимым.

PVOL – изменчивость платформы. Платформа – комплекс технических средств и программного обеспечения. При разработке операционной системы платформой будет являться аппаратное обеспечение. Для СУБД – операционная система и оборудование вычислительной системы, для браузера – инфокоммуникационная сеть, операционная система, аппаратное обеспечение, распределенные информационные системы инфраструктуры управления internet.

ACAP – возможности аналитика. Аналитик – сотрудник, работающий с требованиями, системным проектированием и детальным проектированием. Данный фактор учитывает следующие основные характеристики: способность к анализу и системному проектированию, эффективность, тщательность, умение общаться и сотрудничать. Данный фактор не учитывает уровень опыта аналитика, так как он оценивается с помощью APEX, LTEX, PLEX.

PCAP – возможности программиста – определяется аналогично фактору

ACAP.

PCON – текучесть кадров – определяется степенью устойчивости кадрового состава.

Факторы AEXP – опыт работы с приложением, PEXP – опыт работы с платформой, LTEX – опыт работы с языком и утилитами – определяют время участия команды разработчиков в проекте ПО.

SCED – требуемый график разработки – данный фактор зависит от возможности сжатия стандартных сроков проекта ПО.

TOOL – использование программных утилит – характеризует сложность и функциональность инструментальных средств, используемых при реализации проекта ПО.

SITE – мультисетевая разработка – фактор, характеризующий необходимость учета сетевой обработки.

Некоторые факторы определяются через другие (сумму факторов) с учетом того, что «Очень низкий» уровень фактора соответствует 1, а уровень «Существенно высокий» – 5.

PREC – прецедентность, наличие опыта аналогичных разработок (очень низкий уровень – опыт в разработке продукта и платформы отсутствует; очень высокий уровень – продукт и платформа полностью знакомы).

FLEX – гибкость процесса разработки (очень низкий уровень – процесс строго детерминирован; очень высокий уровень – определены только общие цели).

34

RESL – архитектура и управление рисками (очень низкий уровень – риски неизвестны/не проанализированы; очень высокий уровень – риски полностью известны).

TEAM – сработанность команды (очень низкий уровень – формальные взаимодействия; очень высокий уровень – полное доверие, взаимозаменяемость и взаимопомощь).

PMAT – зрелость процессов (очень низкий уровень – CMM Level 1; очень высокий уровень – CMM Level 5).

PERS – квалификация персонала (существенно низкий уровень – аналитики и программисты имеют низшую квалификацию, текучесть кадров больше 45%; существенно высокий уровень – аналитики и программисты имеют высшую квалификацию, текучесть меньше 4%).

RCPX – сложность и надежность продукта (существенно низкий уровень

продукт простой, специальных требований по надежности нет, БД маленькая, документация не требуется; существенно высокий уровень – продукт очень сложный, требования по надежности жесткие, БД сверхбольшая, документация требуется в полном объеме).

RUSE – разработка для повторного использования (существенно низкий уровень – не требуется; существенно высокий уровень – требуется повторное использование в других продуктах).

PDIF – сложность платформы разработки (существенно низкий уровень

специальные ограничения по памяти и быстродействию отсутствуют, платформа стабильна; существенно высокий уровень – жесткие ограничения по памяти и быстродействию, платформа нестабильна).

PREX – опыт персонала (существенно низкий уровень – новое приложение, инструменты и платформа; существенно высокий уровень – приложение, инструменты и платформа хорошо известны).

FCIL – оборудование (существенно низкий уровень – инструменты простейшие, коммуникации затруднены; существенно высокий уровень – интегрированные средства поддержки жизненного цикла, интерактивные мультимедиа коммуникации).

SCED – сжатие расписания (существенно низкий уровень – 75% от номинальной длительности; существенно высокий уровень – 160% от номинальной длительности).

35

Таблица 7.5 – Уровень фактора RELY

Оценка

 

Очень

Низкий

 

Нормаль-

Высокий

 

Очень

Сущест-

уровня

 

низкий

 

 

 

ный

 

 

 

высокий

венно

фактора

 

 

 

 

 

 

 

 

 

 

 

высокий

Значение

 

Незначи-

Низкие,

Умерен-

Значи-

 

Риск чело-

характери-

 

тельные

легко воз-

ные, легко

тельные

 

веческой

 

стики

 

неудобства

мещаемые

возмещае-

финансо-

 

жизни

 

уровня

 

 

 

потери

мые поте-

вые потери

 

 

 

 

 

 

 

 

 

ри

 

 

 

 

 

Таблица 7.6 – Уровень фактора DATA

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Оценка

 

Очень

Низкий

Нормаль-

Высокий

 

Очень

Сущест-

уровня

 

низкий

 

 

 

ный

 

 

 

высокий

венно

фактора

 

 

 

 

 

 

 

 

 

 

 

высокий

Значение

 

 

 

 

 

 

 

 

 

 

 

 

характери-

 

 

 

 

 

 

 

 

 

 

 

 

стики

 

 

 

 

 

 

 

 

 

уровня

 

<10

 

10-100

100-1000

 

 

>1000

 

 

 

 

 

 

 

Таблица 7.7 – Уровень фактора CPLX

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Оценка

 

 

Операции

 

Вычислитель-

 

Аппаратно-

 

Операции по

Операции

уровня

 

управления

 

ные

 

 

зависимые

 

управлению

с пользо-

фактора

 

 

 

 

операции

 

 

операции

 

 

данными

вательским

 

 

 

 

 

 

 

 

 

 

 

 

 

интерфей-

 

 

 

 

 

 

 

 

 

 

 

 

 

сом

1

 

2

 

3

 

 

 

4

 

5

6

Очень

 

Прямоли-

 

Простые вы-

 

 

Простое чтение с

 

Простые

Простой

низкий

 

нейный код

 

числения, на-

 

 

записью сообще-

 

массивы в

формат

 

 

с несколь-

 

пример, А=В +

 

ний простого

 

основной

ввода, ге-

 

 

кими не-

 

С (D+E)

 

 

формата

 

 

памяти.

нерирова-

 

 

вложенны-

 

 

 

 

 

 

 

Простые за-

ние отче-

 

 

ми опера-

 

 

 

 

 

 

 

просы к ко-

тов (про-

 

 

торами

 

 

 

 

 

 

 

робочным

стой фор-

 

 

управления

 

 

 

 

 

 

 

БД

мат выво-

 

 

IF, WHILE,

 

 

 

 

 

 

 

 

 

да)

 

 

CASE.

 

 

 

 

 

 

 

 

 

 

 

 

Простая

 

 

 

 

 

 

 

 

 

 

 

 

комбинация

 

 

 

 

 

 

 

 

 

 

 

 

модулей

 

 

 

 

 

 

 

 

 

 

 

 

посредст-

 

 

 

 

 

 

 

 

 

 

 

 

вом вызова

 

 

 

 

 

 

 

 

 

 

 

 

процедур.

 

 

 

 

 

 

 

 

 

 

 

 

Простой

 

 

 

 

 

 

 

 

 

 

 

 

скрипт

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

36

Продолжение таблицы 7.7

1

2

3

4

5

6

Низкий

Код с про-

Вычисления

Нет необходимо-

Набор про-

Использо-

 

стым вло-

средней слож-

сти в особой ин-

стых оди-

вание про-

 

жением

ности, напри-

формации от про-

ночных

стых

 

управляю-

мер

цессора или уст-

файлов с не-

средств

 

щих конст-

D=SQRT(B**2-

ройств вво-

изменяемой

построения

 

рукций. В

4.*A*C)

да/вывода. Все

структурой,

графиче-

 

основном

 

операции вво-

без возмож-

ского

 

простые

 

да/вывода реали-

ности редак-

пользова-

 

предикаты

 

зуются на уровне

тирования,

тельского

 

 

 

GET/PUT методов

без проме-

интерфей-

 

 

 

 

жуточных

са

 

 

 

 

файлов.

 

 

 

 

 

Умеренно

 

 

 

 

 

сложный

 

 

 

 

 

набор запро-

 

 

 

 

 

сов к коро-

 

 

 

 

 

бочным БД

 

Нор-

В основном

Использование

Обработка опера-

Набор вход-

Простое

мальный

простое

стандартных

ций ввода/вывода,

ных файлов

использо-

 

вложение.

математиче-

включая выбор

и единичные

вание на-

 

Некоторое

ских и стати-

устройства, про-

выходные

боров

 

количество

стических биб-

верку статуса уст-

файлы. Про-

виджетов

 

межмо-

лиотек. Ис-

ройства, обработ-

стые изме-

 

 

дульных

пользование

ку ошибок уст-

няемые

 

 

взаимодей-

базовых

ройств

структуры.

 

 

ствии. Под-

тор-

 

Простое ре-

 

 

держка

ных/матричных

 

дактирова-

 

 

таблиц

операций

 

ние. Слож-

 

 

принятия

 

 

ные запросы

 

 

решений.

 

 

к коробоч-

 

 

Простые

 

 

ным БД

 

 

обратные

 

 

 

 

 

связи и

 

 

 

 

 

парсинг со-

 

 

 

 

 

общений

 

 

 

 

 

связующего

 

 

 

 

 

ПО. Рас-

 

 

 

 

 

пределен-

 

 

 

 

 

ная обра-

 

 

 

 

 

ботка

 

 

 

 

 

 

 

 

 

 

37

Продолжение таблицы 7.7

1

2

3

4

5

6

Высокий

Сильно

Основные ме-

Операции на фи-

Простые

Разработка

 

вложенные

тоды вычисли-

зическом уровне

триггеры,

набора ви-

 

управляю-

тельной мате-

ввода/вывода (ад-

активируе-

ждетов и

 

щие конст-

матики, много-

ресация устройств,

мые содер-

его расши-

 

рукции с

мерная интер-

чтение, обраще-

жимым по-

рение.

 

множест-

поляция, обык-

ние, трансляция

токов дан-

Простая

 

вом слож-

новенные диф-

адресов). Оптими-

ных. Слож-

обработка

 

ных преди-

ференциальные

зация перекрытия

ная реструк-

голосового

 

катов. Кон-

уравнения, за-

операций вво-

туризация

вво-

 

троль оче-

дачи округле-

да/вывода

данных

да/вывода.

 

редей и

ния значений и

 

 

Мульти-

 

стеков.

представления

 

 

миедия

 

Однород-

их в памяти

 

 

 

 

ная распре-

 

 

 

 

 

деленная

 

 

 

 

 

обработка.

 

 

 

 

 

Единичные

 

 

 

 

 

процессор

 

 

 

 

 

управления

 

 

 

 

 

системами

 

 

 

 

 

мягкого ре-

 

 

 

 

 

ального

 

 

 

 

 

времени

 

 

 

 

Очень

Рентабель-

Сложные, но

Процедуры для

Координа-

Умеренно

высо-

ный и ре-

структуриро-

обнаружения, об-

ция распре-

сложная

кий

курсивный

ванные методы

работки, маскиро-

деленных

2D/3D ди-

 

код. Обра-

вычислитель-

вания прерываний.

БД. Слож-

намиче-

 

ботка пре-

ной математи-

Работа с сетевыми

ные тригге-

ская гра-

 

рываний с

ки, матричные

интерфейсами и

ры. Оптими-

фика.

 

фиксиро-

уравнения в

линиями связи.

зация поиска

Мультиме-

 

ванным

близи точек

Высокопроизво-

 

дия

 

приорите-

сингулярности,

дительные встро-

 

 

 

том. Син-

дифференци-

енные системы

 

 

 

хронизация

альные уравне-

 

 

 

 

задач.

ния в частных

 

 

 

 

Сложные

производных.

 

 

 

 

обратные

Простой парал-

 

 

 

 

вызовы. Ге-

лелизм

 

 

 

 

терогенная

 

 

 

 

 

распреде-

 

 

 

 

 

ленная об-

 

 

 

 

 

работка.

 

 

 

 

 

Единствен-

 

 

 

 

 

ный про-

 

 

 

 

 

цессор

 

 

 

 

 

управления

 

 

 

 

 

 

 

 

 

 

38

Окончание таблицы 7.7

1

2

3

4

5

6

Сущест-

Планирова-

Сложные и не-

Работа с времяза-

Сильно

Сложная

венно

ние множе-

структуриро-

висимыми устрой-

взаимосвя-

мультиме-

высокий

ства ресур-

ванные методы

ствами. Микро-

занные ди-

дия, вирту-

 

сов с дина-

вычислитель-

программные опе-

намические

альная ре-

 

мически

ной математи-

рации. Встроен-

реляцион-

альность,

 

меняющи-

ки, определе-

ные системы с вы-

ные отно-

интерфей-

 

мися при-

ние тонкой

сокими требова-

шения и

сы на есте-

 

оритетами.

структуры шу-

ниями (критиче-

структуры

ственных

 

Управление

ма, анализ сто-

скими) к произво-

объектов.

языках

 

на уровне

хастических

дительности

Управление

 

 

микрокода.

данных

 

данными на

 

 

Управление

 

 

естествен-

 

 

распреде-

 

 

ных языках

 

 

ленной сис-

 

 

 

 

 

темой же-

 

 

 

 

 

сткого ре-

 

 

 

 

 

ального

 

 

 

 

 

времени

 

 

 

 

Таблица 7.8 – Уровень фактора REUSE

Оценка

Очень

Низкий

Нормаль-

Высокий

Очень

Существен-

уровня

низкий

 

ный

 

высокий

но

фактора

 

 

 

 

 

высокий

Значение

Использо-

Использо-

Использо-

Использо-

характери-

 

 

вание во

вание во

вание во

вание во

стики

 

 

всем проек-

всей про-

всей линей-

всех про-

уровня

 

 

те

граммной

ки продук-

дуктах ко-

 

 

 

 

системе

тов

манды раз-

 

 

 

 

 

 

работчиков

Таблица 7.9 – Уровень фактора DOCU

Оценка

Очень

Низкий

Нормаль-

Высокий

Очень

Сущест-

уровня

низкий

 

ный

 

высокий

венно

фактора

 

 

 

 

 

высокий

Значение

Большин-

Некоторые

Объем до-

Излишний

Сущест-

характери-

ство эта-

этапы и

кумента-

объем до-

венно из-

 

стики

пов и по-

потребно-

ции доста-

кумента-

лишний

 

уровня

требностей

стей жиз-

точный

ции

объем до-

 

 

жизненно-

ненного

 

 

кумента-

 

 

го цикла не

цикла не

 

 

ции

 

 

покрыты

покрыты

 

 

 

 

39

Таблица 7.10 – Уровень фактора TIME

Оценка

Очень

Низ-

Нормальный

Высокий

Очень

Существен-

уровня

низ-

кий

 

 

высокий

но

фактора

кий

 

 

 

 

высокий

Значение

≤ 50% ис-

70% исполь-

85% исполь-

95% ис-

характери-

 

 

пользования

зования дос-

зования дос-

пользования

стики уров-

 

 

доступного

тупного вре-

тупного вре-

доступного

ня

 

 

времени

мени

мени

времени

Таблица 7.11 – Уровень фактора STOR

Оценка

Очень

Низ-

Нормальный

Высокий

Очень

Существен-

уровня

низ-

кий

 

 

высокий

но

фактора

кий

 

 

 

 

высокий

Значение

≤ 50% ис-

70% исполь-

85% исполь-

95% исполь-

характери-

 

 

пользования

зования дос-

зования дос-

зования дос-

стики уров-

 

 

доступной

тупной па-

тупной па-

тупной па-

ня

 

 

памяти

мяти

мяти

мяти

Таблица 7.12 – Уровень фактора PVOL

Оценка

Очень

Низкий

Нормальный

Высокий

Очень

Сущест-

уровня

низкий

 

 

 

высокий

венно

факто-

 

 

 

 

 

высокий

ра

 

 

 

 

 

 

Значе-

Основные

Основные

Основные

Основные

ние

 

изменения

изменения

изменения

изменения

 

харак-

 

каждый

каждые пол-

каждые 2

каждые 2

 

тери-

 

год.

года.

месяца.

недели.

 

стики

 

Неоснов-

Неосновные

Неоснов-

Неоснов-

 

уровня

 

ные изме-

изменения

ные изме-

ные изме-

 

 

 

нения каж-

каждые 2 не-

нения каж-

нения каж-

 

 

 

дый месяц

дели

дую неделю

дые 2 дня

 

Таблица 7.13 – Уровень факторов ACAP, PCAP

Оценка

Очень

Низкий

Нормальный

Высокий

Очень

Сущест-

уровня

низкий

 

 

 

высокий

венно

фактора

 

 

 

 

 

высокий

Значение

 

 

 

 

 

 

характе-

 

 

 

 

 

 

ристики

15 процен-

35 процен-

55 процен-

75 процен-

90 процен-

 

уровня

тиль

тиль

тиль

тиль

тиль

40