FrancoisMentec / OpenCompare2

https://opencompare.org/
3 stars 4 forks source link

Agressive conversion of strings into dates with CSV #3

Open FAMILIAR-project opened 6 years ago

FAMILIAR-project commented 6 years ago

Hi,

The CSV (pasted below) is wrongly handled at some points. It seems that when a number like 2013 or 2012 appears in the cell value, then it is considered as a date. It is a bit agressive and worse we lose the original, raw content.

Specifically, "Acher et al. 2012" is treated as a date (01/01/2012) and we lose the "Acher et al." information :(

Informations : source: https://opencompare.org/pcm/59b645111ce2640a4802dfb6

"Name","Publications using it","Original publication of the system","Websites","Brief description","Origin","Available","Type of artefact","Detailed type of artefact","Used in which activities","Easy to reproduce","Strategies used to tackle the problem","Free comments","Number of variants","Max. number of variants in the case of generation","Average size","Min. size","Max. size","How the variants are generated","Are the variants created independently?","Number of features","Number of optional features","List of feature names available","How these features were identified and named?","Information of which features are implemented in each variant?","Feature implemented independently in different variants","Feature with modifications from one variant to another","2-wise coverage of the features in the variants","Feature-based jaccard index (similarity)","Ground-truth for feature location","Precision and recall reported for feature location","Ground-truth for feature constraints discovery","Reported results for feature constraints discovery","Features with cross-cutting behavior","Semantic feature constraints (not only structural)","Constraints degree? Requires or excludes (degree 2)","Group of features, Alternative","Group of features, Or","Abstract features","Derivative features due to feature interactions or feature negations","Stakeholders views of the var model mentioned","Ground-truth for feature model synthesis","Reported results for feature model synthesis","RGround-truth for reusable assets extraction","Reported results for reusable assets extraction","Testing assets","Execution traces","Domain ontology","Version control history","Documentation","Human effort mentioned","Costs or cost model mentioned","PLA Reference Architecture available?" "Airbag","Schulze et al. 2013","","","Adding variability to functional safety models. Derivation of variant specific functional safety models.","Academic","No","Model","Architecture model (medini model artefacts)","SPL implementation","","","","N/A","8","","","","","","9","3","Yes, in a screenshot of the paper","Manually by the authors after analysing the airbag domain","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Alcatel-Lucent IXM-PF","Zhang et al. 2011","","","""A telecom software product family [...] has been developed and maintained for more than ten years in Alcatel-Lucent"" then they decided to iteratively extract an SPL from their variants","Industrial","No","Source code","C and C++","Feature identification, feature location, feature model synthesis, reusable assets construction","No","Manual, reengineering","","","","10 M LOC, 300 to 400 modules","","","""Over time, new products were developed by branching and adapting from selected ancestors in an ad-hoc way. Furthermore, variant products were maintained separately.""","","Not mentioned","","","","","","","","","","","","","","","","","","","","""Various kinds of stakeholders are involved in the product family"" Marketing and sales persons, architects, senior managers","","","","","","","","","","""The IXM-PF reengineering project achieved initial success after one and a half years. It should be noted that the same team was responsible for the regular maintenance and delivery of related products during this time period.""","","" "algorithms.js","Rodriguez Santos et al. SPLC 2016","Silva et al. SANER 2015","The original system: Qualitas.js Dataset The extracted SPLs: Github","Some characteristic in the ""features list"" of the open-source (sometimes available in the project web site) were extracted from a single product. Then a feature model and SPL were created. The objective was to show RIPLE-HC capability to implement javascript SPLs.","Open source","Yes","Source code","Javascript","Feature identification, Feature location, Feature Model Synthesis, Reusable assets construction","No","Manual feature identification and extraction.","","1","","1549 LOC, 29 Modules","","","","","28","","Yes","Manually from project descriptions","","","","","","Information in the manually extracted reusable assets","","Yes","","No","","2","Yes","Yes","Yes","","No","Yes","","Yes","Syntactically valid. Behavior was not checked.","","","","","","","","" "AndroZoo","Li et al. SPLC 2016","Allix et al. MSR 2016","Androzoo","""AndroZoo is a growing collection of Android Applications collected from several sources, including the official Google Play app market. "". It was used for the identification of families in large repositories.","Public Repository","Yes, asking for a access key","Source code","Java","Feature identification","No","Source code similarity","We cannot consider the content of AndroZoo as variants. It contains 5,546,302 different APKs","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "ApacheWeb Server","Linsbauer et al. 2014","","Authors mention these websites but it is not found link, link and link","","Open source","Not found","Variability model","Feature model","Feature model synthesis","No","Genetic algorithms","","1","","10 features","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "ArgoUML","Vinicius Couto CSMR 2011","","Github","This is the work that created the ArgoUML SPL.","Open source","Yes","Source code","Java","Feature identification, feature location, feature model synthesis, reusable assets construction","Manual","Reusable assets using conditional compilation","","1","N/A","120 KLOC","","","","","11","8","Yes","Manual, ""features have been selected because they represent relevant functional requirements""","","","","","","Yes","","Yes","","Yes, it was intentional to extract features with cross-cutting behavior","No","2","No","No","No","No","","Yes","","Yes, 150% system with Java-pp annotations","","Yes","N/A","N/A","N/A","N/A","","","" "ArgoUML UML","Martinez et al. ASE 2015","Vinicius Couto CSMR 2011","BUT4Reuse examples","The variants of ArgoUML SPL as UML models. Only the variants Original and then each other variant with a diagram disabled.","Open source","Yes","Model","UML class model","Feature identification","Yes","Formal context analysis","","7 used in the paper but 9 available","N/A","51,087 classes, 77,519 attributes, 28,885 references","50,349 classes, 76,417 attributes, 28,465 references","51,418 classes, 78,046 attributes, 29,071 references","UML class models reverse engineered from source code of variants.","No, the source code variants were derived from an SPL","7","6","Yes","In the original SPL","Yes","No","No","2","","Yes","","Yes","","No, in this case we did not use Logging nor Cognitive features of ArgoUML SPL","No","2","No","No","No","No","No","Yes","","Yes, CVL base model and resolution model (model fragments)","","","","","","","","","" "ArgoUML/SPL","Eyal-Salman et al. 2013 2013a 2013b 2013c 2014, Linsbauer et al. 2013 2014, Klatt et al. 2014, Ziadi et al. 2012, Al-Msie'Deen et al. 2013, Fischer et al. 2014","Vinicius Couto CSMR 2011","Github","A product line variant of ArgoUML. ArgoUML is an open source UML modeling tool and includes support for all standard UML 1.4 diagrams.","Open source","Yes","Source code","Java","All, feature identification and naming, feature location, feature constraints discovery, feature model synthesis and reusable assets extraction","","Formal context analysis, information retrieval","The most used case study in extractive SPL adoption according to the study Wesley et al. 2017. AL-msie'deen used 10 variants: All enabled, all disabled, and the rest are All enabled except one feature each. Similar variants are used in other studies.","N/A","256","N/A","110933 LOC","148715 LOC","SPL with java-pp annotations","","11","8","Yes","Manual by academics","Yes","No","No","N/A","N/A","Yes, annotations in the SPL","","Yes","","Yes","No","2","No","No","No","No","","Yes","","Yes, 150% system with Java-pp annotations","","Yes","N/A","N/A","N/A","N/A","","","" "Automarker systems","Niu et al. 2014, Boutkova and Houdek 2011","","","A web-based system for ""automating the process of marking first-year programming assignments"" of students","Academic","No","Requirements","Text document","Similarity, feature identification, reusable assets extraction","No","Information retrieval, natural language processing","Requirements follows the IEEE-830 standard in a textual form. Extracted reusable assets are called ""functional requirements profiles (FRPs)""","12","","40 pages long containing about 800 sentences. File size 293 kB","","","","","17 (functional requirements profiles)","","No, some of them are named in an OVM variability model.","","","","","","","","","","","","","","","","","","","","","","","","","","","","Yes, their approach was compared with manual analysis.","","" "Banking System","Martinez et al. 2014, Maâzoun et al. 2014b","","BUT4Reuse examples","Simple variants of UML class diagrams. Features are the BankCore, CurrencyConverter, WithdrawWithLimit, WithdrawWithoutLimit and Consortium.","Illustrative","Yes","Model","UML class model","Feature identification","Yes","Overlap analysis","","3","N/A","57 classes, 56 attributes, 25 references","47 classes, 47 attributes, 19 references","63 classes, 62 attributes, 29 references","Manually","No","5","4","Yes","Manually","Yes","No","No","100%","","Yes","","Yes","","No","No","2","Yes","No","No","No","No","No","","Yes","","","","","","","","","" "Baxter Biocience","Lora-Michiels et al. 2010","","","Products for hemophilia and immune disorders. "" we focused our study around all the components that constitute the packaging process of the different treatments that Baxter Bioscience produces""","Industrial","No","Documentation","Bill of materials","Feature constraints discovery","No","Association rules algorithm","","536","","","","","Different configurations of the bill of materials","No","More than 1500","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Berkeley DB","Linsbauer et al. 2014, Xue 2012, Nie et al. 2012","Berkeley DB","SPL2Go , SPLConqueror , download FH superImposition examples","Database engine SPL","Open source","Yes","Variability model","Feature model","Feature model synthesis","","Diff and merge, genetic algorithms","Nie et al. reference the SPLOT feature model repository for 2 variants of the Berkeley DB but they are not found. There is one BerkleyDB feature model there but the number of features do not correspond. Linsbauer et al. differentiate between BerkeleyDB Footprint, Memory and Performance feature models.","1 (Xue used 5 variants generated from the SPL)","","42 features (in the version at SPL2Go","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "BlueJ","Olszak and Jørgensen 2012","","BlueJ","","Open source","Yes","Source code","Java","Feature identification, Feature location, Transformation","No","Manual feature identification ""infer almost all program features from the available user documentation, since it is arranged into a list of usage scenarios. This way we have identified 127 use cases, which we have then grouped into 41 coherent groups representing features"". Automatic feature location with feature-entry-point annotations","For transformation: ""we automatically create a class-preserving decomposition, while leaving the decision about any further manual separation up to the programmers.""","1","N/A","78 KLOC","N/A","N/A","N/A","N/A","41 (39 are considered)","","Yes","Manually","","","","","","","","","","","","","","","","","","","","","","","","","","","2 hours for feature identification","","" "BMW car web configurator","Abbasi et al. 2014","","Broken link to data: link and link","The authors chose the “2013 128i Coupe” model","Industrial","Yes","Source code","Web","Feature model synthesis","No","Crawling the web configuration and extracting data patterns in the websites","","1","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Body Comfort System SPL","Wille et al. Variability Mining of State Charts","Lity et al. Delta-oriented Software Product Line Test Models - The Body Comfort System case study. Creation of the case study: Müller et al. A Comprehensive Description of a Model-based, Continous Development Process for AUTOSAR Systems with Integrated Quality Assurance. Creation of the SPL based on the system: Oster et al. Pairwise feature-interaction testing for spls: potentials and limitations. SPLC 2015","","Automotive software system SPL","Industrial","No","Model","Statechart models in IBM Rational Raphsody","Feature identification, feature location","No","Similarity analysis, merge","","18 (they used 18 of the possible ones)","11616","Around 187 based on min and max","91 elements (states, regions and transitions)","283 elements (states, regions and transitions)","Generated from the SPL","","27 (in the 18 selected variants)","","Yes","Domain experts","Yes","No","No","","","","","","","","","","Yes","Yes","","","","Yes, in the original publication","","","","","","","","","","","" "brackets","Rodriguez Santos et al. 2016","Silva et al. SANER 2015","The original system: Qualitas.js Dataset The extracted SPLs: Github","Some characteristic in the ""features list"" of the open-source (sometimes available in the project web site) were extracted from a single product and a feature model and SPL were created. The objective was to show RIPLE-HC capability to implement javascript SPLs.","Open source","Yes","Source code","Javascript","Feature identification, Feature location, Feature Model Synthesis, Reusable assets construction","No","Manual feature identification and extraction.","","1","","122971 LOC, 403 Modules","","","","","13","","Yes","Manually from project descriptions","","","","","","Information in the manually extracted reusable assets","","Yes","","No","","2","No","Yes","Yes","","No","Yes","","Yes","Syntactically valid. Behavior was not checked.","","","","","","","","" "BSH induction hob families","Ballarin et al. ICSR 2016","","","Two families of induction hobs with certain degree of reuse among them. The objective is to locate and compare the featuers of both families to find out cases where features were reimplemented, modified, adapted, unaltered or new.","Industrial","No","Model and Source code","Propietary DSL called IHDSL and C code","Feature location","No","Formal context analysis","","112 (46 of one family and 66 of another)","","","","","The variants of each of the two families are created through generation, however there are differences between the implementation of the features between the families.","Yes, they found cases of ""reimplemented"", ""modified"", ""adapted"" and ""unaltered"" features","128 (81 of one family and 47 of the other, there is no ground truth to say which ones are shared in the two families)","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "BSH induction hobs","Font et al. ICSR 2016, Font et al. Models 2016","","","Industrial variants of induction hobs from the BSH company","Industrial","No","Model","Propietary DSL called IHDSL (46 meta-classes, 74 references, 180 properties)","Feature location","No","Genetic algorithms","The approach try to deal with feature location in cases where inaccuracies are introduced by domain experts","46","","100 elements mentioned in one paper and 500 elements in other. Probably different interpretations of element.","","","Generated","No","96","","No","Manually","No","No","No","","","Yes, ""set of features properly located"" ""the oracle is extracted from a set of product models that are currently under production""","","","","","","","","","","","No","No","","Yes, CVL fragments","","","","","","","","","" "Busybox","Nadi et al. TSE 2015","","Busybox Farce","""BusyBox is an implementation of 310 GNU shell tools (ls, cp, rm, mkdir, etc.) within one binary executable."" Customizable C code, KConfig variability model","Open source","Yes","Source code","C","Feature constraints discovery","Yes, Farce","Dependency analysis","","1","","535 Files","","","","","921","","","","","","","","","","","","","","","","","","","","","Yes, Kconfig model","","","","","","","","","","","" "Choccreate web configurator","Abbasi et al. 2014","","Broken link to data: link and link","""The customer can choose her chocolate and create its masterpiece and ingredients""","Industrial","Yes","Source code","Web","Feature model synthesis","No","Crawling the web configuration and extracting data patterns in the websites","","1","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "CM-1 NASA","Lohar et al. 2013","","Broken link: coest.org -> found at CM1 folders at Github","""This dataset is a modified from NASA Metrics Data Program's CM-1 project. The dataset contains 235 high-level and 220 low-level requirements. The trace for the dataset was manually verified. The ""theoretical true trace"" (answerset) built for this dataset consisted of 361 correct links. Each of the high- and low-level files contain the text of one requirement element. Provided by: Jane Hayes, University of Kentucky""","Industrial","Yes","Requirements","XML files","Software traceability in general (related to feature location)","Yes","Genetic algorithm evolving traceability algorithms, fitness function based on known correct traces","","","","235 high-level requirements linked to 220 low-level requirements","","","","","","","","","","","","","","Yes","","","","","","","","","","","","","","","","","","","","","","","" "Collaborative Software Suite (CoSS)","Hariri et al. 2013","","","A tool to ""support project members collaborating on a distributed project. CoSS will be developed as a web-based solution for managing projects and supporting collaboration across an enterprise-level organization.""","Industrial","No","Documentation","Text documents with product descriptions","Feature identification, feature recommendation","No","Expert knowledge, manual","","100 (""a combination of expert knowledge and publicly available product descriptions for over 100 related commercial products"")","","Not mentioned","","","","","120","","No, but an excerpt of the feature model is shown","Manually","","","","","","","","","","","","","","","","","","","","","","","","","","","""The domain analyst invested over 30 hours to identify approximately 120 coarse-grained features. The domain analysis did not include identifying composition rules such as optionality, variability, or mutual exclusion between features.""","","" "Communications-Based Train Control (CBTC)","Ferrari et al. 2013","","","Brochures and other publicly available documents of five CBTC vendors, namely Alstom, Bombardier, Invensys, Thales, and Siemens","Industrial","No","Documentation","Text files in natural language","Feature identification","No","NLP techniques","","5","N/A","3.8 documents, 37 pages, 10359.6 words","Thales: 3 documents, 19 pages, 7,478 words","""Bombardier: 5 documents, 72 pages, 16,317 words""","Manually","Indendepent companies","180 features (6 features identified as common features)","174 features","No","NLP approach and then manual refinement/filtering","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Comparative table of PaaS","Acher et al. 2012","""Provided by an external person""","","","Open source","Yes","Documentation","CSV file","","","","","8","N/A","","","","","","45 synthetised with their approach","","Yes","Using their heuristic","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Curl","Linsbauer et al. 2014","","Authors mention these websites but it is not found link, link and link","","Open source","No","Variability model","Feature model","Feature model synthesis","No","Genetic algorithms","","1","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Danfoss Drives frequency converters","Jepsen et al. SPLC 2007","","","They started with a prototype ""To derive a prototype for the common source code base, the code branches of the first two product projects (which were also two of the major contributors of functions) were put together. ""","Industrial","No","Source code","C and C++","Feature identification, feature model synthesis, reusable assets construction","No","Merging the variants. Variability model extracted bottom-up from compilation directives","","2 (initially 2 and then they started adding features from other variants)","","200 KLOC ""Several hundred thousand LOC""","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Yes, time and persons involved are mentioned in the paper","","" "Defense domain systems","Rubin et al. 2015, Eriksson et al. 2005","","","case study comes from a large aerospace and defense company","Industrial","No","Requirements, Tests, Models, Source code","C and C++","Detection, Analysis, Transformation","No","Structural Similarity, Set Theory","There is no much information of the systems","5","","","","","SPL","It stems from two similar products which became successful and grew into a family containing five commercial products and a couple of in-development prototypes.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Dell laptop web configurator","Abbasi et al. 2014","","Broken link to data: link. Dell","The authors took the “Inspiration 15” model in this experiment","Industrial","Yes","Source code","Web","Feature model synthesis","No","Crawling the web configuration and extracting data patterns in the websites","","1","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Dell Laptops catalog","Acher et al. 2012","SPLOT feature configuration","VariCell. SPLOT","A catalog of laptops with different characteristics","Open source","Yes","Documentation","CSV file","Feature identification, feature model synthesis","","","","33","N/A","","","","Catalog","","102","","Yes","Using their heuristic","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "DesktopSearcher","Linsbauer et al. 2014","","SPL2Go","Program for indexing and content based searching in files","Academic","Yes","Variability model","Feature model","Feature model synthesis","No","Genetic algorithms","","1","","22 features","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "DirectBank","Peng et al. 2013","","","""A small-scale Java-based financial system from our industry partner, Wingsoft Ltd., which provides bank interfacing services for cashiers.""","Industrial","No","Source code","Java","Feature location","No","Hybrid of information retrieval and structural analysis and graph analysis","Wingsoft is the same company as (Xue et al. 2010, Xue 2012)","1","N/A","30 KLOC, 53 Classes, 414 Methods","","","","","71","","No","""The system experts manually construct the feature model of the system.""","","","","","","","They mention 951 constraints","","","","","","","","","","","","","","","","","","","""The system experts provide the natural language description of these features and business objects.""","","","" "Dog tag web configurator","Abbasi et al. 2014","","Broken link to data: link. My dog tag","Dog tag generator","Industrial","Yes","Source code","Web","Feature model synthesis","No","Crawling the web configuration and extracting data patterns in the websites","","1","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "DOPLER tool","Grünbacher et al. Model-Based Customization and Deployment of Eclipse-Based Tools: Industrial Experiences, ASE 2009","Grünbacher et al. Product Line Tools are Product Lines Too: Lessons Learned from Developing a Tool Suite, ASE 2008","DOPLER","""Applying product line concepts in our tool development processes""","Industrial","No","Components","Eclipse plugins","Feature identification, feature location, feature constraints discovery, variability model synthesis, reusable assets extraction","No","Manual analysis","Variability exists in plugins, configuration files, settings etc.","1","","45 plugins with about 210 kLOC","","","","","Not mentioned, but 84 ""assets in the variability model""","","No, a partial view of the decision model in the paper","Manual","","","","","","","","No, 243 relationships mentioned in the ""84 assets of the variability model""","","","","","","","","","","","","","","","","","","","","","" "Draw Product Line","Fischer et al. 2014, Linsbauer et al. 2013","Fischer et al. 2014","Direct download. Link and github","A draw application.","Illustrative","Yes","Source code","Java","Feature location","Yes","Overlap analysis, graphs analysis","","N/A","12","380 LOC approx","287 LOC","473 LOC","","No","5","","Yes","","","No","No","","","","","","","","","","","","","","","","","","","","","","","","","","" "E-Clinic","Lohar et al. 2013","","Broken link: coest.org -> found at CM1 folders at Github","Easy clinic","Industrial","Yes","Model","Use cases model","Feature location, traceability recovery","Yes","Genetic algorithm evolving traceability algorithms, fitness function based on known correct traces","","","","30 use cases linked to 47 test cases","","","","","","","","","","","","","","Yes","","","","","","","","","","","","","","","","","","","","","","","" "E-Shop","Itzik et al. 2014 Generating Feature Models from Requirements: Structural vs. Functional Perspectives. (Itzik et al. 2016) Variability Analysis of Requirements: Considering Behavioral Differences and Reflecting Stakeholders Perspectives TSE 2016.","","SOVA","A set of requirements for an E-Shop","Academic","Yes, in the paper","Requirements","Text documents","Feature model synthesis","No, SOVA tool not found","Semantic and Ontological Variability Analysis","","1","","22 requirements. The inputs are requirements for a single system.","","","","","Two feature models from an structural and functional perspective. Around 33 features.","Around 28","Yes","Automatically from their approach.","","","","","","","","","","","","","Yes","Yes","","","","Yes, automatically derived","","","","","","","","","","","" "Eclipse official releases","Martinez et al. ICSR 2015","","eclipse.org","Using the official variants of an Eclipse release (e.g., Kepler SR2 in the year 2014)","Open source","Yes","Components","Eclipse plugins","Feature location","Yes","Formal context analysis, information retrieval","","12 (it depends on the release, in the year 2008 Eclipse Europa Winter contained 4 variants but from 2011 onwards it is between 12 or 13 variants)","","around 2000 plugins (depends on the release)","","","Eclipse foundation system to create the variants","No","around 400 features (depends on the release)","","Yes","Domain experts, developers of the features","Yes","No","No","","","Yes","","","","No","No","2","No","No","Yes","No","No","Yes","","Yes","","Yes, but not used","","","","Yes, but not used","","","" "Eclipse Projects and Plugins","Knodel et al. 2005, Bayer et al. 2004, Martinez et al. ICSR 2015","","eclipse.org","Obtain a reference architecture to create existing and new variants (in the case of Bayer et al. ""two new IDEs (the KobrA component browser and the frame processor"").","Open source","Yes","Components and source code","Eclipse plugins their Java code","Feature location, reusable assets extraction, reference architecture discovery","Yes","Feature traces analysis, information retrieval","","4 for Bayer et al. ""the JDT, CDT, and CobolDT, and the source code for the Eclipse IDE. An independent working copy of the Eclipse core and a single plug-in added to the core were also created.""","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Yes","","","","","","Yes" "eCos kernel","She et al. 2011, Nadi et al. 2015","","eCos but the data is here (many links and images broken but the repository can be downloaded)","A real-time operating system using the component definition language (CDL) that is like a feature model. Around 1200 features.","Open source","Yes","Variability model","Feature model","Feature model synthesis","Link","Using feature names, descriptions and dependencies. Implications graph.","","1","","1245 features","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Electric motor controller","Rubin et al. 2015","Rubin et al. 2015","","Danfoss Drives, is one of the largest producers of frequency converters—electronic power conversion devices used to control shaft speed or torque of a three-phase induction motor.","Industrial","No","Source Code","C and C++","Detection, Analysis, Transformation","No","Structural Similarity, Set Theory","","4","","","","","clone-and-own","","1,100 features and hundreds of configurations used by customers","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Electric Parking Brake System","Martinez et al. VISSOFT 2014","Dumitrescu et al. Bridging the gap between product lines and systems engineering: An experience in variability management for automotive model based systems engineering. SPLC 2013","Link, data","An SPL for the Renault’s Electric Parking Brake System. ""The case study is focused on the variability in the BOM (Bill of Materials) related to the logical/physical components""","Industrial","Yes","Documentation","Bill of materials","Feature constraints discovery","No","Visualization support","","200","2976","","","","Different configurations of the bill of materials","No","20","","Yes","Domain experts","Yes","No","No","","","","","Yes","","","","2","Yes","Yes","Yes","No","Yes","Yes","","","","","","","","","","","" "ET Software Design Robot Contest (ERC)","Kumaki et al. 2012","","ETRobo","""Robots designed to autonomously run on a course by sensing the black line using optical sensors."" ""The legacy software assets of a group that participated in the ERC for four consecutive years""","Academic","No","Requirements and Models","Text files and UML class models","Feature identification, feature location, reusable assets construction","No","Overlap analysis","","4","N/A","46 sentences in requirements, 21 classes","31 sentences in requirements, 16 classes","69 sentences in requirements, 29 classes","It is mentioned that ""The legacy software assets of a group that participated in the ERC for four consecutive years"" so it is not clear if it was the evolution of a system or variants implementing different features. The results suggest that they were implementing different features.","","Complete feature model not shown, excerpt contains 12 features","","Only a few of them","Manually","","","","","","","","","","","","","","","","","","","","","","","","","","","Man-hours of using the approach and not using the approach.","","Yes" "Fame-DBMS","Linsbauer et al. 2014","","SPL2Go , SPLConqueror","""prototype of an embedded data management system developed from scratch as software product line.""","Academic","Yes","Variability model","Feature model","Feature model synthesis","No","Genetic algorithms","","1","","20 features","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "floraJS","Rodriguez Santos et al. 2016","Silva et al. Does Javascript Software Embrace Classes? SANER 2015","The original system: Qualitas.js Dataset The extracted SPLs: Github","Some characteristic in the ""features list"" of the open-source (sometimes available in the project web site) were extracted from a single product and a feature model and SPL were created. The objective was to show RIPLE-HC capability to implement javascript SPLs.","Open source","Yes","Source code","Javascript","Feature identification, Feature location, Feature Model Synthesis, Reusable assets construction","No","Manual feature identification and extraction.","","1","","3325 LOC, 26 Modules","","","","","18","","Yes","Manually from project descriptions","","","","","","Information in the manually extracted reusable assets","","Yes","","No","","2","No","Yes","No","","No","Yes","","Yes","Syntactically valid. Behavior was not checked.","","","","","","","","" "Forum domain (Jforum, JGossip and MVNForum)","Yang et al. 2009","","Variants: JForum. JGossip and MVNForum","Three independently implemented variants of a forum system","Open source","Yes","Source code","Java and SQL statements","Feature identification, feature model synthesis","No, no complete feature model provided, domain experts needed","Data schema mapping with domain experts, Formal concept analysis","","3","N/A","68418 LOC","33123 LOC","105119 LOC","Independent team of developers for each variant","All in Java but independent team of developers for each variant","94","36","No, only a small part in a feature model excerpt","","","","Yes","","","","","No","","","","","Yes","Yes","Yes","","","No","","No","","","","","","","","","" "FraSCAti","Acher et al. 2013, 2011","FraSCAti","Familiar project. This is more recent but it contains broken links to attachments: FraSCAti","A plugin based system. OW2 FraSCAti is an open-source implementation of the Service Component Architecture (SCA) standard.","Open source","Yes","Plugin based, Source code","Components, Java","Feature model synthesis, Feature constraints discovery","Yes","Static information about the architecture and plugin dependencies","There is a step for reconciling the extracted FM with the initial FM created manually by the Software Architect. The reconciled FM is not provided but some indications are provided to add missing features and other actions.","1","","60 plugins with around 250 KLOC","","","","","39 -> fm from the Software architect 50 -> extracted FM","29 -> fm from the Software architect 31 -> extracted fm","Yes","Manually by the software architect of Frascati","","","","","","","","Yes","","","","2","Yes","Yes","","","No","Yes","","No","","","","","svn link","","","","" "FreeBSD","She et al. 2011","","FreeBSD but the data is here (many links and images broken but the repository can be downloaded)","FreeBSD contains a flat list of features, around 1200 features. Then they manually created an ontology and a feature model of 192 features.","Open source","Yes","Model","Ontology and Feature model","Feature model synthesis","Link","Using feature names, descriptions and dependencies. Implication graphs.","","1","","192 features","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Fujitsu Kyushu Network Technologies","Otsuka et al. 2011","","","""Hardware, firmware and software for network equipment and image processing systems, etc. as well as the provision of network system solutions""","Industrial","No","Source code","C and Assembly","Feature identification, feature location, reusable assets construction","No","Face to face meetings, manual work","Identified features are separated by layers: Capability, operating environment, domain technology, implementation technique. There was a lot of features so they applied scoping: ""Project leaders carefully screened the features to be included in the scope""","Several, not mentioned","","300 KLOC ""more than several hundred KSLOC (confidential)""","","","""Most individual product variations result from specific installation site factors, such as different communication capacity requirements. Customer specific functions that are not specified in the standards are another source of product variations that can require additional development and customization efforts.""","","2012","195","No","","","","","","","","","","","","","","","","","","""Once work began, it became evident that the feature model would depend significantly on each modeler’s individual perspectives and skills. Specifically, the granularity of capability feature identification and the hierarchical arrangement of the features were quite different depending on modelers.""","","","","","","","","","","Development Duration: more than one year, Engaged Engineers About 100 engineers on an average (about 300 engineers at a maximum), Development Sites: four geographically distant locations","A figure and discussion about the cost and return of investment of the 2nd, 3rd and 4th product derived from the SPL.","" "GameOfLife","Fischer et al. 2014","","Feature IDE examples, also at link in the superImposition examples","A simulator of cellular automaton.","Academic","Yes","Source code","Java","","No","Overlap analysis, graph analysis","","N/A","65","1.3 KLOC approx","874 LOC","1.9 KLOC","Generated SPL","No","15","","Yes","","","No","No","","","","","","","","","","Yes","Yes","Yes","","No","Yes","","","","","","","","","","","" "Global trading and settlement system (GTSS)","Faust and Verhoef 2003","Faust and Verhoef 2003","","global trading and settlement system (GTSS) that is used worldwide at Deutsche Bank.","Industrial","No","Requirements, Source code, Architecture","","Detection, Analysis, Transformation","No","Expert-driven","GTSS","more than 15 large to major installations of the system and many more minor ones","","The system measures about 60 000 function points, contains thousands of code units and has many instances.","","","copy-paste-modify","There are variations for different banking services in many countries and in some cases multiple varieties within a country.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Graph Product Line (GPL)","Linsbauer et al. 2014, Ziadi et al. 2012, SAC 2014","Lopez-Herrejón and Batory: A Standard Problem for Evaluating Product-Line Methodologies","SPL2Go , Feature IDE examples","This is an SPL that has been reimplemented for several languages (Java, C, etc.) and they also might differ in number of features.","Academic","Yes","Source code","Java","Feature identification, Feature location, Feature model synthesis, Reusable assets extraction","Yes for Ziadi et al.","Overlap analysis, Genetic algorithms","","21 in Ziadi et al.","","","","","","","18 in Linsbauer et al., 38 in Ziadi et al. SAC 2014","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Graphical Editor","Maia et al. 2008","","","A small tool for drawing rectangles and circles","Illustrative","No","Source code","Java","Feature location","No","Analysis of execution traces, sequence alignment algorithms","","1","","387 LOC, 9 classes, 58 methods","","","","","2, the ones under analysis ""We have chosen two similar features to execute the system: drawing a rectangle and drawing a circle.""","","Yes","Manual","","","","","","","","","","","","","","","","","","","","","","","Yes","","","","","","" "Health Watcher","AL-Msie'Deen et al. 2013, Shatnawi et al. ICSR 2015","Greenwood, P. et al. (2007). “On the Impact of Aspectual Decompositions on Design Stability: An Empirical Study”. Proc. ECOOP. Berlin, Germany","","Several releases of a single-system","Open source","Yes","Source code","Java","Feature identification","No","Formal concept analysis","","10","","6427 LOC","5288 LOC","7709 LOC","Different versions (releases) of the single system. Variability in time (evolution)","No","15","9","Yes","Manually by the authors of the extraction. Some info about the features are shown in the original publication of the system.","No, we don't have the list of features","No","To be checked","","","No","","No","","","","","","","","","","","","","","","","","","","","","" "Home Automation","Nie et al. 2012","SPLOT repository of feature models","SPLOT","Two variants of a feature model","N/A","Not found","Variability model","Feature model","Feature model synthesis","No","Diff and merge","It is not clear which two variants where selected from the SPLOT repository","2","","41 features","38 features","45 features","Not mentioned","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Home Service Robot","Kang et al. 2005","","","""Home service robots have a wide range of potential applications, such as home security, patient caring, cleaning, etc.""","Academic","No","Source code","Not specified","Feature identification, feature location, feature constraints discovery, reusable assets construction, feature model synthesis","No","As a first step, ""From legacy applications, we obtain object relationship diagrams"". Then they obtain component and architecture representations. Then they create the feature model.","","Several, but exact number not mentioned","N/A","","","","","","Some of them are named in the text but no exact number mentioned","","Some of them are named in the text","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","They mention that they extract a PLA" "HomeAway","Krueger et al. SPLC 2008","","HomeAway","Online Vacation Rental Marketplace. A company that bought similar companies on the same domain. ""The goal of this effort was to transition from the one-size-fits-all deployment model for each of the twelve sites currently supported by the HomeAway platform to a Gears automated production model. "".","Industrial","No","Source code","ColdFusion language","","No","","","12","","","","","Independently fitting each company requirements","Yes, companies fusioning","Not mentioned","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Hospital","Rubin and Chechik, N-Way Model Merging, 2013","Y. T. Rad and R. Jabbari. Use of Global Consistency Checking for Exploring and Refining Relationships between Distributed Models: A Case Study. Master’s thesis, Blekinge Institute of Technology, School of Computing, January 2012.","Not mentioned","8 variants of a Hospital system modeled as UML class diagrams. The system handles services within the hospital and describes the role of the hospital staff, its wards, different types of patients, and more.","Industrial","No","models","UML class diagrams","model merging","No","heuristic algorithm","","8","","221 classes in all eight models, with an average of 27.63 classes per model.","18 classes","38 classes","created manually","views of different stakeholders","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "I-Trust","Lohar et al. 2013","","Broken link: coest.org , Requirements are found here: link","","Open source","No, authors include reference but not available anymore","Documentation","Requirements","Feature location, traceability recovery","No","","","131 requirements linked to source code","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Image Memory Handler (IMH)","Kolb et al. 2006","","","Image Memory Handler ""used in Ricoh’s current products of office appliances such as copier machines, printers, and multi-functional peripherals. It is responsible for controlling memory usage and compressing and decompressing image data."" Objective of the case study: ""Improve systematically the design and implementation of an existing software component in order to reuse it in a software product line"".","Industrial","No","Source code","C","Feature identification, refactoring","No","Refactoring, clone detection, manual work. Fraunhofer PuLSETM-DSSA—an approach for defining domain-specific software architectures (DSSA) and product-line architectures.","The source code was already annotated with ifdefs.","1","N/A","199 572 LOC","","","","","309 ""According to their names, however, only a portion of them are used for variability purposes, whereas many others serve development aspects such as debugging or are used as include guards to prevent multiple header inclusion. Furthermore, many #if 0 or #if 1 preprocessor statements.""","","Few of them are shown in the Tables.","Seems to be the ones from the ifdefs","","","","","","","","","","","","","","","","","""Identification of the relevant stakeholders and roles, the selection and definition of the views""","No","","","","","","","","Yes, documentation is mentioned as part of the analysis. However, they also reported ""With respect to the variabilities realized by the component, there was no explicit information available. Neither was there information about which functions vary and how they vary, nor was there a complete and up-to-date overview of all the decisions and variabilities.""","4 months, 5 people (2 researchers, 2 students, 1 domain expert)","","" "Images example","Martinez et al. SPLC 2015","","BUT4Reuse examples","Four images of pixel art representing the same character with different clothes. Used to illustrate the generic approach supported by the Bottom-Up Technologies for Reuse framework.","Illustrative","Yes","Media","PNG images","Feature identification, feature constraints discovery, feature model synthesis, reusable assets construction","Yes","Overlap analysis","","4","","","","","","","11","7","Yes","Manually","Yes","No","No","100%","","Yes","","Yes","","No","No","2","Yes","No","Yes","No","No","Yes","","Yes","","","","","","","","","" "In-Flight Entertainment System","Martinez et al. ASE 2015","","BUT4Reuse examples","Variants created manually from an original model by removing model elements related to features. The original model is intended to be similar to an industrial one by the Capella tool providers, however, it is an incomplete model.","Open source","Yes","Model","Capella models","Feature identification","Yes","FCA","","3","N/A","","","","Manually by removing features from a maximum model.","No","3","2","Yes","Manually","Yes","No","No","","","","","Yes","","No","No","2","No","No","No","No","No","No","","Yes, CVL fragments","","","","","","","","","" "Industrial Automation System","Breivold et al. 2008","","","A single system decomposed in reusable assets to migrate to SPL. ""The trigger was to improve software quality and enable distributed product development.""","Industrial","No","Source code","C and C++","Feature identification, feature location, reusable assets extraction","No","Manual analysis of existing documentation, implementations and workshops with the stakeholders.","The single system was delivered even when some functionalities were not needed.","1","N/A","3000000 LOC","","","","","Not mentioned","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The definition of the PLA is part of their approach. Manual definition." "Insurance Policy","Nie et al. 2012","The authors refer to Schirmeier et al. Tailoring infrastructure software product lines by static application analysis, SPLC, but no mention of this model is found. In SPLOT we can find FM related to insurance but the reported number of features does not correspond.","","Two variants of a feature model","N/A","Not found","Variability model","Feature model","Feature model synthesis","No","Diff and merge","","2","","21 features","20 features","23 features","Not mentioned","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "J2ME Games Product Line","Kulesza et al. 2007","Alves et al. Extracting and Evolving Mobile Games Product Lines SPLC 2005","","J2ME games are mainstream mobile applications of considerable complexity","Academic","No","Configuration Model, Architectural Model","OO source code + extension join points (EJPs)","Mapping of Features to Source code","","AOP, Model transformation","","","","","","","","","8","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "jasmine","Rodriguez Santos et al. 2016","Silva et al. SANER 2015","The original system: Qualitas.js Dataset The extracted SPLs: Github","Some characteristic in the ""features list"" of the open-source (sometimes available in the project web site) were extracted from a single product and a feature model and SPL were created. The objective was to show RIPLE-HC capability to implement javascript SPLs.","Open source","Yes","Source code","Javascript","Feature identification, Feature location, Feature Model Synthesis, Reusable assets construction","No","Manual feature identification and extraction.","","1","","2956 LOC, 48 Modules","","","","","4","","Yes","Manually from project descriptions","","","","","","Information in the manually extracted reusable assets","","Yes","","No","","No constraints","No","No","No","","No","Yes","","Yes","Syntactically valid. Behavior was not checked.","","","","","","","","" "Java Buffer Library","Damaševičius et al. 2012","","Link","It is a ""part of JDK 1.5 class library (package java.nio.*)"". ""The Java Buffer library is a benchmark source code component used by researchers in the area of program analysis, generalization and meta-programming research.""","Open source","Yes, but requires some actions such as registering and accepting the Java Research License","Source code","Java","Feature location, Feature model synthesis","Yes","Dependency graph analysis, clustering","","1","N/A","4 Java classes manually selected from the 74 classes of the Library","","","","","73","12","No, only numbers","Dependency graph analysis and clustering","","","","","","","","","","","","","Yes","No","No","Yes","No","Yes","","No","","","","","","","","","" "Jbook","Santos et al. 2013","","JBook and link","A library management system","Academic","Yes","Source code","Java","Feature identification, feature location","","Test-based feature location. Location of feature seed. Use cases and requirements analysis.","","1","","1 KLOC","","","","","Not mentioned, at least 21 shown in feature model excerpt","","Yes, only of some of them","Manually by the domain experts","","","","","","","","Yes, one requires constraint","","","","","Yes","Yes","","","","Partial feature model is shown","","","","Yes","","","","Yes, UML use cases and requirements","","","" "JForum","Yang et al. 2009","","JForum","Forum system used to manually identify features","Open source","Yes","Source code","Java and SQL statements","Feature identification, feature model synthesis","No, no feature model provided","","Feature names or feature model not found.","1","N/A","33123 LOC","","","","","68","","No","Manually by graduates","","","","","","","","","","","","","","","","","","","","","","","","","","","It takes two graduates who are familiar with forum systems two weeks to separately finish analysis for all the three variants (JForum, JGossip and MVNForum).","","" "JGossip","Yang et al. 2009","","JGossip","Forum system used to manually identify features","Open source","Yes","Source code","Java and SQL statements","Feature identification, feature model synthesis","No, no feature model provided","","Feature names or feature model not found.","1","N/A","33507 LOC","","","","","54","","No","Manually by graduates","","","","","","","","","","","","","","","","","","","","","","","","","","","It takes two graduates who are familiar with forum systems two weeks to separately finish analysis for all the three variants (JForum, JGossip and MVNForum).","","" "JHipster","Halin et al.","","JHipster SPL","JHipster is a Web-app configurator that can be customized. It uses a customization approach that can be mapped to an SPL approach. The output is a set of different technologies of different artefact types.","Open source","Yes","Source code","Java (with Spring Boot) in the server side. AngularJS and Bootstrap (a HTML/CSS and Javascript framework)","Feature constraints discovery, Feature model synthesis","Yes","Manual reengineering","This is a refactoring of an already feature-based configurable system","It was already a customizable tool","","","","","Variants can be created from the extracted SPL","","48","44","Yes","Manually from existing ""questionnaire files"" used for customization","Yes","No","No","","","","","Yes, manually from existing ""questionnaire files"" used for customization","","","","5","Yes","Yes","Yes","","No","Yes","","Yes","Yes, JUnit. They also collect the log of the results.","From testing assets","","","Yes, JHipster github","Results and log of the generation compilation build process","","","" "JHotDraw","Trifu 2010, Olszak and Jørgensen 2012","Ceccato et al. A Qualitative Comparison of Three Aspect Mining Techniques IWPC 2005","JHotDraw","JHotDraw is a framework for the creation of drawing editors, ranging from simple graphical editors to more complex domain-specific diagram editors, supporting behavioural constraints on how their elements can be used and altered.","Industrial","Yes","Requirements and Source code","Java","Mapping of Requirements to Implementations","No","Graph-based, Execution Tracing","","2, consecutive releases of JHotDraw, namely release versions 5.3 and 5.4b1.","","LOC 5.3=27628, 5.4=39565 / 7.2=62 KLOC","","","evolution of the system","","17 concerns / 7.2 = 59 features","","Requirements","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "KePlast platform","Linsbauer et al. 2014","Angerer et al. Identifying inactive code in product lines with configuration-aware system dependence graphs SPLC 2014","KePlast","Industrial automation systems SPL. Focus on the ClosureUnit component.","Industrial","No, but a feature model of a selected component is presented","Source code","Java","Feature location, Feature model synthesis","No","Dependency graph analysis","","15 generated from the company configurator","Not defined","Not mentioned","53000 LOC","58000 LOC","Existing generator","","24","20","Yes","Manually analysing the generator and refining with domain experts","","No","No","","","","","","","","","","Yes","No","Yes","","No","Yes","100% precision when using 15 generated variants","","","","","","","","","","" "Labor Market Monitoring Software Product Line (LMMSPL)","Shao et al. 2013","","","""The applications collect and analysis regional employment and unemployment information for the local governments.""","Industrial","No","Requirements and Source code","Text and Java","Traceability, feature location","","Latent semantic indexing, clustering","","1","N/A","70 pages of Requirements, 468 Java files","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Library","Reinhartz-Berger et al. 2014 Analyzing Variability of Software Product Lines Using Semantic and Ontological Considerations","","SOVA","A set of requirements of a university library management system","Academic","Yes","Requirements","Text documents","Feature model synthesis","No, SOVA tool not found","Semantic and Ontological Variability Analysis","Same domain as Chen et al. 2005","1","","10 requirements. The inputs are requirements of a single system.","","","","","Two feature models from an structural and functional perspective. Around 54 features.","Around 49","Yes","Automatically from their approach.","","","","","","","","","","","","","Yes","Yes","","","","Yes, automatically derived","","","","","","","","","","","" "Library management systems","Chen et al. 2005","Hsia et al. Another approach to system decomposition: requirements clustering","","","Academic","Yes","Requirements","Text file","Feature identification","No","Similarity analysis, graph analysis, clustering","Same domain as Reinhartz-Berger et al. 2014","1","N/A","21 requirements","","","","","36 synthetised with their approach","3","Yes","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "LinkedList","Linsbauer et al. 2014","","Authors mention these websites but it is not found link, link and link","","N/A","Not found","Variability model","Feature model","Feature model synthesis","No","Genetic algorithms","","1","","27 features","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Linux kernel","She et al. 2011, Xue et al. 2012, Peng et al. 2013, Xue 2012, She 2013, Nadi et al. 2015","T. Berger, S. She, R. Lotufo, A. W asowski, and K. Czarnecki. Variability modeling in the real: A perspective from the operating systems domain. In ASE, 2010. - M.W. Godfrey and Q. Tu. Evolution in open source software: a case study. ICSM 2000, pp.131-140.","Linux - Kernel","Linux is an open-source general purpose OS created in the early 1990’s. It has a feature model specified in the Kconfig language [20] for configuring features in its kernel.","Open source","Yes","Source code= x86 Linux 2.6.28.6, code units, static program model (graph)","C","Feature Model extraction, Feature location, Feature model synthesis","Linux variability analysis tools google code or Github","ranking heuristic for identifying parent candidates and also automated procedures for identifying mandatory features, feature groups and implies/excludes edges","nine product variants derived from three stable releases of the Linux kernel 2.6.27, 2.6.31, 2.6.37 released on December 14 th, 2008, December 18 th , 2009, and January 5 th , 2011, respectively.","9 Linux kernel product variants consist of 3146 features","","about 342K code units (342729 code units) / 12 million lines of code, 2000 directories and 28,024 files, and 155,266 C functions. Furthermore, Linux kernel contains about 700 Kconfig","17622 code units","55585 code units","Kconfig language","","The Linux feature model has over 5000 features / 3146 features / consisting of 6052 features and 1,410,830 interdependencies","","Yes = Xue et al. 2012","Kconfig","yes","","","","","Yes = The Kconfig model, makefiles, and C preprocessors used by Linux kernel allow us to establish the ground truth links between features and their implementing code units.","Yes = Peng et al. 2013","Yes = Kconfig","There is information of interdependencies (Kconfig)","","","","yes","yes","","","","yes","yes","Yes = The Kconfig model, makefiles, and C preprocessors used by Linux kernel allow us to establish the ground truth links between features and their implementing code units.","","","","","","","","","" "LLVMCompiler","Linsbauer et al. 2014","","Authors mention these websites but it is not found link, link and link","","N/A","Not found","Variability model","Feature model","Feature model synthesis","Not found","Genetic algorithms","","1","","12 features","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Microsoft Dynamics AX","Nöbauer et al. 2014b, 2014a","","Website","""Dynamics AX is a business software solution from Microsoft for medium to large enterprises. Partners, such as InsideAx, configure, customize and sell the ERP product to customers""","Industrial","No","Configuration settings","XML files","Assessment of reuse potential, similarity analysis","No","Similarity analysis","","5","N/A","","","","""He first selected five customized products which are all derived from the same base product but operating in different industry branches (construction, retail, and manufacturing).""","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Microwave Oven","Rubin 2014","Hassan Gomaa. Designing Software Product Lines with UML: From Use Cases to Pattern-Based Software Architectures. Addison-Wesley, 2004.","","Software products for Microwave Oven","Illustrative","Yes, in the thesis","Models","Uml Class and UML Statechart models","Detection, Analysis, Transformation","No","Structural Similarity, Set Theory","","4","","2 clases per variant","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Mobile Phone","Araújo et al. 2013, Nie et al. 2012, Li et al. 2007, Gharsellaoui et al. 2015","Segura et al. Automated Merging of feature models using graph transformations","","This is an academic case study of a mobile phone feature model. We can find it in different works with different number of features. The mentioned original publication presents 2 variants to be merged. ""FMs of the two families of products of the company"".","Academic","Yes","Variability model","Feature model","Feature model synthesis","","Diff and merge","","2","","16 features","15 features","18 features","Manually for the academic example","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "MobileMedia","AL-Msie'Deen et al. 2013, Eyal-Salman et al. 2012, 2013b, 2014, Linsbauer et al. 2013, Mefteh et al. 2014, Tang and Leung 2015, Maazoun et al. 2014a, Shatnawi et al. ICSR 2015","Figueiredo et al. ICSE 2008. Evolving Software Product Lines with Aspects: An Empirical Study on Design Stability","MobileMedia, Design study, link","Different releases of a single-system. Maazoun et al. 2014 uses a case study similar to mobilemedia with 9 variants but it cannot be found.","Academic","Yes","Source code","Java","Feature identification, feature location, feature model synthesis, extraction of reusable assets","","Overlap analysis, formal context analysis, hierarchical clustering, Dependency graphs, information retrieval","Different variants are used in the studies","8","","1698 LOC","760 LOC","2645 LOC","Evolution of a system, different releases containing new implemented features.","No","7 in Alm'siedeen et al.","5","Yes","Manually by the authors of the feature identification process","","No","To be checked.","","","","","","","","","","","","","","","","","","","","","","","","","","" "ModelAnalyzer","Fischer et al. 2014","Check website","Check website","Consistency checker and repair for models.","Open source","Not found","Source code","Java","Feature location","No","Overlap analysis, graphs analysis","The ModelAnalyzer tool is available in the website but the used variants or generator is not found. The authors mention bug fixes and evolutions to separated variants.","5","N/A","47 KLOC approx","35 KLOC","59 KLOC","","","13","","Not found","Not found","","","Yes, the authors mention ""evolutionary changes or bug fixes that have only been applied to some of the products""","","","","","","","","","","","","","","","","","","","","","","","","","","" "MOTIV video generator SPL","Temple et al. SPLC 2016","Acher et al. ViViD: A Variability-Based Tool for Synthesizing Video Sequences, SPLC 2014","Link and link","An SPL that generates variants of video sequences with different characteristics (e.g., filters). Then an oracle exists to determine if a given configuration is valid or not","Industrial","No","Media","Videos","Feature constraints discovery","No","Machine learning","","500 (randomly generated from the SPL)","""a total of 10^103 configurations (not considering constraints)""","","","","Generated from the SPL","","20 Boolean features, 46 integer attributes, 42 real attributes","","","","","","","","","","","140 constraints but more wants to be discovered for a specific video algorithm","","","","","","","","","","","","","","","","","","","","","" "MVNForum","Yang et al. 2009","","MVNForum","Forum system used to manually identify features","Open source","Yes","Source code","Java and SQL statements","Feature identification, feature model synthesis","No, no feature model provided","","Feature names or feature model not found.","1","N/A","105119 LOC","","","","","141","","No","Manually by graduates","","","","","","","","","","","","","","","","","","","","","","","","","","","It takes two graduates who are familiar with forum systems two weeks to separately finish analysis for all the three variants (JForum, JGossip and MVNForum).","","" "Notepad SPL","Ziadi et al. 2014","","Feature IDE examples. Notepad Java, not Notepad Java 2","","Illustrative","Yes","Source code","Java","Feature identification","Yes","Overlap analysis, feature identification","","N/A","8","806 LOC","","","Generated from the SPL","No","4","3","Yes","","","","","","","","","","","","","","No","No","No","No","No","","","","","","","","","","","","" "PCM Dataset","Bécan et al. 2013","N. Sannier, M. Acher, and B. Baudry, “From Comparison Matrix to Variability Model: The Wikipedia Case Study,” in ASE’13. IEEE, 2013.","","Large FMs extracted from product comparison matrices (PCMs) found in Wikipedia","Academic","No","Feature combinations","product comparison matrices (PCMs) found in Wikipedia","Detection, Analysis, Transformation","No","Heuristics","","30 FMs with an automated extraction process","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "PKJab","Linsbauer et al. 2014","","Link and download superimposition examples","Chat messenger SPL developed by P. Wendler (U Passau)","Academic","Yes","Variability model","Feature model","Feature model synthesis","No","Genetic algorithms","","1","","12 features","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Pooka Email Client","Ali et al. 2011","","Single system: link. Some data from the extraction: link","A mailing system that wants to be decomposed in features to be used in mobile devices. They call it miniaturization of a given system.","Open source","Yes","Source code","Java","Feature identification, feature constraints discovery, reusable assets extraction","No, there are some information in the mentioned website but we were not able to find the feature names or download the traceability tool.","Information retrieval for feature location","","1","N/A","244870 LOC","","","","","93 functional and 25 non-functional","","Not found","Analysing pre-requirements of the customers and stakeholders","","","","","","","40% correct feature traces, i.e., 128 traces","","","","","","","","","","","","","","","","","","","","Manual Time: We took ∼ 135 hours to recover the 318 feature traces for Pooka. Automatic Time: It took us ∼ 21 to generate and to manually validate the feature traces and corresponding features for Pooka.","","" "Power control and protection system","Breivold et al. 2008","","","Different teams sharing a core, overlapping features, lack of traceability of product features. ""The main trigger was to build a common platform that can be shared between two business units and enable component reusability""","Industrial","No","Source code","C and C++","Feature identification, feature location, reusable assets extraction","No","Manual analysis of existing documentation, implementations and workshops with the stakeholders.","Different teams, overlapping features, lack of traceability of product features","More than 1 (number not mentioned)","N/A","2000000 LOC","","","A core was shared in the organization and then different teams start building the variants from this core without a formalized approach to reuse previous features implemented in other variants.","They report overlapping features implemented by different development teams.","Not mentioned","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The definition of the PLA is part of their approach. Manual definition." "Prevayler","Linsbauer et al. 2014, Tang and Leung 2015","Prevayler","SPL2Go","In-memory database","Open source","Yes","Variability model","Feature model","Feature model synthesis","No","Genetic algorithms","","1","","6 features","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Printworks","Li et al. 2005","","","","Industrial","No","Source code","CSharp","Feature identification, feature location","No","","","1","","","","","","","Only an excerpt is shown with 8 features","","Only the ones in the excerpt","Manually by them","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Project Management tools","Noor et al. 2008","","Ganttproject Project factory","Two projects of the project management domain where we can check the reuse potential of its logical components to create a new PL in this domain. ""A group of three domain experts developed a product map containing 120 features, 14 domains and three products for the project management domain."" and then they tried to locate these features in these systems. First the identified reusable features (logical components) and then they mapped them to their initial list.","Open source","Yes","Source code","Java","Feature identification, Feature location, Assessment of reuse potential","No","Manual (Look at the source code packages and identify possible logical components based on your experience, they call it thinklet LeafHopper)","","2","N/A","46 KLOC","Project Factory is 16 packages, 140 classes and 29 KLOC","Gantt Project is 51 packages, 492 classes and is 63 KLOC","The variants are two independent open-source projects of the same domain.","Independently created. Both in Java.","23 logical components identified in the Gantt project that might correspond to features","","Yes","Manually","Only in 1 of them, the other is not mentioned","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "QlikView","Nöbauer et al. 2014b","","","""a product for data analysis and business intelligence.""","Industrial","No","Configuration settings","XML file","Assessment of reuse potential, similarity analysis","No","Similarity analysis","","54 from 12 customers in 6 different industry branches","","","","","""Business intelligence applications such as QlikView are built in tight collaboration with the customers’ decision makers, and therefore are more individual than a standard software product. Still, domain experts at InsideAx believe there is a common set of recurring QlikView measures on most business ""areas and industry branches.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "SELEX Sistemi Integrati Systems","Falessi et al. 2010","","SELEX","A company in the defense and aerospace domain "" started the development of five different products (systems of systems)""","Industrial","No","Requirements","Text documents","Feature identification, Similarity analysis","No, but tools mentioned PROUD, Proactive Reuse OpportUnity Discovery tool: PROUD. ANTARCTICA, Automatic characterizatioN of naTural lAnguage pRoCessing meThods for estimatIng semantiC similarity: Antarctica","Natural language processing","Case study used to check the results of requirements similarity approaches.","5","N/A","496 Requirements. 2483 for the 5 variants","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "SensorNetwork","Linsbauer et al. 2014","","The authors mention these links but this was not found link , link and link","","N/A","Not found","Variability model","Feature model","Feature model synthesis","No","Genetic algorithms","","1","","27 features","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "ShirtsMyWay web configurator","Abbasi et al. 2014","","Broken link to data: link. ShirtsMyWay","""A configurator that allows customers to design their shirts""","Industrial","Yes","Source code","Web","Feature model synthesis","No","Crawling the web configuration and extracting data patterns in the websites","","1","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Siemens VAI MSS tool","Grünbacher et al. Model-Based Customization and Deployment of Eclipse-Based Tools: Industrial Experiences, ASE 2009","","","MSS (Maintenance and Setup Systems) tool. An ""Eclipse Rich-Client Platform used by developers and metallurgists to supervise and maintain the CC-L2 automation system."" ""Applying product line concepts in our tool development processes""","Industrial","No","Components","Eclipse plugins","Feature identification, feature location, feature constraints discovery, variability model synthesis, reusable assets extraction","No","Manual analysis","""Adapted to 20+ customer environments per year"". The analysis only consisted at the level of plugins.","1","","More than 100 plugins with around 200 KLOC. 20 Eclipse features already defined.","","","","","Not mentioned","","No, a partial view of the decision model in the paper and some names in the text","Manual","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "SIP Communicator","Ali et al. 2011","","Single system: link. Some data from the extraction: link","A web-based communication system that wants to be decomposed in features to be used in mobile devices. They call it miniaturization of a given system.","Open source","Yes","Source code","Java","Feature identification, feature constraints discovery, reusable assets extraction","No, there are some information in the mentioned website but we were not able to find the feature names or download the traceability tool.","Information retrieval for feature location","","1","N/A","486966 LOC","","","","","82 functional, 20 non-functional","","Not found","Analysing pre-requirements of the customers and stakeholders","","","","","","","44% correct feature traces, i.e., 63 traces","","","","","","","","","","","","","","","","","","","","Manual Time: We took ∼ 171 hours to recover the 830 feature traces for SIP. Automatic Time: It took us ∼ 30 hours to generate and to manually validate the feature traces and corresponding features for SIP.","","" "Smart Home","Araújo et al. 2013, Alves et al. 2008, Weston et al. 2009","K. Pohl, G. Bockle, and F. J. van der Linden, Software Product Line Engineering: Foundations, Principles and Techniques. 2005.","Ample project","The Smart Home case study defines a SPL targeted to embedded systems, in the context of home automation. SPL for houses with devices and sensors interacting with its inhabitants in order to achieve comfort, safety, and security goals","Industrial","No","Requirements","UML + AOP","Design process of SPLs. Discovery of FMs","No","Heuristics, Model transformation, Clustering","Link","","","","","","","","Weston et al. 2009","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Softpedia Repository","Hariri et al. 2013, Yu et al. 2013, Bagheri et al. 2012","Bagheri et al. 2012","Softpedia","Softpedia.com indexes hundreds of thousands of software products.","Public Repository","Yes","Product descriptions","Feature descriptors","Features Recommendation","","Clustering, rule-based, k-means","","117,265 products","","493,347 feature descriptors were retrieved from 117,265 products, categorized under 21 categories and 159 sub categories.","","","","","493,347 feature descriptors","","feature descriptions","From products description","Yes","Yes","Yes","","","","","","","","","","","","","","","","","","","","","","","","","","" "SPLOT Feature Models","She et al. 2014, Bécan 2013, Bécan et al. 2013, Haslinger et al. 2011, Lopez-Herrejon et al. 2015","Mendonca et al.: S.P.L.O.T. - Software Product Lines Online Tools. OOPSLA 2009 Companion volume.","SPLOT","Online repository of feature models created by very diverse authors","Public Repository","Yes","Variability model","Feature model","Feature model synthesis","","Very diverse, each author uses this repository in their own way.","We cannot consider this as variants.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Statemachine metamodels","Mendez et al. ICSR 2016","M. Crane and J. Dingel. Uml vs. classical vs. rhapsody statecharts: not all models are created equal SoSym 2007","Github","Variants of Statechart meta-models and its operational semantics used to extract Language modules.","Open source","Yes","Models and Source Code","Meta-models as Ecore models with operational semantics in Java","Feature identification, Reusable assets construction","Yes","Overlap analysis","They intentionally call Modules the extracted assets instead of Features. However, we put them as number of features. The tool for the analysis is available here: https://github.com/damenac/puzzle","3","N/A","","","","","","5","","No, they are just numbered Modules","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Sudoku","Tang and Leung 2015","Apel, et al. Featurehouse: Language- independent, automated software composition. 2009","Link, download superimpositionExamples","The sudoku puzzle game","Academic","Yes","Source code","Java","Feature identification, feature location, feature model synthesis, extraction of reusable assets","JFeTkit (Java Feature Mining Tookit) not available","Dependency graphs, information retrieval","It is not clear if they use one variant or generated ones. Apparently 1.","1","","1975 LOC","","","","","5","","","","","","","","","Yes","Avg. precision of 40% and avg. recall close to 100%","","","","","","","","","","","","","","","","","","","","","","" "Suppliers offerings","Acher et al. 2012","Hartmann et al. Supplier independent feature modelling SPLC 2009","VariCell","","Illustrative","Yes","Documentation","Table","Feature identification, feature model synthesis","","","","3","N/A","","","","","","9 synthetised with their approach","","Yes","Using their heuristic","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Text Editing System SPL","AL-Msie'Deen et al. 2012","","Information: link Variants: Link","Variants of a text editing system.","Academic","No, links are broken link , only one variant can be found link","Source code","Java","Feature identification, feature location","No","Formal concept analysis and information retrieval (Latent Semantic Indexing)","The feature model is presented with 72 possible configurations but 8 variants are provided.","8","N/A","372 LOC in the available variant","","","Not mentioned, manual","No","22","11","Yes","Manual","Yes","No","No","","","Yes","","Yes","","","","2","Yes","Yes","No","No","No","Yes","","No","","","","","","","","","" "TimelineJS","Rodriguez Santos et al. 2016","Leonardo Silva, Miguel Ramos, Marco Tulio Valente, Nicolas Anquetil, Alexandre Bergel. Does Javascript Software Embrace Classes? In 22nd International Conference on Software Analysis, Evolution and Reengineering (SANER) , pages 1-10, 2015.","The original system: Qualitas.js Dataset The extracted SPLs: Github","Some characteristic in the ""features list"" of the open-source (sometimes available in the project web site) were extracted from a single product and a feature model and SPL were created. The objective was to show RIPLE-HC capability to implement javascript SPLs.","Open source","Yes","Source code","Javascript","Feature identification, Feature location, Feature Model Synthesis, Reusable assets construction","No","Manual feature identification and extraction.","","1","","18237 LOC, 89 Modules","","","","","15","","Yes","Manually from project descriptions","","","","","","Information in the manually extracted reusable assets","","Yes","","No","","2","No","Yes","Yes","","No","Yes","","Yes","Syntactically valid. Behavior was not checked.","","","","","","","","" "Traffic management systems","Niu et al. 2014","","","""A set of traffic management systems of a multidisciplinary organization offering services in many areas of practice, including transportation and systems. ""","Industrial","No","Requirements","Text documents","Similarity, feature identification, reusable assets construction","No","Information retrieval, natural language processing","Requirements follows the IEEE-830 standard in a textual form. Extracted reusable assets are called ""functional requirements profiles (FRPs)""","4","N/A","5884 kB file size","","","","","Not mentioned","","No, some of them are named in an OVM variability model.","","","","","","","","","","","","","","","","","","","","","","","","","","","","Yes, their approach was compared with manual analysis.","","" "Trek Bikes catalog","Acher et al. 2012","SPLOT feature configuration","VariCell SPLOT","A catalog of Trek bikes with different characteristics","Open source","Yes","Documentation","CSV file","Feature identification, feature model synthesis","","","They conducted 3 experiments ""to change the number of configurations and features""","376","N/A","","","","Catalog","","549","","Yes","Using their heuristic","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "uClibc","Nadi et al. TSE 2015","","uClibc","""uClibc is an alternative, resource-optimized C library for embedded systems"", Customizable C code, KConfig variability model","Open source","Yes","Source code","C","Feature constraints discovery","Yes, link","Dependency analysis","","1","","1,628 Files","","","","","367","","","","","","","","","","","","","","","","","","","","","Yes, Kconfig model","","","","","","","","","","","" "Vending Machine","Martinez et al. 2014","Istoan et al. Issues in model-driven behavioural product derivation. VAMOS 2011","BUT4Reuse examples","Variants of statechart models of vending machines. Illustrative example.","Illustrative","Yes","Model","Yakindu SCT models","Feature identification","Yes","Overlap analysis","","6","N/A","20 classes, 19 attributes, 17 references","18 classes, 17 attributes, 15 references","23 classes, 22 attributes, 20 references","Manual","No","7","6","Yes","Manual","Yes","No","No","100%","","Yes","","No constraints apart from requires to the core feature.","","","","","No","No","No","No","No","No","","No","","","","","","","","","" "Video On Demand","Linsbauer et al. 2013, Fischer et al. 2014","","Broken link: link","Linsbauer et al. ""Simple video streaming applications""","Academic","No","Source code","Java","Feature location","No","Overlap analysis, graph analysis","""We generated all possible products and used them for evaluation.""","N/A","32","","4.7 KLOC","5.2 KLOC","Generated from an SPL","No","11","5","Not found","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "video.js","Rodriguez Santos et al. 2016","Leonardo Silva, Miguel Ramos, Marco Tulio Valente, Nicolas Anquetil, Alexandre Bergel. Does Javascript Software Embrace Classes? In 22nd International Conference on Software Analysis, Evolution and Reengineering (SANER) , pages 1-10, 2015.","The original system: Qualitas.js Dataset The extracted SPLs: Github","Some characteristic in the ""features list"" of the open-source (sometimes available in the project web site) were extracted from a single product and a feature model and SPL were created. The objective was to show RIPLE-HC capability to implement javascript SPLs.","Open source","Yes","Source code","Javascript","Feature identification, Feature location, Feature Model Synthesis, Reusable assets construction","No","Manual feature identification and extraction.","","1","","7939 LOC, 38 Modules","","","","","13","","Yes","Manually from project descriptions","","","","","","Information in the manually extracted reusable assets","","Yes","","No","","2","No","Yes","No","","No","Yes","","Yes","Syntactically valid. Behavior was not checked.","","","","","","","","" "Warehouse","Rubin and Chechik, N-Way Model Merging 2013","Y. T. Rad and R. Jabbari. Use of Global Consistency Checking for Exploring and Refining Relationships between Distributed Models: A Case Study. Master’s thesis, Blekinge Institute of Technology, School of Computing, January 2012.","Not mentioned","16 variants of a Warehouse system, modeled as UML class diagrams. The system is designed to handle orders, track their status, provide computer support for warehousing workers, keep track of inventory levels in the warehouse, etc.","Industrial","No","Models","UML class diagrams","Model merging","No","Heuristic algorithm","","16","","24.25 classes, 388 elements in total","15 classes","44 classes","Created manually","Views of different stakeholders","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Washing Machine","Rubin and Chechik 2010, Rubin 2014","Rubin and Chechik 2010","","Washing Machine which has several Wash programs.","Illustrative","Yes, in the thesis","Model","UML class diagram","Detection, Analysis, Transformation","No","Structural Similarity, Set Theory","","3","","6 classes each product","","","","","5","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "WebStore","Santos et al. 2013","Ferreira et al. 2011 On the Use of Feature-Oriented Programming for Evolving Software Product Lines: A Comparative Study","Link","","Academic","Not found","Source code","Java","Feature location","","Test-based feature location. Location of feature seed. Use cases and requirements analysis.","The authors said that the source code is available but it was not found. The feature model is shown in the paper.","1","N/A","1 KLOC","","","","","11","4","Yes","Manually by domain experts","","","","","","","","No constraints","","","","","","","","","","","","","","Yes","","","","Yes, UML use cases and requirements","","","" "Wget","Linsbauer et al. 2014","","The authors mention these links but this was not found link, link and link","GNU Wget","Open source","Not found","Variability model","Feature model","Feature model synthesis","","Genetic algorithms","","1","N/A","17 features","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Wiki engines","Acher et al. 2012","","Wikimatrix, link, VariCell","Information about wiki engines ""Each wiki engine describes several characteristics classified in 16 categories (General, Media and Files, Usability, etc.)""","Open source","Yes","Documentation","XML file","Feature identification, feature model synthesis","","","They conducted 3 experiments ""to change the number of configurations and features""","154","N/A","","","","Catalog","","22 synthetised with their approach","","Yes","Using their heuristic","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Wingsoft Financial Management System","Xue et al. 2010, Xue 2012","","","A system for students to pay their University fees.","Industrial","No","Variability model and Source code","Feature model (FM of each product, like a configuration with the relations between the features) and Source code","Feature model synthesis, Feature lcoation, reusable assets extraction","No","Lexical and structural analysis, similarity analysis, feature model merging","","4 (they were actually 26 but they took only 4 because they were minor changes)","","30 features and 50KLOC","","","""Developers copy-pasted and modified existing product variants when building a new product variant.""","","54 (shown in a figure)","33","Yes, and small description of each feature","Domain experts","Yes","","","","","","","","","","","","Yes","Yes","","","","Yes","","","","","","","","","","","" "WV CCHIT Health","Lohar et al. 2013","","Broken link: coest.org -> This works: TraceLab but not found. Wayback machine: not possible to download without registering in their system","This is a set of regulatory standard codes and how they are mapped to a set of requirements.","Industrial","No, authors include reference but not available anymore","Regulatory standards and requirements","","Software traceability in general (related to feature location)","No","Genetic algorithm evolving traceability algorithms, fitness function based on known correct traces","Check references in the paper to find more info or try to locate the artifact","","","453 Reg. codes (regulatory standard codes) linked to 958 requirements","","","","","","","","","","","","","","Yes","","","","","","","","","","","","","","","","","","","","","","","" "x264 Library","Linsbauer et al. 2014","","The authors mention these links but this was not found link, link and link","Video streams encoder","Open source","Not found","Variability model","Feature model","Feature model synthesis","","Genetic algorithms","","1","N/A","17 features","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "Xfig System","Eisenbarth et al. 2001","","Xfig, Link, Link","""Xfig is a menu-driven tool that allows the user to draw and manipulate objects interactively under the X Window System""","Open source","Yes","Source code","C","Feature location","No","Formal concept analysis","","1","","76 KLOC","","","","","Not mentioned","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","" "ZipMe","Linsbauer et al. 2014, Fischer et al. 2014","","Link and download the superImposition examples","","Academic","Yes","Source code","Java","Feature location, feature model synthesis","Yes for Fischer et al.","Overlap analysis, genetic algorithms","","N/A","32","","5 KLOC","6.2 KLOC","Generated","No","7","","Yes","","Yes","No","No","","","","","","","","","","","","","","","","","","","","","","","","","",""

FrancoisMentec commented 6 years ago

The function for date detection is the following :

function isDate (value) {
  return !isNaN(Date.parse(value))
  // regex for ISO 8601 : ^((\+|-)\d{2})?\d{4}(-\d{2}(-\d{2}(T\d{2}(:\d{2}(:\d{2}(\.\d{3}(Z|(\+|-)\d{2}:\d{2})?)?)?)?)?)?)?$
}

When I wrote that I didn't know that date parssing sucks, there's already a regex for the ISO 8601 but it's not enough imo. If someone want to work on this function it's in public/typeDetection.js I don't have time for that atm.