MySchool system (three-tier architecture, abstract factory)