Clone Detection in a Product Line Context

نویسندگان

  • Thilo Mende
  • Felix Beckwermert
چکیده

Software Product Lines (SPL) can be used to create and maintain different variants of software-intensive systems by explicitly managing variability. Often, SPLs are organized as an SPL core, common to all products, upon which product-specific components are built. Following the so called grow-and-prune model, SPLs may be evolved by copy&paste at large scale. New products are created from existing ones and existing products are enhanced with functionalities specific to other products by copying and pasting code between product-specific code. To regain control of this unmanaged growth, such code may be pruned, that is, identified and refactored into core components upon success. Clone detection offers effective means to identify duplicated source code. However, variablity in product lines, especially when targeting embedded devices, is often implemented using a preprocessor. This limits the applicable clone detection techniques to ones with lower precision. We describe how information about function locations can be used to improve the results of these token-based clone detectors.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Application of a Cost-Driven Optimization Method in Beer Brewing Process

The final quality and cost of a manufactured product are determined to a large extent by the engineering design of the product and its production process through activities of off-line quality control methods, namely, System Design, Parameter Design and Tolerance Design. However, in the context of most non-industrialized countries, the off-line quality activities of product design and system de...

متن کامل

Using Clone Detection to Manage a Product Line

Clone detection finds code in large software systems that has been replicated and modified by hand. Remarkably, clone detection works because people copy conceptually identifiable blocks of code, and make only a few changes, which means the same syntax is detectably repeated. Each identified clone thus indicates the presence of a useful problem domain concept, and simultaneously provides an exa...

متن کامل

Monoclonal Antibody Production Against Vimentin by Whole Cell Immunization in a Mouse Model

Background: Pancreatic carcinoma is the fourth-leading cause of cancer death in the United States and due to its late presentation, only few patients would be candidates for the curative treatment of pancreactomy. Monoclonal antibodies have brought hope to targeted therapy.Objectives: To identify new biomarkers, a panel of monoclonal antibodies was genera...

متن کامل

کلونینگ cDNA فاکتور VII انعقادی حاصل از رده سلولی هپاتوما

Abstract Background: Factor VII, is a coagulant protease it begins the proteolytic cascade reactions and produces thrombin. The use of recombinant human factor VII, (rhFVII) is effective for the treatment of patients with hemophilia A or B. It is a target for gene therapy. This study was done to clone factor VII from HepG2 cell line. Methods: RNA was extracted from the hepatoma, (HepG2), ...

متن کامل

Reengineering towards Product Lines

Software product lines often arise from a set of variants of a common code basis that have been individually adapted to a particular requirement variability. This ad-hoc and unplanned approach causes serious maintenance problems. Migrating such variants into an organized software product line promises better maintainability. In this talk, I shall outline our 3-year research program aiming at co...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2008