An example of various object oriented design methods using PHP