Book

Service-Oriented Architecture: Concepts, Technology, and Design

Authors:

Abstract

Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this book, and the publisher was aware of a trademark claim, the designations have been printed with initial capital letters or in all capitals. The authors and publisher have taken care in the preparation of this book, but make no expressed or implied warranty of any kind and assume no responsibility for errors or omissions. No liability is assumed for incidental or consequential damages in connection with or arising out of the use of the information or programs contained herein. The publisher offers excellent discounts on this book when ordered in quantity for bulk purchases or special sales, which may include electronic versions and/or custom covers and content particular to your business, training goals, marketing focus, and branding interests. For more information, please contact: U. S. Corporate and Government Sales
... Microservice Architecture (MSA) [65] is an approach to architecting distributed software systems that promotes system decomposition into microservices. The notion of microservice comprises all characteristics of a service, i.e., it is a functional software component that (i) minimizes dependencies to other components; (ii) clusters coherent business logic; (iii) agrees on contracts that specify communication relationships with other components by means of interfaces; and (iv) interacts with other components to realize coarse-grained tasks [23]. While MSA emerged from Service-Oriented Architecture (SOA) [17,23], other than an SOA service, a microservice aims to maximize service-specific independence. ...
... The notion of microservice comprises all characteristics of a service, i.e., it is a functional software component that (i) minimizes dependencies to other components; (ii) clusters coherent business logic; (iii) agrees on contracts that specify communication relationships with other components by means of interfaces; and (iv) interacts with other components to realize coarse-grained tasks [23]. While MSA emerged from Service-Oriented Architecture (SOA) [17,23], other than an SOA service, a microservice aims to maximize service-specific independence. From the aspects that are concerned by this maximization, the notion of microservice can be defined as follows [6,13,14,17,44,64,65,93,101]: ...
... We identified and extracted an initial set of potential modeling concepts for LEMMA's modeling languages from six conceptual frameworks [10,60,[66][67][68]121] for the model-based description of service-based software architectures (SBSAs) [23]. We selected these frameworks because they explicitly consider various stakeholder groups, viewpoints, and engineering phases, without prescribing a certain solution architecture. ...
Chapter
Full-text available
This chapter presents LEMMA (Language Ecosystem for Modeling Microservice Architecture). LEMMA enables the application of Model-Driven Engineering (MDE) to Microservice Architecture (MSA). LEMMA mitigates the complexity of MSA by decomposing it along four viewpoints on microservice architectures, each capturing the concerns of different MSA stakeholders in dedicated architecture models. LEMMA formalizes the syntax and semantics of these models with specialized modeling languages that are integrated based on an import mechanism, thus enabling holistic MSA modeling. LEMMA also bundles its own model processing framework (MPF) to facilitate model processor implementation for technology-savvy MSA stakeholders without a background in MDE. We describe the design and development of LEMMA and exemplify the usage of its modeling languages and MPF for a case study microservice architecture. In addition, we present practical applications of LEMMA for microservice code generation, architecture reconstruction, quality analysis, defect resolution, and establishing a common architecture understanding. A comparison of LEMMA with related approaches reveals that LEMMA has particular strengths in (i) language-level extensibility, allowing model-based reification of architectural patterns; (ii) model processing, by bundling sophisticated code generators and static quality analyzers; and (iii) versatility, making LEMMA applicable in microservice development, operation, architecture reconstruction, and quality assessment.
... SOA is a design principle that represents heterogeneous and distributed capabilities, like methods or applications, as services that are platform-and application-independent [7]. SOA encourages individual logic units to exist independently but not in isolation [8]. In SOA, logic units are known as services. ...
... SOA is a new way of developing systems that drive changes from writing software programs to service integration and integration [13]. A number of key aspects of these principles are [8]: ...
... This method was targeted to give detailed guidelines to companies so they could develop SOA within the organization. In designing SOMA, there are three general steps, namely identification, specification, and realization of service [8], as shown in Figure 1. According to Arsanjani et al. (2008), in applying the SOMA method, there is a process life cycle that is shown in Figure 2 [16]. ...
Article
Full-text available
Business process changes occurred very often in organizations to maintain business continuity, which had an impact on information changes and process flow improvements. There are numerous companies that have problems managing data, information, and software applications, especially with the constant demands for employee information. This research objective is to integrate data and applications based on service-oriented architecture (SOA) by using the service-oriented modelling architecture (SOMA) software development method to solve the problem of producing updated and real-time information practically required by organization functions. This research result shows this implementation can help analyze the company's business model by generating information needs and service candidates that refer to SOA concepts. This implementation also gives a solid integration of in-house applications with different platforms and data sources from different databases with real time information. From a technical point of view, this implementation also reduces the duplication of business process functions and in-house application management, as well as simplifying and accelerating the creation of new or updating in-house applications related to new information requirements of the company. It was found that the SOMA framework can also be employed as a reference for companies developing future applications with SOA basics. Doi: 10.28991/ESJ-2023-07-02-011 Full Text: PDF
... In this case, the adoption of a service oriented approach allows to offer data products as services. Exploiting the well established service orientation principles defined by Erl [7], a data product is designed to be consumed by a class of consumers which are interested in different aspects of the data that is managed in that product. Although this could facilitate the initial engagement between the data provider and consumer, unlike the usual service provisioning, the data that can be shared must be properly tailored with respect to the real needs and rights that the consumer has. ...
... An FDP is, therefore, an architectural element designed for sharing the data it contains. Inspired by the principles of service orientation [7], this element must also be loosely coupled and reusable. About the former principle, it is expected that the lifecycle of the FDP is as much as possible independent of its consumer. ...
Chapter
Data sharing between organizations is becoming an ever-increasing necessity. Data sharing allows organizations to improve business processes that depend on what happens in other organizations, just as having data from other organizations can enrich data analysis models. However, even though data is seen as the new oil, it does not move like oil. There are several technical and organizational factors that make data sharing difficult. In this work, inspired by the definition of friction in physics, we want to provide a first friction model that is able to capture the elements that hinder data sharing. The proposed model hypothesizes that through the adoption of data mesh in conjunction with a service-oriented sharing approach, we can utilize this model to reduce and reuse the effort for sharing data.
... Our use of the words: composition and orchestration stems from their usage in serviceoriented architectures (SoA) in the past. Composition refers to a "composite relationship between a collection of services" (Erl 2005). While orchestration refers to "a centrally controlled set of workflow logic facilitates interoperability between two or more different applications" (Erl 2005). ...
... Composition refers to a "composite relationship between a collection of services" (Erl 2005). While orchestration refers to "a centrally controlled set of workflow logic facilitates interoperability between two or more different applications" (Erl 2005). ...
Article
Full-text available
Software design patterns present general code solutions to common software design problems. Modern software systems rely heavily on containers for running their constituent service components. Yet, despite the prevalence of ready-to-use Docker service images ready to participate in multi-container service compositions of applications, developers do not have much guidance on how to compose their own Docker service orchestrations. Thus in this work, we curate a dataset of successful projects that employ Docker Compose as an orchestration tool to run multiple service containers; then, we engage in qualitative and quantitative analysis of Docker Compose configurations. The collection of data and analysis enables the identification and naming of repeating multi-container composition patterns that are used in numerous successful open-source projects, much like software design patterns. These patterns highlight how software systems are orchestrated in the real-world and can give examples to anybody wishing to compose their own service orchestrations. These contributions also advance empirical research in software engineering patterns as evidence is provided about how Docker Compose is used.
... Multi-layered and service-oriented [4] software architectures, domaindriven design approach with its modifications [1][2][3], SOLID principles [5], TDD [6] and BDD [7] approaches can be seen as an answer to the question mentioned above. But the implementing of such approaches results in dozens of huge projects with hundreds and even thousands of classes and sophisticated testing infrastructure necessary to support continuous refactoring of the system. ...
... As we can see in Fig. 6, the effect achieved after the implementation of the first functions using the generator. 4. During the modification of already existing components, the use of the generator also proved to be effective (unfortunately, we cannot provide an adequate comparison of the time and effort required in the case of modification with and without the use of the generator). ...
Article
Full-text available
Annotation. The work is devoted to specific of frame-based approach application for information systems development. Three-layered generator provided to make the process of multi-layered information systems development more effective and robust. The results of its application in the context of building more flexible and robust, testable and maintainable software are also discussed.
... Partial mirroring requires a more modularized and integrated IT architecture that enables communication across expert domains (Colfer and Baldwin, 2016) through modular interfaces (Ghazawneh and Henfridsson, 2013). In such cases, organizations can gradually reach a more service-oriented architecture (Erl, 2005). ...
... By process layer, we address logistics, information flow, and digital exchange of patient records (Øvrelid and Kempton, 2019). Second, modularizing the architecture implies rearranging the software to become service-oriented (Erl, 2005). Three-layer silo systems with few interfaces do not encourage efficient information flow (Ross et al., 2019). ...
Article
Full-text available
Digital transformation is demanding for incumbent organizations such as healthcare, where legacy-based IT architectures challenge the establishment of effective digital services. We refer to this as the IT silo problem, where multiple non-consolidated IT systems are implemented to support expert practices. In this paper, we analyze this challenge using a mirroring lens. Our research question is, how can we create efficient digital services, utilizing the existing legacy systems in healthcare IT architectures? Our empirical evidence comes from a Norwegian case and contributes to the literature on IT architecture within Healthcare. First, we demonstrate how strict mirroring leading to sub-optimization and silofication is a major cause for the presence of IT silos. Second, we describe a process towards adaptive mirroring, and the resulting adaptive mirroring architecture. Adaptive mirroring is an architectural combinatory device that facilitates the design and use of efficient services, while also improving the flexibility of IT architectures.
... There is a broad 147 market of WFMSs that focus on particular niches, prompting practitioners to re-assess the 148 requirements for each project as market demands shift. Microservice architecture originated from SOA, which was introduced by IBM in the 151 mid-1990s [15]. Following the increase in popularity of SOA, the Organization for the 152 Figure 2. The workflow reference model, adapted from [11]. ...
... Microservice architecture originated from SOA, which was introduced by IBM in the mid-1990s [15]. Following the increase in popularity of SOA, the Organization for the Advancement of Structured Information Standards (OASIS) created the SOA reference model (SOA-RM) [16] to standardize its concepts in a common vocabulary. ...
Article
Full-text available
In an era ruled by data and information, engineers need new tools to cope with the increased complexity of industrial operations. New architectural models for industry enable open communication environments, where workflows can play a major role in providing flexible and dynamic interactions between systems. Workflows help engineers maintain precise control over their factory equipment and Information Technology (IT) services, from the initial design stages to plant operations. The current application of workflows departs from the classic business workflows that focus on office automation systems in favor of a manufacturing-oriented approach that involves direct interaction with cyber-physical systems (CPSs) on the shop floor. This paper identifies relevant industry-related challenges that hinder the adoption of workflow technology, which are classified within the context of a cohesive workflow lifecycle. The classification compares the various workflow management solutions and systems used to monitor and execute workflows. These solutions have been developed alongside the Eclipse Arrowhead framework, which provides a common infrastructure for designing systems according to the microservice architectural principles. This paper investigates and compares various solutions for workflow management and execution in light of the associated industrial requirements. Further, it compares various microservice-based approaches and their implementation. The objective is to support industrial stakeholders in their decision-making with regard to choosing among workflow management solutions.
... objects that implement specific transactions, repositories, etc.). In our opinion, providing of Transaction layer does not mean that all DB-oriented operations should be passed through that layer, simple operations can be performed by the repositories without any transaction mechanisms engagement and it differs provided approach from the approach of SOA Entity services [4]. From the DDD (domain-driven design) point of view, it can be considered as a service responsible for transaction processing. ...
... It is suggested that RegisterBookUseCase depends on transaction which involves two repositories (IDeliveryRepository and IBookRepository) and a component responsible for logging transactional operations (ILogger). In this situation, according to [4], transactional logic processing will be the responsibility of the use case component. To change the transactional logic mechanism means to change each component it uses (e.g. to use TransactionScope instead of IDbTransaction). ...
Article
Full-text available
The given work is devoted to the task of transactional business logic design. Additional layer responsible for transaction processing is introduced to make the architecture of the system more flexible and robust, testable and maintainable.
... Theoretical Approaches to Platform Engineering Platform engineering involves several key theoretical concepts that guide the development and operation of robust software platforms: Service-Oriented Architecture (SOA): SOA is a foundational theory in platform engineering, emphasizing the importance of designing applications as a collection of services that can be independently developed, deployed, managed, and reused. This approach enhances flexibility and scalability, essential for dynamic business environments (Erl, 2005). DevOps Practices: DevOps integrates development and operations teams to enhance collaboration and increase efficiency in the software development lifecycle. ...
Article
Full-text available
In the rapidly evolving landscape of software development, small organizations face unique challenges in implementing scalable and efficient systems. This paper presents a detailed examination of platform engineering tools, focusing on identifying an optimal architecture tailored to the specific needs of small enterprises. Through a comparative analysis, we explore various Platform as a Service (PaaS) offerings and internal portal development tools, which are pivotal in constructing adaptable and manageable platforms. The study begins by delineating the core attributes of platform engineering that are most relevant to small organizations, including scalability, cost-effectiveness, ease of integration, and maintainability. We evaluate several leading platform engineering tools by setting up criteria that gauge their performance in real-world scenarios pertinent to small-scale operations. The paper further delves into case studies where these tools have been deployed successfully within small enterprises, providing insights into their practical applications and limitations. Moreover, we propose a novel architectural framework that integrates the strengths of selected platform engineering tools while addressing common limitations faced by small organizations. This framework is designed to support continuous development and operational processes in a streamlined manner, thus enhancing productivity and reducing overhead costs. The findings suggest that a well-structured platform engineering approach, combined with the strategic use of PaaS, can significantly empower small organizations by providing them with the agility needed to respond to dynamic market conditions and technological advancements. The proposed architecture not only facilitates robust system design but also ensures scalability and economic viability, making it a cornerstone for sustainable growth in a competitive environment. A Comparative Study of Platform Engineering Tools: Implications for System Design and Scalability https://iaeme.com/Home/journal/IJDO 42 editor@iaeme.com This paper aims to contribute to the discourse on platform engineering by offering a comprehensive guide that assists small organizations in making informed decisions regarding technology investments and architectural choices, ultimately leading to enhanced operational efficiency and innovation.
... Therefore, we have decided to use a multiple case design rather than focus on a single case. [11] We examine how agents and SOA work together effectively in Supply Chain management (SCM ). SCM is a dynamic application program and therefore M ulti-Agent System technology (MAS) finds excellent application in SCM . ...
Research
Full-text available
To make information sharing across organizational departments and information systems more effective , new technologies and architectures have emerged that provide a platform for integration. These integrating technologies use standardized protocols and data formats for sharing and exchange of information. Service-oriented architecture is an important new paradigm that supports modularized implementation of solutions. These architectures are particularly applicable when multiple applications running on varied technologies and platforms have to communicate with each other. A clear plan and company-specific standards are key prerequisites and this will ensure a systematic implementation of such architecture across enterprise. M ultiagent system, Service Oriented Architecture and Supply Chain management are combined as major components of M ASSOASCM. MASSOASCM model is designed and it is established how it works in a manufacturing unit. It has been argued how it reduces time of implementation, cost and managing inventory which is the major concern of any industry. Intention of our work is to develop a supply chain management application based on M AS and SOA and build a model how it can help improve SCM performance in a manufacturing unit. The Supply Chain Management application consists of three different services i.e. M AS, SOA and SCM. These services are designed, integrated and architected separately and brought them together using M AS and SOA technologies.
... An important concern in Service Oriented Architecture (SOA) [9] is to extract the business processes from the application code and orchestrate the business process grounded on services. When multiple organisations are involved in the same business process, we talk about choreography. ...
Article
Full-text available
The objective of this paper is to present the software architecture used for the OPERANDO privacy platform, funded by the European Union in a Horizon 2020 project. For integration, OPERANDO is using SwarmESB, an open source Enterprise Service Bus (ESB) based on executable choreographies. In this paper we are presenting the concept of service transformations, presented as a bridge between the world of REST web services and the world of services implemented with executable choreogra-phies. These transformations are improving the heterogeneity aspects when we are analysing SwarmESB as a distributed system. Five types of transformations that have been analysed and implemented as open source software have been integrated. This proposal is shaped around a common language capable of expressing all these five transformation types we have identified working for OPERANDO. Therefore, the Domain Specific Language proposed , renders the essential elements for transformations among functions, web services and executable choreographies. This unification will trigger a quantitative effect on the productivity of the teams creating or integrating web services in a federated service bus environment which is a key architectural component in the future Internet-of-Things and cloud systems.
... Thus, driver adapter uses a driver port interface converting a specific component request into an agnostic request to a driver port. On the other hand, service-oriented architecture (SOA) [5] is based on the same principles as domain-driven approaches but used for enterprise integration systems development. Structurally, services are divided into three basic layers (instead of two basic layers used in domain-driven approaches): ...
Article
Full-text available
The work is devoted to business logic layer construction using Clean Architecture as a foundation. Additional layer of Activities is introduced to make Clean Architecture more effective for business-process oriented domain modeling, making software more flexible and robust, testable and maintainable.
... Business domain End-user domain The SOA reference architecture was first introduced in [12], and then was adopted and integrated by many standardization bodies such as OASIS, OMG, The Open Group (http://www.opengroup.org/onlinepubs/7699909399/toc.pdf, accessed on 10 July 2020). ...
Article
Full-text available
Service-oriented computing has become a popular area of research, with a particular focus on service composition. There have been many developments in this field, such as new techniques for data engineering in service description languages, protocols for publication and discovery, the optimization of service selection and scheduling, and the deployment and monitoring of composed services. However, this diversity of approaches and methodologies can make it challenging to navigate between different proposed solutions and identify research gaps. In order to provide a clearer understanding of this body of work, this paper presents a comprehensive framework for the taxonomy of service composition approaches, methodologies, and tools. This framework proposes a structured view of different perspectives, such as formal, semantic, and automatic approaches, with a particular focus on the end-user’s perspective and tools such as Mashups.
... SOA itself is based on open standards and can be implemented piecemeal, but many organizations opt for the Enterprise Service Bus (ESB). For more information, see Erl, 2005. ...
... Service-oriented manufacturing approved the concept of a service-oriented architecture (SOA) with purpose of employing combined and standard access to heterogeneous computer aided design/process planning/engineering/manufacturing (Cax) software in IT-base manufacturing stated (Erl, 2005). ...
... 2.2.5. Arquitectura Orientada a Servicios/Service-Oriented Architecture (SOA) De acuerdo a lo manifestado por Erl Thomas, una arquitectura orientada a servicios (SOA) se debe entender como un conjunto de componentes, conectores, limitadores de composición, contenedores y configuraciones, que se unen de cierta manera para resolver problemas de arquitectura de software, los cuales a su vez intentan resolver problemas complejos de la realidad [11]. La arquitectura SOA separa los procesos de negocio de las funciones automatizadas y organiza estas últimas en módulos individuales catalogados en un diccionario de servicios que permiten su utilización por parte de toda la organización. ...
Article
Full-text available
This article describes the proposal to generate an information system based on a web environment for the control of the Electronic Curriculum Vitae of the teaching staff of the Faculty of Business Campus IV of the Autonomous University of Chiapas, for the purpose of concentrating labor and productivity data academic staff of the teaching staff who teach subjects in the educational programs offered by the educational institution, which are periodically evaluated by accrediting bodies; Likewise, this information system contemplates the generation of personalized statistical reports that contribute to the decision-making of managers. To develop the aforementioned system, web engineering techniques and methodologies based on a service-oriented architecture were used. The resulting technological solution offers a responsive graphical user interface to adapt to the resolution of various computer equipment and mobile devices, for this, the progressive framework Vue.js derived from the JavaScript language and the PrimeVue user interface component library were used. Regarding the construction of the Service API (REST API), that is, the server-side programming, the Codeigniter open-source framework was used based on the PHP language and as a MySQL database manager.
... Basically, Internet of Thing concept combines all health platforms (hospitals, rehabilitation centers, medical personnel, ambulances) with patients or users through the internet. According to [6], Service Oriented Architecture (SOA) is a service-oriented approach in the system development. By definition, SOA is different with web services, which means that SOA does not equal with web services. ...
Article
Full-text available
The progress of information system in health sector has provided benefits in health service. Indonesia as one of the most densely populated countries in the world is in dire need of adequate health service. Various demographic, geographical, and economic conditions lead to incomprehensive health service potentials. This research is to propose integration concept for the existing health service platforms in Indonesia based on SOA (Service Oriented Architecture). The Smart healthcare system integration is called MedicForMe. This research was conducted using Systematic Literature Review (SLR) method with the results of research in the form of a rich picture concept, a SOA layer diagram consisted of 8 services including: hospital, pharmacy, health ministry, delivery service, payment gateway, online healthcare platform, location mapping, and insurance
... SOA is not associated with a particular technology, but rather towards an approach to the development of modular software. [3] As explained above, service-oriented is an approach that solves big problems by dividing them into small sets of services to deal with specific problems. ...
Article
Full-text available
One of the problems experienced by big cities in Indonesia is rubbish. At present the community must pay for the cost of rubbish, whereas rubbish can be useful and profitable if managed properly. One way to manage waste properly is to save waste at the Trash Bank. At present there are already several garbage banks established, but the garbage banks that have been run are not yet optimal, not all people use these facilities. Lack of knowledge and infrastructure facilities hamper the waste management process at the garbage bank. Therefore, the authors propose the concept of an integrated system based on service oriented architecture (SOA) to integrate garbage pickup services, banks, garbage banks, cooperatives, gas, electricity, cable tv, public relations, e-commerce and health insurance as a means of supporting infrastructure to support waste management. The method in this study uses Systematic Literature Review (SLR). The results of this study are in the form of a waste management application design: Go-Waste which integrates waste pick-up service, banks, garbage banks, cooperatives, gas, electricity, cable tv, public relations, e-commerce and health insurance in one platform using a service oriented architecture (SOA).
... Por fim, o cliente efetua uma invocação ao provedor do serviço (operação invocar) [de Mello et al. 2006]. [Erl 2006] apresenta uma série de princípios que os serviços devem atender: ...
... In [6], E. Thomas discusses concepts, technology, and design behind Service-oriented architectures. This strongly lays theoretical foundation for the study of SOAs as specially as an ecosystemto be coupled with heterogeneous environments like NGNs. ...
... Up to now, there is still not a definition of SOA that is universally accepted, but some are popular in the industry. According to Erl, SOA represents an open, agile, extensible, federated, and composable architecture, consisting of self-contained, high-quality, interoperable, discoverable, and potentially reusable services [30]. In our previous work, the concept of service-oriented advanced avionics architecture was put forward, and service components and management framework of SOA in avionics systems were defined [31]. ...
Article
Full-text available
The modeling method of agents and service-oriented architecture (SOA) in avionics systems describes agents and SOA in avionics systems with models. To our knowledge, however, the current modeling methods cannot describe the behavior of agents and SOA accurately and do not fit well with the existing avionics system models. This paper addresses the above problems by presenting a modeling method based on architecture analysis and design language (AADL). In this method, the working states of agents are described by the mode components, with the working process being triggered by the input of agents; and the services are described by the process component. The application of the software system is described by the system components that contain several process components. Moreover, different modes of the system are used to describe different applications, and the transitions of application are triggered by specific application requests. Software architecture of an avionics system is modeled by the proposed method. This case demonstrates that the proposed method can accurately describe how agents and SOA work in a new way and fit well with the existing avionics system models.
... There are several definitions about Service Oriented Architecture, nevertheless, all of them agree that it is a paradigm which improves flexibility in systems [22]. An adequate SOA definition is a software architecture based on services, which are loosely coupled software components that can be orchestrated to increase business agility [17]. This concept helps us to understand that Services Oriented Architecture brings some advantages, such as reliability, scalability, reusability, loosely coupled, easy maintenance, among others. ...
Chapter
During the end of 2017, the systems developed by policemen in the Intelligence Department of São Paulo State Military Police were outdated in technology and did not follow any kind of pattern, neither had integration with services, databases and other systems, being very difficult to maintain. However, this kind of system could not be abandoned, because they were important in the organization. Thus, the managers of the Intelligence Department understood the need for modernization of architecture and system technologies. There are some approaches that can be chosen in this evolution process. A difficult question to be answered is related to which path is better to be followed in this process of system migration, mainly about the choosing of monolithic or microservices architecture. Although the microservice architecture is modern, it is not so easy to be implemented directly in a legacy system evolution process, because it depends on a strong domain of businesses areas and technology, which makes it difficult to involve of beginners developers. In this paper, we reported an experience about migrating a legacy system used in Intelligence Department of Sao Paulo State Military Police to a microservice-based architecture by re-engineering the legacy system as a monolith first and then decomposing it to microservices. We realized that microservices did not necessarily had to be adopted in the first place, but it could be a natural consequence of evolution, using a monolithic approach in the beginning. This process may also help the development team to improve their knowledge about the adopting of new technologies, architectures and better understanding of business.KeywordsMonolithicMicroserviceLegacy systemArchitecture migrationSoftware design tradeoffs
... To achieve an effective solution at the organizational level, it is necessary to implement an architecture that is sufficiently adaptive to multiple contexts and that has an iterative maturity process for its continuous improvement. The appearance of service-oriented architecture (SOA) has solved the aforementioned problems, since they aim to integrate heterogeneous systems with technologies of different types (Erl, 1900). Service-oriented architecture (SOA) can be considered as an enterprise-scale IT architecture that seeks to connect each of the services by articulating it to the business objectives, seeking alignment to the organization's business processes and objectives (Arsanjani, 2004). ...
Article
Full-text available
The adaptation of traditional systems to service-oriented architectures is very frequent, due to the increase in technologies for this type of architecture. This has led to the construction of frameworks or methodologies for adapting computational projects to service-oriented architecture (SOA) technology. In this work, a framework for adaptation to SOA in an educational organization is presented, through a specific case of adaptation of an autonomous recommendation system. The framework has a business model that extracts the specific needs of the organization and that will help to project the service architecture from an administrative perspective for a generation of value. The framework has components that conform to the organizational governance of Information Technology (IT) linked to the control mechanisms managed by any IT government of the organization. Finally, the framework has a self-management process that integrates intelligent mechanisms or paradigms for any autonomous process that manages the SOA. In general, the framework describes a methodological process of four general phases, allowing to identify requirements, design services, develop them, and deploy them in an organization, to be managed through control mechanisms through governance. The framework was tested in the adaptation of an autonomous recommendation system for virtual learning environments (VLE), which has two main processes, the creation of an academic course and the use of the course.
Chapter
Full-text available
The Ernst Denert Award is already existing since 1992, which does not only honor the award winners but also the software engineering field in total. Software engineering is a vivid and intensively extending field that regularly spawns new subfields such as automotive software engineering , research software engineering , or quantum software engineering , covering specific needs but also generalizing solutions, methods, and techniques when they become applicable. This is the introductory chapter of the book on the Ernst Denert Software Engineering Award 2022. It provides an overview of the five nominated PhD theses.
Thesis
Full-text available
Este trabajo profundiza en la Inteligencia Artificial (IA) aplicada a la ciberseguridad, cubriendo temáticas desde ataques informáticos hasta su respectiva prevención mediante herramientas de IA. Enfatiza la importancia del aprendizaje automático (ML) en la seguridad de la nube, incluyendo técnicas como XGBoost y máquinas de vectores de soporte (SVM). Analiza también herramientas de IA específicas para la detección de anomalías, análisis de malware, autenticación de usuarios, protección de datos y generación de reglas de seguridad. El estudio se enfoca también en el ELK Stack para el procesamiento y altos volúmenes de datos, resaltando su integración con IA y ML. También se ha abordado el Lenguaje Natural (NLP) en ciberseguridad, destacando clasificadores avanzados y modelos como DistilBert y GPT de OpenAI. Concluye con un análisis de la aplicación de IA en la seguridad de la nube, abordando herramientas en AWS detallando sus capacidades actuales de protección de la ciber seguridad.
Chapter
Most developers consider that microservice-based application design and development can improve scalability and maintainability. The microservices are developed as small independent modules and deployed in containers. The containers are deployed in virtual machines (VMs), which in turn run in hosts. Effective consolidation of the service requests to the containers may reduce the number of active hosts in a cloud environment, resulting in lesser power consumption of the cloud data centers. This research aims to maximize the resource utilization of the hosts by effectively allocating the containers to the VMs and VMs to the hosts. In this scheduling, a few additional containers and VMs are kept in the available resource pool so that during peak demand for services, the users get their service at the earliest (preferably without any delay). This paper presents a heuristic algorithm for microservice allocation in a containerized cloud environment to achieve these objectives. The performance of the proposed algorithm is validated and justified through the extensive experimental results. We have compared the performance of the proposed technique with the existing state-of-the-art. The number of container deployments in the proposed policy is reduced by 12.2–17.36% compared to the Spread policy and 6.13–10.57% compared to First-Fit and Best-Fit policies.
Chapter
The rapid evolution of software development practices has led to the emergence of serverless and microservices architectures. These modern approaches offer various benefits, such as improved scalability, flexibility, and cost efficiency. This paper comprehensively analyses the benefits, risks, applications, and decision criteria for adopting serverless and microservices architectures. It highlights the key factors to consider when deciding to transition to these architectures and presents a range of use cases and applications where they can be effectively employed. By understanding the nuances and potential challenges associated with serverless and microservices, organizations can make informed decisions to optimize their software development processes and better meet the needs of their users.
Chapter
Modeling is the designing of software applications before coding according to the object-oriented groups where under the model-based software design and development, software modeling and design are used as an important and mandatory part of the software development process. Software models are methods of expressing a software design. Basically, some sort of abstract language or pictures are used to express the software design under modeling. For object-oriented software, an object modeling language such as UML and many more are used to develop and express the software design. Also, the design model is based on the analysis and architectural essentials of the system. It denotes the application components and determines their appropriate placement and use within the overall architecture.
Chapter
The exponential increase in construction costs and the demands of clients highlight the need to improve the efficiency of the construction process. This chapter presents a management model that integrates different paradigms and technologies from the field of construction management such as Lean Construction, with emerging technologies associated with other fields such as Business Process Management (BPM) and Service Oriented Architecture (SOA). The integration of these solutions will allow an improvement in the management of the construction work, in relation to quality, avoiding delays in project construction delivery time and deviation of costs. Furthermore, through the integration of the Last Planner System (LPS), as a Lean Construction tool, into the management model, it is achieved a reduction in the impact caused by unforeseen events in the planning of works. The use of BPM and SOA will allow the automation of control and management processes, integrating all participants and facilitating the availability of real and updated information on all construction tasks.KeywordsConstruction managementLean constructionBusiness process managementBPMLast planner system
Conference Paper
Full-text available
Abstract: In the current era all the technologies are using the concepts of IOT (Internet of things) with different sensors as per their usage to make human work and lifestyle much easier. Due to more demand for the success ratio of IOT in recent years, every industry is developing the task which is based on the internet of things. Further different sensors with other sensing environments can produce huge amounts of data. In which requiring much scale storage that can be costly, which led to exploiting the scalability in cloud resources to achieve the best practice with low cost, so to store large amounts of data solutions to handle and manage it smoothly cloud resources are used. Cloud service usage can make billing systems cheaper, and one can use the term "pay as you go", adding cloud computing resources to the IOT environment allow users to access the whole platform any time anywhere, involving cloud computing services to IOT system will definitely leads to much easier remoting system considering also the privacy and security offered by cloud computing platform which will take as benefits to the system. This paper will represent a platform consisting of an IOT (internet of things) sensing environment which will have sensors and actuators only based on cloud services for data storing and processing. Even different reviews will be discussing the impact done by the platform and its pros and cons of the platform. Keywords: Cloud Computing, IOT (Internet of Things), Sensors, Data Storage, Virtual Machine
Thesis
Hate speech is one of the most challenging problem internet is facing today. This research examine hate speech detection problem in form of Indonesian language. Millions of comments and text posts are added to various social media and discussion platforms. Manual classification of them as hate speech and offensive language is an impossible task. This research use LSTM for the method of classifying hate speech and abusive language. The best accuracy so far is 79,32% by using 200 neurons combined with Bi-LSTM. We also use word2vec for feature extraction such as CBOW and Skipgrams that was also compared with One Hot Encoding. Most common challenges are different languages, out of vocabulary words, long range dependencies and many more.
Chapter
Full-text available
As anxiety becomes increasingly prevalent among youths especially university students, early prevention via anxiety disorder profiling is crucial. Nevertheless, most screening tools to date are not automated, labour-intensive and time-consuming. Mental health detection in online social networks (OSNs) using artificial intelligence (AI) can provide means for capturing overlooked behavioural attributes, but few are centred around anxiety detection. Internet of Things (IoT)’s increasing popularity enables bio-signals monitoring to aid in mental health care. However, minimum research has been devoted to IoT-based assistive technologies for anxiety, which currently are only used by individuals already diagnosed and actively monitored. This study proposes a novel approach to anticipatory anxiety detection for Malaysian university students aged between 18 and 25 inclusive as an early notification system using AI and IoT for bilingual Malay and English tweets and vital signs analysis respectively. Our result shows that Logistic Regression with Bag-of-Words (BoW) is the overall best performing model with 81.06% accuracy. The Arduino smartwatch sensor readings from the MAX30102 pulse oximeter sensor are used to determine different body conditions using a rule-based approach. The comparison test result between the prototype and conventional measuring devices shows the prototype’s ability to accurately distinguish vital signs with a relatively low Mean Absolute Percent Error (MAPE) rate of 10.92% and 1.51% for pulse rate and temperature respectively. Together, our proof-of-concept results indicate the potential of AI and IoT in deriving new measures of anxiety, by analysing social data combined with bio-signals monitoring to alert users regarding their anxiety state.KeywordsAnxietyTwitterMachine learningEmotion detectionArduinoSmartwatchInternet of ThingsWearables
Chapter
As an architectural style, service-oriented architecture (SOA) improves the efficiency of developing information systems and enables a rapid response to ever-changing business needs. SOA adoption is a complex process, with different levels of maturity that require know-how in terms of practices. Organizations require methods to engineer services and redesign the existing business processes. The business processes have to be managed in real-time to provide better services. A business process is composed of one or more individual services. Besides the business process composition steps, various supporting activities are required to realize business process services. This research explores methods or a part of the method which supports the organization to achieve the promised benefits of SOA. This paper also discusses the future research directions in the context of adopting SOA to provide heterogeneous IoT services and automated business processes using blockchain technologies.KeywordsSOAMethod CompositionMethod fragmentService discoveryService selectionService negotiationChange managementService monitoringService measuring
Article
Full-text available
Development of government IT integrated enterprise architecture models of public services using enterprise architecture framework TOGAF ADM, is expected to formulate development of enterprise architecture / IT fully integrated services include public information, applications and infrastructure, with SOA-BPM approach. Once the architecture / IT integrated public services with TOGAF ADM successfully completed then implementation approach using SOA-BPM, to connect the various stakeholders in integrated public services to do web development and web service identity card payment service. The main system integrated public services applications developed using Oracle SOA-BPM BPMS version 11gR1 with BPMN 2.0 tools, all matters relating to the integrated system of roles (the roles in the system), user interfaces, business rules engine, a variety of conditions gateways, file components adapters and so forth, the application is compiled using Oracle JDeveloper, uploaded (deployment) to the SOA-BPM Oracle Weblogic Server. Finally collaboration and synergy, Development of Government IT Services Planning using TOGAF ADM and implementation using SOA-BPM with BPMN 2.0 can be realized.
Thesis
Full-text available
Business collaboration defined as working together to achieve a common goal, is suitably specified in terms of where collaboration takes place (context), those who are involved (contributors), what they do both individually (skills) and collectively (production processes), and finally, what is the expected purpose of this collaboration (business goal). We assume a clear separation between skills and effective contribution to collaboration (i.e role). Technically, a context can the be defined by the set of roles involved, offering a formal basis for reasoning. Considering business collaborative processes, involved contributor’s behaviors set is similar to a software components, possibly abstracted as role i.e services or group of services provided with their production rules. A collaborative context is then viewed as a user-centered service oriented architecture where every stakeholder could be assigned one or more roles. We address the problem of a formal design approach for such business collaboration processes in that context, facing components reuse and process management challenges as unambiguously describing business roles, role composition and dynamic collaborative process management.
Article
Bagian Administrasi Akademik dan Kemahasiswaan (BAAK) merupakan salah satu unsur pelaksana administrasi Politeknik Statistika STIS dan memiliki tanggung jawab salah satunya layanan kemahasiswaan. Proses pelayananan di bagian kemahasiswaan masih dilakukan secara manual contohnya pada layanan Surat Permintaan Data (SPD) dan Surat Keterangan Mahasiswa (SKM). Permintaan layanan dilakukan melalui email atau langsung di ruang BAAK, proses pengulasan permintaan layanan tersebut belum terkomputerisasi sehingga rentan kesalahan dan tidak efisien serta progres persetujuan tidak termonitor oleh pengguna. Penelitian ini bertujuan untuk merancang dan membangun sistem informasi layanan kemahasiswaan berbasis web progresif dengan harapan mampu memenuhi kebutuhan proses bisnis kemahasiswaan BAAK. Pengembangan sistem informasi ini dilakukan menggunakan metode eXtreme Programming modifikasi dan RESTful MSOAM. Berdasarkan hasil evaluasi, diketahui bahwa sistem telah mengimplementasikan proses bisnis usulan layanan SPD dan SKM, telah memenuhi 90,77% kriteria penerimaan kebutuhan pengguna, memenuhi syarat PWA, dan memenuhi 4 prinsip inti service-orientation dan prinsip reusability.
Chapter
The advance of the Internet of Things (IoT) technology and the development of sensors have allowed transport services to apply the Intelligent Transport Systems (ITS). The use of object-to-object communications has led to large amounts of contextual data sets generated for ITS. This basic information must be handled to obtain context and to suggest services that can communicate with various types of trucks about traffic, accidents, forecasting, etc. Since 2014 researchers are paying more attention to the transport systems. It covers processes including routing, clients clustering, backhauling management, and scheduling. The author targets in this chapter to revise the use of context in ITS.KeywordsTransport systemRouting algorithmsClusteringCosts metricsBackhaulingSchedulingIntelligent Transport System
Chapter
Semantic web technologies and multi-agent system are expected to affect brokers’ role in freight transportation. Services provided by freight brokers can be seen as automated service composition problems. This problem is popular, and many research results published. Major elements of this problem are described and presented. The service composition in the freight domain resulted in multiple papers with a strong focus on optimization. By focusing on interoperability the ontology-based approach is taken and based on this baseline extensible solution architecture is presented.KeywordsWeb service compositionOntologyFreight forwardingFreight brokerageMulti-agent systemSoftware architecture
Chapter
Cyber-physical systems (CPS) have emerged to address the need for more efficient integration of modern advancement in cyber and wireless communications technologies such as 5G with physical objects. In addition, CPSs systems also needed to efficient control of security and privacy when we compare them with internet of things (IoT). In recent years, we experienced lack of security concerns with smart home IoT applications such as home security camera, etc. Therefore, this paper proposes a systematic software engineering framework for CPS and IoT systems. This paper also proposed a comprehensive requirements engineering framework for CPS-IoT applications which can also be specified using BPMN modelling and simulation to verify and validate CPS-IoT requirements with smart contracts. In this context, one of the key contribution of this paper is the innovative and generic requirements classification model for CPS-IoT application services, and this can also be applied to other emerging technologies such as fog, edge, cloud, and blockchain computing.
Chapter
Microservice Architecture (MSA) is an approach to implement scalable and maintainable software systems. However, when compared to monolithic applications, MSA adoption also increases architecture complexity significantly. To cope with this complexity, we investigate the application of Model-driven Engineering to MSA engineering and developed an ecosystem of architecture modeling languages (AMLs), which supports the holistic capturing of stakeholder concerns towards heterogeneous parts of a microservice architecture.This paper enriches our AML ecosystem with an extensible approach for generating adaptable microservice code and deployment specifications from MSA models. To this end, we first derive requirements for such an approach from MSA characteristics and present two compliant realizations. Next, we integrate the approach with our AML ecosystem by defining a process for MSA model construction and processing, and the manual adaptation of generated artifacts. We validate the effectiveness of our extended AML ecosystem with a case study from the Electromobility domain.KeywordsMicroservice ArchitectureModel-driven EngineeringArchitecture modeling languagesCode generation
Book
Information technology project management is a profession that is responsible for monitoring the process of planning, implementing and giving authority around the information technology goals of a company or organization. An IT project manager must be aware of the business guidelines associated with specific initiatives and allocate available resources based on those goals. Since many different people and teams are present in a project, the role of the information technology project manager is to carry out projects on time and allocate funds to different parts of a project and deliver a project quickly and on time.
Chapter
Cyber-physical systems are the technical foundation of our modern world. They combine a cyber-part (software-based computer control) and a physical part (real system, such as a car, an airplane, and a cardiac pacemaker). These software-controlled systems allow nearly unlimited functionality, flexible functional changes, and cost-effective development and implementation.
Chapter
Security principles form the foundation for the creation and operation of security-critical cyber-physical systems. They have their roots in theoretical work and long-standing, proven practical experience. Security principles are a proven and tested way to teach, enforce, and implement secure systems.
ResearchGate has not been able to resolve any references for this publication.