Abstract—This Paper presents an on-going research in the area of Model-Driven Engineering (MDE). The premise is that UML is too unwieldy to serve as the basis for model-driven engineering. We need a smaller, simpler notation with a cleaner semantics. We propose some ideas for a simpler notation with a clean semantics. The result is known as μML, or the Micro-Modelling Language. KeywordsModel-driven engineering, model transformations, domain-specific languages, end-user development. I. INTRODUCTION N the real-world, there is a demand to adopt an accurate information system that satisfies the requirements and used effectively for the business. However, having vague or misinterpreted requirements causes errors and extra costs. Therefore, domain experts, who clearly understand the business logic, goals and aware of what exactly they need inside organisation without professional software developing skills, should play key roles in the development lifecycle using high level tools. There are many approaches that aim to tackle these issues and reduce the gap between initial requirements and implementation and accelerating the development process, such as Model-Driven Engineering (MDE), Domain-Specific Languages (DSL) and End-user Development (EUD). Although the Unified Modelling Language, UML [13], is commonly used to express structural and behavioural of a system within MDE approaches, it suffers from semantics ambiguity and complexity issues. This produces inconsistent UML models difficult to interpret [12]. This lack of formality and more make UML cannot serve as a basis for MDE from business-users’ perspective. II. BACKGROUND The general strategy of Model-Driven Engineering aims to capture system specifications through the employment of Models that are expressed at a very high level of abstraction, without technical platform-specific details. It supports integration and interoperability, improves software quality and Ahmad F. Subahi is with the Umm Al-Qura University, Makkah, Saudi Arabia. He is now a PhD candidate in Computer Science Department, University of Sheffield, Regent Court, 211 Portobello Street, Sheffield S1 4DP, UK (e-mail: AFSubahi1@sheffield.ac.uk). Anthony J. H. Simons is with the Department of Computer Science, University of Sheffield, Room 119, Regent Court, 211 Portobello Street, Sheffield S1 4DP, UK (e-mail: A.J.Simons@sheffield.ac.uk). reduces a development cost [1]. These levels of abstraction are designed using two possible ways: the UML Meta-Object Facility (MOF) via “Profiles” using limited and restricted extensibility mechanisms [3], or appropriate DSLs for a particular domain with an execution engine [2]. The UML-based Web Engineering (UWE) approach, for instance, uses UML profiles to construct DSL for building web applications in more flexible way. It is considered a lightweight extension that captures business process, presentation and navigation aspect of the web systems. UML CASE tools, which support UWE, provide a semi-automatic generation of web software and employ different languages for implementing model transformations [14]. Extended UML models such as Use case, Activity, Sequence, State-Transition and Class Diagram are used intensively to construct the structure and behaviour models. Therefore, an adequate degree of modelling skills and UML awareness are necessary in order to build syntactically and semantically valid UWE models. Alternatively, building a suitable Domain-Specific Language from scratch is another way to define metamodelling architecture. The DSL represents the syntax and semantics of models with simpler details (subset) than UML. The semantics is defined either by code generators or model transformations using the sufficient information from models [4]. WebML, for instance, is a DSL for web engineering. It allows specifying the conceptual model of web applications, such as data, service, navigation and processes. WebML is supported by tool for code generation [10], [11]. Users in WebML specify all composition and navigation features of their web application using a number of designing languages. The modelling process starts with constructing the data model and ends up with designing the hypertext and presentation view. According to that, end-users must act as a web designer to design each part individually of the system. The End-User Development (EUD) is a development technique that aims to empower end-users, without technical knowledge, to become involved in the process of designing and/or customising their systems to increase their productivity and satisfaction [5]. It also aims translate accurately and comprehensively the informal description of domain problems to reduce the gap between the exact user desires and what functionalities the implemented system has [8]. Producing end-user tools for constructing web applications, such as DEMIN and Mashups, CBEADS [7] is a widely- Ahmad F. Subahi and Anthony J. H. Simons Domin-Specific Language for Enabling End- Users Model-Driven Information System Engineering I World Academy of Science, Engineering and Technology International Journal of Computer and Information Engineering Vol:7, No:7, 2013 882 International Scholarly and Scientific Research & Innovation 7(7) 2013 scholar.waset.org/1307-6892/16280 International Science Index, Computer and Information Engineering Vol:7, No:7, 2013 waset.org/Publication/16280