Cicero is a web application that supports asynchronous discussions and collective decision making among participants in an ontology engineering project. The underlying argumentation model of Cicero was derived from issue-based information systems (IBIS) and the DILIGENT argumentation framework. In particular, Cicero combines the general structure for representing discussions from the DILIGENT argumentation framework with the idea of annotating ontology elements and changes with the corresponding discussions.
In Cicero, a discussion always starts with the definition of an issue that is raised by any member of the different participant categories (e.g., ontology/knowledge engineers, domain experts, end-users). Subsequently, different solutions for the issue can be proposed and discussed. To this end, each solution can be supported or objected to, based on further arguments. Users can draw from three different argument types (from the DILIGENT argumentation framework):
- Example: a pattern that should or should not be imitated. Examples are used for illustrating similar cases that may serve as a model for the solution to which they reply.
- Evaluation: an evaluation gives criteria which help to assess the strengths and weaknesses of a solution proposal
- Justification: a justification describes the relevant circumstances that help to understand why a certain solution is supported or objected by a user.
After a discussion in Cicero, users can take their position with respect to the different proposed solutions in order to decide which one will be implemented in the ontology. For this decision-making procedure users with the corresponding access right can cast their ballot. Depending on the settings of an issue, users can cast their ballot for one solution proposal only or for several of the solution proposals. Two decision-making modes are possible:
- Preferential voting mode: all users with the corresponding access right can cast their ballot. The solution proposal with the most votes is subsequently marked as the decided solution.
- Dictator mode: a single user with the corresponding access right decides on the solution of the issue.
Cicero is an extension of the Semantic MediaWiki, which supports, among other features, access to its contents as RDF streams. Such features are particularly useful for integrating it with other tools. For example, the Cicero plugin integrates the functionality of Cicero into the ontology engineering platform NeOn toolkit. The plugin allows for establishing links between concepts in an ontology (e.g. classes or properties) and the associated discussions that influenced their design. These discussions, which are held in a Cicero-Wiki on a central server, are then used by the ontology developers for understanding the design rationale of specific ontology concepts. There is also an extended feature for OWL-ontologies which works with the Change Capturing plugin, which allows to associate discussions with particular changes performed on the ontology, e.g., to explain the reason for such a change.
In the DMO Foundry, we use Cicero-Wiki as one of the means to support the collaborative ontology engineering process. Two particular cases can be identified where Cicero can play a key role in improving collaboration among participants in this process. First, there are activities (e.g., conceptualization, validation) during which argumentation data is actively created, for instance, by discussions among participants. In this case, Cicero has the role of structuring the discussion process by facilitating the systematic exploration of possible solutions and keeping track of the pro and contra arguments, which in turn, support more efficient discussion and decision making. Second, there are activities (e.g., upgrade, validation, verification) where previously recorded discussions are used for understanding the design rationale of elements in the ontology. In this case, recorded discussions are part of the ontology documentation.