The Entourage anti-pattern brings no needed dependency. In this example if we build project with Controllers in isolation, the bin folder going to have the NHibirnate assembly as implicit dependency. With the current implementation the services, domain, NHibernate, etc. classes must be public, hence developer able to create any of them manually with constructor usage and this is unwilling situation.

The Stairway pattern is fix the entourage anti-pattern. The interface and implementation should be separated from each other in different assemblies. Hence, with this approach we easily can replace implementations.
