Проблема, команда разработчиков, получающая задание на создание большого проекта с нуля, после рассмотрения плюсов и минусов некоторых архитектур, они решили go для архитектуры N-уровня. Для простого примера, давайте go для 3-го уровня (как очень общий и общий).
Предполагая, что они работают в agile методологии разработки, какой будет наилучший способ сделать это?
Я думал о трех способах сделать это, и я не могу действительно объяснить, почему один лучше, чем другой:
Начните с БД, затем Бизнес, затем Service, затем Presentaition.
Создайте фиктивный Buisness Layer (Mock) и оставьте БД для более продвинутой итерации, затем, после того, как у нас будет фиктивный рабочий Buisness Layer, создайте работающий Service слой поверх него (протестируйте его и сделайте его идеальным) и только затем вернитесь к БД и Buisness.
Создайте каждый вариант использования снизу вверх (DB -> Buisness - > Сервис -> Презентация)
вариант 3 кажется мне наиболее подходящим agile способом сделать это. Я видел этот вопрос, который говорит об этом, но я не мог найти достаточно сильный ответ для меня.
Спасибо за вашу помощь!