This document presents an algorithm for detecting inconsistencies and redundancies in declarative process models mined from event logs. The algorithm represents constraints as automata and uses automata operations like intersection to identify conflicts or redundant constraints. It aims to return minimal and consistent models by removing conflicting or unnecessary constraints. The algorithm is implemented in a tool called Minerful and evaluations show it can improve the quality of mined declarative models. Limitations include the effect of constraint sorting order and performance challenges with large logs. Future work includes user involvement and integration into process mining tools.
Presented at the 12th International Conference on Business Process Management (BPM 2014), 7-11 September 2014, Eindhoven, The Netherlands.
Abstract: Process discovery is the task of generating models from event logs. Mining processes that operate in an environment of high variability is an ongoing research challenge because various algorithms tend to produce spaghetti-like models. This is particularly the case when procedural models are generated. A promising direction to tackle this challenge is the usage of declarative process modelling languages like Declare, which summarise complex behaviour in a compact set of behavioural constraints. However, Declare constraints with branching are expensive to be calculated.In addition, it is often the case that hundreds of branching Declare constraints are valid for the same log, thus making, again, the discovery results unreadable. In this paper, we address these problems from a theoretical angle. More specifically, we define the class of Target- Branched Declare constraints and investigate the formal properties it exhibits. Furthermore, we present a technique for the efficient discovery of compact Target-Branched Declare models. We discuss the merits of our work through an evaluation based on a prototypical implementation using both artificial and real-world event logs.
Slides of the presentation held at the Humboldt University of Berlin on 2016, December the 7th.
Abstract:
The declarative modelling of business processes is based upon the specification of behavioural rules that constrain the work-flows enactment. It is meant not to explicitly specify every possible execution path from the beginning to the end: The carry-out of the process is up to the actors, who can vary the execution dynamics as long as they do not violate the constraints imposed by the declarative model. The constraints specify the conditions that require or forbid the execution of activities, either considering them singularly or depending on the occurrence of other ones. In this talk, the recent advancements in the automated discovery of declarative control flows from event logs are discussed, together with open challenges in the field.
Declarative Specification of Processes: Discovery and ReasoningClaudio Di Ciccio
A process describes the temporal evolution of a system. Capturing the rules that govern its control flow helps to understand the boundaries of its behaviour. The declarative specification of processes is based on the representation of those boundaries by means of constraints rooted in temporal logics. The execution dynamics can vary as long as they do not violate such constraints, which specify the conditions that require or forbid the execution of actions.
This talk revolves around the recent advancements in research concerning the discovery of, and reasoning on, the declarative specifications of processes. The discourse will include a focus on how to automatically extract the constraints from process data, and how to losslessly minimise the size of discovered constraint sets. The conclusion will illustrate open challenges and future research avenues in the field.
Introduction to the declarative specification of processesClaudio Di Ciccio
This slides deck contains a short introduction to the declarative specification of processes, with examples of how to describe a process with the Declare language.
Ensuring Model Consistency in Declarative Process DiscoveryClaudio Di Ciccio
Presentation of the paper entitled “Ensuring Model Consistency in Declarative Process Discovery” (http://dx.doi.org/10.1007/978-3-319-23063-4_9) at the 13th International Conference on Business Process Management (BPM 2015), Innsbruck, Austria.
The main theme is the description of an automated technique to detect inconsistencies within mined declarative process models.
Log-Based Understanding of Business Processes through Temporal Logic Query Ch...Claudio Di Ciccio
Process mining is a discipline that aims at discovering, monitoring and improving real-life processes by extracting knowledge from event logs. Process discovery and conformance checking are the two main process mining tasks. Process discovery techniques can be used to learn a process model from example traces in an event log, whereas the goal of conformance checking is to compare the observed behavior in the event log with the modeled behavior. In this paper, we propose an approach based on temporal logic query checking, which is in the middle between process discovery and conformance checking. It can be used to discover those LTL-based business rules that are valid in the log, by checking against the log a (user-defined) class of rules. The proposed approach is not limited to provide a boolean answer about the validity of a business rule in the log, but it rather provides valuable diagnostics in terms of traces in which the rule is satisfied (witnesses) and traces in which the rule is violated (counterexamples). We have implemented our approach as a proof of concept and conducted a wide experimentation using both synthetic and real-life logs.
JEEConf 2017 - How to find deadlock not getting into itNikita Koval
Deadlocks are one of the main problems in multithreaded programming. This talk presents Dl-Check – a novel tool for detecting potential deadlocks at runtime of Java programs. In order to implement this tool, the bytecode instrumentation is required as well as the ASM framework is advantageous.
In the first part of the talk, the general approach and the algorithm for online detection of potential deadlocks will be presented. As for the second part, byte-code instrumentation and several useful techniques and associated cases related to it will be discussed.
Presented at the 12th International Conference on Business Process Management (BPM 2014), 7-11 September 2014, Eindhoven, The Netherlands.
Abstract: Process discovery is the task of generating models from event logs. Mining processes that operate in an environment of high variability is an ongoing research challenge because various algorithms tend to produce spaghetti-like models. This is particularly the case when procedural models are generated. A promising direction to tackle this challenge is the usage of declarative process modelling languages like Declare, which summarise complex behaviour in a compact set of behavioural constraints. However, Declare constraints with branching are expensive to be calculated.In addition, it is often the case that hundreds of branching Declare constraints are valid for the same log, thus making, again, the discovery results unreadable. In this paper, we address these problems from a theoretical angle. More specifically, we define the class of Target- Branched Declare constraints and investigate the formal properties it exhibits. Furthermore, we present a technique for the efficient discovery of compact Target-Branched Declare models. We discuss the merits of our work through an evaluation based on a prototypical implementation using both artificial and real-world event logs.
Slides of the presentation held at the Humboldt University of Berlin on 2016, December the 7th.
Abstract:
The declarative modelling of business processes is based upon the specification of behavioural rules that constrain the work-flows enactment. It is meant not to explicitly specify every possible execution path from the beginning to the end: The carry-out of the process is up to the actors, who can vary the execution dynamics as long as they do not violate the constraints imposed by the declarative model. The constraints specify the conditions that require or forbid the execution of activities, either considering them singularly or depending on the occurrence of other ones. In this talk, the recent advancements in the automated discovery of declarative control flows from event logs are discussed, together with open challenges in the field.
Declarative Specification of Processes: Discovery and ReasoningClaudio Di Ciccio
A process describes the temporal evolution of a system. Capturing the rules that govern its control flow helps to understand the boundaries of its behaviour. The declarative specification of processes is based on the representation of those boundaries by means of constraints rooted in temporal logics. The execution dynamics can vary as long as they do not violate such constraints, which specify the conditions that require or forbid the execution of actions.
This talk revolves around the recent advancements in research concerning the discovery of, and reasoning on, the declarative specifications of processes. The discourse will include a focus on how to automatically extract the constraints from process data, and how to losslessly minimise the size of discovered constraint sets. The conclusion will illustrate open challenges and future research avenues in the field.
Introduction to the declarative specification of processesClaudio Di Ciccio
This slides deck contains a short introduction to the declarative specification of processes, with examples of how to describe a process with the Declare language.
Ensuring Model Consistency in Declarative Process DiscoveryClaudio Di Ciccio
Presentation of the paper entitled “Ensuring Model Consistency in Declarative Process Discovery” (http://dx.doi.org/10.1007/978-3-319-23063-4_9) at the 13th International Conference on Business Process Management (BPM 2015), Innsbruck, Austria.
The main theme is the description of an automated technique to detect inconsistencies within mined declarative process models.
Log-Based Understanding of Business Processes through Temporal Logic Query Ch...Claudio Di Ciccio
Process mining is a discipline that aims at discovering, monitoring and improving real-life processes by extracting knowledge from event logs. Process discovery and conformance checking are the two main process mining tasks. Process discovery techniques can be used to learn a process model from example traces in an event log, whereas the goal of conformance checking is to compare the observed behavior in the event log with the modeled behavior. In this paper, we propose an approach based on temporal logic query checking, which is in the middle between process discovery and conformance checking. It can be used to discover those LTL-based business rules that are valid in the log, by checking against the log a (user-defined) class of rules. The proposed approach is not limited to provide a boolean answer about the validity of a business rule in the log, but it rather provides valuable diagnostics in terms of traces in which the rule is satisfied (witnesses) and traces in which the rule is violated (counterexamples). We have implemented our approach as a proof of concept and conducted a wide experimentation using both synthetic and real-life logs.
JEEConf 2017 - How to find deadlock not getting into itNikita Koval
Deadlocks are one of the main problems in multithreaded programming. This talk presents Dl-Check – a novel tool for detecting potential deadlocks at runtime of Java programs. In order to implement this tool, the bytecode instrumentation is required as well as the ASM framework is advantageous.
In the first part of the talk, the general approach and the algorithm for online detection of potential deadlocks will be presented. As for the second part, byte-code instrumentation and several useful techniques and associated cases related to it will be discussed.
The Token Engineering Process - Blockchain Futurist Conference 2018 - FansUniteMatt Lockyer
Are we adequately supported with tooling?
Verification of subjective vs. objective goals?
Does the token mechanism have a balanced incentive model?
Just some of the questions posed in this breakdown of the token engineering process.
Suited for investors, users, entrepreneurs seeking to gain insights on how to apply more mathematical and engineering rigor into protocol, token and smart contract development.
Instead of randomly injecting faults ( i.e. Chaos Monkey), what if we could order our experiments to perform min number of experiments for maximum yield? We present a solution(& results) to the problem of experiment selection using Lineage Driven Fault Injection to reduce the search space of faults.
Lineage Driven Fault Injection (LDFI) is a state of the art technique in chaos engineering experiment selection. LDFI since its inception has used an SAT solver under the hood which presents solutions to the decision problem (which faults to inject) in no particular order. As SRE’s we would like to perform experiments that reveal the bugs that the customers are most likely to hit first. In this talk, we present new improvements to LDFI that orders the experiment suggestions.
In the first the half of the talk we will show LDFI is a technique that can be widely used within an enterprise. We present the motivation for ordering the chaos experiments along with some prioritization we utilized while conducting the experiments. We also highlight how ordering is a general purpose technique that we can use to encode the peculiarities of a heterogeneous microservices architecture. LDFI can work in an enterprise by harnessing the observability infrastructure to model the redundancy of the system.
Next, we present experiments conducted within our organization using ordered LDFI and some preliminary results. We show examples of services where we discovered bugs, and how carefully controlling the order of experiments allowed LDFI to avoid running unnecessary experiments. We also present an example of an application where we declared the service shippable under crash stop model. We also present a comparison with Chaos Monkey and show how LDFI found the known bugs in a given application using orders of magnitude fewer experiments than a random fault injection tool like Chaos Monkey.
Finally, we discuss how we plan to take LDFI forward. We discuss open problems and possible solutions for scalarizing probabilities of failure, latency injection, integration with service mesh technologies like envoy for fine-grained fault injection, fault injection for stateful systems.
Key takeaways: 1) Understand how LDFI can be integrated in the enterprise by harnessing the observability infrastructure. 2) Limitations of LDFI w.r.t unordered solutions and why ordering matters for chaos engineering experiments. 3) Preliminary results of prioritized LDFI and a future direction for the community.
In machine learning, support vector machines (SVMs, also support vector networks[1]) are supervised learning models with associated learning algorithms that analyze data and recognize patterns, used for classification and regression analysis. The basic SVM takes a set of input data and predicts, for each given input, which of two possible classes forms the output, making it a non-probabilistic binary linear classifier.
From monolithic systems to microservices. a decomposition framework based on ...Davide Taibi
Decomposition is one of the most complex tasks during the migration from monolithic systems to microservices, generally performed manually, based on the experience of the software architects.
In this work, we propose a 6-step framework to reduce the subjectivity of the decomposition process.
The framework provides software architects with a set of decomposition options, together with a set of measures to evaluate and compare their quality. The decomposition options are identified based on the independent execution traces of the system by means of the application of a process-mining tool to the log traces collected at runtime. We validated the process, in an industrial project, by comparing the proposed decomposition options with the one proposed by the software architect that manually analyzed the system. The application of our framework allowed the company to identify issues in their software that the architect did not spot manually, and to discover more suitable decomposition options that the architect did not consider. The framework could be very useful also in other companies to improve the quality of the decomposition of any monolithic system, identifying different decomposition strategies and reducing the subjectivity of the decomposition process. Moreover, researchers could extend our approach increasing the support and further automating the decomposition support
It Does What You Say, Not What You Mean: Lessons From A Decade of Program RepairClaire Le Goues
In this talk we present lessons learned, good ideas, and thoughts on the future, with an eye toward informing junior researchers about the realities and opportunities of a long-running project. We highlight some notions from the original paper that stood the test of time, some that were not as prescient, and some that became more relevant as industrial practice advanced. We place the work in context, highlighting perceptions from software engineering and evolutionary computing, then and now, of how program repair could possibly work. We discuss the importance of measurable benchmarks and reproducible research in bringing scientists together and advancing the area. We give our thoughts on the role of quality requirements and properties in program repair. From testing to metrics to scalability to human factors to technology transfer, software repair touches many aspects of software engineering, and we hope a behind-the-scenes exploration of some of our struggles and successes may benefit researchers pursuing new projects.
TMPA-2017: Tools and Methods of Program Analysis
3-4 March, 2017, Hotel Holiday Inn Moscow Vinogradovo, Moscow
Dl-Check: Dynamic Potential Deadlock Detection Tool for Java Programs
Nikita Koval, Dmitry Tsitelov, Roman Elizarov, Devexperts
For video follow the link: https://youtu.be/uyQvsxVL_TI
Would like to know more?
Visit our website:
www.tmpaconf.org
www.exactprosystems.com/events/tmpa
Follow us:
https://www.linkedin.com/company/exactpro-systems-llc?trk=biz-companies-cym
https://twitter.com/exactpro
CAKE: Sharing Slices of Confidential Data on BlockchainClaudio Di Ciccio
Presented at the CAiSE 2024 Forum, Intelligent Information Systems, June 6th, Limassol, Cyprus.
Synopsis: Cooperative information systems typically involve various entities in a collaborative process within a distributed environment. Blockchain technology offers a mechanism for automating such processes, even when only partial trust exists among participants. The data stored on the blockchain is replicated across all nodes in the network, ensuring accessibility to all participants. While this aspect facilitates traceability, integrity, and persistence, it poses challenges for adopting public blockchains in enterprise settings due to confidentiality issues. In this paper, we present a software tool named Control Access via Key Encryption (CAKE), designed to ensure data confidentiality in scenarios involving public blockchains. After outlining its core components and functionalities, we showcase the application of CAKE in the context of a real-world cyber-security project within the logistics domain.
Paper: https://doi.org/10.1007/978-3-031-61000-4_16
“An Outlook of the Ongoing and Future Relationship between Blockchain Technologies and Process-aware Information Systems.” Invited talk at the joint workshop on Blockchain for Information Systems (BC4IS) and Blockchain for Trusted Data Sharing (B4TDS), co-located with with the 36th International Conference on Advanced Information Systems Engineering (CAiSE), 3 June 2024, Limassol, Cyprus.
More Related Content
Similar to Resolving Inconsistencies and Redundancies in Declarative Process Models
The Token Engineering Process - Blockchain Futurist Conference 2018 - FansUniteMatt Lockyer
Are we adequately supported with tooling?
Verification of subjective vs. objective goals?
Does the token mechanism have a balanced incentive model?
Just some of the questions posed in this breakdown of the token engineering process.
Suited for investors, users, entrepreneurs seeking to gain insights on how to apply more mathematical and engineering rigor into protocol, token and smart contract development.
Instead of randomly injecting faults ( i.e. Chaos Monkey), what if we could order our experiments to perform min number of experiments for maximum yield? We present a solution(& results) to the problem of experiment selection using Lineage Driven Fault Injection to reduce the search space of faults.
Lineage Driven Fault Injection (LDFI) is a state of the art technique in chaos engineering experiment selection. LDFI since its inception has used an SAT solver under the hood which presents solutions to the decision problem (which faults to inject) in no particular order. As SRE’s we would like to perform experiments that reveal the bugs that the customers are most likely to hit first. In this talk, we present new improvements to LDFI that orders the experiment suggestions.
In the first the half of the talk we will show LDFI is a technique that can be widely used within an enterprise. We present the motivation for ordering the chaos experiments along with some prioritization we utilized while conducting the experiments. We also highlight how ordering is a general purpose technique that we can use to encode the peculiarities of a heterogeneous microservices architecture. LDFI can work in an enterprise by harnessing the observability infrastructure to model the redundancy of the system.
Next, we present experiments conducted within our organization using ordered LDFI and some preliminary results. We show examples of services where we discovered bugs, and how carefully controlling the order of experiments allowed LDFI to avoid running unnecessary experiments. We also present an example of an application where we declared the service shippable under crash stop model. We also present a comparison with Chaos Monkey and show how LDFI found the known bugs in a given application using orders of magnitude fewer experiments than a random fault injection tool like Chaos Monkey.
Finally, we discuss how we plan to take LDFI forward. We discuss open problems and possible solutions for scalarizing probabilities of failure, latency injection, integration with service mesh technologies like envoy for fine-grained fault injection, fault injection for stateful systems.
Key takeaways: 1) Understand how LDFI can be integrated in the enterprise by harnessing the observability infrastructure. 2) Limitations of LDFI w.r.t unordered solutions and why ordering matters for chaos engineering experiments. 3) Preliminary results of prioritized LDFI and a future direction for the community.
In machine learning, support vector machines (SVMs, also support vector networks[1]) are supervised learning models with associated learning algorithms that analyze data and recognize patterns, used for classification and regression analysis. The basic SVM takes a set of input data and predicts, for each given input, which of two possible classes forms the output, making it a non-probabilistic binary linear classifier.
From monolithic systems to microservices. a decomposition framework based on ...Davide Taibi
Decomposition is one of the most complex tasks during the migration from monolithic systems to microservices, generally performed manually, based on the experience of the software architects.
In this work, we propose a 6-step framework to reduce the subjectivity of the decomposition process.
The framework provides software architects with a set of decomposition options, together with a set of measures to evaluate and compare their quality. The decomposition options are identified based on the independent execution traces of the system by means of the application of a process-mining tool to the log traces collected at runtime. We validated the process, in an industrial project, by comparing the proposed decomposition options with the one proposed by the software architect that manually analyzed the system. The application of our framework allowed the company to identify issues in their software that the architect did not spot manually, and to discover more suitable decomposition options that the architect did not consider. The framework could be very useful also in other companies to improve the quality of the decomposition of any monolithic system, identifying different decomposition strategies and reducing the subjectivity of the decomposition process. Moreover, researchers could extend our approach increasing the support and further automating the decomposition support
It Does What You Say, Not What You Mean: Lessons From A Decade of Program RepairClaire Le Goues
In this talk we present lessons learned, good ideas, and thoughts on the future, with an eye toward informing junior researchers about the realities and opportunities of a long-running project. We highlight some notions from the original paper that stood the test of time, some that were not as prescient, and some that became more relevant as industrial practice advanced. We place the work in context, highlighting perceptions from software engineering and evolutionary computing, then and now, of how program repair could possibly work. We discuss the importance of measurable benchmarks and reproducible research in bringing scientists together and advancing the area. We give our thoughts on the role of quality requirements and properties in program repair. From testing to metrics to scalability to human factors to technology transfer, software repair touches many aspects of software engineering, and we hope a behind-the-scenes exploration of some of our struggles and successes may benefit researchers pursuing new projects.
TMPA-2017: Tools and Methods of Program Analysis
3-4 March, 2017, Hotel Holiday Inn Moscow Vinogradovo, Moscow
Dl-Check: Dynamic Potential Deadlock Detection Tool for Java Programs
Nikita Koval, Dmitry Tsitelov, Roman Elizarov, Devexperts
For video follow the link: https://youtu.be/uyQvsxVL_TI
Would like to know more?
Visit our website:
www.tmpaconf.org
www.exactprosystems.com/events/tmpa
Follow us:
https://www.linkedin.com/company/exactpro-systems-llc?trk=biz-companies-cym
https://twitter.com/exactpro
CAKE: Sharing Slices of Confidential Data on BlockchainClaudio Di Ciccio
Presented at the CAiSE 2024 Forum, Intelligent Information Systems, June 6th, Limassol, Cyprus.
Synopsis: Cooperative information systems typically involve various entities in a collaborative process within a distributed environment. Blockchain technology offers a mechanism for automating such processes, even when only partial trust exists among participants. The data stored on the blockchain is replicated across all nodes in the network, ensuring accessibility to all participants. While this aspect facilitates traceability, integrity, and persistence, it poses challenges for adopting public blockchains in enterprise settings due to confidentiality issues. In this paper, we present a software tool named Control Access via Key Encryption (CAKE), designed to ensure data confidentiality in scenarios involving public blockchains. After outlining its core components and functionalities, we showcase the application of CAKE in the context of a real-world cyber-security project within the logistics domain.
Paper: https://doi.org/10.1007/978-3-031-61000-4_16
“An Outlook of the Ongoing and Future Relationship between Blockchain Technologies and Process-aware Information Systems.” Invited talk at the joint workshop on Blockchain for Information Systems (BC4IS) and Blockchain for Trusted Data Sharing (B4TDS), co-located with with the 36th International Conference on Advanced Information Systems Engineering (CAiSE), 3 June 2024, Limassol, Cyprus.
Look but don’t touch: On the impalpable bond between blockchain and processClaudio Di Ciccio
Slides of the keynote held at the BPM Blockchain Forum 2023, 13 September 2023, Utrecht, Netherlands.
Synopsis:
Multi-party business processes rely on the collaboration of various players in a decentralized setting. Blockchain technology can facilitate the automation of these processes, even in cases where trust among participants is limited. Transactions are stored in a ledger, a replica of which is retained by every node of the blockchain network. The operations saved thereby are thus publicly accessible, which benefits transparency, reliability, and persistence. Smart contracts can encode the system behavior agreed upon by the involved parties to define the behaviour of collaborative processes. Rule enforcement, traceability and non-repudiation are thus catered for, too. However, data, objects and services in the outer world are not directly accessible from within a blockchain execution evironment. On one hand, access to limited information hinders the adoption of programmable blockchains as an effective aid to process intelligence. On the other hand, transferring every bit of off-chain information on-chain is not only impractical but also undesirable, as this operation could violate typical confidentiality requirements in enterprise settings. In this talk, we discuss and explore approaches aimed at strengthening the bond between process and blockchain execution environments, balancing between knowledge sharing and secrecy preservation.
Measurement of Rule-based LTLf Declarative Process SpecificationsClaudio Di Ciccio
Slides of the paper presented at the 4th Int. Conference on Process Mining (ICPM 2022, Bolzano, Italy).
Synopsis:
The classical checking of declarative Linear Temporal Logic on Finite Traces (LTLf) specifications verifies whether conjunctions of sets of formulae are satisfied by collections of finite traces. The data on which the verification is conducted may be corrupted by a number of logging errors or execution deviations at the level of single elements within a trace. The ability to quantitatively assess the extent to which traces satisfy a process specification (and not only if they do so or not at all) is thus key, especially in process mining scenarios. Previous techniques proposed for this aim either require formulae to be extended with quantitative operators or cater to the coarse granularity of whole traces. In this paper, we propose a framework to devise probabilistic measures for declarative process specifications on traces at the level of events, inspired by association rule mining. Thereupon, we describe a technique that measures the degree of satisfaction of these specifications over bags of traces. To assess our approach, we conduct an evaluation with real-world data.
Blockchain and smart contracts: infrastructure and platformsClaudio Di Ciccio
An introductory presentation on the main concepts of blockchain technologies, with a special focus on the smart contracts. The slides supported the talk held at the Cyber 4.0 Seminar on Cyber 4.0 Seminar on “Blockchain and Smart Contracts: Concepts and applications” on 2021-03-03, virtually hosted by the Sapienza University of Rome for the Cyber 4.0 Competence Centre.
Extracting Event Logs for Process Mining from Data Stored on the BlockchainClaudio Di Ciccio
Presentation of the paper presented at the 2nd International Workshop on Security and Privacy-enhanced Business Process Management (SPBP’19), 2 September 2019, Vienna, Austria (pre-print available at https://easychair.org/publications/preprint/cW8l).
Abstract: The integration of business process management with blockchains across organisational borders provides a means to establish transparency of execution and auditing capabilities. To enable process analytics, though, non-trivial extraction and transformation tasks are necessary on the raw data stored in the ledger. In this paper, we describe our approach to retrieve process data from an Ethereum blockchain ledger and subsequently convert those data into an event log formatted according to the IEEE Extensible Event Stream (XES) standard. We show a proof-of-concept software artefact and its application on a data set produced by the smart contracts of a process execution engine stored on the public Ethereum blockchain network.
A blockchain can be defined as an immutable distributed ledger on which transactions exchanged between peers are recorded. Transactions are cryptographically signed and are meant to transfer digital commodities between parties. Lately, the blockchains have undergone a paradigm shift from mere electronic cash systems to a universal platform endowed with internal programming languages, on top of which decentralised applications can be built. That has been the turning point enabling the execution of inter-organisational business processes on blockchains.
In this talk, the concepts behind and around blockchains will be described, together with the current research and future directions on its usage as an infrastructure for business process management.
Blockchain based traceability of inter-organisational business processesClaudio Di Ciccio
Presentation of the paper entitled “Blockchain-based Traceability of Interorganisational Business Processes” (http://dx.doi.org/10.1007/978-3-319-94214-8_4), held at BMSD 2018, Vienna, Austria (http://www.is-bmsd.org/).
Abstract:
The blockchain technology opens up new opportunities for Business Process Management. This is mainly due to its unprecedented capability to let transactions be automatically executed and recorded by Smart Contracts in multi-peer environments, in a decentralised fashion and without central authoritative players to govern the workflow. In this way, blockchains also provide traceability. Traceability of information plays a pivotal role particularly in those supply chains where multiple parties are involved and rigorous criteria must be fulfilled to lead to a successful outcome. In this paper, we investigate how to run a business process in the context of a supply chain on a blockchain infrastructure so as to provide full traceability of its run-time enactment. Our approach retrieves information to trace process instances execution solely from the transactions written on-chain. To do so, hash-codes are reverseengineered based on the Solidity Smart Contract encoding of the generating process. We show the results of our investigation by means of an implemented software prototype, with a case study on the reportedly challenging context of the pharmaceutical supply chain.
Semantical Vacuity Detection in Declarative Process MiningClaudio Di Ciccio
Presentation of the paper entitled “Semantical Vacuity Detection in Declarative Process Mining”
(http://dx.doi.org/10.1007/978-3-319-45348-4_10), held at BPM 2016, Rio de Janeiro, Brazil (http://bpm2016.uniriotec.br/).
A large share of the literature on process mining based on declarative process modeling languages, like DECLARE, relies on the notion of constraint activation to distinguish between the case in which a process execution recorded in event data “vacuously” satisfies a constraint, or satisfies the constraint in an “interesting way”. This fine-grained indicator is then used to decide whether a candidate constraint supported by the analyzed event log is indeed relevant or not. Unfortunately, this notion of relevance has never been formally defined, and all the proposals existing in the literature use ad-hoc definitions that are only applicable to a pre-defined set of constraint patterns. This makes existing declarative process mining technique inapplicable when the target constraint language is extensible and may contain formulae that go beyond pre-defined patterns. In this paper, we tackle this hot, open challenge and show how the notion of constraint activation and vacuous satisfaction can be captured semantically, in the case of constraints expressed in arbitrary temporal logics over finite traces. We then extend the standard automata-based approach so as to incorporate relevance-related information. We finally report on an implementation and experimentation of the approach that confirms the advantages and feasibility of our solution.
Detecting Flight Trajectory Anomalies and Predicting Diversions in Freight Tr...Claudio Di Ciccio
Presentation of the paper entitled “Detecting Flight Trajectory Anomalies and Predicting Diversions in Freight Transportation”
(http://dx.doi.org/10.1016/j.dss.2016.05.004), held at EMISA 2016, Vienna, Austria (https://aic.ai.wu.ac.at/emisa2016/).
Abstract:
Timely identifying flight diversions is a crucial aspect of efficient multi-modal transportation. When an airplane diverts, logistics providers must promptly adapt their transportation plans in order to ensure proper delivery despite such an unexpected event. In practice, the different parties in a logistics chain do not exchange real-time information related to flights. This calls for a means to detect diversions that just requires publicly available data, thus being independent of the communication between different parties. The dependence on public data results in a challenge to detect anomalous behavior without knowing the planned flight trajectory. Our work addresses this challenge by introducing a prediction model that just requires information on an airplane’s position, velocity, and intended destination. This information is used to distinguish between regular and anomalous behavior. When an airplane displays anomalous behavior for an extended period of time, the model predicts a diversion. A quantitative evaluation shows that this approach is able to detect diverting airplanes with excellent precision and recall even without knowing planned trajectories as required by related research. By utilizing the proposed prediction model, logistics companies gain a significant amount of response time for these cases.
Data Centers - Striving Within A Narrow Range - Research Report - MCG - May 2...pchutichetpong
M Capital Group (“MCG”) expects to see demand and the changing evolution of supply, facilitated through institutional investment rotation out of offices and into work from home (“WFH”), while the ever-expanding need for data storage as global internet usage expands, with experts predicting 5.3 billion users by 2023. These market factors will be underpinned by technological changes, such as progressing cloud services and edge sites, allowing the industry to see strong expected annual growth of 13% over the next 4 years.
Whilst competitive headwinds remain, represented through the recent second bankruptcy filing of Sungard, which blames “COVID-19 and other macroeconomic trends including delayed customer spending decisions, insourcing and reductions in IT spending, energy inflation and reduction in demand for certain services”, the industry has seen key adjustments, where MCG believes that engineering cost management and technological innovation will be paramount to success.
MCG reports that the more favorable market conditions expected over the next few years, helped by the winding down of pandemic restrictions and a hybrid working environment will be driving market momentum forward. The continuous injection of capital by alternative investment firms, as well as the growing infrastructural investment from cloud service providers and social media companies, whose revenues are expected to grow over 3.6x larger by value in 2026, will likely help propel center provision and innovation. These factors paint a promising picture for the industry players that offset rising input costs and adapt to new technologies.
According to M Capital Group: “Specifically, the long-term cost-saving opportunities available from the rise of remote managing will likely aid value growth for the industry. Through margin optimization and further availability of capital for reinvestment, strong players will maintain their competitive foothold, while weaker players exit the market to balance supply and demand.”
Techniques to optimize the pagerank algorithm usually fall in two categories. One is to try reducing the work per iteration, and the other is to try reducing the number of iterations. These goals are often at odds with one another. Skipping computation on vertices which have already converged has the potential to save iteration time. Skipping in-identical vertices, with the same in-links, helps reduce duplicate computations and thus could help reduce iteration time. Road networks often have chains which can be short-circuited before pagerank computation to improve performance. Final ranks of chain nodes can be easily calculated. This could reduce both the iteration time, and the number of iterations. If a graph has no dangling nodes, pagerank of each strongly connected component can be computed in topological order. This could help reduce the iteration time, no. of iterations, and also enable multi-iteration concurrency in pagerank computation. The combination of all of the above methods is the STICD algorithm. [sticd] For dynamic graphs, unchanged components whose ranks are unaffected can be skipped altogether.
Show drafts
volume_up
Empowering the Data Analytics Ecosystem: A Laser Focus on Value
The data analytics ecosystem thrives when every component functions at its peak, unlocking the true potential of data. Here's a laser focus on key areas for an empowered ecosystem:
1. Democratize Access, Not Data:
Granular Access Controls: Provide users with self-service tools tailored to their specific needs, preventing data overload and misuse.
Data Catalogs: Implement robust data catalogs for easy discovery and understanding of available data sources.
2. Foster Collaboration with Clear Roles:
Data Mesh Architecture: Break down data silos by creating a distributed data ownership model with clear ownership and responsibilities.
Collaborative Workspaces: Utilize interactive platforms where data scientists, analysts, and domain experts can work seamlessly together.
3. Leverage Advanced Analytics Strategically:
AI-powered Automation: Automate repetitive tasks like data cleaning and feature engineering, freeing up data talent for higher-level analysis.
Right-Tool Selection: Strategically choose the most effective advanced analytics techniques (e.g., AI, ML) based on specific business problems.
4. Prioritize Data Quality with Automation:
Automated Data Validation: Implement automated data quality checks to identify and rectify errors at the source, minimizing downstream issues.
Data Lineage Tracking: Track the flow of data throughout the ecosystem, ensuring transparency and facilitating root cause analysis for errors.
5. Cultivate a Data-Driven Mindset:
Metrics-Driven Performance Management: Align KPIs and performance metrics with data-driven insights to ensure actionable decision making.
Data Storytelling Workshops: Equip stakeholders with the skills to translate complex data findings into compelling narratives that drive action.
Benefits of a Precise Ecosystem:
Sharpened Focus: Precise access and clear roles ensure everyone works with the most relevant data, maximizing efficiency.
Actionable Insights: Strategic analytics and automated quality checks lead to more reliable and actionable data insights.
Continuous Improvement: Data-driven performance management fosters a culture of learning and continuous improvement.
Sustainable Growth: Empowered by data, organizations can make informed decisions to drive sustainable growth and innovation.
By focusing on these precise actions, organizations can create an empowered data analytics ecosystem that delivers real value by driving data-driven decisions and maximizing the return on their data investment.
As Europe's leading economic powerhouse and the fourth-largest hashtag#economy globally, Germany stands at the forefront of innovation and industrial might. Renowned for its precision engineering and high-tech sectors, Germany's economic structure is heavily supported by a robust service industry, accounting for approximately 68% of its GDP. This economic clout and strategic geopolitical stance position Germany as a focal point in the global cyber threat landscape.
In the face of escalating global tensions, particularly those emanating from geopolitical disputes with nations like hashtag#Russia and hashtag#China, hashtag#Germany has witnessed a significant uptick in targeted cyber operations. Our analysis indicates a marked increase in hashtag#cyberattack sophistication aimed at critical infrastructure and key industrial sectors. These attacks range from ransomware campaigns to hashtag#AdvancedPersistentThreats (hashtag#APTs), threatening national security and business integrity.
🔑 Key findings include:
🔍 Increased frequency and complexity of cyber threats.
🔍 Escalation of state-sponsored and criminally motivated cyber operations.
🔍 Active dark web exchanges of malicious tools and tactics.
Our comprehensive report delves into these challenges, using a blend of open-source and proprietary data collection techniques. By monitoring activity on critical networks and analyzing attack patterns, our team provides a detailed overview of the threats facing German entities.
This report aims to equip stakeholders across public and private sectors with the knowledge to enhance their defensive strategies, reduce exposure to cyber risks, and reinforce Germany's resilience against cyber threats.
Opendatabay - Open Data Marketplace.pptxOpendatabay
Opendatabay.com unlocks the power of data for everyone. Open Data Marketplace fosters a collaborative hub for data enthusiasts to explore, share, and contribute to a vast collection of datasets.
First ever open hub for data enthusiasts to collaborate and innovate. A platform to explore, share, and contribute to a vast collection of datasets. Through robust quality control and innovative technologies like blockchain verification, opendatabay ensures the authenticity and reliability of datasets, empowering users to make data-driven decisions with confidence. Leverage cutting-edge AI technologies to enhance the data exploration, analysis, and discovery experience.
From intelligent search and recommendations to automated data productisation and quotation, Opendatabay AI-driven features streamline the data workflow. Finding the data you need shouldn't be a complex. Opendatabay simplifies the data acquisition process with an intuitive interface and robust search tools. Effortlessly explore, discover, and access the data you need, allowing you to focus on extracting valuable insights. Opendatabay breaks new ground with a dedicated, AI-generated, synthetic datasets.
Leverage these privacy-preserving datasets for training and testing AI models without compromising sensitive information. Opendatabay prioritizes transparency by providing detailed metadata, provenance information, and usage guidelines for each dataset, ensuring users have a comprehensive understanding of the data they're working with. By leveraging a powerful combination of distributed ledger technology and rigorous third-party audits Opendatabay ensures the authenticity and reliability of every dataset. Security is at the core of Opendatabay. Marketplace implements stringent security measures, including encryption, access controls, and regular vulnerability assessments, to safeguard your data and protect your privacy.
Resolving Inconsistencies and Redundancies in Declarative Process Models
1. Resolving Inconsistencies and Redundancies in
Declarative Process Models
Claudio Di Ciccio, Fabrizio Maria Maggi, Marco Montali and Jan Mendling
8th International Workshop on Enterprise Modeling and
Information Systems Architectures (EMISA 2017)
Essen, Germany
claudio.di.ciccio@wu.ac.at
Di Ciccio, C., Maggi, F. M., Montali, M.,
Mendling, J. (2017). Resolving inconsistencies
and redundancies in declarative process
models. Information Systems, 64, 425–446.
https://doi.org/10.1016/j.is.2016.09.005
5. Declarative process discovery
SEITE 5
?
Objective: understanding the
constraints that best define
the allowed behaviour of the
process behind the event log
6. Declarative modelling of
processes
Init(c)
c is always the first executed activity
End(d)
d is always the last executed activity
RespondedExistence(a,b)
If a is executed, b has to be executed
Response(a,b)
If a is executed, b has to be executed
afterwards
ChainResponse(a,b)
If a is executed, b has to be executed
immediately afterwards
Precedence(a,b)
If b is executed, a must have been executed
beforehand
ChainPrecedence(a,b)
If b is executed, a has to be executed
immediately beforehand
NotChainSuccession(a,b)
If a is executed, b cannot be executed
immediately afterwards
SEITE 6
Usage of constraints
“Open model”
Declare
state-of-the-art language
9. Mining declarative processes
RespondedExistence(a,b) ?
RespondedExistence(a,c) ?
…
Response(a,b) ?
Response(a,c) ?
…
SEITE 9
• Support:
fraction of cases fulfilling the constraint
• Confidence:
support scaled by fraction of traces in
which the activation occurs
• Interest factor:
confidence scaled by fraction of traces in
which the target occurs
Support Conf. I.F.
16. From constraints-based model
to FSA
RespondedExistence(a,b)
RespondedExistence(a,c)
and
Response(a,b)
Response(a,c)
and
…
SEITE 16
[^a]*((a.*b.*)|(b.*a.*))*[^a]* [^a]*(a.*c)*[^a]*
Regular
Expression
Deterministic
Finite
State
Automaton
17. To be kept in mind
RespondedExistence(a,b)
RespondedExistence(a,c)
and
Response(a,b)
Response(a,c)
and
…
SEITE 17
[^a]*((a.*b.*)|(b.*a.*))*[^a]* [^a]*(a.*c)*[^a]*
Regular
Expression
Deterministic
Finite
State
Automaton
24. The problems
1) inconsistency
When support threshold is lower than 100%,
constraints can be valid through most of the log, though being in conflict
Example: an event log consists of two traces:
1. <a, b, a, b, a, b, c>
2. <a, b, a, b, a, c>
Support threshold: 0.7
• a is always the first
Init(a)
• c is always the last
End(c)
• In 6 cases over 8 (75%), a and c do not directly follow each other
NotChainSuccession(a,c)
• In 5 cases over 7 (71.143%), b and c do not directly follow each other
NotChainSuccession(b,c)
SEITE 24
25. The problems
1) inconsistency
When support threshold is lower than 100%,
constraints can be valid through most of the log, though being in conflict
Example: an event log consists of two traces:
1. <a, b, a, b, a, b, c>
2. <a, b, a, b, a, c>
Support threshold: 0.7
• a is always the first
Init(a)
• c is always the last
End(c)
• In 6 cases over 8 (75%), a and c do not directly follow each other
NotChainSuccession(a,c)
• In 5 cases over 7 (71.143%), a and b do not directly follow each other
NotChainSuccession(b,c)
Question: what can be done right before c?
inconsistency!
SEITE 25
26. The problems
1) inconsistency
When support threshold is lower than 100%,
constraints can be valid through most of the log, though being in conflict
How to trust a discovery algorithm that can return inconsistent models?
SEITE 26
27. The problems
2) redundancy
Many constraints may be fulfilled 100% of times yet not add a bit of
information to other already discovered ones
Example: an event log consists of two traces:
1. <a, b, a, b, a, b, c>
2. <a, b, a, b, a, c>
• a is always the first
Init(a)
• c is always the last
End(c)
• Before c, a precedes
Precedence(a,c)
• Before b, a precedes
Precedence(a,b)
• After a, c eventually follows
Response(a,c)
• After b, c eventually follows
Response(b,c)
SEITE 27
28. The problems
2) redundancy
Many constraints may be fulfilled 100% of times yet not add a bit of
information to other already discovered ones
Example: an event log consists of two traces:
1. <a, b, a, b, a, b, c>
2. <a, b, a, b, a, c>
• a is always the first
Init(a)
• c is always the last
End(c)
• Before c, a precedes
Precedence(a,c)
• Before b, a precedes
Precedence(a,b)
• After a, c eventually follows
Response(a,c)
• After b, c eventually follows
Response(b,c)
SEITE 28
Of course! a is always the first
29. The problems
2) redundancy
Many constraints may be fulfilled 100% of times yet not add a bit of
information to other already discovered ones
Example: an event log consists of two traces:
1. <a, b, a, b, a, b, c>
2. <a, b, a, b, a, c>
• a is always the first
Init(a)
• c is always the last
End(c)
• Before c, a precedes
Precedence(a,c)
• Before b, a precedes
Precedence(a,b)
• After a, c eventually follows
Response(a,c)
• After b, c eventually follows
Response(b,c)
SEITE 29
Of course! a is always the first
Of course! c is always the last
Question: can't we avoid stating the obvious?
redundancy!
30. The problems
2) redundancy
Many constraints may be fulfilled 100% of times yet not add a bit of
information to other already discovered ones
How to reduce the number of unnecessary returned constraints?
SEITE 30
31. The solution
Automata-product monoid
SEITE 31
Algebraic structure with
composition operator ( )
holding the properties of
commutativity
associativity
and bearing
identity element
and absorbing element
33. Rules of the game
SEITE 33
Intersect the product
automaton with the
newly visited constraints,
one at a time
Init(a) Participation(b)
=
Product automaton
Init(a)
Participation(b)
34. Intersect the product
automaton with the
newly visited constraints,
one at a time
Rules of the game
SEITE 34
ChainPrecedence(a,b)
ChainPrecedence(a,b)
Init(a)
Participation(b)
Product automaton
35. Exploiting formal properties
We take advantage of
1. associativity
allows for "storage" of
results
SEITE 35 Product automaton
ChainPrecedence(a,b)
Old product automaton
=
36. Exploiting formal properties
We take advantage of
1. associativity
allows for "storage" of
results
2. commutativity
allows for priority sorting
of constraints
SEITE 36 Product automaton
37. Exploiting formal properties
We take advantage of
1. associativity
allows for "storage" of
results
2. commutativity
allows for priority sorting
of constraints
SEITE 37 Product automaton
38. Playing the game
Newly visited constraints
add information to the
knowledge on the process
model if they reduce the
number of possible traces
(accepted strings)
SEITE 38 Product automaton
39. Playing the game
Newly visited constraints
add information to the
knowledge on the process
model if they reduce the
number of possible traces
(accepted strings)
SEITE 39 Product automaton
40. Playing the game
Newly visited constraints
add information to the
knowledge on the process
model if they reduce the
number of possible traces
(accepted strings)
SEITE 40 Product automaton
41. Inconsistency!
Newly visited constraints
add information to the
knowledge on the process
model if they reduce the
number of possible traces
(accepted strings)
Conflict:
SEITE 41 Product automaton
42. Inconsistency!
Newly visited constraints
add information to the
knowledge on the process
model if they reduce the
number of possible traces
(accepted strings)
Conflict:
The product automaton
becomes
(empty language)
SEITE 42
Response(a,b)
Response(b,a)
43. Inconsistency!
Newly visited constraints
add information to the
knowledge on the process
model if they reduce the
number of possible traces
(accepted strings)
Conflict:
The product automaton
becomes
(empty language)
SEITE 43
44. Inconsistency!
Newly visited constraints
add information to the
knowledge on the process
model if they reduce the
number of possible traces
(accepted strings)
Conflict:
Remove the constraint, in
case
SEITE 44
45. Redundancy!
Newly visited constraints
add information to the
knowledge on the process
model if they reduce the
number of possible traces
(accepted strings)
Redundancy:
SEITE 45
46. Redundancy!
Newly visited constraints
add information to the
knowledge on the process
model if they reduce the
number of possible traces
(accepted strings)
Redundancy:
The new product
automaton accepts the
same strings as before
(language inclusion)
SEITE 46
Response(a,c)
End(c)
47. Redundancy!
Newly visited constraints
add information to the
knowledge on the process
model if they reduce the
number of possible traces
(accepted strings)
Redundancy:
The new product
automaton accepts the
same strings as before
(language inclusion)
SEITE 47
48. Redundancy!
Newly visited constraints
add information to the
knowledge on the process
model if they reduce the
number of possible traces
(accepted strings)
Redundancy:
Remove the constraint, in
case
SEITE 48
50. The solution:
Inconsistency detection
Rationale:
1. How to find inconsistencies among constraints?
Use the automaton-based model for constraints
Does the cross-product automaton recognise the empty
language?
2. How to search the inconsistencies?
Exploit:
a) The product operation between automata
b) The sorting of Declare templates
Guideline:
Preserve the most meaningful constraints
The sorting prioritises constraints
SEITE 50
51. The solution:
Redundancy detection
Rationale:
1. How to find redundancies among constraints?
Use the automaton-based model for constraints
Does the cross-product automata recognise the same
language as before?
2. How to search the inconsistencies?
Exploit:
a) The product operation between automata
b) The sorting of Declare templates
Guideline:
Preserve the most meaningful constraints
The sorting prioritises constraints
SEITE 51
52. Conclusion
Which were the conflicting constraints in the log?
How does the redundancy removal perform?
What is more in the paper?
Limitations and future work
54. Which were the conflicting
constraints in the log?
1. NotSuccession(send meeting, organize agenda)
2. NotChainSuccession(send draft, send deliverable)
3. Succession(send draft, submit report)
SEITE 54
57. Conclusions, limitations and
future work
We have presented an algorithm which automatically finds
inconsistencies and redundancies in mined Declare models
The checks are purely based on operations over automata (remember: monoids)
http://github.com/cdc08x/minerful
More in the paper:
The order in which the constraints are checked deeply affects the returned result
Comparative studies prove different sorting strategies to affect
computation time
fitness of the returned model
size
Limitations:
Performances are heavily affected by the interplay of constraints
Future work:
Users/analysts involvement
http://www.promtools.org/prom6/nightly
SEITE 57
58. Resolving Inconsistencies and Redundancies in
Declarative Process Models
Claudio Di Ciccio, Fabrizio Maria Maggi, Marco Montali and Jan Mendling
8th International Workshop on Enterprise Modeling and
Information Systems Architectures (EMISA 2017)
Essen, Germany
claudio.di.ciccio@wu.ac.at
Di Ciccio, C., Maggi, F. M., Montali, M.,
Mendling, J. (2017). Resolving inconsistencies
and redundancies in declarative process
models. Information Systems, 64, 425–446.
https://doi.org/10.1016/j.is.2016.09.005
59. Extra slides deck
Resolving Inconsistencies and Redundancies in
Declarative Process Models
Claudio Di Ciccio, Fabrizio Maria Maggi, Marco Montali and Jan Mendling
8th International Workshop on Enterprise Modeling and
Information Systems Architectures (EMISA 2017)
Essen, Germany
claudio.di.ciccio@wu.ac.at
Di Ciccio, C., Maggi, F. M., Montali, M.,
Mendling, J. (2017). Resolving inconsistencies
and redundancies in declarative process
models. Information Systems, 64, 425–446.
https://doi.org/10.1016/j.is.2016.09.005