TECH TALK: Rethinking Enterprise Software: Software Components (Part 3)
The software components that serve as the building blocks of the new enterprise IT architecture are Enterprise Core, Enterprise OS, Information Bus, Databases, Adaptors and Digital Dashboard. As we go up the stack (from the OS to the applications), software vendors should be able to take pre-fabricated modules and assemble them together. An analogy from the MS-Windows world is how easy Microsoft made communicating with the various devices through its API. In fact, someone once described Windows as a collection of device drivers. It may be too simplistic an explanation, but think of how the world was before Microsoft came up with its APIs. The enterprise software world is in that state today.
The big companies can get their own custom implementations or build on software from the large vendors. The smaller companies are caught in no mans land between the two options: one of them is to buy existing software and the other is to get software developed from scratch. Both are expensive and impractical from the point of view of the SMEs (small and medium enterprises). What’s needed is a low-cost, integrated eBusiness suite built out of simpler components.
Creating simpler modules for accounting, payroll, prospecting, sales force management can help in two ways. First, as more companies build these modules, options will be higher for the intermediaries (the software assemblers who are akin to the hardware assemblers the Genuine Intel Dealers). Second, the assemblers can now take a 70-80% solution and then quickly build the necessary interfaces for the end- customers, speeding up the application development process.
Linux and Java should be the two pillars around which the enterprise software components industry needs to be built. For too long, the open source industry has focused on the lower levels of the stack as a result, we now have multiple, different Linux distributions, desktops, word processors, spreadsheets and browsers. This is a waste of time. Stick to adopting one of each Red Hat as the Linux distribution, Evolution as the Email-Calendaring client, Mozilla as the Browser and Open Office for the suite of productivity applications. These become the components for the Enterprise Core. The focus needs to be on creating the enterprise software modules. That is where variety is needed for different industries, different countries.
The middleware (between the Enterprise Core and the applications) is where Java needs to come in. Writes Ganesh Prasad: J2EE is an agent of commoditisation, just like Open Source. Like Open Source, it transfers power from vendors to users and creates a buyers market. In practical terms, what this means is that users can follow an inexpensive prototype strategy (by using Open Source implementations in development and switching to commercial equivalents in production) or they can follow a mix-and-match strategy (by using the cheapest components that are good enough). What is important in the SME case is the ability to mix-and-match.
For the dream of enterprise software components to come true, whats needed is standardisation. This is the interesting part. For the first time, not only are there standards for web services but also for business processes. By using XML,SOAP, WSDL and UDDI along with J2EE, it is possible to build the Enterprise OS on which developers worldwide can build. This will open up markets for enterprise software hitherto untapped.
Imagine hundreds of software factories churning out low-cost, interchangeable components, built to a standard interface. These factories should work like the entertainment companies producing TV serials (as opposed to films). Films take 2-3 years to create and are monoliths. That is what the enterprise software giants are today. They come up with the new products or major upgrades once every few years. TV serial makers, on the other hand, come up with something new every week. They can change course quickly if some experiments dont work. The TV channels are the assemblers piecing together 30- or 60-minute entertainment components to create prime-time programming. The entertainment world needs both the films and the TV serials. What SMEs want is the equivalent of TV serials, and that is what is missing from todays enterprise software world.
Whats needed next is an integrated development environment for business processes to be configured through a graphical interface.
Tomorrow: Visual Biz-ic
The reader-friendly version of the story, TECH TALK: Rethinking Enterprise Software: Software Components (Part 3), is made available for your personal and non-commercial use only.