Monday, 25 May 2009

Auckland Super City IT Costing

 
These two statements seem well out of step.
Merging council IT systems to create an Auckland "supercity" will cost
the best part of $200 million and could take eight years to complete,
according to consultancy firm Deloitte.

The [total] estimated integration costs have been assessed
to range in total between $120 million and $240 million over a
four-year implementation time frame from the Royal Commission Report
Did the Royal Commission ignore the costs of systems? Are IT
organisations and consultants taking the opportunity of change to gold-plate systems or
include the cost of deferred maintenance and upgrades?
While each organisation might have a different system for rating, dog licences etc., the business functions that these systems support are the same before and after implementation of the super city. The business of the new Auckland Council is an amalgamation and hopefully a slimming of the business of the existing authorities. While the changes for IT are not trivial, I suggest that the line by line examination of budgets does not stop at central government and someone asks hard questions along the lines of "why can't one of the  existing finance sytems, dog licencing systems etc be scaled up to cater for the increased population?".

Saturday, 23 May 2009

Heading into the clouds

I am taking my first steps into the Intalio Cloud. As an individual and for my small business, I like the concepts of cloud computing and use the Google family of services as part of my normal daily operation. This started as a Google Doc. Having an interest in the use of BPMS to formalise operations within and between organisations, I have been following the Intalio BPMS offering for some time and, despite some ragged edges, I find it a good approach.

Intalio Cloud is an interesting prospect. Where do you place it in the taxonomy of the cloud? Is it providing storage, compute power, platform, value added services ... ? Not only all of the above but apparently a range of hardware and services so that you can be your own cloud provider. An interesting scalability equation, I can operate somewhere in a blackbox datacentre with 2 users for free ; expand into a productive organisation at $x per user per month; form my own cloud service datacentre (using surplus power and cooling capacity of NZ South Island) all without changing the operational business processes.

So I will be doing a bit of tyre kicking and a much thinking about the security and other risks associated with putting the fundamentals of business operation out into the cloud. One problem with adopting a business solution in the cloud is that you may not pay much attention to what is going on to give you the results. You may trust that availability of the underlying components in the black-box data centre will be sufficient for your needs as you grow, and that your operation is secure. That last one is a bit problematic ... out of the box Intalio has you logging on with userid/password across http rather than use encryption (even https would be a great advance).

Wednesday, 8 April 2009

BPMN - Why and how of Signal

Thanks to Rick Geneva , I do not have to describe 'What' a Signal Intermediate Event is used for in a business process. He has provided the use cases for this useful element of BPMN. I responded quickly - now all we need is standard implementations in products like Intalio, pointing out the lack of implementation of signal in tools that support BPMN through to an executable. Of course, we can work around any lack of implementation of signal within a BPMS toolset but the meaning behind signal is not like anything else so a real implementation or common patterns of workaround would help.

You can draw the signal event in Intalio so at least the business process designer can start with a proper description of the use case even if the level-3 technical implementation diagram will differ in shape.

The BPMN specification says
A signal is a generic, simple form of communication
  • Within pools (same participant)
  • Across pools (different participants)
  • Across Diagrams

It is communication in its simplest sense ...
  • shouting out not knowing if anyone is listening, or has heard
  • and listening for shouts unaware of any other listeners

Signalling within pools

This very important as BPMN deliberately restricts message flows to communcation between pools so if you have parallel flows within a pool and you wish to communicate an event between the flows, a signal is the only BPMN mechanism available. For example, a simple synchronisation of parallel flows would be represented like this in BPMN.

Without signal, the workaround is to use a message via another pool like this ...

This does have the merit of working in Intalio but clearly deviates
from the simple expression of the business process. Adding more
listenerswould seriously obscure the meaning of the business model with implementation artifacts.

Signalling across pools


In communication across pools, the signal has a single sender and one or more listeners while, with messages each sender is connected to a listener. Here is a simple synchronisation between parallel processes.

Replacing the signals with messages even in this simple case loses the clarity of expression of the business process


In this case the single activity of signal in master process is replaced by two message event throws and it gets progressively more complex as more processes are introduced. In addition, for every participant introduced, a change has to be made to the model of the process doing the signalling although in practice no change is made to the real business process.

Across Diagrams


The lack of a signal implementation is especially felt where the business is modelled across a number of diagrams and there is a common need for communication. An over-riding interrupt perhaps. Each separate diagram may represent a division of the organisation by end-to-end process or department with separate reactions to the communication (like a fire alarm). Implementing without signal has similar problems to the above but the separate diagrams make the implementation and business models even harder to relate together. The link element is a candidate for solution here, but implementation is missing in Intalio. So we really need a full publish - subscribe service. RSS might be a practical solution to explore.


Conclusion

There is a real need
  1. for an implementation of signal events within tools that develop the executable from the BPMN model.
  2. in the absence of the implementation of signal events, a well understood implementation method or pattern is required for each of the uses of signal.


Tuesday, 17 February 2009

Not a good law, not a good look for NZ



New Zealand's new Copyright Law presumes 'Guilt Upon Accusation' and will Cut Off Internet Connections without a trial. Join the black out protest against it!

Monday, 16 February 2009

Simulation


Bruce Silver points out that business process tools do not do simulation well or usefully and lists some features that should be present in the BPM toolset to facilitate simulation.
This would be great but a simpler approach is to use the much more mature pure simulation tools (like Simul8 ). In that scenario, you can design your process using your favourite BPM modelling tool; transfer the model to the simulation tool adding the simulation properties and data; devise the optimal process under simulation and transfer the new model back to your process design tool.
The overall approach is summarised by this diagram from Simul8 but any product that exposes its data structure could be used in the same way.
Having a standard BPMN schema would help the simulation product people assist.

Wednesday, 11 February 2009

Project management vs. process manage...

Ayalew Kassahun raised an interesting question on the LinkedIn BP Group
For many it may be weird to imagine a world in which no distinction is
made between projects and processes. However, I think that every
process instance is a mini project. ... Just for sake of discussion I would suggest that it is more appropriate
to make no distinction between project and process management. In such
a world what will then be the consequences on management,
specifications and tools?

Firstly, I think that distinctions between process and project are hard to make outside the toolsets that attempt to specialise.

My interest is in business process management toolsets and I have been following much of the discussion about BPMN, BPEL and how the process model should end up being 'executed'. I am convinced that there is a need for a specification of the process that endures from the business idea through to technical execution of an instance of the process.

If we merge the concepts of process and project, I can see some real benefits in the process design world. For example, some analysis and modelling of the process can be done at the instance level rather than engineering a highly complex general model which attempts to deal with every possible eventuality. This alone has the benefits of redeucing impact of process design bottleneck and allows for a common way of dealing with business activities leading to common reporting, management. We would no longer have to treat activities differently if they were being handled through a PMO or through BAU.

However, in the BPM world, the toolsets are not very mature and some radical rethinking would have to take place.

Because the instance of a process/project could change during its life, then tools that do not have a tight relationship between model definition and execution will really struggle to deliver. The executing process will need to be changed through the business expression and not through some programmer intervention. So I would expect the run time BPM system to be executing a development of BPMN rather than a transformation in BPEL,JAVA or whatever.

Project management vs. process manage...

Project management vs. process management



Ayalew Kassahun raised an interesting question on the LinkedIn BP Group
For many it may be weird to imagine a world in which no distinction is
made between projects and processes. However, I think that every
process instance is a mini project. ... Just for sake of discussion I would suggest that it is more appropriate
to make no distinction between project and process management. In such
a world what will then be the consequences on management,
specifications and tools?

Firstly, I think that distinctions between process and project are hard to make outside the toolsets that attempt to specialise.

My interest is in business process management toolsets and I have been following much of the discussion about BPMN, BPEL and how the process model should end up being 'executed'. I am convinced that there is a need for a specification of the process that endures from the business idea through to technical execution of an instance of the process.

If we merge the concepts of process and project, I can see some real benefits in the process design world. For example, some analysis and modelling of the process can be done at the instance level rather than engineering a highly complex general model which attempts to deal with every possible eventuality. This alone has the benefits of redeucing impact of process design bottleneck and allows for a common way of dealing with business activities leading to common reporting, management. We would no longer have to treat activities differently if they were being handled through a PMO or through BAU.

However, in the BPM world, the toolsets are not very mature and some radical rethinking would have to take place.

Because the instance of a process/project could change during its life, then tools that do not have a tight relationship between model definition and execution will really struggle to deliver. The executing process will need to be changed through the business expression and not through some programmer intervention. So I would expect the run time BPM system to be executing a development of BPMN rather than a transformation in BPEL,JAVA or whatever.