Стоит отметить, что архитектура обеспечивает программную
систему структурой и основными принципами, которые придают согласованность и
четкость общему проекту. По сути, я говорю о преимуществах предварительного
проектирования. Ничего нового, но вы удивитесь, как мало компаний уделяют этому
время. Такое предварительное "обдумывание", кстати, не занимает много
времени.
Если выбрать упрощенный подход, можно за пару
дней определить основные функциональные требования и дойти до ключевых
компонентов проекта, а затем выполнить высокоуровневую оценку на его основе.
Существует ряд способов очертить функциональные требования, хотя их вполне
можно сгруппировать в пользовательские истории.
Обдумывать процесс проектирования в одиночку - неплохая
идея, но совместная работа команды принесет больше пользы. Мы практикуем данный
метод в другом проекте, где каждый участник специализируется в конкретном
аспекте общего решения. Ведь мы все знаем, как работает решение, но как именно
решения взаимодействуют между собой остается неизвестным.
Кроме того, только во время командного обсуждения каждого
решения мы понимаем, где допустили ошибку (например, когда одну и ту же функцию
выполняют несколько решений).
Самое важное, совместное проектирование позволяет объединить
концепции каждого участника и получить согласованный и четкий конечный
результат. Естественно, насколько это возможно без глубокой проработки деталей.
Я считаю, что тщательное осмысливание составляющих
программной системы может помочь составить некоторую структуру, которая, в свою
очередь, может послужить шаблоном для создания этой системы.
Вы получаете инструмент для решения типичных проблем и
хорошо продуманный проект с четким архитектурным видением. Все-таки, несколько
дней, потраченных на предварительное планирование, способны существенно
повлиять на общую картину.
Комментариев нет:
Отправить комментарий