Apr 25, 2011

What is ERP?

No matter if you're an excutive office, IT consultant, software developer or a business manager, you've heard people talk about ERP in meetings and sessions.  And probably a half-dozen of ERP providers have already come knocking at your office door to present their products.

No doubt that you have spent hours searching the internet on what exactly is an ERP and how can it help an organisation.  But if you're still in doubt, this writing may help you.  I'll try to explain the golden characterisitics of an ERP in a simple language; so please bear with me.

The Definition
ERP is an integrated, business process oriented and best practice based information system that helps managers better understand the situation of their organisations.

So a software that is called an ERP is:
  1. Intergrated
  2. Business process oriented
  3. Best practice based
and its ultimate goal is to help managers make more efficient decisions.

Integrated (Data)
In an integrated software, what one user does in a organisation can be immediately seen in another organisation by another user.

For instance, in a trade firm, as soon as a purchase invoice is entered and approved, it may immediately effect the product cost and accounts payable and change the P/L.  In such a system, when receiving a customer payment, the finance user can instantly check for which invoice this payment is happening and what are the payment terms.  Upon entering and approving the payment, the customer's receivables decreases and at the same time the sales staff may be notified.
Figure 1: Sample Integrated Information System (note that there is only one place to store/retrieve data)

The subtle point is that those series of events take place without requiring an administrator.  In other words, it is easily and flawlessly possible because all the software data resides in a single logical place and there is no clutter.

Business Process Oriented
From ERP point of view, the performance of your organisation is the result of execution of several business processes each of which covering a slice of your organisation and involving different layers of that slice to do the job; just like a slice of cake which cuts through different layers of the cake.

For example, in a trade firm, the sales business process involves sales, finance and procurement (if needed) departments and in each of them one or more users or organisation roles play a key role in performing the process.  Look at figure 2:

Figure 2: An exampe of business process oriented view of organisational perforamnce
As you can clearly see, sales business process involves the whole organisation in worst case.  If we look closely, we can understand how being integrated helps; for example a requisition is created based on sales order, a purchase order is created based on the requisition and purchase invoice is issued as a consequence of a sales order and all the links of this chain of actions are stored in one logical place, meaning that there is no need for any extra action from the staff; they just need to do their job which is running the process.

Now look at figure 3:

Figure 3: Information back-link in ERP

As a result of data integration and mapping organisational performance to business process execution we have a consistent chain of documents which enable us to accurately find out the reason/root of any organisation acitivity at any given time.

Best Practice Based
It is possible that a software taking advantage of a good design reach the above characteristics.  But in that case, still there is something missing to enable the software to help managers in the best possible way: best practice knowledge.

What distinguishes ERP from myriad of softwares claiming the same achievements, is extensive amount of best practice used in its design and configuration; meaning that ERP offers you the most efficient strategies -which have been tested in real life by prominent firms- to manage your organisation.  In fact, from this point of view, ERP is the medium to transfer the optimum management strategies/techniques from successful and well-known firms to others.

This characteristic is vital to an ERP as the only idea behind an ERP is to help managers, manage their organisations better and that is not possible without using optimum strategies.

Helping with Optimum Management
You may wonder why a software company would bother spend considerable amout of money, take a lot of risks and create a software with all the above characteristics?  And why a business manager would think of implementing such an expensive and giant software?

There is a simple rationale:  approaching optimum organisational management.

After a successful implementation, a manager is able to analyse her organisation's performance and accurately find out its weaknesses and strengths and decided how to imporove or use them.  And that is what a manager should do: making decisions.

By handling all the complexity of an integrated data flow, simplifying access to organisational performance information and offering the manager with accurate and up-to-date information, it enables the manager to concentrate on analysing and decision making without wasting her own and her staff's precious time dealing with technical details and report preparation headache.

Consequences
Let's suppose you have successfully implemented ERP in your organisation and it's running smoothly.  What are the benefits for you (as a top-level manager)?

  1. ERP integrated data model makes activities more transparent and enables users to access their required information at any time in a real-time manner.  The sales officer doesn't need to call finance dept. by phone to know the open amount of a customer:  ERP gives her what she needs right on time.  As a result, work hours are used more efficiently and personnel do their job based on accurate and real-time information.  This means more accurate and efficient performance for your organisation.
  2. Business process based analysis of your organisation provided by ERP, helps you discover the bottlenecks faster and more accurate.  For example, a drop in sales does not always mean the sales staff are incompetent; it may be because of the delay in procurement which eventually leads to late delivery and customer unhappiness.  With ERP you look at your organisation from above as a collection of (usually) inter-connected business processes not as a handful of separate departments.
  3. Using best practices in every day business is a key factor to your organisation success!  Now, thanks to ERP you can simply adopt the most efficient strategies taken from sucessful companies.  For example if you are the manager of an automotive business firm, you can enjoy the best practices applied by Mercedes Benz and that is a 100% win -unless you're the Benz's manager herslef :-)
Conclusion
ERP is an information system which is integrated, business process oriented and based on best practices and its main audience/beneficiaries are top-level managers. Successful use of ERP makes your organisation operate faster and more accurate and considerably improves your understanding of the performance of  your organisation.  ERP makes space for you to do your job: making decisions.

Apr 12, 2011

Persian Utils

I'll do this in a telegraphic manner since it's too late and my eyes are burning with sleep.

I've created a repository on GitHub named persianutils.  The goal is to put the solution to the Persian locale specific problems I encounter out there so it might help others from searching the net for hours.

Currently there's a module calendar.py which implements date conversion from Persian to Gregorian calendar and vice versa.