Скачать 442.95 Kb.
|
Основные стандарты SEНаиболее известными стандартами программной инженерии являются:
Понятие жизненного цикла ПО как некоторой последовательности этапов, которые надо выполнить для создания ПО: проектирование, разработка, тестирования, … составляет одно из фундаментальных понятий программной инженерии. Понятие возникло в конце 60-х годов, когда разработкой ПО занималось много фирм, и различными разработчиками трактовалось по-разному. Путаница в терминологии порождала много проблем во взаимопонимании между разработчиками, между разработчиками и заказчиками. Необходим был стандарт на представление терминов, понятий и составных элементов жизненного цикла ПО. Этот стандарт был принят ISO в 1995 году. Следует отметить, что работы по нему были начаты в 1987 году и стандарт формировался взаимными усилиями 125 стран – участниц ISO. В России этот стандарт принят в 2000 году под названием «ГОСТ Р ИСО/МЭК 12207 Процессы жизненного цикла программных средств». В стандарте ISO 12207 дается определение программного продукта (ПО) как набора компьютерных программ, процедур и связанной с ними документации и данных и определение жизненного цикла программного продукта как непрерывного процесса, который начинается с момента принятия решения о необходимости его создания и заканчивается в момент его полного изъятия из эксплуатации. Стандарт определяет:
По организации жизненный цикл ПО описывается в виде совокупности взаимодействующих процессов, каждый из которых состоит из действий, которые в свою очередь могут быть разбиты на отдельные задачи. Структура жизненного цикла дается в виде перечня его процессов: процесс управления, процесс разработки процесс тестирования, процесс документирования, … Для каждого процесса дается описание действий этого процесса. Так, действиями процесса разработки являются: подготовка процесса, анализ требований, проектирование системной архитектуры, анализ требований к программным средствам и т.д. Для каждого действия дается подробное описание его задач. Примечание.
Тексты стандарта:
Capability Maturity Model (for Software) - модель зрелости процессов разработки программного обеспечения – известный отчет SEI, который формально стандартом не является, но приобрел характер международного стандарта в силу его интересности и практической полезности. Отчет появился в 1993 году как результат исследования на тему: «Как выбирать организацию, которой можно доверить выполнение крупного IT проекта?». Это исследование проводилось SEI по заказу министерства обороны США, которое было очень озадачено этой проблемой. В отчете изложена модель зрелости организаций, которая определялась через зрелость процесса разработки ПО, применяемого в этой организации. В этой модели выделяется пять уровней зрелости процесса, которые и устанавливают степень готовности организации выполнить крупный проект:
Технология полностью импровизированная, в некоторых случаях — даже хаотическая. Успех всецело зависит от усилий отдельных сотрудников.
Базовые процессы управления проектом ПО установлены. Есть дисциплина соблюдения, что обеспечивает возможность повторения успеха предыдущих проектов в той же прикладной области 3. Определенный (Defined) Процессы задокументированы, стандартизованы и интегрированы в единую для всей организации технологию создания ПО. Для каждого проекта используется адаптивный вариант этой технологии. 4. Управляемый (Managed) Собираются и накапливаются метрики (объективные данные) о качестве исполнения процессов и выходной продукции. Управление процессами и выходной продукцией осуществляется по количественным оценкам. 5. Оптимизируемый (Optimized) Совершенствование технологии создания ПО осуществляется непрерывно на основе количественной обратной связи от процессов и пилотного внедрения инновационных идей. Подробнее:
А также:
ISO/IEC 15504 TR Software Process Assessment - международный стандарт, опубликованный в виде отчета, известный также как SPICE: Software Process Improvement and Capability dEtermination - Оценка и аттестация зрелости процессов создания и сопровождения ПО. Разработан на основе обобщения опыта 9 стандартов (международных и корпоративных), в том числе ISO 12207 и SEI CMM. Является развитием и уточнением этих стандартов. Содержит расширенное по отношению ISO 12207 количество процессов жизненного цикла и 6 уровней зрелости процессов по отношению к CMM. Дается подробное описание схемы аттестации процессов, на основе результатов которой может быть выполнена оценка зрелости процессов и даны рекомендации по их усовершенствованию. В стандарте установлены регламенты аттестации, оценки и усовершенствования процессов, дается подробное описание требований к аттестаторам. Подробнее:
PMBOK - аббревиатура от Project Management Body of Knowledge, Свода знаний по управлению проектами. PMBOK представляет собой стандарт, развиваемый PMI. Известны версии 1996 и 2000 гг. Последняя версия стандарта вышла в 2004 году. Содержит описания состава знаний по следующим 9 разделам (областям знаний) управления проектами: 1. Управление интеграцией - Project Integration Management 2. Управление ограничениями - Project Scope Management 3. Управление временем - Project Time Management 4. Управление затратами - Project Cost Management 5. Управление рисками - Project Risk Management 6. Управление персоналом - Project Personnel Management 7. Управление коммуникациями - Project Communication Management 8. Управление закупками - Project Procurement Management 9. Управление качеством - Project Quality Management Подробнее:
IEEE Computer Society Software Engineering Body of Knowledge – Свод знаний по программной инженерии - проект IEEE Computer Society. Официальная версия вышла 18 мая 2004 г. Основная идея проекта аналогична PMBOK и заключается в создании некоторого базового набора общепринятых знаний, необходимых любому профессиональному программисту. Содержит описания состава знаний по следующим 10 разделам (областям знаний) программной инженерии:
Подробнее: Guide to the Software Engineering Body of Knowledge - http://www.swebok.org/
ACM/IEEE Computing Curricula 2001 – Академический образовательный стандарт в области компьютерных наук - совместный проект международных профессиональных обществ ACM и IEEE Computer Society. Вышло несколько версий 1968, 78, 83, 91, 2001. Основная идея проекта состоит в разработке стандартов на учебные курсы по компьютерным наукам. В стандарте 2001 года выделены 4 основных раздела компьютерных наук: • Computer science – Информатика (2001г); http://se.math.spbu.ru/cc2001 • Computer engineering – Компьютерная инженерия; • Software engineering – Программная инженерия (2004г.) • Information systems – Информационные системы. Окончательный вариант стандарта ACM/IEEE Computing Curricula 2001: Computer Science был опубликован в декабре 2001, а Software engineering – в мае 2004г. По разделу Computer Science есть перевод (http://se.math.spbu.ru/cc2001 ). Работа над остальными разделами продолжается, но рабочие материалы этих разделов можно посмотреть на сайте: http://www.computer.org/education/cc2001 По содержанию образовательные стандарты состоят из описания областей знаний соответствующего раздела, состава и планов рекомендуемых курсов Областями знаний раздела Software engineering являются:
Подробнее:
Программная инженерия: назначение, основные принципы и понятия © Карпенко С.Н., 2005 |