Metadata Interpretation Driven Development: promoting software development dissociated from the business domain
Separation of Concerns, Crosscutting Concerns, Reusability, Metadata Interpretation, Multitenancy
Separation of Concerns is a topic widely addressed in academia and industry. Finding ways to separate software concerns is the basis for reducing software system development costs. Although the software construction research field with the objective of obtaining a high degree of reuse is considered a relatively mature field - based on the abstraction of components - relevant changes in the software services scenario are occurring and open opportunities for new approaches related to question. The emergence of new software architectures, such as serverless computing, in the context of cloud computing, reinforces the need to think software construction possibilities based on this new scenario. It is in this context that Metadata Interpretation Driven Development (MIDD) is presented, a methodology whose purpose is to increase the degree of reuse of software artefacts that are built from their use. Its particularity, in relation to the methodologies currently employed, is that it requires a complete dissociation between the application code and the representation of the business domain, commonly put in that. That is, the application must be able to interpret the concepts of the business domain, and not implement them. As we will see, doing that, the same instances of software built with MIDD may provide software service to demands for a distinct business domain at the same time, without changing its code.