Three research themes: OAI, Models for Information Systems Management, Algorithm Synthesis
My second field of research comes from a practical observation that the deployment of EAI (Enterprise Application Integration) yields very interesting problems, from an OR (Operations Research) point of view.
The problems can be stated simply (cf. following Figure) as the optimization of a grid of systems so that the SLAs (Service Level Agreements) of a set of global (across the grid) process are met. This is a truly practical issue, namely a QoS (Quality of Service) issue.
Defining the QoS of a process does not differ from what one may expect in the world of IT: it is a question of throughput, latency and availability. Throughput measures the number of individual processes that can be performed in a fixed amount of time like a day. Many business challenges, from sales to customer care, rely on the ability to process so many customers events in a day. Latency is the time taken for the end-to-end execution of a single process, which is most often what the customer sees and reflects the quality of service that is perceived. Availability is the percentage of the time when the system is able to start a new process. A Service Level Agreement (SLA) will state that the IT systems must accept this many customer processes in a day with a completion time lower than a given bound for at least so many of them (a ratio) and a rejection rate less than another (small) number.
Meeting such a SLA, and even monitoring this SLA, is a hard task because the engineering (sizing and capacity analysis) is done on the individual systems and the infrastructure. We do indeed design and build individual systems with a fairly precise characterization of their availability, their throughput and their latency. However, the reverse-engineering from the SLA at the process level is hard for multiple reasons:
(1) The availability of systems coupled in asynchronous manner is difficult to evaluate (it is definitely not the product of availabilities, as with a synchronous approach). It depends on a lot of parameters and one may build a reliable asynchronous system with components that are far less reliable (using buffers and replication)
(2) The sizing issue is not a stationary flow (which is itself not so trivial because of the multi-commodity aspect) but a stochastic problem about the resolution of busts. Real-life situations create burst of messages that are difficult to process.
(3) The management of the flow is complex from a functional point of view: it is a matter of protocol rather than “simply” a matter of sizes of pipes & engines. The analogy with fluid physics is …only an analogy and the tricky questions come from the rules for handling priorities and congestion in the message traffic.
(4) Processes are interdependent because they operate on shared business objects. This dependency (a classical problem with databases) may be handled with serialization, which induces serious constraints on QoS, or with interleaving of processes and additional “re-synchronization” processes to correct the possible discrepancies.
(5) The pure stochastic asynchronous problem is made harder in real life with a combination of synchronous and asynchronous communications, and a combination of planned flows and stochastic flows which creates interesting planning issues.
We have coined a new name, OAI, Optimization of Application Integration, for this problem, which is illustrated by the following Figure. It is a multi-faceted problem, since we need to find:
- sizing rules, for our system architect,
- message handling and routing rules, for our software architects,
- monitoring strategies, to understand what goes wrong,
- operations procedures, for our operations staff when an incident occurs,
- simulation tools, to validate software and system architecture, as well as monitoring strategies
2. Models for Information Systems Management
The theme here is the understanding of information systems and their organizations.
I started in 1998, when I was asked to build a model for Bouygues Telecom's IT costs forecasting. It has been an endless journey since then, but I managed to make some progress along the way. I have grown over the years various models which seem to reflect the budget and activity of our division with some accuracy.
The second set of questions that I have found in my management practice has to do with organization principles and how they are reflected in the various recipes which exist in the field of management consulting. I have been reading "classics of organization theory" (literally, this is the title of an excellent book by Shafritz and Ott) and got very much interested by the "organizational architecture" topic.
This has led to a research program called SIFOA, for "Simulation of Information Flows and Organizational Architecture".