967 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

    Policy-driven Security Management for Gateway-Oriented Reconfigurable Ecosystems

    Get PDF
    abstract: With the increasing user demand for low latency, elastic provisioning of computing resources coupled with ubiquitous and on-demand access to real-time data, cloud computing has emerged as a popular computing paradigm to meet growing user demands. However, with the introduction and rising use of wear- able technology and evolving uses of smart-phones, the concept of Internet of Things (IoT) has become a prevailing notion in the currently growing technology industry. Cisco Inc. has projected a data creation of approximately 403 Zetabytes (ZB) by 2018. The combination of bringing benign devices and connecting them to the web has resulted in exploding service and data aggregation requirements, thus requiring a new and innovative computing platform. This platform should have the capability to provide robust real-time data analytics and resource provisioning to clients, such as IoT users, on-demand. Such a computation model would need to function at the edge-of-the-network, forming a bridge between the large cloud data centers and the distributed connected devices. This research expands on the notion of bringing computational power to the edge- of-the-network, and then integrating it with the cloud computing paradigm whilst providing services to diverse IoT-based applications. This expansion is achieved through the establishment of a new computing model that serves as a platform for IoT-based devices to communicate with services in real-time. We name this paradigm as Gateway-Oriented Reconfigurable Ecosystem (GORE) computing. Finally, this thesis proposes and discusses the development of a policy management framework for accommodating our proposed computational paradigm. The policy framework is designed to serve both the hosted applications and the GORE paradigm by enabling them to function more efficiently. The goal of the framework is to ensure uninterrupted communication and service delivery between users and their applications.Dissertation/ThesisMasters Thesis Computer Science 201

    Toward Customizable Multi-tenant SaaS Applications

    Get PDF
    abstract: Nowadays, Computing is so pervasive that it has become indeed the 5th utility (after water, electricity, gas, telephony) as Leonard Kleinrock once envisioned. Evolved from utility computing, cloud computing has emerged as a computing infrastructure that enables rapid delivery of computing resources as a utility in a dynamically scalable, virtualized manner. However, the current industrial cloud computing implementations promote segregation among different cloud providers, which leads to user lockdown because of prohibitive migration cost. On the other hand, Service-Orented Computing (SOC) including service-oriented architecture (SOA) and Web Services (WS) promote standardization and openness with its enabling standards and communication protocols. This thesis proposes a Service-Oriented Cloud Computing Architecture by combining the best attributes of the two paradigms to promote an open, interoperable environment for cloud computing development. Mutil-tenancy SaaS applicantions built on top of SOCCA have more flexibility and are not locked down by a certain platform. Tenants residing on a multi-tenant application appear to be the sole owner of the application and not aware of the existence of others. A multi-tenant SaaS application accommodates each tenant’s unique requirements by allowing tenant-level customization. A complex SaaS application that supports hundreds, even thousands of tenants could have hundreds of customization points with each of them providing multiple options, and this could result in a huge number of ways to customize the application. This dissertation also proposes innovative customization approaches, which studies similar tenants’ customization choices and each individual users behaviors, then provides guided semi-automated customization process for the future tenants. A semi-automated customization process could enable tenants to quickly implement the customization that best suits their business needs.Dissertation/ThesisDoctoral Dissertation Computer Science 201

    A Review Of Multi-Tenant Database And Factors That Influence Its Adoption.

    Get PDF
    A Multi-tenant database (MTD) is a way of deploying a Database as a Service (DaaS). This is gaining momentum with significant increase in the number of organizations ready to take advantage of the technology. A multi-tenant database refers to a principle where a single instance of a Database Management System (DBMS) runs on a server, serving multiple clients organizations (tenants). This is a database which provides database support to a number of separate and distinct groups of users or tenants. This concept spreads the cost of hardware, software and other services to a large number of tenants, therefore significantly reducing per tenant cost. Three different approaches of implementing multi-tenant database have been identified. These methods have been shown to be increasingly better at pooling resources and also processing administrative operations in bulk. This paper reports the requirement of multi-tenant databases, challenges of implementing MTD, database migration for elasticity in MTD and factors influencing the choice of models in MTD. An insightful discussion is presented in this paper by grouping these factors into four categories. This shows that the degree of tenancy is an influence to the approach to be adopted and the capital and operational expenditure are greatly reduced in comparison with an on-premises solutio

    Smart City IoT Data Management with Proactive Middleware

    Get PDF
    With the increased emergence of cloud-based services, users are frequently perplexed as to which cloud service to use and whether it will be beneficial to them. The user must compare various services, which can be a time-consuming task if the user is unsure of what they might need for their application. This paper proposes a middleware solution for storing Internet of Things (IoT) data produced by various sensors, such as traffic, air quality, temperature, and so on, on multiple cloud service providers depending on the type of data. Standard cloud computing technologies become insufficient to handle the data as the volume of data generated by smart city devices grows. The middleware was created after a comparative study of various existing middleware. The middleware uses the concept of the federal cloud for the purpose of storing data. The middleware solution described in this paper makes it easier to distribute and classify IoT data to various cloud environments based on its type. The middleware was evaluated using a series of tests, which revealed its ability to properly manage smart city data across multiple cloud environments. Overall, this research contributes to the development of middleware solutions that can improve the management of IoT data in settings such as smart cities

    Towards Process Support for Migrating Applications to Cloud Computing

    Get PDF
    Cloud computing is an active area of research for industry and academia. There are a large number of organizations providing cloud computing infrastructure and services. In order to utilize these infrastructure resources and services, existing applications need to be migrated to clouds. However, a successful migration effort needs well-defined process support. It does not only help to identify and address challenges associated with migration but also provides a strategy to evaluate different platforms in relation to application and domain specific requirements. This paper present a process framework for supporting migration to cloud computing based on our experiences from migrating an Open Source System (OSS), Hackystat, to two different cloud computing platforms. We explained the process by performing a comparative analysis of our efforts to migrate Hackystate to Amazon Web Services and Google App Engine. We also report the potential challenges, suitable solutions, and lesson learned to support the presented process framework. We expect that the reported experiences can serve guidelines for those who intend to migrate software applications to cloud computing.Muhammad Aufeef Chauhan, Muhammad Ali Baba

    Tenant-centric Sub-Tenancy Architecture in Software-as-a-Service

    Get PDF
    AbstractMulti-tenancy architecture (MTA) is often used in Software-as-a-Service (SaaS) and the central idea is that multiple tenant applications can be developed using components stored in the SaaS infrastructure. Recently, MTA has been extended to allow a tenant application to have its own sub-tenants, where the tenant application acts like a SaaS infrastructure. In other words, MTA is extended to STA (Sub-Tenancy Architecture). In STA, each tenant application needs not only to develop its own functionalities, but also to prepare an infrastructure to allow its sub-tenants to develop customized applications. This paper applies Crowdsourcing as the core to STA component in the development life cycle. In addition, to discovering adequate fit tenant developers or components to help build and compose new components, dynamic and static ranking models are proposed. Furthermore, rank computation architecture is presented to deal with the case when the number of tenants and components becomes huge. Finally, experiments are performed to demonstrate that the ranking models and the rank computation architecture work as design

    The SPOSAD Architectural Style for Multi-tenant Software Applications

    Full text link
    Keywords-Software architecture; Software quality; Software performance; Software maintenance Abstract—A multi-tenant software application is a special type of highly scalable, hosted software, in which the ap-plication and its infrastructure are shared among multiple tenants to save development and maintenance costs. The limited understanding of the underlying architectural concepts still prevents many software architects from designing such a system. Existing documentation on multi-tenant software architectures is either technology-specific or database-centric. A more technology-independent perspective is required to enable wide-spread adoption of multi-tenant architectures. We propose the SPOSAD architectural style, which describes the components, connectors, and data elements of a multi-tenant architecture as well as constraints imposed on these elements. This paper describes the benefits of a such an architecture and the trade-offs for the related design decisions. To evaluate our proposal, we illustrate how concepts of the style help to make current Platform-as-a-Service (PaaS) environments, such as Force.com, Windows Azure, and Google App Engine scalable and customizable

    Extending an open source BPEL engine for multi-tenancy support

    Get PDF
    WS-BPEL is the de-facto standard for orchestrating Web services into business processes. Workflow engines can execute WS-BPEL processes. Furthermore, workflow engines handle the communication with external service partners providing the Web services. One future goal is to achieve tenant-aware Web services and thereby tenant-aware workflow engines to handle Web services. These tenant-aware Web services are specifically configured for the tenants, and the tenant-aware engines are able to configure such a process instance and offer them on a per-tenant basis. This reduces provider costs and efforts. The goal of this diploma thesis is to describe how workflow engines can support multitenancy, especially in the area of communication, and how this is of advantage for providers who offer their services over the Web using such a workflow engine. The providers should be able to offer tenant specific instances of applications on one workflow engine. In this diploma thesis, a concept to extend a workflow engine to handle a tenant context is developed. It is therefore an extension of the workflow engine in the area of communication. The concept is implemented by extending the open source WS-BPEL engine OW2 Orchestra
    • …
    corecore