a study on an open source it application

17
May 12, 2014 A study on an open source IT Application JFire (ERP/CRM) Submitted by, Divyank Harsh Jyoti 1201101182 Batch – 5 CSE/IV sem 12-May-14

Upload: dj24x7

Post on 23-Nov-2015

6 views

Category:

Documents


0 download

DESCRIPTION

JFire analysis

TRANSCRIPT

  • Ma

    y 1

    2,

    20

    14

    A study on an open source IT Application

    JFire (ERP/CRM)

    Submitted by, Divyank Harsh Jyoti

    1201101182 Batch 5

    CSE/IV sem 12-May-14

  • Introduction

    JFire is an Enterprise Resource Planning and Customer Relationship

    Management system. JFire is a comprehensive, free and powerful open-source

    ERP solution with a high degree of flexibility. The system has a wide range of

    ready-to-use features for trading and billing, business analysis, issue tracking,

    customer relationship management (CRM) and many more. These features are

    suitable for a small company with common workflows. Besides the built-in

    features the systems modularized and extensible architecture allows it to be

    extended for the exceptional requirements of even multinational enterprises.

    Unlike most ERP projects, which only aim at developing an out-of-the-box

    solution for end-users, JFire is primarily a robust and flexible software framework,

    facilitating the implementation of sector- or company-specific applications. 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.

    JFire has a number of comparative advantages. First, like many other existing Open Source ERP, JFire is a free system which companies can use with no license costs and an extremely low TCO(Total Cost of Ownership). Its source code is also open for users to modify the system according to their business needs. This helps reduce first-time investment as well as maintenance cost considerably, especially for companies with an in-house development team. What makes the system stand out are its flexibility and extensibility. Unlike other existing ERP solutions that provide fixed features, JFire is highly customizable. Its flexibility is enhanced by the system architecture that is modular based, allowing companies to use only certain modules they need. And upon these modules, they may build up or extend special features and functionalities. Conseuqently, companies can optimize the system and avoid unneccessary features that only complicate system maintenance.

  • JFire thus provides an optimal solution for all companies, regardless their size and sector.

    low costs customizable extensible powerful and reliable platform compliance to industry standards Plattform independent (Windows / GNU/Linux / Mac OS)

    Last but not least, JFire is built on the latest Java-based technologies such as Java Enterprise Edition (JEE) and Java Data Objects (JDO). These technologies not only make JFire a powerful, flexible and realiable system, they also comply to industry standards. and support various common operating systems such as GNU/Linux, Mac OS, Windows, etc.

    Platform

    JFire is also a robust and flexible software framework, facilitating the implementation of sector-specific applications. Highly customizable, JFire uses the latest technologies: JEE, JDO, Eclipse RCP. The JFire platform consists of two main inter-related parts, the server and the client platforms, that are written entirely in Java. The whole architecture is modular-based, enabling users to utilize specific modules their business requires. The system also provides various distinct frameworks that help reduce development time as well as ensure high stability combined with low maintenance costs. Thanks to its modular and multi-tiered client-server-architecture, JFire is very well suited as a platform for distributed systems which have nothing to do with ERP, too. Of course, these only use fundamental features like e.g. network communication, access rights control or user- & multi-tenant-management. And although the JFire project aims at customized sector-specific applications, it has several ready-to-use functionalities for small- and medium-sized enterprises.

  • Due to its elegant combination of platform strategy and ready-to-use components, JFire is well suitable for both large-scale industries and smaller companies.

    Services

    Because JFire is like every ERP system a large application and makes use of efficient but complex cutting-edge technologies, it is almost impossible to study the entire system from today to tomorrow. With the cut-throat competition of today's business, it is important that new knowledge is learned quickly. The JFire team understands this and seeks to help software developers and interested parties to optimize the system. Through NightLabs and our partners, a range of services are offered as follows:

    Coaching

    With more than a decade of experience in software development, the JFire team is eager to pass their knowledge on to help enterprises benefit from JFire as much as possible. This is particularly important for companies that have an in-house development team and want to modify or extend JFire. The JFire team offers various types of coaching, from seminar training to coaching in combination with other services such as consulting and development.

    Consulting

    Since the 1990s, the JFire team has offered consulting service to companies in various industries. Generally, our consulting service focuses primarily on three areas: software architectural planning, integration and migration. While the service offered here concentrates on JFire, the team welcomes many other IT questions and challenges.

    Development

    Equipped with extensive experience and expertise, the JFire team helps to provide a computing system that fits companies' business activities and requirements. With or without an in-house development team, you can thus

  • acquire an innovative technology at a lower cost, and minimal risk. Last but not least, as JFire is a highly flexible platform, development based on this system can be done in many directions not restricted to only Enterprise Resource Planning (ERP).

    Extensibility

    A distinguished feature of JFire is its extensibility. Owing a great deal to the extension points existing in every JFire module, this unique attribute increases system flexibility and allows for further development of specialized functions. In contrast to the existing Open Source ERP solutions, JFire avoids using the Structured Query Language (SQL), which obstructs extensions. Instead it uses the Java Data Objects standard (JDO 2.2), which not only makes extensions easy but also reduces maintenance work. From the developers point of view an extensions to JFire's data structure can be done using object orientated Java techniques. Furthermore, the elaborate architecture of JFire comprises a variety of well-structured modules. Thus users may opt for their preferred modules, rather than being confronted with an unnecessarily large monolithic application. Developers may also extend or enhance these modules to even better fit their custom needs.

    Example

    For instance, within the JFire Trade module, an Application Program Interface (API) and extension-points are defined for product management, purchase and sale. By extending the data model and providing a graphical presentation in the Graphical User Interface (GUI), developers can create custom and specialized product types of their business. Although these product types are highly specialized, different product types can be sold within the same order, thanks to the Rich Client Platform (RCP) extension points which allow for specialized GUI and handling logic. And because most other functions (invoice booking, payments, deliveries, etc) rely on common properties of all product types, no extension work is required.

  • 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, the project was invited to the EclipseCon 2006, the Eclipse Magazine India published an article in December 2006 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.

  • Review of Literature

    Features

    JFire as an ERP

    JFire is a comprehensive, free and powerful open-source ERP solution with a high

    degree of flexibility. The system has a wide range of ready-to-use features for

    trading and billing, business analysis, issue tracking, customer relationship

    management (CRM) and many more. These features are suitable for a small

    company with common workflows. Besides the built-in features the systems

    modularized and extensible architecture allows it to be extended for the

    exceptional requirements of even multinational enterprises.

    Sale & purchase

    Define and categorize your set of products and those you purchase from your suppliers. Create customer quotes and orders. Schedule delivery of sold products and enter receipts of ordered products or services. The work flow of sales and purchases is defined and controlled by a business process management engine allowing for custom rules inside the work flow and avoiding a wrong usage of the system.

    Billing & accounting

    The JFire system allows you to create your individual chart of accounts with unlimited number of accounts. You can manage your general ledger and account payable and receivable and register payments in various modes of payment including cash payment, credit card or check. A voucher module also allows you to sell cash-value vouchers customers can use to pay other products with.

  • Issue tracking

    Track issues and tasks that need to be done or other things that someone has to take care of. See who of your employees is currently working on what and coordinate your team's cooperation. Deeply integrated into JFire, issues/tasks can be linked to invoices, persons or virtually every other entity in the system.

    Customer relationship management

    JFire manages not only persons and their various roles (user, customer, supplier etc.), but also all their purchases and sales as well as relationships between them (e.g. person A being an employee of company B). Furthermore, you can configure the data structure of your customers (or other persons) on the fly at runtime whenever you feel the need for an additional field.

    Reporting

    With the JFire BIRT integration you can create sophisitcated statistical and financial reports. The system comes with various ready-to-use reports and templates to build custom reports for costomer-sales, product-catalogue or financial data. You can export the reports to different formats like PDF, HTML or Microsoft Office formats.

    Localisation & personalisation

    Not only the user interface is localisable (with translations for English, German and Thai already existing) but also the data is multi-lingual allowing for the same data being used across borders (e.g. a product catalogue in multiple languages). Furthermore, many aspects can be personally adjusted for optimal usability: From invoice layouts over custom reports to the UI for editing a person.

  • JFire as customer relationship management (CRM) system

    With JFire you can organise all your customer and contact data. Combined with the trade module you have also access to the complete customer history (orders, invoices, ...). You can track all customer communication and create issues for it. Retrieve all necessary information of your customers and see their relations for optimizing your service and communication.

    Customer master data

    Manage the information of your customers. Add the information relevant to your business. In addition to the predefined person data, you can easily add new custom fields. Also the entered user data can be validated and extended with custom rules. The look and structure of the person data can also be customized either as standard per company or even on an user basis. Furthermore the search fields which should be displayed can be configured and adopted to the your custom needs.

    Service management

    Service management can be done with the help of the issuetracking. Relate and link issues to customers or orders or any other data. You can assign them to your employees and control the status. Add attachments or comments to issues and define deadlines. Service calls or other correspondation can easily be tracked. Increase productivity and transparency by making use of the service management.

    Telephone system integration

    Integrated in the contact management is a telephone system interface. This allows you to directly call customers or contacts from the JFire application. At the moment we support the common Asterisk system.

  • Customer relations

    JFire offers a flexible relation management between persons. You can manage branch offices, headquarters and contact persons of your customers. With this functionality you can always see the relevant data. You can also define own types of relations and see how people are connected with each other.

    Reporting and analysis

    JFire integrates a powerful reporting solution. There are already some predefined reports mainly for the trade sector, but you can also easily create your own reports and customize the design. With this functionality you can create e.g. trend analysis or other specific analysis, which will provide you with the exact information you need.

  • JFire for service-based companies

    While the manufacturing and trading of goods and products remain major economic activities, trade in services has become more and more important in every economy. As the service sector grows, service companies also need a reliable system to cope with the fast-changing and competitive business environment. JFire offers a number of streamlined features that can help these companies increase their efficiency, including:

    Product configuration during the sales process: o A default price list for different kinds of customers. o Ability to override the price for every individual order line. o Description of the product during sale. Recurring trade: o Automatic generation of offers for periodically re-occuring royalties, service fees,

    rental fees and the like. o Automatic generation of invoices (optional). o Automatic or manual invoice transmission Flexible and real-time reporting, accounting, CRM etc.

  • Licences

    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.

    The GNU Lesser General Public License or LGPL is a free software license published by the Free Software Foundation (FSF). The license allows developers and companies to use and integrate LGPL software into their own (even proprietary) software without being required by the terms of a strong copyleft license to release the source code of their own software-parts. The license requires that only the LGPL software-parts be modifiable by end-users via source code availability. For proprietary software, LGPL-parts are usually in the form of a shared library such as a DLL so that there is a clear separation between the proprietary and LGPL parts. The LGPL is primarily used for software libraries, although it is also used by some stand-alone applications.

    The LGPL was developed as a compromise between the strong copyleft of the GNU General Public License (GPL) and more permissive licenses such as the BSD licenses and the MIT License. The word "Lesser" in the title shows that the LGPL does not guarantee the end user's complete freedom in the use of software: it only guarantees the freedom of modification for the LGPL-parts, but not for any proprietary software-parts.

  • Technology

    JFire offers a number of value-added modules built upon various cutting-edged technologies, using only open industry standards. It consists of two main platforms: server and client.

    Server

    Based on JEE 5 (Java Enterprise Edition) application server, JFire's server uses JDO 3 (Java Data Objects) as persistence layer. This helps developers save time as no additional writing of SQL (Structured Query Language) for database management is needed. Users, however, must have a database server system such as MySQL 5 which is freely distributed and continually developed by the open source community and companies like Oracle. The use of Java-based technologies also yields other advantages, including the independence of the server and client platforms.

    Client

    The client platform is based on Eclipse RCP (Rich Client Platform) in combination with other Eclipse-based systems such as BIRT (Business Intelligence and Reporting Tools) for reporting and GEF (Graphical Editor Framework) for graphical visualization. A proficient integration of these tools makes JFire an extraordinary powerful suite, with fully functional desktop applications. Other advantages are a native operating system (OS) look and powerful plugin-mechanism. The system is also suitable for common operating softwares such as Windows, GNU/Linux, etc.

    Platform

    Among the many advantages, the server-client base of JFire offers a unique possibility to build up one's own server-client application without developing an entirely new system from the scratch. It allows a network of multi-servers and multi-clients to be easily established. A number of applications built on JFire are currently in use. These include YAK Access Control System, CrossTicket a complete event-management solution, and Ipanema Accounting an automated encashment system, all of which are technologies developed by Nightlabs Ltd.

  • Platform Technology Requirements Advantages

    Server

    (app +

    database)

    JEE 5

    JDO 3

    Java 5

    JEE 5 compliant application server

    (e.g. JBoss)

    DataNucleus (recommended)

    MySQL 5.1 (recommended)

    platform independence

    industry-standards

    Client

    Eclipse RCP

    GEF

    BIRT

    Java 5

    Eclipse RCP 3.3

    powerful suite

    desktop applications

    native OS look

    powerful plugin

    mechanism

    Windows, GNU/ Linux

    applicable

    JFire server-

    client base

    non-ERP server-client

    applications

  • JFire community

    JFire is free open-source software and thus - unlike most other ERP systems - not developed in secrecy by a closed group of experts. Instead, develpoment happens openly in public and everyone is invited to join our community: Share your ideas in the forum or even contribute source code! On our community site you have access to the following:

    Documentation Online Forum Wiki IRC Bug Tracking Source Codes

    The community site is more intended for developers and therefore it contains a lot of technical information. In case you still have some questions or want to know more about JFire, just contactus.

  • Conclusion

    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).

  • Bibliography

    http://www.eclipsecon.org/2006/Sub.do?id=406

    http://birtworld.blogspot.com/2007/05/jfire-and-

    birt.html

    http://www.jfire.net/

    http://www.jfire.org/

    http://en.wikipedia.org/wiki/JFire