Программная инженерия

Различные словари (напр., SEVOCAB) и Википедия дают довольно сложное определение программной инженерии[1], поэтому немного упростим его.

Программная инженерия — применение научных, инженерных и других подходов и знаний ко всем аспектам создания программного обеспечения.

Области знаний программной инженерии

С моей точки зрения лучше всего для определения структуры программной инженерии подходит SWEBOK (Software Engineering Body of Knowledge) — свод знаний по программной инженерии утвержденный как международный стандарт ISO/IEC TR 19759 от 2015 г. Сейчас актуальна версия SWEBOK V3, но уже существует SWEBOK V4, который на текущий момент находиться в разработке и включает 18 областей знаний в сфере программной инженерии, каждая из которых делиться на набор специализированных дисциплин или тем.

Кроме SWEBOK существуют и другие источники, например, отдельное направление подготовки в российских вузах 09.03.04 «Программная инженерия», но я не нашел какого либо стандартного учебного плана, существует международный учебный план Computing Curriculum Software Engineering (CCSE), однако последнее обновление было в 2004 году.

Области знаний SWEBoK:

  1. Software Requirements — требования к программному обеспечению.
  2. Software Architecture — архитектура программного обеспечения.
  3. Software Design — проектирование программного обеспечения.
  4. Software Construction — конструирование программного обеспечения.
  5. Software Testing — тестирование программного обеспечения.
  6. Software Engineering Operations — развертывания, эксплуатация и поддержка программного обеспечения.
  7. Software Maintenance — сопровождение программного обеспечения.
  8. Software Configuration Management — управление конфигурацией.
  9. Software Engineering Management — управление IT проектом.
  10. Software Engineering Models and Methods — модели и методы разработки.
  11. Software Engineering Process — процесс программной инженерии.
  12. Software Quality — качество программного обеспечения.
  13. Software Security — безопасность программного обеспечения.
  14. Software Engineering Economics — экономические аспекты разработки.
  15. Software Engineering Professional Practice — профессиональные практики и компетентность.
  16. Computing Foundations — основы вычислительных технологий .
  17. Mathematical Foundations — базовые математические концепции и понятия .
  18. Engineering Foundations — основы инженерной деятельности.

Кроме того эта версия указывает на связанные, но не включенные в стандарт науки и инженерные направления:

  1. Computer engineering
  2. Computer science
  3. General management
  4. Mathematics
  5. Project management
  6. Quality management
  7. Systems engineering

Дополнительные материалы

Примечания

  1. https://ru.wikipedia.org/wiki/Программная_инженерия

Comments

So empty here ... leave a comment!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Sidebar