275,065 research outputs found
Semantic derivation of enterprise information architecture from riva-based business process architecture
Contemporary Enterprise Information Architecture (EIA) design practice in the industry still suffers from issues that hamper the investment in the EIA design. First and foremost of these issues is the shortcoming of EIA design research to bridge the gap between business and systems (or information) architectures. Secondly, contemporary developed business process architecture methods, and in particular object-based ones have not been fully exploited for EIA design and thus widening the gap between business processes and systems. In practice, knowledge-driven approaches have been thoroughly influencing EIA design. Thirdly, the lack of using knowledge representation methods adversely affected the automation (or semi-automation) of the EIA design process. Software Engineering (SE) technologies and Knowledge Representation using ontologies continue to prove instrumental in the design of domain knowledge. Finally, current EIA development methods have often resulted in complex designs that hampered both adopting and exploiting EIA in medium to large scale organisations.This research is aimed at investigating the derivation of the EIA from a given semantic representation of object-based Business Process Architecture (BPA), and in particular Riva-based BPA using the design science research-based methodology. The key design artefact of this research is the development of the BPAOntoEIA framework that semantically derives EIA from a semantic representation of Riva-based BPA of an enterprise. In this framework, EIA elements were derived from the semantic Riva BPA elements and associated business process models, with forward and backward traceability from/to the derived EIA to/from the original BPA. The BPAOntoEIA framework has been evaluated using the semantic Cancer Care and Registration BPA in Jordan. This framework has been validated using an authentic concern-based evaluation framework employing both static and dynamic validation approaches.The BPAOntoEIA framework contributes to bridging the gap between the business and systems world by providing a business/IT alignment through the EIA derivation process, and using the semantic knowledge of business processes within the resultant EIA. A major novel contribution is the introduction of new evaluation metrics for EIA design, which are quantitative, and are not only indicative of the quality of the semantic EIA derivation from the associated BPA but also the extent of utilisingbusiness process knowledge and traceability amongst EIA elements.Amongst other novel contributions is the semantic EIA derivation process that comprises a suite of the Semantic Web Rules Language (SWRL) rules applied on the semantic BPA elements. The derivation scheme utilises the generic EIA (gEIAOnt) ontology that was developed in this research and represents a semantic meta-model of EIA elements of a generic enterprise. The resultant EIA provides a highly coherent semantic information model that is in-line with the theory of EIA design, semantically enriched, and fully utilises the semantic knowledge of business processes.Benefits of this research to industry include the semantic EIA derivation process and a resultant information model that utilises the semantic information of business processes in the enterprise. Therefore, this enables the enterprise strategic management to plan for a single, secure and accessible information resource that is business process driven, and enabled in an agile environment. The semantic enrichment of the EIA is a starting point for a simplistic design of a domain-independent semantic enterprise architecture for the development of systems of systems in loosely coupled enterprises
Quality-aware model-driven service engineering
Service engineering and service-oriented architecture as an integration and platform technology is a recent approach to software systems integration. Quality aspects
ranging from interoperability to maintainability to performance are of central importance for the integration of heterogeneous, distributed service-based systems. Architecture models can substantially influence quality attributes of the implemented software systems. Besides the benefits of explicit architectures on maintainability and reuse, architectural constraints such as styles, reference architectures and architectural patterns can influence observable software properties such as performance. Empirical performance evaluation is a process of measuring and evaluating the performance of implemented software. We present an approach for addressing the quality of services and service-based systems at the model-level in the context of model-driven service engineering. The focus on architecture-level models is a consequence of the black-box
character of services
A Framework for Evaluating Model-Driven Self-adaptive Software Systems
In the last few years, Model Driven Development (MDD), Component-based
Software Development (CBSD), and context-oriented software have become
interesting alternatives for the design and construction of self-adaptive
software systems. In general, the ultimate goal of these technologies is to be
able to reduce development costs and effort, while improving the modularity,
flexibility, adaptability, and reliability of software systems. An analysis of
these technologies shows them all to include the principle of the separation of
concerns, and their further integration is a key factor to obtaining
high-quality and self-adaptable software systems. Each technology identifies
different concerns and deals with them separately in order to specify the
design of the self-adaptive applications, and, at the same time, support
software with adaptability and context-awareness. This research studies the
development methodologies that employ the principles of model-driven
development in building self-adaptive software systems. To this aim, this
article proposes an evaluation framework for analysing and evaluating the
features of model-driven approaches and their ability to support software with
self-adaptability and dependability in highly dynamic contextual environment.
Such evaluation framework can facilitate the software developers on selecting a
development methodology that suits their software requirements and reduces the
development effort of building self-adaptive software systems. This study
highlights the major drawbacks of the propped model-driven approaches in the
related works, and emphasise on considering the volatile aspects of
self-adaptive software in the analysis, design and implementation phases of the
development methodologies. In addition, we argue that the development
methodologies should leave the selection of modelling languages and modelling
tools to the software developers.Comment: model-driven architecture, COP, AOP, component composition,
self-adaptive application, context oriented software developmen
Towards guidelines for building a business case and gathering evidence of software reference architectures in industry
Background: Software reference architectures are becoming widely adopted by organizations that need to support the design and maintenance of software applications of a shared domain. For organizations that plan to adopt this architecture-centric approach, it becomes fundamental to know the return on investment and to understand how software reference architectures are designed, maintained, and used. Unfortunately, there is little evidence-based support to help organizations with these challenges.
Methods: We have conducted action research in an industry-academia collaboration between the GESSI research group and everis, a multinational IT consulting firm based in Spain.
Results: The results from such collaboration are being packaged in order to create guidelines that could be used in similar contexts as the one of everis. The main result of this paper is the construction of empirically-grounded guidelines that support organizations to decide on the adoption of software reference architectures and to gather evidence to improve RA-related practices.
Conclusions: The created guidelines could be used by other organizations outside of our industry-academia collaboration. With this goal in mind, we describe the guidelines in detail for their use.Peer ReviewedPostprint (published version
Linking Quality Attributes and Constraints with Architectural Decisions
Quality attributes and constraints are among the main drivers of
architectural decision making. The quality attributes are improved or damaged
by the architectural decisions, while restrictions directly include or exclude
parts of the architecture (for example, the logical components or
technologies). We can determine the impact of a decision of architecture in
software quality, or which parts of the architecture are affected by a
constraint, but the difficult problem is whether we are respecting the quality
requirements (requirements on quality attributes) and constraints with all the
architectural decisions made. Currently, the common practice is that architects
use their own experience to design architectures that meet the quality
requirements and restrictions, but at the end, especially for the crucial
decisions, the architect has to deal with complex trade-offs between quality
attributes and juggle possible incompatibilities raised by the constraints. In
this paper we present Quark, a computer-aided method to support architects in
software architecture decision making
Microservice Transition and its Granularity Problem: A Systematic Mapping Study
Microservices have gained wide recognition and acceptance in software
industries as an emerging architectural style for autonomic, scalable, and more
reliable computing. The transition to microservices has been highly motivated
by the need for better alignment of technical design decisions with improving
value potentials of architectures. Despite microservices' popularity, research
still lacks disciplined understanding of transition and consensus on the
principles and activities underlying "micro-ing" architectures. In this paper,
we report on a systematic mapping study that consolidates various views,
approaches and activities that commonly assist in the transition to
microservices. The study aims to provide a better understanding of the
transition; it also contributes a working definition of the transition and
technical activities underlying it. We term the transition and technical
activities leading to microservice architectures as microservitization. We then
shed light on a fundamental problem of microservitization: microservice
granularity and reasoning about its adaptation as first-class entities. This
study reviews state-of-the-art and -practice related to reasoning about
microservice granularity; it reviews modelling approaches, aspects considered,
guidelines and processes used to reason about microservice granularity. This
study identifies opportunities for future research and development related to
reasoning about microservice granularity.Comment: 36 pages including references, 6 figures, and 3 table
Exploring Maintainability Assurance Research for Service- and Microservice-Based Systems: Directions and Differences
To ensure sustainable software maintenance and evolution, a diverse set of activities and concepts like metrics, change impact analysis, or antipattern detection can be used. Special maintainability assurance techniques have been proposed for service- and microservice-based systems, but it is difficult to get a comprehensive overview of this publication landscape. We therefore conducted a systematic literature review (SLR) to collect and categorize maintainability assurance approaches for service-oriented architecture (SOA) and microservices. Our search strategy led to the selection of 223 primary studies from 2007 to 2018 which we categorized with a threefold taxonomy: a) architectural (SOA, microservices, both), b) methodical (method or contribution of the study), and c) thematic (maintainability assurance subfield). We discuss the distribution among these categories and present different research directions as well as exemplary studies per thematic category. The primary finding of our SLR is that, while very few approaches have been suggested for microservices so far (24 of 223, ?11%), we identified several thematic categories where existing SOA techniques could be adapted for the maintainability assurance of microservices
Towards a Tool-based Development Methodology for Pervasive Computing Applications
Despite much progress, developing a pervasive computing application remains a
challenge because of a lack of conceptual frameworks and supporting tools. This
challenge involves coping with heterogeneous devices, overcoming the
intricacies of distributed systems technologies, working out an architecture
for the application, encoding it in a program, writing specific code to test
the application, and finally deploying it. This paper presents a design
language and a tool suite covering the development life-cycle of a pervasive
computing application. The design language allows to define a taxonomy of
area-specific building-blocks, abstracting over their heterogeneity. This
language also includes a layer to define the architecture of an application,
following an architectural pattern commonly used in the pervasive computing
domain. Our underlying methodology assigns roles to the stakeholders, providing
separation of concerns. Our tool suite includes a compiler that takes design
artifacts written in our language as input and generates a programming
framework that supports the subsequent development stages, namely
implementation, testing, and deployment. Our methodology has been applied on a
wide spectrum of areas. Based on these experiments, we assess our approach
through three criteria: expressiveness, usability, and productivity
A requirements engineering framework for integrated systems development for the construction industry
Computer Integrated Construction (CIC) systems are computer environments through which
collaborative working can be undertaken. Although many CIC systems have been developed to demonstrate the
communication and collaboration within the construction projects, the uptake of CICs by the industry is still
inadequate. This is mainly due to the fact that research methodologies of the CIC development projects are
incomplete to bridge the technology transfer gap. Therefore, defining comprehensive methodologies for the
development of these systems and their effective implementation on real construction projects is vital.
Requirements Engineering (RE) can contribute to the effective uptake of these systems because it drives the
systems development for the targeted audience. This paper proposes a requirements engineering approach for
industry driven CIC systems development. While some CIC systems are investigated to build a broad and deep
contextual knowledge in the area, the EU funded research project, DIVERCITY (Distributed Virtual Workspace
for Enhancing Communication within the Construction Industry), is analysed as the main case study project
because its requirements engineering approach has the potential to determine a framework for the adaptation of
requirements engineering in order to contribute towards the uptake of CIC systems
- âŠ