At the outset, I should admit one thing: I am somewhat of an outsider to the world of enterprise software. I havent used any of the enterprise applications. Much of my knowledge is through managing small businesses (1-35 people) over the past decade, and the reading and thinking (and of course, the writing) that I have done over the past year or so. My viewpoint is that of an SME (small and medium enterprise) in an emerging market (India).
I started thinking about the problem of enterprise software when I wanted to buy some software for my company for managing our customer relationships. I realised then that not only were the software companies uninterested in selling to us locally in India, but also that their costs were so prohibitive that it was completely uneconomical for us. To make our small business more efficient, we had to look at doing better than storing information in hard-copies, or in disparate files in MS-Excel. Yet, the software we needed was not priced for us. Even though we are primarily a software and services company, it did not make sense for us to write applications for managing our own processes.
In my own organization of 30 people, we use Tally for accounting (on a single computer), MS-Office on some of the desktops (others run Linux and OpenOffice), and Messaging software (our own). Marketing keeps its information in MS-Excel, and Accounts uses Tally. Our Support department has a web-based front-end which they use to report customer problems and solutions. The three databases are all silos. Its not easy for me which are my profitable customers and which are not. This makes it difficult to provide differentiated levels of service.
As I talked to other companies here in India, it became clear that there were two extremes in terms of software: the big enterprise software vendors whose prices were denominated in dollars, and whose focus were the top 500 companies in India, and the small software shops who could write anything from scratch provided you knew what you wanted. The problem is that it isnt easy writing out the specs for the software that small businesses want. Customised software development can become quite expensive. It also makes one dependent on the company that has written it in the first place. And, as we all know, the last 5-10% of any development project takes forever!
So, I thought further. Wouldnt it be nice if:
- I could get an integrated view of the enterprise in terms of information in (near) real-time. This should happen through data that is only entered once and is available across the enterprise to whoever needs it. I may be a small company, but I too have customers, partners, suppliers and employees. There are relationships to be managed across the board, and managing the information flow is a key requirement. So, when a customer calls or we call a customer, we should be able to get the full history of the customer in front us with a few clicks the setup at the customer, our products usage statistics, previous problems reported by customer, payment history. All the information is there today sitting in different disparate systems (some on the LAN, some on our Internet servers). But not only is the information not available in an integrated manner, it is also not available in real-time.
- I could visually define the business processes, rules and information flows in my enterprise. Still better, the system could come with a library of business processes from which I could use. While most SMEs do follow some processes, they may not necessarily be the most efficient. Being able to identify other companies in similar segments whose processes and flows could be used can help me define the processes for use in my company. The software would then automatically generate the necessary business objects and logic based on my choices. If required, I could then use English to define special business rules for my company.
Tomorrow: My Wishlist (continued), The Opportunity