Fractal component model

Fractal component model

Presentation

Fractal is a modular and extensible component model that can be used with various programming languages to design, implement, deploy and reconfigure various systems and applications, from operating systems to middleware platforms and to graphical user interfaces. The goal of Fractal is to reduce the development, deployment and maintenance costs of software systems in general, and of ObjectWeb projects in particular. The Fractal model already uses some well known design patterns, such as separation of interface and implementation and, more generally, separation of concerns, in order to achieve this goal. There is also ongoing research work to get even closer to this goal.Fractal is hosted and developed by the ObjectWeb consortium. It is distributed under LGPL.

ub Projects

The Fractal Project is made of four sub projects:

* The Component Model sub project deals with the definition of the Fractal component model specification. The main characteristics of this model are recursivity (components can be nested in composite components - hence the "Fractal" name) and reflexivity (components have full introspection and intercession capabilities). The Fractal model is also language independent, and fully modular and extensible.
* The Implementations sub project deals with the implementation of Fractal component platforms, which allow the creation, configuration and reconfiguration of Fractal components. Julia, the reference implementation, is developed in this sub project.
* The Component Libraries sub project deals with the implementation of reusable, ready to use Fractal components, such as protocol or Swing components.
* The Tools sub project deals with the implementation of Fractal based applications dedicated to Fractal, such as tools to define and manage component configurations .

Implementations

Besides Julia [http://fractal.objectweb.org/tutorials/julia/index.html] , the reference implementation in Java maintained in the ObjectWeb Fractal project, there are several other implementations of the Fractal component model in other projects, including non ObjectWeb projects:

* AOKell [http://fractal.objectweb.org/tutorials/aokell/index.html] is a Java implementation similar to Julia, but based on AspectJ instead of mixins. It can execute the same applications as Julia, including Fractal RMI, Fractal ADL, Fractal Explorer.
* FracTalk is a SmallTalk implementation of the Fractal component model.
* FractNet [http://www-adele.imag.fr/fractnet/] is a .Net implementation of the Fractal component model.
* Plasma is a C++ implementation of Fractal, geared at multimedia applications.
* ProActive [http://proactive.inria.fr] is a distributed and asynchronous implementation of Fractal geared at Grid Computing.
* Think is a C implementation of Fractal geared at operating system development.

Tools

The currently available Fractal tools are listed below:

*Fractal ADL [http://fractal.objectweb.org/tutorials/adl/index.html] parser is a tool made of several Fractal components that can describe and parse Fractal ADL architecture definitions, and instantiate the corresponding components.
* Fractal GUI editor is a tool made of several Fractal components that provides a graphical tool to design and edit Fractal component configurations.
* Fractal Explorer [http://fractal.objectweb.org/tutorials/explorer/index.html] console is a tool that provides a way for reconfiguring and managing Fractal-based applications at runtime.
* Fraclet [http://fractal.objectweb.org/tutorials/fraclet/index.html] provides an annotation-based programming model to leverage the development of Fractal components.

= External links =

* [http://forge.objectweb.org/cvs/?group_id=22 Download source]
* [http://fractal.objectweb.org/download/index.html Binary version]
* [http://www.objectweb.org/ Objectweb consortium homepage]


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Look at other dictionaries:

  • Component-based software engineering — A simple example of two components expressed in UML 2.0. The checkout component, responsible for facilitating the customer s order, requires the card processing component to charge the customer s credit/debit card (functionality that the latter… …   Wikipedia

  • Attribute-Oriented Programming — (@OP) is a program level marking technique. Programmers can mark program elements (e.g. classes and methods) to indicate that they maintain application specific or domain specific semantics. For example, some programmers may define a logging… …   Wikipedia

  • ProActive — Infobox Software name = ProActive caption = collapsible = developer = OW2 Consortium latest release version = latest release date = latest preview version = latest preview date = operating system = Cross platform programming language = Java genre …   Wikipedia

  • ObjectWeb Think — Think Developer(s) OW2 Consortium Written in C Operating system Cross platform License LGPL and GPL …   Wikipedia

  • Multivariate stable distribution — multivariate stable Probability density function Heatmap showing a Multivariate (bivariate) stable distribution with α = 1.1 parameters: exponent shift/location vector …   Wikipedia

  • Serveur d'applications — Un serveur d applications est un logiciel d infrastructure offrant un contexte d exécution pour des composants applicatifs. Le terme est apparu dans le domaine des applications web. Dans un sens strict les composants hébergés par le serveur d… …   Wikipédia en Français

  • Mandelbrot set — Initial image of a Mandelbrot set zoom sequence with a continuously coloured environment …   Wikipedia

  • complexity — /keuhm plek si tee/, n., pl. complexities for 2. 1. the state or quality of being complex; intricacy: the complexity of urban life. 2. something complex: the complexities of foreign policy. [1715 25; COMPLEX + ITY] * * * ▪ scientific theory… …   Universalium

  • Chaos theory — This article is about chaos theory in Mathematics. For other uses of Chaos theory, see Chaos Theory (disambiguation). For other uses of Chaos, see Chaos (disambiguation). A plot of the Lorenz attractor for values r = 28, σ = 10, b = 8/3 …   Wikipedia

  • Emergence — For other uses see Emergence (disambiguation), Emergent, and Emergency. : See also the closely related articles: Spontaneous order and self organization. In philosophy, systems theory and the sciences, emergence is the way complex systems and… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”