Cloud computing is ever stronger converging with the Internet of Things (IoT) offering novel techniques for IoT infrastructure virtualization and its management on the cloud. However, system designers and operations managers face numerous challenges to realize IoT cloud systems in practice, mainly due to the complexity involved with provisioning large-scale IoT cloud systems and diversity of their requirements in terms of IoT resources consumption, customization of IoT capabilities and runtime governance. In this paper, we introduce the concept of software-defined IoT units -a novel approach to IoT cloud computing that encapsulates fine-grained IoT resources and IoT capabilities in well-defined APIs in order to provide a unified view on accessing, configuring and operating IoT cloud systems. Our software-defined IoT units are the fundamental building blocks of software-defined IoT cloud systems. We present our framework for dynamic, on-demand provisioning and deploying such software-defined IoT cloud systems. By automating provisioning processes and supporting managed configuration models, our framework simplifies provisioning and enables flexible runtime customizations of software-defined IoT cloud systems. We demonstrate its advantages on a real-world IoT cloud system for managing electric fleet vehicles.
Abstract-Cloud computing technologies have recently been intensively exploited for the development and management of large-scale IoT systems, due to their capability to integrate diverse types of IoT devices and to support big IoT data analytics in an elastic manner. However, due to the diversity, complexity and scale of IoT systems, the need to handle large volumes of IoT data in a nontrivial manner, and the plethora of domaindependent IoT controls, programming IoT applications on cloud platforms still remains a great challenge. To date, existing work neglects high-level programming models and focuses on lowlevel IoT data and device integration. In this paper, we outline PatRICIA, which aims at providing an end-to-end solution for high-level programming and provisioning of IoT applications on cloud platforms. We present a novel programming model, based on the concept of intent and intent scope. Further, we introduce its runtime for dealing with the complexity, diversity and scale of IoT systems in the cloud. Our programming model defines abstractions to enable easier, efficient and more intuitive development of cloud-scale IoT applications. To illustrate our programming model, we present a case study with real-world applications for controlling and managing electric vehicles.
Pervasive environments are characterized by a large number of embedded devices offering their services to the user. Which of the available services are of most interest to the user considerably depends on the user's current context. User context is often rich and very dynamic; making an explicit, user-driven discovery of services impractical. Users in such environments would instead like to be continuously informed about services relevant to them. Implicit discovery requests triggered by changes in the context are therefore prevalent. This paper proposes a proactive service discovery approach for pervasive environments addressing these implicit requests. Services and user preferences are described by a formal context model called Hyperspace Analogue to Context, which effectively captures the dynamics of 296 World Wide Web (2011) 14:295-319 context and the relationship between services and context. Based on the model, we propose a set of algorithms that can continuously present the most relevant services to the user in response to changes of context, services or user preferences. Numeric coding methods are applied to improve the algorithms' performance. The algorithms are grounded in a context-driven service discovery system that automatically reacts to changes in the environment. New context sources and services can be dynamically integrated into the system. A client for smart phones continuously informs users about the discovery results. Experiments show, that the system can efficiently provide the user with continuous, up-to-date information about the most useful services in real time.
Internet of Things (IoT) devices are usually considered as external dependencies that only provide data, or process and execute simple instructions. Recently, IoT devices with embedded execution environments emerged that allow practitioners to deploy and execute custom application logic on the device. This approach fundamentally changes the overall process of designing, developing, deploying, and managing IoT systems. However, these devices exhibit significant differences in available execution environments, processing, and storage capabilities. To accommodate this diversity, a structured approach is needed to uniformly and transparently deploy application components onto a large number of heterogeneous devices. This is especially important in the context of current large-scale IoT systems, such as in the smart city domain. In this paper, we present LEONORE, a service oriented infrastructure that provides elastic provisioning of application components on resource-constrained and heterogeneous edge devices in large-scale IoT deployments. LEONORE supports push-based as well as pull-based deployments and we show that our solution is able to elastically provision large numbers of devices using a testbed based on a real-world industry scenario.
Abstract-The cloud computing paradigm introduces new possibilities and challenges for application design and deployment. On-demand resource provisioning, as well as resource and cost elasticity, need to be considered when realizing largescale distributed applications for cloud environments. Current approaches do not sufficiently address the challenges of efficiently architecting and deploying cloud applications in a holistic manner and do not deal with the specific challenges encountered in cloud infrastructures. In this paper we introduce a methodology tackling the practical problems encountered when designing and deploying cloud applications. It enables the structured creation of cloud-native applications, addressing the complete application development lifecycle, from architectural design to concrete deployment topologies provisioned and executed on cloud infrastructure. By using iterative refinement and seamless provenance documentation of decisions made in the process, the methodology eases communication with relevant stakeholders and enables efficient design and deployment of distributed cloud applications.
Abstract-In recent years, green software research is gaining momentum because of the acute need for sustainable development. Most past research has been focused on the definitions, metrics and technical solutions for green software, but few has addressed green software from the business perspective. In this paper, we present the analysis on three key elements of Green Software Services (GSS)-stakeholders, their requirements, and business models. The stakeholders of GSS are detailed with the services each stakeholder can provide and consume, thus clarifying their interests to GSS. Based on this analysis, we present the domain-independent, high-level requirements to GSS that cover diverse needs of different stakeholders. Six business models are then proposed to promote collaborations of stakeholders on the delivery of GSS. In the end, the relationship between GSS and cloud is discussed and a GSS marketplace is envisioned.
In recent years, new business and research opportunities have been increasingly emerging in the field of large-scale contextaware pervasive systems (e.g. pervasive health-care, city traffic monitoring, environmental monitoring, smart grids). These largescale pervasive systems are characterized by the need to employ large number of context sources, process massive amounts of realtime context data, provide services to numerous context-aware applications, and cope with higher volatility of the environment. This paper proposes the Origins Model-a programming model for context-aware applications in large-scale pervasive systems. In the Origins Model, an origin is an abstraction of any source of context information. Origins are universal, discoverable, composable, migratable, and replicable components that are associated with type and meta-information. They create an adequate foundation for the development of context-aware applications. Based on them, four processing operations are defined in the Origins Model: filter, infer, aggregate, and compose. As such, these operations provide a powerful mechanism to express a rich set of processing schemes in context-aware applications. Based on the Origins Model, we present the Origins Toolkit-a proof-ofconcept implementation developed using the Scala programming language and the Akka toolkit to provide a distributed, scalable, and fault-tolerant solution.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
hi@scite.ai
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.