Welcome to the 16th International ACM Sigsoft Symposium on Component-Based Software Engineering -- CBSE 2013! Since its early editions, CBSE has emerged as a flagship research event for the component community. It encompasses research (both theoretical and applied) that extends the state-of-the-art in component specification, composition and reuse, analysis, testing, and verification. Past themes for CBSE include "Components for Long-Lived Systems" (2012), "Components for Dynamic Environments" (2011), "Components beyond Reuse" (2010), and "Components for Large-Scale Systems of Systems and Ultra-Large Systems" (2009). The general theme of CBSE 2013 is "Components in the wild: from cyber-physical systems to the cloud!".
The call for papers attracted 43 submissions from Europe (Italy, Sweden, Germany, France, Czech Republic, United Kingdom), Asia (Saudi Arabia, Iran, Thailand, China, Japan, India), America (Canada, United States, Brazil), and Australia. Each paper received three reviews. The Program Committee, after extensive discussions, decided to accept 20 papers (16 regular papers and 4 short papers) that cover a variety of topics, including Adaptable Components, Component Verification, Component Composition and Reuse, Component Design, Component Analysis, and Component Quality Assurance. We hope that the CBSE 2013 proceedings will serve as reference literature for academic researchers and practitioners working in the area of Component-Based Software Engineering.
CBSE 2013 is part of the federated event CompArch 2013 together with "QoSA 2013: 9th International ACM SIGSOFT Conference on the Quality of Software Architectures", "ISARCS 2013: 4th International ACM SIGSOFT Symposium on Architecting Critical Systems", and "WCOP 2013: 18th International Doctoral Symposium on Components and Architecture". We thank the CompArch general chair Philippe Kruchten and the CompArch organization team for coordinating and setting up the various events.
Proceeding Downloads
Ethics outside the box: empirical tools for an ethics of artificial agents
Software introduces new kinds of agents: artificial software agents (ASA), including, for example, driverless trains and cars. To create these devices responsibility, engineers need an ethics of software agency. However, this pragmatic professional need ...
Executing reconfigurations in hierarchical component architectures
Mechatronic systems reconfigure the structure of their software architecture, e.g., to avoid hazardous situations or to optimize operational conditions like minimizing their energy consumption. As software architectures are typically build on components,...
Mode switch handling for the ProCom component model
Component-Based Software Engineering has been deemed a suitable technique for the development of complex embedded systems, as component reuse makes it easier to manage software complexity. Another way of reducing software complexity is by partitioning ...
CIAO: a component model and its OSGi framework for dynamically adaptable telephony applications
In recent years, thanks to new IP protocols like SIP, telephony applications and services have evolved to offer and combine a variety of communication forms including presence status, instant messaging and videoconference. As a result, advanced ...
An incremental verification framework for component-based software systems
We present a tool-supported framework for the efficient reverification of component-based software systems after changes such as additions, removals or modifications of components. The incremental verification engine at the core of our INcremental ...
DCCL: verification of component systems with ensembles
Current trends in computing include building distributed systems out of autonomous adaptive components. Communication between the components may be local and communication channels may change over time. This emergent behaviour of communication may be ...
Correctness of intrusive data structures using mixins
A dynamic mixin is a code fragment that is meant to be dynamically bound to an object. Dynamic mixins support more flexible code composition than class inheritance and can be used to implement roles that objects acquire dynamically. We propose a theory, ...
Design-driven development methodology for resilient computing
- Quentin Enard,
- Miruna Stoicescu,
- Emilie Balland,
- Charles Consel,
- Laurence Duchien,
- Jean-Charles Fabre,
- Matthieu Roy
Resilient computing is defined as the ability of a system to stay dependable when facing changes. To mitigate faults at runtime, dependable systems are augmented with fault tolerance mechanisms such as replication techniques. These mechanisms have to be ...
Towards mining informal online data to guide component-reuse decisions
Online repositories provide components available for reuse, but this does not mean all such components are equally reusable. Components might be unreliable, overly specialized, or otherwise inappropriate for reuse. Repositories collect reviews, ratings, ...
A study on third party component reuse in Java enterprise open source software
Recent studies give empirical evidence that much of today's software is to a large extent built on preexisting software, such as commercial-off-the-shelf (COTS) and open source software components. In this exploratory study we want to contribute to this ...
DEECO: an ensemble-based component system
The recent increase in the ubiquity and connectivity of computing devices allows forming large-scale distributed systems that respond to and influence activities in their environment. Engineering of such systems is very complex because of their inherent ...
Design of ensemble-based component systems by invariant refinement
The challenge of developing dynamically-evolving resilient distributed systems that are composed of autonomous components has been partially addressed by introducing the concept of component ensembles. Nevertheless, systematic design of complex ensemble-...
Implementing generalized alternative construct for erasmus language
In this paper we describe the design and implementation of the generalized alternative construct for the Erasmus programming language. The alternative construct is a generalization of the familiar if-then-else statement that allows a process to non-...
Active continuous quality control
We present Active Continuous Quality Control (ACQC), a novel approach that employs incremental active automata learning technology periodically in order to infer evolving behavioral automata of complex applications accompanying the development process. ...
Parameterised architectural patterns for providing cloud service fault tolerance with accurate costings
Cloud computing presents a unique opportunity for science and engineering with benefits compared to traditional high-performance computing, especially for smaller compute jobs and entry-level users to parallel computing. However, doubts remain for ...
Bootstrapping software distributions
New hardware architectures and custom coprocessor extensions are introduced to the market on a regular basis. While it is relatively easy to port a proprietary software stack to a new platform, FOSS distributions face major challenges. Bootstrapping ...
A survey of fuzzy service matching approaches in the context of on-the-fly computing
In the last decades, development turned from monolithic software products towards more flexible software components that can be provided on world-wide markets in form of services. Customers request such services or compositions of several services. ...
Components mobility for energy efficiency of digital home
The number of connected devices in the home is growing dramatically, increasing the part of the Digital Home in the electric power demand. Reducing the overall energy consumption of the Digital Home becomes a concern in everyday life. Moving ...
Build less code deliver more science: an experience report on composing scientific environments using component-based and commodity software platforms
Modern scientific software is daunting in its diversity and complexity. From massively parallel simulations running on the world's largest supercomputers, to visualizations and user support environments that manage ever growing complex data collections, ...
Model level worst-case execution time analysis for IEC 61499
The IEC 61499 standard provides a possibility to develop industrial embedded systems in a component-based manner. Besides alleviating the efforts of system design, the component-based approach also allows analysis of various system characteristics using ...
An automated round-trip support towards deployment assessment in component-based embedded systems
Synergies between model-driven and component-based software engineering have been indicated as promising to mitigate complexity in development of embedded systems. In this work we evaluate the usefulness of a model-driven round-trip approach to aid ...
Index Terms
- Proceedings of the 16th International ACM Sigsoft symposium on Component-based software engineering