Business people in charge of a particular business process in a company should graphically model it and the supporting business application should be automatically generated.
Of course this is only the tip of the iceberg since a lot of "things" have to happen in order for the above to work. These "things" are what I'd like to discuss in this blog and, with your help, conclude something that helps steer things in that direction.
Business or Enterprise Applications (ERP, CRM, MRP, etc.) operate in very similar ways, especially if you look at them from a technical point of view. You have different data entities that are created, used and/or transformed in different processes following certain rules. In order to retrieve data from these systems some kind of reporting tool is provided. Parametrizations are posible to change certain behavior, there are security settings as well as auditing functionality.
By generalizing these functionalities and trying to define components that would help us build such applications, I came up with the following list (by no means comprehensive):
Model
- Business Process Modeling Language (Workflow & Metadata)
- GUI editor
- Business Entity Class definitions
End User Interface
- Mashup composer (for different platforms/devices, not necessarily web)
- GUI generator
Business Process
- Business Process Engine
- Business Rules Engine
Services
- Business Services
- Auditing Services
- Communications Services
- Task Management Services
- Document Services
Data
- Reporting Engine
- Data Warehouses, Data Marts, etc.
- Business Objects Repository
- Master Data Management
With these components, the way we develop enterprise applications will change forever (I will be editing this list by adding/removing components or finding better names for the components).
Until next time...

1 comments:
Check out this article by Phil Gilbert. Especially the section titled BPM Basics. It compares traditional Enterprise Application Development vs a BPM approach.
Post a Comment