On September 13th and 14th I participated in the 20th International Conference on Cooperative Information Systems (CoopIS 2012), in Rome, Italy. I presented a paper called “Requirements-Driven Qualitative Adaptation”, which is one of the final pieces of my PhD work in the University of Trento, Italy.
As usual, I wrote quick summaries of the presentations that were given in this track in order to share it with colleagues from DISI/Unitn. If you are interested in one of these works and can’t find a copy in the author’s website, let me know because I got the proceedings of the conference. The rest of the post summarizes the presentations in chronological order.
Day 1: Wednesday, September 12th
Unfortunately, I was not able to participate on the first day. I was coming back to Italy from Brazil on that day and I arrived in Rome late at night.
Day 2: Thursday, September 13th
The second day of the conference started with a keynote from prof. Manfred Reichert, from the University of Ulm, Germany, titled Process and Data: Two Sides of the Same Coin? Prof. Reichert talked about his research work in the area of Process-Aware Information Systems (PAIS), in the context of projects ADEPT and Corepro. The former includes individually adaptable process instance as well as process schema evolution, which respectively resembles instance and class adaptation in my work. The latter aims at using data as the driver of large processes and conducting data-driven change. The ADEPT project has even been tried in industry, producing a BPM tool called Arista Flow.
The bulk of the keynote was, however, about his current research interests in Object-Aware Processes, which continue the trend of data and process integration from his earlier projects. The idea with object-aware processes is to adjust the process instances depending on what values are set in the attributes of the respective object instances. It includes Object Model/Process Model, Object Instances/Process Instances, etc.
The final part of the keynote was about thePHILharmonicFlows project. Its idea is to consider one particular class of objects and define micro processes for it, specifying the life-cycle of the instances of that class. Other things can also be managed in this fine level of granularity, e.g., authorization. Moreover, forms can be automatically generated. Another proposed model contains Macro Processes, which relate different classes and their possible states. Relations between macro processes connect different micro process models (e.g., if all review instances get rejected, the associated application instance should also be rejected). Process schema and object schema evolution is still an open issue.
Technical Session: Discovery and Detection
The first technical session of the day started with the paper Discovering Context-Aware Models for Predicting Business Process Performances, presented by Luigi Pontieri (University of Calabria, Italy). The work is in the context of Process Mining and the challenge is to discover predictive models to help optimising business process enactments. Process executions are represented as traces, composed of a list of executed activities and the time spent in each of them. Current prediction models are still very imprecise when dealing with complex and flexible/adaptive business processes. The observation is that performance often depends on the context of a process enactment. So their idea is to cluster the executions, grouping them by process variant (dependant on context) and discovering a Process Prediction Model (PPM) for each variant.
Next, Wil van der Aalst (Eindhoven University of Technology, The Netherlands) presented On the Role of Fitness, Precision, Generalization and Simplicity in Process Discovery, which was also on Process Mining, specifically process discovery (given logs of process executions, create a model of the process). One challenge in process discovery are conflicting requirements: replay fitness (able to replay event log), simplicity (Occam’s razor), generalization (not overfitting the log) and precision (not underfitting the log). Another challenge is the huge search space: the space of possible logs of execution of process is possibly infinite. The authors then propose a genetic algorithm to generate better models (genetic mining), evaluating each of the four requirements using specific formulas for each of them (see paper). Fitness usually gets a higher weight. For this, they represent the process models using Refined Process Structure Trees (RPSTs). Results have very high quality w.r.t. to the four requirements. However, there still is a performance issue with the approach, especially if the process has a high number of activities. A tool is available at www.processmining.org for those interested.
Then, Sanjay Madria (Missouri University of Science and Technology, USA) presented ECO: Event Detection from Click-through Data via Query Clustering. The baseline is event detection of real-world events, an activity that is becoming increasingly popular, through the analysis of queries in search engines. The authors propose event detection by analyzing data from click-through logs. The entries in the log are viewed as the result of queries in the search engine. The approach integrates content (of the web page), structure (of navigation) and web usage (click-through). The approach filters the click-through data by cleaning it and preparing for partitioning, then partitions the log into clusters, each of which represented by bipartite graphs, then finally summarises the analysis by generating Hybrid Cover Graphs (HCG). The HCG connects vertices when their distance is below a given threshold. From HCGs the approach can detect real-world events that occur in specific periods of time.
My presentation closed the session and according to my Unitn colleagues present it was a good presentation. However, given that this conference was not particularly focused neither on requirements nor on adaptive systems, I didn’t get questions from the audience, leaving to the session chair the responsibility of asking me at least one question (a classic one, on validation, no less). It might have contributed to this the fact that the session chair completely lost control of time in the previous presentations, which made me start my presentation only 5 minutes away from lunch hour…
Technical Session: Security, Risk and Prediction
Given the late conclusion of the previous session (as explained above) and the fact that the conference did not offer lunch and we had to go to a restaurant nearby, I was late for the first afternoon session, missing the first presentation, which was titled Automated Risk Mitigation in Business Processes. The second presentation was Mattia Salnitri‘s work Aligning Service-Oriented Architectures with Security Requirements. Given that this post will be read mostly by Unitn colleagues and they have probably watched Mattia’s dry-run of the presentation, I did not write a summary for his talk.
After Mattia, Michael Westergaard (Eindhoven University of Technology, The Netherlands) presented Looking Into the Future: A Priori Advice about Timed Declare Process Models. A timed declare workflow adds time constraints (either start time and/or end time) to flows between activities in a process. There are approaches to timed declarative process, but they only provide a posteriori runtime checking. The idea is to provide a priori warnings in order to avoid problems before they actually happen. To do that, the authors propose to use timed automata, which are like regular automata but work with “clocks”, that can be reset and verified for time constraints. Translating a timed declare model to timed automaton is, however, a challenge. The proposed solution is to provide the semantics of the timed declare model in a strong logic (MTL, undecidable), while also finding a representable subset of the timed declare models that is translatable to timed automata. This subset is the set of models whose time constraints [a, b] have either a = 0 or b = infinity. In this way, you can also recognize when models have internal contradictions. There are some tools, downloadable from declare.sf.net and cpntools.org.
The last presentation of the session, and of the day, was Planlets: Automatically Recovering Dynamic Processes in YAWL, by Andrea Marrella, (Sapienza University of Rome, Italy). The work focuses on process adaptation, dealing with exceptional circumstances, be them expected/anticipated or unanticipated. In particular, it uses Process Management Systems (PMSs) and YAWL (Yet Another Workflow Language). YAWL represents exceptions using exlets, which define if-then rules for the exception and can be associated with worklets, which in its turn can represent compensatory processes. This can already deal with anticipated failures. The problem, then, is how to deal with unanticipated exceptions, which derive from processes with hundreds of context variables, whose combinations cannot be analyzed beforehand. They propose to extend YAWL with Planlets, which describe tasks in terms of preconditions, postconditions and effects, defined in a domain theory that reflects the context of execution. They are attached to tasks in YAWL models through annotations. Failures arise when associated pre-conditions for a task are not satisfied at the time it is to be started or when post-conditions are not satisfied after it is executed. In that case, the current process is suspended and a planning service is called to come up with a compensation plan on-the-fly, based on the domain theory, execute it and go back to the original process. The planning service is supposed to synthesize plans given unanticipated exceptional conditions. After plans are generated, they are stored and the condition is now considered anticipated. The planner is proposed in a different paper. It is a well-known NP-Complete problem, by the way.
Day 3: Friday, September 14th
The third and last day of CoopIS had only two technical sessions.
Technical Session: Service-oriented Architectures and Cloud
The first presentation was A framework for cost-aware cloud data management, by Verena Kantere (Cyprus University of Technology). The context of the work is virtualization, cloud information systems. The authors want to achieve efficient data services on the cloud and their use case is handling scientific data with this infrastructure. They propose a framework which can estimate service cost (building, execution and maintenance), predict service consumption and suggest prices for selling the services, considering query workflows, past experience and risk management.
Next, Huy Tran (Vienna University of Technology, Austria) presented Event-driven Actors for Supporting Flexibility and Scalability in Service-based Integration Architecture. In service-based integration architectures, connections are usually hard-wired, making them hard to change. Current solutions have almost no or limited support for runtime adaptation and evolution. To relax the dependency among these components, the authors use Dynamic Event-Driven Actors (DERA), which provide loose coupling and flexibility, but are not easy to understand (especially for large designs).
Then, A conditional lexicographic approach for the elicitation of QoS Preferences was presented by Raluca Iordache (University Politehnica of Bucharest, Romania). According to her, given the availability of web services nowadays, clients will select the best service based on QoS properties. And since services change over time, we need a service selection component that reads QoS requirements, considers tradeoffs and selectes the best service at the moment. QoS requirements would consist of constraints and preferences. Current methods to do so are either not satisfactory or too complex. The authors propose a new method to ranking services. The method is based on lexicographic preferences, but attaching conditions to these preferences. A prototype implementation is available at qospref.sourceforge.net.
Finally, Claudio Di Ciccio (Sapienza University of Rome, Italy) presented Goal-based Composition of Stateful Services for Smart Homes. The authors focus on the Roman Model for the representation of conversational behavior of services (using FSMs). However, there are some drawbacks in this approach, as users usually think of goals and not FSMs and observing the constraints in this model is tedious. Therefore they propose a framework that uses goals as input and provides a solver that synthesizes the orchestrator for the requested process.
Technical Session: Collaboration
The last session started with Analyzing Design Tradeoffs in Large-scale Socio-Technical Systems through Simulation of Dynamic Collaboration Patterns, by Christoph Dorn (UC Irvine, USA / Vienna University of Technology, Austria). It tackles the problem of system engineers having little support for anticipating overall system behavior in socio-technical systems. The challenge is to try and avoid negative effects in the system. The proposal is to perform simulation of human behavior combined with the technical system. Modeling of the socio-technical architecture is done using hADL (previous work).
André Negrão (Technical University of Lisbon, Portugal) presented Semantic and Locality Aware Consistency for Mobile Cooperative Editing. The context is distributed cooperative editing, which is an increasing trend given the popularity of capable mobile devices. The goal of the work was to design an efficient and scalable consistency model for cooperative editing applications running in resource-constrained mobile devices. The proposal is Cooperative Semantic Locality Awareness (CoopSLA), which is founded on the assumption that users are more interested in some regions of the document. Operations in the document are, therefore, locality-aware, focusing on each user’s chosen observation points.
The last presentation of the conference was titled Foster an Implicit Community based on a Newsletter Tracking System and was presented by Tiago Ferreira (IST-UTL, Portugal). In the context of a Newsletter Tracking System, the problem consists on identifying groups in communities with many individuals and connections among them. The solution is based on categorizing the links in the newsletter and creating implicit connections between users that click on links of the same category. Experiments performed in the nano-tera.ch community, in which information on internal groups was used to promote conferences/workshops based on users’ interests, also predicting the number of attendants on these events. Being a research community, they also used the result to promote collaboration among researchers and to identify the community’s main followers.