The integration of Internet of Things (IoT) networks into smart cities is crucial to enhance the efficiency of city operations and services. Designing a smart city architecture that can adapt to the constantly changing functional and quality requirements of city services is essential. However, critical decisions must be made during this process, such as selecting communication protocols, ensuring security and safety, optimizing time performance, and processing data capacity. To address these challenges, this paper proposes a systematic approach to guide the system architecture design of IoT-based smart cities. The approach starts with feature-driven domain analysis to model smart city requirements, followed by the design of a reference architecture for IoT-based smart cities. The architecture is modeled using selected architectural views, while considering key stakeholders and their concerns. Additionally, this paper presents valuable insights into lessons learned and challenges encountered during the process of creating IoT-based smart cities. This information can assist practitioners in developing such smart cities and pave the way for future research in this field. By following this proposed approach, smart city architects can design a robust and adaptable system architecture that can meet the evolving needs of smart city services.
Microservice architectures rely on the development of modular and independent software units, which typically address a single task and communicate with other microservices via well-defined interfaces. This has several benefits such as easier maintenance and update of services. However, deploying a microservice-based application is often more complicated than a monolithic application. While a monolithic application can be deployed one at a time on a group of similar servers behind a load balancer, a microservice-based application consists of different microservices and each microservice usually has more than one runtime instance that needs to be configured and deployed. For a small number of microservices and applications, the deployment could be done manually. However, a large number of microservices are frequently observed in practice. In such cases, the deployment becomes cumbersome and error-prone and does not scale with the increased number of services. To cope with this problem, we present a systematic approach and the corresponding tool support for enabling the deployment of microservices to resources that have limited capacity. Hereby, we model and define the design space given the deployment parameters and automatically derive the feasible deployment solution. The approach is validated using a taxi-hailing system case study inspired by Uber which has spread all over the world in recent years.
Microservice architecture consists of a collection of loosely coupled, self-contained services that can be deployed independently. Given the limited capacity of the resources for a large number of services, the deployment of the services does not scale well and leads to operational complexity and runtime overhead. This paper proposes a model-driven approach for the automated deployment of microservices to minimize the execution cost and communication costs among the microservices. The identification of the feasible deployment is defined at the architecture design level based on the provided capacity of the resources and the collection of microservices. The corresponding tool support using Eclipse Modeling Environment is described, and a case study on book shopping is used to illustrate the approach.
25 April 2022 in Software: Practice and Experience
Using Tactical Environment Simulations as part of simulation systems or real systems; increases the reality and quality of the applications, reduces development time, increases interoperability and reusability of systems. Tactical Environment Simulations are utilized by integrating them into applications which can have a wide variety of requirements; so, they are generally customized to meet specific requirements of the applications. Apart from most of the Commercial-Off-The-Shelf (COTS) tools that are used directly, Tactical Environment Simulations are often provided as Application Frameworks which contain readily available simulation models, middleware, extension points and a tool set to ease customization and integration. In this paper, the requirements and a design overview for an easily extensible, customizable and integrable, High Level Architecture (HLA)-based Tactical Environment Application Framework are provided. After defining the requirements and giving an overview of design, an Application Framework that realizes the defined system is also explained.