Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| mdd:fake_rational [2016/12/25 02:34] – [Что такое рациональный процесс проектирования?] andreevaelena | mdd:fake_rational [2026/08/29 07:59] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== A rational design process: How and why to fake it ====== | ||
| + | Оригинал: | ||
| + | |||
| + | ==== Поиск философского камня: почему мы хотим добиться рационального процесса проектирования? | ||
| + | |||
| + | Обычный процесс программного проектирования достаточно иррационален. Программисты принимают много проектных решений, | ||
| + | Мы никогда не найдем способ, | ||
| + | |||
| + | ==== Почему «процесс» разработки программного обеспечения всегда будет идеализацией? | ||
| + | |||
| + | Мы никогда не увидим проект программного обеспечения, | ||
| + | |||
| + | ==== Почему же описание рационального идеализированного процесса тем не менее является полезным? | ||
| + | |||
| + | Если мы определили идеальный процесс, | ||
| + | |||
| + | - Проектировщики нуждаются в руководстве, | ||
| + | - Даже если мы не можем иметь полную информацию о системе, | ||
| + | - Для большого количества проектов хорошо иметь стандартизованную процедуру, | ||
| + | - Оценка прогресса в проекте легче осуществляется, | ||
| + | - Регулярный обзор прогресса проекта посторонними имеет важное значение для хорошего управления. Если проект пытается следовать стандартному процессу, | ||
| + | |||
| + | ==== Что описание процесса разработки должно нам говорить? | ||
| + | |||
| + | Наиболее полезной формой описания процесса будет описание с точки зрения рабочих продуктов. Для каждой стадии процесса рассматриваются следующие вопросы: | ||
| + | |||
| + | * Над каким продуктом мы должны работать дальше. | ||
| + | * Каким критериям продукт должен удовлетворять. | ||
| + | * Какого рода люди должен делать свою работу. | ||
| + | * Какую информацию они должны использовать в своей работе. | ||
| + | |||
| + | ==== Что такое рациональный процесс проектирования? | ||
| + | |||
| + | Рациональный идеальный процесс проектирования программного обеспечения включает в себя следующие шаги. | ||
| + | |||
| + | * Создание и документирование требований. | ||
| + | |||
| + | Идеальный документ с требованиями должен содержать все, что необходимо для написания программного обеспечения, | ||
| + | |||
| + | - Компьютерная спецификация | ||
| + | - Входные/ | ||
| + | - Описание выходных значений | ||
| + | - Временные ограничения | ||
| + | - Ограничения по точности | ||
| + | - Возможные изменения | ||
| + | - Обработка нежелательных событий | ||
| + | |||
| + | * Проектирование и документирование модульной структуры | ||
| + | |||
| + | Если над проектом работает не один человек, | ||
| + | |||
| + | * Проектирование и документирование модульных интерфейсов | ||
| + | |||
| + | Спецификация модульных интерфейсов должна быть написана для каждого модуля, | ||
| + | |||
| + | * Проектирование и документирование иерархии использования | ||
| + | * Проектирование и документирование структуры внутренних модулей | ||
| + | |||
| + | Возможно определение подмодулей. | ||
| + | |||
| + | * Написание программ | ||
| + | * Сопровождение | ||
| + | |||
| + | Переработка дизайна и создание нового развитие системы. | ||
| + | |||
| + | ==== Какова роль документации в этом процессе? | ||
| + | |||
| + | Документация играет важную роль в процессе проектирования. Но так как многие программисты воспринимают ее как бюрократическое зло, то полученная документация не является полезной, | ||
| + | |||
| + | ==== Подделка идеального процесса ==== | ||
| + | |||
| + | Процесс подделывается путем создания документации, | ||
| + | Если документация была проведена аккуратно, | ||
| + | |||
| + | ==== Заключение ==== | ||
| + | |||
| + | Очень сложно рационально проектировать, | ||