8,123 research outputs found

    Using Microservices to Customize Multi-Tenant SaaS: From Intrusive to Non-Intrusive

    Get PDF
    Customization is a widely adopted practice on enterprise software applications such as Enterprise resource planning (ERP) or Customer relation management (CRM). Software vendors deploy their enterprise software product on the premises of a customer, which is then often customized for different specific needs of the customer. When enterprise applications are moving to the cloud as mutli-tenant Software-as-a-Service (SaaS), the traditional way of on-premises customization faces new challenges because a customer no longer has an exclusive control to the application. To empower businesses with specific requirements on top of the shared standard SaaS, vendors need a novel approach to support the customization on the multi-tenant SaaS. In this paper, we summarize our two approaches for customizing multi-tenant SaaS using microservices: intrusive and non-intrusive. The paper clarifies the key concepts related to the problem of multi-tenant customization, and describes a design with a reference architecture and high-level principles. We also discuss the key technical challenges and the feasible solutions to implement this architecture. Our microservice-based customization solution is promising to meet the general customization requirements, and achieves a balance between isolation, assimilation and economy of scale

    Towards Product Lining Model-Driven Development Code Generators

    Get PDF
    A code generator systematically transforms compact models to detailed code. Today, code generation is regarded as an integral part of model-driven development (MDD). Despite its relevance, the development of code generators is an inherently complex task and common methodologies and architectures are lacking. Additionally, reuse and extension of existing code generators only exist on individual parts. A systematic development and reuse based on a code generator product line is still in its infancy. Thus, the aim of this paper is to identify the mechanism necessary for a code generator product line by (a) analyzing the common product line development approach and (b) mapping those to a code generator specific infrastructure. As a first step towards realizing a code generator product line infrastructure, we present a component-based implementation approach based on ideas of variability-aware module systems and point out further research challenges.Comment: 6 pages, 1 figure, Proceedings of the 3rd International Conference on Model-Driven Engineering and Software Development, pp. 539-545, Angers, France, SciTePress, 201

    Requirements and Tools for Variability Management

    Get PDF
    Explicit and software-supported Business Process Management has become the core infrastructure of any medium and large organization that has a need to be efficient and effective. The number of processes of a single organization can be very high, furthermore, they might be very similar, be in need of momentary change, or evolve frequently. If the ad-hoc adaptation and customization of processes is currently the dominant way, it clearly is not the best. In fact, providing tools for supporting the explicit management of variation in processes (due to customization or evolution needs) has a profound impact on the overall life-cycle of processes in organizations. Additionally, with the increasing adoption of Service-Oriented Architectures, the infrastructure to support automatic reconfiguration and adaptation of business process is solid. In this paper, after defining variability in business process management, we consider the requirements for explicit variation handling for (service based) business process systems. eGovernment serves as an illustrative example of reuse. In this case study, all local municipalities need to implement the same general legal process while adapting it to the local business practices and IT infrastructure needs. Finally, an evaluation of existing tools for explicit variability management is provided with respect to the requirements identified.

    PuLSE-I: Deriving instances from a product line infrastructure

    Get PDF
    Reusing assets during application engineering promises to improve the efficiency of systems development. However, in order to benefit from reusable assets, application engineering processes must incorporate when and how to use the reusable assets during single system development. However, when and how to use a reusable asset depends on what types of reusable assets have been created.Product line engineering approaches produce a reusable infrastructure for a set of products. In this paper, we present the application engineering process associated with the PuLSE product line software engineering method - PuLSE-I. PuLSE-I details how single systems can be built efficiently from the reusable product line infrastructure built during the other PuLSE activities

    Evaluation of Frame- and Feature-based Software Product Line Tools from the Viewpoint of Mass Customization by End Users

    Get PDF
    Customers expect Information and Communications Technology (ICT) platforms and applications to deliver services customized to their needs. Software product line (SPL) paradigm uses platforms and variability management to develop mass-customizable software applications. The paradigm necessitates effective software tools to manage platform and application artifacts and traceability and variability information. This paper constructs a comprehensive but lightweight tool evaluation framework and uses it to evaluate two tools, XML-based variant configuration language (XVCL) and FeaturePlugin – a feature modeling plug-in for Eclipse Integrated Development Environment. The paper analyzes the capabilities of the tools for enabling the mass customization of software applications by the end users performing complex workflows. Both the XVCL and FeaturePlugin tool envisage more efficient software system development by means of reusability, support for abstraction, and configuration mechanisms. Future research is needed to refine and validate the evaluation framework in the context of other types of SPL tools

    Dynamic Financial Analysis - Understanding Risk and Value Creation in Insurance

    Get PDF
    The changing business environment in non-life insurance and reinsurance has raised the need for new quantitative methods to analyze the impact of various types of strategic decisions on a company’s bottom line. Dynamic Financial Analysis («DFA») has become popular among practitioners as a means of addressing these new requirements. It is a systematic approach based on large-scale computer simulations for the integrated financial modeling of non-life insurance and reinsurance companies aimed at assessing the risks and the benefits associated with strategic decisions. DFA allows decision makers to understand and quantify the impact and interplay of the various risks that their company is exposed to, and – ultimately – to make better informed strategic decisions. In this brochure, we provide an overview and assessment of the state of the industry related to DFA. We investigate the DFA value proposition, we explain its elements and we explore its potential and limitations.reinsurance, dynamic financial analysis, insurance

    Rationale Management Challenges in Requirements Engineering

    Get PDF
    Rationale and rationale management have been playing an increasingly prominent role in software system development mainly due to the knowledge demand during system evaluation, maintenance, and evolution, especially for large and complex systems. The rationale management for requirements engineering, as a commencing and critical phase in software development life cycle, is still under-exploited. In this paper, we first survey briefly the state-of-the-art on rationale employment and applications in requirements engineering. Secondly, we identify the challenges in integrating rationale management in requirements engineering activities in order to promote further investigations and define a research agenda on rationale management in requirements engineering.

    Knowing A Few Rules Doesn’t Mean You Can Play the Game : The Limits of “Best Practice” in Enterprise Systems.

    Get PDF
    We examine the common claim that "best practices" are encompassed and represented in Enterprise Systems (ES). We suggest that an ES can at best only represent the ostensive and not the performative elements of work tasks. Thus, representation of best practice in an ES does not take practical action into account. This has two important implications. First, ostensive abstractions of best practice in an ES are a sparse and superficial representation of a "good" business process, at a specific moment in time. Second, the practical understanding required for performance is often ignored in the ostensive representation of best practice in the implementation of an ES. This constrains user and business adaptability. Inflexible coding of ostensive business tasks furthermore leads to rigidity where flexibility should be sought, to keep on top of the competition. Implications and directions for further research are discussed

    A Survey on Usage and Diffusion of Project Risk Management Techniques and Software Tools in the Construction Industry

    Get PDF
    The area of Project Risk Management (PRM) has been extensively researched, and the utilization of various tools and techniques for managing risk in several industries has been sufficiently reported. Formal and systematic PRM practices have been made available for the construction industry. Based on such body of knowledge, this paper tries to find out the global picture of PRM practices and approaches with the help of a survey to look into the usage of PRM techniques and diffusion of software tools, their level of maturity, and their usefulness in the construction sector. Results show that, despite existing techniques and tools, their usage is limited: software tools are used only by a minority of respondents and their cost is one of the largest hurdles in adoption. Finally, the paper provides some important guidelines for future research regarding quantitative risk analysis techniques and suggestions for PRM software tools development and improvemen

    Achieving non-intrusive interoperability between models for involving users in modeling tasks

    Full text link
    [EN] Model-Driven Development (MDD) promotes models as the cornerstone in the software development process, thereby displacing source code as the development process's main feature. Although this model-centric schema claims advantages over traditional software development (e.g., the code could be automatically generated from the models), it does not have the level of adoption that has been expected. The literature review reveals a broad agreement in the fact that end-users may develop and adapt systems themselves but the complexity in modeling standards and the lack of modeling skills prevents their active involvement in modeling tasks of existing MDD processes. To overcome this, end-users should be provided with different modeling languages that use concepts, which fit their particular skills, context and needs. This challenge is the main goal of this thesis, which is addressed by combining the End-user Development and the Model-Driven Development fields. This work starts with the involvement of end-users into the modeling tasks using a tool-supported visual modeling language that allows end-users to select and customize system features of pervasive systems using closer concepts for them. Afterwards, this thesis shows the necessity of enriching existing MDD processes for supporting the development of a new generation of software systems (e.g., smart health) that require expertise in a variety of domains. Consequently, different types of users (e.g., scientists, engineers and end-users) must actively participate in the description of model fragments that depend on their expertise using a different modeling language. Thus, users are able to collaborate to obtain a unified system description. At this point, it becomes necessary to provide mechanisms that transforms models fragments from one modeling language to another, delimits which model fragments are described by a different user, and integrates those model fragments. To provide this, the presented approach encompasses variability management in a novel way to enable collaborative modeling by supporting both the selection of model fragments of the system that may be described using a different modeling language, and the integration of those model fragments once they are described. Furthermore, interoperability mechanisms bridge two different modeling languages in a non-intrusive way with the structure of models by transforming the description of gaps. Thus, our proposal could enrich models of existing MDD processes with model fragments that have been described using a different modeling language, which could make users feel confident to adopt models for describing domain-specific content and could help to adopt MDD processes. The proposal has been validated in three case studies from different levels of complexity and domains: smart home systems, web information systems, and biomechanical protocols. The results have proven the applicability and feasibility of our approach to actively involve different types of users (end- users with software professionals, domain experts with software development experts, and doctors with biomedical engineers, respectively) in model descriptions of existing MDD processes using a different modeling language.[ES] En el Desarrollo de Software Dirigido por Modelos (DSDM) los modelos son la piedra angular del proceso de desarrollo de software, desplazando asĂ­ al cĂłdigo fuente como artefacto principal. Aunque este enfoque centrado en modelos ofrece ventajas sobre el desarrollo de software tradicional (por ejemplo, la generaciĂłn de cĂłdigo de forma automĂĄtica a partir de los modelos) no tiene el nivel de adopciĂłn esperado. La literatura cientĂ­fica revela un amplio acuerdo en el hecho de que los usuarios finales puedan ellos mismos desarrollar y adaptar los sistemas pero la complejidad de los estĂĄndares de modelado y la carencia de habilidades de modelado impide su participaciĂłn activa en procesos DSDM existentes. Para lograrlo, los usuarios finales deben disponer de lenguajes de modelado diferentes con conceptos adaptados a sus habilidades, contexto y necesidades. Este desafĂ­o es el objetivo principal de esta tesis que se aborda combinando las ideas del desarrollo orientado al usuario final y el DSDM. Este trabajo comienza involucrando usuarios finales en tareas de modelado con una herramienta que les proporciona un lenguaje de modelado visual para seleccionar y personalizar caracterĂ­sticas de un sistema pervasivo utilizando conceptos familiares para ellos. DespuĂ©s, esta tesis motiva la necesidad de enriquecer procesos de DSDM existentes para soportar el desarrollo de una nueva generaciĂłn de sistemas software (por ejemplo, salud inteligente) que requieren conocimientos especializados en una variedad de dominios. Consecuentemente, diferentes tipos de usuarios (por ejemplo, cientĂ­ficos, ingenieros y usuarios finales) deben participar activamente en la descripciĂłn de fragmentos de modelos que dependen de su experiencia utilizando un lenguaje de modelado diferente. De este modo, los usuarios pueden colaborar para obtener una descripciĂłn del sistema unificada. En este punto, es necesario proporcionar mecanismos que transformen e integren los fragmentos de un lenguaje de modelado a otro y delimiten quĂ© fragmentos se describen por un usuario diferente. Para proporcionar esto, la propuesta presentada utiliza la gestiĂłn de variabilidad de forma novedosa para permitir modelado colaborativo seleccionando fragmentos de un modelo del sistema que pueden ser descritos utilizando un lenguaje de modelado diferente y, la integraciĂłn de esos fragmentos una vez que hayan sido descritos. AdemĂĄs, la propuesta utiliza mecanismos de interoperabilidad para conectar dos lenguajes de modelado diferentes transformando la descripciĂłn de los fragmentos de una manera no invasiva con su estructura. Por tanto, nuestra propuesta puede enriquecer los modelos de procesos DSDM existentes con fragmentos de modelos que han sido descritos con un lenguaje diferente y esto, podrĂ­a hacer que los usuarios se sientan seguros al adoptar modelos para describir contenido de dominio especĂ­fico y podrĂ­a ayudar a adoptar procesos DSDM. La propuesta ha sido validada en tres casos de estudio con diferentes niveles de complejidad y dominios: sistemas para el hogar inteligente, sistemas de informaciĂłn web y protocolos biomecĂĄnicos. Los resultados han demostrado la aplicabilidad y viabilidad de nuestra propuesta para involucrar diferentes tipos de usuarios (usuarios finales con profesionales de software, expertos en el dominio con expertos en desarrollo de software y, mĂ©dicos con ingenieros biomĂ©dicos, respectivamente) en descripciones de modelos de procesos DSDM existentes utilizando un lenguaje de modelado diferente.[CA] En el Desenvolupament de Programari Dirigit per Models (DPDM) els models sĂłn la pedra angular del procĂ©s de desenvolupament de programari, desplaçant aixĂ­ al codi font com a artefacte principal. Encara que aquest enfocament centrat en models ofereix avantatges sobre el desenvolupament de programari tradicional (per exemple, la generaciĂł de codi de forma automĂ tica a partir dels models) no tĂ© el nivell d'adopciĂł esperat. La literatura cientĂ­fica revela un ampli acord en el fet que els usuaris finals puguen ells mateixos desenvolupar i adaptar els sistemes perĂČ la complexitat dels estĂ ndards de modelatge i la falta d'habilitats de modelatge impedeix la seua participaciĂł activa en processos DPDM existents. Per a aconseguir-ho, els usuaris finals han de disposar de llenguatges de modelatge diferents amb conceptes adaptats a les seues habilitats, context i necessitats. Aquest desafiament Ă©s l'objectiu principal d'aquesta tesi que s'aborda combinant les idees del desenvolupament orientat a l'usuari final i el DPDM. Aquest treball comença involucrant usuaris finals en tasques de modelatge amb una eina que els proporciona un llenguatge de modelatge visual que permet als usuaris finals seleccionar i personalitzar caracterĂ­stiques d'un sistema pervasiu utilitzant conceptes familiars per a ells. DesprĂ©s, aquesta tesi motiva la necessitat d'enriquir processos de DPDM existents per a suportar el desenvolupament d'una nova generaciĂł de sistemes programari (per exemple, salut intelÂżligent) que requereixen coneixements especialitzats en una varietat de dominis. ConseqĂŒentment, diferents tipus d'usuaris (per exemple, cientĂ­fics, enginyers i usuaris finals) han de participar activament en la descripciĂł de fragments de models que depenen de la seua experiĂšncia utilitzant un llenguatge de modelatge diferent. D'aquesta manera, els usuaris poden colÂżlaborar per a obtenir una descripciĂł del sistema unificada. En aquest punt, Ă©s necessari proporcionar mecanismes que transformen i integren els fragments d'un llenguatge de modelatge a un altre i delimiten quins fragments es descriuen per un usuari diferent. Per a proporcionar açĂČ, la proposta presentada utilitza la gestiĂł de variabilitat de forma nova per a permetre modelatge col.laboratiu seleccionant fragments d'un model del sistema que poden ser descrits utilitzant un llenguatge de modelatge diferent i, la integraciĂł d'aqueixos fragments una vegada que hagen sigut descrits. A mĂ©s, la proposta utilitza mecanismes d'interoperabilitat per a connectar dos llenguatges de modelatge diferents transformant la descripciĂł dels fragments d'una manera no invasiva amb la seua estructura. Per tant, la nostra proposta pot enriquir els models de processos DPDM existents amb fragments de models que han sigut descrits amb un llenguatge diferent i açĂČ, podria fer que els usuaris se senten segurs en adoptar models per a descriure contingut de domini especĂ­fic i podria ajudar a adoptar processos DPDM. La proposta ha sigut validada en tres casos d'estudi amb diferents nivells de complexitat i dominis: sistemes per a la llar intelÂżligent, sistemes d'informaciĂł web i protocols biomecĂ nics. Els resultats han demostrat l'aplicabilitat i viabilitat de la nostra proposta per a involucrar diferents tipus d'usuaris (usuaris finals amb professionals de programari, experts en el domini amb experts en desenvolupament de programari i, metges amb enginyers biomĂšdics, respectivament) en descripcions de models de processos DPDM existents utilitzant un llenguatge de modelatge diferent.PĂ©rez PĂ©rez, MF. (2015). Achieving non-intrusive interoperability between models for involving users in modeling tasks [Tesis doctoral no publicada]. Universitat PolitĂšcnica de ValĂšncia. https://doi.org/10.4995/Thesis/10251/58429TESI
    • 

    corecore