- •Проектирование информационных систем
- •Программная инженерия (Software Engineеring)
- •История вопроса
- •Доля успешных проектов в области IT
- •Знания о программной инженерии
- •SWEBOK - Свод знаний о программной инженерии
- •Цели, поставленные комитетом SECC
- •Вехи развития SWEBOK
- •Ядро знаний SWEBOK- 2004
- •Структура SWEBOK - 2004
- •Основные области SWEBOK
- •Дополнительные области SWEBOK
- •SWEBOK – 2004 Обзор смежных дисциплин
- •Дополнительные области знаний SWEBOK V3.0
- •Определение автоматизированной информационной системы
- •Проектирование АИС
- •Разработка АИС
- •Процессы разработки приложений
- •Каскадный процесс У. Ройс, 1970
- •Инкрементный процесс
- •Схема инкрементной модели
- •Спиральный (итерационный) процесс. Б.Боэм, 1982
Проектирование информационных систем
ВВЕДЕНИЕ В
ПРОГРАММНУЮ
ИНЖИНЕРИЮ
2014 г.
Лекция 1
Программная инженерия (Software Engineеring)
Является отраслью компьютерной науки,
изучает вопросы построения программ для компьютеров,
обобщает накопленный опыт программирования в виде комплексов общих знаний и правил,
регламентирующих инженерную деятельность разработчиков ПО.
охватывает все аспекты создания ПО, начиная от концептуального и бизнес-анализа до создания, сопровождения и снятия с эксплуатации ПО,
а также оценку трудозатрат, производительности и качества.
История вопроса
Программирование в машинных кодах
Программирование на ассемблере
Программирование на ЯВУ
Тестирование
Проектирование
Управление
…
Доля успешных проектов в области IT
2001
2000
1998
1995
1994
28% |
2003 |
31% |
2004 |
35% |
Провалены |
Испытали большие проблемы |
Успешные |
||
23% |
|
49% |
|
28% |
28% |
|
46% |
|
26% |
40% |
|
33% |
|
27% |
31% |
|
53% |
|
16% |
0% |
100% |
* - по данным The Standish Group International,
"CHAOS 2005", "Extreme Chaos", "Chaos Report", 1994-2004
Знания о программной инженерии
Эффективность разработчиков в зависимости от квалификации колеблется в отношении 1:10
Знания разработчиков ПО отличаются:
большим разнообразием,
несогласованностью,
разнородностью.
Мировая компьютерная общественность пришла к необходимости систематизировать знания в области программной инженерии
SWEBOK - Свод знаний о программной инженерии
Американское объединение компьютерных специалистов ACM (Association for Computing Machinery)
Компьютерный союз при институте инженеров по электронике и электротехнике (IEEE Computer Society).
Образовали Software Engineering Coordinating Committee (SECC)
Введение |
SoftWare Engineering Body of Knowledge |
|
© Ю.A. Маглинец |
6 |
Цели, поставленные комитетом SECC
определить необходимый набор знаний и рекомендуемые практики;
определить этические и профессиональные стандарты;
определить учебную программу для студентов, аспирантов и продолжающих обучение.
Вехи развития SWEBOK
Ядро знаний SWEBOK 1999
IEEE Guide to SWEBOK® 2004
Сергей Орлик - Основы Программной Инженерии
(по SWEBOK) http://swebok.sorlik.ru/
SWEBOK V3.0
Ядро знаний SWEBOK- 2004
Является основополагающим документом, консолидирующим мнения ведущих IT-специалистов о структуре знаний в области SE
Cодержит описание 10 областей знаний
Каждой области сопоставлено стандартное описание, включая:
понятийный аппарат,
методы и средства,
инструменты поддержки инженерной деятельности.
Структура SWEBOK - 2004
1.Software requirements – Требования к ПО
2.Software design – Проектирование
3.Software construction – конструирование ПО
4.Software testing – тестирование
5.Software maintenance – эксплуатация (поддержка) ПО
6.Software configuration management – конфигурационное
управление
7.Software engineering management – управление в
программной инженерии
8.Software engineering process – процессы программной
инженерии
9.Software engineering tools and methods – инструменты и
методы
10.Software quality – качество программного обеспечения