8,947 research outputs found
Analysis of Software Binaries for Reengineering-Driven Product Line Architecture\^aAn Industrial Case Study
This paper describes a method for the recovering of software architectures
from a set of similar (but unrelated) software products in binary form. One
intention is to drive refactoring into software product lines and combine
architecture recovery with run time binary analysis and existing clustering
methods. Using our runtime binary analysis, we create graphs that capture the
dependencies between different software parts. These are clustered into smaller
component graphs, that group software parts with high interactions into larger
entities. The component graphs serve as a basis for further software product
line work. In this paper, we concentrate on the analysis part of the method and
the graph clustering. We apply the graph clustering method to a real
application in the context of automation / robot configuration software tools.Comment: In Proceedings FMSPLE 2015, arXiv:1504.0301
A Model-Driven Architecture Approach to the Efficient Identification of Services on Service-oriented Enterprise Architecture
Service-Oriented Enterprise Architecture requires the efficient development of loosely-coupled and interoperable sets of services. Existing design approaches do not always take full advantage of the value and importance of the engineering invested in existing legacy systems. This paper proposes an approach to define the key services from such legacy systems effectively. The approach focuses on identifying these services based on a Model-Driven Architecture approach supported by guidelines over a wide range of possible service types
The impact of enterprise application integration on information system lifecycles
Information systems (IS) have become the organisational fabric for intra-and inter-organisational collaboration in business. As a result, there is mounting pressure from customers and suppliers for a direct move away from disparate systems operating in parallel towards a more common shared architecture. In part, this has been achieved through the emergence of new technology that is being packaged into a portfolio of technologies known as enterprise application integration (EAI). Its emergence however, is presenting investment decision-makers charged with the evaluation of IS with an interesting challenge. The integration of IS in-line with the needs of the business is extending their identity and lifecycle, making it difficult to evaluate the full impact of the system as it has no definitive start and/or end. Indeed, the argument presented in this paper is that traditional life cycle models are changing as a result of technologies that support their integration with other systems. In this paper, the need for a better understanding of EAI and its impact on IS lifecycles are discussed and a classification framework proposed.Engineering and Physical Sciences Research Council (EPSRC) Grant Ref: (GR/R08025) and Australian Research Council (DP0344682)
Recovering Grammar Relationships for the Java Language Specification
Grammar convergence is a method that helps discovering relationships between
different grammars of the same language or different language versions. The key
element of the method is the operational, transformation-based representation
of those relationships. Given input grammars for convergence, they are
transformed until they are structurally equal. The transformations are composed
from primitive operators; properties of these operators and the composed chains
provide quantitative and qualitative insight into the relationships between the
grammars at hand. We describe a refined method for grammar convergence, and we
use it in a major study, where we recover the relationships between all the
grammars that occur in the different versions of the Java Language
Specification (JLS). The relationships are represented as grammar
transformation chains that capture all accidental or intended differences
between the JLS grammars. This method is mechanized and driven by nominal and
structural differences between pairs of grammars that are subject to
asymmetric, binary convergence steps. We present the underlying operator suite
for grammar transformation in detail, and we illustrate the suite with many
examples of transformations on the JLS grammars. We also describe the
extraction effort, which was needed to make the JLS grammars amenable to
automated processing. We include substantial metadata about the convergence
process for the JLS so that the effort becomes reproducible and transparent
- âŠ