Effectiveness of Software Quality Assurance in Offshore Development Enterprises in Sri Lanka M. G. Sirisena The Dissertation was submitted to the Department of Computer Science & Engineering of the University of Moratuwa in partial fulfillment of the requirement for the Degree of Master of Business Administration. Department of Computer Science & Engineering University of Moratuwa December, 2007 ii DECLARATION “I certify that this dissertation does not incorporate without acknowledgement any material previously submitted for a degree or diploma in any university to the best of my knowledge and believe it does not contain any material previously published, written or orally communicated by another person or myself except where due reference is made in the text. I also give consent for my dissertation, if accepted, to be made available for photocopying and interlibrary loans and for the title and summary to be available to outside organizations.” Malinda Gayan Sirisena Date The above particulars are correct to the best of my knowledge. Vishaka Nayayakkara Date Supervisor Indaka Raigama Date Supervisor iii ABSTRACT The aim of the research described in this thesis is to evaluate the effectiveness of software quality assurance approaches of Sri Lankan offshore software development organizations, and to propose a framework which could be used across all offshore software development organizations. An empirical study was conducted using derived framework from popular software quality evaluation models. The research instrument employed was a questionnaire survey among thirty seven Sri Lankan registered offshore software development organizations. The findings demonstrate a positive view of Effectiveness of Software Quality Assurance – the stronger predictors of Stability, Installability, Correctness, Testability and Changeability. The present study’s recommendations indicate a need for much emphasis on software quality assurance for the Sri Lankan offshore software development organizations. Keywords: Software Quality Assurance (SQA), Offshore Software Development, Quality Assurance Evaluation Models, Effectiveness of Quality Assurance. iv ACKNOWLEDGEMENT A journey is easier when travelling together. Interdependence is more valuable and adds value than independence. This thesis is the result of more than eight months of work whereby I have been accompanied and supported by many people. It is a pleasant aspect that I now have the opportunity to express my gratitude for all of them. First and foremost I would like to thank my two supervisors, Mr. Indaka Raigama and Mrs. Vishaka Nanayakkara. Without the overly enthusiasm and integral view on my research and their mission for providing only high quality work, has made a deep impression and motivation on me. I owe them token of gratitude for having shown me this way of research. Besides being an excellent supervisor, Indaka was as close as a relative and a good friend to me. I am really glad that I have come to get to know Indaka in my life. I would like to thank Dr. Kennedy Gunawardena for his invaluable guidance on the data analysis. Without Dr. Kennedy, I would have been faced with lot of challenges in the data analysis of my study. Dr. Kennedy’s extended support went beyond my expectations. I would like to thank my colleagues, Ashan Wettasinghe, Dhanula Kannangara and Manujaya Kuruppu for advising and assisting me throughout the research. Especially the strict and extensive comments and the many discussions and the interactions with Ashan, Dhanula and Manujaya had a direct impact on the final form and quality of this thesis. I would like to thank my Quality Assurance team at Navantis for helping me in pilot studies and in data collection time even through their own contacts. Without them the data collection would have been a nightmare to me. I would like to thank my MBA/IT batch and the staff of the Computer Science and Engineering Department in University of Moratuwa for their support in every aspect to make my research a success. Especially, not forgetting Isuru Udayanga, our course assistant for maintaining our research records, doing follow-ups and reminding us in progress reports and facilitating infrastructure arrangements in the university. Without Isuru, we would have faced lot of difficulties even in referring theses which are available in the department. I would like to thank all the organizations and their respective Quality Assurance staff who responded to my questionnaire. Without these organizations and their staff I would not have completed my study. The chain of my gratitude would be definitely incomplete if I would forget to thank the first cause of this chain, to my wife Sasheeka and my parents for their love, guidance and patience during my research period. v ABBREVIATIONS CMMI – Capability Maturity Model Integration IEEE – Institute of Electrical and Electronics Engineers ISO – International Organization for Standardization IT – Information Technology SEI – Software Engineering Institute SQA – Software Quality Assurance QA – Quality Assurance vi TABLE OF CONTENTS DECLARATION ................................................................................................................................ ii ABSTRACT ..................................................................................................................................... iii ACKNOWLEDGEMENT .................................................................................................................... iv ABBREVIATIONS ............................................................................................................................. v TABLE OF CONTENTS..................................................................................................................... vi LIST OF FIGURES ......................................................................................................................... viii LIST OF TABLES ............................................................................................................................. ix 1 INTRODUCTION .......................................................................................................................... 1 1.1 PROBLEM STUDIED ................................................................................................................ 1 1.2 BACKGROUND INFORMATION ................................................................................................. 2 1.3 RESEARCH OBJECTIVES .......................................................................................................... 3 2 LITERATURE REVIEW ................................................................................................................ 4 2.1 WHAT IS SOFTWARE QUALITY ............................................................................................... 4 2.2 SOFTWARE QUALITY MANAGEMENT PHILOSOPHIES ................................................................ 4 2.2.1 DEMING AND FOURTEEN POINTS FOR MANAGEMENT ....................................................... 5 2.2.2 JURAN AND THE IMPORTANCE OF TOP MANAGEMENT COMMITMENT TO QUALITY ............ 6 2.2.3 CROSBY AND STRIVING FOR ZERO DEFECTS .................................................................... 7 2.2.4 ISHIKAWA AND FISHBONE DIAGRAM ............................................................................... 7 2.2.5 FEIGENBAUM AND TOTAL QUALITY CONTROL ................................................................. 7 2.3 SOFTWARE QUALITY MODELS ................................................................................................ 8 2.3.1 MCCALL’S QUALITY MODEL .......................................................................................... 8 2.3.2 BOEHM’S QUALITY MODEL .......................................................................................... 10 2.3.3 ISO 9126 ..................................................................................................................... 11 2.3.4 SOME OTHER QUALITY MODELS ................................................................................... 12 3 CONCEPTUAL FRAMEWORK ..................................................................................................... 14 3.1 EXISTING WORK .................................................................................................................. 14 3.1.1 DEVELOPER ORIENTED ATTRIBUTES FROM MCCALL’S MODEL ...................................... 14 3.1.2 ADDITIONAL ATTRIBUTES FROM BOEHM’S MODEL ........................................................ 15 3.1.3 ADDITIONAL ATTRIBUTES FROM ISO 9126 .................................................................... 16 3.1.4 FINAL ATTRIBUTE LIST ................................................................................................. 16 3.1.5 RELATIONSHIPS OF VARIABLES ..................................................................................... 19 vii 3.2 HYPOTHESES FORMULATED ................................................................................................. 20 4 RESEARCH DESIGN ................................................................................................................... 22 4.1 TYPE AND NATURE OF THE STUDY ....................................................................................... 22 4.2 DATA COLLECTION METHODS .............................................................................................. 23 4.2.1 QUESTIONNAIRE DESIGN............................................................................................... 23 5 RESULTS OF DATA ANALYSIS ................................................................................................... 25 5.1 PILOT STUDY ....................................................................................................................... 25 5.2 PRELIMINARY ANALYSIS ...................................................................................................... 26 5.3 SECONDARY RESULTS ANALYSIS ......................................................................................... 31 5.3.1 ANALYSIS OF RELIABILITY OF DATA ............................................................................. 33 5.4 HYPOTHESES TESTING ......................................................................................................... 38 5.5 MODEL BUILDING ................................................................................................................ 45 6 CONCLUSION ............................................................................................................................ 48 6.1 RECOMMENDATIONS ............................................................................................................ 49 6.2 FUTURE STUDIES ................................................................................................................. 49 REFERENCES ................................................................................................................................ 52 APPENDIX 1: QUESTIONNAIRE ...................................................................................................... 54 APPENDIX 2: FREQUENCY DISTRIBUTION OF RESPONSES ............................................................. 65 viii LIST OF FIGURES FIGURE 1: MCCALL’S QUALITY MODEL ORGANIZED AROUND THREE TYPES OF QUALITY CHARACTERISTICS .................................................................................................................... 8 FIGURE 2: MCCALL’S QUALITY MODEL ............................................................................................ 9 FIGURE 3: BOEHM'S SOFTWARE QUALITY CHARACTERISTICS TREE[19]. ........................................... 10 FIGURE 4: THE ISO 9126 QUALITY MODEL [20]. ............................................................................. 11 FIGURE 5: ISO 9126 QUALITY ATTRIBUTES .................................................................................... 11 FIGURE 6: SCHEMATIC DIAGRAM FOR CONCEPTUAL FRAMEWORK ................................................... 20 FIGURE 7: THE RESEARCH DESIGN ................................................................................................. 22 FIGURE 8: ANALYSIS OF ORGANIZATIONS AGAINST NUMBER OF YEARS IN OPERATION ..................... 26 FIGURE 9: EDUCATION LEVEL OF RESPONDERS ............................................................................... 27 FIGURE 10: PROJECT COMPLETION AGAINST ESTIMATES ................................................................. 28 FIGURE 11: BASIC STATISTICS OF INDEPENDENT VARIABLES ........................................................... 32 FIGURE 12: FREQUENCY DISTRIBUTION OF SCORES OF QA EFFECTIVENESS DEPENDENT VARIABLE .. 35 FIGURE 13: FREQUENCY DISTRIBUTION OF SCORES OF CORRECTNESS INDEPENDENT VARIABLE ....... 35 FIGURE 14: FREQUENCY DISTRIBUTION OF SCORES OF CORRECTNESS INDEPENDENT VARIABLE ....... 36 FIGURE 15: FREQUENCY DISTRIBUTION OF SCORES OF CHANGEABILITY INDEPENDENT VARIABLE .... 36 FIGURE 16: FREQUENCY DISTRIBUTION OF SCORES OF STABILITY INDEPENDENT VARIABLE ............. 37 FIGURE 17: FREQUENCY DISTRIBUTION OF SCORES OF INSTALLABILITY INDEPENDENT VARIABLE .... 37 ix LIST OF TABLES TABLE 1: DEVELOPER RELATED QUALITY ATTRIBUTES FROM MCCALL’S MODEL ............................ 15 TABLE 2: ADDITIONAL DEVELOPER RELATED QUALITY ATTRIBUTES FROM BOEHM’S MODEL ........... 15 TABLE 3: ADDITIONAL DEVELOPER RELATED QUALITY ATTRIBUTES FROM ISO 9126 MODEL ........... 16 TABLE 4: RELATIONSHIP OF THE QUESTIONNAIRE TO CONCEPTUAL FRAMEWORK ............................ 24 TABLE 5: RATES GIVEN FOR QUESTIONNAIRE RESPONSES................................................................ 25 TABLE 6: STATISTICS OF QUESTIONNAIRE DISTRIBUTION RESPONSES RECEIVED ............................... 25 TABLE 7: MEANS AND VARIANCES OF QUESTIONS .......................................................................... 31 TABLE 8: BASIC STATISTICS OF INDEPENDENT VARIABLES AND THE DEPENDENT VARIABLE ............. 32 TABLE 9: RELIABILITY STATISTICS ................................................................................................ 33 TABLE 10: ITEM-TOTAL RELIABILITY STATISTICS ........................................................................... 34 TABLE 11: CORRELATIONS BETWEEN HYPOTHESES FOR QUALITY ASSURANCE ................................. 38 TABLE 12: LINEAR REGRESSION ANALYSIS OF CORRECTNESS AGAINST EFFECTIVENESS OF QA ....... 39 TABLE 13: LINEAR REGRESSION ANALYSIS OF TESTABILITY AGAINST EFFECTIVENESS OF QA ......... 40 TABLE 14: LINEAR REGRESSION ANALYSIS OF CHANGEABILITY AGAINST EFFECTIVENESS OF QA .... 41 TABLE 15: LINEAR REGRESSION ANALYSIS OF STABILITY AGAINST EFFECTIVENESS OF QA ............. 43 TABLE 16: LINEAR REGRESSION ANALYSIS OF INSTALLABILITY AGAINST EFFECTIVENESS OF QA .... 44 TABLE 17: SUMMARY OF ANALYSIS MODEL ................................................................................... 45 TABLE 18: MULTIPLE REGRESSION MODEL ..................................................................................... 46 TABLE 19: PEARSON CORRELATION MATRIX AMONG INDEPENDENT VARIABLES .............................. 47