JFire | |
---|---|
Entwickler: | NightLabs |
Aktuelle Version: | 0.9.4-beta tough trader (7. Juli 2008) |
Betriebssystem: | Unix, Linux, Windows, u.a. |
Kategorie: | ERP |
Lizenz: | LGPL |
Website: | www.jfire.org |
JFire ist ein ERP- und CRM-System, das im Januar 2006 als Freie Software unter der LGPL veröffentlicht wurde.
Das System wurde vollständig in Java geschrieben und basiert auf den Technologien JavaEE 1.4 (früher J2EE), JDO 2 und Eclipse RCP 3. Damit sind sowohl Client als auch Server leicht erweiterbar und das System kann mit verhältnismäßig geringem Arbeitsaufwand auf spezialisierte Branchen- bzw. Firmen-Bedürfnisse zugeschnitten werden.
Es befindet sich aktuell in der sogenannten Beta-Phase der Entwicklung, bietet aber bereits Module für Benutzer- und Rechte-Verwaltung, Konto-Führung (Fakturierung), Lager-Verwaltung, den direkten Online-Handel mit anderen Firmen oder auch Endkunden (z. B. via Webshop), einen Editor für 2D-Graphiken und andere. Auch ein Reporting-Modul auf Basis von BIRT steht zur Verfügung, welches sowohl die Darstellung als auch das Bearbeiten von Berichten und ähnlichen Dokumenten (z. B. Rechnungen) erlaubt.
Obwohl es das Haupt-Ziel des Projektes ist, als robustes und flexibles Framework die einfache Gestaltung branchen-spezifischer Applikationen zu ermöglichen, enthält es bereits generische Module für den „von-der-Stange“-Gebrauch in kleinen und mittelständischen Unternehmen.
Durch die Benutzung von JDO als Persistenz-Layer ist JFire unabhängig vom verwendeten Datenbanksystem und erspart Entwicklern das fehleranfällige Schreiben von SQL. Darüber hinaus sind dadurch auch andere DBMS-Typen (z. B. Objektdatenbanken) möglich. Laut Projekt-Seite wird JFire mit der JDO2-Referenzimplementation JPOX geliefert, welche neben db4o zahlreiche relationale Datenbanken unterstützt.
Zwar bieten JavaEE, JDO und Eclipse RCP viele Vorteile, doch stellen sie auch eine höhere Zugangsschwelle für Entwickler dar als ältere Technologien (z. B. direktes SQL), da jede für sich bereits einiges an Einarbeitungszeit erfordert.
Inhaltsverzeichnis |
Die Vorgeschichte von JFire begann 2003, als die Firma NightLabs entschied, ein neues Ticketing-System zu entwickeln. Weil sie die neue Software auf einem ERP innerhalb einer integrierten Anwendung (anstatt mehrerer separater Programme) aufbauen wollten, begannen die Entwickler, nach einem geeigneten Framework zu suchen. Nach einiger Recherche und Evaluierungen fiel die Entscheidung, selbst ein solches ERP-Framework-Projekt zu beginnen. Um es anderen Projekten möglichst einfach zu machen, darauf aufzubauen, wurde beschlossen, auf neue Technologien wie JDO und Eclipse RCP zurückzugreifen.
Nach dem ersten Release im Januar 2006 zog das Projekt schnell die Aufmerksamkeit der Eclipse-Community auf sich: Das deutschsprachige Eclipse Magazin veröffentlichte im Mai einen Artikel[1] über JFire und es wurde zur EclipseCon 2006 eingeladen[2]. Im Dezember des gleichen Jahres veröffentliche das Eclipse Magazine in Indien einen Artikel[3]. Im April 2007 wurde JFire zum Eclipse Forum Europe eingeladen und beeindruckte dort das BIRT-Team mit seinem graphischen Parameter-Workflow-Builder[4].
Das Hauptziel des Projektes ist es, als Framework anderen Entwicklern die Erstellung von branchenspezifischen ERP-Systemen zu erleichtern. Damit unterscheidet es sich maßgeblich von vielen anderen ERP-Projekten, die als „von-der-Stange“-Lösung direkt auf Endanwender abzielen.
Das JFire-Projektteam vertritt die Ansicht, dass der ERP-Bereich derart unterschiedliche Anforderungen stellt, dass eine ERP-Gesamtlösung den Nachteil hat, entweder die Benutzer mit zu viel Konfiguration und Unübersichtlichkeit zu konfrontieren oder aber zu wenig Flexibilität zu bieten.
Die meisten der zahlreichen JFire-Module dienen daher hauptsächlich als Ausgangsbasis für Erweiterungen und sind ohne diese für den Endbenutzer nicht oder nur teilweise nutzbar.
Zunächst einmal besteht JFire aus einem Server und verschiedenartigen Clients. Der derzeit umfangreichste Client ist ein Rich-Client. Darüber hinaus ist auch ein Web-Client verfügbar. Letzterer bietet bislang jedoch nur einen Teil der Funktionen (z. B. einen Webshop). Einige JFire-basierte Applikationen verwenden auch andere Arten von Clients (z. B. Mobilgeräte in Yak, einem Zugangskontrollsystem). Da JFire die direkte Zusammenarbeit verschiedener Firmen bzw. Organisationen ermöglicht, agieren auch die Server untereinander als Clients. Jede Organisation verfügt dabei über einen eigenen JDO-Datastore, wodurch ein hohes Maß an Datenschutz gewährleistet ist.
Dem Framework-Gedanken folgend ist JFire sehr modular aufgebaut, wobei im Client OSGi-Plugins auf Basis der Eclipse-Rich-Client-Platform (RCP) und im Server JavaEE-EAR-Module zum Einsatz kommen. Auf Grund seiner Modularität wird JFire auch als Basis für nicht-ERP-Software verwendet, die lediglich auf eine geringe Zahl von Modulen zurückgreift (z. B. lediglich für Benutzer-, Rechte- und Organisations-Verwaltung).