7. Manfred Kirchgeorg Zielgruppe - Definition im Gabler Wirtschaftslexikon [Электронный ресурс]. - Режим доступа: http://wirtschaftslexikon.gabler.de/ Definition/zielgruppe.html
8. Moser K., Zempel J. Personalmarketing, in: Lehrbuch der Personalpsychologie, hrsg. v. Schuler, H., Göttingen 2001, S. 63.
9. Priv.-Doz. Dr. - Ing. Johannes Springer, Marie-Christine Stemann M.A. Personalmanagement, 2006 [Электронный ресурс]. - Режим доступа: www.iaw. rwth-aachen.de/download/lehre/vorlesungen/2006-ss-pmb/02_pm_ss2006.pdf.
10. Teufer, S. (1999): Die Bedeutung des Arbeitgeberimage bei der Arbeitgeberwahl, S. 12.
11. Thomas Müller Woher nehmen, wenn nicht stehlen? Personalmarketing in der Sozialwirtschaft 17. Juni 2011 [Электронный ресурс]. - Режим доступа: http://www.fakd.org/files/symposium_mueller2.pdf.
ОЦЕНКА ТРУДОЗАТРАТ НА СОЗДАНИЕ ПРОГРАММНЫХ СРЕДСТВ ПО МОДЕЛИ СОСОМО II ПРИ ПОСЛЕДОВАТЕЛЬНОЙ МОДЕЛИ ЖИЗНЕННОГО ЦИКЛА
© Тютюнников Н.Н.*
Центральный научно-исследовательский институт экономики, информатики и систем управления, г. Москва
В статье рассмотрены вопросы оценки по модели COCOMO II трудоемкости и потребности в специалистах на различных этапах создания программных средств при использовании последовательной модели жизненного цикла.
Ключевые слова: трудоемкость создания, потребности в специалистах, программные средства, последовательная модель жизненного цикла, модель COCOMO II.
Модель СОСОМО II [1] позволяет определить трудоемкость создания программных средств и потребности в специалистах различной специализации на каждом этапе жизненного цикла программных средств в соответствии с типовыми работами, проводимыми в том или ином объеме в течение всего времени создания программных средств.
Модель СОСОМО II при применении последовательной модели жизненного цикла программных средств [2] оценивает затраты для следующих восьми основных работ:
* Ведущий научный сотрудник Центра информационных ресурсов, кандидат технических наук, старший научный сотрудник.
1. Анализ требований, включающий определение, описание, обобщение и изменение требований к программным средствам (их функциям, производительности, интерфейсу пользователя и проверке работоспособности).
2. Проектирование средства, включающее определение, описание, обобщение и изменение программно-аппаратной архитектуры, проекта программы и базы данных.
3. Программирование, включающее детальное проектирование, кодирование и тестирование модулей, а также интеграцию отдельных компонентов компьютерной программы. Кроме того, производится планирование использования программистов, закупка инструментальных средств, создание базы данных, документирование на уровне компонентов и управление программированием на промежуточном уровне.
4. Планирование тестирования, включающее описание, обобщение и обновление планов по тестированию средства и контрольных примеров для него.
5. Верификация и валидация (Verification and Validation, V&V). Под верификацией понимается подтверждение соответствия конечного средства определенным эталонным требованиям (например, устанавливаемых заданной технологией программирования), а под вали-дацией - подтверждение соответствия конечного средства требованиям заказчика (потребителя или пользователя средства), либо услуги или системы, где оно будет использоваться. Работы по верификации и валидации включают выполнение независимых (объективных) требований валидации, проектирование V&V, предварительные и приемочные испытания. Кроме того осуществляется приобретение средств (утилит) для учета требований и проектирования V&V.
6. Функции службы проектов, включающие функции управления проектом, такие как планирование и контроль выполнения проекта, управление подрядными и субподрядными организациями и подразделениями, взаимодействие с клиентами.
7. Управление конфигурацией и обеспечение качества. Управление конфигурациями включает в себя идентификацию средства, контроль изменений, состояние затрат, обеспечение работы библиотек поддержки программ, разработку и контроль плана приемки конечных элементов средства. Обеспечение качества включает в себя разработку и контроль стандартов проекта, а также технический аудит программных средств и процессов.
8. Документирование, включающее разработку руководств пользователя, оператора и по техническому обслуживанию, а также внесение в них изменений.
Данные основные работы выполняются на всех этапах жизненного цикла программных средств. Модель СОСОМО II с использованием системы норм позволяет оценить трудоемкость каждой работы на каждом этапе жизненного цикла программных средств. Оценка трудоемкости каждого этапа жизненного цикла программных средств проводилась на примере программных средств терминологического фонда [3], как представлено в табл. 1. Нормы процентного соотношения затрат по каждому этапу выбирались из нормировочных таблиц, представленных в [4], для размера Lalge = 128 KSLoc и Е = 1,05.
Таблица 1
Трудоемкость основных работ, выполняемых на различных этапах создания программных средств терминологического фонда при использовании последовательной модели жизненного цикла
Основные работы 1. Планирование и установление требований 2. Предварительное проектирование средств 3. Программирование 4. Интеграция и тестирование е и ити в за л 5. Сопровождение
% Чел. мес. % Чел. мес. % Чел. мес. % Чел. мес. % Чел. мес. % Чел. мес.
Всего 5 7,42 14 20,78 50 74,23 21 31,17 5 7,43 5 7,42
Анализ требований 46 3,41 15 3,12 5 3,72 3 0,94 6 0,45 7 0,52
Проектирование средств 20 1,48 40 8,31 10 7,42 6 1,87 14 1,04 13 0,97
Программирование 3 0,22 14 2,91 58 43,05 34 10,60 45 3,34 42 3,12
Планирование тестирования 3 0,22 5 1,04 4 2,97 2 0,62 4 0,30 3 0,22
Верификация и валидация 6 0,45 6 1,25 6 4,45 34 10,60 13 0,97 13 0,96
Служба проектов 15 1,11 11 2,29 6 4,45 7 2,18 7 0,52 7 0,52
Управление конфигурацией и обеспечение качества 2 0,15 2 0,42 6 4,45 7 2,18 5 0,36 5 0,37
Документирование 5 0,38 7 1,44 5 3,72 7 2,18 6 0,45 10 0,74
Несмотря на то, что представленные работы выполняются на всех этапах жизненного цикла, наибольшие затраты по каждой работе явно зависят от этапа жизненного цикла программных средств. Эти закономерности состоят в следующем:
1. На начальных этапах жизненного цикла (планирование и установление требований, предварительное проектирование средства) наибольшие трудозатраты приходятся на системных аналитиков и архитекторов, осуществляющих анализ требований и проектировании средств. На последующих этапах их трудоемкость снижается за счет учета мелких требований заказчика и внесения изменений в проектную документацию.
2. На этапах разработки (программирования), таких как детальное проектирование, кодирование и тестирование модулей, являющихся
наиболее трудоемкими среди остальных этапов, наибольшие трудозатраты приходятся на программистов и технических писателей, осуществляющих работы по программированию, тестированию и документированию программных модулей. На ранних этапах их трудоемкость мала за счет проведению работ по макетированию и про-тотипированию, а на поздних - за счет исправления выявленных ошибок и учета мелких требований заказчика.
3. Трудоемкость обеспечивающих специалистов (осуществляющих приемку программных средств, планирование и учет затрат, конфигурационное управление и контроль качества) практически одинакова на всех этапах жизненного цикла (немного увеличивается на этапах разработки). Исключением является резкое увеличение трудозатрат при проведении испытаний разработанных средств на этапе интеграции и тестирования соответствующими специалистами. В соответствии с полученными оценками трудоемкости работ на этапах жизненного цикла программных средств с учетом ранее оцененной длительности каждого этапа определяются потребности в специалистах каждой группы, которые для программных средств терминологического фонда представлены в табл. 2.
Таблица 2
Потребности в специалистах на различных этапах создания программных средств терминологического фонда при использовании последовательной модели жизненного цикла
Группа специалистов (Основные работы) 1. Планирование и установление требований (1,70 мес.) 2. Предварительное проектирование средств (2,54 мес.) 3. Программирование (6,94 мес.) 4. Интеграция и тестирование (4,07 мес.) 5-6. Переходный период (1,70 мес.)
Чел. мес. Чел. Чел. мес. Чел. Чел. мес. Чел. Чел. мес. Чел. Чел. мес. Чел.
Системные аналитики и архитекторы (анализ требований, проектирование средств) 4,89 3 11,43 5 11,14 2 2,81 1 2,98 2
Программисты и технические писатели (программирование, планирование тестирования, документирование) 0,82 1 5,39 2 49,74 7 13,40 3 8,17 5
Обеспечивающие специалисты (верификация и валидация, служба проектов, управление конфигурацией и обеспечение качества) 1,71 1 3,96 2 13,35 2 14,96 4 3,70 2
Всего 7,42 5 20,78 9 74,23 11 31,17 8 14,85 9
Таким образом, на основе полученных оценок можно сделать вывод, что самым трудоемким и длительным этапом жизненного цикла программных средств является этап программирования. Кроме того, сравнивая оценки потребностей различных специалистов для каждого этапа жизненного цикла программных средств с оценкой численности коллектива разработчиков на проект в целом, видно, что на наиболее трудоемких этапах создания программных средств может потребоваться большее количество специалистов, чем планируется по результатам оценок за весь проект.
Список литературы:
1. Software Cost Estimation with Cocomo II / by Barry W. Boehm... [et al.]. -N.J.: Prentice-Hall, 2000. - 544 p.
2. Boehm Barry W. Software engineering economics. - Englewood Cliffs, N.J.: Prentice-Hall, 1981. - 767 p.
3. Тютюнников Н.Н. Оценка трудозатрат на создание программных средств для стадии разработки по модели COCOMO II // Современные тенденции в экономике и управлении: новый взгляд. - 2014. - № 25. - С. 69-75.
4. Cocomo II. Model Definition Manual. Version 2.1. - USC: Center for Software Engineering, 2000. - 86 p.