A language to bridge the gap between component-based design and implementation
Abstract
Since years, multiple researches studied component-based software development. Nevertheless, most component-based software systems do not use components at implementation stage. We believe that one of the main causes is a lack of support for component-oriented programming (COP). Indeed, most of the proposed component models such as Unified Modeling Language (UML), Corba Component Model (CCM), Enterprise JavaBeans (EJB) are only available at design time. The fact that implementation relies on object-oriented languages which prevent developers from fully switching to COP. In this paper, we identify five important requirements (decoupling, adaptability, unplanned connections, encapsulation and uniformity) for COP based on an analysis of the state of the art and the limitations of existing work. We propose an extended version of the Scl component language that fulfills these requirements. A prototype of Scl and a concrete experiment validate this proposal.