16 research outputs found

    Dynamic Model-based Management of Service-Oriented Infrastructure.

    Get PDF
    Models are an effective tool for systems and software design. They allow software architects to abstract from the non-relevant details. Those qualities are also useful for the technical management of networks, systems and software, such as those that compose service oriented architectures. Models can provide a set of well-defined abstractions over the distributed heterogeneous service infrastructure that enable its automated management. We propose to use the managed system as a source of dynamically generated runtime models, and decompose management processes into a composition of model transformations. We have created an autonomic service deployment and configuration architecture that obtains, analyzes, and transforms system models to apply the required actions, while being oblivious to the low-level details. An instrumentation layer automatically builds these models and interprets the planned management actions to the system. We illustrate these concepts with a distributed service update operation

    Analysis of deployment techniques for webbased applications in SMEs

    Get PDF
    The Internet is no longer just a source for accessing information; it has become a valuable medium for social networking and software services. Web-browsers can now access entire software systems available online to provide the user with a range of services. The concept of software as a service(SAAS) was born out of this. The number of development techniques and frameworks for such web-applications has grown rapidly and much research and development has been carried out on advancing the capability of web scripting languages and web browsers. However a key part of the life-cycle of web-applications that has not received adequate attention is deployment. The deployment techniques chosen to deploy a web application can have a serious affect on the cost of maintenance and the quality of service for the end user. A SAAS modelled web application attempts to emulate a desktop software package experience. If a deployment process affects the availability and quality of service of a web-application then the core concept of this model is broken. This dissertation identifies approaches to designing a deployment process and the aspects that influence the quality of a deployment technique. A survey was circulated to a number of Irish small to medium sized enterprises (SME) that develop web-based software. The survey shows an overview of multiple deployment processes used by these SMEs. Using this information, along with a review of the available literature and a detailed case study of a typical SME deploying SAAS based products, the dissertation provides a critical analysis and evaluation of the current deployment techniques being used

    Software-As-A-Service: Implications For Business And Technology In Product Software Companies

    Get PDF
    Many software organizations are currently transitioning from an on-premises deployment model to the Software as a Service (SaaS) model. If a company restricts changes only in the business or technical perspective, the transition leads to higher costs, poor adoption of the SaaS model, and in the worst case, the company can lose its business. Much literature focuses on changes within one domain and is generally also limited to one perspective. This paper provides stakeholders (i.e. product managers, and business managers) an integrated perspective (business and technological) with a comprehensive framework that covers changes in four domains: business/product structure, revenue logic, customer relationships, and partnerships. The applicability of the proposed framework is assessed with a case study of a large software product vendor. The paper also contributes by providing a new avenue to study SaaS, with an integrated perspective for the organizational transition period. For the industry, this paper suggests a way to assess the impacts of organizational transition towards the SaaS model. With this overview in hand, software-producing organizations can use the comprehensive framework to successfully transition to become SaaS vendors

    An approach for virtual appliance distribution for service deployment

    Get PDF
    Fulfilling a service request in highly dynamic service environments may require deploying a service. Therefore, the effectiveness of service deployment systems affects initial service response times. On Infrastructure as a Service (IaaS) cloud systems deployable services are encapsulated in virtual appliances. Services are deployed by instantiating virtual machines with their virtual appliances. The virtual machine instantiation process is highly dependent on the size and availability of the virtual appliance that is maintained by service developers. This article proposes an automated virtual appliance creation service that aids the service developers to create efficiently deployable virtual appliances in former systems this task was carried out manually by the developer. We present an algorithm that decomposes these appliances in order to replicate the common virtual appliance parts in IaaS systems. These parts are used to reduce the deployment time of the service by rebuilding the virtual appliance of the service on the deployment target site. With the prototype implementation of the proposed algorithms we demonstrate the decomposition and appliance rebuilding algorithms on a complex web service. © 2010 Elsevier Inc. All rights reserved

    Selecting a Deployment Automation Tool for CRM Software in Elisa Oy

    Get PDF
    Software passes through several phases during its production process which are typically designing, developing, testing and delivering. In the software development life cycle (SDLC), the ultimate aim is to deliver the software product to its intended users with the expected functionality. Deployment is a critical step which harnesses all the work done in the previous stages in the SDLC and makes the software available to the end user. Thus, failure in the final deployment stage will waste the effort expended in earlier phases. The responsibility for deployment usually belongs to operations teams and it is done manually or then partially automated, often using inefficient scripts. Manual deployment can be extremely difficult task, and it is easy to blunder with repetitive routines consisting of many steps such as setting up similar environments and installing software components in those environments. Some operations teams attempt to ease the manual work by writing scripts to automate the process, but ultimately this method can become complicated and burdensome. The deployment process delays can be avoided and redundant costs eliminated in the error prone manual deployment process by changing the work culture and automating said processes. There are several products on the market to help automate this process. Achieving fully automated provisioning is the ultimate goal to produce and update services rapidly within enterprise applications in large corporations. Full automation is accomplished when the environments are set up automatically, and software installation is automatic in those environments. The objective of this research is to introduce these automation tools to the Customer Relation Management (CRM) system at Elisa Oy and to develop a proposal for automating the deployment process as an alternative to its current manual process. CRM as a large system consists of numerous sub systems and software components. A deployment case with a selected tool will be demonstrated to show how the automation can be accomplished

    AEROMODELOS: SOLUÇÃO DIRIGIDA À MODELOS PARA DESIGN E IMPLANTAÇÃO AUTOMÁTICA DE SOFTWARE NA NUVEM

    Get PDF
    A computação em nuvem reduz custos com hardware e software por tratar tudo como serviço. Contudo, para implantar um software na nuvem é preciso que o desenvolvedor tenha conhecimento técnico da arquitetura provedor de nuvem que deseja implantar o software. Nesta investigação foi elaborada uma abordagem para implantação automática de software na nuvem e também a concepção dos modelos UML como entrada da solução de implantação, de forma que possibilitou ao desenvolvedor a criação de modelos de implantação intuitivamente e com pouco esforço de aprendizado. Também foi definido um possível padrão para modelos de implantação de software em nuvem, onde os requisitos ficaram mais visíveis, visto que não existe a definição de um padrão universal de modelos nessa linha. Na pesquisa foi realizado um experimento com a solução, nele foi percebido que a solução apresentou um impacto positivo em relação à solução convencional no que se refere às métricas de manutenibilidade, apreensibilidade e redução da carga de trabalho do desenvolvedor na implantação de software em nuvem

    Automatic deployment and reproducibility of workflow on the Cloud using container virtualization

    Get PDF
    PhD ThesisCloud computing is a service-oriented approach to distributed computing that has many attractive features, including on-demand access to large compute resources. One type of cloud applications are scientific work ows, which are playing an increasingly important role in building applications from heterogeneous components. Work ows are increasingly used in science as a means to capture, share, and publish computational analysis. Clouds can offer a number of benefits to work ow systems, including the dynamic provisioning of the resources needed for computation and storage, which has the potential to dramatically increase the ability to quickly extract new results from the huge amounts of data now being collected. However, there are increasing number of Cloud computing platforms, each with different functionality and interfaces. It therefore becomes increasingly challenging to de ne work ows in a portable way so that they can be run reliably on different clouds. As a consequence, work ow developers face the problem of deciding which Cloud to select and - more importantly for the long-term - how to avoid vendor lock-in. A further issue that has arisen with work ows is that it is common for them to stop being executable a relatively short time after they were created. This can be due to the external resources required to execute a work ow - such as data and services - becoming unavailable. It can also be caused by changes in the execution environment on which the work ow depends, such as changes to a library causing an error when a work ow service is executed. This "work ow decay" issue is recognised as an impediment to the reuse of work ows and the reproducibility of their results. It is becoming a major problem, as the reproducibility of science is increasingly dependent on the reproducibility of scientific work ows. In this thesis we presented new solutions to address these challenges. We propose a new approach to work ow modelling that offers a portable and re-usable description of the work ow using the TOSCA specification language. Our approach addresses portability by allowing work ow components to be systematically specifed and automatically - v - deployed on a range of clouds, or in local computing environments, using container virtualisation techniques. To address the issues of reproducibility and work ow decay, our modelling and deployment approach has also been integrated with source control and container management techniques to create a new framework that e ciently supports dynamic work ow deployment, (re-)execution and reproducibility. To improve deployment performance, we extend the framework with number of new optimisation techniques, and evaluate their effect on a range of real and synthetic work ows.Ministry of Higher Education and Scientific Research in Iraq and Mosul Universit

    Foundations of efficient virtual appliance based service deployments

    Get PDF
    The use of virtual appliances could provide a flexible solution to services deployment. However, these solutions suffer from several disadvantages: (i) the slow deployment time of services in virtual machines, and (ii) virtual appliances crafted by developers tend to be inefficient for deployment purposes. Researchers target problem (i) by advancing virtualization technologies or by introducing virtual appliance caches on the virtual machine monitor hosts. Others aim at problem (ii) by providing solutions for virtual appliance construction, however these solutions require deep knowledge about the service dependencies and its deployment process. This dissertation aids problem (i) with a virtual appliance distribution technique that first identifies appliance parts and their internal dependencies. Then based on service demand it efficiently distributes the identified parts to virtual appliance repositories. Problem (ii) is targeted with the Automated Virtual appliance creation Service (AVS) that can extract and publish an already deployed service by the developer. This recently acquired virtual appliance is optimized for service deployment time with the proposed virtual appliance optimization facility that utilizes active fault injection to remove the non-functional parts of the appliance. Finally, the investigation of appliance distribution and optimization techniques resulted the definition of the minimal manageable virtual appliance that is capable of updating and configuring its executor virtual machine. The deployment time reduction capabilities of the proposed techniques were measured with several services provided in virtual appliances on three cloud infrastructures. The appliance creation capabilities of the AVS are compared to the already available virtual appliances offered by the various online appliance repositories. The results reveal that the introduced techniques significantly decrease the deployment time of virtual appliance based deployment systems. As a result these techniques alleviated one of the major obstacles before virtual appliance based deployment systems

    Modeling and Selection of Software Service Variants

    Get PDF
    Providers and consumers have to deal with variants, meaning alternative instances of a service?s design, implementation, deployment, or operation, when developing or delivering software services. This work presents service feature modeling to deal with associated challenges, comprising a language to represent software service variants and a set of methods for modeling and subsequent variant selection. This work?s evaluation includes a POC implementation and two real-life use cases
    corecore