ArticlePDF Available

Abstract and Figures

Antipatterns in software project management are mechanisms that describe commonly occurring solutions to problems that generate negative consequences. The Bayesian Belief Network (BBN) approach has been recently proposed for modelling software project management antipatterns. BBNs provide a solution for software project managers, who would like to model the cause-effect relationship that underlies antipatterns by considering their inherent uncertainty. Although a BBN model can be used to aid decisions by observing the effect of uncertainty on a specific attribute of interest (such as software quality), in many circumstances decisions based on multiple criteria need to be made. Multi-criteria decision aid (MCDA) can be applied to improve the effectiveness of management decisions. A BBN model ignores the multiple, and often conflicting, criteria that surround a managerial decision (such as development time and total collaboration costs). In this paper such an approach is exemplified through a specific BBN model of an antipattern complemented by MCDA. The final resulted model is helpful in evaluating the impact of developer personalities and temperaments on communication, collaboration viability and effectiveness in pair programming.
Content may be subject to copyright.
Using MCDA and Bayesian Belief Networks to Aid
Decision Making Based on Software Project
Management Antipatterns
Dimitrios Settas, Ioannis Stamelos
Dept. of Informatics, Aristotle University of Thessaloniki, Thessaloniki, Greece
{dsettas,stamelos}@csd.auth.gr
Vassilis C. Gerogiannis
Dept. of Project Management, Technological Education Institute of Larissa, Larissa, Greece
gerogian@teilar.gr
Abstract
Antipatterns in software project management are mechanisms that describe commonly
occurring solutions to problems that generate negative consequences. The Bayesian Belief
Network (BBN) approach has been recently proposed for modelling software project
management antipatterns. BBNs provide a solution for software project managers, who would
like to model the cause-effect relationship that underlies antipatterns by considering their
inherent uncertainty. Although a BBN model can be used to aid decisions by observing the
effect of uncertainty on a specific attribute of interest (such as software quality), in many
circumstances decisions based on multiple criteria need to be made. Multi-criteria decision aid
(MCDA) can be applied to improve the effectiveness of management decisions. A BBN model
ignores the multiple, and often conflicting, criteria that surround a managerial decision (such
as development time and total collaboration costs). In this paper such an approach is
exemplified through a specific BBN model of an antipattern complemented by MCDA. The
final resulted model is helpful in evaluating the impact of developer personalities and
temperaments on communication, collaboration viability and effectiveness in pair
programming.
Keywords: Bayesian Belief Netowrks, Multi-criteria decision aid, Software project
management, Antipatterns
1. Introduction
Software project management plays a major role in software development that is
required for the coordination and guidance of analysts, programmers and testers.
Ineffective project management has been recognised as a major factor contributing to
software project failures [Fox and Wayne (2005)]. Success or failure of a software
project can be attributed to the incorrect handling of one or more project variables:
people, technology and process [Hughes and Cotterell (1999); Brown et. al. (2000)].
There exist many uncertainties in these variables and current software engineering
techniques are unable to eliminate them [Fan and Yu (2004)]. Managing variables
uncertainty is very important because this would lower the risk of the project being
unsuccessful.
It is highly recommended [Hughes and Cotterell (1999)] that software project
managers should reconsider the techniques they used on successful past project,
before making decisions on current projects. Furthermore, software project managers
should avoid using techniques they applied on unsuccessful past projects.
Antipatterns [Brown et. al. (1998); Laplante and Neill (2006)] are particularly well
suited in such cases by describing commonly occurring solutions to problems
regarding dysfunctional behaviour of managers or pervasive management practices
that inhibit software project success. These mechanisms can manage aspects of a
software project more effectively by bringing insight into the causes, symptoms,
consequences, and by providing successful repeatable solutions. An antipattern is
related with two solutions. The first is a solution with negative consequences and the
other is a refactored solution, which describes how to change the antipattern into a
“healthy” solution [Brown et. al. (1998)]. By listing project management antipattern
catalogues, project managers can identify potential problems and provide a refactored
solution, in a practical and reusable manner [Belbin (1996)]. A project management
antipattern can be regarded as the result of incorrect decisions/actions, which are
made on the part of the manager, because of the lack of knowledge or experience in
solving a particular problem. These decisions could also be made because a manager
simply made a decision based on faulty information. Therefore, decision makers can
decide to use the refactored solution of an antipattern, which describes how to change
the antipattern into a correct solution.
A software project manager may utilise machine learning models to observe the
effects of uncertainty on a specific project variable and make a decision to use an
appropriate refactored solution. For example, a project manager can build a Bayesian
Belief Network (BBN) model of an antipattern to observe the effect of uncertainty on
software quality [Settas et. al. (2006)]. However, this approach handles only one part
of the information that the manager may exploit before deciding to use a refactored
solution of the identified antipattern. A software project manager may be also
interested in other criteria, like cost and functionality, which can not be provided by
the BBN model of the antipattern [Fenton et. al. (2004)].
In this paper, we use antipatterns to overcome the problems related with possible
dysfunctional behaviour of management practices that inhibit software project
success. To take into account wider decision problems, based on multiple criteria, the
role of BBNs is complemented with a multi-criteria decision aid (MCDA) approach.
We exemplify this approach using an already defined antipattern that is called
“shaken but not stirred” [Settas et. al. (2006)]. This is a software project management
antipattern, expessed in a BBN model, that evaluates the impact of programmers’
personalities and temperaments on communication and collaboration. We chose this
approach to demonstrate the power of antipatterns modelled through BBNs and
MCDA. The paper is divided in 4 sections, which are organized as follows: section 2
describes the background, the related work and the literature review used in our
research. Section 3 describes the proposed approach which unifies BBNs and MCDA
for antipattern modelling. Finally, in section 4 we summarize our findings and draw
our conclusions.
2. Background and Related Work
2.1 Background
In contrast to conventional software project management approaches, agile
approaches put emphasis on a process view of human collaboration through the
lifecycle of a software development project [Larman (2004)]. A traditional, phase-
based approach identifies a sequence of steps to be followed, whereas an agile
approach considers a software project as a series of relatively small tasks conceived
and executed in an adaptive manner. Extreme Programming (XP) [Beck (1999)] is
arguably the best known and most popular agile development methodology. XP
emphasizes team work by motivating the software development process to constantly
respond to changes of user requirements, even late in the project lifecycle. In an XP
project, managers, users, and developers are all part of a coherent team dedicated to
deliver quality software. Software development processes rely heavily on a
communications effort, and improving communications is one of the most effective
ways to improve the development process. “Pair programming” is possibly the most
controversial aspect of XP [Stephens and Rosenberg (2003)]. According to the pair
programming style, every line of code should be created by a pair of developers,
sitting side by side.
Use of patterns and antipatterns may be proved very applicable in an XP project
[Laplante and Neill (2006)]. The former refer to best practice solutions, while the
latter refer to common mistakes a software development team may make as they try
to respond to user requirements. Antipattern catalogues, have covered several
management, personality and environmental antipatterns [Brown et. al. (2000)]. By
documenting XP antipatterns, project coaches and managers are able to solve a newly
encountered problem by applying a previously successful solution to a particular
problem.
In a pair programming practice, the aim is to transfer skills and knowledge between
the two developers. However, there exist underlying human factors that need to be
identified and understood, in order to control, predict and understand the problems
that arise from the limited guidance that has been so far provided for specic
occasions. Therefore, an active community has been developed around XP in order to
address such issues using antipatterns [Kuranuki and Hiranabe (2004)].
2.2 Related Work
Bayesian Belief Networks (BBNs) have been recently proposed for modelling
software project management antipattern uncertainty [Settas et. al. (2006)]. A BBN
provides a natural, logical and probabilistic framework to depict project management
antipattern uncertainty. The benefit of modelling a project management antipattern
into a BBN is to bring the full weight and power of BBN analysis to bear on the
problem of managing uncertainty in project management antipatterns. Furthermore,
three considerations justify the decision of modelling antipatterns with the BBNs
[Settas et. al. (2006)]:
The formalism of BBNs enables the development of a precise mathematical
model of an antipattern. Project management antipatterns are effective in
dealing with uncertainty and BBNs enable measuring and handling this
uncertainty in mathematical terms.
The suggested model can be used by project managers to graphically depict
and illustrate the effects of uncertainty on a project management antipattern.
The proposed BBN model can be used by project managers who have scarce
statistical data of present or past projects and they wish to supplement the
model using expert judgement.
Multi-Criteria Decision Aid (MCDA) involves the selection of the best actions from a
set of alternatives, each of which is evaluated against multiple, and often conflicting,
criteria. Most of the existing MCDA methods only focus on decisions under certainty
[Figueira et. al. (2005)]. However, Fenton and Neil [Fenton and Neil (2001)] have
proposed a framework which complements BBNs using MCDA. The procedure they
proposed consists of identifying objectives and perspectives for a decision problem
and stakeholders, which leads to a set of actions/decisions, criteria and constraints.
The proposed BBN is used to model a set of criteria and calculate a value for each
criterion for a given action/decision. Using this method, a manager can apply
traditional MCDA techniques to combine the values for a given action/decision and
then rank the set of all possible actions. Furthermore, Watthayu and Peng [Watthayu
and Peng (2004)] have proposed a decision framework using BBNs in order to model
complex and uncertain interactions between criteria and other factors in a coherent
and systematic manner. In this framework, a decision problem is represented by an
Influence Diagram (ID), where each decision node represents a set of alternatives for
a decision, a utility node represents a set of objectives (decision maker’s preferences),
and chance nodes represent decision criteria and internal/external factors that may
affect the decision criteria.
3. Complementing BBN Models of Antipatterns using MCDA
3.1 Software Project Management Antipatterns
Brown et al. [Brown et. al. (1998); Brown et. al. (2000)] were the first to provide the
structure of an antipattern. Following the informal presentation style of project
management antipatterns, Laplante’s template [Laplante et. al. (20006] (Table 1) will
be used to define an XP project management antipattern that is called “shaken but not
stirred”.
Table 1. Antipattern Structure
Name A short name that conveys the antipattern’s meaning.
CentralConcept The short synopsis of the antipattern in order to make the
antipattern identiable.
Dysfunction The problems with the current practice.
Explanation The expanded explanation including causes and consequences.
Band-Aid A short term coping strategy for those who don’t have the
inuence nor time to refactor it.
Self-Repair The rst step for someone perpetuating the antipattern.
Refactoring The required changes in order to remedy the situation and their
rationale.
Identication An assessment instrument consisting of a list of questions for
diagnosis of the antipattern.
The antipattern is defined as follows:
Name: “shaken but not stirred”.
Central Concept: A rush to use pair programming without ensuring that the
developer pairs have mixed developer personalities and temperaments. Generally, any
project manager or coach who does not use personality and temperament inventories.
Dysfunction: This antipattern is attributable to a single individual. The project
manager or the coach, who does not arrange the pairs according to mixed
personalities, but usually cares only in having experienced programmers mixed with
inexperienced ones.
Explanation: We use the term “shaken but not stirred” because it reflects the fact that
developers are only “shaken” in pairs according to their skills but they are not
“stirred” according to their personality and temperament. The main causes are the
lack of experience and knowledge of the project manager on mixing developer
personalities. This clearly has a negative effect on knowledge and skill sharing hence
affecting the development time, communication, collaboration, design correctness and
the quality of the software.
Band-Aid: There is no band aid for this antipattern. No short term coping strategy
can be applied to deal with this problem. Rearranging the pairs again, without using
personality tests, will only make the situation more dysfunctional.
Self-Repair: Project managers should mix the developer pairs accordingly as soon as
possible. Therefore, they have to quickly identify symptoms such as poor
communication and collaboration of the pairs and pay attention to the possible
complaints of the developers.
Refactoring: Personality and temperament sorter tests, such as the Keirsey
Temperament Sorter test (http://www.keirsey.com/), can be used in order to identify
and interpret developers’ personalities and temperaments. Pairs should be rearranged
immediately, according to their personality and temperament, in order to improve the
software quality by improving pair communication, collaboration and pair
effectiveness.
Identification: The following questions should be answered with a “Yes” or “No”.
Does the XP team consistently deliver low quality software? Is there evidence of lack
of shared knowledge of the project design? Have the developers reported any
communication/collaboration problems to the project coach? Do the developers insist
on working individually? If you responded “Yes” to one or more of these statements,
your organisation is probably suffering from “shaken but not stirred”.
3.2 The BBN Model of the Antipattern
Software project management antipatterns have been recently modelled using BBNs
[[Fenton et. al. (2004); Settas et. al. (2006)]. The proposed model of the “shaken but
not stirred” antipattern is illustrated in Fig. 1. Table 2 explains the variable names that
were used in the BBN model.
Figure 1. BBN Model of the “Shaken but not Stirred” Antipattern
Table 2. Explanation of BBN Model Variables
BBN Variable name
Mixed Personality: An indicator of heterogeneous developer personality
Mixed Temperament: An indicator of heterogeneous developer temperament
according to Keirsey’s (http://www.keirsey.com/) descriptive groupings.
Personality Type: 16 Personality types according to the Myers-Briggs
(www.myersbriggs.org) type indication.
Development Time: The total development time that took the pair to complete 2
tasks (measured in minutes).
Total Communication Transactions: The total number of transactions in
requirements gathering, specification and design changes, coding, unit testing,
code and design reviews.
Collaboration: The collaboration grade with the partner developer (points)
Design Correctness: Measured in points obtained by each pair for both
assignments. The points were measured on a ratio scale based on checklists to
ensure objective assessment of the participant’s results
Quality: This variable used the acceptance test scores of both tasks as an
indicator.
3.3 A Decision Making Example
An agile software project manager, who follows XP guidelines in his/her project,
would like to rearrange the developer pairs in the best possible way. The manager
wishes to improve software quality. Obviously, communication and collaboration of
the developers have to be improved and development time must be reduced. The
design also has to be of high correctness as well as conflicts between developers, their
motivation and possible absence and other political or cost factors must be taken into
account. The problem is to decide whether to:
Rearrange developer pairs heterogeneously according to their skills (i.e.,
advanced developers mixed with novice developers).
Rearrange developer pairs using programmers of roughly the same ability
[Williams and Kessler (2002)].
Apply the “shaken but not stirred” antipattern [Settas et. al. (2006)] that
proposed to rearrange developers heterogeneously according to developer
personalities and temperaments [Sfetsos et. al. (2005)].
3.4 MCDA and BBNs for Antipattern Modelling
According to Fenton and Neil [Fenton and Neil (2001)], the objective of a decision
problem is the ultimate reason for solving it. The objective is always with respect to a
specific perspective, the most important component of which is the person or team
making the decision. The perspective of the problem incorporates not only the
decision-maker, but also the stakeholders. These are the parties most affected by the
chosen outcome and whose viewpoints will need to be considered in arriving at a
decision. It is important not to take into account irrelevant stakeholders, if their
viewpoints are irrelevant or their viewpoints are inconsistent with that of the decision
maker. In an XP software project, for example, the end user of the developed software
product is affected by the decision to rearrange the pairs of developers but there is no
need for the manager to consider the needs of the end users.
Three concepts usually play a fundamental role for analyzing and structuring the
MCDA process, in close connection with the decision process itself [Figueira et. al.
(2005)]. These are the possible actions we can take, a set of criteria and a set of
constraints. In case of a single criterion, the best action is chosen. However, in case
that several conflicting criteria need to be taken into account, we need to optimise the
conflicting criteria. Constraints can guide decision makers to a decision and are the
properties of the attributes that we regard as necessary. Constraints provide some help
on choosing an action because any action that fails to satisfy a constraint for any
criteria is rejected.
To summarize the above MCDA key concepts in the “shaken but not stirred”
antipattern:
Objective: Rearrange the developer pairs in the best possible way.
Perspective: Decision Maker: Software project manager. Stakeholders: The
developers.
Decision Problem: Determine the most suitable rearrangement of
developer pairs.
Possible actions: Rearrange developer pairs heterogeneously according to their skills.
Rearrange developer pairs using programmers of roughly the same ability. Apply the
“Shaken but not stirred” antipattern.
Criteria: Development time, total communicating transactions, collaboration, design
correctness, quality.
Constraints: Reduced development time, improved communication, collaboration
and design correctness, increased software quality.
External (uncontrollable) factors: Motivation, developers’ conflicts, absence, cost.
Internal (controllable) factors: Development environment, project management
involvement in the development process, personal communication with developers.
However, when such a MCDA process is applied to a software project, the relevant
criteria are not well defined and certain [Fenton and Neil (2001)]. BBNs can deal with
the inherent uncertainty of the so called “vague” criteria. A vague criterion is often
decomposed into lower levels that are better defined. For example, software
dependability is decomposed into safety, reliability, availability, and maintainability.
Furthermore, in MCDA, once the criteria are defined it is assumed that for a given
action their value is certain. However, some criteria require some uncertainty
inference because they can not be computed with certainty. There are different types
of factors that cause the need for uncertainty inference, such as external and internal
factors. External factors cannot be controlled but influence the value of a criterion for
a given action. All these factors together with the uncertain criteria may form nodes in
a BBN which can be used to predict the values of uncertain criteria. For example, the
finally resulting BBN model (Fig. 2) illustrates uncertain criteria with the external
factors that impact on them.
Figure 2. BBN Model of the Impact of External Factors
Internal factors, on the other hand, can be controlled and can influence the value of a
criterion for a given action. In the construction of BBN models for uncertain criteria
the internal factors also have to be included. An example of an internal factor that
could be included in the BBN model (Fig. 2) is the amount of managerial
involvement. Therefore, we could increase the involvement of the manager in case
evidence of decreased motivation is received. Finally, the resulting BBN model can
be used to calculate values of the uncertain criteria, combine values for a given action
and then rank the set of possible actions.
4. Conclusion
In this paper we have extended BBN models of software project management
antipatterns by taking into account wider decision problems based on multiple
criteria. In particular, we have exemplified this approach using the Extreme
Programming (XP) “shaken but not stirred” project management antipattern. The final
model provides more information, such as development cost and functionality, that
the manager will consider before deciding to use the refactored solution of the
antipattern. We have been interested in the issue of the impact of developer
personalities and temperaments on communication and collaboration in pair
programming, in order to demonstrate the power of antipatterns modelled through
BBNs and MCDA.
The proposed BBN-MCDA model can be used in situations where using Bayesian
networks to observe the effects of uncertainty on a specific attribute to decide whether
to use a refactored solution of an antipattern is not adequate. The subsequent multi-
criteria decision analysis can be followed to calculate a value for each criterion for a
given action and, as a result, the most appropriate action to be discovered. It is
suggested that a richer set of data from empirical investigations would be more
helpful in representing project management antipatterns using BBNs and MCDA.
Besides that, an advanced tool support will be very necessary for the analysis of
complex BBNs using MCDA.
Acknowledgement
The work presented in this article has been partially funded by the Greek Ministry of
Education under the R&D project MISSION-SPM, in the context of the
ARCHIMEDES II national programme.
References
Beck, K. (1999). Extreme Programming Explained: Embrace Change. Addison-
Wesley.
Belbin, M. (1996). Management Teams: Why They Succeed or Fail, Butterworth-
Heinemann.
Brown, W. J., Malveau, R. C., McCormick H. and Thomas, S. W. (1998).
AntiPatterns: Refactoring Software, Architectures and Projects in Crisis. Wiley
Computer Publishing.
Brown, W. J., McCormick H. and Thomas, S. W. (2000). AntiPatterns in Project
Management. Wiley Computer Publishing.
Fan, C. F. and Yu, Y. C. (2004). BBN-based Software Project Risk Management. The
Journal of Systems and Software, vol. 73 (2), pp. 193-203.
Fenton, N. E., Marsh, W., Neil, M., Cates, P., Forey, S. and Tailor, M (2004). Making
Resource Decisions for Software Projects. Proc. of the 26th International
Conference on Software Engineering (ICSE 2004), IEEE Computer Society, pp.
397-406.
Fenton, N. E. and Neil, M. (2001), Making Decisions: Using Bayesian Nets and
MCDA. Knowledge-Based Systems, Vol. 14(7), pp. 307-325.
Figueira, J., Greco, S. and Ehrgott, M. (2005). Multiple Criteria Decision Analysis:
State of the Art Surveys, Springer Science.
Fox, T. and Wayne, S. J. (2005). The Effect of Decision Style on the Use of a Project
Management Tool: An Empirical Laboratory Study. The Database for Advances
in Information Systems, vol. 36(2), pp. 28-42.
Hughes, R. and Cotterell, M. (1999). Software Project Management. Second Edition,
McGraw-Hill Publishing co.
Kuranuki, Y. and Hiranabe, K. (2004). Antipractices: AntiPatterns for XP Practices.
Proc. of the Agile Development Conference, IEEE Computer Society, pp. 83-86.
Laplante, P. A. and Neill, C. J. (2006). Antipatterns: Identication, Refactoring and
Management. Taylor and Francis.
Larman, C. (2004). Agile and Iterative Development: A Manager’s Guide, Addison-
Wesley.
Settas, D., Bibi, S., Sfetsos, P., Stamelos, I. and Gerogiannis, V. C. (2006). Using
Bayesian Belief Networks to Model Software Project Management Antipatterns.
Proc. of the Fourth International Conference on Software Engineering Research,
Management and Applications (SERA 2006), IEEE Computer Society, pp. 117-
124.
Sfetsos, P., Stamelos, I., Angelis, L. and Deligiannis, I. (2006). Investigating the
Impact of Personality Types on Communication and Collaboration-Viability in
Pair Programming -An Empirical Study. Proc. of the Extreme Programming and
Agile Processes in Software Engineering Conference (XP 2006), Lecture Notes in
Computer Science, LNCS 4004, Springer, pp. 43-52.
Stephens, M. and Rosenberg, D. (2003). Extreme Programming Refactored: The Case
Against XP. Apress, 2003.
Watthayu, W. and Peng, Y. (2004). A Bayesian Network Based Framework for
Multi-Criteria Decision Making. Proc. of Multi-Criteria Decision Making
Conference (MCDA 2004), Whistler, B. C., pp. 6-11.
Williams, L. and Kessler, R. (2002). Pair Programming Illuminated. Addison-Wesley.
... Sua interação com outras áreas como Inteligência Artificial (Phillips-Wren e Jain, 2006), Gestão do Conhecimento (Courtney, 2001e Oduoza, 2010, Engenharia de Software (Settas et al., 2006e Vijayalakshmi et al., 2010) e outras tem possibilitado o desenvolvimento de várias tecnologias de apoio à decisão, tais como os sistemas de apoio à decisão em grupo (Group Decision Support Systems -GDSS) e os sistemas de suporte à negociação (Negotiation Support Systems -NSS) que não só utilizam agentes de software no processo de aconselhamento aos decisores como também tomam decisões de forma automática. ...
Thesis
Full-text available
Esta tese consiste em um estudo realizado na área de apoio multicritério à decisão (Multicriteria Decision Aiding - MCDA), com o objetivo de propor, testar e aperfeiçoar um Modelo de Implementação do apoio à decisão individual e em grupo com o uso do sistema VIP Analysis (Variable Interdependent Parameters Analysis). Este modelo orienta como utilizar este sistema e recomenda o uso de mapas cognitivos como método de estruturação dos problemas de decisão (Problem Structure Method - PSM) e o Modelo Aditivo da Teoria da Utilidade Multiatributo (Multiatribute Utility Theory – MAUT) como metodologia de elaboração de funções aditivas de valor. Para testar e aperfeiçoar este modelo foram realizadas intervenções em três organizações que enfrentavam problemas de decisão do tipo escolha/seleção, em que havia um mecanismo de compensação entre os critérios analisados e alternativas comparáveis entre si, tipos de problemas admitidos para análise através deste sistema de apoio à decisão. Para garantir uma melhor análise do modelo proposto, foram selecionados problemas com diferentes tipos de variáveis (qualitativas e quantitativas) e diferentes formas de estruturação (mapa cognitivo individual, mapa cognitivo único para um grupo e mapa cognitivo congregado a partir de mapas cognitivos individuais de membros de um grupo). Os processos de investigação e de resolução dos problemas de decisão destas organizações foram conduzidos através do método Action Research (AR), que viabilizou o aperfeiçoamento do modelo inicialmente proposto, possibilitando a estas instituições a utilização de uma ferramenta de apoio à decisão e permitindo à investigadora aprofundar seus conhecimentos através de sua atuação como facilitadora nestas intervenções. viii Este método foi utilizado neste estudo porque muitos autores têm discutido o futuro das metodologias de MCDA e recomendada sua utilização como uma alternativa adequada para implementar as metodologias MCDA, pois possibilita a investigação sistemática de um ou mais temas ao mesmo tempo em que são desenvolvidas as intervenções realizadas nas organizações. Ou seja, utilizando o método Action Research, o investigador pode contribuir para a mudança no sistema social das organizações estudadas, pois é admitida sua atuação como ator neste processo, ao mesmo tempo em que investiga o impacto destas mudanças e gera conhecimento com base nas mesmas. Neste trabalho, os problemas investigados foram tratados numa abordagem construtivista (especialmente no que diz respeito à utilização dos métodos e técnicas selecionados), que considera os aspectos subjetivos que os envolvem e viabiliza o aprendizado dos atores durante todas as fases do processo de apoio à decisão. Espera-se que os relatos destas três intervenções, assim como também suas conclusões, possam suscitar melhorias para o sistema VIP Analysis e prover aos usuários deste software um modelo de implementação previamente testado do processo de apoio à decisão individual e em grupo que utilize esta ferramenta, facilitando também com isto a sua utilização.
Article
Full-text available
Multi-Criteria Decision Making (MCDM) involves the selection of the best actions from a set of alternatives, each of which is evaluated against multiple, and often conflicting, criteria. Most of the existing MCDM methods only focus on decisions under certainty. The criteria were evaluated separately as if they were independent of each other. Complex, often uncertain interactions between criteria, and between criteria and other factors are not modeled in a coherent and systematic manner. To address these issues, we propose in this paper a decision framework based on Bayesian networks (BN) and influence diagram (ID) to structure and manage MCDM problems with explicit modeling of uncertain interactions among entities of interest. In this framework, a decision problem is represented by an ID where each decision node represents the set of alternatives for a decision, a utility node represents the set of objectives (decision maker's preferences), decision criteria and internal or external factors that may affect the criteria are represented by chance nodes. Interdependencies among these nodes are qualitatively modeled by the links in the diagram and quantitatively by conditional probability tables (CPT) associated with each of the chance nodes and the utility node. The joint probability distribution, which is compactly captured by the network structure and CPT, encodes the domain expert's knowledge of interdependency between variables. The decision problem is then treated as an optimization problem: recommend the decision alternative which optimizes the expected utility, given observations of some external factors and preferences made by the decision maker. Various algorithms developed for BN and ID can be employed to automatically solve this problem. The steps that need to be taken to model a MCDM problem as an ID is presented, illustrated with a running example. Other related issues are also discussed. Our preliminary work indicates that this framework is of great potential as a modeling tool to support MCDM decision making in an uncertain environment.
Article
Full-text available
Bayesian belief nets (BBNs) have proven to be an extremely powerful technique for reasoning under uncertainty. We have used them in a range of real applications concerned with predicting properties of critical systems. In most of these applications we are interested in a single attribute of the system such as safety or reliability. Although such BBNs provide important support for decision making, in many circumstances we need to make decisions based on multiple criteria. For example, a BBN for predicting the safety of a critical system cannot be used to make a decision about whether or not the system should be deployed. This is because such a decision must be based on criteria other than just safety (cost, politics, and environmental factors being obvious examples). In such situations the BBN must be complemented by other decision making techniques such as those of multi-criteria decision aid (MCDA). In this article we explain the role of BBNs in such decision-making and describe a generic decision-making procedure that uses BBNs and MCDA in a complementary way. The procedure consists of identifying the objective and perspective for the decision problem, as well as the stakeholders.This in turn leads to a set of possible actions,a set of criteria and constraints.We distinguish between, uncertain and certain criteria. The BBN links all the criteria and enables us to calculate a value (within some probability distribution in the case of the uncertain criteria) for each criterion for a given action. This means that we can apply traditional MCDA techniques to combine the values for a given action and then to rank the set of actions. The techniques described are demonstrated by real examples, including a safety assessment example that is being used by a major transportation organisation.
Book
AntiPatterns: Identification, Refactoring, and Management catalogs 48 bad management practices and environments common to software development, IT, and other organizations. The authors cover antipatterns of management, along with environmental/cultural antipatterns and personality antipatterns/phenotypes. Through the classification of these harmful practices, you will be able to correctly identify problems in your own work environment, and take action to correct them. The authors apply their extensive work and consultative experience, as well as the experience of the many professionals that they have known. This approach leads to a realistic treatment of antipattern concepts. Written for a wide audience of practitioners, the authors avoid a scholarly style, instead infusing the text with entertaining “gadgets,” including rambunctious and ribald sidebars, cartoons, stories, and jokes, as well as names for their antipatterns that are at once visual, iconic, humorous, and memorable. Following introductory material describing some management theory and how humans behave individually and in groups, the text provides the catalog of management and environmental antipatterns. The book then offers general advice on overcoming bad practices through successful interaction with clients, customers, peers, supervisors, and subordinates.
Article
Managing a software development project presents many difficulties. Most software development projects are considered less than successful, and many are simply cancelled. Ineffective project management has been cited as a major factor contributing to these failures. Project management tools can greatly assist managers in tracking and controlling their projects. However, their structured and analytical nature does not necessarily match the decision-making styles of project managers. This paper presents the results of an empirical laboratory study that examined the influence of decision style on a project manager's use of the project management tool, Microsoft Project. Project managers from eight companies participated in the study, and generated an interesting pattern indicating that significant differences exist with respect to the use made of a project management tool when the project manager's decision style is taken into consideration. The results clearly indicate that when completing certain tasks, such as developing an initial project plan, project managers preferring a more directive or analytical approach to decision making significantly outperformed those project managers preferring a more conceptual or behavioral approach, both in regard to the time taken to complete the plan, and the accuracy of the plan.
Article
In two volumes, this new edition presents the state of the art in Multiple Criteria Decision Analysis (MCDA). Reflecting the explosive growth in the field seen during the last several years, the editors not only present surveys of the foundations of MCDA, but look as well at many new areas and new applications. Individual chapter authors are among the most prestigious names in MCDA research, and combined their chapters bring the field completely up to date. Part I of the book considers the history and current state of MCDA, with surveys that cover the early history of MCDA and an overview that discusses the “pre-theoretical” assumptions of MCDA. Part II then presents the foundations of MCDA, with individual chapters that provide a very exhaustive review of preference modeling, along with a chapter devoted to the axiomatic basis of the different models that multiple criteria preferences. Part III looks at outranking methods, with three chapters that consider the ELECTRE methods, PROMETHEE methods, and a look at the rich literature of other outranking methods. Part IV, on Multiattribute Utility and Value Theories (MAUT), presents chapters on the fundamentals of this approach, the very well known UTA methods, the Analytic Hierarchy Process (AHP) and its more recent extension, the Analytic Network Process (ANP), as well as a chapter on MACBETH (Measuring Attractiveness by a Categorical Based Evaluation Technique). Part V looks at Non-Classical MCDA Approaches, with chapters on risk and uncertainty in MCDA, the decision rule approach to MCDA, the fuzzy integral approach, the verbal decision methods, and a tentative assessment of the role of fuzzy sets in decision analysis. Part VI, on Multiobjective Optimization, contains chapters on recent developments of vector and set optimization, the state of the art in continuous multiobjective programming, multiobjective combinatorial optimization, fuzzy multicriteria optimization, a review of the field of goal programming, interactive methods for solving multiobjective optimization problems, and relationships between MCDA and evolutionary multiobjective optimization (EMO). Part VII, on Applications, selects some of the most significant areas, including contributions of MCDA in finance, energy planning problems, telecommunication network planning and design, sustainable development, and portfolio analysis. Finally, Part VIII, on MCDM software, presents well known MCDA software packages.
Article
This paper presents a scheme to incorporate BBNs (Bayesian belief networks) in software project risk management. A theoretical model is defined to provide insights into risk management. Based on these insights, we have developed a BBN-based procedure using a feedback loop to predict potential risks, identify sources of risks, and advise dynamic resource adjustment. This approach facilitates the visibility and repeatability of the decision-making process of risk management. Both analytical and simulated cases are reported.