by Raymond Bisdorff and Patrick Meyer
The Decision-Deck project is developing an open-source generic Multiple Criteria Decision Analysis (MCDA) software platform composed of modular components. Its purpose is to provide effective tools for decision-aid consultants, for researchers in the field of MCDA, and for operations research teachers.
The Decision-Deck project's objective is to provide an open-source software composed of various modular components, which pertains to the field of Multiple Criteria Decision Analysis (MCDA). It should give a user the ability to add, modify or simply use existing plugged-in functionalities ('plugins'). These constituents can either be complete MCDA methods, or elements common to a large range of procedures. The typical end-user of the Decision-Deck platform is an MCDA researcher, an MCDA consultant or a teacher in an academic institution. The following MCDA methods have already been implemented: sorting of alternatives into ordered classes based on an outranking relation (IRIS), progressive best-choice method based on an outranking relation (Rubis), best-choice method based on an additive aggregation model accepting imprecise information on the scaling coefficients (VIP), and ranking of alternatives with a set of value functions (UTA-GMS/GRIP).
In order to make these various software plugins reusable by the whole community, their implementation must be compliant with a set of predefined conventions and formats. Quite obviously, the success of the Decision-Deck project relies on a collaborative development effort from the MCDA community.
The Decision-Deck software is written in the Java programming language and is therefore platform-independent. Its latest version can be downloaded from the collaborative software development management system Sourceforge. Two kinds of implementation designs are available: a Java client which locally implements the MCDA methods (D2), and a distributed Web service and AJAX based architecture, serving the MCDA methods from a distributed Web server (D3). For example, the Rubis choice method is implemented as such a Web service on a server at the University of Luxembourg.
One of the most valuable features of the Decision-Deck software is the effective consideration of specific roles such as decision maker, evaluator, coordinator or facilitator in a given decision analysis project. For instance, evaluators from a variety of distant locations may communicate their evaluations via their local D2 clients to the common decision analysis project under the supervision of the project coordinator, whereas the decision maker may input personal preferences via method-specific criteria tuning facilities offered in his/her local client (see Figure 1).
One of the tasks of the Decision-Deck project is to develop and maintain the Universal MCDA Modelling Language (UMCDA-ML), an XML standard which describes in a generic way the inputs and outputs of MCDA methods, as well as the different steps of a decision analysis workflow. The purpose of UMCDA-ML (see Figure 2) is to allow easy integration of MCDA Web services such as the Rubis server above, while also facilitating communication and data exchange between core components of the software platform.
The founding partners of the Decision-Deck project, which started in early 2006, are the MathRO laboratory of the Faculty of Engineering of Mons, the Lamsade laboratory of the University Paris-Dauphine, the ILIAS laboratory of the University of Luxembourg and Karmic Software Research.
Raymond Bisdorff, University of Luxembourg