265 research outputs found

    An MDE-based framework to support the development of Mixed Interactive Systems

    Get PDF
    International audienceIn the domain of Human Computer Interaction (HCI), recent advances in sensors, communication technologies, miniaturization and computing capabilities have led to new and advanced forms of interaction. Among them, Mixed Interactive Systems (MIS), form a class of interactive systems that comprises augmented reality, tangible interfaces and ambient computing; MIS aim to take advantage of physical and digital worlds to promote a more transparent integration of interactive systems with the user's environment. Due to the constant change of technologies and the multiplicity of these interaction forms, specific development approaches have been developed. As a result, numerous taxonomies, frameworks, API and models have emerged, each one covering a specific and limited aspect of the development of MIS. To support a coherent use of these multiple development resources and contribute to the increasing popularity of MIS, we have developed a framework based on Model-Driven Engineering. The goal is to take advantage of Model-Driven Engineering (MDE) standards, methodology and tools to support the manipulation of complementary Domain Specific Languages (DSL), to organize and link the use of different design and implementation resources, and to ensure a rationalized implementation based on design choices. In this paper, we first summarize existing uses of MDE in HCI before focusing on five major benefits MDE can provide in a MIS development context. We then detail which MDE tools and resources support these benefits and thus form the pillars of the success of an MDE-based MIS development approach. Based on this analysis, we introduce our framework, called Guide-Me, and illustrate its use through a case study. This framework includes two design models. Model transformations are also included to link one model to another; as a result the frameworks coverage extends from the earliest design step to a software component-based prototyping platform. A toolset based on Eclipse Modeling Framework (EMF) that supports the use of the framework is also presented. We finally assess our MDE-based development process for MIS based on the five major MDE benefits for MIS

    Automatic generation of user interfaces from rigorous domain and use case models

    Get PDF
    Tese de doutoramento. Engenharia InformĂĄtica. Faculdade de Engenharia. Universidade do Porto. 201

    A Framework for Model-Driven Development of Mobile Applications with Context Support

    Get PDF
    Model-driven development (MDD) of software systems has been a serious trend in different application domains over the last 15 years. While technologies, platforms, and architectural paradigms have changed several times since model-driven development processes were first introduced, their applicability and usefulness are discussed every time a new technological trend appears. Looking at the rapid market penetration of smartphones, software engineers are curious about how model-driven development technologies can deal with this novel and emergent domain of software engineering (SE). Indeed, software engineering of mobile applications provides many challenges that model-driven development can address. Model-driven development uses a platform independent model as a crucial artifact. Such a model usually follows a domain-specific modeling language and separates the business concerns from the technical concerns. These platform-independent models can be reused for generating native program code for several mobile software platforms. However, a major drawback of model-driven development is that infrastructure developers must provide a fairly sophisticated model-driven development infrastructure before mobile application developers can create mobile applications in a model-driven way. Hence, the first part of this thesis deals with designing a model-driven development infrastructure for mobile applications. We will follow a rigorous design process comprising a domain analysis, the design of a domain-specific modeling language, and the development of the corresponding model editors. To ensure that the code generators produce high-quality application code and the resulting mobile applications follow a proper architectural design, we will analyze several representative reference applications beforehand. Thus, the reader will get an insight into both the features of mobile applications and the steps that are required to design and implement a model-driven development infrastructure. As a result of the domain analysis and the analysis of the reference applications, we identified context-awareness as a further important feature of mobile applications. Current software engineering tools do not sufficiently support designing and implementing of context-aware mobile applications. Although these tools (e.g., middleware approaches) support the definition and the collection of contextual information, the adaptation of the mobile application must often be implemented by hand at a low abstraction level by the mobile application developers. Thus, the second part of this thesis demonstrates how context-aware mobile applications can be designed more easily by using a model-driven development approach. Techniques such as model transformation and model interpretation are used to adapt mobile applications to different contexts at design time or runtime. Moreover, model analysis and model-based simulation help mobile application developers to evaluate a designed mobile application (i.e., app model) prior to its generation and deployment with respected to certain contexts. We demonstrate the usefulness and applicability of the model-driven development infrastructure we developed by seven case examples. These showcases demonstrate the designing of mobile applications in different domains. We demonstrate the scalability of our model-driven development infrastructure with several performance tests, focusing on the generation time of mobile applications, as well as their runtime performance. Moreover, the usability was successfully evaluated during several hands-on training sessions by real mobile application developers with different skill levels

    Extending domain-specific modeling editors with multi-touch interactions

    Full text link
    L'ingénierie dirigée par les modÚles (MDE) est une méthodologie d'ingénierie logiciel qui permet aux ingénieurs de définir des modÚles conceptuels pour un domaine spécifique. La MDE est supportée par des outils de modélisation, qui sont des éditeurs pour créer et manipuler des modÚles spécifiques au domaine. Cependant, l'état actuel de la pratique de ces éditeurs de modélisation offre des interactions utilisateur trÚs limitées, souvent restreintes à glisser-déposer en utilisant les mouvements de souris et les touches du clavier. Récemment, un nouveau cadre propose de spécifier explicitement les interactions utilisateur des éditeurs de modélisation. Dans cette thÚse, nous étendons ce cadre pour supporter les interactions multitouches lors de la modélisation. Nous proposons un catalogue initial de gestes multitouches pour offrir une variété de gestes tactiles utiles. Nous démontrons comment notre approche est applicable pour générer des éditeurs de modélisation. Notre approche permet des interactions plus naturelles pour l'utilisateur quand il effectue des tùches de modélisation types.Model-driven engineering (MDE) is a software engineering methodology that enables engineers to define conceptual models for a specific domain. Modeling is supported by modeling language workbenches, acting as editor to create and manipulate domain-specific models. However, the current state of practice of these modeling editors offers very limited user interactions, often restricted to drag-and-drop with mouse movement and keystrokes. Recently, a novel framework proposes to explicitly specify the user interactions of modeling editors. In this thesis, we extend this framework to support multi-touch interactions when modeling. We propose an initial set of multi-touch gesture catalog to offer a variety of useful touch gestures. We demonstrate how our approach is applicable for generating modeling editors. Our approach yields more natural user interactions to perform typical modeling tasks

    Developing Unobtrusive Mobile Interactions: a Model Driven Engineering approach

    Full text link
    In Ubiquitous computing environments, people are surrounded by a lot of embedded services. With the inclusion of pervasive technologies such as sensors or GPS receivers, mobile devices turn into an effective communication tool between users and the services embedded in their environment. All these services compete for the attentional resources of the user. Thus, it is essential to consider the degree in which each service intrudes the user mind when services are designed. In order to prevent service behavior from becoming overwhelming, this work, based on Model Driven Engineering foundations, is devoted to develop services according to user needs. In this thesis, we provide a systematic method for the development of mobile services that can be adapted in terms of obtrusiveness. That is, services can be developed to provide their functionality at different obtrusiveness levels by minimizing the duplication of efforts. For the system specification, a modeling language is defined to cope with the particular requirements of the context-aware user interface domain. From this specification, following a sequence of well-defined steps, a software solution is obtained.Gil Pascual, M. (2010). Developing Unobtrusive Mobile Interactions: a Model Driven Engineering approach. http://hdl.handle.net/10251/12745Archivo delegad

    Model-Driven Development of Interactive Multimedia Applications

    Get PDF
    The development of highly interactive multimedia applications is still a challenging and complex task. In addition to the application logic, multimedia applications typically provide a sophisticated user interface with integrated media objects. As a consequence, the development process involves different experts for software design, user interface design, and media design. There is still a lack of concepts for a systematic development which integrates these aspects. This thesis provides a model-driven development approach addressing this problem. Therefore it introduces the Multimedia Modeling Language (MML), a visual modeling language supporting a design phase in multimedia application development. The language is oriented on well-established software engineering concepts, like UML 2, and integrates concepts from the areas of multimedia development and model-based user interface development. MML allows the generation of code skeletons from the models. Thereby, the core idea is to generate code skeletons which can be directly processed in multimedia authoring tools. In this way, the strengths of both are combined: Authoring tools are used to perform the creative development tasks while models are used to design the overall application structure and to enable a well-coordinated development process. This is demonstrated using the professional authoring tool Adobe Flash. MML is supported by modeling and code generation tools which have been used to validate the approach over several years in various student projects and teaching courses. Additional prototypes have been developed to demonstrate, e.g., the ability to generate code for different target platforms. Finally, it is discussed how models can contribute in general to a better integration of well-structured software development and creative visual design

    FV-RAD : a practical framework for rapid application development

    Get PDF
    Estågio realizado na OPT-Optimização e Planeamento de Transportes, S.ATese de mestrado integrado. Engenharia Informåtica e Computação. Faculdade de Engenharia. Universidade do Porto. 200

    API2MoL: Automating the building of bridges between APIs and Model-Driven Engineering

    Get PDF
    International audienceContext: A software artefact typically makes its functionality available through a specialized Application Programming Interface (API) describing the set of services offered to client applications. In fact, building any software system usually involves managing a plethora of APIs, which complicates the development process. In Model-Driven Engineering (MDE), where models are the key elements of any software engineering activity, this API management should take place at the model level. Therefore, tools that facilitate the integration of APIs and MDE are clearly needed. Objective: Our goal is to automate the implementation of API-MDE bridges for supporting both the creation of models from API objects and the generation of such API objects from models. In this sense, this paper presents the API2MoL approach, which provides a declarative rule-based language to easily write mapping definitions to link API specifications and the metamodel that represents them. These definitions are then executed to convert API objects into model elements or vice versa. The approach also allows both the metamodel and the mapping to be automatically obtained from the API specification (bootstrap process). Method: After implementing the API2MoL engine, its correctness was validated using several APIs. Since APIs are normally large, we then developed a tool to implement the bootstrap process, which was also validated. Results: We provide a toolkit (language and bootstrap tool) for the creation of bridges between APIs and MDE. The current implementation focuses on Java APIs, although its adaptation to other statically typed object-oriented languages is straightforward. The correctness, expressiveness and completeness of the approach have been validated with the Swing, SWT and JTwitter APIs. Conclusion: API2MoL frees developers from having to manually implement the tasks of obtaining models from API objects and generating such objects from models. This helps to manage API models in MDE-based solutions
    • 

    corecore