24,674 research outputs found
Some Challenges of Feature-based Merging of Class Diagrams
In software product line engineering, feature mod-els enable to automate the generation of product-specific models in conjunction with domain “base models ” (e.g. UML models). Two approaches ex-ist: pruning of a large domain model, or merging of model fragments. In this paper, we investigate the impact of the merging approach on base mod-els, and how they are made and used. We adopt an empirical method and test the approach on an ex-ample. The results show several challenges in the way model fragments are written, the need for new modelling language constructs and tool support. 1
A heuristic-based approach to code-smell detection
Encapsulation and data hiding are central tenets of the object oriented paradigm. Deciding what data and behaviour to form into a class and where to draw the line between its public and private details can make the difference between a class that is an understandable, flexible and reusable abstraction and one which is not. This decision is a difficult one and may easily result in poor encapsulation which can then have serious implications for a number of system qualities. It is often hard to identify such encapsulation problems within large software systems until they cause a maintenance problem (which is usually too late) and attempting to perform such analysis manually can also be tedious and error prone. Two of the common encapsulation problems that can arise as a consequence of this decomposition process are data classes and god classes. Typically, these two problems occur together – data classes are lacking in functionality that has typically been sucked into an over-complicated and domineering god class. This paper describes the architecture of a tool which automatically detects data and god classes that has been developed as a plug-in for the Eclipse IDE. The technique has been evaluated in a controlled study on two large open source systems which compare the tool results to similar work by Marinescu, who employs a metrics-based approach to detecting such features. The study provides some valuable insights into the strengths and weaknesses of the two approache
Galaxy evolution across the optical emission-line diagnostic diagrams?
The discovery of the M-sigma relation, the local galaxy bimodality, and the
link between black-hole and host-galaxy properties, have raised the question
whether AGN play a role in galaxy evolution. Several theoretical models
implement AGN feedback to explain the observed galaxy luminosity function, and
possibly the color and morphological transformation of spiral galaxies into
passive ellipticals. To understand the importance of AGN feedback, a study of
the AGN populations in the radio-optical domain is crucial. A mass sequence
linking star-forming galaxies and AGN has been already noted in previous works,
and it is now investigated as possible evolutionary sequence. We observed a
sample of 119 intermediate-redshift (0.04<z<0.4) SDSS-FIRST radio emitters with
the Effelsberg 100-m telescope at 4.85 and 10.45 GHz and obtained spectral
indices. We find indications of spectral index flattening in high-metallicity
star-forming galaxies, composite galaxies, and Seyferts. This "flattening
sequence" along the [NII]-based emission-line diagnostic diagram is consistent
with the hardening of galaxy ionizing field, due to nuclear activity. After
combining our data with FIRST measurements at 1.4 GHz, we find that the
three-point radio spectra of Seyferts and LINERs show substantial differences,
attributable to small radio core components and larger (arcsecond sized)
jet/lobe components, respectively. A visual inspection of FIRST images seems to
confirm this hypothesis. Galaxies along this sequence are hypothesized to be
transitioning from the active star-forming galaxies (blue cloud) to the passive
elliptical galaxies (red sequence). This supports the suggestion that AGN play
a role in shutting down star-formation, and allow the transition from one
galaxy class to the other.Comment: 20 pages, 19 figures, accepted for publication in A&
Category Theory and Model-Driven Engineering: From Formal Semantics to Design Patterns and Beyond
There is a hidden intrigue in the title. CT is one of the most abstract
mathematical disciplines, sometimes nicknamed "abstract nonsense". MDE is a
recent trend in software development, industrially supported by standards,
tools, and the status of a new "silver bullet". Surprisingly, categorical
patterns turn out to be directly applicable to mathematical modeling of
structures appearing in everyday MDE practice. Model merging, transformation,
synchronization, and other important model management scenarios can be seen as
executions of categorical specifications.
Moreover, the paper aims to elucidate a claim that relationships between CT
and MDE are more complex and richer than is normally assumed for "applied
mathematics". CT provides a toolbox of design patterns and structural
principles of real practical value for MDE. We will present examples of how an
elementary categorical arrangement of a model management scenario reveals
deficiencies in the architecture of modern tools automating the scenario.Comment: In Proceedings ACCAT 2012, arXiv:1208.430
Open Graphs and Monoidal Theories
String diagrams are a powerful tool for reasoning about physical processes,
logic circuits, tensor networks, and many other compositional structures. The
distinguishing feature of these diagrams is that edges need not be connected to
vertices at both ends, and these unconnected ends can be interpreted as the
inputs and outputs of a diagram. In this paper, we give a concrete construction
for string diagrams using a special kind of typed graph called an open-graph.
While the category of open-graphs is not itself adhesive, we introduce the
notion of a selective adhesive functor, and show that such a functor embeds the
category of open-graphs into the ambient adhesive category of typed graphs.
Using this functor, the category of open-graphs inherits "enough adhesivity"
from the category of typed graphs to perform double-pushout (DPO) graph
rewriting. A salient feature of our theory is that it ensures rewrite systems
are "type-safe" in the sense that rewriting respects the inputs and outputs.
This formalism lets us safely encode the interesting structure of a
computational model, such as evaluation dynamics, with succinct, explicit
rewrite rules, while the graphical representation absorbs many of the tedious
details. Although topological formalisms exist for string diagrams, our
construction is discreet, finitary, and enjoys decidable algorithms for
composition and rewriting. We also show how open-graphs can be parametrised by
graphical signatures, similar to the monoidal signatures of Joyal and Street,
which define types for vertices in the diagrammatic language and constraints on
how they can be connected. Using typed open-graphs, we can construct free
symmetric monoidal categories, PROPs, and more general monoidal theories. Thus
open-graphs give us a handle for mechanised reasoning in monoidal categories.Comment: 31 pages, currently technical report, submitted to MSCS, waiting
review
An Exploratory Study of Forces and Frictions affecting Large-Scale Model-Driven Development
In this paper, we investigate model-driven engineering, reporting on an
exploratory case-study conducted at a large automotive company. The study
consisted of interviews with 20 engineers and managers working in different
roles. We found that, in the context of a large organization, contextual forces
dominate the cognitive issues of using model-driven technology. The four forces
we identified that are likely independent of the particular abstractions chosen
as the basis of software development are the need for diffing in software
product lines, the needs for problem-specific languages and types, the need for
live modeling in exploratory activities, and the need for point-to-point
traceability between artifacts. We also identified triggers of accidental
complexity, which we refer to as points of friction introduced by languages and
tools. Examples of the friction points identified are insufficient support for
model diffing, point-to-point traceability, and model changes at runtime.Comment: To appear in proceedings of MODELS 2012, LNCS Springe
- …