9,004 research outputs found
PuLSE-I: Deriving instances from a product line infrastructure
Reusing assets during application engineering promises to improve the efficiency of systems development. However, in order to benefit from reusable assets, application engineering processes must incorporate when and how to use the reusable assets during single system development. However, when and how to use a reusable asset depends on what types of reusable assets have been created.Product line engineering approaches produce a reusable infrastructure for a set of products. In this paper, we present the application engineering process associated with the PuLSE product line software engineering method - PuLSE-I. PuLSE-I details how single systems can be built efficiently from the reusable product line infrastructure built during the other PuLSE activities
Recommended from our members
Designing a consulting services architecture model
textDuring my years of experience in the technology industry, it has become obvious that standard processes and methodologies within the engineering discipline are at a mature state. The realization though is that software engineering specifically lags behind. Most software engineering methodologies that I have studied focus on the mission of software development. It is this realization and the need for structure that led me to review existing methodologies used within my company's software services organization. The definition of what a successful software services methodology entails is rather limited. This report will provide a history of existing software engineering methodologies that I have studied, describe an initial services method that was being developed within my organization, develop a new model that addresses previous shortcomings and identify additional components required to further define a strong software services-oriented delivery methodology.Electrical and Computer Engineerin
SOA and BPM, a Partnership for Successful Organizations
In order to stay effective and competitive, companies have to be able to adapt themselves to permanent market requirements, to improve constantly their business process, to act as flexible and proactive economic agents. To achieve these goals, the IT systems within the organization have to be standardized and integrated, in order to provide fast and reliable data access to users both inside and outside the company. A proper system architecture for integrating company’s IT assets is a service oriented one. A service-oriented architecture (SOA) is an IT architectural style that allows integration of the company’s business as linked, repeatable tasks called services. A subject closely related to SOA is Business Process Management (BPM), an approach that aims to improve business processes. The paper also presents some aspects of this topic, as well as the relationship between SOA and BPM. They complement each other and help companies improve their business performance.Information Systems, SOA, Web Services, BPM
Leading the Practice in Layered Enterprise Architecture
While Enterprise Architecture (EA) causes organisations to think,
work and model in domains, there are inadequacies in such a waterfall approach.
By restating domains as layers, i.e. LEAD (Layered Enterprise Architecture Design/
Development) based on the LEAD Enterprise Ontology, EA performs better
in enterprise layers and levels of abstraction. Through LEAD, the domain relationships
are also better captured, hence leading the advancement of agile EA
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
Software Product Line
The Software Product Line (SPL) is an emerging methodology for developing software products. Currently, there are two hot issues in the SPL: modelling and the analysis of the SPL. Variability modelling techniques have been developed to assist engineers in dealing with the complications of variability management. The principal goal of modelling variability techniques is to configure a successful software product by managing variability in domain-engineering. In other words, a good method for modelling variability is a prerequisite for a successful SPL. On the other hand, analysis of the SPL aids the extraction of useful information from the SPL and provides a control and planning strategy mechanism for engineers or experts. In addition, the analysis of the SPL provides a clear view for users. Moreover, it ensures the accuracy of the SPL. This book presents new techniques for modelling and new methods for SPL analysis
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
Toward Understanding Enterprise Architecture Management’s Role in Strategic Change: Antecedents, Processes, Outcomes
As organizations face accelerated economic dynamics, it isincreasingly important to improve the capability of reacting agileto changes in the marketplace. This requires implementing andadapting internal structures in a timely manner and ensuringbusiness-IT coordination throughout the process. Enterprisearchitecture management (EAM) is frequently proposed as a meanto arrive at organizational forms that allow for timelyreconfiguration and to guide strategy-aligned change. Thisexplorative study seeks to contribute to an overall understandingof EAM’s application in strategic change processes. It is based onan in-depth content analysis of existing research in the field.Specifically, it identifies common EAM practices that have beensuggested for application throughout the planning andimplementation of strategic change. Furthermore, it revealsantecedents and outcomes of this application. The articlediscusses these findings in detail and summarizes the results in apreliminary process model of applying EAM for agile strategicchange
- …