An-Najah National University Faculty of Graduate Studies
Software Development Process Improvement for Small Palestinian Software Development Companies
By Asem Bassam Mahmoud Isawi
Supervisor Dr.Baker Abdulhaq
This Thesis is submitted in Partial Fulfillment of the Requirements for the Degree of Master of Engineering Management, at Faculty of Graduate Studies, An-Najah National University, Nablus, Palestine.
2011
iii
Acknowledgements
Initially, I would like to thank Allah for blessing me with the
opportunity to contribute to the research community through this
research thesis.
I would like to thank my university supervisor Dr.Baker
Abdulhaq for giving me strong support and guidance during the thesis.
I would also like to thank Dr.Bashar Sadder and Dr. Hussam Arman
for inspiration and tips. Thanks also to the reviewer of this master-
thesis. Special thanks for Palestinian Information Technology
Association for their help.
Thanks to all of the surveys respondents for taking time out from
their busy schedules and answering the Surveys questions. Without
their help, I would not have been able to provide validated results for
this thesis.
Also big thanks to my family that has been very understanding
and supportive during this thesis.
Finally, I would like to thank everybody who was important to the
successful realization of thesis, as well as expressing my apology that I
could not mention personally one by one.
Asem B. Isawi
iv
:
Software Development Process Improvement for Small
Palestinian Software Development Companies
.
Declaration
The work provided in this thesis, unless otherwise referenced, is
there searcher's own work, and has not been submitted elsewhere for any
other degree of qualification.
:
Student's name:
:
Signature:
:
Date:
v
Abbreviations
CMMI: Capability Maturity Model Integration.
ISO/IEC: International Organization for Standardization/International Electrotechnical Commission.
ISO: International Organization for Standardization.
PITA: Palestinian Information Technology Association.
SDPI: Software Development Process Improvement.
SEI: Software Engineering Institute.
Small Software Organization: A company that employs 2-10 employees and produces software products.
SPICE: Software Process Improvement and Capability Determination
SW-CMM: Software Capability Maturity Model.
vi
Table of Contents
No. Contents Page
Acknowledgment iii
Declaration iv
Abbreviations v
Table of Contents vi
List of Tables x
List of Figures xi
List of Appendixes xii
Abstract xiii
Chapter 1: Introduction 1 1.1 Overview 1 1.2 Related Work 2 1.3 Research Objectives 3 1.4 Research Design and Methodology 3 1.5 Research Questions 3 1.6 Research Importance 4 1.7 Thesis Outline 5
Chapter 2: Overview about Software Process Improvement (SPI) 7
2.1 Introduction 7 2.2 Software Process and Software Process Improvement 7 2.2.1 Software Process 7 2.2.2 Software Process Improvement 8 2.3 Small Software Development Firms 9 2.4 SPI Problems in Small Software Firms 9 2.5 Summary of the chapter 10
Chapter 3: Literature Review 11 3.1 Introduction 11
3.1.1 Centers and Initiatives focusing on small and very small software firms
11
3.1.2 Centre for Software Process Technologies | United King Dom
12
3.1.3 Toward Software Excellence | British 12 3.1.4 European Software Institute IT Mark | ESI 13 3.1.5 SataSDPIN | Finland 14 3.1.6 NORMAPME |Europe 14 3.1.7 Software Quality Institute | Australia 15 3.1.8 The Mexican standard | Mexico 15
3.1.9 The Association of Thai Software Industry (ATSI)| Thailand
16
vii
No. Contents Page
3.1.10 Centre dExcellence en Technologies de lInformation et de la Communication (CETIC) | Belgium
17
3.2 Models for Small Firms 17 3.2.1 QuickLocus 17
3.2.2 ADEPT: A Unified Assessment Method for Small Software Companies
18
3.2.3 MPS.BR Model 19 3.2.4 CMM Fast-Track 20 3.2.5 SPISO Model 22 3.2.6 Moprosoft 24 3.2.7 Agile SDPI 24 3.2.8 COMPETISOFT 24 3.2.9 Software Process Matrix (SPM) Model 26
3.2.10 A Software Development Model for Small Brazilian Companies
26
3.2.11 MESOPYME 27 3.2.12 Capability Maturity Model for Software SW-CMM 28 3.2.13 The Capability Maturity Model Integration (CMMI) 28 3.3 Models Comparison 31
3.4 The effect of Culture on Software Process Improvement (SPI)
35
3.5 Discussion and Conclusion 36 3.6 Summary of the Chapter 37
Chapter 4: Research Methodology and Data Gathering
39
4.1 Introduction 39 4.2 Research Methodology 39 4.3 Survey Questionnaire Design 40 4.4 Testing the Questionnaire 42 4.5 Survey Population and Sampling Criteria 42 4. 6 Data Collection Approach 44 4.7 Summary of the Chapter 45
Chapter 5: Survey Results and Analysis 46 5.1 Introduction 46 5.2 A general View about Survey Results 46 5.3 Presentation of Research Results 47 5.3.1 Participants Profiles in small software firms 47 5.3.2 Current Situation of Software Development Process 50
5.3.3 Small Software Firms View on the Importance of Key Process Areas
55
viii
No. Contents Page
5.4 Data Analysis 60 5.4.1 Analysis of the Process Areas 61
5.4.2 Analysis of Current Situation of Software Development Process
62
5.4.3 Analysis of Small Software Firms View on the importance of Key Process Areas to their firms
63
5.5 Results of the survey and the need for SPI model 66 5.6 Comparing the Results with Theory and Literature 66 5.6.1 Comparing the Results with Jordanian Small Firms 66 5.6.2 The Most Important Process Areas 67
5.6.3 Comparing the Results with SPISO Model Research Results
68
5.7 Summary of the Chapter 69
Chapter 6: The Model 70 6.1 Introduction 70 6.2 PAL-SPI Model Description, Scope and Foundation 70 6.3 PAL-SPI Model Sections Description 72 6.3.1 Software Processes Section (SPS) 72 6.3.2 Process Improvement Processes Section (PIPS) 73 6.4 PAL-SPI Model Scales 74 6.4.1 The Point Scale 74 6.4.2 The Maturity Scale 76 6.5 How PAL-SPI Model Was Designed 77 6.5.1 How the Process Areas were selected and Grouped 77 6.5.2 How the Point Scale was created 79 6.5.3 How Activities were developed 79 6.6 Summary of the Chapter 80
Chapter 7: Conclusion and Recommendations 81 7.1 Introduction 81 7.2 Discussion and Conclusion 81
7.3 The current Situation of Small Software Development Firms in Palestine
83
7.4 Research Objectives 85 7.5 Research Questions 86 7.6 Contribution to Knowledge and Practice 87 7.7 Future Work and Recommendations 88 7.7.1 Implementation of PAL-SPI model 88
7.7.2 Checking Cultural Impact on models used in small firms
88
7.7.3 Building other models using other methodologies 89
ix
No. Contents Page
7.7.4 CMMI and Six Sigma 89
References 90
Appendix 96
x
List of Tables
No. Table Page Table (1-1) Outline Of The Thesis 6
Table (3-1) Capability Maturity Model Integration (Cmmi) Model Framework (Cmf)
29
Table (3-2) Comparing Spi Models For Smes 33
Table (3-3) Frequency Of Cmmi Process Areas In The Compared Models Sorted By The Most Frequent
34
Table (5-1) Summary Of The Survey Results 51
Table (5-2) The Five Categories Belonging To Process Improvement
56
Table (5-3) Summary Of The Results By Category. Results Sorted By Average Implemented Categories
60
Table (5-4) The Results Of The Respondents Answers, Sorted By Avg. Importance
61
Table (5-5) Summary Of The Results By Process Area Sorted By Average Value For Each Process Area
62
Table (5-6) The Results Of The Importance Of Process For Small Firms Sorted By Average Importance
64
Table (5-7) Top 5 Important Process Areas And The Models Available In.
68
Table (6-1) The Categories, Goals And The Number Of Activities Belonging To Section 1
73
Table (6-2) The Categories, Goals And The Number Of Activities Belonging To Section 2
73
Table (6-3) The 17 Categories Divided Into 4 Groups 76 Table (6-4) The Points Needed To Reach Each Level 76 Table (6-5) The 5 Groups With Categories 78
Table (6-6) The 12 Process Areas After Applying Pal-Spi Model Criteria
79
Table (7-1) The Current Situation Of Small Palestinian Software Development Firms
84
Table (7-2) The Process Areas That Need To Be Addressed And Implemented By Small Software Firms In Palestine.
85
xi
List of Figures
No. Figure Page
Figure (5-1) The Number Of Employees Inside Small Palestinian Software Development Firms.
48
Figure (5-2) The Number Of Employees Inside Small Palestinian Software Development Firms.
49
Figure (5-3) The Experience Of Employees Inside Small Palestinian Software Development Firms.
49
Figure (5-4) Employees Level Of Education Inside Small Palestinian Software Development Firms.
50
Figure (6-1) Architecture Of Pal-Spi Model 72
Figure (6-2) Pal-Spi Model; Sections, Groups And Process Areas
74
xii