Jump to content

JFire

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 195.47.234.106 (talk) at 08:38, 2 May 2009 (→‎Server Architecture). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

JFire
Developer(s)www.NightLabs.org
Stable release
0.9.6-beta ultimate utility / February 6, 2009 (2009-02-06)
Written inJava
Operating systemCross-platform
TypeERP, CRM, SCM
LicenseLGPL
Websitehttp://www.jfire.org/

JFire is an Enterprise Resource Planning and Customer Relationship Management system.

The system has been written entirely in Java and is based on the technologies Java EE 1.4 (formerly J2EE), JDO 2, Eclipse RCP 3. Hence, both client and server can easily be extended and it requires only a relatively low effort to customize it for specific sectors or companies.

Currently, JFire is still in the beta status of development, but it already provides modules for user and access rights control, accounting, store management, direct online trade with other companies or end-customers (e.g. via a web shop), an editor for 2-dimensional graphics and other useful plugins. A reporting module which is based on BIRT allows for the editing and rendering of reports, statistics and similar documents (e.g. invoices).

Even though the main goal of the project is to serve as a robust and flexible framework and thus to ease the implementation of sector-specific applications, it contains modules for the out-of-the-box usage in small and medium-sized enterprises.

Because JFire uses JDO as persistence layer, it is independent of the underlying database management system (DBMS) and spares developers the error-prone work of writing SQL. Furthermore, the use of JDO makes it possible to employ other DBMS types (e.g. object databases). According to the project's website, JFire is shipped with the JDO2 reference implementation JPOX, which supports many relational databases and db4o.

Even though Java EE, JDO and Eclipse RCP provide many advantages, they have the disadvantage that they require a longer training period than older technologies (e.g. direct SQL).

JFire was published in January 2006 under the conditions of the GNU Lesser General Public License (LGPL). Therefore, it is Free Software and everyone can redistribute it, modify it and use it free of charge.

History

The history of JFire starts in 2003, when the company NightLabs decided to develop a new ticket sales and distribution software. Because they wanted to base this new system on an ERP within one integrated application suite (rather than multiple separate programs), they started to search for a suitable framework. After some research and evaluations, they decided to launch such an ERP framework project based on new technologies like JDO and Eclipse RCP, which make it easy for other projects to build upon.

When first released in January 2006, it quickly gained attention in the Eclipse community: The German Eclipse Magazine published an article in May 2006[1], the project was invited to the EclipseCon 2006[2], the Eclipse Magazine India published an article in December 2006[3] and in April 2007, the JFire project was invited to the Eclipse Forum Europe, where it impressed the BIRT team with its graphical parameter workflow builder[4].

Goal

The project's main goal is to provide a framework which eases development of sector-specific ERP systems. In this aspect, it differs significantly from most other ERP projects, which aim primarily at being an out-of-the-box solution directly for end-users.

The JFire project team believes that the demands directed at ERP software vary in such a high degree, that a complete solution has some major disadvantages: In their opinion, such one-fits-all-solutions confront their users either with too much configuration and too little clarity or do not provide enough flexibility.

Therefore, most of the numerous JFire modules serve mainly as a base for extensions and cannot be used directly by end users (or only partially).

Architecture

JFire consists of two parts - the server and different types of clients. So far, the most comprehensive client is a rich client. Additionally, there exists a JSP web client, which currently supports only a part of the functionality (e.g. a web shop). Some applications built on JFire employ other types of clients, as well (e.g. mobile devices used in Yak, an access control system). Because JFire enables different companies/organizations to cooperate directly, a server acts as client to other servers, as well. Each organization has its own JDO datastore, which guarantees a very high degree of protection of privacy. Between organizations, only data essentially required by the business partner are exchanged.

Following the framework idea, JFire is built very modular: In the client, it consists of OSGi plug-ins based on the Eclipse Rich Client Platform (RCP) and in the server, JFire is composed of Java EE EAR modules. Due to its modularity, JFire is used as base for non-ERP applications, too, which employ a smaller number of modules (e.g. only the user, access rights and organization management).

Server

The Base-Module is responsible for Authentication, User- and Rightsmanagement and builds the core for transactions between different organisations and servers. On top of it comes the Trade-Module which includes Accounting, Store-Management, Reporting and forms the base for a general distribution sales network.

The Trade-Module offers many interfaces for easy integration of external systems like third-party payment- or delivery-systems. Additionally it provides extension possibilities to build your own Businnes Application on top of JFire.

Client Architecture

The Client is based on the Eclipse RCP framework and makes extensively use of its flexible plugin management. The design is similar to the server. The Base module provides you with the Graphical User Interface for adminstration of users and organisations. The Trade modul lets you easily configure the sales-conditions of your products, write invoices, keep the overview over your finances and show you detailed reports of all transactions.

Furthermore you can combine your Trade platform with the Editor2D module in order to edit and visualize things, if it is needed for your business.

References

  1. ^ "Eclipse Magazine (Germany)". 7 (3.06). 2006. {{cite journal}}: Cite journal requires |journal= (help)
  2. ^ "EclipseCon 2006: JFire - Open Source RCP based ERP framework". June 23, 2006. Retrieved 2007-07-06.
  3. ^ "Eclipse Magazine (India)". 5. 2006. {{cite journal}}: Cite journal requires |journal= (help)
  4. ^ "BIRT World: JFire and BIRT". May 15, 2007. Retrieved 2007-07-06.