Problem Statement A structure or structures of software system can be depicted in high-level views (i.e. architecture models). An architecture model has its own semantics supporting the specific analysis goals and more than one model can represent the same software system. These models contain different elements, semantics, relationships, and constraints. Therefore, it is impossible to have the same off set of modelling elements in each model because the semantic applied or represented is different. For example, in a architecture model generated by Sonargraph-Architect, a subsystem model (smallest architecture element) can be represented as a module or a component of the system while in a UML Component Diagram, the stereotype «subsystem» can represent a group of related components that has same concern of functionalities. This variation in semantics used in both models might make a software architect confuse in analyzing the software system.
To best of our knowledge, there is lack of mapping model that guides and facilitates the architect how to map from source architecture model to target architecture models.Therefore, by investigating and proposing the mapping model, it is believe that it may help software architect to create software architecture models of the software system based on the terminologies that they familiar with. It means that the effort to create another models are reduced and the output target models are relevant and acceptable.
Milestones and Tasks The student should achieve following milestones (M) and tasks(T) in order to complete the thesis as below:
M1: Find out 3 concrete models (established, matured or defined by owned) for case study that suitable for this investigation: 1) Tool-based; 2) Technology or framework based; and 3) Behaviour/Dynamic model.
M2: Define the goal of mapping model and relevant questions and answers that could be solved of the proposed model. T1 - Investigate existing literature on semantic mapping or semantic integration keyword. The goal must be reflect to the problem statement. T2 - Is it about element, terminology or relevant architectural concern of functionalities?
M3: Identify which elements/concerns/terminologies which can be mapped or not. T1 - Identify which elements are suitable for mapping: semantic or terminology mapping .
M4: Normalize these 3 concrete models to other model for mapping. T1 - Identify should we normalize or not the source models.
M5: Specify the map rule/expression. T1 - Find how to express mapping rule between models. T2 - Define the model/expression and document it.
M6: Validate the model to see its applicability. T1 - Compute it with Relevance and Satisfiability computation .
- Bouquet, P., Serafini, L., & Zanobini, S. (2003). Semantic Coordination: A New Approach and an Application. In D. Fensel, K. Sycara, & J. Mylopoulos (Eds.), The Semantic Web - ISWC 2003 SE - 9 (Vol. 2870, pp. 130–145). Springer Berlin Heidelberg. doi:10.1007/978-3-540-39718-2_9