Software Santa

FREE and/or Open Source Desktop Software! => Office or Productivity Tools => Topic started by: Software Santa on January 23, 2008, 06:09:50 PM

Title: Apache OFBiz is an open source enterprise automation software project. Java
Post by: Software Santa on January 23, 2008, 06:09:50 PM
Apache OFBiz is an open source enterprise automation software project. Java

If you don't have access to a web server: stop right here and go look at a different present. If you're not a business with a web site: you don't need this.


Introduction: What is Apache OFBiz?

The Apache Open For Business Project is an open source enterprise automation software project licensed under the Apache License Version 2.0. By open source enterprise automation we mean: Open Source ERP, Open Source CRM, Open Source E-Business / E-Commerce, Open Source SCM, Open Source MRP, Open Source CMMS/EAM, and so on.

Apache OFBiz is a foundation and starting point for enterprise solutions, be they for one organization or one million. OFBiz can certainly be used OOTB (out of the box), but if you're looking for something that works really well for that there are many open source projects that do a great job there. OFBiz is great for creating specialized applications for use OOTB by other organizations. OFBiz is also great for organizations that need more than what an OOTB application can offer in order to grow their operations, but find the deployment and maintenance costs of traditional enterprise systems that can handle such things to be unreasonable or unjustifiable.

Being open source under the Apache 2.0 license and driven by a community Apache OFBiz offers both flexibility by design and by access to code, and a solution where you're not alone but rather can work with many others to get things done. Apache OFBiz offers a great deal of functionality, including:

    * advanced e-commerce
    * catalog management
    * promotion & pricing management
    * order management (sales & purchase)
    * customer management (part of general party management)
    * warehouse management
    * fulfillment (auto stock moves, batched pick, pack & ship)
    * accounting (invoice, payment & billing accounts, fixed assets)
    * manufacturing management
    * general work effort management (events, tasks, projects, requests, etc)
    * content management (for product content, web sites, general content, blogging, forums, etc)
    * a maturing Point Of Sales (POS) module using XUI as rich client interface
    * and much more all in an open source package!

The Open For Business Project - Feature List


    * Free & open source software
          o No license or license maintenance costs
          o No vendor, service provider, or application lock-in
          o Active and supportive community
          o You get full source code
                + You can see how everything works
                + You can track down issues quickly
                + You can change anything you want
          o Apache 2.0 Open Source License
                + You don't have to open source your changes
                + You can repackage, distribute, and even sell derivative software
                + You can say it is based on Open For Business
    * Standards based
          o It is easy to learn for those familiar with similar software
          o It is easy to reuse existing software based on the same standards
          o It is easy to integrate with other internal or partner systems
          o Based on: Sun Java, J2EE; W3C XML, HTML, SOAP; WfMC XPDL; OMG GL, Party, Product, Workflow
    * All applications built on the same framework, tools & components
          o No need to learn and use many different technologies
          o No need to integrate applications
          o No need to deal with limited features because of poor integrations between disparate technologies
          o Huge cost savings because of consistent and easy to maintain components
    * Standards based flexible and generic data model
          o Covers all major entities used in businesses
          o Provides a structure to simplify the achievement of custom data needs
          o Uses common terms for entity names to make it easier to understand and use
    * Flexible and efficient to use data layer
          o No database system lock-in; supports many different databases
          o No need to write redundant persistence code and configuration
          o Easy to use XML data definitions
          o Powerful API offers generic operations that behave differently based on data definitions
          o Most operations can be done with a single line of code and no need to write supporting code
    * Loosely coupled multi-layer component architecure
          o It is easy to customize and reuse components
          o It is easy to build new applications through the composition of existing components
          o It is easy to find code and other components based on consistent patterns
          o Components can be replaced without breaking other components because of well defined and managed dependencies
    * Distributed architecture
          o It is easy to scale multiple servers or pools of servers
          o It is easy to seamlessly integrate & communicate with other systems
    * Service based logic layer
          o All logic modeled as a service
          o Makes it easy to reuse logic
          o Services can be automatically exposed as Web Services
          o Makes it easy add custom user interfaces, even many at once
          o Makes it easy to distribute the system over multiple servers
          o Makes it easy to communicate with other systems
    * Advanced web application framework
          o Separates input processing logic, view data preparation logic and view presentation templates
          o Supports many different types of logic, including scripting languages and services
          o Supports many different types of view templates including XML/XSLT, FreeMarker, Velocity, JSP, and any other
          o Tracks all visits and page hits for security and marketing purposes
          o Keeps statistical traffic and performance data since server start and in time bins



    * Perfect for B2C and B2B eCommerce
    * Can be easily configured for secure or public catalog viewing
    * Supports automatic switching from HTTP (insecure) to HTTPS (secure) and back based on protection desired for each page
    * Product Finding
          o Product search
                + Supports any combination of constraints per search, including keyword, category, feature, and other constraints
                + Indexed Product Keyword Constraints
                      # Can search for all keywords specified or any keyword specified
                      # Configurable stop words are removed during indexing and searching so they won't affect search results
                      # Configurable suffixes (such as -y, -ies, etc) are removed during indexing so they won't affect search results
                      # Different product fields can be weighted differently when indexing
                + Category Constraints
                      # Can restrict search to products in a given category; this makes it possible to only have the products for the active catalog show up in keyword search results and other effects
                      # Can search in a category and include all child categories
                      # Can include multiple categories in the search to get a cross section of products in the categories, ie the products must be in all categories
                + Can restrict search to products with a given feature applied
                + Search results are ordered by default based on keyword weights determined during indexing, other orderings are supported as well
                + When search results are presented all constraints are listed that were used in the search and any one can be removed
          o Product category browse
                + Expandable browse tree shows current category context in the left column on relevent pages (by default)
                + Products in a category can be layed out with different templates assigned to different categories, and different sub-templates assigned to different products
                + By default 10 products are shown at a time and you can go to previous and next pages (these settings are easily changed)
                + Products can belong to multiple categories
                + Sub-categories can belong to multiple parent categories
                + Root browse category will change automatically based on the settings associated with the active catalog
                + All product, category and catalog associations are effective dated with from and thru dates
                + Unlimited number of products, categories and catalogs
          o Product detail view
                + Displays large product image (if one is specified), with a link to the detail image (if one is specified)
                + Displays all relevant product information including name, short & long descriptions, price, whether or not inventory is available, etc
                + Displays all cross-sells, up-sells, products deprecated by this product, products that deprecate this product, and any other desired associated product through simple template changes
                + For products with variants (aka "virtual" products) shows drop downs for each feature type that is associated as a selectable feature; to handle available feature combinations shows all avilable in the first drop down, and each additional one is populated when a selection in a previous drop-down has been chosen
                + For products with variants can display small images for each of the features of the first selectable feature type; a useful application of this is having the color be the first selectable feature type and having small images for each different color; when large images are associated with the variant products the large image will change as corresponding features are selected in the drop-down(s)
                + Displays links to previous and next products in the current category for easy browsing through the details of a given category
                + With flexible product attributes and features additional structured information can easily be added and displayed just how you want
          o Special categories
                + Shown on special pages like the main page
                + Examples include top 10 most popular, promoted items, new items, etc.
                + These categories are attached to the active catalog
          o Cross-sells and up-sells
                + Modeled as special types of product associations
                + Can also include product deprecations, marketing packages, etc
                + Shown on the product detail page for each product
          o Shopping cart random cross-sells
                + Random cross-sells are chosen from all items currently in the shopping cart
                + Shown three at a time; when more than three unique products are available a different set is chosen on each new page
                + As a product is added to the shopping cart it is no longer shown
                + Displayed on the shopping cart detail page
                + Displayed in a small box in the right column underneath the mini shopping cart on relevant pages (by default)
          o Quick re-order
                + Re-order list built from products previously ordered
                + List is weighted by quantity ordered and frequency of ordering
                + Default re-order quantity is an average of all quantities previous ordered for a given product
                + Only the top five are shown at any given time
                + As a product is added to the shopping cart it is no longer shown
                + Displayed in a small box at the bottom of the right column on relevant pages (by default)
    * Promotions
          o Promotion Conditions Supported
                + Cart Sub-total
                + Total Amount of Product
                + X Amount of Product
                + X Quantity of Product
                + Account Days Since Created
                + Party
                + Role Type
          o Promotion Actions Supported
                + Gift With Purchase
                + Free Shipping
                + X Product for Y% Discount
                + X Product for Y Discount
                + X Product for Y Price
                + Order Percent Discount
                + Order Amount Flat
          o Use limits per order, customer, promotion
          o Promotion Codes
                + Can be required for promotion to apply
                + Use limits per customer, code
                + Can be restricted to only allow use by a customer with a specific email address or party ID
          o Can associate products and/or categories with the entire promotion or a specific condition or action, support include, exclude, and always associations
          o With conditions and actions can support buy X get Y free (or for Z% discount) and many other options
    * Rule Based Pricing

    * Customer Profile

    * Shopping Cart & Checkout Process

    * Order History

    * Affiliate & Marketing Data

Party Manager
Note: A Party can be either a Person, or a group of Parties. A Party Group could be a company, an organization within the company, a supplier, a customer, and so forth. Information that describes Parties or is directly related to Parties is contained in these entities.

    * Party Types: Persons and Groups
    * Finding Parties
    * Party Data Maintenance
          o Personal Data
          o Organization Data
          o UserLogin & Security Data
          o Contact Mechanisms: Telecom Number, Postal Address, Email Address, Web Page Address, etc.
          o Payment Mechanisms: Credit Cards, EFT Accounts
          o Party Roles
          o Party Relationships
    * Security Data Maintenance
          o Security Permissions
          o Security Groups
          o UserLogin Group Membership
          o Group Permission Association

Marketing Manager

    * Tracking Code Management
    * Marketing Campaign Management
          o Central place to track marketing activities
          o Right now includes promotions and tracking codes

Catalog Manager
Everything involving your products that will be seen by your customers is managed from here.

    * Product Stores
          o Identify the venue from which sales will be made
          o Select which stores will handle which catalogs, categories and products
    * Product Catalogs
          o Create new catalogs
          o Develop collections of products or categories, assigning them to their related catalogs
          o Associate product with price, location, availability, features, graphics, and other details
    * Product Categories
          o Specify what products or features will be gathered under what categories
          o Create categories as needed here
    * Products
          o Define products
          o Describe products
          o Associate graphic images with products
          o Gather information on facilities, inventory, content, IDs, keywords, associations, suppliers, attributes, and more
    * Product Features
          o Add, delete or modify features as shown in the catalog for any product
          o Changes to features can be date defined to start and to stop
    * Price Rules
          o Prices can be modified at a working employee or ordering level when the rules are defined here for price variations such as discounts, special sales conditions, etc.
          o Create names (IDs) for prices rules to be applied to events, categories, products, stores, etc.
    * Promotions
          o Define product promotions
          o Specify text for promotion
          o Specify rules for administration
          o Identify stores for applicability
          o Assign tracking codes

Facility Manager

    * Facility Management
          o Facility
                + Facility can be a Warehouse, Retail Store, Office, Building, Meeting Room, etc, etc.
                + Inventory & Warehouse Management
                      # Inventory Location Management
                      # Pick/Primary and Bulk Location Management, set thresholds for recommend replenishment stock moves
                      # Inventory Management: Quantity On Hand & Available To Promise with Order Inventory Reservations and Item Issuance for Shipments
                      # Pick & Pack Management with picklist generation, supports limited number of orders per picklist, sorts list by location, can generate pick lists separately for different shipment methods
                      # Handles order splitting preference to ship all at once or as available
                      # Order only included in picklists when sufficient inventory is on hand in pick/primary locations
                      # Streamlined or detailed packing and shipping processes with serial scale support for weighing and label printing support

          o Facility Group
                + Grouping facilities under a common topic enables consolidated assignments or instructions
                + Group features
                      # Rollups (parent/child relationships)
                      # Role assignments
                            * Party to group
                            * Group to party
                      # Time of existence or relationship
                            * From
                            * Thru
    * Shipment Management
          o Parties
                + Contact mechanism content
          o Automatic Shipment Creation from Purchase and Sales Orders
                + Estimated Costing
                + Latest Cancel Date
          o Shipment Scheduling
          o Shipment Items
          o Shipment Packages
          o Shipment Item Package Assignment
          o Shipment Route Segments
          o Shipment Package Route Segment Assignment
          o Generate a Shipment Plan
          o UPS XML-based Integration (XPCI)
                + Confirm Shipment (gets tracking number, pricing and other information)
                + Accept Shipment (gets shipping label image and finalizes the shipment)
                + UPS then knows what to pickup and has all information about shipments and packages
                + Void Shipment
                + Track Shipment (updates tracking info)

Order Manager

    * Search for existing orders
          o By Order ID or Customer PO#
          o By Product ID
          o By Role Type
          o <>By Party ID or User LoginIDBy Order Type
          o <>By Store or Web SiteBy Status
          o With Date Filter
    * View existing orders
    * Order Entry
          o Sales Orders
          o Purchase Orders
    * Purchase Order Receipt Scheduling
    * Back Orders: includes customer notification, delivery estimates, partial CC settlements, CC refunds, etc
    * Returns & Refunds: based on order items, track reasons, put refunds on CC, billing account, mail a check, store credit, etc; assisted creation of replacement order

Accounting Manager

    * General Ledger Accounts
          o View Chart of Accounts
          o Create New GL Account
          o Edit an existing GL Account
    * Billing Accounts
          o Find a Billing Account
          o View/Edit a Billing Account
                + Delete
                + Update
                + Modify Roles
                + Modify/Create new Terms
                + Find/View Invoices
                + Payments
    * Invoices
          o Find/View existing Invoices
          o Automatic Invoices from Purchase and Sales Orders
    * Payments
          o Find a Payment Received
                + by Payment ID
                + by Payment Method Type
                + by Status
                + From/To Party
                + with Date Filter
          o Record a Manual Transaction

Work Effort Manager

    * Track work efforts
          o Tasks & to-do items
                + Hierarchical items for projects, phases, tasks, sub-tasks, etc.
                + Assign items to multiple parties
                + Track priority, cost estimates, etc
                + Track estimated and actual: start times, end times, durations
          o Calendar events
                + Manage shared and private scheduled calendar event
                + View by day, by week or by month
                + Notify other parties of events, tasks, assignments, and accomplishments
          o Workflow activities
                + View all activities assigned to you
                + View all activities assigned to a role or party group that you belong to
                + Update the status of your involvement in the activity
                + Based on your status updates the system will automatically update the activity status
                + Custom templates and views can be added to display information related to each activity from the workflow process context or other database data
          o Work efforts are associated with the cost side of the Cost-Benefit analysis; to manage both sides of the comparison work efforts can be associated with requirements or requests
    * Track requests
          o Supports requests: for support, for features, for fixes, for information, for quotes, for proposals
          o Associate requests with requirements
          o Associate requests with work efforts (tasks, projects, etc)
          o Each request consists of multiple items, each of which contains details about what is desired
          o The request acts as a package of multple desired items
          o Each request item contains a "story" of what is desired
          o In the Cost-Benefit scheme of things a request is associated with the benefit side; costs are associated with the resulting work efforts, allowing you to track and manage BOTH sides of the comparison
    * Track requirements
          o Used to internally manage required features for a product
          o Usually based on requests, or request items to be more accurate
          o Each requirement contains a "use case" for a more formal description of what is to be created
          o Requirements are also on the benefit side of the Cost-Benefit analysis, but the benefits are generally better understood through associated requests

Content Manager

    * Web Site Management
          o Create sites
          o Modify sites
          o Associate parties
          o Assign Hosts and Ports
          o Establish Standard and Secure Content Prefix
          o Specify Cookie Domain
    * Dynamic Survey Management
          o Create survey
          o Find existing survey
          o Edit existing survey
    * General Information/Concepts
          o Basic Content application screens for creating/updating content, data resources, meta data, content structure, etc.
          o Use slightly modified WYSISWIG editors from WSPublisher for editing of HTML, XML, plain text and other content
          o Tools to mount content structures as webapp resources
          o Associate parties with content for administrative purposes or for things like keeping track of who has read and who must read specific content
          o Categorization and security features so that sets of content can be administered and view by limited groups of users.
          o FreeMarker/XSLT/Velocity to allow for templating in content text, makes it more flexible like JSPs for dynamic content when needed
          o Utility transforms put in the FreeMarker context for content templates that allow for including other content, refering to external resources such as images, javascript files, CSS files, etc.
    * Data Resource Management
          o Powerful search engine to find existing resources
          o Specify/Identify resources
          o Locate/Edit Text, HTML, Images, Attributes, Roles and Product Features
    * Content Management
          o Specify the Content Setup by updating the Content Type ID for Parent TYpe Id, description, etc.
    * Layout Editor


    * Cache Tools
          o Cache Maintenance
                + View cache size and hit/miss statistics
                + Clear all caches, individual caches, even individual cache lines
                + Clear all expired cache entries
                + Manage cache prameters such as size limit, expire time, soft references, etc
                + View inidividual elements in each cache
    * Debug Tools
          o Adjust Debugging Levels
                + Adjust debug log message levels as the application is running
                + Changes here stay until the server is shut down
                + For permanent changes, use the file
    * Entity Engine Tools
          o Entity Data Maintenance
                + Find, view, create, update, and remove data in any entity
                + Works dynamically according to entity definitions
                + Uses flexible permissions to allow access to all entities, or to a specific set of entities
          o Entity Reference & Editing
                + Displays detail about all defined entities including fields, types, table & column names, relationships, etc
                + In main view frame entities are sorted alphabeticly by package
                + In the left frame there is an alphabetical list of package and an alphabetical list of all entities
                + Relationships are displayed with links to the related entities, making it easy to browse the data model
                + An editing page can be used to create and modify entity definitions in memory
                + A page that compares entity definitions to the database (just like what is done on startup) and optionally adds missing tables and columns to the database
                + Templates that write the entity model and entity group model XML files in a consistent way for easy comparison (note that these must be used to save in memory entity definition changes); these templates can also be used to output this information to the browser
                + A template that reads database meta-data and creates first pass XML entity definitions which can then be refined according to your preferences
          o XML Data Export
                + Exports data from entities as an XML file
                + The XML is structured such that there is one element for each entity instance, and one attribute or sub-element for each populated field in the entity
                + The XML file can be saved to the disk on the server or delivered through the browser to be viewed and/or saved on the client
                + High performance and scalable stream based output technique can export an unlimited number of entity instances in each pass
          o XML Data Import
                + Imports data from entities in an XML file
                + The XML is structured such that there is one element for each entity instance, and one attribute or sub-element for each populated field in the entity
                + The XML file can be loaded from the disk on the server or uploaded through a form in the browser
                + High performance and scalable stream and SAX based input processing technique can import an unlimited number of entity instances in each pass
    * Service Engine Tools
          o Job List
                + View all scheduled "job" services
                + Displays job ID, start date/time, finish date/time, and service name to invoke
          o Schedule Job
                + Allows the manual scheduling of a named service
                + Can specify interval size and count
                + Can specify an absolute start and finish date/time
                + Can manually add data to the persisted context used for running the service
          o Thread Viewer
    * Workflow Engine Tools
          o Workflow Monitor
                + View all running processes
                + Displays package & version, process & version, status, priority, start date, etc for each process
                + Can drill down to see all activity instances that are part of the process
                + Displays activity ID, priority, status, start date, complete date and assignments for each activity
                + Links to activity management page in the Work Effort Manager for each activity
                + Links to party profile management page in the Party Manager for each party assigned to each activity
          o Read XPDL File
                + Reads, verifies, and displays an XPDL file
                + Can be located in a file on the server or at any URL location
                + Can verify only, or also write the data to the database for workflow process execution
    * Rule Engine Tools
          o Logikus - Run Rulesets
                + Provides a web-based user interface for querying a ruleset containing facts and inductive rules
                + Currently only supports backward chaining
                + Can determine one result at a time or all results at once
                + Many example rulesets are included for experimentation
    * Data File Tools
          o View Data File
                + Displays data from flat files based on a format definition file
                + Can write the data file back out to verify the format definition and read/write repeatability
                + Can load data file and format definition file from a URL or file on the server
    * Misc. Setup Tools
          o Edit Custom Time Periods
                + Browse, create, update, and delete hierarchical custom time periods
                + Time periods can be associated with an organization party, and browsing time periods can be filtered by party ID
                + Manages fiscal years, quarters, months, bi-week, week and any custom period type
                + Track a period number, period name, from date and thru date with each time period
          o Edit Enumerations

          o Edit Status Options

    * Server Hit Statistics Tools
          o Stats Since Server Start
                + Displays server load and performance statistics for each resource, group of resources, and for all resources
                + Tracks data about different types of resources including requests, events and views
                + Displays accumulated data since the server started
                + Links to pages that display the same data for specifc time bins
                + Time bin data is persisted for future analysis

I'd say that looks "Feature Rich" for something FREE ...  :D 

Categories: Business Applications - Java 1.5 - Requires web server - Enterprise Solutions -  Tracking - Shipping - Inventory - Sales - Mac System X - Leopard - Tiger - PPC - MacIntel - LINUX - Windows - Free BSD