This is an introduction article about my vision of the soon to be published eZ Netflow project and how this vision may come true while working to get this online service up and running in the shortest time possible. You may want to skip to the end to see an overview of the polished product. I started thinking about this project when I was interested by the new business process management systems (BPMS), while trying to figure out how I could make packaged software (ERP, CRM, SCM…etc.) customizable in two dimensions: data and process. Data customization was relatively easy, add a field here and there, for such a user screen and you were done. Things were much more complex when I had to work on custom user scenarios, with different rules or additional steps, not to mention the need to integrate all this with a couple of existing applications here and databases there. Process customization is where legacy packaged software fails in general.
As I further deepened my knowledge of BPMS nice features, I managed to realize that with such technology, you can have both types of customization: process and data. Then, I imagined what would be a “seamless” customization of existing applications. Why just existing applications instead of a new one (a.k.a. composite application)? The answer is simple: change management burden. You don’t want people to radically change their applications, which have been stabilized after a very long time of debugging, maintenance and custom people training. In fact, all you want is to allow them to quickly ad new features, without disrupting what they already take for granted.
Now, remember that what motivated the existing applications was the need to solve a specific problem in a specific context or period of time. Business evolves and the only constant is change. Change in culture, habits, regulation, market pressures and opportunities….etc. If you analyze the nature of change, it is not about the base concepts or objects you need to deal with. A contract or a sale opportunity is such a concept or object. In practice, this means that existing applications are still very usable in that sense. The only thing you need is to allow for progressive extension depending on the “user context”.
The user context is very centric to what I want to achieve. On the one hand, as knowledge workers, our brain is trained to act or react following a certain pattern depending on our context. On the other hand, the software applications we use should be the natural extension to our brain and let things get done the way we like at runtime, in contrast with design time. Runtime is the time we execute our business processes. Design time means the time we should all take to decide what is the best and appropriate process to fulfill our duty while making our life easier, simpler and more successful.
So, in short, what I wanted with eZ Netflow is something that will:
1) Provide a space where you can get a feeling about what a BPMS is and what it can help you achieve
2) Be easy to setup and run in a couple of hours or minutes
3) Forge a wide community of process experts to provide valuable advice on the business and technical levels
4) Invite all kind of people and give them the necessary means to rethink their processes
5) Allow for quick deployment of new business processes in an existing application
6) Seamlessly integrate and complement existing applications
In a future article, I will set a use case to illustrate these objectives and why they are so important. There is much to come in the next weeks and you may be surprised how fast we can move. So stay tuned!
[...] is my third article about what we are working on to get eZ Netflow up and running. As I explained earlier in Part1, there are many objectives attached to this project. Now, I would like to take this opportunity to [...]