Supervisory control of a class of discrete event processes
SIAM Journal on Control and Optimization
The Evolving Philosophers Problem: Dynamic Change Management
IEEE Transactions on Software Engineering
The temporal logic of reactive and concurrent systems
The temporal logic of reactive and concurrent systems
Software architecture: perspectives on an emerging discipline
Software architecture: perspectives on an emerging discipline
Protocol specifications and component adaptors
ACM Transactions on Programming Languages and Systems (TOPLAS)
Architecture-based runtime software evolution
Proceedings of the 20th international conference on Software engineering
Acme: architectural description of component-based systems
Foundations of component-based systems
Formal verification of parallel programs
Communications of the ACM
Component-based software engineering: putting the pieces together
Component-based software engineering: putting the pieces together
Proceedings of the 8th European software engineering conference held jointly with 9th ACM SIGSOFT international symposium on Foundations of software engineering
A software model for flexible & safe adaptation of mobile code programs
Proceedings of the International Workshop on Principles of Software Evolution
Component Software: Beyond Object-Oriented Programming
Component Software: Beyond Object-Oriented Programming
Concurrency and Automata on Infinite Sequences
Proceedings of the 5th GI-Conference on Theoretical Computer Science
Convertibility verification and converter synthesis: two faces of the same coin
Proceedings of the 2002 IEEE/ACM international conference on Computer-aided design
A compositional formalization of connector wrappers
Proceedings of the 25th International Conference on Software Engineering
SOFA/DCUP: Architecture for Component Trading and Dynamic Updating
CDS '98 Proceedings of the International Conference on Configurable Distributed Systems
Detecting architectural mismatches during systems composition
Detecting architectural mismatches during systems composition
Enabling autonomic behavior in systems software with hot swapping
IBM Systems Journal
A formal approach to component adaptation
Journal of Systems and Software - Special issue: Automated component-based software engineering
CHARMY: an extensible tool for architectural analysis
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
A component-based approach to online software evolution: Research Articles
Journal of Software Maintenance and Evolution: Research and Practice
SOFA 2.0: Balancing Advanced Features in a Hierarchical Component Model
SERA '06 Proceedings of the Fourth International Conference on Software Engineering Research, Management and Applications
SYNTHESIS: A Tool for Automatically Assembling Correct and Distributed Component-Based Systems
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Graphical scenarios for specifying temporal properties: an automated approach
Automated Software Engineering
Spin model checker, the: primer and reference manual
Spin model checker, the: primer and reference manual
Proceedings of the 10th international conference on Component-based software engineering
CBSE'07 Proceedings of the 10th international conference on Component-based software engineering
Managing dynamic reconfiguration in component-based systems
EWSA'05 Proceedings of the 2nd European conference on Software Architecture
Enabling the selection of COTS components
ICCBSS'05 Proceedings of the 4th international conference on COTS-Based Software Systems
A component-oriented substitution model
ICSR'06 Proceedings of the 9th international conference on Reuse of Off-the-Shelf Components
Synchronizing behavioural mismatch in software composition
FMOODS'06 Proceedings of the 8th IFIP WG 6.1 international conference on Formal Methods for Open Object-Based Distributed Systems
Methodology evaluation framework for dynamic evolution in composition-based distributed applications
Journal of Systems and Software
Information and Software Technology
A survey of formal methods in self-adaptive systems
Proceedings of the Fifth International C* Conference on Computer Science and Software Engineering
The Journal of Supercomputing
Hi-index | 0.00 |
Software components are specified, designed and implemented with the intention to be reused, and they are assembled in various contexts in order to produce a multitude of software systems. However, in the practice of software development, this ideal scenario is often unrealistic. This is mainly due to the lack of an automatic and efficient support to predict properties of the assembly code by only assuming a limited knowledge of the properties of single components. Moreover, to make effective the component-based vision, the assembly code should evolve when things change, i.e., the properties guaranteed by the assembly, before a change occurs, must hold also after the change. Glue code synthesis approaches technically permit one to construct an assembly of components that guarantees specific properties but, practically, they may suffer from the state-space explosion phenomenon. In this paper, we propose a Software Architecture (SA) based approach in which the usage of the system SA and of SA verification techniques allows the system assembler to design architectural components whose interaction is verified with respect to the specified properties. By exploiting this validation, the system assembler can perform code synthesis by only focusing on each single architectural component, hence refining it as an assembly of actual components which respect the architectural component observable behaviour. In this way code synthesis is performed locally on each architectural component, instead of globally on the whole system interactions, hence reducing the state-space explosion phenomenon. The approach can be equally well applied to efficiently manage the whole reconfiguration of the system when one or more components need to be updated, still maintaining the required properties. The specified and verified system SA is used as starting point for the derivation of glue adaptors that are required to apply changes in the composed system. The approach is firstly illustrated over an explanatory example and is then applied and validated over a real-world industrial case study.