Recent advances in systems integration and miniaturisation, and the steady evolution of wireless technologies, are leading to the production of more and more complex and heterogeneous networks of devices and systems. This seems a very clear trend when taking into account the large quantity of current research initiatives focused on providing solutions for ambient intelligence and sensing environments, which hold the promise of making computing ubiquitous, and thus, improving the quality of life of human beings.
New requirements introduced by aforementioned systems definitively defy our ability to produce complex distributed embedded solutions with flexible and evolving architectures. What is more, they also pose a challenge when offering valid technologies to quantify and improve the dependability and security of such solutions. An in-depth analysis of this problem shows that hardware gets more sensitive to accidental faults as the size of embedded systems decreases. Likewise, increasing the level of sophistication of embedded software leads to higher rates of design, programming, and configuring faults. Finally, systems could be allowed to act as network nodes and interact among them. Such possibility introduces a new dimension in the design of embedded systems, since it is necessary to consider all the potential risks (malicious faults) that may arise from existing communications. This problem is even more important when considering wireless communications, as the communication media is open and, thus, easier to manipulate.
Lately, both industry and scientific communities bet on component-based technologies for the development of complex embedded systems. Experience shows that these solutions reduce development time by relying on components reuse. They also ease the rapid integration of new technological improvements to products by using in-house or third-party components. Although component-based technologies are well-suited for the composition and integration of services, they do not deal so well with the concept of mechanism. Hence, they offer a very poor support for the development and deployment of fault tolerance mechanisms.
This context motivates the work proposed in Semsecap. On the one hand, the project focuses on the development of highly modular (accidental- and malicious-) fault-tolerant architectures for embedded systems with wireless communication capabilities. On the other hand, it deals with the development of methodologies and tools for assessing the dependability and security attributes these architectures will exhibit. This study will take into account both the hardware and software levels, paying a special attention to the close relationship between these levels in embedded systems. Communication among system nodes, and related security problems, will be also considered. In short, Semsecap aims at dealing with problems ranging from hardware to software, and from nodes to networks. At all these levels, it will develop methodologies and tools for supporting the design, verification and benchmarking of fault-tolerant systems. And all this, with the goal of being able to assist companies, which develop dependable and secure component-based embedded solutions, in their present and future needs.