![]() |
|
|
|
![]() |
|
Современные технологии создания программного обеспеченияТехнологии создания программного обеспечения Требования, предъявляемые к технологии создания программного обеспечения Технология создания программного обеспечения в общем случае можно описать следующей системой понятий: Технология создания программного обеспечения - упорядоченная совокупность взаимосвязанных технологических процессов в рамках ЖЦ ПО Технологический процесс - совокупность взаимосвязанных технологических операций. Технологическая операция - основная единица работы, выполняемая определенной ролью, которая:
Рабочий продукт - информационная или материальная сущность, которая создается, модифицируется или используется в некоторой технологической операции (модель, документ, код, тест и т.п.). Рабочий продукт определяет область ответственности роли и является объектом управления конфигурацией. Роль - определение поведения и обязанностей отдельного лица или группы лиц в среде организации-разработчика ПО, осуществляющих деятельность в рамках некоторого технологического процесса и ответственных за определенные рабочие продукты. Руководство - практическое руководство по выполнению одной или совокупности технологических операций. Руководства включают методические материалы, инструкции, нормативы, стандарты и критерии оценки качества рабочих продуктов. Инструментальное средство (CASE-средство) - программное средство, обеспечивающее автоматизированную поддержку деятельности, выполняемой в рамках технологических операций. Основным требованием, предъявляемым к современным ТС ПО, является их соответствие стандартам и нормативным документам, связанным с процессами ЖЦ ПО и оценкой технологической зрелости организаций-разработчиков (ISO 12207, ISO 9000, CMM и др.). Согласно этим нормативам, Технология создания программного обеспечения должна поддерживать следующие процессы:
Полнота поддержки процессов ЖЦ ПО должна поддерживаться комплексом инструментальных средств (CASE-средств). Другим важным требованием является адаптируемость к условиям применения, которая достигается за счет поставки технологии в электронном виде вместе с CASE-средствами и библиотеками процессов, шаблонов, методов, моделей и других компонентов, предназначенных для построения ПО того класса систем, на который ориентирована технология. Электронные технологии должны включать средства, обеспечивающие их адаптацию и развитие по результатам выполнения конкретных проектов. Процесс адаптации заключается в удалении ненужных процессов и действий ЖЦ ПО, в изменении неподходящих или в добавлении собственных процессов и действий, а также методик, стандартов и руководств. Внедрение технологии создания программного обеспечения в организации При внедрении технологии создания программного обеспечения следует руководствоваться рекомендациями, приведенными в стандартах. Эти рекомендации достаточно актуальны и ценны, поскольку отражают опыт, накопленный многими зарубежными пользователями и разработчиками технологии создания программного обеспечения в течение длительного периода их существования. Термин "внедрение" используется в широком смысле и включает все действия - от оценки первоначальных потребностей до полномасштабного использования технологии создания программного обеспечения в различных подразделениях организации. Процесс внедрения технологии создания программного обеспечения состоит из следующих этапов: Определение потребностей в технологии создания программного обеспечения, характеристик объекта внедрения и проектов создания ПО. Определение требований, предъявляемых к технологии создания программного обеспечения (анализ характеристик объекта внедрения и проектов, обоснование требований к технологии создания программного обеспечения, определение приоритетов требований). Оценка вариантов технологии создания программного обеспечения. Предварительная экспертная оценка заключается в анализе доступных ТС ПО на предмет соответствия требованиям, неудовлетворительные варианты (с точки зрения реализации наиболее приоритетных требований) отвергаются, формируется список претендентов. При детализированной оценке для каждой технологии создания программного обеспечения-претендента формируется ее детальное описание. Источники информации для описания - техническая документация поставщика, доступные данные о реальных внедрениях, результаты выполнения пилотных проектов. Выбор технологии создания программного обеспечения. Производится сравнительный анализ технологий и окончательный выбор технологии создания программного обеспечения с помощью экспертной оценки. Адаптация технологии создания программного обеспечения к условиям применения. Производится формирование конкретной рабочей конфигурации технологии создания программного обеспечения, адаптированной к условиям объекта внедрения. В процессе внедрения технологии создания программного обеспечения собирается статистика и оценивается эффективность ее внедрения с точки зрения ряда критериев (минимум трудоемкости сопровождения ПО, минимум затрат на сопровождение ПО и др.). При изменении условий объекта внедрения и по результатам анализа эффективности внедрения технологии создания программного обеспечения принимается решение: а) о внесении изменений в рабочую конфигурацию технологии создания программного обеспечения; б) о переходе на новую технологии создания программного обеспечения. В случае перехода повторяются пп. 3)-4)-5). Оценка и выбор технологии создания программного обеспечения Цель процесса оценки - определение функциональности и качества технологии создания программного обеспечения для последующего выбора. Оценка выполняется в соответствии с конкретными критериями, ее результаты включают как объективные, так и субъективные данные по каждой технологии создания программного обеспечения. Процессы оценки и выбора тесно взаимосвязаны. По результатам оценки цели выбора и/или критерии выбора и их веса могут потребовать модификации. В таких случаях может понадобиться повторная оценка. Когда анализируются окончательные результаты оценки и к ним применяются критерии выбора, может быть рекомендовано приобретение технологии. Альтернативой может быть отсутствие адекватных технологий, в этом случае рекомендуется разработать новую технологию, модифицировать существующую или отказаться от внедрения. Процесс выбора включает в себя следующие действия:
Типичный процесс оценки и/или выбора может использовать набор критериев различных типов. Каждый критерий должен быть выбран и адаптирован экспертом с учетом особенностей конкретного процесса. Исходные данные для оценки и выбора - набор параметров (технико-экономических характеристик) технологии создания программного обеспечения: Функциональные характеристики, ориентированные на процессы жизненного цикла ПО (управление проектом, управление требованиями, управление конфигурацией и изменениями, анализ и проектирование ПО и др.). Функциональные характеристики применения (среда функционирования, совместимость с другими ТС ПО, соответствие технологическим стандартам). Характеристики качества (надежность, удобство использования, эффективность, сопровождаемость, переносимость). Общие характеристики (затраты на технологию, лицензионная политика, оценочный эффект от внедрения технологии создания программного обеспечения, инфрастуктура, требуемая для внедрения технологии создания программного обеспечения, доступность и качество обучения, сертификация поставщика, поддержка поставщика). На основе данного набора параметров анализируются и классифицируются существующие технологии создания программного обеспечения. Общий набор критериев, применяемых для оценки технологии создания программного обеспечения, приведен в Таб. 1. В результате выполненной оценки может оказаться, что ни одна доступная технология не удовлетворяет в нужной мере всем критериям и не покрывает все потребности проекта. В этом случае может применяться набор средств, позволяющий построить на их базе единую технологическую среду. Таблица 1. Критерии, применяемые для оценки технологии создания программного обеспечения
Выполнение пилотного проекта Перед полномасштабным внедрением выбранной технологии создания программного обеспечения в организации выполняется пилотный проект, целью которого является экспериментальная проверка правильности решений, принятых на предыдущих этапах, и подготовка к внедрению. Пилотный проект позволяет получить важную информацию, необходимую для оценки технологии создания программного обеспечения и его поддержки со стороны поставщика после того, как средство установлено. Важной функцией пилотного проекта является принятие решения относительно приобретения или отказа от использования технологии создания программного обеспечения. Провал пилотного проекта позволяет избежать более значительных и дорогостоящих неудач в дальнейшем, поскольку пилотный проект обычно требует приобретения относительно небольшого количества лицензий и обучения узкого круга специалистов. Пилотный проект должен обладать следующими характеристиками:
В процессе оценки пилотного проекта организация должна определить свою позицию по следующим трем вопросам:
Возможным решением должно быть одно из следующих:
Практическое внедрение технологии создания программного обеспечения Процесс перехода к практическому использованию технологии создания программного обеспечения начинается с разработки и последующей реализации плана перехода. Этот план может отражать поэтапный подход к переходу - от тщательно выбранного пилотного проекта до проектов с существенно возросшим разнообразием характеристик. План перехода должен охватывать:
План перехода должен определять начальную практику применения и процедуры использования средств. Реальное применение любой технологии создания программного обеспечения в конкретной организации и конкретном проекте невозможно без выработки ряда стандартов (правил, соглашений), которые должны соблюдаться всеми участниками проекта (это особенно актуально при коллективной разработке ПО большим количеством групп специалистов). К таким стандартам относятся следующие:
Для успешного внедрения технологии создания программного обеспечения в организации существенной является последовательность в ее применении. Поскольку большинство систем разрабатываются коллективно, необходимо определить характер будущего использования технологии создания программного обеспечения как отдельными разработчиками, так и группами. Использование стандартных процедур позволит обеспечить плавный переход между отдельными стадиями ЖЦ ПО. Результатом данного этапа является внедрение технологии создания программного обеспечения в повседневную практику организации. Кроме того, поддержка ТС ПО включается в план текущей поддержки ПО в данной организации. Источник: А.М. Вендров, Jet Info Online, 4/2004 |
|
|||||||||||||||||||||||||
| 12 | |||||||||||||||||||||||||||