Servicing One Actor

Build classes and modules which have only one responsibility, with only one reason to change.  Design each as a group of functions with the responsibility of servicing a single actor (one user fulfilling a particular role).  This will help achieve separation of concerns, promote a loosely-coupled architecture, and prepare for migration into containers and on to the cloud.