We’re starting writing a book for O’Reilly that’s titled “Enterprise Web Applications: From DeskTop to Mobile”. The book will be available under Creative Commons license, which means you can read it and provide your feedback from the get go. Here’s the github repository where we’ll keep the current version of the book. In the morning we had a discussion about the meaning of the word Enterprise applied to Web applications. Below is the draft we came up with and we ask your input – would you agree or have a different understanding of the meaning of the term “Enterprise Web Application”.
The easiest way to do this is by example. Creating a Web application that will place process orders is not the same as creating a Web site to publish blogs. Enterprise applications include company specific workflows, might need to be integrated with number of internal systems, data sources and processes.
Google Doc would not be enterprise Web application. But Google appliance integrating search operating on company documents, databases, processes, tickets, and providing collaboration is – it integrates consumer/workforce front office with what the company does (back office).
Google Maps is not an enterprise application. But a Google map integrated within the company site used by insurance agents to plan daily route, scheduling, doing address verification and geocoding – can be considered and enterprise application.
Just using a Web application for business doesn’t make it an enterprise Web application. If you take Gmail as is, it won’t be an enterprise application until you integrate it into another process of your business.
Is an online game an enterprise application? It depends on the game. A multi-player online roulette game hooked up to a payment system, and maintaining users’ accounts is an enterprise Web application. But playing Sudoku online doesn’t look too enterprisey.
How about a dating Web site? If the site just offers an ability to display singles it’s more of a publishing site as there is not much of a business there. Can you turn a dating Web site into an enterprise application? It’s possible.
Some people will argue that an enterprise application must supports multiple user, high load, be scalable, have business and persistence layers, offer professional support et al. We don’t believe that a Web application should do all this to become qualify for the adjective enterprise.
Let’s keep the definition simple.
An enterprise Web application is the one that helps an organization running its business online
In this book we are going to build a Save the Child Web application that will allow people to register, donate, find local kids that need help, match donors and recipients, upload images, videos and display statistics. Would these feature make Save the Child an enterprise Web application? Yes, our definition does not require an organization to be profitable. Our non-for-profit organization that collects donations for ill kids is our enterprise.