Документация и коммуникации при разработке ПО
Эванс предлагает сохранять в документации только необходимый минимум и использовать её для дополнения кода — сосредоточиться на крупных структурах и основных концепциях, а не детализировать каждую мелочь. Хороший стиль программирования подразумевает максимальную понятность и информативность между организацией кода и его работой — код пишется для людей, а не для компилятора.
Основная информация о проекте содержится в исходном коде, который является точной спецификацией работы программы, поэтому на документацию не стоит возлагать задачи, которые дублируют код - она должна его дополнять и фиксировать обсуждения, а также соответствовать текущему состоянию проекта.
Архитектура программы должна отражать модель предметной области, чтобы программа могла эффективно выполнять свои функции. Связь между ними должна быть очевидной. Возвращайтесь к модели и изменяйте её, чтобы она наиболее естественно реализовывалась в программе и отражала суть предметной области. В случае несоответствия архитектуры и модели, модель становится бесполезной, а правильность работы программы ставится под сомнение.
Самое важное — не разделять процессы: анализ и проектирование должны учитывать и дополнять друг друга. Именно коммуникация является инструментом обмена информации. Чистых теоретиков и чистых кодеров быть не должно. Сотрудники, участвующие в проекте, должны быть готовы к обсуждению и обмену идеями на едином языке. Коммуникация и понимание роли каждого процесса являются ключевыми аспектами успешной разработки.