Fractal Component Model
   HOME

TheInfoList



OR:

{{Unreferenced, date=May 2017 Fractal is a modular and extensible
component model Component-based software engineering (CBSE), also called component-based development (CBD), is a branch of software engineering that emphasizes the separation of concerns with respect to the wide-ranging functionality available throughout a give ...
that can be used with various
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming ...
s to
design A design is a plan or specification for the construction of an object or system or for the implementation of an activity or process or the result of that plan or specification in the form of a prototype, product, or process. The verb ''to design'' ...
, implement, deploy and reconfigure various systems and applications, from
operating system An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs. Time-sharing operating systems schedule tasks for efficient use of the system and may also in ...
s to
middleware Middleware is a type of computer software that provides services to software applications beyond those available from the operating system. It can be described as "software glue". Middleware makes it easier for software developers to implement co ...
platforms and to
graphical user interface The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inste ...
s. The goal of Fractal is to reduce the development, deployment and maintenance costs of software systems in general, and of
OW2 OW2 is an independent non-profit international consortium dedicated to developing open-source software code infrastructure for middleware information systems. OW2 federates IT vendors and users, universities, and research centers from Europe, A ...
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 computer science, separation of concerns is a design principle for separating a computer program into distinct sections. Each section addresses a separate '' concern'', a set of information that affects the code of a computer program. A concern ...
, 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
OW2 OW2 is an independent non-profit international consortium dedicated to developing open-source software code infrastructure for middleware information systems. OW2 federates IT vendors and users, universities, and research centers from Europe, A ...
consortium. It is distributed under the
LGPL The GNU Lesser General Public License (LGPL) is a free-software license published by the Free Software Foundation (FSF). The license allows developers and companies to use and integrate a software component released under the LGPL into their own ...
open-source license An open-source license is a type of license for computer software and other products that allows the source code, blueprint or design to be used, modified and/or shared under defined terms and conditions. This allows end users and commercial compa ...
.


Sub 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 Juli

the reference implementation in Java maintained in the
ObjectWeb OW2 is an independent non-profit international consortium dedicated to developing open-source software code infrastructure for middleware information systems. OW2 federates IT vendors and users, universities, and research centers from Europe, As ...
Fractal project, there are several other implementations of the Fractal component model in other projects, including non
ObjectWeb OW2 is an independent non-profit international consortium dedicated to developing open-source software code infrastructure for middleware information systems. OW2 federates IT vendors and users, universities, and research centers from Europe, As ...
projects: * AOKel

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. * FractNe

is a Microsoft .NET Framework, .Net implementation of the Fractal component model. * Plasma is a C++ implementation of Fractal, geared at multimedia applications. *
ProActive Proactivity or proactive behavior refers to self-initiated behavior that endeavours to solve a problem before it has occurred. Proactive behavior involves acting in advance of a future situation, rather than reacting. It refers to taking control o ...
br>
is a distributed and asynchronous implementation of Fractal geared at Grid Computing. * ObjectWeb Think, Think is a C implementation of Fractal geared at operating system development. * Cecili

is another C implementation of Fractal, Fork_(software_development), forked from Think v3.


Tools

The currently available Fractal tools are listed below: *Fractal ADL''

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''

console is a tool that provides a way for reconfiguring and managing Fractal-based applications at runtime. * Fraclet''

provides an annotation-based programming model to leverage the development of Fractal components.


External links


Download source



Objectweb consortium homepage
Java enterprise platform