40,576 research outputs found
Highly analysable, reusable, and realisable architectural designs with XCD
Connector-Centric Design (XcD) is a new approach to specifying software architectures. XcD views complex connectors as highly significant in architectural designs, as it is the complex connectors that non-functional quality properties in systems can emanate from. So, XcD promotes in designs a clean separation of connectors (interaction behaviours) from components (functional behaviours). Designers can then specify connectors in detail explicitly thus easing the analysis of system designs for quality properties. Furthermore, XcD separates control behaviour from connectors as control strategies. Architectural designs in XcD thus become highly modular with re-usable components, connectors, and control strategies (representing design solutions for quality properties). The end result is the eased architectural experimentation with different design solutions by re-using components/connectors and formal analysis of these solutions to find out the optimal ones
Towards a design-by-contract based approach for realizable connector-centric software architectures
Despite being a widely-used language for specifying software systems, UML remains less than ideal for software architectures. Architecture description languages (ADLs) were developed to provide more comprehensive support. However, so far the application of ADLs in practice has been impeded by at least one of the following problems: (i) advanced formal notations, (ii) lack of support for complex connectors, and (iii) potentially unrealizable designs. In this paper we propose a new ADL that is based on Design-by-Contract (DbC) for specifying software architectures. While DbC promotes a formal and precise way of specifying system behaviours, it is more familiar to practising developers, thus allowing for a more comfortable way of specifying architectures than using process algebras. Furthermore, by granting connectors a first-class status, our ADL allows designers to specify not only simple interaction mechanisms as connectors but also complex interaction protocols. Finally, in order to ensure that architectural designs are always realizable we eliminate potentially unrealizable constructs in connector specifications (the connector “glue”)
Orthogonally Hot Plug Enabled Blindmate Socket Connect
Supporting flexible transceiver types and high-density in servers and switches requires significant overhead in server and switch designs. Some switch systems use line cards to modularly implement different product options, such as fabric protocols and fabric interface signal lane counts. This requires large PCB and high lane-count right-angle electrical midplane connectors that are typically large, causing signal integrity and airflow blockage issues. Other implementations use hot-pluggable transceivers that are difficult to cool within metal cages (e.g., standard pluggable transceiver modules) and require right-angle connectors, while some designs use embedded mid-board optics transceivers that are not hot-pluggable or replaceable
Recommended from our members
Realizable, Connector-Driven Software Architectures for Practising Engineers
Despite being a widely-used language for specifying software systems, UML remains less than ideal for software architectures. Architecture description languages (ADLs) were developed to provide more comprehensive support. However, so far the application of ADLs in practice has been impeded by at least one of the following problems: (i) advanced formal notations requiring a steep learning curve, (ii) lack of support for user-defined, complex connectors, and (iii) potentially unrealizable architectural designs.
This paper proposes Xcd, a new ADL that aims at supporting user-defined, complex connectors to help increase architectural modularity. It also aims to help increase the degree of reusability, as now components need not specify interaction protocols, as these can be specified independently by connectors (which increases protocol reusability too).
Connector support requires to ensure that architectural designs are always realizable, as it is currently extremely easy to obtain unrealizable ones. Xcd eliminates potentially unrealizable constructs in connector specifications.
Finally, Xcd employs a notation and notions from Design-by-Contract (DbC) for specifying software architecture behaviour. While DbC promotes a formal and precise way of specifying system behaviours, it is not as challenging for practising developers as process algebras that are usually employed by ADLs
Space Station Freedom coupling tasks: An evaluation of their space operational compatibility
The development of the Space Station Freedom tasks that are compatible with both telerobotic as well as extravehicular activity is a necessary redundancy in order to insure successful day to day operation. One task to be routinely performed aboard Freedom will be the changeout of various quick disconnect fluid connectors. In an attempt to resolve these potentially contradictory issues of compatibility, mock-ups of couplings suitable to both extravehicular as well as telerobotic activity were designed and built. An evaluation performed at the Remote Operator Interaction Laboratory at NASA's Johnson Space Center is discussed, which assessed the prototype couplings as well as three standard coupling designs. Data collected during manual and telerobotic manipulation of the couplings indicated that the custom coupling was in fact shown to be faster to operate and generally preferred over the standard coupling designs
Modelling the GSM handover protocol in CommUnity
CommUnity is a formal approach to software architecture. It has a precise, yet intuitive mathematical semantics based on category theory. It supports, at the methodological level, a clear separation between computation, coordination, and distribution (including mobility). It provides a simple state-based language for describing component behaviour that is inspired by Unity and Interacting Processes. It also addresses composition as a first class concern and accounts for the emergence of global system properties from interconnections. This paper describes the approach and available tool support by modelling essential aspects of the GSM handover protocol. We also sketch a framework that we are implementing for the distributed execution of such specifications using Klava, a Java library for mobile agent systems based on tuple spaces
RIOT: a simple graphical assembly tool
Errors in the chip assembly process are harder to find than errors in cell design, since they belong to no specific part of the design, but rather to the assembly as a whole.
Assembly errors are more costly than call design errors also, since they often go unnoticed until late in the design cycle. Interactive graphic tools typically require that assembly be done with primitive graphical operations, which are inappropriate far the assembly task. Language-based tools give more powerful assembly operations, but remove the two dimensional view of the chip
necessary to visualize many assembly operations.
Riot is a simple Interactive graphical tool designed to facilitate the assembly of cells into integrated systems. Riot supplies the user with primitive operations of connection -- abutment, routing and stretching - in an interactive graphic environment. Thus, the designer retains full control of the design, including the assignment of positions to instances of cells and the choice
of connection mechanism. The computer takes care of the tedious and exacting implementation detail, guaranteeing that connections are actually made. The powerful connection primitives give the user of Riot the ability to quickly assemble a custom chip from a collection of low-level
cells. This document provides a discussion of the motivation for Riot and a description of the
Riot chip assembly system, its capabilities and its use
Architectural design rewriting as an architecture description language
Architectural Design Rewriting (ADR) is a declarative rule-based approach for the design of dynamic software architectures. The key features that make ADR a suitable and expressive framework are the algebraic presentation of graph-based structures and the use of conditional rewrite rules. These features enable the modelling of, e.g. hierarchical design, inductively defined reconfigurations and
ordinary computation. Here, we promote ADR as an Architectural
Description Language
- …