Проектирование программного обеспечения
| Процесс разработки ПО | |
| Шаги процесса | |
|---|---|
|
Анализ Проектирование Программирование Документирование Тестирование |
|
| Модели | |
| Методологии | |
|
Agile (XP, Lean, Scrum и др.) Cleanroom OpenUP RAD RUP MSF DSDM TDD |
|
| Сопутствующие дисциплины | |
|
Конфигурационное управление Управление проектами Управление требованиями |
|
Проектирование программного обеспечения в процесс создания проекта программного обеспечения (ПО), а также дисциплина, изучающая методы проектирования. Проектирование ПО является частным случаем Проектирования продуктов и процессов.
Целью проектирования является определение внутренних свойств системы и детализации её внешних (видимых) свойств на основе выданных заказчиком требований к ПО (исходные условия задачи). Эти требования подвергаются анализу.
Первоначально программа рассматривается как чёрный ящик. Ход процесса проектирования и его результаты зависят не только от состава требований, но и выбранной модели процесса, опыта проектировщика.
Модель предметной области накладывает ограничения на бизнес-логику и структуры данных.
В зависимости от класса создаваемого ПО, процесс проектирования может обеспечиваться как «ручным» проектированием, так и различными средствами его автоматизации. В процессе проектирования ПО для выражения его характеристик используются различные нотации в блок-схемы, ER-диаграммы, UML-диаграммы, DFD-диаграммы, а также макеты.
Проектированию обычно подлежат:
- Архитектура ПО;
- Устройство компонентов ПО;
- Пользовательские интерфейсы.
В российской практике проектирование ведется поэтапно в соответствии со стадиями, регламентированными ГОСТ 2.103-68: Техническое задание, Техническое предложение, Эскизный проект, Технический проект, Рабочий проект.[1] На каждом из этапов формируется свой комплект документов, называемый проектом (проектной документацией).
В зарубежной практике регламентирующими документами, например, являются Software Architecture Document, Software Design Document.
[править] См. также
- Требования к программному обеспечению
- Проектирование
- Методы проектирования
- SWEBOK
- Основы программной инженерии (по SWEBOK). Проектирование. (рус.) (перевод SWEBOK с замечаниями и комментариями от Сергея Орлика и Юрия Булуя).
- Статьи по проектированию ПО на RSDN.ru
- Форум «Объектно-ориентированный анализ и проектирование» на AgileDev.ru
- Форум «Проектирование ПО» на UML2.ru
- Учебный курс «Объектно-ориентированный анализ и проектирование»
[править] Ссылки
| Разработка программного обеспечения | |
|---|---|
| Известные деятели |
Кент Бек Гради Буч Фред Брукс Barry Boehm Уорд Каннингем Оле-Йохан Даль Том Демарко Эдсгер Вибе Дейкстра Дональд Кнут Мартин Фаулер Чарльз Энтони Ричард Хоар Watts Humphrey Майкл Джексон Ивар Якобсон Craig Larman James Martin Мейер Бертран Дэвид Парнас Winston W. Royce James Rumbaugh Никлаус Вирт Эдвард Йордан Стив Макконнелл |
| Процесс | |
| Концепции | |
| Направления | |
| Модели разработки |
|
| Другие модели | |
| Прочее | |

