Nowadays, execution environments of applications are more and more heterogeneous: from powerful servers to smart cards. In order to assume the heterogeneity and the portability of applications, the component–based model has emerged as a model to develop new distributed applications. Thus, these applications are built as an assembly of interchangeable software blocks. Nevertheless, the gain of adaptability that comes from the use of component does not stretch to non-functional services (such as transaction management, security, etc). So, we suggest complementing the existing solution by facilitating the adaptability of non-functional services to their environment. Therefore, we propose to design a non-functional service as composition of small components. Besides, it is possible to supply the most appropriate version of a non-functional service to an application. So, in our approach, the application is composed by assembling both business components and non-functional components.
The component-based model is one possible response to the increased heterogeneity of distributed systems. This model allows developers to focus on applicative logic and leaves the implementation of the technical aspects to the component platform. However, the technical services themselves do not reap the advantages provided by the components. In this paper, we propose structuring the technical services as Fractal components. We demonstrate the benefits of such a proposition through a precise decomposition of the transactional service. We also introduce an application that uses our component-based transactional service. In order to show the feasibility of our solution, we present a prototype, which is both a component-based transactional service and a solution for building such a composition. The preliminary test results for our prototype are also presented.
The new applications being intended for more and more heterogeneous environments, it is necessary to propose solutions of development which answer in best the necessities of adaptation of new services. Component-based programming partially answers this aim, allowing easy replacement of software blocks in order to provide the most adapted version of a component. Nevertheless, most of the industrial component-based model implementations do not allow to provide to components the most adapted technical services (naming, trading, security, transaction, etc.). In this paper, we suggest defining technical services themselves under the shape of components. We shall detail our proposition, by basing it on the Fractal component model of Objectweb. Then, we shall bring solutions for the use of these new component-based technical services and shall propose a set of management components which allow to administer in a dynamic and stand-alone way the obtained components. Finally we present the prototype of the proposed solution.