176 research outputs found

    MODELING USER INTERFACES WITH THE XIS UML PROFILE

    Get PDF
    Abstract: This paper discusses different UIs design approaches. We describe how to design user interfaces, based on a MDD approach, by applying the XIS language. XIS is a coherent UML profile focused on model interactive systems. XIS integrates best practices and principles of the MDA/MDD paradigm to improve the UI design, such as separation of concerns, model-to-model and model-to-code transformations. In that way, we discuss some issues regarding the transformation processes, from XIS-based models into software systems artifacts

    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

    Expressing Measurement Uncertainty in OCL/UML Datatypes

    Get PDF
    Uncertainty is an inherent property of any measure or estimation performed in any physical setting, and therefore it needs to be considered when modeling systems that manage real data. Although several modeling languages permit the representation of measurement uncertainty for describing certain system attributes, these aspects are not normally incorporated into their type systems. Thus, operating with uncertain values and propagating uncertainty are normally cumbersome processes, di cult to achieve at the model level. This paper proposes an extension of OCL and UML datatypes to incorporate data uncertainty coming from physical measurements or user estimations into the models, along with the set of operations de ned for the values of these types.Universidad de Málaga. Campus de Excelencia Internacional Andalucía Tech

    In Need of a Domain-Specific Language Modeling Notation for Smartphone Applications with Portable Capability

    Get PDF
    The rapid growth of the smartphone market and its increasing revenue has motivated developers to target multiple platforms. Market leaders, such as Apple, Google, and Microsoft, develop their smartphone applications complying with their platform specifications. The specification of each platform makes a platform-dedicated application incompatible with other platforms due to the diversity of operating systems, programming languages, and design patterns. Conventional development methodologies are applied to smartphone applications, yet they perform less well. Smartphone applications have unique hardware and software requirements. All previous factors push smartphone developers to build less sophisticated and low-quality products when targeting multiple smartphone platforms. Model-driven development have been considered to generate smartphone applications from abstract models to alleviate smartphones platform fragmentation. Reusing these abstract models for other platforms was not considered because they do not fit new platforms requirements. It is possible that defining smartphone applications using a portability-driven modeling notation would facilitate smartphone developers to understand better their applications to be ported to other platforms. We call for a portability-driven modeling notation to be used within a smartphone development process. Our in-process research work will be manifested through the application of a domain-specific language complying with the three software portability principles and three design factors. This paper aims to highlight our research work, methodology and current statue

    Development of CMS-based Web-Applications Using a Model-Driven Approach

    Get PDF
    Abstract-The emerging Model-Driven Engineering paradigm advocates the use of models as first-class citizens in the software development process, while artifacts such as documentation and source-code can be quickly produced from those models by using automated transformations. One of the many types of deployment platforms that can potentially benefit from such model-driven approaches are Content Management Systems, as these approaches can significantly accelerate the development of new web-applications and features, as well as simplify their maintenance. This work proposes the creation of a model-driven approach for the development of web-applications based on Content Management Systems. This approach is based on the creation of two modeling languages (which are situated at different levels of abstraction, and are used to both quickly model a web-application and provide a common ground for the creation of additional languages), and a mechanism for the processing of models specified using those languages. The current results of this work so far are the development of a Content Management System that effectively supports web-applications of medium complexity, and the creation of a reference case study that will be used to validate this work

    A Navigational Role-Centric Model Oriented Web Approach MoWebA

    Full text link
    [ES] Entre los grandes desafíos actuales de las aplicaciones Web podemos citar la portabilidad, adaptabilidad y evolución. Estos desafíos se dan tanto en el ambiente en que operan así como en su desarrollo, ya que a menudo requieren de diferentes lenguajes, frameworks, herramientas, entornos, plataformas, etc. El Desarrollo Dirigido por Modelos (MDD) y en particular, la Arquitectura Dirigida por Modelos (MDA) contemplan estos desafíos proponiendo distintos niveles de abstracción para las diferentes fases de modelado, partiendo de modelos más orientados al problema, que no deberían contemplar aspectos de implementación (CIM, PIM), hasta llegar a los modelos más orientados a la solución planteada (PSM, ISM). Sin embargo, encarar adecuadamente este tema puede depender del grado de independencia que adquieren los modelos. Este trabajo de Tesis presenta un método que considera el problema de la evolución y portabilidad hacia diferentes entornos o arquitecturas en el diseño y desarrollo de aplicaciones Web. La propuesta se denomina MoWebA (del inglés, Model Oriented Web Approach). Durante el desarrollo de la tesis, hemos identificado una serie de aspectos que podrían tener un impacto positivo sobre los problemas de portabilidad y adaptabilidad que son: i) incorporación de un modelo específico de la arquitectura ASM (del inglés, Architecture Specific Model), que permita la portabilidad de los PIMs con respecto a la arquitectura (por ejemplo, RIA, SOA, Mobile); ii) clara separación de la capa de presentación con respecto a las capas navegacionales y de comportamiento; iii) definición de la estructura navegacional de acuerdo a un mecanismo orientado al comportamiento, que prevenga la modificación del diseño navegacional causada por cambios en la implementación; iv) uso de estándares para facilitar la independencia de las herramientas. Se ha llevado a cabo una revisión del estado de la literatura teniendo en cuenta los fundamentos de la Ingeniería Dirigida por Modelos MDE (Model Driven Engineering), las propuestas metodológicas para el desarrollo de Aplicaciones Web, las tendencias actuales, analizando en forma especial de qué manera las propuestas Web las contemplan, y las evidencias empíricas tanto en la academia como en la Industria. Presentamos así la propuesta MoWebA a partir de una serie de consideraciones sobre las aplicaciones Web que han sido identificadas durante el proceso de revisión del estado del arte. Posteriormente, detallamos cada una de las etapas del proceso de modelado, incluyendo los diagramas y notaciones propuestos, sus definiciones a través de sus metamodelos y ejemplos de uso. Seguidamente, presentamos el proceso de transformación adoptado por MoWebA, con los mecanismos de transformación Modelo-A-Modelo y Modelo-A-Código. Hemos dedicado un importante esfuerzo en la validación de la propuesta. Se realizó una primera validación, adoptando los modelos de MoWebA y en algunos casos generando aplicaciones para diferentes dominios. Con estas primeras experiencias de validación hemos podido identificar fortalezas y debilidades de la propuesta PIM de MoWebA, además de determinar en qué grado la misma cubre las necesidades de diferentes dominios. Como segunda experiencia, hemos realizado una validación preliminar con un grupo de estudiantes de último año de la carrera de Ingeniería Informática de la Universidad Católica "Nuestra Señora de la Asunción" (Paraguay), que consistió en la definición de ASM para tres arquitecturas diferentes. Finalmente, como tercera experiencia de validación, hemos llevado a cabo un Caso de Estudio que consistió en la definición de tres extensiones para MoWebA. Dicha validación fue desarrollada como parte de un proyecto de investigación liderado por la Universidad Católica "Nuestra Señora de la Asunción". La experiencia ha permitido analizar el grado de adaptabilidad de MoWebA y automatización en las transformacinoes PIM-ASM, así como el grado de independiencia del PIM.[CA] Entre els grans desafiaments actuals de les aplicacions Web podem citar la portabilitat, adaptabilitat i evolució. El Desenvolupament Dirigit per Models (MDD) contemple aquests desafiaments proposant diferents nivells d'abstracció per a les diferents fases de modelatge. No obstant això, encarar adequadament aquest tema pot dependre del grau d'independència que adquireixen els models. Aquest treball de Tesi presenta un mètode que considera el problema de l'evolució i la portabilitat, en diferents entorns o arquitectures, per al disseny i desenvolupament d'aplicacions Web. La proposta s'anomena MoWebA (Model Oriented Web Approach). Durant el desenvolupament de la tesi hem identificat una sèrie d'aspectes que podrien tenir un impacte positiu sobre els problemes de portabilitat i adaptabilitat. Aquestos són: i) la incorporació d'un model específic d'arquitectura ASM (Architecture Specific Model), que permet la portabilitat dels models PIM respecte a l'arquitectura (per exemple, RIA, SOA, Mobile); ii) la clara separació de la capa de presentació respecte a les capes navegacionals i de comportament; iii) la definició de l'estructura navegacional d'acord amb un mecanisme orientat al comportament, que restringisca la modificació del disseny navegacional causada per canvis en la implementació; i per últim, iv) l'ús d'estàndards per tal de facilitar la independència de les eines. S'ha realitzat una revisió de l'estat de la literatura considerant els fonaments de l'Enginyeria Dirigida per Models MDE (Model Driven Engineering), les propostes metodològiques per al desenvolupament d'Aplicacions Web, les tendències actuals (analitzant de forma especial la manera en que les propostes Web les consideren), i les evidències empíriques tant en l'acadèmia com en la Indústria. Presentem així la proposta MoWebA a partir d'una sèrie de consideracions sobre les aplicacions Web que són identificades durant el procés de revisió de l'estat de l'art. Posteriorment, detallem cadascuna de les etapes del procés de modelatge, incloent els diagrames i les notacions proposades, les seues definicions (a través dels seus metamodels), i alguns exemples d'ús. Seguidament, presentem el procés de transformació adoptat per MoWebA, emprant mecanismes de transformació Model-a-Model i Model-a-Codi. Hem dedicat un esforç considerable en la validació de la proposta. Es realitzà una primera validació adoptant els models de MoWebA, i en alguns casos es generaren aplicacions per a diferents dominis. Aquestes experiències van ser realitzades per modeladors amb poca experiència, així com també per modeladors i desenvolupadors experimentats. Les experiències van ser desenvolupades en ambients tant acadèmics com industrials. Amb aquestes primeres experiències de validació s'identificaren fortaleses i febleses de la proposta PIM de MoWebA. També permeteren determinar fins quin grau la proposta respon a les necessitats dels diferents dominis. Com a segona experiència es realitzà una validació preliminar amb un grup d'estudiants d'últim curs de la carrera d'Enginyeria Informàtica de la Universitat Catòlica "Nuestra Señora de la Asunción" (Paraguai), que va consistir en la definició del model d'arquitectura ASM per a tres arquitectures diferents. Amb aquesta segona experiència de validació s'aconseguí valorar com de factible és d'adaptar la proposta a altres arquitectures. Finalment, com a tercera experiència de validació, es dugué a terme un Cas d'Estudi que va consistir en la definició de tres extensions per a MoWebA. L'experiència permeté analitzar el grau d'adaptabilitat i d'automatització en les transformacions PIM-ASM que s'obté amb MoWebA, així com el grau de independència del PIM amb respecte als altres models. Durant aquesta validació, s'han realitzat a més experiències de satisfacció d'usuaris amb un grup de modeladors i desenvolupadors.[EN] Some of the major challenges facing Web applications today are those of portability, adaptability and evolution, not only in the environment in which they run, but also in the way in which they must be developed, often requiring different languages, frameworks, tools, environments, platforms, etc. MDD and MDA take into account these issues. However, to achieve portability, adaptability and evolution depends to some extent on the degree of independence that the models adopt. This Thesis presents a method that take into account the problem of evolution and portability towards different environments. The approach is called MoWebA (Model Oriented Web Approach). Some key aspects of MoWebA that could have a positive impact in the portability and adaptability are:i) incorporation of an Architecture Specific Model (ASM) as a new modeling layer, in order to keep the portability of the Platform Independent Model (PIM) regarding the different architectures (e.g., RIA, SOA, Mobile); ii) clear separation of the presentation layer with regard to the navigation and behavior layers; iii) definition of the navigational structure according to a function-oriented approach, which prevents the modification of the navigation design caused by implementation changes; iv) and use of standards in order to facilitate the independence from the tools. We justify MoWebA by highlighting a series of concerns for Web applications development. We present an overview of the method including the dimensions and the diagrams that we propose. Subsequently, we present each step in the modeling process, including the diagrams and notation, its definition (metamodels) and examples of use. Afterwards, we present the transformation process adopted by MoWebA, which includes model-to-model and model-to-code transformations. We have devoted special attention to the validation of the approach. As a first validation, MoWebA has been used for modelling and generating different types of applications by both novice and experienced modellers and developers. These experiences were done in academic and industrial contexts. The experiences have allowed to identify strengths and weaknesses of the PIM proposal, and to verify that the proposed notation covers the needs of different domains. Next, we present a preliminary validation of the ASM proposal, considering an experience of different ASM definitions made by a group of computer science students at the Catholic University "Nuestra Señora de la Asunción" (Paraguay). This preliminary validation has allowed us to determine how feasible is to adapt the proposal to other architectures. The analysis of the validation sought to answer the following questions: Can the same PIM model be used for different architectures?; Is it possible to specify clear limits between platform independent models (PIM) and architectural specific models (ASM)?; How does an architectural specific model facilitate the transformation rules definition?. Finally, we present a Case Study to validate the extensions of MoWebA to three different architectures. The experience was structured taking into account the framework of Runeson et al. This experience have allowed to carry out three complete extensions. In such extensions we could analysed the grade of adaptability of MoWebA and of automation PIM-ASM, as well as the grade of independence of the PIM metamodel. We have also conducted some user's satisfaction experiences with modelers and developers.González Toñánez, M. (2022). A Navigational Role-Centric Model Oriented Web Approach MoWebA [Tesis doctoral]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/181470TESI

    Using a Dynamic Domain-Specific Modeling Language for the Model-Driven Development of Cross-Platform Mobile Applications

    Get PDF
    There has been a gradual but steady convergence of dynamic programming languages with modeling languages. One area that can benefit from this convergence is modeldriven development (MDD) especially in the domain of mobile application development. By using a dynamic language to construct a domain-specific modeling language (DSML), it is possible to create models that are executable, exhibit flexible type checking, and provide a smaller cognitive gap between business users, modelers and developers than more traditional model-driven approaches. Dynamic languages have found strong adoption by practitioners of Agile development processes. These processes often rely on developers to rapidly produce working code that meets business needs and to do so in an iterative and incremental way. Such methodologies tend to eschew “throwaway” artifacts and models as being wasteful except as a communication vehicle to produce executable code. These approaches are not readily supported with traditional heavyweight approaches to model-driven development such as the Object Management Group’s Model-Driven Architecture approach. This research asks whether it is possible for a domain-specific modeling language written in a dynamic programming language to define a cross-platform model that can produce native code and do so in a way that developer productivity and code quality are at least as effective as hand-written code produced using native tools. Using a prototype modeling tool, AXIOM (Agile eXecutable and Incremental Objectoriented Modeling), we examine this question through small- and mid-scale experiments and find that the AXIOM approach improved developer productivity by almost 400%, albeit only after some up-front investment. We also find that the generated code can be of equal if not better quality than the equivalent hand-written code. Finally, we find that there are significant challenges in the synthesis of a DSML that can be used to model applications across platforms as diverse as today’s mobile operating systems, which point to intriguing avenues of subsequent research

    Improving the Specification of Business Application Requirements Based on Executable Models

    Get PDF
    Istraživanje predstavljeno u okviru ove disertacije imalo je za cilj unapređenje procesa specifikacije korisničkih zahteva poslovnih aplikacija na bazi detaljnih, izvršivih prototipova koji se mogu kreirati uz minimalan utrošak vremena i energije. Radi postizanja ovog cilja je implementiran alat otvorenog koda pod nazivom Kroki (fr. croquis – skica) čija je arhitektura projektovana tako da obezbedi: (1) kolaborativni razvoj specifikacije poslovne aplikacije sa korisnicima koji nemaju znanje projektovanja i programiranja softverskih sistema, (2) efikasno pokretanje prototipa direktno iz sopstvenog razvojnog okruženja, dajući mogućnost korisniku da isproba prototip tokom modelovanja kad god poželi, (3) ponovno korišćenje informacija dobijenih prilikom razvoja prototipova u kasnijim fazama razvoja, kako bi se smanjilo nepotrebno trošenje resursa. Eksperiment za proveru da li razvijeni alat zadovoljava postavljene ciljeve je dizajniran kao serija od deset eksplorativnih studija slučaja čiji je cilj specifikacija poslovnih aplikacija sa učesnicima koji dolaze iz različitih poslovnih domena koji nisu poznati projektantima. Pojedinačne studije su obavljene sa po jednim učesnikom u okviru dvočasovnih projektantskih sesija, gde su ulogu projektanata imali autor ove disertacije i njegov mentor. Kvalitativni i kvantitativni podaci prikupljeni tokom sesija i posle njih, putem upitnika, su iskorišćeni za izvođenje pozitivnih zaključaka o efikasnosti predloženog pristupa i alata. Dizajn istraživanja je baziran na konceptima MEM-a (Method Evaluation Model) koji definiše kriterijum za uspeh određene metodologije u praksi. Upitnici koji evaluiraju jezik za modelovanje i Kroki alat su formulisani tako da odgovaraju izabranim konceptima FQUAD (Framework for qualitative assessment of domain-specific languages) okvira za evaluaciju jezika specifičnih za domen.The research presented in this dissertation aimed to improve the process of specification of user requirements of business applications based on detailed, executable prototypes that can be created with minimal expenditure of time and energy. To achieve this goal, an open-source tool called Kroki (fr. croquis - sketch) was implemented, the architecture of which is designed to provide: (1) Collaborative development of business application specifications with users who do not have knowledge of designing and programming software systems, (2) Efficient prototyping directly from Kroki’s development environment, enabling the user to try out the prototype during modeling whenever they want, and (3) Reuse of information obtained during the development of prototypes in later stages of development, to reduce unnecessary consumption of time and energy. The experiment to validate whether the developed Kroki tool meets the set goals was designed as a series of ten exploratory case studies to specify business applications with participants from different business domains unknown to the designers. Individual studies were carried out within two-hour design sessions, where the author of this dissertation and his mentor played the designer role, with a single participant in the user role in each session. Qualitative and quantitative data collected during and after the sessions, through questionnaires, were used to draw positive conclusions about the effectiveness of the proposed approach and tools. The research design is based on the concepts of MEM (Method Evaluation Model), which defines the criteria for the success of a certain methodology in practice. Questionnaires that evaluate the modeling language and the Kroki tool are formulated to correspond to the selected concepts of the FQUAD (Framework for qualitative assessment of domain-specific languages) for evaluating DSLs
    corecore