Глобальная система навыков и компетенций для цифрового мира

Проектирование программного обеспечения SWDN

Определение и проектирование программного обеспечения для удовлетворения определенных требований, следуя согласованным стандартам и принципам проектирования.

Методические рекомендации:

Деятельность может включать, но не ограничиваться:

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

В зависимости от требований и характеристик проекта или рабочего задания, методы проектирования программного обеспечения могут быть прогностическими (управляемыми планом) или адаптивными (итеративными/гибкими).

Уровни ответственности за этот навык

2 3 4 5 6

Проектирование программного обеспечения: Уровень 1

Этот навык, как правило, не соблюдается и не практикуется на этом уровне ответственности и подотчетности.

Проектирование программного обеспечения: Уровень 2

Создает и документирует подробные проекты для простых программных приложений или компонентов. Применяет согласованные методы моделирования, стандарты, шаблоны и инструменты. Вносит вклад в разработку компонентов более крупных программных систем. Проверяет собственную работу.

Проектирование программного обеспечения: Уровень 3

Занимается полным проектированием умеренно сложных программных приложений или компонентов. Применяет согласованные стандарты, рекомендации, шаблоны и инструменты. Помогает в составе группы в разработке компонентов более крупных программных систем. Определяет пользовательские и/или системные интерфейсы. Создает несколько вариантов дизайна для решения проблем различных заинтересованных сторон и обработки функциональных и нефункциональных требований. Помогает в оценке вариантов и компромиссов. По мере необходимости сотрудничает в рассмотрении работы с другими специалистами.

Проектирование программного обеспечения: Уровень 4

Проектирует сложные программные приложения, компоненты и модули. Использует соответствующие методы моделирования, следуя согласованным стандартам, рекомендациям, шаблонам и методологии проектирования программного обеспечения. Создает и передает несколько вариантов дизайна, чтобы сбалансировать интересы заинтересованных сторон и удовлетворить функциональные и нефункциональные требования. Определяет, оценивает и рекомендует альтернативные варианты дизайна и компромиссы. Моделирует, имитирует или создает прототипы поведения предлагаемого программного обеспечения для утверждения заинтересованными сторонами и эффективного создания программного обеспечения. Проверяет дизайн программного обеспечения путем разработки и применения соответствующих методов. Анализирует, проверяет и улучшает собственные разработки в соответствии со спецификациями. Руководит обзором чужих разработок.

Проектирование программного обеспечения: Уровень 5

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

Проектирование программного обеспечения: Уровень 6

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

Проектирование программного обеспечения: Уровень 7

Этот навык, как правило, не соблюдается и не практикуется на этом уровне ответственности и подотчетности.