Protos: A Cross-Organizational Business Modeling Tool (Demonstration) Anup K. Kalia, Pankaj R. Telang, Munindar P. Singh Department of Computer Science North Carolina State University Raleigh, NC 27695-8206, USA {akkalia,prtelang,singh}@ncsu.edu ABSTRACT Traditional approaches to cross-organizational business modeling use low-level abstractions such as data and control flow. These approaches result in rigid models that over-constrain business ex- ecution. Further, because such approaches ignore the underlying business relationships that drive process execution, they lack the notion of business level correctness. Telang and Singh [5] propose a high-level business modeling ap- proach based upon (social) commitments to address these short- comings. The high-level model captures the business relationships in terms of commitments between the participants. Telang and Singh [5] develop a method for verifying if a low-level interac- tion model satisfies a high-level business model. They propose a top-down methodology in which a Business analyst first develops a high-level business model. An IT analyst then develops UML 2.0 sequence diagrams, and verifies if they satisfy the high-level model. Protos is an Eclipse-based tool that implements Telang and Singh’s [5] methodology. It enables: (a) the development of a high-level business model using reusable patterns, (b) the development of UML 2.0 sequence diagrams, as a low-level operational represen- tation, and (c) the automated verification of the UML 2.0 sequence diagrams with respect to the high-level business model. Categories and Subject Descriptors I.2.11 [Distributed Artificial Intelligence]: Multiagent systems Keywords Software engineering, Commitment, Verification 1. ARCHITECTURE 1.1 Conceptual Architecture Figure 1 shows the conceptual architecture of Protos. A business analyst starts with a desired cross-organizational scenario. The an- alyst selects an appropriate set of patterns from a pattern library, and composes them to develop a business model. Computation tree logic (CTL) specifications formalize each of the business pattern in the library. The union of the CTL specifications for all the pat- terns occurring in a business model constitute a formalization of the model. Appears in: Proceedings of the 11th International Conference on Autonomous Agents and Multiagent Systems (AAMAS 2012), Conitzer, Winikoff, Padgham, and van der Hoek (eds.), June, 4–8, 2012, Valencia, Spain. Copyright c 2012, International Foundation for Autonomous Agents and Multiagent Systems (www.ifaamas.org). All rights reserved. !"#$%&## ()*&+ !"#$%&## ,%-&./0-$)%# 1/--&.% 234 56&0$7$0/-$)% 85( $% 9"5(: ,%6"- 4/%;"/;& 9"5(: ()*&+ 2<&0=&. !"#$%&’"( )’"(#*+,-. )’"(#*+,-. ()*&+ 234 56&0$7$0/-$)% /011-%%2 >)%& 3-% ()*$7? 4’ 5 6 @ A 1/--&.%# 1/--&.%# Figure 1: Conceptual architecture (verbatim from [5]). An IT analyst starts from a business model to develop UML se- quence diagrams (operational model). The analyst employs the standard operators of UML 2.0, such as alt(ernate) and opt(ion) with appropriate guards to specify the sequence diagrams. The se- quence diagrams are transformed into a finite state machine in the NuSMV input language. The IT analyst runs the NuSMV model checker to verify if the sequence diagrams satisfy the business model. If the model-checker returns success, then the sequence diagrams satisfy the business model. Otherwise, IT or Business analyst in- spect the NuSMV counterexample to identify the cause of the fail- ure. They make appropriate changes to either or both of the models and rerun NuSMV. 1.2 Tool Architecture Figure 2 shows the architecture of the Protos tool. The Protos tool consists of five key components: business modeler, UML se- quence diagram modeler, Protos engine, Protos parser, and NuSMV model-checker. The Business Modeler is implemented as an Eclipse plugin using the Eclipse Modeling Framework (EMF) [1] and the Graphi- cal Modeling Framework (GMF) [2]. The concepts and con- straints of the business metamodel are specified in an EMF ECore model. The graphical aspects of the tool such as the concept icons, connectors, and menus are specified in the GMF model. An Eclipse plugin of the tool is then generated using the GMF framework. The business modeler enables saving a business model as an ECore model instance file. Figure 3 shows a screenshot of the business modeler present- ing a model of a real-life Quote-to-Cash business process. 1