=Paper= {{Paper |id=Vol-2075/PT-paper-3 |storemode=property |title=Multiple Criteria Decision Support in Requirements Negotiation |pdfUrl=https://ceur-ws.org/Vol-2075/PT_paper_3.pdf |volume=Vol-2075 |authors=Siamak Farshidi,Slinger Jansen,Rolf de Jong,Sjaak Brinkkemper |dblpUrl=https://dblp.org/rec/conf/refsq/FarshidiJJB18 }} ==Multiple Criteria Decision Support in Requirements Negotiation== https://ceur-ws.org/Vol-2075/PT_paper_3.pdf
             Multiple Criteria Decision Support in
                  Requirements Negotiation

    Siamak Farshidi1 , Slinger Jansen1 , Rolf de Jong2 , and Sjaak Brinkkemper1
       1
           Department of Information and Computing Sciences, Utrecht University
                 {s.farshidi, slinger.jansen, s.brinkkemper}@uu.nl
                                    2
                                      AFAS Software
                                   r.dejong@afas.nl



           Abstract. Software producing organizations regularly make complex
           technology decisions as part of the software production process, even
           when there is low availability of expertise in the domain within the orga-
           nization. Software production is consequently a suitable domain to de-
           ploy decision support systems that intelligently assist decision-makers in
           selecting desirable technologies according to their requirements and pri-
           orities. In this tool paper, we introduce a decision support system that
           supports decision-makers in group and individual decision-making prob-
           lems to select the most suitable technologies. Technology experts from
           different domains, such as database management systems and cloud ser-
           vice providers, confirm that the approach provides more knowledge than
           they could have collected independently, increases insight into the se-
           lection process, and reduces the time and cost of the decision-making
           process.

           Keywords: multi-criteria decision-making; decision support system; tech-
           nology selection; requirement priorities; group decision-making


1     Introduction
Thanks to rapidly evolving technologies and an abundance of technology vendors
with homogeneous offerings in the marketplace, selecting suitable technologies
for software producing organizations is a challenging process. Software architects
and senior developers, who are not experts in each decision domain, need trusted
partners who can effectively understand their requirements and priorities as well
as have deep technical expertise in software technologies in the market. Technol-
ogy selection is the process of assessing the potential value of technologies and
their contribution to the competitiveness and profitability of Software Produc-
ing Organizations. The selection process is complicated because there are many
factors, such as suitability and cost, that have to be considered. The technology
       This work is a result of the AMUSE project. See amuse-project.org for more
    information.
    Copyright 2018 for this paper by its authors. Copying permitted for private and
    academic purposes.
selection process can be modeled as a multi-criteria decision-making (MCDM)
problem that deals with the assessing of a set of alternatives, and considering a
set of decision criteria.
    This study introduces a Decision Support System Tool (DSST) that helps
decision-makers with MCDM problems, such as Database Management System
and Cloud Service Provider (CSP) selection problems.


2    Related Work

In recent years researchers introduced a considerable variety of techniques, meth-
ods, and tools to solve different technology selection problems for Software Pro-
ducing Organizations. Many variations exist, but all share the crucial phases of
the decision-making process. The majority of the techniques in the literature use
pairwise comparison as the main method to assess the weight of criteria. The
pairwise comparison is a time-consuming process, and gets more complicated as
the number of criteria increases. Some of the methods, such as Analytic Hierar-
chy Process, are not scalable, so in the case of modifying the list of alternatives or
criteria, the whole process of evaluation should be conducted repeatedly. There-
fore, these methods are costly and applicable for only a small number of criteria
and alternatives. The majority of the MCMD techniques in literature define
domain-specific quality attributes to evaluate the alternatives. Such studies are
mainly appropriate for specific case studies. Furthermore, the results of these
MCDM approaches are valid for a specified period, so by technology advances
and new service offering they will be out-of-date.
    The Commercial-Off-The-Shelf (COTS) selection problem is a subclass of
MCDM problems. Numerous approaches have been proposed for the general
problem of software component evaluation and selection. Becker et al. [1] present
a multi-criteria decision support system (MCDSS) for the COTS selection prob-
lem. The MCDSS evaluates a total of 51 COTS components against a total of
631 decision criteria. The authors specified metrics, such as the key decision fac-
tors and efficient criteria sets, for the quantitative evaluation of decision criteria
and sets of criteria, and illustrated their application to a set of real-world deci-
sion cases. The DSST and MCDSS both provide a substantial number of criteria
to support decision-makers in the technology selection problem. Furthermore,
they use ISO SQUARE as a standard set of quality attributes. The main differ-
ence between the DSST and MCDSS is their weighting methods. The DSST and
MCDSS both provide a substantial number set of criteria to support decision-
makers. Furthermore, they use the ISO SQUARE as a standard set of quality
attributes.
    The DSST is unique in that it utilizes standard concepts from software pro-
duction: the MoSCoW prioritization technique (MoSCoW ) [2] to assess criteria
weights and reduce uncertainty, and ISO/IEC quality aspects to indicate the
relationship among criteria according to domain experts’ knowledge. The DSST
can be used over the full life-cycle and can co-evolve its advice based on evolving
requirements. Moreover, the DSST empowers Software Producing Organizations
with its consensus platform for group decision making.


3     Decision Support System

The fundamental components of a typical DSS [3] are the DataBase manage-
ment system, the Model-Base management system, and the Dialog Generation
management system.
     The DataBase management system is a set of domain features facts related to
the MCDM problem. Furthermore, it contains previous solutions, best practices,
and lesson learned from prior made decisions. The Model-Base management sys-
tem is a collection of rules, heuristics, and knowledge related to the MCDM
problem. The Dialog Generation management system is a user interface which
is used to acquire decision-makers’ requirements and preferences.
     The Inference Engine (IE) of the decision support system infers solutions.
The IE receives domain feature requirements and their priorities according to
MoSCoW from the Dialog Generation management system as its input. Next,
it finds the most relevant rules from a collection of models in the Model-Base
management system. Then, the IE by using facts from the DataBase manage-
ment system deduces decisions. Eventually, it sends ranked feasible solutions to
the Dialog Generation management system. The IE is a protocol for navigating
through the rules and facts in a DSS to solve the problem. The IE infers solutions
of MCDM problems based on the interaction of domain features facts and rules.
In a standard DSS, the IE does not rely on knowledge base facts and rules, so
it works independently from the other components.
     The DSST3 comprises all of the fundamental components of a standard DSS.
Figure 1 shows the fundamental components of the DSST and their relationships.


     Dialog Generation                                                 Knowledge base
       management
          system                          Model-Base management system            Database management system
       Requirements
        & Priorities                                  Domain
        (MoSCoW)
                                                     Qualities
                              Inference                                            Domain     Previous Solutions
                                                    Features
                                Engine                                             Feature      Best Practices
                                                                                    Facts      Lessons Learned
                                                   Alternatives
          Ranked                                 Decision Meta-Model
         Feasible

                                                                                                    …
         Solutions
                                                   CSP
                                                                                DBMS
                                              Decision Model
                                                                            Decision Model




                         Fig. 1. The fundamental components of the DSST.
3
    We have invested roughly 960 hours into the implementation of the online Decision
    Model Studio (http://dss.amuse-project.org) to build decision models for MCDM
    problems in Software Producing Organizations.
3.1     Research Method

The DSST is a culmination of several research projects combined. The DSST is
central in four research projects with the DSST: one concerning DBMSs, one con-
cerning CSPs, one concerning blockchain platforms, and one concerning Software
Architecture decisions. For each of the projects, several experts were approached
to evaluate the quality model, the COTS features, and the effectiveness of the
tool. In total, twenty-three experts (three DSS experts, two academics, five Soft-
ware Developers, six cloud consultants, three cloud architects, and four software
architects) participated in this research to evaluate the effectiveness and effi-
ciency of the DSST. We selected the experts according to their expertise and
experience that they mentioned in their professional profile.


3.2     Decision Model

A decision model in the knowledge base of the DSST contains all facts and
rules of an MCDM problem. In other words, a decision model defines a decision
graph to solve a specific MCDM problem. The Decision Meta-Model is the base
structure of a decision model in the knowledge base. It includes two primary
sets (Qualities and Features). The set Qualities is a set that keeps software
quality attributes, and the set Features is a set that retains domain features of
an MCDM problem.
    The DSST uses the ISO/IEC 25010 standard [4] and extended ISO/IEC
9126 standard [5], which are domain-independent software quality models and
provide reference points by defining a top-down standard quality model for
software systems, to define the set Qualities. Moreover, domain features of an
MCDM problem are specified based on the domain experts’ knowledge. For in-
stance, Kubernetes, Docker Swarm, and Ansible could be considered as domain
features of the CSP selection problem. The mapping between the standard qual-
ity models and domain features are defined based on domain experts’ opinions,
where Qualities×F eatures → Boolean. Figure 2 illustrates part of the mapping
between quality models and domain features in CSP selection problem.




      Fig. 2. A part of the mapping between the ISO/IEC 25010 and CSP features.
    Technology alternatives of an MCDM problem and the mapping between
them and domain features are determined based on documentation of alterna-
tives, literature studies, social networks, alternative experts, etc. As mentioned
earlier, the DSST utilizes MoSCoW to define decision-makers’ domain feature
requirements and assess the importance of required domain features. Suppose
WM oSCoW = {wM ust , wShould , wCould , wW on0 t } is the set of priority weights ac-
cording to the definition of the MoSCoW [2]. Domain feature requirements with
Must Have or Won’t Have priorities act as hard constraints and domain feature
requirements with Should Have and Could Have priorities act as soft constraints.
Figure 3 shows part of the domain feature requirements and priorities for a Soft-
ware Producing Organization4 .




Fig. 3. Top-10 solutions and part of the domain feature requirements of AFAS CSP
selection problem.



    Each decision model defines a decision structure for an MCDM problem
systematically. The Knowledge Base is a collection of decision models, which are
groups of rules and facts. The Inf erenceEngine ranks the alternatives based
on their calculated scores. The score calculation process begins with computing
the weight of each aspect of the decision model.The score calculation process is
based on the well-known Weighted Sum Model. The scores of feasible solutions
are more than zero. Moreover, by sorting the feasible solutions in descending
order of their scores, the final ranked feasible solutions will be given as the result
of the DSST.Figure 3 and Figure 4 demonstrate a part of the decision graph and
top-10 solutions for the Software Producing Organization respectively.

4
    AFAS Software is an ERP vendor in the Netherlands with approximately 350 em-
    ployees. One of AFAS’ current challenges is validating whether they have chosen the
    right CSP for the new version of their product.
       Fig. 4. A part of the Decision Graph for AFAS CSP selection problem.



3.3   Group Decision Making


The DSST provides a discussion and negotiation platform to enable Software
Producing Organizations to make group decisions. It detects and highlights
the conflicts in the assigned priorities to the domain feature requirements by
decision-makers, asks them to resolve disagreements. The DSST asks decision-
makers to define individual domain feature requirements based on MoSCoW.
Next, it collects the individual prioritized domain feature requirements of decision-
makers and considers the maximum MoSCoW priority for each feature require-
ment. For example, if three decision-makers assign two Should Have and one
Must Have priority to a domain feature requirement, the collective priority be-
comes Must Have. Moreover, The DSST detects inconsistent values, such as two
Must Have and one Could have, and asks decision-makers to revise the con-
sidered priories. Figure 5 illustrates an example of the group decision-making
process and how the tool supports it.




Fig. 5. An example of group decision-making. Note, the DM columns show the prior-
itized domain feature requirements by decision-makers based on MoSCoW. Moreover,
the collective decision column indicates the maximum priority for each domain feature
requirement.
4   Discussion
Figure 3 illustrates top-10 feasible technology solutions for a case participant
(AFAS). The DSST recommended the same solutions as the case participant
experts suggested to the organization after extensive analysis and discussions.
However, the DSST offers a short ranked list of feasible solutions; therefore
Software Producing Organizations should perform further investigations, such
as performance testing and actual TCO calculation, to find the optimum CSPs
for their software products.
    The technology experts confirm that the DSST contains the main compo-
nents of a standard DSS. Furthermore, they find the DSST useful and provides
more knowledge than they could have collected independently. The experts be-
lieve that experience in using a technology provides invaluable knowledge when
selecting suitable technology. We, therefore, recommend that the DSST be used
in combination with benchmarks where applicable.

5   Conclusion
This tool paper introduces a decision support system (DSST) to accelerate the
process of technology selection. The DSST empowers Software Producing Or-
ganizations with its discussion platform to perform group decision making and
reaching a collective decision. The DSST utilizes the MoSCoW prioritization
technique (MoSCoW ) to assess criteria weights and reduce uncertainty, and
ISO/IEC quality aspects to indicate the relationship among criteria according
to domain experts’ knowledge. The experts asserted that the approach increases
insight into the selection process and that it reduces the time and cost of the
decision-making process. We plan to create a community around the DSST that
regularly will update the curated knowledge base with new technology alter-
natives and features. Additionally, we are looking at methods to automatically
extract domain features from manuals and documentation, using text mining
techniques.

References
1. C. Becker, M. Kraxner, M. Plangg, and A. Rauber, “Improving decision support
   for software component selection through systematic cross-referencing and analy-
   sis of multiple decision criteria,” in System Sciences (HICSS), 2013 46th Hawaii
   International Conference on. IEEE, 2013, pp. 1193–1202.
2. Atern, “The handbook,” DSDM Consortium, 2008.
3. A. Sage, Decision support systems engineering, ser. Wiley series in systems engi-
   neering. J. Wiley, 1991.
4. ISO, “Iec25010: 2011 systems and software engineering–systems and software quality
   requirements and evaluation (square)–system and software quality models,” Inter-
   national Organization for Standardization, vol. 34, p. 2910, 2011.
5. J. P. Carvallo and X. Franch, “Extending the iso/iec 9126-1 quality model with
   non-technical factors for cots components selection,” in Proceedings of the 2006
   international workshop on Software quality. ACM, 2006, pp. 9–14.