While writing an application from scratch coming up with the right architecture for it holds great value. It usually depends on the scope of the