Pātuhitia tēnei: Object-oriented design with UML and Java