Институт программной инженерии
Институт программной инженерии (англ. Software Engineering Institute, SEI) — это научно-исследовательский центр, входящий в состав Университета Карнеги — Меллона (Питтсбург, штат Пенсильвания, США). Основная деятельность института направлена на развитие и продвижение методов, практик и стандартов в области разработки программного обеспечения, управления проектами и кибербезопасности. SEI известен прежде всего как создатель модели зрелости процессов создания программного обеспечения (CMMI) и модели зрелости возможностей (CMM), а также как разработчик методологии управления рисками и архитектурного анализа программных систем.
История
Институт программной инженерии был основан в 1984 году при финансовой поддержке Министерства обороны США. Целью создания было систематическое повышение качества и надёжности программного обеспечения, используемого в оборонных и государственных системах. Первоначально институт занимался исследованием причин сбоев в крупных программных проектах и разработкой методик, позволяющих минимизировать риски.
В 1987 году SEI представил первую версию модели зрелости процессов (CMM), которая стала стандартом де-факто для оценки зрелости процессов разработки в организациях. В 1991 году вышла уточнённая версия CMM для программного обеспечения (SW-CMM). В 2000 году на основе CMM и других моделей была разработана интегрированная модель зрелости процессов (CMMI), которая охватила не только разработку ПО, но и системную инженерию, управление проектами и поставками.
В 2000-х годах институт расширил сферу деятельности, включив в неё кибербезопасность, архитектуру программных систем и анализ уязвимостей. В 2015 году SEI стал частью Университета Карнеги — Меллона, сохранив при этом финансирование со стороны Министерства обороны США.
Основные направления деятельности
Модели зрелости процессов (CMM и CMMI)
Наиболее известным продуктом SEI является модель зрелости процессов (CMM) и её преемница — интегрированная модель зрелости процессов (CMMI). Эти модели представляют собой набор практик, позволяющих организациям оценить и улучшить свои процессы разработки, управления и поддержки. CMMI включает пять уровней зрелости:
- Начальный (Initial) — процессы хаотичны, успех зависит от отдельных исполнителей.
- Управляемый (Managed) — процессы планируются, выполняются и контролируются.
- Определённый (Defined) — процессы стандартизированы и документированы.
- Количественно управляемый (Quantitatively Managed) — процессы измеряются и контролируются статистически.
- Оптимизирующий (Optimizing) — процессы непрерывно улучшаются на основе количественных данных.
CMMI широко применяется в аэрокосмической, оборонной, финансовой и IT-отраслях. В России использование CMMI ограничено, но некоторые крупные компании (например, «Лаборатория Касперского») применяют элементы этой модели.
Кибербезопасность
SEI активно занимается исследованиями в области кибербезопасности, включая анализ уязвимостей, разработку методов защиты от атак и создание стандартов безопасности. В рамках этого направления институт разработал:
- Модель зрелости кибербезопасности (C2M2) — для оценки и улучшения практик защиты информационных систем.
- Методологию анализа уязвимостей (Vulnerability Analysis) — для выявления слабых мест в программном обеспечении и сетевой инфраструктуре.
- Рекомендации по безопасной разработке ПО (Secure Coding Standards) — для предотвращения типичных ошибок, приводящих к уязвимостям.
SEI также участвует в создании и поддержке базы данных уязвимостей (CVE) и публикует отчёты о наиболее критичных угрозах.
Архитектура программных систем
Институт разрабатывает методы анализа и проектирования архитектуры программных систем, включая:
- Метод анализа архитектуры (ATAM) — для оценки качества архитектуры на ранних этапах разработки.
- Метод анализа компромиссов (CBAM) — для принятия решений о выборе архитектурных решений с учётом затрат и выгод.
- Метод анализа сценариев (SAAM) — для оценки пригодности архитектуры для конкретных требований.
Эти методы используются в крупных проектах, где требуется высокая надёжность и масштабируемость.
Управление рисками
SEI разработал методологию управления рисками в программных проектах, известную как Risk Management Paradigm. Она включает идентификацию, анализ, планирование, мониторинг и контроль рисков. Институт также публикует рекомендации по управлению рисками в agile-среде и в проектах с открытым исходным кодом.
Образовательная и консультационная деятельность
SEI предлагает программы обучения и сертификации для специалистов в области программной инженерии. Наиболее известные курсы:
- Certified CMMI Professional — сертификация для специалистов, внедряющих CMMI.
- Certified Secure Software Lifecycle Professional (CSSLP) — сертификация по безопасной разработке ПО.
- Architecture Tradeoff Analysis Method (ATAM) Training — обучение анализу архитектуры.
Институт также проводит консультации для организаций, желающих улучшить свои процессы разработки, внедрить CMMI или повысить уровень кибербезопасности.
Влияние на отрасль
Модели и методы, разработанные SEI, оказали значительное влияние на мировую практику разработки программного обеспечения. CMMI стал стандартом для многих государственных и коммерческих организаций, особенно в США и Европе. В России интерес к CMMI проявляют компании, работающие с зарубежными заказчиками, а также организации, участвующие в государственных закупках.
В области кибербезопасности рекомендации SEI используются при разработке критически важных систем, таких как системы управления воздушным движением, медицинские приборы и финансовые платформы.
Критика
Деятельность SEI подвергалась критике по нескольким направлениям:
- Сложность внедрения CMMI — процесс сертификации требует значительных временных и финансовых затрат, что делает его недоступным для малых и средних компаний.
- Бюрократизация — критики утверждают, что CMMI может приводить к излишней формализации процессов, снижая гибкость разработки.
- Ориентация на оборонный сектор — многие разработки SEI изначально нацелены на нужды Министерства обороны США, что ограничивает их применимость в коммерческой среде.
Тем не менее, SEI продолжает оставаться одним из ведущих центров компетенций в области программной инженерии, а его модели и методы используются тысячами организаций по всему миру.
Источники
- Software Engineering Institute. Carnegie Mellon University. Official website.
- CMMI for Development, Version 1.3. CMMI Product Team, 2010.
- ATAM: Method for Architecture Evaluation. SEI Technical Report, 2000.
- Risk Management Paradigm. SEI Technical Report, 1996.
- Secure Coding Standards. SEI CERT Division, 2020.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →