A Systematic Mapping Study on Software Reuse

Size: px
Start display at page:

Download "A Systematic Mapping Study on Software Reuse"

Transcription

1 Master Thesis Software Engineering Thesis no: MSE-2010:07 April 2010 A Systematic Mapping Study on Software Reuse Bhargava Mithra Konda and Kranthi Kiran Mandava School of Computing Blekinge Institute of Technology Box 520 SE Ronneby Sweden

2 This thesis is submitted to the School of Engineering at Blekinge Institute of Technology in partial fulfillment of the requirements for the degree of Master of Science in Software Engineering. The thesis is equivalent to 20 weeks of full time studies. Contact Information: Author(s): Bhargava Mithra Konda Address: Rum 10, Folkparksvägen 16, , Ronneby, Sweden Kranthi Kiran Mandava Address: Rum 10, Folkparksvägen 16, , Ronneby, Sweden University advisor(s): Dr. Mikael Svahnberg Department of System and Software Engineering, Blekinge Institute of Technology School of Engineering Blekinge Institute of Technology Box 520 SE Ronneby Sweden Internet : Phone : Fax : ii

3 ABSTRACT Context: Software reuse is considered as the key to a successful software development because of its potential to reduce the time to market, increase quality and reduce costs. This increase in demand made the software organizations to envision the use of software reusable assets which can also help in solving recurring problems. Till now, software reuse is confined to reuse of source code in the name of code scavenging. Now a day, software organizations are extending the concepts of software reuse to other life cycle objects as they realized that reuse of source code alone does not save money. The academia has put forward some assets as reusable and presented methods or approaches for reusing them. Also, for a successful software reuse the organizations should assess the value of reuse and keep track on their reuse programs. The other area which is vital for software reuse is the maintenance. Maintenance of reusable software has direct impact on the cost of the software. In this regard, academia has presented a number of techniques, methods, metrics and models for assessing the value of reuse and for maintaining the reusable software. Objectives: In our thesis, we investigate on the reusable assets and the methods/ approaches that are put forward by the academia for reusing those assets. Also a systematic mapping study is performed to investigate what techniques, methods, models and metrics for assessing the value of reuse and for maintaining the reused software are proposed and we also investigate their validation status as well. Methods: The databases like IEEE Xplore, ACM digital library, Inspec, Springer and Google scholar were used to search for the relevant studies for our systematic mapping study. We followed basic inclusion criteria along with detailed inclusion/exclusion criteria for selecting the appropriate article. Results: Through our systematic mapping study, we could summarize the list of 14 reusable assets along with the approaches/methods for reusing them. Taxonomy for assessing the value of reuse and taxonomy for maintaining the reusable software are presented. We also presented the methods/metrics/models/techniques for measuring reuse to assess its value and for maintaining the reusable software along with their validation status and areas in focus. Conclusion: We conclude that, there is a need for defining a standard set of reusable assets that are commonly accepted by the researchers in the field of software reuse. Most metrics/models/methods/approaches presented for assessing the value of reuse and for maintaining the reuse software are academically validated. Efforts have to be put on industrially validating them using the real data. Keywords: Software, Reuse, Reusable Assets, Value, Measuring, Maintenance, systematic mapping study, Metrics, Models, Methods, Approaches.

4 ACKNOWLEDGEMENT First and foremost, we owe a lot to Lord Shiridi Sai Baba and Durga Devi Talli for his blessings. We are greatly indebted to Dr. Mikael Svahnberg for his advices, guidance and support. We thank him for allocating some of his valuable time for meetings, apart from his busy schedule. These meetings guided us in all walks during this thesis period and also in building confidence, without which we wouldn t had made it this far. We thank our parents for their effort in sending us to attain quality education and also we thank them for their affection and moral support towards us. We would like to thank Mrs. Eva Norling for her advices in designing the search terms. We are thankful to the librarians, whose support in providing the literature helped us a lot throughout our thesis. Last but not the least, we are grateful to our friends especially Vinod, for their moral support where and when needed and for sharing everlasting memories during our stay in Sweden. ii

5 Table of Contents 1 INTRODUCTION SOFTWARE REUSE AIMS AND OBJECTIVES RESEARCH QUESTIONS THESIS STRUCTURE BACKGROUND AND RELATED WORK RESEARCH METHODOLOGY Search Strategy Search Process Execution Search Term identification and Search Questions framing process Basic Inclusion Criteria Detailed Inclusion/ Exclusion Criteria Snowball sampling The Analysis Validity Threats REUSABLE ASSETS METHODOLOGY EXECUTION RESULTS Reusable Assets Bubble Graph Results ANALYSIS State of Validation Overall Validation Status Validation Status for Each Asset Assets in Focus VALUE OF REUSE METHODOLOGY EXECUTION RESULTS Taxonomy Bubble Graph Results ANALYSIS State of Validation Overall Validation Status Validation Status for Each Category AREAS IN FOCUS REPRESENTATION METHODS MAINTENANCE OF REUSABLE SOFTWARE METHODOLOGY EXECUTION RESULTS Maintenance Taxonomy Bubble Graph Results iii

6 4.3 ANALYSIS State of Validation Overall Validation Status Validation Status for Each Category Areas in Focus Validity Threats CONCLUSION REFERENCES Appendix iv

7 List of Tables Table 1: Population, Intervention, Context, Outcome for each Research Question... 8 Table 2: Basic Inclusion Criteria... 8 Table 3: Detailed Inclusion/ Exclusion Criteria... 9 Table 4: Search Terms and Search Questions for Reusable Assets Table 5: Hits after each phase for RQ Table 6: Reusable Assets Table Table 7: Search Terms and Search Questions for Value of Reuse Table 8: Hits after each phase for RQ Table 9: Contribution Table for Value of reuse Table 10: Search Terms and Search Questions for Maintenance Table 11: Hits after each criterion for RQ Table 12. Contribution Table for Maintenance Table 13: Abbreviations used in Tables and Figures Table 14: Result Table for Algorithms Reuse Table 15: Result Table for Architecture Reuse Table 16: Result Table for Data Reuse Table 17: Result Table for Design Reuse Table 18: Result Table for Documentation Reuse Table 19: Result Table for Estimates Reuse Table 20: Result Table for Human Interface Reuse Table 21: Result Table for Knowledge Reuse Table 22: Result Table for Model Reuse Table 23: Result Table for Modules Reuse Table 24: Result Table for Plans Reuse Table 25: Result Table for Requirements Reuse Table 26: Result Table for Service Contract Reuse Table 27: Result Table for Test Case/ Test Plan Reuse Table 28: Result Table for Cost Benefit Analysis Table 29: Result Table for Maturity Assessment Models Table 30: Reuse Table for Amount of Reuse Metrics Table 31: Reuse Table for Failure Modes Model Table 32: Result Table for Reusability Assessment Table 33: Result Table for Reuse Library Metrics Table 34: Result Table for Strategies Table 35: Result Table for Change Impact Analysis Table 36: Result Table for Software Configuration Management Table 37: Result Table for Module Dependencies Table 38: Result Table for Legal Issues Table 39: Result Table for Aging Symptoms Table 40: Reference List for Chapter 2, 3 and v

8 List of Figures Figure 1: Search Strategy... 6 Figure 2: Detailed Analysis through Bubble Graph Figure 3: Validation Status (Reusable Assets) Figure 4: Assets in Focus (Reusable Assets) Figure 5: Reuse Metrics and Models Taxonomy Figure 6: Systematic Mapping for Value of Reuse Figure 7: Validation status (Value of Reuse) Figure 8: Percentage of Academic, Industrial and Survey Validations Figure 9: Areas in Focus (Value of Reuse) Figure 10: Taxonomy of Maintenance Figure 11: Systematic Mapping for Maintenance Figure 12: Validation Status (Maintenance of Reuse) Figure 13: Percentage of Academic, Industrial and Survey Validations Figure 14: Areas in Focus (Maintenance of Reuse) vi

9 1 INTRODUCTION This section deals with the introduction to our thesis along with our aim and objectives, research questions, thesis structure and research methodology. 1.1 Software Reuse Software reuse is the process of creating a new system from that of existing system rather than creating the new one from the scratch. In other words, it is the reusing of existing software artifacts or software assets to build a new system. The concept of software reuse has been introduced to overcome the software crisis i.e., the problem of building large and reliable software system in a cost effective and controlled way by McIlroy in 1968 [177]. Initially, software reuse was limited to source code. Due to the increase in customer needs and market demand for sophisticated software, the software companies started thinking beyond source code. This leads to the reuse of other life cycle assets. By reusing the other life cycle assets like design, algorithms, knowledge etc, new software can be brought in to the market faster. Software reuse helps in not only reducing the time but also reduces the cost [34] [177]. Though research is going on in the field of software reuse, the software industry is still in its initial stages. Many sources said that the research in the field of software reuse was started in 1968 [177] [96] [121], since then many questions arose which were left unanswered. Some of them are: 1) Are there any standard set of reusable assets defined? 2) Is there a standard taxonomy defined for assessing the value of reuse? 3) Is there a standard taxonomy defined for maintaining of reusable software? Through our research, we would proceed further to find an answer to the above questions. Source code is most commonly reused and thus many had the misconception that software reuse is the reuse of source code alone [36]. Frakes[176] mentions that little is known about the reuse of assets other than coding. But Reuse of source code cannot alone save money. Some studies have shown that though 50% of the code was reused the cost savings on the software product was much smaller. This motivated us to find the other reusable assets apart from coding [92]. So for successful software reuse and getting more benefit through software reuse, the industries are looking forward to extend the concept of reuse to the assets other than coding, which are reusable. Researchers like R. J. Leach [23], Swanson [68], Bollinger [81] and Jones [21] presented some reusable assets along with code, but the list of reusable assets they presented do not exactly match with each other. There are some assets that were mentioned commonly by them but there is no common understanding between the researchers on a standard set of reusable assets. Assessing the value of reuse is a major concern in the software industry. For assessing its value, reuse should be measured by using the metrics and models. Measuring reuse will help the organization to know their progress in software reuse, to know how much amount of reuse is done or to assess the cost benefits of software reuse etc. For this, W. B. Frakes in 1996 has done a review on some of the existing important models or metrics or methods. However, there are no widely accepted models and the organizations are still unsure of getting success by using those models which are predicted [89]. It is observed that the researchers have just started to realize the importance of extending the concept of reuse to other life cycle objects beyond coding but very few authors have worked on assessing the value of reuse in them, most of the authors dealt with the assessing the value of reuse in a code. The metrics or models which are designed for assessing the value of reuse 1

10 in other life cycle objects are inspired from those designed for coding. For example: For assessing the amount of reuse metrics, W. B. Frakes [22] had derived a formula for assessing the amount of reuse in whole life cycle which is inspired by the formula for coding. The other issue concerning to software reuse is the maintenance. Maintenance of reusable software is the most expensive part of the software life cycle. Software maintenance involves modification of a software component after it has been handed over to the client. The changes are made to the software to ensure error corrections, performance or other improvements, functionality up-gradations, or adaptations to changed environments. There have been situations where more than 50% of the budget is spent on the maintenance of the software. Maintenance is treated as reuse-oriented task. The life cycle assets like requirements, design, documentation etc, from the earlier versions of the system must be revisited for maintaining the software reuse which in turn makes it easy for the maintenance programmers to understand the problem [36]. Most of the research works proposed models or methods for assessing the value of reuse and for maintaining the reusable software. However, there are no widely accepted methods or models. The organizations are still unsure of getting success by using those models [89]. Literature that published the experiences of industry or success stories of industry in using a particular model is scarce. By seeing this, we assume that industries are not fully confident in getting success by reusing software [113]. The aim of our research is to investigate the status of the research performed since 1968 on the assets other than source code, that are mentioned in the literature as reusable. Also, to investigate on software reuse particularly in assessing the value of reuse and maintaining the reusable software through our systematic mapping study and to investigate the trends and developments in this field of research particularly in assessing the value of reuse and maintaining the reused assets. Also, we aim to study if there is any effort put by the industry in validating the proposed models till first half of Our research report will help the industry to know exactly which assets can be reusable along with coding as we come out with a set of reusable assets that we have found through our review and to know what are the metrics and models for measuring reuse to assess its value and what are the methods for maintaining the reusable software. Our report will also help them to know which models are industrially validated up to now so that they can feel confident in using those industrially validated models. It also encourages the industry and researchers to further validate the non validated models either academically or industrially, so that they can be useful for the industry to use them. 1.2 Aims and Objectives The aim of this research is to do a systematic mapping study to find out reusable assets other than coding that are mentioned in the literature, models or metrics that are used for assessing the value of reuse, methods/models/metrics/approaches/tools for maintaining the reusable software and to report the results and analysis of our review. This aim will be fulfilled by the following objectives: To identify the assets other than coding that are mentioned in the literature as reusable. To identify the methods or approaches for reusing these assets. To identify the metrics and models used for assessing the value of reuse. To identify the methods for maintaining reusable software. 1.3 Research Questions RQ1. What are the assets other than coding have been mentioned in the literature as reusable? - RQ1.1. What are the methods or approaches for reusing these assets? 2

11 - RQ1.2. What is their validation status? - RQ1.3. What are the assets in focus? RQ2. What are the metrics and models that have been proposed for measuring reuse to assess its value? -RQ2.1. What is the validation status? -RQ2.2. What are the areas in focus? RQ3. What approaches have been proposed for maintaining the reusable software? -RQ3.1. What is their validation status? -RQ3.2. What are the areas in focus? 1.4 Thesis structure Chapter 1: In this chapter, we start with introduction to our report and present our aims objectives and research questions. In section 1.5, we discuss the background and related work. Section 1.6, deals with the research methodology in which we discuss in detail about our search strategy and give a clear picture of design and execution of our systematic mapping study. In section 1.6.3, we present the validity threats. Chapter 2: This chapter deals with answering the research question RQ1. In section 2.1, we present the methodology execution along with the search terms and search combinations we used in finding the relevant studies and present the names of the databases used along with the studies obtained for each criteria. In Section 2.2, we present the results of our systematic review in which we present the reusable assets along with their definitions. In Section 2.3, we present the analysis of our review for RQ1 and RQ1.1. Chapter 3: This chapter deals with research question RQ2. In section 3.1, we present the methodology execution along with search terms and search combinations we used in finding the relevant studies and present the names of the databases used along with studies obtained for each criteria. In Section 3.2, we present the results of systematic mapping study in which, we present the taxonomy of Reuse metric and models for assessing the value of reuse. In Section 3.3, we present the analysis of our review for RQ 2. Chapter 4: This chapter deals with research question RQ3. In section 4.1, we present the methodology execution along with search terms and search combinations we used in finding the relevant studies and present the names of the databases used along with the studies obtained for each criteria. In Section 4.2, we present the results of our review in which, we present the maintenance of software reuse taxonomy. In Section 4.3, we present the analysis of our review for RQ 3. Chapter 5: In this chapter, we present the conclusion of our report along with future work and recommendations for the future research work. Chapter 6: In this chapter, we present the references used in our research. Chapter 7: This chapter is an appendix which contains the definitions to the abbreviations that were used in the figures and tables of different chapters. Section A2, Section A3, Section A4 contains the results of our systematic mapping study (for answering RQ1, RQ1.1, RQ2 and RQ3) in the form of tables. 1.5 Background and Related Work In the earlier days of software development, the software used to be built from the scratch. In this rapidly changing world, user needs and expectations are never constant and changes time to time and users expect new versions as fast as possible. The organizations have focused on finding new ways to bring out the products to its customers as fast as they can, within shorter time and with reduced cost, which meets the user expectations. Product success is affected by 3

12 many success parameters like time to market, product cost, delivering optimal quality, level of effort, engineering overhead etc [181, 182]. The need for faster development of software and for introducing a successful product into the market led to the concept of reuse of software assets from the existing systems. Software reuse is not a new topic to discuss. The idea of Software reuse was first introduced by McIlroy in 1968 [177] and its role is predominant in software development. D. L. Parnas [187] in 1972 was the first to use the word "Modularization". He put his efforts in the field of modular programming in which the system is decomposed in to smaller modules. By this, smaller code modules can be developed. These modules can be used for reassembling or can be replaced by the other existing module. Most famous researchers like McIlroy [177], D. L. Parnas [187] etc thought that software reuse is nothing other than code reuse. There are many definitions for software reuse by many researchers. We would like to quote Krueger's general view definition of software reuse. "Software reuse is the process of creating software systems from existing software rather than building software systems from scratch [34, 179]. Now a day, most of the software companies are tending towards software reuse. Since, with software reuse we can minimize redundant work, produce high quality, reduce development cost, release the product in time, minimize maintenance and training cost, reduce team size, share expertise (code) and reduce documentation [179]. Reuse of software involves use of already existing assets from the previous versions of the software, finding the appropriate ones that are needed at present for reuse and integrating them with the currently new ones [60]. Many people assume that reuse of software means reuse of code (code scavenging) alone. But, there are several other assets which can be considered apart from code, such as requirements, design, test cases, test plans, architectural framework, look and feel of the applications, knowledge generated, reasoning, templates for any asset and so on [37, 58, 19, 50]. Though research is going on in the field of software reuse, the software industry is still in its initial stages of software reuse. By seeing this we assume that they are not fully confident in getting success by reusing software [113]. Regarding the assets many authors have only just dealt with code reuse. But for successful software reuse and getting more benefit through software the industries are looking forward to extend the concept of reuse to the assets other than coding, which are reusable. But some authors like Leach [23] and Jones [21] tried to present some reusable assets along with code, but the list of reusable assets they presented do not exactly match with each other. There are some assets that were mentioned commonly by both but there does no common understand between the researchers on a standard set of reusable assets. Measuring or assessing the value of reuse is a major concern among the organizations and there are works predicting models or methods. However, there are no widely accepted models and the organizations are still unsure of getting success by using those models which are predicted [89]. W.B Frakes [22] in 1996 has done a review on some of the existing important models or metrics or methods. Clearly, it is observed that the researchers have just started to realize the importance of extending the concept of reuse to other life cycle objects beyond coding but very few authors have worked on assessing the value of reuse in them, most of the authors dealt with the assessing the value of reuse in a code. The metrics or models which are designed for assessing the value of reuse in other life cycle objects are inspired from those designed for coding. For example: For assessing the amount of reuse metrics, W.B Frakes [22] had derived a formula for assessing the amount of reuse in whole life cycle which is inspired by the formula for coding. Literatures that published the experiences of industry or success stories of industry in using a particular model are scarce [113,179]. Maintenance of reusable software is another area of concern. Maintenance of reusable software is an expensive task. There are many factors which has impact on the maintenance of reusable software. These factors include coupling and cohesion, software configuration management, change impacts, aging of a legacy system, licensing, contractual and negotiation 4

13 issues. Approaches/ models/ methods have been proposed by academia for each factor. But, there are no standard maintenance models which could solve the problems related to the complete set of above mentioned factors. Moreover, there are no widely accepted models. Related Work Authors like Jones [21], Frakes [22], Leach [23] and Bollinger [81] have presented their own list of reusable assets. They have some reusable assets in common. But, it can be clearly understood that no author have actually tried to present a set of reusable assets that can be accepted by most of the researchers in the software reuse community. The above mentioned authors have actually tried to mention the assets but it seems that there is no common agreement between them regarding reusable assets. Each author presented his own list of reusable assets. The list proposed by one author differs with the list proposed by the other. Regarding metrics and models for measuring reuse to assess its value Frakes [22] in 1996 has done a major work in bringing different reuse metrics and models together and categorizing them based on their application to different areas of software reuse. His taxonomy of reuse metrics and models was an inspiration to later works in this field. Mohagheghi [79] in 2007 reviewed the journals between 1994 and 2005 to gather the evidences of successful software reuse programs in industry. This work helped us to know the validation status (industrial validation) of the studies in the past before In our report, we also tried to trace out the industrially validated studies along with academically validated till the first half of mid Curry et al. [94] had done a review study on amount of reuse metrics and Frakes [95], Mascena [112, 113] have done study regarding amount of reuse metrics. In these studies, we found few additional subcategories in the amount of reuse metrics along with those mentioned by Frakes [22]. These subcategories are added to the taxonomy of reuse metrics and models in our review report. In 2005, Frakes [107] presented a paper on present status and future of software reuse. This paper gives us an idea on present status of research in the field of reuse metrics and models. Victor Basili [120] in 1990 was the first person to discuss reuse in terms of maintenance and development. Few researchers like Kwon [121] proposed integrated approaches which are a combination of software reuse, maintenance and SCM for the maintenance of reusable software. Michael Jiang et al. [125] proposed integrated approaches which are combination of data mining, defect tracking system and SCM for the maintenance of reusable software. Reddy [197] in 1996 started his research in the field of maintenance of software reuse and introduced another type of maintenance called Reconstructive maintenance. None of the research works found so far has defined taxonomy for the maintenance of software reuse. Moreover, the research works discussed maintenance of reusable software in terms of their individual topic areas like software configuration management, change impact analysis, module dependencies, legal issues and aging symptoms. Every topic area plays a vital role in maintaining reusable software. So, we would be presenting these topic areas under taxonomy. We categorized each topic area and also introduced a category named strategies which deals with the integrated approaches [121] [125] and approaches for reuse as whole like full reuse maintenance model [124] and simple reuse model [120]. 1.6 Research Methodology In this report, we followed Kitchenham s guidelines for performing a systematic mapping study [180, 183]. A systematic mapping study is a precursor to a systematic literature review. It is another type of review which complements systematic literature review. It is also known as scoping study. A systematic mapping study is used to identify the extent and form of the literature on a particular topic. A systematic mapping study is suitable when we notice that there is very little evidence available or when the topic area is too broad during the initial examination of the domain before a systematic review is executed [183]. A systematic mapping study helps in identifying the evidence that is available for a particular topic and can be represented at high level of granularity. The results obtained through mapping study would help in identifying the evidence clusters and evidence deserts which would 5

14 suggest which areas are to be more focused by the future systematic reviews and the areas where there is a need to conduct more primary studies [183]. The systematic mapping study consists of finding an answer to the research questions. This involves analyzing, identifying, evaluating and interpreting all research works that are relevant to a particular research question, or topic area, or phenomenon of interest. Most important of all and which is applicable for our work is to identify and summarize the extent of current technology or treatment till date and identifying the gaps in current research work in order to throw light on what has to be done as future work. The search strategy followed in finding the relevant studies is discussed in section 1.6.1, Search Strategy. The methodology discussed in this section is being followed in the chapter 2, chapter 3 and chapter Search Strategy The search strategy which is being followed in our systematic mapping study is presented in figure 1. The search strategy consists of four phases: Phase 1: First phase consists of executing the search both electronically and by citation search. This phase involves identification of search terms and search questions. This search results are documented and are maintained including the selected and rejected documents which makes the search process easy. The search terms and search questions are framed based on the research questions, the topic area and the phenomenon as a whole. Phase 2: This phase involves the execution of inclusion and exclusion criteria which are explained in sections. Phase 3: Apart from the first two phases, the third phase is slightly different. In the third phase, we slightly deviated from the Kitchenham's guidelines and conducted snowball sampling. This is discussed in more detail in section Phase 4: This phase consists of the analysis of the studies obtained from the three phases. A central database is used for the storing and retrieval of the studies for each phase. Figure 1: Search Strategy 6

15 Initially, we found studies after the citation and electronic search. In order to refine these hits, we applied basic inclusion criteria and detailed inclusion/ exclusion criteria. On applying basic inclusion criteria, we found 2299 studies. We eliminated the duplicates in the basic inclusion criteria itself. We further executed the detailed inclusion and exclusion criteria which resulted in 165 full text studies. We performed snowball sampling based on the obtained full texts which in turn resulted in 42 studies. Finally, a total of 207 studies where found for our research work. (Note: The total number of studies mentioned here is the final figure after removing the 6 duplicates (duplicates means some references/studies falls into more than one category or chapter)). A list of references for each chapter is given in table 40 in appendix. We presented a table in each chapter in order show the number of studies found initially, number of studies found after the basic inclusion criteria, number of studies found after the detailed inclusion/ exclusion criteria and studies found through snowball sampling respectively for each database. Databases used: The databases used during the systematic mapping study are: 1. IEEE Xplore 2. Inspec + Compendex 3. ACM Digital 4. Elsevier 5. Springer These are the five major databases we used. We used Google scholar for performing the citation search which is discussed in section Through this, we could find The articles which cites an article, The article having particular keywords since a particular year The articles which are similar to the current article. We also used Google scholar for our snowball sampling which is discussed in section Some of the research works found during snowball sampling are from the Citeseer database Search Process Execution Search process execution consists of identifying the search terms and search questions and defining the inclusion/ exclusion criteria s Search Term identification and Search Questions framing process The search terms are derived by considering the population, intervention, outcome, context and comparison. The population in this study represents the domain of software reuse. The intervention represents the application of search techniques used for the analysis of the different types of assets, value of software reuse and the maintenance of software reuse. Comparison in our case is not applicable for the reason being that the three research questions are of three different topic areas in the same domain. However, comparison is performed within each research question. 7

16 Population Intervention Context Outcome RQ 1 Software Reuse Review of reusable assets Academia Reusable Assets RQ 1.1 RQ 1.2 Software Reuse Methods for reusing assets Academia Methods Software Reuse Validation status for assets Academia Graph representing the percentage of validation. RQ 1.3 Software Reuse Assets in focus Academia Graph showing the research contribution for each asset per year RQ 2 Software Reuse Assessing the value of reuse Academia Reuse metrics and models RQ 2.1 RQ 2.2 RQ 3 Software Reuse Validation status for value of reuse Software Reuse Areas in focus for value of reuse Software Reuse Maintenance of software reuse RQ 3.1 Software Reuse Validation status for maintenance of reusable software RQ 3.2 Software Reuse Areas in focus for maintenance of reusable software Table 1: Population, Intervention, Context, Outcome for each Research Question Other terms are obtained by identifying the alternative terms and synonyms to the major search terms. Some terms are obtained from the keywords which are mentioned in the research paper relevant to our topic. Search questions are framed by using the Boolean OR and AND. Some databases like Inspec, Compendex etc facilitate the use of truncation * and wildcards? in the keywords which can also be used to perform efficient search. For example: reus* instead of reuse, reusable, reusability and wom?n instead of woman or women Basic Inclusion Criteria Academia Graph representing the percentage of validation. Academia Graph showing the research contribution for each value (Reuse metrics and models) category per year Academia Methods/Models/ Metrics/ Approach Academia Graph representing the percentage of validation. Academia Graph showing the research contribution for each maintenance category per year The inclusion and exclusion criteria s are used for data extraction in obtaining the most appropriate studies which are necessary in answering the research questions. The basic inclusion criteria will help in initial refinement of the articles. In order to perform the basic inclusion criteria, we are considering three criteria. These three criteria will help us in deciding which articles are to be included. They are discussed in table 2. Basic inclusion criteria 1. Include article if the title matches with the topic area. 2. Include article if the abstract matches with the topic area. 3. Include only non-redundant articles. Table 2: Basic Inclusion Criteria By applying the basic inclusion criteria, studies as shown in figure 1, were reduced to 2299 studies. The reason for this huge variation is due to the removal of duplicates in the basic inclusion itself Detailed inclusion/ exclusion criteria After the basic inclusion criteria, a detailed inclusion/ exclusion criteria is applied on the results obtained by the basic inclusion criteria. The detailed inclusion/ exclusion criteria are discussed in the table 3. 8

17 Detailed inclusion/ exclusion criteria Inclusion criteria 1. The article must be peer reviewed 2. The article must be available as full text 3. The article should relate to the software reuse 4. The article should be in the topic area of assets, value or maintenance in software reuse. 5. The article should be literature review, systematic review, systematic mapping study, case study, experiment or experience report, survey or a comparitative study. 6. The article should be included if it proposes a model, metrics, approach or method. 7. The article should be included if it deals with the extension to existing model. 8. The article should be included if it deals with the validation to existing model or the currently proposed model. Exclusion criteria 1. Articles which do not follow inclusion criteria can be excluded. 2. Some articles mentions management as maintenance should also be excluded. Management of software reuse refers to naming, storage and retrieval of reusable assets which is not related to our report and hence, it has to be excluded. 3. Non-English articles should be excluded. Table 3: Detailed Inclusion/ Exclusion Criteria Snowball Sampling Snowball sampling is an approach to study the hidden population. Hidden population refers to the research works which are not found when search process is executed. Snowball sampling is performed on the works of the researchers which fits our study requirements. In this approach, if we find a reference in an article, we will make use of that reference to find two more and so on. Kitchenham [183] suggests manual scanning of reference lists from relevant primary studies and appropriate article to find suitable articles. The other reason for choosing snowball sampling is that, this approach can also be applied to find the articles which use different terminologies. Though, many researchers presented the same idea, they made use of different terminology. We followed the same basic inclusion and detailed inclusion/exclusion criteria (mentioned in table 2 and table 3) for snowball search results The Analysis The results obtained from the systematic mapping study are analyzed in order to answer the research questions. The analysis mainly focuses on the state of validation, areas in focus of the research work and shift in trends in the research Validity threats It is essential to know the validity of study results and how these threats impact the results of the research work. In this section, we will be discussing the threats noticed during the systematic mapping study. There are four types of validity threats: 1. Conclusion Validity This type of validity relates to the statistical significance between the treatment and the outcome [205] [188]. These types of threats are commonly noticed during the search process execution. Wrong framing of search question formed by choosing inappropriate search terms leads to irrelevant study results. Usage of many appropriate search terms will help in filtering the irrelevant studies, but usage of one inappropriate search term may also result in many irrelevant studies. In order to avoid this, we framed the search terms and search questions under the supervision of the librarian. The conversation with the librarian helped us in framing 9

18 the basic search terms. By executing the basic search terms, we could derive few other search terms. Usage of inappropriate Boolean operators (like AND in place of OR and vice versa) would also result in many irrelevant studies. The execution of search strategy may result in some irrelevant studies due to bad framing of inclusion/ exclusion criteria. In order to avoid these irrelevant studies, we consulted experts like the librarian and a senior researcher during the framing of inclusion/ exclusion criteria. Some standard terms, when given as input for the search process leads to too many hits. In order to avoid this kind of threat, usage of quotes will help in finding the relevant studies. For example: When we use software AND configuration AND management instead of "software configuration management", the number of hits found in IEEEXplore would be around Number of hits with the quotes would be 140. Such type of threats can be avoided by making use of quotes. 2. Internal Validity This type of validity relates to a casual relationship between treatment and the outcome [205] [188]. Creswell [206] states a general view definition as "Internal validity threats are experimental procedures, treatments or experiences of the participants that threaten the researcher s ability to draw correct inferences from the data in an experiment". The inclusion of certain unpublished research works can introduce unwanted outcomes. Some of the literature works owned by organizations and research institutes are not available as full texts. This introduces a gap in the research work. Other reason is that, the native language of both the authors involved in this research work is not English. Therefore, the chances of interpreting the things in different perspectives may persist. In order to avoid this, cross checking the works of each other is necessary to ensure a common perspective. We noticed two types of review studies. Some studies deals with only reviews which provides suggestions or summary. The other type of review studies deals with reviewing the other researcher s work followed by validating or non-validating that work. Usually, percentage of validated and non-validated studies should sum up to 100%. But, in this report, we included reviews also. So, percentage of validated and non-validated studies along with review will sum up to 100%. When we encounter a study which consists of a review and proposes a model which is either validated or non-validated, we would be marking them in the subsequent column in the result table. The threat noticed here is that when both the columns are marked, the overall percentage exceeds 100%. In order to avoid such threats, we introduced two columns namely Extension to (E.T) and Validation Of. Whenever there is a review followed of a model and its validation, the Validation Of column is marked instead of review. Whenever there is a review followed by an introduction to new model which is not validated, then Extension To column is marked instead of marking it in review column. Such threats occurred for two studies [122, 124]. Apart from that a study by Oh-Cheon Kwon [122] has a non-validated tool and a review which made the total percentage go beyond 100%. The threat still remained for such discussions. 3. External Validity This type of validity relates to the generalization of results outside the scope or time span of the study [205] [188]. Creswell [206] provides a general view definition as "External validity arise when experimenter draw incorrect inferences from the sample data to other persons, other settings and past or future situations". For example, Cyril [207] proposed an approach for requirements in August Since, we have limited our time span till first half of 2009, we are not considering this study for our research work. 4. Construct Validity This type of validity refers to the relationship between the theory and the application [205] [188]. This type of validity threat is noticed when relevant studies are excluded. In order to avoid these threats, we introduced an exhaustive search strategy in section 1.6. In this search strategy, we made use of four phases. These four phases will help in overcoming the construct validity threats. 10

19 2 REUSABLE ASSETS Reusable assets are considered as the building blocks for software reuse. The reusable assets can be of a technical or managerial in nature, large grained or fine grained, simple or composite. The reusable assets can have varying degree of leverage. A leverage of a reusable asset happens when a reuse of one asset leads to the reuse of chain of assets in a downstream process. The reusable assets may consist of single asset or several assets in one asset (nested) [44] [63]. Ezran [44] [63] defines reusable asset as Software assets are composed of a collection of related software work products that may be reused from one application to another. The terms like components and work products are also used in place of reusable assets. Jacobson et al. [35] states that the assets and work products are also used in place of components. We present the definitions of components and work products to distinguish between the three terms. A component is defined as an executable asset that may be integrated as-is into an application [44]. An asset is made from a set of related work products. And these work products represents a same piece of software at different abstraction levels. These work products can be used at every step of software life cycle [44]. When considering the reusable assets most works mentions about coding. But there are other assets that can be reusable. So, we aimed at searching for other reusable assets apart from coding that are mentioned in the literature. Through our Systematic mapping study, we found 14 assets that can be reusable. Here, we excluded the code intentionally as we are searching for the reusable assets that are other than coding. The other reusable assets are: 1. Algorithms 2. Architecture 3. Data 4. Designs 5. Documentation 6. Estimation Templates 7. Human Interfaces 8. Knowledge 9. Models 10. Modules 11. Plans 12. Requirements 13. Service Contracts 14. Test Cases 2.1 Methodology Execution The search terms and search combinations are formed in order to answer the research questions RQ1 and sub-researches question RQ1.1, RQ1.2 and RQ1.3.Very few authors contributed in the field of software reusable assets. Initially, the search process was carried out by using eight terms like 1, 4, 5, 6, 20, 21, 22, and 24 in table 4. Through these eight search terms, we could find the research works and books of few renowned researchers. Among them are Jones [21], Leach [23], Frakes [22] and Swanson [68] who presented lists of reusable assets. In order to gain more knowledge about each asset in their list, we used the asset names as search terms. 11

20 Search Terms: 1. Assets 2. Algorithms 3. Architecture 4. Artifacts 5. Aspects 6. Components 7. Data 8. Designs 9. Document 10. Estimates 11. HCI 12. Human Computer Interface 13. Human Interface 14. Knowledge 15. Lifecycle 16. Models 17. Modules 18. Plans 19. Requirements 20. Reusable 21. Reuse 22. Reused 23. Service contracts 24. Software 25. Test Search Questions: 1. asset AND reuse OR reusable AND software 2. Lifecycle AND reuse AND software 3. software AND reusable AND aspects 4. software AND reusable AND artifacts 5. software AND reusable AND components 6. {Reusable OR reuse} AND Data 7. {Reusable OR reuse} AND Documentation 8. {Reusable OR reuse} AND Estimates(Templets) 9. {Reusable OR reuse} AND plans(project plans) 10. {Reusable OR reuse} AND {Test cases OR Test designs} 11. {Reusable OR reuse} AND Service contracts 12. {Reusable OR reuse} AND Algorithms 13. {Reusable OR reuse} AND Designs 14. {HCI} AND {software AND reus*} AND {asset OR artifact OR component} 15. Knowledge AND {software AND reus*} AND {asset OR artifact OR component} 16. Requirements AND {software AND reus*} AND {asset OR artifact OR component} 17. Architecture AND {software AND reus*} AND {asset OR artifact OR component} 18. Human Interface AND {software AND reus*} AND {asset OR artifact OR component} 19. Human computer Interface AND {software AND reus*} AND {asset OR artifact OR component} 20. Models AND {software AND reus*} AND {asset OR artifact OR component} 21. Modules AND {software AND reus*} AND {asset OR artifact OR component} Table 4: Search Terms and Search Questions for Reusable Assets The articles are obtained by executing the basic inclusion criteria along with the detailed inclusion/ exclusion criteria. These criteria are discussed in section 1.6. The results or the number of hits obtained are tabulated in table 5. 12

21 Number of hits Basic inclusion criteria Detailed inclusion/ exclusion criteria Snowball Sampling Google Scholar ACM Inspec IEEE Elsevier Springer Total Table 5: Hits after Each Phase for RQ1 NOTE: A list of references for this Chapter 2 are shown in Table 40 in Appendix 2.2 Results In this section, the results found through our review are presented. We have plotted the results in a bubble graph Reusable Assets In Table 6, we present the list of assets that are found through the review. The table also includes the number of articles found for each asset along with the author name, year of publication and the reference number of the article. Reusable Asset Number of Articles Authors Reference Number Algorithms 1 [Karsten, 97] [25] Architecture 11 [Krueger, 92] [34] [Leach, 97] [23] [Jacobson et al, 97] [35] [Sametinger, 97] [36] [Peter Eeles, 08] [37] [Li. H et al, 92] [38] [White et al, 98] [39] [Baum et al, 98] [40] [Gomaa, 95] [41] [Griss et al, 99] [42] [Clements et al, 01] [65] Data 5 [Giuseppe, 94] [1] [I Issenin, 04] [2] [Jones, C, 93] [21] [W Frakes, 96] [22] [R. Leach, 97] [23] 13

Measuring Cost Avoidance Through Software Reuse

Measuring Cost Avoidance Through Software Reuse Master Thesis Software Engineering Thesis no: MSE-2010-38 12 2010 Measuring Cost Avoidance Through Software Reuse A model to measure costs avoided through software reuse and guidelines to increase profits

More information

Static Code Analysis A Systematic Literature Review and an Industrial Survey

Static Code Analysis A Systematic Literature Review and an Industrial Survey Thesis no: MSSE-2016-09 Static Code Analysis A Systematic Literature Review and an Industrial Survey Islam Elkhalifa & Bilal Ilyas Faculty of Computing Blekinge Institute of Technology SE 371 79 Karlskrona,

More information

A Study of Elicitation Techniques in Market-Driven Requirements Engineering

A Study of Elicitation Techniques in Market-Driven Requirements Engineering Master of Science in Software Engineering May 2017 A Study of Elicitation Techniques in Market-Driven Requirements Engineering Wenguang Li, Shuhan Fan Faculty of Computing Blekinge Institute of Technology

More information

Investigating measures for applying statistical process control in software organizations

Investigating measures for applying statistical process control in software organizations Brito et al. Journal of Software Engineering Research and Development (2018) 6:10 https://doi.org/10.1186/s40411-018-0054-4 REVIEW Investigating measures for applying statistical process control in software

More information

Towards innovation measurement in software industry

Towards innovation measurement in software industry Master Thesis Software Engineering Thesis no: MSE-2010:11 May 2010 Towards innovation measurement in software industry Nauman bin Ali and Henry Edison School of Computing Box 520 SE 372 25 Ronneby Sweden

More information

CHAPTER 1. Business Process Management & Information Technology

CHAPTER 1. Business Process Management & Information Technology CHAPTER 1 Business Process Management & Information Technology Q. Process From System Engineering Perspective From Business Perspective In system Engineering Arena Process is defined as - a sequence of

More information

CHAPTER 2 LITERATURE SURVEY

CHAPTER 2 LITERATURE SURVEY 10 CHAPTER 2 LITERATURE SURVEY This chapter provides the related work that has been done about the software performance requirements which includes the sub sections like requirements engineering, functional

More information

Suitability of the Requirements Abstraction Model (RAM) Requirements for High Level System Testing

Suitability of the Requirements Abstraction Model (RAM) Requirements for High Level System Testing Master Thesis Software Engineering Thesis no: MSE-2007:27 October 2007 Suitability of the Requirements Abstraction Model (RAM) Requirements for High Level System Testing Naeem Muhammad School of Engineering

More information

Software Component Decision-making: In-house, OSS, COTS or Outsourcing - A Systematic Literature Review

Software Component Decision-making: In-house, OSS, COTS or Outsourcing - A Systematic Literature Review *Manuscript Click here to view linked References Software Component Decision-making: In-house, OSS, COTS or Outsourcing - A Systematic Literature Review Deepika Badampudi a, Claes Wohlin a, Kai Petersen,a

More information

Prediction of Success or Failure of Software Projects based on Reusability Metrics using Support Vector Machine

Prediction of Success or Failure of Software Projects based on Reusability Metrics using Support Vector Machine Prediction of Success or Failure of Software Projects based on Reusability Metrics using Support Vector Machine R. Sathya Assistant professor, Department of Computer Science & Engineering Annamalai University

More information

International Workshop on BIG Data Software Engineering (BIGDSE 15) Software Analytics to Software Practice: A Systematic Literature Review

International Workshop on BIG Data Software Engineering (BIGDSE 15) Software Analytics to Software Practice: A Systematic Literature Review International Workshop on BIG Data Software Engineering (BIGDSE 15) Software Analytics to Software Practice: A Systematic Literature Review Tamer Mohamed Abdellatif, Luiz Fernando Capretz, Danny Ho 1 Tamer

More information

Model for conflict resolution in aspects within Aspect Oriented Requirement engineering

Model for conflict resolution in aspects within Aspect Oriented Requirement engineering Master Thesis Software Engineering Thesis no: MSE-2008-11 June 2008 Model for conflict resolution in aspects within Aspect Oriented Requirement engineering Faisal Hameed Mohammad Ejaz School of Engineering

More information

Validation of NORM (Needs Oriented Framework for Producing Requirements Decision Material) Framework in Industry

Validation of NORM (Needs Oriented Framework for Producing Requirements Decision Material) Framework in Industry Master Thesis Software Engineering Thesis no: MSE-2012:102 09 2012 Validation of NORM (Needs Oriented Framework for Producing Requirements Decision Material) Framework in Industry Salman Nazir Rizwan Yousaf

More information

CLASS/YEAR: II MCA SUB.CODE&NAME: MC7303, SOFTWARE ENGINEERING. 1. Define Software Engineering. Software Engineering: 2. What is a process Framework? Process Framework: UNIT-I 2MARKS QUESTIONS AND ANSWERS

More information

ASSET MANAGEMENT SYSTEMS ANALYSIS

ASSET MANAGEMENT SYSTEMS ANALYSIS ASSET MANAGEMENT SYSTEMS ANALYSIS Goran Kolevski, Marjan Gusev (goran.kolevski@gmail.com, marjangusev@gmail.com) Institute of Informatics Faculty of Natural Sciences and Mathematics University Ss Cyril

More information

Measuring and Improving Process Capabilities Best Practices

Measuring and Improving Process Capabilities Best Practices Measuring and Improving Process Capabilities Best Practices Jyoti M Bhat, (mailto:jyotimb@infy.com) Anoop Kumar (mailto:anoop_kumar@infy.com) Infosys Technologies Limited Electronics City, Bangalore 561

More information

An Assessment Process for Software Reuse

An Assessment Process for Software Reuse Association for Information Systems AIS Electronic Library (AISeL) AMCIS 1996 Proceedings Americas Conference on Information Systems (AMCIS) 8-16-1996 An Assessment Process for Software Reuse Catherine

More information

Implementing a Software Verification and Validation Management Framework in the Space Industry BOGDAN MARCULESCU

Implementing a Software Verification and Validation Management Framework in the Space Industry BOGDAN MARCULESCU Implementing a Software Verification and Validation Management Framework in the Space Industry Master of Science Thesis Software Engineering and Technology BOGDAN MARCULESCU Chalmers University of Technology

More information

TECHNOLOGY BRIEF Intapp and Applied AI. THE INTAPP PROFESSIONAL SERVICES PLATFORM Unified Client Life Cycle

TECHNOLOGY BRIEF Intapp and Applied AI. THE INTAPP PROFESSIONAL SERVICES PLATFORM Unified Client Life Cycle TECHNOLOGY BRIEF Intapp and Applied AI Technology assisted decision-making for professional services firms Professional services firms are struggling to extract valuable insights from their data, hindered

More information

Mojisola O. Odewole Osun State University Library, Osogbo, P. M. B. 4494, Osogbo, Osun State, Nigeria

Mojisola O. Odewole Osun State University Library, Osogbo, P. M. B. 4494, Osogbo, Osun State, Nigeria The Role of a Librarian in Using Social Media Tools to Promote the Research Output of HIS/ HER Clienteles Mojisola O. Odewole Osun State University Library, Osogbo, P. M. B. 4494, Osogbo, Osun State, Nigeria

More information

Evidence Management for the COBIT 5 Assessment Programme By Jorge E. Barrera N., CISA, CGEIT, CRISC, COBIT (F), ITIL V3F, PMP

Evidence Management for the COBIT 5 Assessment Programme By Jorge E. Barrera N., CISA, CGEIT, CRISC, COBIT (F), ITIL V3F, PMP Volume 3, July 2013 Come join the discussion! Jorge E. Barrera N. will respond to questions in the discussion area of the COBIT 5 Use It Effectively topic beginning 22 July 2013. Evidence Management for

More information

A Study on Factors Affecting Maintainability and Maintainability Models

A Study on Factors Affecting Maintainability and Maintainability Models A Study on s Affecting Maintainability and Maintainability Models Deepa N 1, P. V. Indu Bhanu 2, C. S. Kausthubhi 3, M Sai Sriya 4 1,2,3,4 School of Information Technology & Engineering, VIT University

More information

Do Not Call" Correspondence Management System

Do Not Call Correspondence Management System Do Not Call" Correspondence Management System Executive Summary More than 34 million people live in the State of California representing 12.5 percent of the entire United States population. Under the auspices

More information

Service Identification: BPM and SOA Handshake

Service Identification: BPM and SOA Handshake Service Identification: Srikanth Inaganti & Gopala Krishna Behara Abstract Service identification is one of the first steps in the Service Oriented Development life cycle. This has been challenging to

More information

Towards Systematic Software Reuse in Certifiable Safety-Critical Systems

Towards Systematic Software Reuse in Certifiable Safety-Critical Systems Towards Systematic Software Reuse in Certifiable Safety-Critical Systems Mikael Åkerholm 1,2, Rikard Land 1,2 1 Mälardalen University, School of Innovation, Design and Engineering, Västerås, Sweden 2 CC

More information

COGNITIVE QA: LEVERAGE AI AND ANALYTICS FOR GREATER SPEED AND QUALITY. us.sogeti.com

COGNITIVE QA: LEVERAGE AI AND ANALYTICS FOR GREATER SPEED AND QUALITY. us.sogeti.com COGNITIVE QA: LEVERAGE AI AND ANALYTICS FOR GREATER SPEED AND QUALITY ARTIFICIAL INTELLIGENCE vs. COGNITIVE COMPUTING Build a system that can generally perform any intellectual task so called Strong AI

More information

Project Plan. CxOne Guide

Project Plan. CxOne Guide Project Plan CxOne Guide CxGuide_ProjectPlan.doc November 5, 2002 Advancing the Art and Science of Commercial Software Engineering Contents 1 INTRODUCTION... 1 1.1 DELIVERABLE PURPOSE... 1 1.2 LIFECYCLE...

More information

Book Outline. Software Testing and Analysis: Process, Principles, and Techniques

Book Outline. Software Testing and Analysis: Process, Principles, and Techniques Book Outline Software Testing and Analysis: Process, Principles, and Techniques Mauro PezzèandMichalYoung Working Outline as of March 2000 Software test and analysis are essential techniques for producing

More information

Tassc:Estimator technical briefing

Tassc:Estimator technical briefing Tassc:Estimator technical briefing Gillian Adens Tassc Limited www.tassc-solutions.com First Published: November 2002 Last Updated: April 2004 Tassc:Estimator arrives ready loaded with metric data to assist

More information

Guidelines for SCM Theses

Guidelines for SCM Theses Guidelines for SCM Theses Introduction In addition to fulfilling the written examination requirements for certification as a SABSA Chartered Master (SCM), each candidate must submit a 10,000 25,000 word

More information

Avoiding Knowledge Management Pitfalls. Ten Common Mistakes and How to Avoid Them

Avoiding Knowledge Management Pitfalls. Ten Common Mistakes and How to Avoid Them Avoiding Knowledge Management Pitfalls Ten Common Mistakes and How to Avoid Them Table of Contents Introduction... 1 1. Failure to Set and Track Specific Goals... 1 2. Doing Too Much at Once... 2 3. Starting

More information

Computational Complexity and Agent-based Software Engineering

Computational Complexity and Agent-based Software Engineering Srinivasan Karthikeyan Course: 609-22 (AB-SENG) Page 1 Course Number: SENG 609.22 Session: Fall, 2003 Course Name: Agent-based Software Engineering Department: Electrical and Computer Engineering Document

More information

Darshan Institute of Engineering & Technology for Diploma Studies

Darshan Institute of Engineering & Technology for Diploma Studies RESPONSIBILITY OF SOFTWARE PROJECT MANAGER Job responsibility Software project managers take the overall responsibility of project to success. The job responsibility of a project manager ranges from invisible

More information

Testing of Web Services A Systematic Mapping

Testing of Web Services A Systematic Mapping Testing of Web Services A Systematic Mapping Abhishek Sharma, Theodore D. Hellmann, Frank Maurer Department of Computer Science University of Calgary Calgary, Canada {absharma, tdhellma, frank.maurer}@ucalgary.ca

More information

The Landscape Architecture Body of Knowledge study was

The Landscape Architecture Body of Knowledge study was Description of the Study 2 The Landscape Architecture Body of Knowledge study was designed to address two questions: 1. What are the core competencies shared by the profession in general that help define

More information

Concepts of Project Management. All projects have followings.

Concepts of Project Management. All projects have followings. Concepts of Project Management All projects have followings. An overall goal A project manager Individual tasks to be performed Timing for those tasks to be completed (such as three hours, three days,

More information

Document Automation with ActiveDocs

Document Automation with ActiveDocs Document Automation with ActiveDocs www.activedocs.com Why ActiveDocs? ActiveDocs is an enterprise document automation and compliance suite, available in the cloud or on-premise. It helps you create better

More information

Software Inspections and Their Role in Software Quality Assurance

Software Inspections and Their Role in Software Quality Assurance American Journal of Software Engineering and Applications 2017; 6(4): 105-110 http://www.sciencepublishinggroup.com/j/ajsea doi: 10.11648/j.ajsea.20170604.11 ISSN: 2327-2473 (Print); ISSN: 2327-249X (Online)

More information

Chapter 10 CONCLUSIONS

Chapter 10 CONCLUSIONS Chapter 10 CONCLUSIONS Customization is a continuously growing business trend that aims at providing customers with individualized goods and services. In dynamic business environments, it is even a necessary

More information

Introduction to Software Engineering

Introduction to Software Engineering CHAPTER 1 Introduction to Software Engineering Structure 1.1 Introduction Objectives 1.2 Basics of Software Engineering 1.3 Principles of Software Engineering 1.4 Software Characteristics 1.5 Software

More information

Seminar report E-Intelligence Submitted in partial fulfillment of the requirement for the award of degree Of MCA

Seminar report E-Intelligence Submitted in partial fulfillment of the requirement for the award of degree Of MCA A Seminar report On E-Intelligence Submitted in partial fulfillment of the requirement for the award of degree Of MCA SUBMITTED TO: www.studymafia.org SUBMITTED BY: www.studymafia.org Preface I have made

More information

Spiral Increment Reuse (SIR) Software Model

Spiral Increment Reuse (SIR) Software Model ISSN (Online): 2409-4285 www.ijcsse.org Page: 5-10 Spiral Increment Reuse (SIR) Software Model A. SANJAY KUMAR 1, B. Dr. RAHUL RISHI 2 and C. Dr. RAJKUMAR 3 1 University Campus School, MDU, Rohtak, India

More information

Information and Software Technology

Information and Software Technology Information and Software Technology 52 (2010) 463 479 Contents lists available at ScienceDirect Information and Software Technology journal homepage: www.elsevier.com/locate/infsof Does the technology

More information

Soa Readiness Assessment, a New Method

Soa Readiness Assessment, a New Method ISSN : 8-96, Vol., Issue 8( Version ), August 0, pp.- RESEARCH ARTICLE OPEN ACCESS Soa Readiness Assessment, a New Method Ali Mirarab, Najmeh Ghasemi Fard and Abdol Reza Rasouli Kenari Electrical and Computer

More information

Enterprise Data Discovery

Enterprise Data Discovery 1 Enterprise Data Discovery TM Actify Centro provides a powerful platform for discrete manufacturers to deliver a centralized and unified view of product data for effective project management that s both

More information

Performance management using Influence Diagrams: The case of improving procurement

Performance management using Influence Diagrams: The case of improving procurement Performance management using Influence Diagrams: The case of improving procurement Mohammad Hassan Abolbashari, Elizabeth Chang and Omar Khadeer Hussain School of Business University of New South Wales

More information

The i Competency Dictionary Framework for IT Engineering Education

The i Competency Dictionary Framework for IT Engineering Education The i Competency Dictionary Framework for IT Engineering Education Eiji Hayashiguchi IT Human Resource Development Information-technology Promotion Agency, Japan (IPA) Tokyo, Japan ei-haya@ipa.go.jp Osamu

More information

SOFTWARE PRODUCT LINES: A RESEARCH INFRASTRUCTURE. John D. McGregor Clemson University

SOFTWARE PRODUCT LINES: A RESEARCH INFRASTRUCTURE. John D. McGregor Clemson University SOFTWARE PRODUCT LINES: A TECHNIQUE FOR BUILDING A RESEARCH INFRASTRUCTURE John D. McGregor Clemson University Motivation Faculty and students develop a large amount of software For faculty this is an

More information

The analysis and design based on fusion process model

The analysis and design based on fusion process model Available online www.jocpr.com Journal of Chemical and Pharmaceutical Research, 2014, 6(5):2003-2007 Research Article ISSN : 0975-7384 CODEN(USA) : JCPRC5 The analysis and design based on fusion process

More information

Comparative Selection of Requirements Validation Techniques Based on Industrial Survey

Comparative Selection of Requirements Validation Techniques Based on Industrial Survey Master Thesis Computer Science Thesis no: MSC-2010:18 December 2009 Comparative Selection of Requirements Validation Techniques Based on Industrial Survey Latif Hussain Sulehri Department of Interaction

More information

Role of Agile Methods in Global Software Development

Role of Agile Methods in Global Software Development Harrisburg University of Science and Technology Digital Commons at Harrisburg University Dissertations and Theses Project Management (PMGT) 8-2017 Role of Agile Methods in Global Software Development Dinesh

More information

Displaying Bivariate Numerical Data

Displaying Bivariate Numerical Data Price ($ 000's) OPIM 303, Managerial Statistics H Guy Williams, 2006 Displaying Bivariate Numerical Data 250.000 Price / Square Footage 200.000 150.000 100.000 50.000 - - 500 1,000 1,500 2,000 2,500 3,000

More information

Multi Agent System-Based on Case Based Reasoning for Cloud Computing System

Multi Agent System-Based on Case Based Reasoning for Cloud Computing System Multi Agent System-Based on Case Based Reasoning for Cloud Computing System Amir Mohamed Talib and Nour Eldin Mohamed Elshaiekh Faculty of Computer Science, Software Engineering Department, Future University,

More information

SMART AUTOMATION: ALLOWING THE MODERN ENTERPRISE TO SURVIVE AND THRIVE

SMART AUTOMATION: ALLOWING THE MODERN ENTERPRISE TO SURVIVE AND THRIVE /automation SMART AUTOMATION: ALLOWING THE MODERN ENTERPRISE TO SURVIVE AND THRIVE EOIN WOODS CTO ENDAVA CONTENTS 1 INTRODUCTION 04 2 WHY SMART AUTOMATION? 05 3 AUTOMATION THE UNFULFILLED PROMISE 07 4

More information

HOW TO USE LINKEDIN TO GENERATE LEADS

HOW TO USE LINKEDIN TO GENERATE LEADS HOW TO USE LINKEDIN TO GENERATE LEADS Generating leads is one of the biggest challenges that most businesses face today. LinkedIn is often an under utilised tool to help tackle that problem BEFORE WE GET

More information

IT portfolio management template User guide

IT portfolio management template User guide IBM Rational Focal Point IT portfolio management template User guide IBM Software Group IBM Rational Focal Point IT Portfolio Management Template User Guide 2011 IBM Corporation Copyright IBM Corporation

More information

Managing Project Risks

Managing Project Risks The Project Reality As per The Standish Group report released in 1994 only 16% of all IT projects attempted successfully occur within the "triple constraint" of cost, time, and user requirements. While

More information

Scaling Up Requirements Engineering Exploring the Challenges of Increasing Size and Complexity in Market- Driven Software Development

Scaling Up Requirements Engineering Exploring the Challenges of Increasing Size and Complexity in Market- Driven Software Development Scaling Up Requirements Engineering Exploring the Challenges of Increasing Size and Complexity in Market- Driven Software Development Krzysztof Wnuk 1, Björn Regnell 1, Brian Berenbach 2, 1 Department

More information

PROCESS LED TRANSFORMATION & SUSTAINABILITY

PROCESS LED TRANSFORMATION & SUSTAINABILITY PROCESS LED TRANSFORMATION & SUSTAINABILITY BUSINESS PROCESS MANAGEMENT USE CASE IMPRIVA Inc. 101A Clay St. #196 San Francisco, CA 94111 877.838.9714 www.impriva.com US Content Pain Point 3 Key Terms 3

More information

Requirements Analysis and Design Definition. Chapter Study Group Learning Materials

Requirements Analysis and Design Definition. Chapter Study Group Learning Materials Requirements Analysis and Design Definition Chapter Study Group Learning Materials 2015, International Institute of Business Analysis (IIBA ). Permission is granted to IIBA Chapters to use and modify this

More information

Case Study: Aligning Customer Experience with Business Architecture

Case Study: Aligning Customer Experience with Business Architecture Case Study: Aligning Customer Experience with Business Architecture Author: Chris Coumbe Title: Senior Business Architect Date: 2018-03-21 Abstract This paper describes how Autodesk used a Customer Experience

More information

Solutions Manual. Object-Oriented Software Engineering. An Agile Unified Methodology. David Kung

Solutions Manual. Object-Oriented Software Engineering. An Agile Unified Methodology. David Kung 2 David Kung Object-Oriented Software Engineering An Agile Unified Methodology Solutions Manual 3 Message to Instructors July 10, 2013 The solutions provided in this manual may not be complete, or 100%

More information

TABLE OF CONTENTS OBJECTIVE... 2 MARKET DRIVERS... 2 PROBLEM DEVELOPMENT... 2 A GENERIC INTRODUCTION TO THE SOLUTION... 3 BENEFITS... 3 EXAMPLES...

TABLE OF CONTENTS OBJECTIVE... 2 MARKET DRIVERS... 2 PROBLEM DEVELOPMENT... 2 A GENERIC INTRODUCTION TO THE SOLUTION... 3 BENEFITS... 3 EXAMPLES... TABLE OF CONTENTS OBJECTIVE... 2 MARKET DRIVERS... 2 PROBLEM DEVELOPMENT... 2 A GENERIC INTRODUCTION TO THE SOLUTION... 3 BENEFITS... 3 EXAMPLES... 4 Document created and owned by Lakshmi Page 1 of 8 Objective

More information

Chapter 16 Software Reuse. Chapter 16 Software reuse

Chapter 16 Software Reuse. Chapter 16 Software reuse Chapter 16 Software Reuse 1 Topics covered What is software reuse? Benefit and problems with reuse. The reuse landscape Application frameworks Software product lines COTS product reuse 2 Software reuse

More information

International Journal of Software and Web Sciences (IJSWS) Optimal solution of software component selection by using software metric

International Journal of Software and Web Sciences (IJSWS)  Optimal solution of software component selection by using software metric International Association of Scientific Innovation and Research (IASIR) (An Association Unifying the Sciences, Engineering, and Applied Research) ISSN (Print): 2279-0063 ISSN (Online): 2279-0071 International

More information

Tech-Clarity Insight: Engineering Reference Information in a PLM Strategy. Empowering Speed, Efficiency, and Quality in Engineering

Tech-Clarity Insight: Engineering Reference Information in a PLM Strategy. Empowering Speed, Efficiency, and Quality in Engineering Tech-Clarity Insight: Engineering Reference Information in a PLM Strategy Empowering Speed, Efficiency, and Quality in Engineering Tech-Clarity, Inc. 2009 Table of Contents Table of Contents... 2 Executive

More information

ARCHITECTURE specifications and models [120] are used to

ARCHITECTURE specifications and models [120] are used to 658 IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. 39, NO. 5, MAY 2013 Software Architecture Optimization Methods: A Systematic Literature Review Aldeida Aleti, Barbora Buhnova, Lars Grunske, Anne Koziolek,

More information

Hierarchy Based Reusability Assessment Model for Component Qualification in Reusable Verification Environment

Hierarchy Based Reusability Assessment Model for Component Qualification in Reusable Verification Environment Hierarchy Based Reusability Assessment Model for Qualification in Reusable Verification Environment Dr. V. Subedha,Professor & Head Department of CSE Panimalar Institute of Technology Chennai, India subedha@gmail.com

More information

Anatomy of Excellence Development

Anatomy of Excellence Development Anatomy of Excellence Development Denis Duka, Lovre Hribar Ericsson Nikola Tesla Poljicka cesta 39, Split, Croatia E-mail: denis.duka@ericsson.com Abstract: The Anatomy of Excellent Development (AED) is

More information

HYBRID APPROACH. Software Development Approaches. Agile. Rapid. Waterfall

HYBRID APPROACH. Software Development Approaches. Agile. Rapid. Waterfall Agile Rapid Waterfall ABSTRACT There are several approaches for software development and each separate approach has its own pros and cons, so, hybrid approach maximizes their strengths and reduces their

More information

A METHOD TO SUPPORT SMES TO OPTIMIZE THEIR MANUFACTURING OPERATIONS

A METHOD TO SUPPORT SMES TO OPTIMIZE THEIR MANUFACTURING OPERATIONS A METHOD TO SUPPORT SMES TO OPTIMIZE THEIR MANUFACTURING OPERATIONS Degryse Kris, Desmarey Thierry, Cottyn Johannes Department of Industrial Sciences, University College West Flanders Graaf Karel de Goedelaan

More information

ASSESSING REUSABILITY IN AUTOMATED ACCEPTANCE TESTS

ASSESSING REUSABILITY IN AUTOMATED ACCEPTANCE TESTS ASSESSING REUSABILITY IN AUTOMATED ACCEPTANCE TESTS Mohsin Irshad Blekinge Institute of Technology Licentiate Dissertation Series No. 2018:01 Department of Software Engineering Assessing Reusability In

More information

A Systematic Approach to Performance Evaluation

A Systematic Approach to Performance Evaluation A Systematic Approach to Performance evaluation is the process of determining how well an existing or future computer system meets a set of alternative performance objectives. Arbitrarily selecting performance

More information

II. INFORMATION NEEDS ASSESSMENT: A TOP-DOWN APPROACH

II. INFORMATION NEEDS ASSESSMENT: A TOP-DOWN APPROACH II. INFORMATION NEEDS ASSESSMENT: A TOP-DOWN APPROACH The challenge: Know thy market. Your market has many constituencies, with many distinct information needs.. With changes in the marketplace occurring

More information

IBM WebSphere Service Registry and Repository V6.1 optimizes the business value of SOA governance

IBM WebSphere Service Registry and Repository V6.1 optimizes the business value of SOA governance IBM Europe Announcement ZP07-0401, dated October 9, 2007 IBM WebSphere Service Registry and Repository V6.1 optimizes the business value of SOA governance Description...2 Product positioning... 4 At a

More information

Product Requirements Documentation: Use Cases

Product Requirements Documentation: Use Cases Product Documentation: Use Cases Software Engineering and Databases Group Department of Computer Languages and Systems University of Seville November 2013 Learning objectives Know the use cases technique.

More information

Environmental Scan Process

Environmental Scan Process CADTH Environmental Scan Process May 2015 Version 1.0 REVISION HISTORY Periodically, this document will be revised as part of ongoing process improvement activities. The following version control table,

More information

What is ITIL 4. Contents

What is ITIL 4. Contents What is ITIL 4 Contents What is ITIL and why did ITIL need to evolve?... 1 Key Concepts of Service Management... 1 The Nature of Value... 2 How Value Creation Is Enabled Through Services... 2 Key Concepts

More information

What s in the Code Unraveling the Enigma of Legacy Systems. logical solutions. adjusted to the need

What s in the Code Unraveling the Enigma of Legacy Systems. logical solutions. adjusted to the need What s in the Code Unraveling the Enigma of Legacy Systems logical solutions adjusted to the need Wouldn t it be brilliant to have a logical solution to: IDENTIFY SERVICES: Start with your business analysis,

More information

This document describes the overall software development process of microcontroller software during all phases of the Company Name product life cycle.

This document describes the overall software development process of microcontroller software during all phases of the Company Name product life cycle. Maturity Process Owner Check Release Description Valid Name / Department Name / Department Name / Department Detailed procedure for software development Title: Software Development Procedure Purpose: This

More information

ON THE USE OF BASE CHOICE STRATEGY FOR TESTING INDUSTRIAL CONTROL SOFTWARE

ON THE USE OF BASE CHOICE STRATEGY FOR TESTING INDUSTRIAL CONTROL SOFTWARE School of Innovation Design and Engineering Västerås, Sweden Thesis for the Degree of Bachelor of Science in Computer Science 15.0 credits ON THE USE OF BASE CHOICE STRATEGY FOR TESTING INDUSTRIAL CONTROL

More information

Product Design and Development Dr. Inderdeep Singh Department of Mechanical and Industrial Engineering Indian Institute of Technology, Roorkee

Product Design and Development Dr. Inderdeep Singh Department of Mechanical and Industrial Engineering Indian Institute of Technology, Roorkee Product Design and Development Dr. Inderdeep Singh Department of Mechanical and Industrial Engineering Indian Institute of Technology, Roorkee Lecture - 06 Value Engineering Concepts [FL] welcome to the

More information

Chapter 16 Software Reuse. Chapter 16 Software reuse

Chapter 16 Software Reuse. Chapter 16 Software reuse Chapter 16 Software Reuse 1 Topics covered The reuse landscape Application frameworks Software product lines COTS product reuse 2 Software reuse In most engineering disciplines, systems are designed by

More information

BUSINESS PROGRAMS UNDERGRADUATE PURPOSE 7 HANDBOOK. Managing Capital Markets. School of Management, Business Programs

BUSINESS PROGRAMS UNDERGRADUATE PURPOSE 7 HANDBOOK. Managing Capital Markets. School of Management, Business Programs BUSINESS PROGRAMS UNDERGRADUATE PURPOSE 7 HANDBOOK Managing Capital Markets School of Management, Business Programs Updated: June 2011 Contents OVERVIEW OF THE PURPOSE Purpose Deliverables, Competencies

More information

CHAPTER 7 SOA DEVELOPMENT LIFECYCLE SE 458 SERVICE ORIENTED ARCHITECTURE

CHAPTER 7 SOA DEVELOPMENT LIFECYCLE SE 458 SERVICE ORIENTED ARCHITECTURE CHAPTER 7 SOA DEVELOPMENT LIFECYCLE SE 458 SERVICE ORIENTED ARCHITECTURE Assist. Prof. Dr. Volkan TUNALI Faculty of Engineering and Natural Sciences / Maltepe University Topics 2 SOA Design & Development

More information

7. What is planning? It is an act of formulating a program for a definite course of action. Planning is to decide what is to be done.

7. What is planning? It is an act of formulating a program for a definite course of action. Planning is to decide what is to be done. UNIT I FUNDAMENTALS 2 MARKS QUESTIONS & ANSWERS 1. What is software project management? Software project management is the art and science of planning and leading software projects. It is sub discipline

More information

http://www.diva-portal.org This is the published version of a paper presented at Proceedings 19th International Conference on Evaluation and Assessment in Software Engineering (EASE 2015), Nanjing, China,

More information

Chapter 1. NetSuite provides all the tools you need to do the following:

Chapter 1. NetSuite provides all the tools you need to do the following: Chapter 1 Peeking Under the NetSuite Hood In This Chapter Understanding your most important data Turning leads into profits Examining NetSuite OneWorld Why NetSuite? The simple answer is that it s a one-stop

More information

Passit4Sure.OG Questions. TOGAF 9 Combined Part 1 and Part 2

Passit4Sure.OG Questions. TOGAF 9 Combined Part 1 and Part 2 Passit4Sure.OG0-093.221Questions Number: OG0-093 Passing Score: 800 Time Limit: 120 min File Version: 7.1 TOGAF 9 Combined Part 1 and Part 2 One of the great thing about pass4sure is that is saves our

More information

Reusability Types and Reuse Metrics: A Survey

Reusability Types and Reuse Metrics: A Survey Reusability Types and Reuse Metrics: A Survey Aditi Dubey Department of CSE, Lovely Professional Univers 144411, Punjab, India Harleen Kaur Department of CSE, Lovely Professional Univers 144411, Punjab,

More information

Data Analytics on a Yelp Data Set. Maitreyi Tata. B.Tech., Gitam University, India, 2015 A REPORT

Data Analytics on a Yelp Data Set. Maitreyi Tata. B.Tech., Gitam University, India, 2015 A REPORT Data Analytics on a Yelp Data Set by Maitreyi Tata B.Tech., Gitam University, India, 2015 A REPORT submitted in partial fulfillment of the requirements for the degree MASTER OF SCIENCE Department of Computer

More information

Software Reuse. Ian Sommerville 2006 MSc module: Advanced Software Engineering Slide 1

Software Reuse. Ian Sommerville 2006 MSc module: Advanced Software Engineering Slide 1 Software Reuse Ian Sommerville 2006 MSc module: Advanced Software Engineering Slide 1 Objectives To explain the benefits of software reuse and some reuse problems To discuss several different ways to implement

More information

Defect Prediction: Using Machine Learning

Defect Prediction: Using Machine Learning Defect Prediction: Using Machine Learning Kirti Hegde, Consultant Trupti Songadwala, Senior Consultant Deloitte Abstract Defect prediction using machine learning serves to improve the software quality

More information

Applying Multi-Criteria Decision Analysis for Software Quality Assessment

Applying Multi-Criteria Decision Analysis for Software Quality Assessment Master Thesis Software Engineering Thesis no: MSE-2010-34 October 2010 Applying Multi-Criteria Decision Analysis for Software Quality Assessment - Systematic Review and Evaluation of Alternative MCDA Methods

More information

Taxonomy Development for Knowledge Management

Taxonomy Development for Knowledge Management Taxonomy Development for Knowledge Management Date : 24/07/2008 Mary Whittaker Librarian Boeing Library Services The Boeing Company PO Box 3707 M/C 62-LC Seattle WA 98124 +1-425-306-2086 +1-425-965-0119

More information

The Impact of Big Data and Social Networking for Decision making

The Impact of Big Data and Social Networking for Decision making ISSN 2278 0211 (Online) The Impact of Big Data and Social Networking for Decision making Syeda Sirin Sahnaz School of Computing Sciences, Kaziranga University, Assam, India Sandip Rakshit School of Computing

More information

Plug and Play Product Catalog Publishing Accelerates Launching New Services

Plug and Play Product Catalog Publishing Accelerates Launching New Services Customer Management Solutions White Paper Plug and Play Product Catalog Publishing Accelerates Launching New Services An Effective Alternative to Converging Product Catalogs Summary Today communication

More information

GPS-Android based Location Tracking System for Public Transportation (TrackIT) R.R.Vithanage B

GPS-Android based Location Tracking System for Public Transportation (TrackIT) R.R.Vithanage B GPS-Android based Location Tracking System for Public Transportation (TrackIT) R.R.Vithanage 149233B Faculty of Information Technology University of Moratuwa May 2017 GPS-Android based Location Tracking

More information

Information and Software Technology

Information and Software Technology Information and Software Technology 55 (2013) 428 441 Contents lists available at SciVerse ScienceDirect Information and Software Technology journal homepage: www.elsevier.com/locate/infsof Constraints

More information