Are you "lean" already? Do you do "lean" architecture? Is your approach "lean" enough?
- Data - static domain model with relations (but w/o transactions!)
- Context - use case (responsible for identifying and creating object map that plays the “roles” during use case)
- Interaction - roles (played by objects at run time - in use case) that represent stateless collections of responsibilities