Requirement Engineering in Component Selection Thesis submitted in partial fulfillment of the requirements for the award of degree of Master of Engineering In Software Engineering By: Rashmi Gupta (800831009) Under the supervision of: Mrs. Shivani Goel Assistant Professor COMPUTER SCIENCE AND ENGINEERING DEPARTMENT THAPAR UNIVERSITY PATIALA – 147004 June 2010 i ii Abstract In the COTS selection process, it is unavoidable to encounter mismatches between system requirements and COTS products’ capabilities. These mismatches are the result of the lacking COTS attributes or their overmatch with the system requirements. Many researchers have proposed various techniques to search and select COTS components. But only few have worked upon the handling of mismatches. These techniques have their own advantages and disadvantages. This thesis work proposes a COTS selection approach that aims at addressing COTS mismatches among COTS attributes and system requirements during the requirement engineering phase. In this process COTS evaluation, a core activity of COTS selection, is performed using the Goal Question Metrics (GQM) based Feature Analysis technique. GQM based Feature Analysis is an evaluation strategy used for measuring the compliance of the COTS capabilities with desired features using the formulated metrics. A case-study is used to illustrate this process and to discuss its feasibility. Keywords: Goal Question Metric paradigm, Feature Analysis, COTS evaluation & selection. iii Abbreviations AHP Analytic Hierarchy Process BIN Binary CARE COTS Aware Requirement Engineering CBD COTS Based Development COTS Commercial Off The Shelf CRE COTS Requirement Engineering DSS Decision Support System GQM Goal Question Metric IDS-SA Interactive Decision Support-Sensitivity Analysis MCDM Multi Criteria Decision Making MiHOS Mismatch Handling aware cOts Selection MV Mismatch Value NFR Non-Functional Requirement ORDN Ordinal OTSO Off The Shelf Option PORE Procurement Oriented Requirement Engineering Satf Satisfaction Function SUD System Under Development WSM Weighted Score Method WYSIWYG What You See Is What You Get iv Table of Contents Certificate……………………………………………………………………….. i Acknowledgement ……………………………………………............................. ii Abstract…………………………………………………………………………. iii Abbreviations…………………………………………………………………… iv Table of Contents……………………………………………………………….. v-vii List of Figures…………………………………………………………………… viii-ix List of Tables ……………………………………………………………………. x Chapter 1 Introduction……………………………………………………. 1-8 1.1 Background……………………………………………………… 1 1.2 Reuse Based Development……………………………………… 1 1.3 Need of Reuse Based Development…………………………… 3 1.4 Reusable Software Product……………………………………. 3 1.5 Challenges to Software Reuse…………………………………. 4 1.6 COTS Selection…………………………………………………. 4 1.6.1 COTS Selection Criteria……………………………… 5 1.6.2 COTS Evaluation……………………………………… 7 1.7 Summary ……………………………………………………. 7 1.8 Thesis Outline…………………………………………………… 7 Chapter 2 Literature Review……………………………………………… 9-22 2.1 Procurement Oriented Requirement Engineering (PORE)……… 9 2.1.1 Description of PORE…………………………………. 9 2.1.2 Drawbacks of PORE………………………………….. 10 2.2 COTS Aware Requirement Engineering (CARE)……………… 11 2.2.1 Description of CARE………………………………… 11 2.2.2 Drawbacks of CARE………………………………….. 12 2.3 COTS Requirement Engineering (CRE)………………………... 12 2.3.1 Description of CRE…………………………………… 12 2.3.2 Drawbacks of CRE…………………………………… 13 2.4 Off The Shelf Option (OTSO)………………………………… 14 v 2.4.1 Description of OTSO…………………………………... 14 2.4.2 Drawbacks of OTSO………………………………….. 15 2.5 Mismatch Handling aware COTS Selection (MiHOS)………..... 15 2.5.1 Description of MiHOS………………………………... 15 2.5.2 Drawbacks of MiHOS ………………………………... 16 2.6 Decision Making Techniques…………………………………… 17 2.6.1 Weighted Score Method………………………………. 17 2.6.2 Analytic Hierarchy Process…………………………... 18 2.6.3 Feature Analysis using GQM paradigm……………… 19 2.7 Mismatch Handling Problem……………………………………. 20 2.8 Summary………………………………………………………… 22 Chapter 3 Problem Statement…………………………………………….. 23-24 Chapter 4 Proposed COTS Selection Process……………………………. 25-32 4.1 The Systematic Process………………………………………… 25 4.1.1 Requirement Acquisition…………………………… 25 4.1.2 Searching…………………………………………… 26 4.1.3 Filtering…………………………………………….. 27 4.1.4 Detailed Evaluation with Dynamic Analysis……… 27 4.1.5 Mismatch Handling………………………………… 29 4.1.6 Ranking the Components…………………………... 31 4.2 Mismatch Mitigation Action……………………………………. 31 4.2.1 Refining Requirements……………………………... 31 4.2.2 Resolvable Mismatches…………………………….. 31 4.3 Summary………………………………………………………. 32 Chapter 5 Experimental Results………………………………………… 33-39 5.1 Application of Proposed COTS Selection Process……………… 33 5.1.1 Requirements Acquisition………………………………… 33 5.1.2 Searching…………………………………………… 33 5.1.3 Filtering……………………………………………... 34 5.1.4 Detailed Evaluation with Dynamic Analysis……. 36 5.1.5 Mismatch Handling………………………………. 37 vi 5.1.6 Ranking the Components…………………………… 39 5.2 Summary………………………………………………………. 39 Chapter 6 Conclusions and Future Scope……………………………… 40-41 6.1 Conclusions……………………………………………………… 40 6.2 Future Scope…………………………………………………….. 40 References ………………………………………………………………….. 42-44 List of …………………………………….……………………………. 45 Papers Appendix A Types of Measurement in Proposed Model………………….. 46-47 A.1 Measurement Scales…………………………………………….. 46 A.2 Metrics in Proposed Model…………………………………….. 46 A.2.1 Binary Metric (BIN)……………………………….. 46 A.2.2 Ordinal Metric (ORDN)…………………………… 47 Appendix B GQM based Feature Analysis………………………………… 48-51 B.1 Overview……………………………………………………….. 48 B.2 GQM Based Templates…………………………………………. 48 B.2.1 Functional Requirements…………………………... 48 B.2.2 Non-Functional Requirements…………………… 50 Appendix C Full Results of the Case Study………………………………. 52-60 C.1 Snapshots of Most Promising Candidates………………………. 52 C.1.1 Crimson Editor……………………………………... 52 C.1.2 Notepad++………………………………………….. 53 C.1.3 Programmer’s Notepad…………………………….. 53 C.1.4 Notetab Standard…………………………………… 54 C.1.5 PSPAD Editor……………………………………… 54 C.2 Feature Evaluation Results……………………………………… 55 C.3 Identified Mismatches and their Mitigation Action…………….. 57 C.3.1 Notepad++………………………………………… 58 C.3.2 Programmer’s Notepad……………………………. 59 C.3.3 PSPAD Editor…………………………………….. 60 vii List of Figures Figure 1.1 V-Model for Reuse Based Development……………………… 2 Figure 2.1 COTS Selection Process using PORE..……………………… 10 Figure 2.2 CARE-An iterative process for Component Based Development. 11 Figure 2.3 Part of CRE Templates………………………………………….. 13 Figure 2.4 NFR Framework in Requirement Acquisition………………….. 13 Figure 2.5 The Main Activities in the OTSO process..……………………. 14 Figure 2.6 Two Phase Mismatch Handling in MiHOS…………………… 16 Figure 2.7 GQM paradigm by Basili ……………………………………… 19 Figure 2.8 Mismatch taxonomy proposed by Alves ………………………. 21 Figure 2.9 Mismatch taxonomy proposed by MiHOS …………………… 21 Figure 4.1 The Overview of the Proposed COTS Selection Process……….. 26 Figure 4.2 Detailed Evaluation of the Promising Candidates……………… 27 Figure 4.3 Data Flow Diagram for Mismatch Handling Process…………… 30 Figure 5.1 Hierarchy of the requirements………………………………….. 33 Figure 5.2 Snapshot for Notepad ++………………………………………... 35 Figure 5.3 Detailed Evaluation Results using GQM based Feature Analysis. 36 Figure 5.4 Importing Plug-ins Part (1/2)…………………………………… 38 Figure 5.4 ComparePlugin.dll, Mathpad.dll, Nppexport.dll and 38 SpellCheck.dll Part (2/2)...……………………………………… Figure C.1 Snapshot for Crimson Editor……………………………………. 52 Figure C.2 Snapshot for Notepad++………………………………………… 53 Figure C.3 Snapshot for Programmer’s Notepad…………………………… 53 Figure C.4 Snapshot for Notetab Standard…………………………………. 54 Figure C.5 Snapshot for PSPAD Editor……………………………………... 54 Figure C.6 Feature Evaluation Results Part (1/6)…………………………… 55 Figure C.6 Feature Evaluation Results Part (2/6)…………………………… 55 Figure C.6 Feature Evaluation Results Part (3/6)…………………………… 56 Figure C.6 Feature Evaluation Results Part (4/6)…………………………… 56 viii Figure C.6 Feature Evaluation Results Part (5/6)…………………………… 57 Figure C.6 Feature Evaluation Results Part (6/6)…………………………… 57 Figure C.7 Mismatch handling for Notepad++……………………………… 58 Figure C.8 Mismatch handling for Programmer’s Notepad………………… 59 Figure C.9 Mismatch handling for PSPAD Editor…………………………. 60 ix List of Tables Table 2.1 Example of Weighted Score Method …………………………… 17 Table 2.2 Example of Analytic Hierarchy Process..……………………….. 19 Table 3.1 Comparative Study of COTS selection processes………………. 23 Table 4.1 GQM Based Template for “Richness of Built-In Tools”……….. 28 Table 5.1 List of Searched Candidates ……………………………………. 34 Table 5.2 Shortlist of the most Promising Candidates……………………. 35 Table 5.3 Summary of Evaluation Results before Mismatch Handling…… 37 Table 5.4 Results after Mismatch Handling ……………………………… 39 Table B.1 GQM Template for “Basic Editing”………………………. 48 Table B.2 GQM Template for “Programming Editing Features”.................. 49 Table B.3 GQM Template for “Richness of Built-in Tools”......................... 49 Table B.4 GQM Template for “Vendor’s Support”……………………….. 50 Table B.5 GQM Template for “Help & support”…………………………. 50 Table B.6 GQM Template for “Usability”………………………………… 50 Table B.7 GQM Template for “Flexibility”……………………………….. 51 x Chapter 1 Introduction 1.1 Background In the computer market, existing technologies get obsolete speedily than in any other industry. This rapid-fire pace demands continuous increase in productivity and competitiveness for the computer market. Many industries like health care, manufacturing, transportation and retail – depend on
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages73 Page
-
File Size-