42 research outputs found
Recommended from our members
Better abstractions for reusable components & architectures
Software architecture (SA) is a crucial component of Model Driven Engineering (MDE), since it eases the communication and reuse of designs and components. However, existing languages (e.g., UML, AADL, SysML) are lacking many needed features. In particular, they provide rudimentary support for connectors, a first-class element in the components and connectors (C&C) architectural view and one of the most reusable architectural elements. This is unfortunate, since the difficult properties that need to be guaranteed for complex systems are mainly the non-functional properties, like throughput, security and dependability, which are greatly influenced by the employed connectors. This work reviews the basic abstractions of the C&C view of SA and examines extra architectural elements which can support the detailed, explicit and separate description of behaviour, interaction and control logic
A Model of Layered Architectures
Architectural styles and patterns play an important role in software
engineering. One of the most known ones is the layered architecture style.
However, this style is usually only stated informally, which may cause problems
such as ambiguity, wrong conclusions, and difficulty when checking the
conformance of a system to the style. We address these problems by providing a
formal, denotational semantics of the layered architecture style. Mainly, we
present a sufficiently abstract and rigorous description of layered
architectures. Loosely speaking, a layered architecture consists of a hierarchy
of layers, in which services communicate via ports. A layer is modeled as a
relation between used and provided services, and layer composition is defined
by means of relational composition. Furthermore, we provide a formal definition
for the notions of syntactic and semantic dependency between the layers. We
show that these dependencies are not comparable in general. Moreover, we
identify sufficient conditions under which, in an intuitive sense which we make
precise in our treatment, the semantic dependency implies, is implied by, or
even coincides with the reflexive-transitive closure of the syntactic
dependency. Our results provide a technology-independent characterization of
the layered architecture style, which may be used by software architects to
ensure that a system is indeed built according to that style.Comment: In Proceedings FESCA 2015, arXiv:1503.0437
Architecture Diagrams: A Graphical Language for Architecture Style Specification
Architecture styles characterise families of architectures sharing common
characteristics. We have recently proposed configuration logics for
architecture style specification. In this paper, we study a graphical notation
to enhance readability and easiness of expression. We study simple architecture
diagrams and a more expressive extension, interval architecture diagrams. For
each type of diagrams, we present its semantics, a set of necessary and
sufficient consistency conditions and a method that allows to characterise
compositionally the specified architectures. We provide several examples
illustrating the application of the results. We also present a polynomial-time
algorithm for checking that a given architecture conforms to the architecture
style specified by a diagram.Comment: In Proceedings ICE 2016, arXiv:1608.0313
Digital temples: a shape grammar to generate sacred buildings according to Alberti’s theory
The research presented further is part of the Digital Alberti research project, which aims to determine
the influence of Alberti’s treatise on Architecture, De re aedificatoria, on the Portuguese Renaissance
architecture, through the use of a computational framework. One of the project tasks entailed the
translation of the treatise’s textual descriptions concerning the morphological, proportional and
algorithmic principles of the sacred buildings into a shape grammar. Subsequently a computational
model was developed, in order to proceed to the derivation of examples of the same language. This
article discusses the use of analytical shape grammars to undertake an architectural analysis, as well
as the fact of the source of this grammar and correspondent architectural language to be a text instead
of a set of buildings and designs. It reviews the methodology to implement the shape grammar and
describes the several stages of development, following the interpretation of treatise into a consistent
set of shape rules, by defining their spatial relations, parameters and conditions. It also reviews the
implementation of this knowledge into a generative parametric computer program through visual
programming language Grasshopper.This work is funded by FEDER Grants through COMPETE – Programa Operacional Factores de
Competitividade and by National Grants through FCT – Fundação para a Ciência e a Tecnologia,
as part of the “Digital Alberti” project (PTDC/ AUR-AQI/108274/2008 – FCOMP-01-0124-FEDER-
008842). The project is hosted by CES at the University of Coimbra and coordinated by Mário Krüger.
Bruno Figueiredo is funded by FCT with PhD grant DFRH -SFRH/BD/69910/2010
Specifying Self-configurable Component-based Systems with FracToy
International audienceOne of the key research challenges in autonomic computing is to define rigorous mathematical models for specifying, analyzing, and verifying high-level self-* policies. This paper presents the FracToy formal methodology to specify self-configurable component-based systems, and particularly both their component-based architectural description and their self-configuration policies. This rigorous methodology is based on the first-order relational logic, and is implemented with the Alloy formal specication language. The paper presents the dierent steps of the FracToy methodology and illustrates them on a self-configurable component-based example
Xcd - Modular, Realizable Software Architectures
Connector-Centric Design (Xcd) is centred around a new formal architectural description language, focusing mainly on complex connectors. Inspired by Wright and BIP, Xcd aims to cleanly separate in a modular manner the high-level functional, interaction, and control system behaviours. This can aid in both increasing the understandability of architectural specifications and the reusability of components and connectors themselves. Through the independent specification of control behaviours, Xcd allows designers to experiment more easily with different design decisions early on, without having to modify the functional behaviour specifications (components) or the interaction ones(connectors).
At the same time Xcd attempts to ease the architectural specification by following (and extending) a Design-by-Contract approach, which is more familiar to software developers than process algebras like CSP or languages like BIP that are closer to synchronous/hardware specification languages. Xcd extends Design-by-Contract (i) by separating component contracts into functional and interaction sub-contracts, and (ii) by allowing service consumers to specify their own contractual clauses. Xcd connector specifications are completely decentralized, foregoing Wright’s connector glue, to ensure their realizability by construction
Spring 1997
https://surface.syr.edu/arc_news/1005/thumbnail.jp
Documentación y análisis crítico de algunas arquitecturas de software en aplicaciones empresariales
Los ingenieros de sistemas generalmente se concentran en el sistema que se está desarrollando actualmente, sin ocuparse mucho de la empresa que soporta dicho sistema. En la empresa de hoy, impulsada por los negocios, existe una relación directa entre la capacidad de negocios de la empresa y la funcionalidad implementada en los proyectos. Con un adecuado conocimiento en arquitectura empresarial de software, se puede desarrollar aplicaciones robustas y escalables para futuras implementaciones de manera que evite modificar la arquitectura de la empresa o verse limitada. Por eso es útil tener a disposición información acerca de las arquitecturas de software más usadas para el diseño de aplicaciones empresariales para aquellos que no tienen mucha experiencia en este campo y resaltar la importancia de describir claramente la situación actual de la arquitectura empresarial antes y después de una implementación nueva