Đăng ký Đăng nhập
Trang chủ Risk management in software project scheduling using bayesian networks...

Tài liệu Risk management in software project scheduling using bayesian networks

.PDF
141
1
58

Mô tả:

MINISTRY OF EDUCATION AND TRAINING HANOI UNIVERSITY OF SCIENCE AND TECHNOLOGY Nguyen Ngoc Tuan RISK MANAGEMENT IN SOFTWARE PROJECT SCHEDULING USING BAYESIAN NETWORKS PhD DISSERTATION ON SOFTWARE ENGINEERING Hanoi – 2021 MINISTRY OF EDUCATION AND TRAINING HANOI UNIVERSITY OF SCIENCE AND TECHNOLOGY Nguyen Ngoc Tuan RISK MANAGEMENT IN SOFTWARE PROJECT SCHEDULING USING BAYESIAN NETWORKS Major: Software Engineering Code No.: 9480103 PhD DISSERTATION ON SOFTWARE ENGINEERING SUPERVISORS: 1. Assoc. Prof. Dr. Huynh Quyet Thang 2. Dr. Vu Thi Huong Giang Hanoi – 2021 DECLARATION: I certify that this thesis and the work presented in it are products of my own work, and that any ideas or quotations from other people work published or otherwise, are fully acknowledged in accordance with the standard referencing practices of the discipline. This thesis has not been submitted for any degree or other purposes. Hanoi, April 29, 2021 PhD STUDENT Nguyễn Ngọc Tuấn ON BEHALF OF SUPERVISORS Assoc. Prof. Dr. Huỳnh Quyết Thắng 1 Acknowledgements First of all, I would like to express my sincere gratitude to my first supervisor Assoc. Prof. Dr. Huynh Quyet Thang for his invaluable guidance and support throughout my research. Professor Thang has supported me all the way, all the time. It is his patience that keeps me always committed to doing this research and reaching the end of PhD student period. I am also very grateful to my second supervisor Dr. Vu Thi Huong Giang whose bright hints and expertise has been always helpful to me. My special thanks go to Ms. Vo Thi Huong, Ms. Bui Thi Quynh Nga, Mr. Tran Trung Hieu, Mr. Tran The Anh, Mr. Tran Bao Ngoc and Mr. Cao Manh Quyen, who were master and bachelor students at School of ICT, Hanoi University of Science and Technology and helped me with building the tools as well as testing our models. I am also indebted to Dr. Nguyen Thanh Nam (former CEO of FPT and former President of FSOFT), Mr. Luu Quoc Tuan (Tinh Van Outsourcing Jsc.), Mr. Ngo Quang Vinh (Evizi), Mr. Nguyen Huy Binh (FIS) who provide helpful real software project data and valuable expertise judgments on the data. Finally, my greatest appreciation is to my family, especially to my wife Tran Thi Bich Ngoc and to my son Nguyen Minh Huy. Without their love, patience and sacrifice, this achievement would never be possible. 2 Summary Software project management is an art and science of planning and leading software projects. In software industry, project managers mostly rely on their experience and skills to manage their projects and lack of scientific tools to support them. Risk management is a crucial part of software project management that helps prevent software disasters. In this research, risks are defined as uncertain events or conditions that, if they occur, they would have a bad impact on one or more software project outcomes (cost, time, quality). Identifying and dealing with risks or uncertainty in early phases of software development life cycle would lessen longterm cost and enhance the chance of the project success. The most important part of risk management is risk analysis which assesses the risks and their impact to the outputs of the software project. To overcome subjective assessment based on development team’s experience, the team needs a quantitative risk analysis method. Software project scheduling is one part of software project planning. Since in practice, most software projects are over-budget and behind schedule, software project scheduling needs to be taken into careful consideration. We come up with the following questions:  How to schedule software projects better?  How to better manage risks in software projects?  How to quantitatively analyse risks? Some researchers say that Bayesian Networks can be used to quantify uncertain factors in (general) project scheduling and improve project risk assessment and analysis. Our research is aimed at taking those advantages of Bayesian Networks into software project scheduling by addressing common software project features. The research provides answers to the above questions with probabilistic approaches and tools to assess the impacts of risk factors on software project scheduling; proposing list of common risk factors and Bayesian Network model of these risk factors; and proposing advanced scheduling methods based on incorporating Bayesian Networks into popular scheduling techniques such as CPM, PERT or agile iteration scheduling etc. Bayesian Networks help quantify the factors, and hence help better manage them as well as enhancing the predictability of things happen in the project. 3 This research first takes a literature review on (general) project planning issues, project scheduling techniques, project scheduling tools, uncertainty and risk characteristics in software projects, risk management processes, project risk analysis in order to apply state-of-the-art techniques into software projects (Chapter 1). After that, Bayesian Networks are applied in building and experimenting risk factors in software project scheduling. BRI (Bayes Risk-Impact) algorithm is proposed to assess risk factors’ impact on software scheduling (Section 2.1). The first set of risk factors with 5 risk factors are examined using a probabilistic ownbuilt tool CKDY to analyse risks in software project scheduling (Section 2.2). The research proposes an advanced algorithm for agile iteration scheduling using Bayesian Networks. The advantages of this method are providing a schedule and the probability of finishing agile iteration on time (Section 3.1). In addition, the author goes further with a more refined list of 19 risk factors in software scheduling and uses them in software scheduling methods. The research also incorporates Bayesian Network with CPM and PERT scheduling techniques in traditional software projects together with the Bayesian Networks of common risk factors (Section 3.2 and Section 3.3). The list of 19 risk factors in agile software development is also examined in agile iteration scheduling (Section 3.4). The experimental results show that our models are reliable and our approaches have practical implications, i.e. we can take advantage of Bayesian Networks in modelling and quantifying risks/uncertainty in software projects. 4 How to read this report? The author highly recommends that you read this report from beginning to the end. However, if at any point you want to look at specific important pieces of information, the following guide could be helpful:  To get the motivation, the overview of related work, the objectives, the scope, the hypothesis and methodology of this research, please go to the Introduction section.  To get an overview of software project scheduling and risk management in software project scheduling, please go to Sections 1.1, 1.2 and 1.3.  To get an overview of Bayesian Networks, please go to Section 1.4.  To get details on main contributions and key findings of the research, please read Chapter 2 and Chapter 3.  To get information on common risk factors in software project scheduling, you can have a look at Section 2.3.  The Chapter 2 is about building tools and doing experiments on applying Bayesian Networks into risk management in software project planning (Section 2.1) and some key risk factors (Section 2.2).  The Chapter 3 is about incorporating Bayesian Networks and common risk factors into software project scheduling techniques such as CPM (Section 3.2), PERT (Section 3.3), Agile software development scheduling (Section 3.4).  To get to know the conclusions, the limitations as well as the further research of the study in this PhD thesis, please read the Conclusion section. 5 Content Acknowledgements ............................................................................................... 2 Summary………….. ................................................................................................ 3 How to read this report? ...................................................................................... 5 List of symbols and abbreviations ................................................................. 10 List of tables.......................................................................................................... 12 List of figures ........................................................................................................ 13 Introduction ........................................................................................................... 15 Motivation.................................................................................................................................... 15 Related work .............................................................................................................................. 18 Research scope ......................................................................................................................... 20 Research objectives .................................................................................................................. 21 Scientific and realistic meaning ............................................................................................... 21 Research hypothesis and methodology ................................................................................. 21 Expected results ........................................................................................................................ 22 Structure of the thesis ............................................................................................................... 22 Chapter 1. Overview of software project scheduling and risk management.......................................................................................................... 24 1.1. Software project management and software project scheduling................................ 24 1.1.1. Software project management ................................................................................. 24 1.1.2. Software project scheduling ...................................................................................... 26 1.2. Software project scheduling methods and techniques ................................................ 27 1.2.1. Overview ...................................................................................................................... 27 1.2.2. Traditional scheduling methods and techniques ................................................... 27 1.2.3. Agile software project scheduling ............................................................................ 32 1.3. Risk management in software project scheduling ........................................................ 34 6 1.3.1. Overview of project risk management ..................................................................... 34 1.3.2. Project risk analysis ................................................................................................... 36 1.3.3. Unknown risks ............................................................................................................. 37 1.3.4. Risk aspects in software project scheduling .......................................................... 37 1.4. Bayesian Networks ............................................................................................................ 38 1.4.1. Bayesian approach vs classical approach.............................................................. 38 1.4.2. Probabilistic approach using Bayesian Networks.................................................. 39 1.4.3. Bayesian Inference..................................................................................................... 41 1.4.4. Bayesian Networks and project risk management ................................................ 42 1.5. Chapter remarks ................................................................................................................ 44 Chapter 2. Common risk factors and experiments on Bayesian Networks and software project scheduling.................................................. 46 2.1. Application of Bayesian Networks into schedule risk management in software project .......................................................................................................................................... 46 2.1.1. Common risk factors in software project management ........................................ 47 2.1.2. Bayesian Networks of risk factors ............................................................................ 48 2.1.3. Risk impact calculation .............................................................................................. 54 2.1.4. Bayesian Risk Impact algorithm ............................................................................... 57 2.1.5. Tool and experiments ................................................................................................ 58 2.1.6. Conclusion and contribution ..................................................................................... 63 2.2. Experiments on common risk factors ............................................................................. 64 2.2.1. Discovering the top ranked risk factors ................................................................... 64 2.2.2. Tool CKDY ................................................................................................................... 68 2.2.3. Experiments and analysis ......................................................................................... 70 2.2.4. Conclusion and contribution ..................................................................................... 74 2.3. Proposed common risk factors in software project scheduling................................... 75 2.3.1. The 19 common risk factors in traditional software project .................................. 75 2.3.2. The 19 common risk factors in agile software project .......................................... 77 7 2.3.3. Conclusion and contribution ..................................................................................... 79 2.4. Chapter remarks ................................................................................................................ 79 Chapter 3. Incorporation of Bayesian Networks into software project scheduling techniques ....................................................................................... 81 3.1. Applying Bayesian Networks into specific software project development ................ 81 3.1.1. Introduction .................................................................................................................. 81 3.1.2. Optimized Agile iteration scheduling ....................................................................... 82 3.1.3. Optimization model for Agile software iteration ..................................................... 83 3.1.4. Tool and experimental results .................................................................................. 88 3.1.5. Conclusion and contribution ..................................................................................... 92 3.2. Incorporation of Bayesian Networks into CPM.............................................................. 92 3.2.1. The RBCPM Model .................................................................................................... 93 3.2.2. The RBCPM Method .................................................................................................. 96 3.2.3. Tool and experimental results .................................................................................. 97 3.2.4. Conclusion and contribution ................................................................................... 101 3.3. Incorporation of Bayesian Networks into PERT .......................................................... 102 3.3.1. Proposed model........................................................................................................ 102 3.3.2. Tool development and data collection................................................................... 106 3.3.3. Experimental results and analysis ......................................................................... 110 3.3.4. Conclusion and contribution ................................................................................... 112 3.4. Incorporation of Bayesian Networks into Agile software development scheduling 112 3.4.1. Incorporation of risk model ...................................................................................... 113 3.4.2. Tool and experimental results ................................................................................ 113 3.4.3. Conclusion and contribution ................................................................................... 115 3.5. Chapter remarks .............................................................................................................. 116 Conclusion .......................................................................................................... 117 What has been done ............................................................................................................... 117 8 Main contributions ................................................................................................................... 117 Limitations................................................................................................................................. 117 Further research ...................................................................................................................... 118 List of scientific publications ......................................................................... 119 References ........................................................................................................... 120 Index……… .......................................................................................................... 128 Appendix. Sub Bayesian Networks of the 24 risk factors ...................... 129 9 List of symbols and abbreviations No. Abbreviation Description 1 AF Assigned First 2 AISP Agile Iteration Scheduling Problem 3 BAIS Bayesian Agile Iteration Scheduling 4 BN Bayesian Network 5 BRI Bayes Risk-Impact 6 CMM Capability Maturity Model 7 CMMi Capability Maturity Model Integration 8 CPM Critical Path Method 9 DAG Directed Acyclic Graphs 10 EVM Earned Value Management 11 FDD Feature-Driven Development 12 IDE Integrated Developer Environment 13 IGR Internally Generated Risk 14 LPT Longest Processing Time 15 MCS Monte Carlo Simulation 16 NPT Node Probability Table 17 PERT Program Evaluation and Review Technique 18 PI Probability-Impact 19 PMBOK Project Management Body of Knowledge 20 PMI Project Management Institute 21 PMP Project Management Professional 10 22 PRAM Project Risk Analysis and Management 23 PRM Project Risk Management 24 PRMP Project Risk Management Processes 25 PSPLIB Project Scheduling Problem Library 26 RAMP Risk Analysis and Management for Projects 27 RBCPM Risk Bayesian Critical Path Method 28 RBPERT Risk Bayesian PERT 29 RESCON RESource CONstrained 30 RMP Risk Management Processes 31 RUP Rational Unified Process 32 SPT Shortest Processing Time 33 XP Extreme Programming 11 List of tables Table 1.1 Basic mathematical notations used for CPM calculation ......................... 28 Table 1.2. The differences between waterfall and agile projects ............................. 33 Table 1.3. The differences between Bayesian and Frequentist approaches ............. 38 Table 2.1. Hui and Liu’s common risk factors [9] ................................................... 47 Table 2.2. Risk factors in the phases ........................................................................ 61 Table 2.3. Risk factors, consequences and impact ................................................... 65 Table 2.4. Examples of risk factors and probabilities .............................................. 67 Table 2.5. Probability of risk factors in the whole project with data set 1 ............... 72 Table 2.6. Probability of risk factors in the whole project with data set 2 ............... 73 Table 2.7. Probability of the experimental risk factors to compare with MSBNx ... 74 Table 2.8. CKDY compared with MSBNx .............................................................. 74 Table 2.9. List of 19 common risk factors for software project scheduling ............ 76 Table 2.10. List of 5 risk factors for software project scheduling in Section 2.2 .... 77 Table 2.11. List of 19 risk factors in iteration scheduling ........................................ 78 Table 3.1. The first data sample ............................................................................... 89 Table 3.2. The probability table for tasks and resources .......................................... 90 Table 3.3. Risk factors analysis ................................................................................ 94 Table 3.4. Data sample 1 .......................................................................................... 98 Table 3.5. Data sample 2 .......................................................................................... 99 Table 3.6. Task attributes of the first data sample.................................................. 108 Table 3.7. Task attributes of the second data sample ............................................. 108 Table 3.8. Task attributes of the third data sample ................................................ 109 Table 3.9. The result for the first data sample ........................................................ 114 12 List of figures Figure 1.1. Activities of project management according to PMBOK Guide. .......... 26 Figure 1.2. CPM parameters in an activity ............................................................... 29 Figure 1.3. An example of BN which represents a simple case ............................... 41 Figure 2.1. A sub BN for the risk factor “Staff experience shortage” ..................... 49 Figure 2.2. A sub BN for the risk factor “Low productivity” .................................. 49 Figure 2.3. A sub BN for the risk factor “Lack of client support” ........................... 50 Figure 2.4. A sub BN for the risk factor “Inaccurate cost estimating” .................... 50 Figure 2.5. A sub BN for the risk factor “Incapable project management” ............. 51 Figure 2.6. A sub BN for the risk factor “Lack of senior management commitment” .................................................................................................................................. 52 Figure 2.7. A sub BN for the risk factor “Inadequate configuration control” .......... 52 Figure 2.8. A sub BN for the risk factor “Inaccurate metrics” ................................. 53 Figure 2.9. A sub BN for risk factor “Excessive reliance on a single process improvement” ........................................................................................................... 53 Figure 2.10. The overall BN for software risk factors ............................................. 54 Figure 2.11. A simple example of Bayesian inference ............................................. 55 Figure 2.12. The three nodes of a simple-chain BN ................................................. 57 Figure 2.13. The graphical interface of the tool ....................................................... 59 Figure 2.14. Result of experiment 1 ......................................................................... 60 Figure 2.15. Results of the three experiments .......................................................... 62 Figure 2.16. Experimental results for Software Design phase ................................. 63 Figure 2.17. Sub BN 1 .............................................................................................. 66 Figure 2.18. Sub BN 2 .............................................................................................. 66 Figure 2.19. The overall BN model .......................................................................... 67 Figure 2.20. Experiment with j30 with the early start schedule ............................... 71 Figure 2.21. Activity joint in the file j301_1.rcp ...................................................... 71 Figure 2.22. Diagram of probabilities of finishing phase by phase ........................ 72 Figure 3.1. Home GUI of tool BAIS ........................................................................ 88 Figure 3.2. Gantt chart for SPT strategy................................................................... 90 Figure 3.3. A part of a BN for 19 risk factors .......................................................... 93 Figure 3.4. Task’s parameters and connection to other tasks. .................................. 96 Figure 3.5. A screenshot of RBCPM ........................................................................ 97 Figure 3.6. A result for experiment with data sample 1 ......................................... 100 Figure 3.7. A result for experiment with data sample 2 ......................................... 101 Figure 3.8. Bayesian Network for each activity ..................................................... 103 Figure 3.9. Risk integration network model into PERT scheduling ...................... 104 Figure 3.10. Process in improved RBPERT Model ............................................... 105 Figure 3.11. The input screen of the RBPERT tool ............................................... 106 13 Figure 3.12. The input file type of the RBPERT tool ............................................ 107 Figure 3.13. A result for the network provided by the RBPERT tool for the first data sample ..................................................................................................................... 109 Figure 3.14. A result for RBPERT network provided by the tool for the first data sample ..................................................................................................................... 111 Figure 3.15. A result for experiment with the third data sample (distribution of Total Duration of activity J) ............................................................................................. 111 Figure 3.16. A screenshot of tool BAIS ................................................................. 113 Figure 3.17. The result of the second experiment .................................................. 115 14 Introduction Motivation Projects in general always involve risks and project managers’ regular worries are concerns about risks. In October 2008, the Hanoi Urban Railway Project Line 2A (Cat Linh-Ha Dong) was approved to be invested with the total budget of more than 8.700 billion VND (552 million USD). Until now, the project’s investment had almost doubled to 868 million USD. It was scheduled to be put into service in 2013 but until now the project remains incomplete1. Software projects also have schedule risks, and as a consequence, budget or cost risks. For example, the project on the Vietnamese National Population Database2 was approved to be invested in 2015 and was planned to be finished in two years (2016 and 2017). However, the system can only be put into operations in February 2021. Another similar example is the project on Vietnamese National Public Service Portal3 which was planned to come public in September 2016 but was only opened since December 2019. As a matter of fact, the majority of software projects the author has experienced in Vietnam are behind schedule (some of the projects will be examined in Chapter 2 and Chapter 3). Even in developed countries, software projects are facing ongoing problems. For example, the project Universal Credit - the welfare payment system owned by the Central Government of the United Kingdom - started in 2013. The project schedule has slipped, with the final delivery date now expected to be 2021, although the system is gradually being introduced. In 2013, only one of four planned pilot sites went live on the originally scheduled date, and the pilot was restricted to extremely simple cases4. Many software projects have suffered from significant budget overruns together with a series of delays, which cause either temporary issues or permanent failures. For example, The Queensland Health Payroll System was launched in 2013 in what could be considered one of the most spectacularly over budget projects in Australian history, coming in at over 200 times the original budget. Besides, in spite VnExpress (2019), “Ministry of Transport admits the mistakes on the Cat Linh-Ha Dong urban railway project”, available online (in Vietnamese) at: https://vnexpress.net/bo-giao-thong-van-tai-thua-nhansai-sot-trong-du-an-cat-linh-ha-dong-3988254.html 2 Vietnamese Prime Minister (2015), “Decision regarding the approval of investment policy for the project on the National population database”, Government of Vietnam, 2083/QĐ-TTg (26 November 2015) 3 Vietnamese Prime Minister (2015), “Resolutions on e-Government”, Government of Vietnam, 36a/NQ-CP (14 October 2015) 4 Wikipedia.org, “List of failed and over-budget custom software projects”, Retrieved 20 September 2019, available online at: https://en.wikipedia.org/wiki/List_of_failed_and_overbudget_custom_software_projects 1 15 of promises that the new system would be fully automated, the new system required a considerable amount of manual operation [1]. Another example for software project permanent failure case is the project e-Borders for an advanced passenger information programme which aimed to collect and store information on passengers and crew entering and leaving the United Kingdom. Started in 2007, the project had a series of delays and had to be cancelled in 2014 [2]. Some researches pointed out that most of the software projects (83.8%) are over budget or behind schedule and 52.7% of software development projects deliver software with fewer features than originally specified [3, 4]. Statistics also show that 31.1% of development projects end up being cancelled or terminated prematurely. Among those completed projects, only 61% of them satisfy originally specified features and functions [5]. In the software industry, one of the greatest challenges that development teams constantly face with is to keep the projects under control in terms of budget and schedule (development time frame). The activities of a software project are influenced by internal and external factors (from that project organization) that make it uncertain whether the project will achieve its objectives. The effect that this uncertainty has on the project’s goals is called risk [6]. In the other words, risk is an event or an uncertain condition that, if it occurs, will have a positive or negative effect on at least one of the project objectives [7]. In this thesis, risks are defined as uncertain events or conditions that, if they occur, they would have a bad impact on one or more software project outcomes (cost, time, quality). The above situation raises an important question: how projects’ risks are managed better in order to get rid of the temporary issues as well as preventing from failure? The purpose of project management is to lead the project to success. A successful software project certainly relies on many factors (e.g. following appropriate processes and tasks, managing risks properly etc.). Since risks are inevitable in projects, risk management has become an important part of project management. Although many researchers, experts and writers have proposed variety of processes and techniques, project risk management (PRM) is still rapidly evolving and handling risks in general projects as well as software projects remains a challenge. Concerning PRM, an important component is risk analysis which also known or considered the same as risk quantification. Risk analysis attempts to measure risks and their impacts on different project outcomes (i.e., time, cost, quality). Many software projects fail since project managers mostly plan based on their experience and there is a lack of scientific methods to support them. To overcome subjective 16 assessment based on development team’s experience, the team needs a quantitative risk analysis method. Although various researches have proposed and examined a range of processes and techniques and software project risk management is continuously evolving, handling uncertainty in more and more complex real-world projects remains a challenge. Aside from that, project scheduling (a part of project planning – an early phase of software development life cycle) is concerned with the techniques that can be employed to manage the activities that need to be undertaken during the development of a project. There are various techniques for project scheduling, from simple and easily understandable ones such as Task List, Gantt Chart, Schedule Network Analysis, to more complicated ones like Critical Path Method (CPM), Program Evaluation and Review Technique (PERT), Monte-Carlo Simulation (MCS) or Fuzzy Logic etc. [6, 8, 9, 10]. Traditional project scheduling under risk/uncertainty has attracted more research and attention in the project management community. In some of the project management literature in 1990s, “risk analysis” was equivalent to “the analysis of risk on project plan” [11]. This thesis focuses on modelling risks in software project time management (of course, it is indirectly related to other project outcomes which are cost and quality). In other words, this thesis concentrates on quantitative risk analysis in software project scheduling. The earliest studies incorporating uncertainty/risk in project scheduling were in the late 1950’s by Malcolm et al. [12] and Miller [13]. Since then, a variety of techniques have been introduced, several tools have been developed, and many of them are widely used throughout different industries. However, they often fail to capture uncertainty properly and/or produce inaccurate, inconsistent and unreliable results, especially when applied to software projects which have specifically different attributes to other traditional projects. Project uncertainty has several aspects of which not all can be categorized and treated as risks. Several authors such as Ward and Chapman [14] argued that project risk management should be focusing on managing uncertainty and its various sources rather than emphasizing a set of possible events that might have bad impacts on project performance (i.e., should be aware more about uncertain aspects rather than fixed set of defined risks). However, since this thesis is about software project, risks are considered and treated the same as uncertainty. Most of quantitative techniques and methods in the current practice of project risk management are based on the “Probability Impact” concept, which have certain shortcomings in terms of risk analysis in project scheduling. More sophisticated 17 methods and techniques are needed to address as well as managing important sources of uncertainty/ risk. In software industry, project scheduling also has to deal with the fact that resources such as human, time, technology and money are not always predetermined [15]. There are always risks in software project scheduling as well. In most of the projects, the activity (from now on is considered the same as the “task” in software projects) times are not known for certain. Therefore, they may be assumed as random variables. Furthermore, Bayesian Networks (BNs) have attracted a lot of attention in different fields (construction, R&D etc.) as a powerful approach for decision support under uncertainty. A BN is a graphical and mathematical model which offers a powerful, general and flexible approach for modelling risk and uncertainty. Its capability of modelling causality and also conditional dependency between variables make it perfectly suitable for capturing uncertainty in projects. Yet, BNs are rarely applied in project risk management in general as well as in software project management and software project scheduling. The author of this thesis strongly believes that if we can identify and control risks at early stages of software development project, we can significantly increase the chance of success of the project. Since it is not easy (or impossible) to control all of the problems or factors, this thesis only focus on time factors which related to software development schedule. Therefore, this thesis aims at introducing an advanced approach as well as finding a better model for incorporating and managing uncertainty/risks in software project scheduling. The idea is to use BNs to perform the well-known scheduling techniques such as CPM, PERT etc. as well as modelling risk factors in software project scheduling. The proposed approach enriches the benefits of scheduling techniques by incorporating uncertainty/risk factors and adding the strong analytical power of BNs. Related work There have been various researches on applying BNs in to general projects. Khodakarami [15] applied BNs into general project scheduling with two case studies of aircraft design and health and fitness center design and construction. Erhan et al. [16] proposed a project control framework that integrates the project uncertainty and associated risk factors into project control. Their framework is based on earned value management (EVM), which is an effective and widely used quantitative project control technique in practice. The framework uses hybrid BNs 18
- Xem thêm -

Tài liệu liên quan