An ontology for microarchitectural design knowledge

  title={An ontology for microarchitectural design knowledge},
  author={Javier Garz{\'a}s and Mario Piattini},
  journal={IEEE Software},
In this article, we present an ontology that structures and unifies this accumulated OO microarchitectural design knowledge. This ontology differentiates between declarative and operative knowledge, and encompasses rules, patterns, and refactorings. It also encompasses the differences and relationships between these types of knowledge. Our ontology helps to better understand how to implement and refactor OO design knowledge, thereby improving quality, reducing costs, and saving time. 

Figures and Tables from this paper

WEON: towards a software ecosystem ONtology
This paper argues in favor of such an approach by showing that there is succesful experience applying ontologies to the fields of software engineering and software architecture; shows the issues arising in ecosystem evolution and the needs for higher levels of formalization of the description of such processes.
OMSAC - Ontology of Microservices Architecture Concepts
  • Gabriel Morais, M. Adda
  • Computer Science
    2020 11th IEEE Annual Information Technology, Electronics and Mobile Communication Conference (IEMCON)
  • 2020
This paper is proposing an evolutive representation of Microservices Architecture knowledge based on an ontological approach and able to address its immaturity issue.
Una ontología para la representación de conceptos de diseño de software
An ontology to organize knowledge in software design is proposed, incorporating concepts of modeling diagrams and patterns, to collect some design concepts to consider in a software project.
Issues in the Development of an Ontology for a Emerging Engineering Discipline
This paper presents the protoontology developed in the first phase of the construction of a domain ontology for this new engineering discipline, and some of the major results obtained are detailed and discussed.
Knowledge Patterns
A more general vision of components is sketched out, which is more in tune with the original goal that they capture “cliches” or “patterns” of relationships, where a component’s axioms are transformed, or morphed, before being imported to a KB, by renaming its symbols.
Ontology Driven Software Engineering: A Review of Challenges and Opportunities
This paper aims at compiling and presenting the research findings and potential benefits when applying ontologies to address three major challenges in software engineering: difficulty in communicating and sharing information; effective management of software development phases; and development techniques to support the production of semantic software through an interdisciplinary approach.
A Viewpoint-Based Approach for Understanding the Morphogenesis of Patterns
A conceptual model of primitive viewpoints is proposed and, by exploring one of the viewpoints, a conceptual model for stakeholders of a pattern is presented, followed by the description of a conceptual models of a process, namely P3, for the production of patterns.
Toward Collecting and Delivering Knowledge for Software Design at the Whiteboard
  • A. Soria, A. Hoek
  • Computer Science
    2018 IEEE/ACM 11th International Workshop on Cooperative and Human Aspects of Software Engineering (CHASE)
  • 2018
This brief research note sketches the ongoing research into supporting designers at the whiteboard with proactive knowledge that is collected, earlier, in some (semi-)automatic fashion.
A Method for Integrating Enterprise Information Systems based on Middleware Styles
The PhD project described here devises an architecture development method called MIDARCH for selecting a middleware platform in Enterprise Application Integration (EAI) and migration projects to improve development process productivity and predictability through increasing reuse of design knowledge between projects.


Design patterns: elements of reuseable object-oriented software
The book is an introduction to the idea of design patterns in software engineering, and a catalog of twenty-three common patterns. The nice thing is, most experienced OOP designers will find out
Refactoring object-oriented frameworks
This thesis gives some conservative algorithms for determining whether a program satisfies constraints, and describes how to use this design information to refactor a program.
Object-Oriented Design Heuristics
Object-Oriented Design Heuristics offers insight into object-oriented design improvement and gives programmers of all levels a fast track to understanding the concepts of object- oriented programming.
Principles Versus Patterns
Early in the history of programming, brilliant people realized that every good software system has some desirable properties: It should be extensible; parts of it should be modifiable without major
DoD Related Software Technology Requirements, Practices, and Prospects for the Future
Abstract : This study investigates future DoD software requirements, current practices and approaches to software development, and the time it takes a software technology innovation to become widely
Prospects for an engineering discipline of software
  • M. Shaw
  • Computer Science
    IEEE Software
  • 1990
Five basic steps that the software engineering profession must take to become a true engineering discipline are described, covering the nature of expertise, recognizing different ways to get information, encouraging routine practice, expecting professional specializations, and improving the coupling between science and commercial practice.
Guide to the Software Engineering Body of Knowledge (SWEBOK) and the Software Engineering Education Knowledge (SEEK) - a preliminary mapping
The mapping shows that, though there are no major "school of thought" divergences between the two bodies of knowledge, there are a number of differences in the details of each breakdown in terms of vocabulary, level of detail, decomposition approach and topics encompassed.
Professional Software Development: Shorter Schedules, Higher Quality Products, More Successful Projects, Enhanced Careers
Best-selling author Steve McConnell provides a compelling argument for turning software success into an everyday habit by advancing the software profession itself-at the individual, organizational, and industry levels.
Interface Design: Best Practices in Object- Oriented API Design in Java, Artima Software
  • Interface Design: Best Practices in Object- Oriented API Design in Java, Artima Software
  • 2004
Patterns as Problem Indicators
  • Proc. Workshop on Beyond Design Patterns (Mis)Used