Spreadfirefox Affiliate Button
Custom Search

Tuesday, June 9, 2009

Frepple

FrePPLe is a lightweight open source framework that easily and quickly delivers a solution for production planning problems. The primary focus is on the discrete manufacturing industry.

Production planning software traditionally has been an area with plenty of home-grown, extremely specialised and/or very primitive solutions.
Strangely enough, while creative and innovative open source solutions pop up in all computing areas, production planning software still tends to be a very closed world full of academic, proprietary and expensive solutions. Till now...
FrePPLe is the first open source production planning toolkit for your day-to-day planning problems.

For the developer community, the project is also trying to establish a common ground framework for planning applications. Rather than rebuilding the basic foundation from scratch over and over again, developers can now leverage a proven framework to extend with their own extension modules.
New workflows and functionality can now be built much quicker and easier.


The features in brief:

FrePPLe has two main components.

  1. The first one is a core library containing the model and the solving algorithms.
    It is generic and can be used in a number of applications.
  2. A second component is a flexible user interface and database layer to support the core library.
    It takes care of the maintenance of input data, reporting of the plan results, and data integration to other systems.

The key features of each component are:

  1. FrePPLe core library

    • FrePPLe comes as a 'library' developed in C++.
      It has no graphical user interface and requires to be deployed as part of another application.
      Different applications are envisioned:
      • Standalone application for use on the command line
      • Accessible from programming languages such as Java, Python, Perl or Visual Basic
      • Can be linked into your own C or C++ application

    • Modeling and solving framework for discrete manufacturing environments.
      Key modeling constructs are:
      • Item
      • Buffer
      • Resource
      • Operation
      • Demand

    • Heuristic solving algorithm respecting capacity, material and leadtime constraints.

    • XML-based data input and output, in addition to the public C++ API.

    • Very fast! Performance and scalability have been a consideration from day one...

    • Extensible and customizable architecture.
      New modeling constructs and solving algorithms can be developed in C++ and loaded as a plugin module.
      Standard plugin modules include:

      • Python is used as scripting and customistion language.
        The embedded interpreter has access to the frePPLe objects in memory, as well as the rich functionality in the Python standard libraries. The powerful combination allows flexible and performant scripting, integration and customization.

      • The forecast module implements algortihms for forecasting future demand based on the demand history, and also supports netting customer orders from the forecast.

      • The linear programming module implements a mathematical solver that complements the heuristic based built-in solver.

    • Supported on Linux and Windows environments.

    • Licenced under the GNU lesser general public license.

  2. FrePPLe user interface and database layer
    A planning solution consist of much more than the core solver algorithms...
    screenshots It includes data maintenance, reporting, data integration to other systems, workflows, job schedules, etc...
    A front-end for the core library is required to meet these requirements with a maximum of flexibility.

    • Based on the Django web application framework.
      Django is a high-level Python web framework that encourages rapid development and clean, pragmatic design.
      For frePPLe it provides an excellent toolkit:
      • Flexible and portable modeling of database layer: powerful and intuitive object-relational mapper
      • Flexible and performant framework for web applications: auto-generated administration user interface, template system, cache system, internationalization, ...
      • Performant and scalable

    • Highly customizable and extendible.

    • The web application can be deployed on a web server, supported by a backend database.
      It can also be installed as a desktop application for a single user.

    • Supports the PostgreSQL, MySQL, SQLite and Oracle databases.

    • Full support for internationalization and localization.
      The user interface supports Unicode, allowing characters of any language to be handled.
      Reports can be translated to the user's local language.

    • Supported on Linux and Windows environments.

    • Licenced under the GNU lesser general public license.

No comments: