vii TABLE OF CONTENTS CHAPTER TITLE PAGE DECLARATION ii DEDICATION iii ACKNOWLEDGEMENT iv ABSTRACT v ABSTRAK vi TABLE OF CONTENTS vii LIST OF TABLES xi LIST OF FIGURES xiii LIST OF ABBREVIATIONS xv LIST OF APPENDICES 1 xvii INTRODUCTION 1 1.1 Organization Background 1 1.1.1 HeiTech Padu Berhad Overview 1 1.1.2 Business and Services at HeiTech Padu Berhad 1 1.1.3 Research and Product Innovation Center (R@PIC) Division 1.2 2 3 Project Background 4 1.2.1 Industrial Project Overview 4 1.2.2 Shared Banking Services (SBS) System Overview 5 SCOPES AND OBJECTIVES 7 2.1 Vision Statement 7 2.2 Project Objectives 7 2.3 Project Scopes 8 2.4 Project Plan (Gantt chart) 8 viii 2.5 3 Project Deliverables LITERATURE STUDY 3.1 8 9 Software Testing Process 9 3.1.1 Definition and Principles of Software Testing 9 3.1.2 Relationship between Testing with Verification and Validation 3.1.3 Software Testing Concepts 13 3.1.4 Software Testing Methods 22 3.1.5 Testing Techniques 23 3.1.6 Types of Testing 28 3.1.7 Level of Testing 30 3.1.8 The Challenges and Current Research 36 Software Testing Model 38 3.2.1 V- Model 38 3.2.2 W- Model 41 3.2.3 Butterfly Model 44 3.2.4 Summary 47 TESTING METHODOLOGIES 50 3.2 4 11 4.1 Introduction 50 4.2 HeiTech Software Testing Process 51 4.2.1 Testing Concepts 52 4.2.2 Main Activities 53 4.2.3 Testing Levels 58 4.2.4 Testing Types 60 4.2.5 Roles and Responsibilities 66 4.2.6 Test Documentations / Artifacts 67 4.2.7 Advantages and Disadvantages 68 RUP Test Discipline 69 4.3.1 Test Concepts 73 4.3.2 Main Activities 75 4.3.3 Roles and Responsibilities 83 4.3.4 Test Documentations / Artifacts 84 4.3 ix 4.4 4.5 5 91 Systematic Test and Evaluation Process (STEP) 93 4.4.1 Testing Concepts 94 4.4.2 Main Activities 95 4.4.3 STEP Architecture 97 4.4.4 Timing of STEP Activities 98 4.4.5 Elements of STEP 100 4.4.6 Test Documentations / Artifacts 102 4.4.7 Roles and Responsibilities 102 4.4.8 Advantages and Disadvantages 103 Summary 105 SHARED BANKING SERVICES (SBS) SYSTEM 107 5.1 Introduction 107 5.2 Core Banking Systems 107 5.3 Shared Banking Services (SBS) at R@PIC 110 5.3.1 Transaction System 112 5.3.2 Utilities 114 5.3.3 System Configuration 117 Testing Characteristics for SBS System 118 5.4.1 Functionality Testing 121 5.4.2 Performance Testing 122 5.4.3 Automation Test 124 5.4.4 Security Test 125 5.4.5 Advantages 126 SBS Testing Implementation at R@PIC 127 5.5.1 Plan Test 128 5.5.2 Design Test 129 5.5.3 Implement Test 129 5.5.4 Evaluate Test 130 5.4 5.5 6 4.3.5 Advantages and Disadvantages CUSTOMIZED SOFTWARE TESTING PROCESS 6.1 131 Issues with Software Testing Implementation at R@PIC 131 x 6.2 Developing A Customized Software Testing Process (CSTP) 132 6.2.1 Main Phases for Testing Correspond to Software Development Phases 132 6.2.2 Main Activities of Software Testing Methodologies 6.2.3 Main SBS Testing Characteristics 133 134 6.2.4 Proposed Customized Software Testing Process (CSTP) for SBS 7 CONCLUSION AND RECOMMENDATION 135 148 7.1 Recap 148 7.2 Project Outcome 149 7.3 Future Study 151 7.4 Summary 151 REFERENCES Appendices A - C 154 159 - 163 xi LIST OF TABLES TABLES NO TITLE 2.1 List of Project Deliverables and the Targeted Recipients 3.1 Definition of Software Testing 10 3.2 Differences between Verification and Validation 12 3.3 Objectives of Software Testing 16 3.4 Black Box and White Box Testing 25 3.5 Types of Code Coverage 26 3.6 Advantages and Disadvantages of Black-box Testing 27 3.7 Software Testing Techniques 29 3.8 Advantages and Disadvantages of V-Model 40 3.9 W-Model Test Activities 43 3.10 Butterfly Test Model Description 45 3.11 Summary of Software Testing Model 48 4.1 Test Tactics for Different Software Development Methodology 4.2 PAGE 8 51 HeiTech Application Development Life Cycles Objectives 52 4.3 Main Activities of HeiTech Test Process 54 4.4 Detail Descriptions of Testing Levels 58 4.5 Types of Testing and Its Descriptions 61 4.6 Testing Types Consideration Based on Levels of Testing 65 4.7 Roles and Responsibilities 66 4.8 HeiTech Test Documents 67 4.9 Advantages and Disadvantages of HeiTech Test Process 68 4.10 Objectives of RUP Iteration Phases 70 xii 4.11 Nine Disciplines of Rational Unified Process 73 4.12 Roles and Test Artifacts in RUP Test Discipline 85 4.13 Purpose of Test Artifacts 86 4.14 Advantages and Disadvantages of RUP Test Discipline 92 4.15 Major Testing Activities in STEP 97 4.16 Template for Test Documents from IEEE Std. 829-1998 102 4.17 Roles and Responsibilities in STEP 103 4.18 Advantages and Disadvantages of STEP 104 4.19 Test Methodologies Comparison based on Software Development Phases 105 5.1 Transaction System Categories 112 5.2 Utilities Functions 114 5.3 SBS System Configuration Functions 118 5.4 Challenges and Solutions for Functional Test 121 5.5 Challenges and Solutions for Automation Test 124 6.1 Details of Requirements Reviews Process 139 xiii LIST OF FIGURES FIGURE NO 1.1 TITLE PAGE Research and Product Innovation Center (R@PIC) Structure 3 1.2 Shared Banking Services (SBS) Components 5 3.1 Static Verification and Dynamic Validation 15 3.2 Five Schools of Software Testing 19 3.3 Differences of White-box and Black-box Testing 24 3.4 Level of Testing 31 3.5 Unit Testing 32 3.6 Top-Down Integration 33 3.7 Bottom-Up Integration 34 3.8 V-Model Test 39 3.9 W-Model Test 42 3.10 Morton's Butterfly Model 44 3.11 Butterfly Model Test 45 4.1 HeiTech Application Development Life Cycles 52 4.2 Testing Process Flow Diagram 53 4.3 HeiTech Test Process 53 4.4 Illustration of the Rational Unified Process (RUP) 70 4.5 RUP Test Discipline Workflow 75 4.6 Define Evaluation Mission Workflow 76 4.7 Verify Test Approach Workflow 77 4.8 Validate Build Stability Workflow 78 4.9 Test and Evaluate Workflow 79 4.10 Achieve Acceptable Mission Workflow 81 4.11 Improve Test Assets Workflow 82 xiv 4.12 Roles and Test Activities Workflows 84 4.13 Roles and Test Artifacts 84 4.14 Different Views of Testing 95 4.15 Major Phases in STEP 96 4.16 Project Testing Architecture in STEP 98 4.17 Activity Timing at Various Levels of Test 98 4.18 Details Activity Timing at Various Levels of Test 100 4.19 Elements of STEP 100 4.20 Parallel, Mutually Supportive Development 101 5.1 SBS Testing Characteristics 120 5.2 SBS Testing Implementation at R@PIC 127 6.1 Main Phases for Testing Correspond to Software Development Phases 133 6.2 Main Activities of Software Testing Methodologies 134 6.3 Main SBS Testing Characteristics 135 6.4 Software Testing Methodologies Comparison 136 6.5 The Customized Software Testing Process (CSTP) 137 6.6 Requirements Reviews Process 139 xv LIST OF ABBREVIATIONS ADVISE - Application Development Information System ANSI - American National Standards Institute BRS - Business Requirement Specification CA - Current Account CASE - Centre for Advanced Software Engineering CCA - Corporate Current Account CSTP - Customized Software Testing Process DSS - Device Service Server e-GSS - Electronic Government Solution Suite FTT - Foreign Telegraphic Transfer FWTT - Foreign Worker Telegraphic Transfer HeiTech - HeiTech Padu Berhad HESS - HeiTech Enterprise Solution Suite HTP - HeiTech Test Process ICT - Information and Communication Technology IEEE - Institute of Electrical and Electronic Engineers PMB - Pos Malaysia Berhad PSV - Personal Saving Account QA - Quality Assurance R@PIC - Research and Product Innovation Center RFID - Radio Frequency Identification RMC - IBM Rational Method Composer RTSE - Real Time Software Engineering RUP - Rational Unified Process SA - Saving Account SBS - Shared Banking Services SDD - System Design Description xvi SDLC - Software Development Life Cycle SEPG - Engineering Process Group SOA - Service Oriented Architecture SOAP - Simple Object Access Protocol SOW - Scope of Work SRS - System Requirement Specification STEP - Systematic Test and Evaluation Process UAT - User Acceptance Testing UFS - User Functional Specifications UML - Unified Modeling Language xvii LIST OF APPENDICES APPENDIX TITLE PAGE A Project Plan – Gantt Chart 159 B Progress Report 162 C Proposed Software Testing Process For SBS 163