Abstract

After years of experience in object-oriented design, software engineers have accumulated a great deal of knowledge in the design and construction of object-oriented systems: important contributions to this field including principles, heuristics, lessons learned, bad smells, refactorings, and so on, with the resultant major improvements in software development. However, this large body of knowledge is still not well organized, its terminology is ambiguous, and it is very difficult to make practical use of the contributions made. In this regard, we believe it is important to define an ontology in order to structure and unify design knowledge, since a good understanding of the experience derived from practical work is critical for software engineers. This ontology could be used to improve communication between software engineers, inter-operability among designs, design re-usability, design knowledge searching and specification, software maintenance, knowledge acquisition, etc. In the ontology we incorporate knowledge specific to both domain and technology. Such an organized body of knowledge could also be used for registering and documenting design rationale issues.

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.