Nicolas Desnos

Learn More
The requirement for higher security and dependability of systems is continuously increasing even in domains not traditionally deeply involved in such issues. Yet, evolution of embedded systems towards devices connected via Internet, wireless communication or other interfaces requires a reconsideration of secure and trusted embedded systems engineering(More)
Assembling software components into an architecture is a difficult task because of its combinatorial complexity. There is thus a need for automating this building process, either to assist architects at design time or to manage the self-assembly of components at runtime. This paper proposes an automatic architecture building process that uses ports, and(More)
In this paper, we present an automatic and flexible approach for software component substitution. When a component is removed from an assembly, most existing approaches perform component-to-component substitution, relying on the fact that such a candidate component is available , which is hardly to happen because the constraints on its interfaces are too(More)
In component-based software engineering, software systems are built by assembling prefabricated reusable components. The compatibility between the assembled components is crucial. It is determined by the comparison of their exposed interfaces: required interfaces (describing the services the component needs) and provided interfaces (describing the services(More)
During a component-based development process, the architect selects and assembles software components. Many research works focus on the complex task of verifying the validity of an existing assembly. This paper presents a computer-aided system that offers the architect three assistance levels to make the building of valid architectures easier. It is based(More)
Les annuaires de composants permettent d'indexer et de localiser ra-pidement les composants selon les services qu'ils offrent. Ils donnent ainsi aux assemblages en cours d'exécution la possibilité d'évoluer dynamiquement par remplacement de composants, en cas de défaillance, ou par intégration de nou-velles fonctionnalités, en réponse à de nouveaux besoins.(More)
  • 1