Object Oriented Design Heuristics
Object-oriented design is a process of identifying relevant objects, factoring them into classes, organizing hierarchically, and establishing dynamic collaborations among the objects. It is a difficult process especially for novice designers. In order to guide the novices, software engineers used some hints, guidelines and tips to communicate design experience from the expert. Design heuristic is common solution to design problems that developers encounter during software development. Heuristic is defined as the use of general knowledge gained by experience. Design heuristics are design experience from object-oriented developers. It is small and simple design expertise.