Thursday, August 25, 2011

RICE/CEMLI Terminology

In my Oracle career I often hear confusion over RICE/CEMLI terminologies, what they stands for ? what is the meaning of...blah blah with the help of my very good friend Charan, I have decided to write my take on this.

AIM (Applications Implementation Methodology) => During packaged ERP(enterprise resource planning) implementations, Clients often have additional requirements apart from the existing (standard) business process, for which they need to create/change the Vanila system (Unchanged ERP Implemented system) processes, and its these changes that come under RICE/RICEW components. AIM is the methodology/standards/published guidelines, which Oracle suggests it's Clients to follow while developing
RICE/RICEW components for their business requirements.

RICE stands for Reports, Interfaces, Conversions, Enhancements / Extensions
 > Sometimes extended to FRICE > F for Forms
                                        RICEW > W for Workflow.

Forms/Reports/Workflows : Create/Change existing forms/reports/workflows available in  ERP system to  meet the Clients business requirements.

Interfaces : Linking (Programs) between other systems to ERP system in order to synchronize the Data.They can be Manual, Batch or Real-Time. Interfaces can be either outbound or inbound. An outbound interface reads data from Oracle Apps tables and usually creates output files in the third party tool specified format. An inbound interface reads data from flat files (usually) and calls Oracle APIs to upload data into Oracle Apps.

Conversion : It is converting the data structure and data design of legacy system data to satisfy the customer’s business rules before importing it into Oracle .It is like a one time run of an inbound interface except that the amount of data processed during conversion could be potentially huge since all the required data from the legacy system would be transferred to Oracle.

Enhancements/Extensions : Please see below.

>> In R12 RICE components have been extended to CEMLI components.

CEMLI Stands for Configurations/Customization, Extension, Modification, Localization, and Integration.

Configurations : Configure the existing, pre-built application features according to your client's requirement.Changing setups and profile values can be the example of configurations.

Customization : Customization means altering/changing the standard objects or creation of custom object to meet client's business need. It may be Extensions or Modifications.

Extensions : Extension means creating custom code from scratch, existing objects (views, packages and java classes etc) can be used. It is having different behaviour from seeded one.

Modifications : Modifications is enhancing/changing the existing code to meet the client's requirements. It is the modification of seeded behaviour.

Localization :  It is to define the different legislative support provided by oracle Applications based on country/region/language requirements.

Integration : It can be Data Integration or Application Integration, options for these two are Open Interface tables, APIs, EAI(Enterprise Application Integration Tools), BPEL, AQ, EDI etc.

             >> Apart from these there is one more term and that is Personalization.

Personalization : Tailoring the layout or visibility of page content to meet client requirements is Personalization. Changing the user interface (UI) look-and-feel, making any field visible/enabled/disabled/mandatory/non mandatory comes under Personalization.

>> There are many guidelines and risks related to RICE/CEMLI components, but that’s for some other day, here I’ll restrict myself to overview of these terminologies.


  1. Thanks a lot for Explaning this in a nice way

  2. Looks too good. Thank you

  3. Well Done ..Really usefull

  4. Thanks for the information.

  5. Thanks for explaining in a simple manner ...

  6. Nicely presented..

  7. Abhay this is really usefull although its just an overview but its simple and clear to understand .Could you please share ur knowledge on INDEXs also

  8. Thanks Divya.
    I shall try to write something soon on Indexes.

  9. Can anyone explain the difference between Interface and Integration? Is it the same thing

  10. Dear Anonymous,

    Leave the definition as it is, let's take an example to understand the Interface and Integration in a simple way.

    Assume, you are implementing an Oracle ERP in any University, there Students are paying their fees through an online portal called ABC, System ABC generates an excel sheet based on daily payments. Now you need that data (daily payments and student details) in Oracle to create customers/receipts/invoice etc. Getting those details into Oracle is an example of Interface.(Data synchronization from non ERP system to ERP or it can be one ERP to another ERP system)

    Now through Interface you got the ABC system data into Oracle database tables(seeded/custom), you need to create customer, a receipt for a payment and apply that receipt to an invoice, you use different APIs to achieve this. One API is creating customer, next one a receipt and another one is applying that receipt to appropriate invoice. This can be a simple example of Integration (combining different functionalities to achieve the desired functionality).

    I hope this will help.

  11. Thanks for the information.

  12. very good answer to interface and Integration.

  13. Good piece of work! Thanks for posting and saving me from having to do it myself in order to explain it to my client!

  14. Thanks for explaining RICEW!

  15. Good one! I never knew before this meaning of RICEW

  16. Simply & nicely presented

  17. Abhay,

    I normally do not reply or comment on posts or blogs. However, I want to say thank you for putting this together in such a succinct and professional manner.

    With your permission, I would like to re-use portions of your blog or send a link to my development team to read your blog as part of my onboarding process

    Kindest Regards,


    1. Dear Joe,

      Thanks for your feedback. Please feel free to share the content of this blog that's the main purpose of my experience sharing.


  18. Nice. It helped me. thank you :)

  19. Do you have anything on GST implementatio?