@String{SQJ = {Software Quality Journal}} @STRING{Proc = { Proceedings of the }} @STRING{ACM = { ACM }} @STRING{ACMPress = ACM # { Press }} @String{AGST = {Software Engineering Group, University of Bremen, Germany}} @STRING{ASE = { International Conference on Automated Software Engineering }} @STRING{AW = { Addison-Wesley }} @STRING{CSMR = { European Conference on Software Maintenance and Reengineering }} @String{EMSE = {Empirical Software Engineering}} @STRING{ICECCS = { International Conference on Engineering of Complex Computer Systems }} @STRING{ICSE = { International Conference on Software Engineering }} @STRING{ICSM = { International Conference on Software Maintenance }} @STRING{ICSME = { International Conference on Software Maintenance and Evolution}} @STRING{ICSR = { International Conference on So2ftware Reuse }} @STRING{ICPC = { International Conference on Program Comprehension }} @STRING{IEEE = { IEEE Computer Society }} @STRING{IEEEPress = IEEE # { Press }} @STRING{IESE = {Fraunhofer IESE}} @STRING{IWPC = {International Workshop on Program Comprehension}} @STRING{IWSC = {International Workshop on Software Clones}} @STRING{JASE = { Journal on Automated Software Engineering, Kluwer Academic Publishers }} @String{JSCP = {Journal of Science of Computer Programming}} @STRING{JSEP = {Journal of Software: Evolution and Process}} @STRING{JSME = {Journal on Software Maintenance and Evolution}} @String{JSS = {Journal of Systems and Software}} @STRING{LNCS = {Lecture Notes in Computer Science}} @STRING{Springer = {Springer Verlag}} @STRING{OOPSLA = Proc # {ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA)}} @STRING{PASTE = { Program Analysis for Software Technology }} @STRING{SEI = {Software Engineering Institute (SEI), Carnegie Mellon University}} @STRING{SEN = {ACM SIGSOFT Software Engineering Notes}} @STRING{SPE = {Software---Practice and Experience, Wiley}} @String{STT = {Softwaretechnik Trends}} @STRING{TOPLAS = {ACM Transactions on Programming Languages and Systems}} @STRING{TOSEM = ACM # { Transactions on Software Engineering and Methodology}} @STRING{TSE = IEEE # { Transactions on Software Engineering}} @STRING{WCRE = { Working Conference on Reverse Engineering }} @STRING{SCAM = { Conference on Source Code Analysis and Manipulation }} @STRING{METRICS = {{IEEE Symposium on Software Metrics}}} @STRING{WICSA = { {IEEE/IFIP} Working Conference on Software Architecture }} @STRING{COMPSAC = {International Computer Software and Applications Conference}} @STRING{CASCON = {Conference of the Centre for Advanced Studies on Collaborative research}} @STRING{WSR = {Workshop on Software Reengineering}} @STRING{IWPSE = {International Workshop on Principles of Software Evolution}} @STRING{ESECFSE = {European Software Engineering Conference and Foundations of Software Engineering (ESEC/FSE}} @STRING{Dagstuhl = {{Internationales Begegnungs- und Forschungszentrum fuer Informatik (IBFI), Schloss Dagstuhl, Germany}}} @STRING{VISSOFTWork = {Workshop on Visualizing Software for Understanding and Analysis}} @STRING{VISSOFTConf = {IEEE Working Conference on Software Visualization}} @String{ESE = {Embedded Software Engineering Kongress}} @String{ESSOS = {International Symposium on Engineering Secure Software and Systems}} @String{PATTERNS = {International Conferences on Pervasive Patterns and Applications (PATTERNS)}} @String{PROMISE = PROC # {International Conference on Predictive Models in Software Engineering}} @STRING{SBMF = {Brazilian Symposium on Formal Methods}} @STRING{ENTCS = {Electronic Notes in Theoretical Computer Science}} @STRING{ELSEVIER = {Elsevier Science}} @String{MODELSWARD = Proc # {International Conference on Model-Driven Engineering and Software Development}} @String{SAEroCon = {Workshop on Software Architecture Erosion and Architectural Consistency}} @String{ESE = Proc # { Embedded Software Engineering }} @InProceedings{KoschkeHB:ESE:18, author = {Rainer Koschke and Jan Harder and Saman Bazrafshan}, title = {Erosion von Software: Was kann uns die Wissenschaft heute dazu sagen?}, booktitle = ESE, year = 2018, note = {number of pages: 14}, } @Misc{Koschke:ESE:16:Varianten, author = {Rainer Koschke}, title = {{Wie treibt man die Herde wieder sicher zusammen? Architekturanalyse f{\"u}r Software-Varianten}}, howpublished = ESE, note = {5 Seiten}, month = nov, year = 2016, publisher = {Elektronikpraxis und Mircoconsult}, non-peer = {true}, } @Misc{Koschke:ESE:16:Analytics, author = {Rainer Koschke}, title = {{Software Analytics in komplexen Projekten: Verwertbares Wissen aus Daten {\"u}ber Software und Entwicklung}}, howpublished = ESE, note = {5 Seiten}, year = 2016, month = nov, publisher = {Elektronikpraxis und Mircoconsult}, non-peer = {true}, } @Misc{Koschke:ESE:17, author = {Rainer Koschke}, title = {{Software-Visualisierung heute und morgen: Wie man sich einen Einblick in Software verschafft}}, howpublished = ESE, note = {17 Seiten}, year = 2017, month = dec, publisher = {Elektronikpraxis und Mircoconsult}, non-peer = {true}, } @Misc{Koschke:ESE:18, author = {Rainer Koschke}, title = {{Erosion von Software: Was kann uns die Wissenschaft heute dazu sagen?}}, howpublished = ESE, month = dec, year = 2018, publisher = {Elektronikpraxis und Mircoconsult}, url = {https://www.ese-kongress.de/kongress/programm.php}, non-peer = {true}, } @Misc{Koschke:ESE:Tutorial:18, author = {Rainer Koschke}, title = {{Software Analytics -- Wie aus Daten {\"u}ber Software verwertbares Wissen wird}}, howpublished = {{Tutorial-Folien}}, month = dec, year = 2018, note = ESE, url = {https://www.ese-kongress.de/kongress/programm.php}, non-peer = {true}, } @Misc{Koschke:ESE:Tutorial:15, author = {Rainer Koschke}, title = {{Software Analytics -- Wie aus Daten {\"u}ber Software verwertbares Wissen wird}}, howpublished = {{Tutorial-Folien}}, month = nov, year = 2015, note = ESE, non-peer = {true}, } @Misc{Koschke:ESE:Tutorial:16, author = {Rainer Koschke}, title = {{Software-Erosion: Auswirkung, Verfolgung und Bek{\"a}mpfung. So stoppen Sie den schleichenden Verfall der inneren Qualit{\"a}t}}, howpublished = {{Tutorial-Folien}}, month = nov, year = 2016, note = ESE, non-peer = {true}, } @Misc{Koschke:ESE:Tutorial:17, author = {Rainer Koschke}, title = {{Software-Erosion: Auswirkung, Verfolgung und Bek{\"a}mpfung So stoppen Sie den Verfall der inneren Qualit{\"a}t}}, howpublished = {{Tutorial-Folien}}, month = dec, year = 2017, note = ESE, non-peer = {true}, } @InProceedings{Said:ICSME:18a, author = {Wasim Said and Jochen Quante and Rainer Koschke}, title = {On State Machine Mining from Embedded Control Software}, booktitle = ICSME, year = {2018}, pages = {11 pages}, month = sep, publisher = IEEEPress, note = {Accepted for publication}, url = {https://icsme2018.github.io/program/Accepted.html}, } @InProceedings{Said:ICSME:18b, author = {Wasim Said and Jochen Quante and Rainer Koschke}, title = {Reflexion Models for State Machine Extraction and Verification}, booktitle = ICSME, year = {2018}, pages = {11 pages}, month = sep, publisher = IEEEPress, note = {Accepted for publication}, url = {https://icsme2018.github.io/program/Accepted.html}, } @InProceedings{Koschke:SCAM:18, author = {Rainer Koschke and Urs-Bj{\"o}rn Schmidt and Bernhard J. Berger}, title = {Built-in Clone Detection in Meta Languages}, booktitle = SCAM, year = {2018}, pages = {6 pages}, month = sep, publisher = IEEEPress, note = {Accepted for publication}, url = {http://www.ieee-scam.org/2018/#program}, } @InProceedings{Ruedel:VISSOFT:18, author = {Marc-Oliver R{\"u}del and Johannes Ganser and Rainer Koschke}, title = {Spatial Orientation in VR-based Software Cities}, booktitle = VISSOFTConf, year = {2018}, pages = {11 pages}, month = sep, publisher = IEEEPress, note = {Accepted for publication}, url = {http://vissoft18.etsii.urjc.es/program.html}, } @InProceedings{Koschke:SAEroCon:18, author = {Rainer Koschke}, title = {Industrial Experience on Code Clean-Up Using Architectural Conformance Checking}, booktitle = SAEroCon, year = 2018, pages = {7 pages}, month = sep, publisher = ACMPress, note = {Accepted for publication}, url = {https://saerocon.wordpress.com/program/}, } @InProceedings{Kaefer:IWSC:18, author = {Verena K{\"a}fer and Stefan Wagner and Rainer Koschke}, title = {Are There Functionally Similar Code Clones in Practice?}, booktitle = IWSC, year = {2018}, pages = {2--8}, month = mar, publisher = IEEEPress, } @InProceedings{Koschke:IWSC:18, author = {Rainer Koschke and Moritz Weinig}, title = {Generated Code in Studies on Clone Rates}, booktitle = IWSC, year = {2018}, pages = {16--22}, month = mar, publisher = IEEEPress, } @InProceedings{Said:MODELSWARD:18, author = {Wasim Said and Jochen Quante and Rainer Koschke}, title = {Towards Interactive Mining of Understandable State Machine Models from Embedded Software}, booktitle = MODELSWARD, year = 2018, month = jan, pages = {117--128}, publisher = {SciTePress}, organization = {INSTICC}, doi = {10.5220/0006593501170128}, isbn = {978-989-758-283-7}, note = {Best Student Paper Award}, } @InBook{Said:CCIS:18, author = {Wasim Said and Jochen Quante and Rainer Koschke}, title = {Interactive Measures for Mining Understandable State Machines from Embedded Software: Experiments and Case Studies}, chapter = {}, publisher = {Springer}, year = 2018, series = {Communications in Computer and Information (CCIS)}, type = {Selected papers from MODELSWARD 2018.}, pages = {24 pages}, note = {Extended MODELSWARD 2018 paper; accepted for publication.}, } @PhdThesis{Luedemann:Diss:18, author = {Dierk L{\"u}demann}, title = {Kontrollfussanalyse und formale Begriffsanalyse von C-Code aus Software-Produktlinien mit Variabilit{\"a}tsmanagement durch den Pr{\"a}prozessor}, school = {University of Bremen, Germany}, year = 2018, type = {{PhD} Dissertation}, } @PhdThesis{Harder:Diss:18, author = {Jan Harder}, title = {Software Clones -- Guilty Until Proven Innocent?}, school = {University of Bremen, Germany}, year = 2018, type = {{PhD} Dissertation}, } @PhdThesis{Bazrafshan:Diss:17, author = {Saman Bazrafshan}, title = {Empirical Research towards a Relevance Assessment of Software Clones}, school = {University of Bremen, Germany}, year = 2017, type = {{PhD} Dissertation}, } @InProceedings{Berger:ESSOS:16, author = {Bernhard J. Berger and Karsten Sohr and Rainer Koschke}, title = {Automatically Extracting Threats from Extended Data Flow Diagrams}, booktitle = ESSOS, year = 2016, month = apr, publisher = Springer, series = LNCS, editor = {Juan Caballero and Eric Bodden and Elias Athanasopoulos}, isbn = {978-3-319-30806-7}, pages = {56--71}, } @InProceedings{Koschke:IWSC:16, author = {Rainer Koschke and Saman Bazrafshan}, title = {Software-Clone Rates in Open-Source Programs Written in C or C++}, booktitle = IWSC # {; published in Proceedings of Software Analysis, Evolution, and Reengineering (SANER)}, year = 2016, month = mar, volume = 3, pages = {1--7}, publisher = IEEEPress, } @InProceedings{Luedemann:SCAM:15, author = {Dierk L{\"u}demann and Rainer Koschke}, title = {From Preprocessor-Constrained Parse Graphs to Preprocessor-Constrained Control Flow}, booktitle = SCAM, year = 2015, month = sep, pages = {211--220}, publisher = IEEEPress, } @InProceedings{Basit:VISSOFT:15, author = {Hamid Abdul Basit and Muhammad Hammad and Rainer Koschke}, title = {A Survey on Goal-Oriented Visualization of Clone Data}, booktitle = VISSOFTConf, year = 2015, month = sep, pages = {46--55}, publisher = IEEEPress, } @PhdThesis{Falke:Diss:14, author = {Raimar Falke}, title = {Erkennung von Falsch-Positiven Softwareklonen mittels Lernverfahren}, school = {University of Bremen, Germany}, year = 2014, publisher = {Logos Verlag}, type = {{PhD} Dissertation}, isbn = {978-3-8325-3651-0}, } @PhdThesis{Frenzel:Diss:14, author = {Pierre Frenzel}, title = {Erweiterung der Reflexionsmethode zur Zusammenfassung von Produktarchitekturen zu einer Produktlinienarchitektur}, school = {Universit{\"a}t Bremen}, year = 2014, type = {Dissertation}, address = {AG Softwaretechnik, Fachbereich Mathematik und Informatik}, month = jan, } @inproceedings{Bunke:EUROPLOP:2014, author = {Bunke, Michaela}, title = {On the Description of Software Security Patterns}, booktitle = {Proceedings of the 19th European Conference on Pattern Languages of Programs}, series = {EuroPLoP '14}, year = 2014, isbn = {978-1-4503-3416-7}, location = {Irsee, Germany}, pages = {34:1--34:10}, articleno = 34, numpages = 10, url = {http://doi.acm.org/10.1145/2721956.2721990}, doi = {10.1145/2721956.2721990}, acmid = 2721990, publisher = {ACM}, address = {New York, NY, USA}, keywords = {design patterns, patterns, security patterns}, } @Proceedings{Koschke:IWSC:14, editor = {Rainer Koschke and Yoshiki Higo and Nils G{\"o}de}, title = {Proceedings of the International Workshop on Software Clones}, year = 2014, publisher = {Electronic Communications of the EASST}, volume = 63, issn = {1863-2122}, } @Article{Riemann:IWSC:14, author = {Ole Jan Lars Riemann and Rainer Koschke}, title = {Robust Parsing of Cloned Token Sequences}, journal = {Electronic Communications of the EASST}, year = 2014, volume = 63, pages = {20 pages}, issn = {1863-2122}, note = {Proceedings of the International Workshop on Software Clones 2014}, } @InProceedings{Bazrafshan:SCAM:14, author = {Saman Bazrafshan and Rainer Koschke}, title = {Effect of Clone Information on the Performance of Developers Fixing Cloned Bugs}, booktitle = SCAM, year = 2014, pages = {1--10}, publisher = IEEEPress, } @article{Maalej:TOSEM:14, author = {Maalej, Walid and Tiarks, Rebecca and Roehm, Tobias and Koschke, Rainer}, title = {On the Comprehension of Program Comprehension}, journal = TOSEM, issue_date = {August 2014}, volume = 23, number = 4, month = sep, year = 2014, issn = {1049-331X}, pages = {31:1--31:37}, articleno = 31, numpages = 37, url = {http://doi.acm.org/10.1145/2622669}, doi = {10.1145/2622669}, acmid = 2622669, publisher = ACMPress, keywords = {Empirical software engineering, context-aware software engineering, information needs, knowledge sharing, program comprehension}, } @InProceedings{Roy:CSMRWCRE:14, author = {Chanchal K. Roy and Minhaz F. Zibran and Rainer Koschke}, title = {The Vision of Software Clone Management: Past, Present and the Future}, booktitle = {IEEE Conference on Software Maintenance, Reengineering and Reverse Engineering (CSMR-WCRE), 2014 Software Evolution Week}, pages = {18--33}, year = 2014, publisher = IEEEPress, note = {Invited Keynote Paper}, } @inproceedings{Bartsch:GI:2014, author = {Steffen Bartsch and Bernhard J. Berger and Eric Bodden and Achim D. Brucker and Jens Heider and Mehmet Kus and S{\"o}nke Maseberg and Karsten Sohr and Melanie Volkamer}, title = {Zertifizierte Datensicherheit f{\"u}r Android-Anwendungen auf Basis statischer Programmanalysen}, booktitle = {Sicherheit 2014 Sicherheit, Schutz und Zuverl{\"a}ssigkeit}, pages = {283--291}, year = 2014, publisher = {GI}, series = {LNI}, volume = 228, isbn = {978-3-88579-622-0}, editor = {Stefan Katzenbeisser, Volkmar Lotz and Edgar Weippl}, } @Article{Koschke:JSEP:14, author = {Rainer Koschke}, title = {Large-scale inter-system clone detection using suffix trees and hashing}, journal = JSEP, year = 2014, doi = {DOI: 10.1002/smr.1592}, volume = 26, number = 8, pages = {747--769}, month = aug, } @inproceedings{Bartsch:ARES:2013, author = {Steffen Bartsch and Bernhard J. Berger and Michaela Bunke and Karsten Sohr}, title = {The Transitivity-of-Trust Problem in Android Application Interaction}, booktitle = {Eighth International Conference on Availability, Reliability and Security (ARES), 2013}, pages = {291--296}, year = 2013, publisher = IEEEPress, } @inproceedings{Bazrafshan:ICSM:2013, author = {Saman Bazrafshan and Rainer Koschke}, title = {An Empirical Study of Clone Removals}, booktitle = ICSM, publisher = IEEEPress, year = 2013, pages = {50-59}, } @InProceedings{Chatterji:WCRE:2013, author = {Debarshi Chatterji and Jeffrey C. Carver and Nicholas A. Kraft and Jan Harder}, title = {Effects of Cloned Code on Software Maintainability: A Replicated Developer Study}, year = 2013, pages = {112--121}, booktitle = WCRE, } @techreport{Chatterji:TR:2013, author = {Debarshi Chatterji and Jeffrey C. Carver and Nicholas A. Kraft and Jan Harder}, title = {Effects of Cloned Code on Software Maintainability: A Replicated Developer Study}, institution = {Department of Computer Science, The University of Alabama}, year = 2013, month = apr, url = {http://software.eng.ua.edu/reports/SERG-2013-01}, number = {SERG-2013-01}, non-peer = {true}, } @inproceedings{Harder:ICSM:2013, author = {Jan Harder}, title = {How Multiple Developers Affect Clone Evolution}, booktitle = ICSM, publisher = IEEE, year = 2013, pages = {30-39}, } @Proceedings{Koschke:IWSC:13, title = {Proceedings of the International Workshop on Software Clones}, year = 2013, booktitle = ICSE, editor = {Rainer Koschke and Elmar J{\"u}rgens and J{\"u}rgen Rilling}, publisher = ACMPress, } @article{Harder:WSR:13, author = {Jan Harder and Saman Bazrafshan and Rebecca Tiarks}, title = {Wie kommen Entwickler mit Klonen zurecht?}, journal = STT, year = 2013, non-peer = {true}, volume = 33, number = 2, pages = {2 Seiten}, non-peer = {true}, } @InProceedings{Schmid:DFF:13, author = {Klaus Schmid and Rainer Koschke and Christian Kr{\"o}her and Dierk L{\"u}demann}, title = {Towards Identifying Evolution Smells in Software Product Lines}, booktitle = {5. Workshop Design For Future --- Langlebige Softwaresysteme}, year = 2013, publisher = {CEUR Workshop Proceedings}, non-peer = {true}, } @inproceedings{Bazrafshan:IWSC:13, author = {Saman Bazrafshan}, title = {No Clones, No Trouble?}, booktitle = IWSC, year = 2013, publisher = IEEE, pages = {37--38}, note = {Position Paper}, } @inproceedings{Harder:IWSC:13, author = {Jan Harder}, title = {The Limits of Clone Model Standardization}, booktitle = IWSC, year = 2013, publisher = IEEE, pages = {10--11}, note = {Position Paper}, } @inproceedings{berger:csmr:13, editor = {Anthony Cleve and Fillipo Ricca and Maura Cerioli}, author = {Bernhard J. Berger and Karsten Sohr and Rainer Koschke}, title = {Extracting and Analyzing the Implemented Security Architecture of Business Applications}, booktitle = CSMR, year = 2013, pages = {285--294}, ISBN = {978-0-7695-4948-4}, keywords = {reverse engineering;software security;static analysis;threat modeling}, doi = {http://dx.doi.org/10.1109/CSMR.2013.37}, ISSN = {1534-5351}, publisher = IEEEPress, } @Article{Harder:JSEP:13, author = {Jan Harder and Nils G\"{o}de}, title = {Cloned code: stable code}, journal = JSEP, issn = {2047--7481}, url = {http://dx.doi.org/10.1002/smr.1551}, doi = {10.1002/smr.1551}, volume = 25, number = 10, month = oct, pages = {1063--1088}, year = 2013, } @Article{Goede:JSME:13, author = {Nils G\"{o}de and Rainer Koschke}, title = {Studying clone evolution using incremental clone detection}, journal = JSEP, year = 2013, month = feb, volume = 25, number = 2, pages = {165--192}, doi = {10.1002/smr.520}, issn = {2047-7473}, } @Article{Koschke:JSME:13, author = {Rainer Koschke}, title = {Incremental Reflexion Analysis}, journal = JSEP, year = 2013, volume = 25, number = 6, pages = {601--638}, note = {Special Issue of CSMR'2010}, } @inproceedings{Codescu:Hets:13, author = {Mihai Codescu and Till Mossakowski and Christian Maeder}, title = {{Checking conservativity with Hets}}, booktitle = {Algebra and Coalgebra in Computer Science, 5th International Conference, CALCO 2013, September 3-6, Warsaw, Poland}, editor = {Reiko Heckel and Stefan Milius}, series = LNCS, volume = 8089, pages = {315--321}, year = 2013, publisher = Springer, } @Proceedings{Inoue:IWSC:12, title = {Proceedings of the International Workshop on Software Clones}, year = 2012, booktitle = ICSE, editor = {Katsuro Inoue and James R. Cordy and Rainer Koschke and Jens Krinke and Chanchal Roy}, publisher = ACMPress, } @article{Bazrafshan:WSR:12, author = {Saman Bazrafshan}, title = {Late propagation of Type-3 Clones}, journal = {Softwaretechnik-Trends}, volume = 32, number = 2, pages = {2 Seiten}, year = 2012, non-peer = {true}, } @Proceedings{Koschke:Dagstuhl:12, editor = {Rainer Koschke and Ira D. Baxter and Michael Conradt and James R. Cordy}, title = {{Software Clone Management Towards Industrial Application (Dagstuhl Seminar 12071)}}, ISSN = {2192-5283}, year = 2012, volume = 2, number = 2, booktitle = {Dagstuhl Reports}, publisher = {Schloss Dagstuhl--Leibniz-Zentrum fuer Informatik}, address = {Dagstuhl, Germany}, URL = {http://drops.dagstuhl.de/opus/volltexte/2012/3477}, URN = {urn:nbn:de:0030-drops-34775}, doi = {http://dx.doi.org/10.4230/DagRep.2.2.21}, } @inproceedings{koschke_et_al:DR:2012:3477, author = {Rainer Koschke and Ira D. Baxter and Michael Conradt and James R. Cordy}, title = {Software Clone Management Towards Industrial Application (Dagstuhl Seminar 12071)}, pages = {21--57}, booktitle = {Dagstuhl Reports}, ISSN = {2192-5283}, year = 2012, volume = 2, number = 2, editor = {Rainer Koschke and Ira D. Baxter and Michael Conradt and James R. Cordy}, publisher = {Schloss Dagstuhl--Leibniz-Zentrum fuer Informatik}, address = {Dagstuhl, Germany}, URL = {http://drops.dagstuhl.de/opus/volltexte/2012/3477}, URN = {urn:nbn:de:0030-drops-34775}, doi = {http://dx.doi.org/10.4230/DagRep.2.2.21}, } @InProceedings{Bazrafshan:SCAM:2012, author = {Saman Bazrafshan}, booktitle = SCAM, title = {Evolution of Near-Miss Clones}, year = 2012, pages = {74--83}, publisher = IEEEPress, } @InProceedings{Hemel:WCRE:12, title = {Reverse Engineering Variability in Source Code Using Clone Detection -- A Case Study for Linux Variants of Consumer Electronic Devices}, author = {Armijn Hemel and Rainer Koschke}, booktitle = WCRE, year = 2012, pages = {357--366}, publisher = IEEEPress, } @inproceedings{Berger:SEC:12, author = {Bernhard J. Berger and Karsten Sohr}, title = {An Approach to Detecting Inter-Session Data Flow Induced by Object Pooling}, booktitle = {Information Security and Privacy Research - 27th IFIP TC 11 Information Security and Privacy Conference, SEC 2012, Heraklion, Crete, Greece, June 4-6, 2012. Proceedings}, year = 2012, pages = {25--36}, editor = {Dimitris Gritzalis and Steven Furnell and Marianthi Theoharidou}, publisher = Springer, series = {IFIP Advances in Information and Communication Technology}, volume = 376, year = 2012, isbn = {978-3-642-30435-4}, } @inproceedings{Katzmarski:ICPC:12, author = {Bernhard Katzmarski and Rainer Koschke}, title = {Program complexity metrics and programmer opinions}, booktitle = ICPC, year = 2012, pages = {17--26}, ee = {http://dx.doi.org/10.1109/ICPC.2012.6240486}, publisher = IEEEPress, } @article{Bunke:IJOAS:2012, journal = {International Journal On Advances in Security}, year = 2012, author = {Michaela Bunke and Rainer Koschke and Karsten Sohr}, volume = 5, number = {1\&2}, title = {Organizing Security Patterns Related to Security and Pattern Recognition Requirements}, publisher = {XPS (Xpert Publishing Services)}, pages = {46--67}, issn = {1942-2636}, month = jul, } @InProceedings{Harder:ICPC:12, author = {Jan Harder and Rebecca Tiarks}, title = {A Controlled Experiment on Software Clones}, booktitle = ICPC, pages = {219--228}, year = 2012, doi = {http://dx.doi.org/10.1109/ICPC.2012.6240491}, publisher = IEEEPress, } @inproceedings{Kapser:IWSC:2012, author = {Cory Kapser and Jan Harder and Ira Baxter}, title = {A Common Conceptual Model for Clone Detection Results}, booktitle = {6th International Workshop on Software Clones}, year = 2012, publisher = IEEE, doi = {http://dx.doi.org/10.1109/IWSC.2012.6227870}, } @Article{Harder:WSR:12, author = {Jan Harder}, title = {Code Clone Authorship---A First Look}, journal = STT, year = 2012, volume = 32, number = 2, pages = {25--26}, non-peer = {true}, } @InProceedings{Koschke:CSMR:12, author = {Rainer Koschke}, title = {Large-Scale Inter-System Clone Detection Using Suffix Trees}, booktitle = CSMR, pages = {309--318}, year = 2012, publisher = IEEEPress, } @InProceedings{Roehm:ICSE:12, author = {Tobias Roehm and Rebecca Tiarks and Rainer Koschke and Walid Maalej}, title = {How Do Professional Developers Comprehend Software?}, booktitle = ICSE, year = 2012, pages = {255--265}, publisher = ACMPress, note = {Distinguished Paper Award}, } @inproceedings{Autexier:LNCS:12, author = {Serge Autexier and Dominik Dietrich and Dieter Hutter and Christoph L{\"{u}}th and Christian Maeder}, title = {{SmartTies - Management of Safety-Critical Developments}}, booktitle = {Leveraging Applications of Formal Methods, Verification and Validation. 5th International Symposium, ISoLA 2012, October 15-18, Heraclion, Greece}, editor = {Tiziana Margaria and Bernhard Steffen}, series = LNCS, volume = 7609, pages = {238--252}, year = 2012, publisher = Springer, keywords = {Change Management, Safety-Critical Systems, Formal Methods, Graph Rewriting}, } @InProceedings{Goede:ICSE:11, author = {Nils G\"{o}de and Rainer Koschke}, title = {Frequency and Risks of Changes to Clones}, booktitle = ICSE, year = 2011, pages = {311--320}, publisher = ACMPress, } @inproceedings{Codescu:Hets:11, author = {Mihai Codescu and Till Mossakowski and Adri{\'{a}}n Riesco and Christian Maeder}, title = {{Integrating Maude into Hets}}, booktitle = {Algebraic Methodology and Software Technologyy. 13th International Conference, {AMAST} 2010, June 23-25, Lac-Beauport, Canada}, editor = {Michael Johnson and Dusko Pavlovic}, series = LNCS, volume = 6486, pages = {60--75}, year = 2011, publisher = Springer, } @article{Regivan:SBMAC:11, author = {Regivan Hugo Nunes Santiago and Christian Maeder}, title = {{Linguistic Variables of Type-N - a Mathematical Model}}, abstract = {This work proposes a generalization for the notions of Linguistic Variables and Fuzzification Process. The idea is to provide a concept of fuzzy systems in which the linguistic terms of a linguistic variable are not necessarily connected with fuzzy sets of the same type. Those systems are called here Systems of Type-n. We introduce concepts like n-Homogeneous linguistic variables which emphasizes the occurrence of different levels of uncertainty in such Fuzzy systems. The most important result is the statement of the General Fuzzification Expression (GFE) which establishes how the fuzzification process must be calculated in every system of type-n.}, number = 1, month = apr, year = 2011, journal = {Tendencias em Matematica Aplicada e Computacional (TEMA)}, volume = 12, pages = {21--30}, publisher = {SBMAC, Brasil}, keywords = {Fuzzy Sets, Type-n Fuzzy sets, systems of type-n, n-homogeneous linguistic variables, heterogeneous linguistic variables}, } @Article{Tiarks:WSR:2011, author = {Rebecca Tiarks}, title = {What Programmers Really Do: An Observational Study}, year = 2011, journal = STT, volume = 31, number = 2, month = may, non-peer = {true}, } @Proceedings{Inoue:IWSC:11, title = {Proceedings of the International Workshop on Software Clones}, year = 2011, booktitle = ICSE, editor = {Katsuro Inoue and James R. Cordy and Rainer Koschke}, publisher = ACMPress, } @PhdThesis{Mende:Diss:11, author = {Thilo Mende}, title = {On the Evaluation of Defect Prediction Models}, school = {University of Bremen, Germany}, year = 2011, type = {{PhD} Dissertation}, publisher = {Verlag MV-Wissenschaft}, isbn = {978-3-86991-500-5}, } @InProceedings{Scholz:WCRE:11, author = {Bernhard Scholz and Rainer Koschke}, title = {Object-Based Dynamic Protocol Recovery for Multi-Threading Programs}, booktitle = WCRE, year = 2011, publisher = IEEEPress, pages = {251--260}, } @InProceedings{Bazrafshan:WCRE:11, author = {Saman Bazrafshan and Rainer Koschke and Nils G\"{o}de}, title = {Approximate Code Search in Program Histories}, booktitle = WCRE, year = 2011, publisher = IEEEPress, isbn = {978-0-7695-4582-0}, pages = {109--118}, } @InProceedings{Berger:WCRE:11, author = {Bernhard J. Berger and Michaela Bunke and Karsten Sohr}, title = {An Android Security Case Study with Bauhaus}, booktitle = WCRE, year = 2011, publisher = IEEEPress, pages = {179--183}, } @InProceedings{Bunke:PATTERNS:11, author = {Michaela Bunke and Rainer Koschke and Karsten Sohr}, title = {Application-Domain Classification for Security Patterns}, booktitle = PATTERNS, year = 2011, organization = {IARIA Conferences}, publisher = {XPS (Xpert Publishing Services)}, pages = {138--143}, isbn = {978-1-61208-158-8}, } @inproceedings{Sohr:ESSOS:2010, author = {Karsten Sohr and Bernhard J. Berger}, title = {Idea: Towards Architecture-Centric Security Analysis of Software}, booktitle = ESSOS, year = 2010, publisher = Springer, series = LNCS, editor = {Fabio Massacci and Dan S. Wallach and Nicola Zannone}, volume = 5965, isbn = {978-3-642-11746-6}, pages = {70--78}, } @PhdThesis{Goede:Diss, author = {Nils G\"{o}de}, title = {Clone Evolution}, school = {University of Bremen}, year = 2011, type = {{PhD} dissertation}, address = {Bremen, Germany}, isbn = {978-3-8325-2920-8}, publisher = {Logos Verlag}, } @PhdThesis{Quante:Diss, author = {Jochen Quante}, title = {Dynamic Object Process Graphs}, school = {University of Bremen}, year = 2009, type = {{PhD} dissertation}, address = {Bremen, Germany}, isbn = {978-3-86582-869-9}, publisher = {MV-Verlag}, } @Article{Berger:WSR:2011, author = {Bernhard Berger and Michaela Bunke}, title = {Software Security Comprehension}, year = 2011, journal = STT, volume = 31, number = 2, month = {may}, pages = {30--31}, non-peer = {true}, } @inproceedings{Bunke:ESSOS:2011, author = {Michaela Bunke and Karsten Sohr}, title = {An Architecture-Centric Approach to Detecting Security Patterns in Software}, booktitle = ESSOS, year = 2011, pages = {156--166}, publisher = Springer, series = LNCS, volume = 6542, isbn = {978-3-642-19124-4}, } @InProceedings{Harder:IWSC:11, author = {Jan Harder and Nils G\"{o}de}, title = {Efficiently Handling Clone Data: {RCF} and {Cyclone}}, booktitle = IWSC, year = 2011, pages = {81--82}, publisher = {ACM}, doi = {http://dx.doi.org/10.1145/1985404.1985427}, } @Article{Harder:WSR:11, author = {Jan Harder and Nils G\"{o}de and Marcus Rausch}, title = {Stability of {COBOL} Clones}, journal = STT, year = 2011, volume = 31, number = 2, pages = {24--25}, non-peer = {true}, } @InProceedings{Mende:CSMR:11, author = {Thilo Mende and Rainer Koschke and Jan Peleska}, title = {On the Utility of a Defect Prediction Model during HW/SW Integration Testing: A Retrospective Case Study}, booktitle = CSMR, pages = {259--268}, year = 2011, publisher = IEEEPress, } @Article{Tiarks:SQJ:11, author = {Rebecca Tiarks and Rainer Koschke and Raimar Falke}, title = {An extended assessment of type-3 clones as detected by state-of-the-art tools}, journal = SQJ, year = 2011, volume = 19, number = 2, pages = {295--331}, } @InProceedings{Goede:CSMR:11, author = {Nils G\"{o}de and Jan Harder}, title = {Clone Stability}, booktitle = CSMR, year = 2011, publisher = IEEEPress, pages = {64--74}, doi = {http://dx.doi.org/10.1109/CSMR.2011.11}, } @InProceedings{Goede:2011:IWSC, author = {Nils G\"{o}de and Jan Harder}, title = {Oops!... {I} Changed It Again}, booktitle = IWSC, year = 2011, pages = {14--20}, publisher = {ACM}, doi = {http://dx.doi.org/10.1145/1985404.1985408}, } @Article{Goede:2011:WSR, author = {Nils G\"{o}de}, title = {Not All That Glitters Is Gold}, journal = STT, year = 2011, volume = 31, number = 2, pages = {22--23}, non-peer = {true}, } @Proceedings{Inoue:IWSC:10, title = {Proceedings of the International Workshop on Software Clones}, year = 2010, booktitle = ICSE, editor = {Katsuro Inoue and James R. Cordy and Stanislaw Jarzabek and Rainer Koschke}, publisher = ACMPress, } @InProceedings{Mende:Promise:10, author = {Thilo Mende}, title = {Replication of Defect Prediction Studies: Problems, Pitfalls and Recommendations}, booktitle = PROMISE, year = 2010, isbn = {978-1-4503-0404-7}, pages = {1--10}, doi = {http://doi.acm.org/10.1145/1868328.1868336}, publisher = ACMPress, } @Article{Goede:WSR:10, author = {Nils G\"{o}de and Marcus Rausch}, title = {Clone Evolution Revisited}, journal = STT, year = 2010, volume = 30, number = 2, pages = {60--61}, issn = {0720-8928}, month = may, note = {Beitr{\"a}ge des 12. Workshops 'Software Reengineering' (WSR 2010) }, non-peer = {true}, } @InProceedings{Harder:IWSC:10, author = {Jan Harder and Nils G\"{o}de}, title = {Quo Vadis, Clone Management?}, booktitle = IWSC, year = 2010, pages = {85--86}, publisher = ACM, doi = {http://dx.doi.org/10.1145/1808901.1808917}, } @InProceedings{Juergens:IWSC:10, author = {Elmar Juergens and Nils G\"{o}de}, title = {Achieving Accurate Clone Detection Results}, booktitle = IWSC, year = 2010, pages = {1--8}, publisher = ACM, } @Article{Mende:WSR:10, author = {Thilo Mende and Rainer Koschke}, title = {{Evaluation von Modellen zur Fehlervorhersage: Probleme und L{\"o}sungsm{\"o}glichkeiten}}, journal = STT, year = 2010, volume = 30, number = 2, pages = {74--75}, issn = {0720-8928}, month = may, note = {Beitr{\"a}ge des 12. Workshops 'Software Reengineering' (WSR 2010) }, non-peer = {true}, } @InProceedings{Goede:IWSC:10, author = {Nils G\"{o}de}, title = {Clone Removal: Fact or Fiction?}, booktitle = IWSC, year = 2010, pages = {33--40}, publisher = ACMPress, } @InProceedings{Koschke:CSMR:10, author = {Rainer Koschke}, title = {Incremental Reflexion Analysis}, booktitle = CSMR, year = 2010, publisher = IEEEPress, pages = {1--10}, } @InProceedings{Mende:CSMR:10, author = {Thilo Mende and Rainer Koschke}, title = {Effort-Aware Defect Prediction Models}, booktitle = CSMR, year = 2010, publisher = IEEEPress, pages = {109--118}, } @inproceedings{Codescu:Hets:09, author = {Mihai Codescu and Bruno Langenstein and Christian Maeder and Till Mossakowski}, title = {{The VSE Refinement Method in Hets}}, booktitle = {Formal Methods and Software Engineering, 11th International Conference on Formal Engineering Methods, {ICFEM} 2009, December 9-12, Rio de Janeiro, Brazil}, editor = {Karin K. Breitman and Ana Cavalcanti}, series = LNCS, volume = 5885, pages = {660--678}, year = 2009, publisher = Springer, } @Proceedings{Inoue:IWSC:09, title = {Proceedings of the International Workshop on Software Clones}, year = 2009, booktitle = CSMR, editor = {Katsuro Inoue and James R. Cordy and Stanislaw Jarzabek and Rainer Koschke}, publisher = ACMPress, } @InBook{Koschke:ISSSE:09, author = {Rainer Koschke}, title = {Software Engineering: International Summer Schools}, chapter = {Architecture Reconstruction}, publisher = Springer, year = 2009, isbn = {3-540-95887-8}, pages = {140--173}, note = {edited by Andrea De Lucia and Filomena Ferrucci}, } @MastersThesis{Tichanow:09, author = {Dimitri Tichanow}, title = {{Berechnung einer Sequenz von Editieroperationen zwischen Code-Fragmenten eines Typ-3-Klonpaares}}, school = AGST, month = jul, year = 2009, type = {Diplomarbeit}, } @MastersThesis{Teubou:09, author = {Elvis Raoul Wega Teubou}, title = {{Erkennung von Typ-3-Klonen in Softwaresystemen}}, school = AGST, month = nov, year = 2009, type = {Diplomarbeit}, } @InProceedings{Koschke:L2S2:09, author = {Rainer Koschke and Rebecca Tiarks}, title = {{Haben wir Programmverstehen schon ganz verstanden?}}, booktitle = {Workshop des GI-Arbeitskreises Langlebige Softwaresysteme (L2S2), CEUR Workshop Proceedings}, year = 2009, pages = {15--26}, } @Article{Koschke:SQJ:09, author = {Rainer Koschke and Pierre Frenzel and Andreas P.J. Breu and Karsten Angstmann}, title = {Extending the reflexion method for consolidating software variants into product lines}, journal = SQJ, year = 2009, pages = {331--366}, volume = 17, number = 4, month = dec, } @InProceedings{Goede:SCAM:2009, author = {Nils G\"{o}de}, booktitle = SCAM, title = {Evolution of Type-1 Clones}, year = 2009, pages = {77--86}, publisher = IEEEPress, } @InProceedings{Tiarks:SCAM:09, author = {Rebecca Tiarks and Rainer Koschke and Raimar Falke}, title = {An Assessment of Type-3 Clones as Detected by State-of-the-Art Tools}, booktitle = SCAM, year = 2009, publisher = IEEEPress, pages = {67-76}, } @article{Hoelscher:Journal:2009, author = {Karsten H{\"o}lscher and Hans-J{\"o}rg Kreowski and Sabine Kuske}, title = {Autonomous Units to Model Interacting Sequential and Parallel Processes}, journal = {Fundamenta Informaticae}, year = 2009, volume = 92, pages = {233--257}, } @InProceedings{Quante:ICPC:08, author = {Jochen Quante}, title = {Do Dynamic Object Process Graphs Support Program Understanding? - A Controlled Experiment}, booktitle = ICPC, pages = {73--82}, year = 2008, publisher = ACMPress, } @Misc{Koschke:ESE:Erosion:08, author = {Rainer Koschke}, title = {{Wie sch{\"u}tze ich meine Organisation vor Software-Erosion?}}, howpublished = ESE, pages = {285--290}, year = 2008, editor = {Martina Hafner}, publisher = {Elektronikpraxis und Mircoconsult}, abstract = {Dieser Artikel beschreibt, welche Hebel angesetzt werden k{\"o}nnen, um daf{\"u}r zu sorgen, dass Dokumentation aktuell und n{\"u}tzlich bleibt und die Komplexit{\"a}t der Programme begrenzt wird. Dazu wird ein ganzheitliches Vorgehen vorgestellt, das die Organisation, den Entwicklungsprozess, die Menschen und die Software selbst im Blick hat.}, non-peer = {true}, } @Misc{Koschke:ESE:PL:08, author = {Rainer Koschke}, title = {{Architektur- und Code-Management von Software-Varianten}}, howpublished = ESE, pages = {213--217}, year = 2008, editor = {Martina Hafner}, publisher = {Elektronikpraxis und Mircoconsult}, abstract = {Bei Software-Herstellern im Bereich eingebetteter Systeme, deren Produkte gro{\ss}e Gemeinsamkeiten, aber auch Spezifika aufweisen, entstehen h{\"a}ufig Software-Varianten durch ungeplante Wiederverwendung. Der Code eines Produkts wird f{\"u}r ein anderes Produkt kopiert und an die besonderen Anforderungen des neuen Einsatzes angepasst. Die resultierenden Varianten erfahren eine eigene Weiterentwicklung. Bei einer gro{\ss}en Zahl von Varianten erh{\"o}hen sich dabei die Wartungskosten, weil notwendige {\"A}nderungen im gemeinsamen Code (z.B. zur Fehlerbehebung) in allen Varianten individuell analysiert, nachgezogen, dokumentiert und getestet werden m{\"u}ssen. Die Wartung und Weiterentwicklung einer gro{\ss}en Anzahl von Varianten ist auf Dauer kaum 澳门皇冠_皇冠足球比分-劲爆体育 beherrschbar. Dieser Artikel beschreibt Techniken, um Software-Varianten, die durch ungeplante Wiederverwendung entstanden sind, sich aber am Markt bew{\"a}hrt haben, zu konsolidieren und in eine Produktlinienplattform zu integrieren, um so Wartungs- und Weiterentwicklungskosten einzusparen. Die Techniken stammen aus der Forschung und wurden in industriellen Fallstudien bei der Robert-Bosch GmbH erprobt.}, non-peer = {true}, } @InProceedings{Mende:Promise:09, author = {Thilo Mende and Rainer Koschke}, title = {Revisiting the Evaluation of Defect Prediction Models}, booktitle = {Promise}, year = 2009, booktitle = {PROMISE '09: Proceedings of the 5th International Conference on Predictor Models in Software Engineering}, year = 2009, isbn = {978-1-60558-634-2}, pages = {1--10}, location = {Vancouver, British Columbia, Canada}, doi = {http://doi.acm.org/10.1145/1540438.1540448}, publisher = {ACM}, address = {New York, NY, USA}, } @Article{Goede:WSR:09, author = {Nils G\"{o}de}, title = {Mapping Code Clones Using Incremental Clone Detection}, journal = STT, year = 2009, volume = 29, number = 2, pages = {28--29}, non-peer = {true}, } @InProceedings{Harder:IWSC:09, author = {Jan Harder and Nils G\"{o}de}, title = {Modeling Clone Evolution}, booktitle = IWSC, year = 2009, pages = {17--21}, } @InProceedings{Koschke:CSMR:09, author = {Rainer Koschke and Stanislaw Jarzabek and James Cordy Katsuro Inoue}, title = {Third International Workshop on Software Clones (IWSC)}, booktitle = CSMR, year = 2009, publisher = IEEEPress, pages = {269--270}, } @InProceedings{Mende:CSMR:09, author = {Thilo Mende and Rainer Koschke and Marek Leszak}, title = {Evaluating Defect Prediction Models for a Large Evolving Software System}, booktitle = CSMR, year = 2009, publisher = IEEEPress, pages = {247--250}, } @InProceedings{Goede:CSMR:09, author = {Nils G{\"o}de and Rainer Koschke}, title = {Incremental Clone Detection}, booktitle = CSMR, year = 2009, publisher = IEEEPress, pages = {219--228}, note = {Best Paper Award von 70 eingereichten Beitr{\"a}gen}, } @Article{Roy:JSCP:09, author = {Chanchal K. Roy and James R. Cordy and Rainer Koschke}, title = {Comparison and evaluation of code clone detection techniques and tools: A qualitative approach}, journal = JSCP, year = 2009, abstract = {Over the last decade many techniques and tools for software clone detection have been proposed. In this paper, we provide a qualitative comparison and evaluation of the current state-of-the-art in clone detection techniques and tools, and organize the large amount of information into a coherent conceptual framework. We begin with background concepts, a generic clone detection process and an overall taxonomy of current techniques and tools. We then classify, compare and evaluate the techniques and tools in two different dimensions. First, we classify and compare approaches based on a number of facets, each of which has a set of (possibly overlapping) attributes. Second, we qualitatively evaluate the classified techniques and tools with respect to a taxonomy of editing scenarios designed to model the creation of Type-1, Type-2, Type-3 and Type-4 clones. Finally, we provide examples of how one might use the results of this study to choose the most appropriate clone detection tool or technique in the context of a particular set of goals and constraints. The primary contributions of this paper are: (1) a schema for classifying clone detection techniques and tools and a classification of current clone detectors based on this schema, and (2) a taxonomy of editing scenarios that produce different clone types and a qualitative evaluation of current clone detectors based on this taxonomy.}, doi = {doi:10.1016/j.scico.2009.02.007}, volume = 74, number = 7, mongth = may, pages = {470-495}, note = {{Special Issue on Program Comprehension (ICPC 2008)}, unter den f{\"u}nf am h{\"a}ufigsten zitierten Artikeln von Science of Computer Programming seit 2007}, } @Article{Cornelissen:TSE:09, author = {Bas Cornelissen and Andy Zaidman and Arie van Deursen and Leon Moonen and Rainer Koschke}, title = {A Systematic Survey of Program Comprehension through Dynamic Analysis}, journal = TSE, volume = 35, number = 5, year = 2009, pages = {684--702}, } @article{Mende:JSME:09, author = {Thilo Mende and Rainer Koschke and Felix Beckwermert}, title = {An Evaluation of Code Similarity Identification for the Grow-and-Prune Model}, journal = JSME, year = 2009, volume = 21, number = 2, pages = {143 -- 169}, month = {March--April}, } @InProceedings{Berger:WASE:08, author = {Bernhard Berger and Rainer Koschke}, title = {{Reduzierung der Programmgr{\"o}{\ss}e durch Klonerkennung}}, booktitle = {Workshop Automotive Software Engineering, Tagungsband zur Jahrestagung der Gesellschaft f{\"u}r Informatik}, year = 2008, publisher = {GI Lecture Notes for Informatics}, } @InProceedings{Koschke:ICSM:08, author = {Rainer Koschke}, title = {Frontiers in Software Clone Management}, booktitle = {Frontiers in Software Maintenance, Proceedings of the International Conference on Software Maintenance}, year = 2008, pages = {119--128}, publisher = IEEEPress, } @Article{Buckley:JSME:08, author = {Jim Buckley and Andrew LeGear and Chris Exton and Ross Cadogan and Trevor Johnston and Bill Looby and Rainer Koschke}, title = {Encapsulating targeted component abstractions using software Reflexion Modelling}, journal = JSME, year = 2008, volume = 20, number = 2, pages = {107--134}, month = {March--April}, } @MastersThesis{Goede:08, author = {Nils G\"{o}de}, title = {Incremental Clone Detection}, school = {University of Bremen}, year = 2008, type = {Diploma Thesis}, } @InProceedings{Koschke:WSR:08, author = {Rainer Koschke}, title = {{Zehn Jahre WSR, zw{\"o}lf Jahre Bauhaus}}, booktitle = {Workshop Software Reengineering}, pages = {51--66}, year = 2008, editor = {Rainer Gimnich and Uwe Kaiser and Jochen Quante and Andreas Winter}, publisher = {GI Lecture Notes for Informatics}, isbn = {978-3-88579-220-8}, } @InProceedings{Harder:WSR:08, author = {Jan Harder and Rainer Koschke}, title = {{Empirische Grundlagen f{\"u}r das Klonmanagement}}, booktitle = {Workshop Software Reengineering}, pages = {127--133}, year = 2008, editor = {Rainer Gimnich and Uwe Kaiser and Jochen Quante and Andreas Winter}, publisher = {GI Lecture Notes for Informatics}, isbn = {978-3-88579-220-8}, } @InProceedings{Mende:WSR:08, author = {Thilo Mende and Felix Beckwermert}, title = {Clone Detection in a Product Line Context}, booktitle = {Workshop Software Reengineering}, pages = {176--180}, year = 2008, editor = {Rainer Gimnich and Uwe Kaiser and Jochen Quante and Andreas Winter}, publisher = {GI Lecture Notes for Informatics}, isbn = {978-3-88579-220-8}, } @InProceedings{Quante:WSR:08, author = {Jochen Quante}, title = {Using Library Dependencies for Clustering}, booktitle = {Workshop Software Reengineering}, pages = {171--175}, year = 2008, editor = {Rainer Gimnich and Uwe Kaiser and Jochen Quante and Andreas Winter}, publisher = {GI Lecture Notes for Informatics}, isbn = {978-3-88579-220-8}, } @InProceedings{Mende:CSMR:08, author = {Thilo Mende and Felix Beckwermert and Rainer Koschke and Gerald Meier}, title = {Supporting the Grow-and-Prune Model in Software Product Lines Evolution Using Clone Detection}, booktitle = CSMR, pages = {163--172}, year = 2008, publisher = IEEEPress, } @article{falke:emse:08, author = {Raimar Falke and Rainer Koschke and Pierre Frenzel}, title = {Empirical Evaluation of Clone Detection Using Syntax Suffix Trees}, journal = EMSE, volume = 13, number = 6, year = 2008, issn = {1382-3256}, pages = {601--643}, doi = {10.1007/s10664-008-9073-9}, } @inbook{Koschke:Buch:08, author = {Rainer Koschke}, title = {Software Evolution}, publisher = Springer, chapter = {Identifying and Removing Software Clones}, year = 2008, pages = {15--39}, note = {Editors: Serge Demeyer and Tom Mens}, booktitle = {Software Evolution}, } @inproceedings{Hoelscher:SBMF:2008, author = {Karsten H{\"o}lscher and Renate Klempien-Hinrichs and Peter Knirsch}, title = {Undecidable Control Conditions in Graph Transformation Units}, booktitle = {Proceedings of the } # SBMF # { (SBMF 2006), Natal, Brazil, 2006}, editor = {A. M. Moreira and L. Ribeiro}, series = ENTCS, volume = 195, pages = {95--111}, year = 2008, publisher = ELSEVIER, } @inproceedings{Hoelscher:LDIC:2008, author = {Karsten H{\"o}lscher and Peter Knirsch and Melanie Luderer}, title = {Autonomous Units for Communication-based Dynamic Scheduling}, pages = {331--339}, booktitle = {Dynamics in Logistics, Proceedings of the 1st Intl.\ Conference LDIC 2007}, editor = {H.-D. Haasis and H.-J. Kreowski and B. Scholz-Reiter}, publisher = {Springer}, address = {Berlin, Heidelberg}, year = {2008} } @phdthesis{Hoelscher:Diss:2008, author = {Karsten H{\"o}lscher}, title = {Autonomous units as a rule based concept for the modeling of autonomous and cooperating processes}, school = {University of Bremen, Germany}, year = 2008, publisher = {Logos Verlag}, type = {{PhD} Dissertation}, isbn = {978-3-8325-2090-8}, } @inproceedings{Mossakowski:Hets:07, author = {Till Mossakowski and Christian Maeder and Klaus L{\"{u}}ttich}, title = {{Hets: The Heterogeneous Tool Set}}, booktitle = {Tools and Algorithms for the Construction and Analysis of Systems, 13th International Conference, {TACAS} 2007, March 24 - April 1, Braga, Portugal}, editor = {Orna Grumberg and Michael Huth}, series = LNCS, volume = 4424, pages = {519--522}, year = 2007, publisher = Springer, } @Proceedings{Koschke:GI:07, title = {{INFORMATIK 2007 --- Informatik trifft Logistik: Beitr{\"a}ge der 37. Jahrestagung der Gesellschaft f{\"u}r Informatik e.V.}}, year = 2007, editor = {Rainer Koschke and Otthein Herzog and Karl-Heinz R{\"o}diger and Marc Ronthaler}, volume = {P-109 (Band 1) und P-110 (Band 2)}, series = {Lecture Notes in Informatics (LNI)}, address = {Bonn}, month = sep, organization = {Gesellschaft f{\"u}r Informatik e.V.}, } @inproceedings{Koschke:Dagstuhl:07, author = {Rainer Koschke}, title = {Survey of Research on Software Clones}, booktitle = {Duplication, Redundancy, and Similarity in Software}, year = 2007, editor = {Rainer Koschke and Ettore Merlo and Andrew Walenstein}, publisher = {Dagstuhl}, address = {Dagstuhl, Germany}, number = 06301, series = {Dagstuhl Seminar Proceedings}, issn = {1862-4405}, url = {http://drops.dagstuhl.de/opus/volltexte/2007/970 [date of citation: 2007-01-01]}, } @proceedings{Koschke:Dagstuhl-Proc:07, title = {Duplication, Redundancy, and Similarity in Software}, year = 2007, editor = {Rainer Koschke and Ettore Merlo and Andrew Walenstein}, series = {Dagstuhl Seminar Proceedings}, publisher = {Dagstuhl}, address = {Dagstuhl, Germany}, number = 06301, issn = {1862-4405}, url = {http://drops.dagstuhl.de/opus/volltexte/2007/970 [date of citation: 2009-01-01]}, } @inproceedings{Quante:CSMR:07, author = {Jochen Quante}, title = {Online Construction of Dynamic Object Process Graphs}, booktitle = CSMR, year = 2007, publisher = IEEEPress, pages = {113--122}, } @inproceedings{Quante:WCRE:07, author = {Jochen Quante and Rainer Koschke}, title = {Dynamic Protocol Recovery}, booktitle = WCRE, year = 2007, pages = {219--228}, publisher = IEEEPress, month = oct, } @inproceedings{Frenzel:WCRE:07, author = {Pierre Frenzel and Rainer Koschke and Andreas P.~J. Breu and Karsten Angstmann}, title = {Extending the Reflection Method for Consolidating Software Variants into Product Lines}, booktitle = WCRE, year = 2007, pages = {160--169}, publisher = IEEEPress, month = oct, note = {Best Paper Award von 87 eingereichten Beitr{\"a}gen}, } @article{Quante:JSS:08, author = {Jochen Quante and Rainer Koschke}, title = {Dynamic Object Process Graphs}, journal = JSS, year = 2008, volume = 81, issue = 4, pages = {481--501}, doi = {10.1016/j.jss.2007.06.005}, annote = {Special Issue for IEEE Conference on Software Maintenance and Reengineering (CSMR) 2006}, } @article{Bellon:TSE:07, author = {Stefan Bellon and Rainer Koschke and Giulio Antoniol and Jens Krinke and Ettore Merlo}, title = {Comparison and Evaluation of Clone Detection Tools}, journal = TSE, year = 2007, volume = 33, number = 9, pages = {577--591}, month = sep, } @Article{Harder:WSR:07, author = {Jan Harder}, title = {{R\"{u}ckgewinnung von Syntax und Semantik zur Analyse von Visual Basic 6 Programmen}}, journal = STT, year = 2007, volume = 27, number = 2, month = may, note = {Beitr{\"a}ge des 9. Workshops 'Software Reengineering' (WSR 2007) }, non-peer = {true}, } @incollection{Hoelscher:Sammelband:2007, author = {Karsten H{\"o}lscher and Renate Klempien-Hinrichs and Peter Knirsch and Hans-J{\"o}rg Kreowski and Sabine Kuske}, title = {Autonomous Units: Basic Concepts and Semantic Foundation}, editor = {H\"ulsmann, M. and Windt, K.}, booktitle = {Understanding Autonomous Cooperation and Control in Logistics -- The Impact on Management, Information and Communication and Material Flow}, publisher = {Springer}, address = {Berlin, Heidelberg}, year = 2007, pages = {103--120}, } @Article{Koschke:WSR:06, author = {Rainer Koschke}, title = {{Konsolidierung von Software-Varianten in Software-Produktlinien}}, journal = STT, year = 2006, volume = 26, number = 2, issn = {0720-8928}, month = may, note = {Beitr{\"a}ge des 8. Workshops 'Software Reengineering' (WSR 2006) }, non-peer = {true}, } @inproceedings{Koschke:WCRE:06, author = {Rainer Koschke and Raimar Falke and Pierre Frenzel}, title = {Clone Detection Using Abstract Syntax Suffix Trees}, booktitle = WCRE, year = 2006, pages = {253--262}, publisher = IEEEPress, isbn = {0-7695-2719-1}, doi = {http://dx.doi.org/10.1109/WCRE.2006.18} } @inproceedings{Quante:CSMR:06, author = {Jochen Quante and Rainer Koschke}, title = {Dynamic Object Process Graphs}, booktitle = CSMR, year = 2006, pages = {81--90}, publisher = IEEEPress, note = {Best Paper Award von 65 eingereichten Beitr{\"a}gen}, } @article{Christl:IST:07, author = {Andreas Christl and Rainer Koschke and Margaret-Anne Storey}, title = {Automated Clustering to Support the Reflexion Method}, journal = JSS, year = 2007, note = {Special Issue on WCRE 2005}, volume = 49, number = 3, pages = {255--274}, } @article{Koschke:JSCP:06, author = {Rainer Koschke and Gerardo Canfora and J{\"o}rg Czeranski}, title = {Revisiting the Delta-IC Approach}, journal = JSCP, year = 2006, volume = 60, number = 2, pages = {171--188}, } @inproceedings{ Kreowski:FoVMT:2006, author = {Hans-J{\"o}rg Kreowski and Karsten H{\"o}lscher and Peter Knirsch}, title = {Semantics of Visual Models in a Rule-based Setting}, booktitle = {Proceedings of the School of {SegraVis} Research Training Network on Foundations of Visual Modelling Techniques (FoVMT 2004), Dagstuhl, Germany, 2004}, editor = {R. Heckel}, series = ENTCS, volume = 148, pages = {75--88}, year = 2006, publisher = ELSEVIER } @inproceedings{ Hoelscher:ICGT:2006, author = {Karsten H{\"o}lscher and Hans-J{\"o}rg Kreowski and Sabine Kuske}, title = {Autonomous Units and their Semantics --- the Sequential Case}, booktitle = {Graph Transformations, Proceedings of the 3rd Intl.\ Conference on Graph Transformations (ICGT 2006)}, editor = {A. Corradini and H. Ehrig and U. Montanari and L. Ribeiro and G. Rozenberg}, pages = {245--259}, year = 2006, series = LNCS, volume = 4178, publisher = {Springer}, address = {Berlin, Heidelberg}, } @inproceedings{ Hoelscher:OperationsResearch:2006, author = {Karsten H{\"o}lscher and Peter Knirsch and Hans-J{\"o}rg Kreowski}, title = {Modelling Transport Networks by Means of Autonomous Units}, editor = {H.-D. Haasis and H. Kopfer and J. Sch{\"o}nberger}, booktitle = {Operations Research Proceedings 2005}, pages = {399--404}, year = 2006, publisher = {Springer}, address = {Berlin, Heidelberg}, } @article{Hoelscher:Journal:2006, author = {Karsten H{\"o}lscher and Paul Ziemann and Martin Gogolla}, title = {On Translating {UML} Models into Graph Transformation Systems}, journal = {Journal of Visual Languages and Computing}, volume = 17, number = 1, year = 2006, pages = {78--105}, } @InProceedings{Koschke:WICSA:05, author = {Rainer Koschke}, title = {What architects should know about reverse engineering and reengineering}, booktitle = WICSA, pages = {4--10}, year = 2005, month = nov, publisher = IEEEPress, note = {Invited Paper}, } @article{Eisenbarth:JSS:05, author = {Thomas Eisenbarth and Rainer Koschke and Gunther Vogel}, title = {Static Object Trace Extraction for Programs with Pointers}, journal = JSS, year = 2005, volume = 77, number = 3, pages = {263--284}, month = sep, abstract = {A trace is a record of the execution of a computer program, showing the sequence of operations executed. Dynamic traces are obtained by executing the program and depend upon the input. Static traces, on the other hand, describe potential sequences of operations extracted statically from the source code. Static traces offer the advantage that they do not depend upon input data. This paper describes a new automatic technique to extract static traces for individual stack and heap objects. The extracted static traces can be used in many ways, such as protocol recovery and validation in particular and program understanding in general. In addition, this article describes four case studies we conducted to explore the efficiency of our algorithm, the size of the resulting static traces, and the influence of the underlying points-to analysis on this size. }, } @article{Koschke:InFE:05, author = {Rainer Koschke}, title = {{Rekonstruktion von Software-Architekturen: Blickwinkel, Sichten, Ansichten und Aussichten}}, journal = {{Informatik -- Forschung und Entwicklung, Springer Verlag}}, year = 2005, volume = 19, number = 3, month = apr, doi = {10.1007/s00450-005-0180-1}, } @inproceedings{Koschke:ASE:05, author = {Rainer Koschke and Jochen Quante}, title = {On Dynamic Feature Location}, booktitle = ASE, year = 2005, pages = {86--95}, publisher = {ACMPress}, note = {Annahmequote unter 10 Prozent}, } @inproceedings{Falke:VISSOFT:05, author = {Raimar Falke and Raimund Klein and Rainer Koschke and Jochen Quante}, title = {The Dominance Tree in Visualizing Software Dependencies}, booktitle = VISSOFTWork, year = 2005, pages = {1--6}, publisher = IEEEPress, month = sep, issn = {0-7803-9540-9} } @inproceedings{Christl:WCRE:05, author = {Andreas Christl and Rainer Koschke and Margaret-Anne Storey}, title = {Equipping the Reflexion Method with Automated Clustering}, booktitle = WCRE, year = 2005, pages = {89--98}, publisher = IEEEPress, month = nov, } @inproceedings{Ermel:VLHCC:2005, author = {Claudia Ermel and Karsten H{\"o}lscher and Sabine Kuske and Paul Ziemann}, title = {Animated Simulation of Integrated {UML} Behavioral Models Based on Graph Transformation}, booktitle = {Proceedings of the Symposium on Visual Languages and Human-Centric Computing (VL/HCC 2005), Dallas, TX, USA, 21-24 September 2005}, year = 2005, pages = {125--133}, publisher = IEEE, } @inproceedings{Ziemann:SBMF:2005, author = {Paul Ziemann and Karsten H{\"o}lscher and Martin Gogolla}, title = {Coherently Explaining {UML} Statechart and Collaboration Diagrams by Graph Transformations}, booktitle = {Proceedings of the } # SBMF # { (SBMF 2004), Recife, Brazil, 2005}, editor = {A. Mota and A. Moura}, series = ENTCS, volume = 130, year = 2005, pages = {263--280}, publisher = ELSEVIER, } @inproceedings{Ziemann:VLFM:2005, author = {Paul Ziemann and Karsten H{\"o}lscher and Martin Gogolla}, title = {From {UML} Models to Graph Transformation Systems}, booktitle = {Proceedings of the Workshop on Visual Languages and Formal Methods (VLFM 2004), Rome, Italy, 2004}, editor = {M. Minas}, series = ENTCS, volume = {127(4)}, year = {2005}, pages = {17--33}, publisher = ELSEVIER, } @inproceedings{Deursen:WICSA:04, author = {Arie van Deursen and Christine Hofmeister and Rainer Koschke and Leon Moonen and Claudio Riva}, title = {Symphony: View-Driven Software Architecture Reconstruction}, booktitle = WICSA, year = 2004, pages = {122--132}, publisher = IEEEPress, month = jun, abstract = {Authentic descriptions of a software architecture are required as a reliable foundation for any but trivial changes to a system. Far too often, architecture descriptions of existing systems are out of sync with the implementation. If they are, they must be reconstructed. There are many existing techniques for reconstructing individual architecture views, but no information about how to select views for reconstruction, or about process aspects of architecture reconstruction in general. In this paper we describe view-driven process for reconstructing software architecture that fills this gap. To describe Symphony, we present and compare different case studies, thus serving a secondary goal of sharing real-life reconstruction experience. The Symphony process incorporates the state of the practice, where reconstruction is problem-driven and uses a rich set of architecture views. Symphony provides a common framework for reporting reconstruction experiences and for comparing reconstruction approaches. Finally, it is a vehicle for exposing and demarcating research problems in software architecture reconstruction. }, } @article{Deursen:ST:04, author = {Arie van Deursen and Christine Hofmeister and Rainer Koschke and Leon Moonen and Claudio Riva}, title = {Viewpoints in Software Architecture Reconstruction}, journal = {Softwaretechnik Trends}, year = 2004, volume = 24, number = 2, } @article{Koschke:ST:04, author = {Rainer Koschke and Daniel Simon}, title = {{Symphony Fallstudie: Hierarchische Reflexion Modelle}}, journal = {Softwaretechnik Trends}, year = 2004, volume = 24, number = 2, } @article{Eisenbarth:TSE:03, author = {Thomas Eisenbarth and Rainer Koschke and Daniel Simon}, title = {Locating Features in Source Code}, journal = TSE, year = 2003, volume = 29, number = 3, pages = {210--224}, month = mar, annote = {Special issue on ICSM 2001}, abstract = {Understanding the implementation of a certain feature of a system requires identification of the computational units of the system that contribute to this feature. In many cases, the mapping of features to the source code is poorly documented. In this paper, we present a semiautomatic technique that reconstructs the mapping for features that are triggered by the user and exhibit an observable behavior. The mapping is in general not injective; that is, a computational unit may contribute to several features. Our technique allows for the distinction between general and specific computational units with respect to a given set of features. For a set of features, it also identifies jointly and distinctly required computational units. The presented technique combines dynamic and static analyses to rapidly focus on the system's parts that relate to a specific set of features. Dynamic information is gathered based on a set of scenarios invoking the features. Rather than assuming a one-to-one correspondence between features and scenarios as in earlier work, we can now handle scenarios that invoke many features. Furthermore, we show how our method allows incremental exploration of features while preserving the "mental map" the analyst has gained through the analysis.}, } @Article{Walenstein:SEN:04, author = {Andrew Walenstein and Arun Lakhotia and Rainer Koschke}, title = {Second International Workshop on Detection of Software Clones: workshop report}, journal = SEN, year = 2004, volume = 29, number = 2, pages = {1--5}, month = mar, } @inproceedings{Cordes:AGTIVE:2004, author = {Bj{\"o}rn Cordes and Karsten H{\"o}lscher and Hans-J{\"o}rg Kreowski}, title = {{UML} Interaction Diagrams: Correct Translation of Sequence Diagrams into Collaboration Diagrams}, editor = {J. L. Pfaltz and M. Nagl and B. B{\"o}hlen}, booktitle = {Applications of Graph Transformations with Industrial Relevance, Second International Workshop, AGTIVE 2003, Charlottesville, VA, USA, September 27 - October 1, 2003, Revised Selected and Invited Papers}, pages = {275--291}, publisher = {Springer}, address = {Berlin, Heidelberg}, series = LNCS, volume = 3062, year = 2004, } @inproceedings{Lakhotia:wcre:03, author = {Lakhotia, A. and Walenstein, A. and Koschke, R.}, title = {Second international workshop on detection of software clones}, booktitle = WCRE, year = 2003, pages = {368--368}, annote = {a working session on clones}, } @article{Koschke:JSME:03, author = {Rainer Koschke}, title = {Software Visualization in Software Maintenance, Reverse Engineering, and Reengineering: A Research Survey}, journal = {Journal on Software Maintenance and Evolution}, year = 2003, volume = 15, pages = {87--109}, month = mar, } @inproceedings{Koschke:WCRE:03, author = {Rainer Koschke and Daniel Simon}, title = {Hierarchical Reflexion Models}, booktitle = WCRE, year = 2003, pages = {36--45}, publisher = IEEEPress, month = nov, abstract = {The reflexion model originally proposed by Murphy and Notkin allows one to structurally validate a descriptive or prescriptive architecture model against a source model. First, the entities in the source model are mapped onto the architectural model, then discrepancies between the architecture model and source model are computed automatically. The original reflexion model allows an analyst to specify only non-hierarchical models, which is insufficient for larger systems that are decomposed into hierarchical subsystems. This paper extends the original reflexion model to hierarchical architecture models, describes a method to apply this technique, and reports on case studies conducted on two large-scale and complex applications (namely, the C compiler sdcc for 8-bit microprocessors and the GNU C compiler gcc).}, } @inproceedings{Eisenbarth:ICSM:02, author = {Thomas Eisenbarth and Rainer Koschke and Daniel Simon}, title = {Incremental Location of Combined Features for Large-Scale Programs}, booktitle = ICSM, year = 2002, pages = {273--282}, publisher = IEEEPress, month = oct, abstract = {The need for changing a program frequently confronts maintainers with the reality that no valid architectural description is at hand. To solve that problem, we presented at ICSM 2001 a language-independent and easy to use technique for opportunistic and demand driven location of features in source code based on static and dynamic analysis and concept analysis. In order to further validate the technique, we recently performed an industrial case study on a 1.2 million LOC production system. The experiences we made during that case study showed twoproblems of our approach: the growing complexity of concept lattices for large systems with many features and the need for handling compositions of features. This paper extends our technique to solve these problems. We show how this method allows incremental exploration of features while preserving the "mental map" the maintainer has gained through the analysis. The second improvement is a detailed look at composing features into more complex scenarios. Rather than assuming a one-to-one correspondence between features and scenarios as in earlier work, we can now handle scenarios that invoke many features. }, } @inproceedings{Eisenbarth:WCRE:02, author = {Thomas Eisenbarth and Rainer Koschke and Gunther Vogel}, title = {Static Trace Extraction}, booktitle = WCRE, year = 2002, publisher = IEEEPress, abstract = {A trace is a record of the execution of a computer program, showing the sequence of operations executed. Dynamic traces are obtained by executing the program and depend upon the input. Static traces, on the other hand, describe potential sequences of operations extracted statically from the source code. Static traces offer the advantage that they do not depend upon input data. This paper describes a new automatic technique to extract static traces for individual stack and heap objects. The extracted static traces can be used in many ways, such as protocol recovery and validation in particular and program understanding in general. }, } @incollection{Koschke:LNCS:02, author = {Rainer Koschke}, title = {Software Visualization for Reverse Engineering}, booktitle = {Software Visualization, State-of-the-Art Survey}, publisher = Springer, year = 2002, editor = {Stephan Diehl}, series = LNCS, volume = 2269, } @inproceedings{Fabiunke:GI:01, author = {Marko Fabiunke and Joanna Filipek and Christian Maeder}, title = {{XMI Based UML Model Composition in KobrA}}, booktitle = {{GI} Jahrestagung {(2)}}, pages = {845--849}, year = 2001, } @PhDThesis{Maeder:Diss:01, author = {Christian Maeder}, title = {Zur Kontextanalyse einer algebraischen Programmiersprache}, school = {TU Berlin}, year = 2001, month = jun, } @inproceedings{Eisenbarth:IWPC:01, author = {Thomas Eisenbarth and Rainer Koschke and Daniel Simon}, title = {Feature-Driven Program Understanding Using Concept Analysis of Execution Traces}, booktitle = IWPC, year = 2001, pages = {300-309}, publisher = IEEEPress, month = may, abstract = {The first task of a programmer who wants to understand how a certain feature is implemented is to localize the implementation of the feature in the code. If the implementations of a set of related features are to be understood, a programmer is interested in their commonalities and variabilities. For large and badly documented programs, localizing features in code and identifying commonalities and variabilities of components and features can be difficult and time-consuming. It is useful to derive this information automatically. The feature-component correspondence describes which components are needed to implement a set of features and what are the respective commonalities and variabilities of features and components. This paper describes a new technique to derive the feature-component correspondence utilizing dynamic information and concept analysis. The method is simple to apply, cost-effective, largely language-independent, and can yield results quickly.}, } @inproceedings{Eisenbarth:ICSM:01, author = {Thomas Eisenbarth and Rainer Koschke and Daniel Simon}, title = {Aiding Program Comprehension by Static and Dynamic Feature Analysis}, booktitle = ICSM, year = 2001, pages = {602--611}, publisher = IEEEPress, month = nov, note = {Best Paper Award von 161 eingereichten Beitr{\"a}gen}, abstract = {Understanding a system's implementation without prior knowledge is a hard task for reengineers in general. However, some degree of automatic aid is possible. In this paper, we present a technique building a mapping between the system's externally visible behavior and the relevant parts of the source code. Our technique combines dynamic and static analyses to rapidly focus on the system's parts urgently required for a goal-directed process of program understanding.}, } @inproceedings{Eisenbarth:CSMR:01, author = {Thomas Eisenbarth and Rainer Koschke and Daniel Simon}, title = {Derivation of Feature Component Maps by means of Concept Analysis}, booktitle = CSMR, year = 2001, pages = {176--180}, publisher = IEEEPress, month = mar, abstract = {Feature component maps describe which components are needed to implement a particular feature and are used early in processes to develop a product line based on existing assets. This paper describes a new technique to derive the feature component map and additional dependencies utilizing dynamic information and concept analysis. The method is simple to apply, cost-effective, largely language independent, and can yield results quickly and very early in the process.}, } @inproceedings{Koschke:2001, author = {Rainer Koschke and Yan Zhang}, title = {Component Recovery, Protocol Recovery and Validation in Bauhaus}, booktitle = WSR, year = 2001, editor = {J{\"u}rgen Ebert and Bernt Kullbach and Franz Lehner}, pages = {73-76}, organization = {University of Koblenz-Landau}, address = {Institut f{\"u}r Informatik, Rheinau 1, D-56075 Koblenz}, month = may, volume = {1/2002}, series = {Fachberichte Informatik}, annote = {http://www.uni-koblenz.de/fb4}, non-peer = {true}, } @inproceedings{Canfora:WCRE:00, author = {Gerardo Canfora and J{\"o}rg Czeranski and Rainer Koschke}, title = {Revisiting the Delta IC Approach to Component Recovery}, booktitle = WCRE, year = 2000, pages = {140--149}, publisher = IEEEPress, month = nov, } @inproceedings{Koschke:IWPC:00, author = {Rainer Koschke and Thomas Eisenbarth}, title = {A Framework for Experimental Evaluation of Clustering Techniques}, booktitle = IWPC, year = 2000, publisher = IEEEPress, abstract = {Experimental evaluation of clustering techniques for component recovery is necessary in order to analyze their strengths and weaknesses in comparison to other techniques. For comparable evaluations of automatic clustering techniques, a common reference corpus of freely available systems is needed for which the actual components are known. The reference corpus is used to measure recall and precision of automatic techniques. For this measurement, a standard scheme for comparing the components recovered by a clustering technique to components in the reference corpus is required. This paper describes both the process of setting up reference corpora and ways of measuring recall and precision of automatic clustering techniques. For methods with human intervention, controlled experiments should be conducted. This paper additionally proposes a controlled experiment as a standard for evaluating manual and semi-automatic component recovery methods that can be conducted cost-effectively. }, } @article{Girard:JSCP:00, author = {Jean-Francois Girard and Rainer Koschke}, title = {A Comparison of Abstract Data Type and Objects Recovery Techniques}, journal = {Journal Science of Computer Programming, Elsevier Science}, year = 2000, volume = 6, number = {2--3}, pages = {149-181}, month = mar, } @InProceedings{Eisenbarth:DSPL:00, author = {Eisenbarth, Thomas and Koschke, Rainer and Simon, Daniel}, title = {{Herleitung der Feature-Komponenten-Korrespondenz mittels Begriffsanalyse}}, booktitle = {Proceedings of 1. Deutscher Software-Produktlinien Workshop (DSPL-1)}, pages = {63--68}, year = 2000, } @InProceedings{ koschke:vorlesungen-zum-thema-software-reengineering, author = {Rainer Koschke}, title = {{Vorlesungen zum Thema Software-Reengineering}}, booktitle = {2.~Workshop Software-Reengineering}, year = 2000, month = may, address = {Bad Honnef, Germany}, pages = {3--7}, publisher = {Universit{\"a}t Koblenz-Landau}, note = {Fachberichte Informatik, Nr. 8/2000}, } @phdthesis{Koschke:Thesis:99, author = {Rainer Koschke}, title = {Atomic Architectural Component Recovery for Program Understanding and Evolution}, school = {Institute of Software Technology, University of Stuttgart, Germany}, year = 1999, } @InProceedings{Czeranski:WSR:99, author = {J{\"o}rn Czeranski and Thomas Eisenbarth and Holger Kienle and Rainer Koschke and Daniel Simon}, title = {Wiedergewinnung von Architekturinformationen: Ausblicke}, year = 1999, booktitle = WSR, number = {Nr. 8/2000}, series = {Fachberichte Informatik}, address = {Universit\"at Koblenz-Landau}, month = may, non-peer = {true}, } @article{Girard:JASE:99, author = {Jean-Francois Girard and Rainer Koschke and Georg Schied}, title = {A Metric-based Approach to Detect Abstract Data Types and State Encapsulations}, journal = JASE, year = 1999, volume = 6, number = 4, } @inproceedings{Koschke:98, author = {Rainer Koschke and Jean-Francois Girard and Martin W{\"u}rthner}, title = {Intermediate Representations for Reverse Engineering}, booktitle = WCRE, year = 1998, pages = {241--250}, publisher = IEEEPress, } @inproceedings{Girard:ASE:97, author = {Jean-Francois Girard and Rainer Koschke and Georg Schied}, title = {A Metric-based Approach to Detect Abstract Data Types and State Encapsulations}, booktitle = ASE, year = 1997, publisher = IEEEPress, } @inproceedings{Girard:ICSM:97, author = {Jean-Francois Girard and Rainer Koschke}, title = {Finding Components in a Hierarchy of Modules: a Step towards Architectural Understanding}, booktitle = ICSM, year = 1997, publisher = IEEEPress, abstract = {This paper presents a method to view a system as a hierarchy of modules according to information hiding concepts and to identify architectural component candidates in this hierarchy. The result of the method eases the understanding of a system's underlying software architecture. A prototype tool implementing this method was applied to three systems written in C (each over 30 Kloc). For one of these systems, an author of the system created an architectural description. The components generated by our method correspond to those of this architectural description in almost all cases. For the other two systems, most of the components resulting from the method correspond to meaningful system abstractions. }, } @inproceedings{Girard:WCRE:97, author = {Jean-Francois Girard and Rainer Koschke and Georg Schied}, title = {Comparison of Abstract Data Type and Abstract State Encapsulation Detection Techniques for Architectural Understanding }, booktitle = WCRE, year = 1997, pages = {66--75}, publisher = IEEEPress, abstract = {In the context of the authors' research on architectural features recovery, abstract data type (ADT) and abstract state encapsulation (ASE, also called abstract object) have been identified as two of the smallest components which are useful to build a significant architectural overview of the system. The authors have named these the atomic components of an architecture. This paper compares five published techniques which extract ADT and ASE from source code. A prototype tool implementing each techniques has been developed and applied to three medium size systems written in C (each over 30 Kloc). The results from each approach are compared with the atomic components identified by hand by a group of software engineers. These people did not know the automatic techniques which were going to be applied to the systems. }, } @inproceedings{Didrich:Opal:97, author = {Klaus Didrich and Wolfgang Grieskamp and Christian Maeder and Peter Pepper}, title = {{Programming in the Large: The Algebraic-Functional Language Opal 2$\alpha$}}, booktitle = {Implementation of Functional Languages, 9th International Workshop, {IFL} 1997, September 10-12, St. Andrews, Scotland}, editor = {Chris Clack and Kevin Hammond and Antony J. T. Davie}, series = LNCS, volume = 1467, pages = {322--337}, year = 1997, publisher = Springer, } @inproceedings{Didrich:Opal:96, author = {Klaus Didrich and Carola Gerke and Wolfgang Grieskamp and Christian Maeder and Peter Pepper}, title = {{Towards Integrating Algebraic Specification and Functional Programming: the Opal System (Extended Abstract)}}, booktitle = {Algebraic Methodology and Software Technology, 5th International Conference, {AMAST} 1996, July 1-5, Munich, Germany}, editor = {Martin Wirsing and Maurice Nivat}, series = LNCS, volume = 1101, pages = {559--562}, year = 1996, publisher = Springer, } @inbook{Koschke:Buch:96, author = {Rainer Koschke and Erhard Pl{\"o}dereder}, editor = {Franz Lehner}, title = {{Ans{\"a}tze des Programmverstehens}}, publisher = {Deutscher Universit{\"a}tsverlag/Gabler Vieweg Westdeutscher Verlag}, pages = {159--176}, year = 1996, booktitle = {{Softwarewartung und Reengineering - Erfahrungen und Entwicklungen}}, } @inproceedings{Schaad:2006:MAA:1133058.1133079, author = {Schaad, Andreas and Lotz, Volkmar and Sohr, Karsten}, title = {A Model-checking Approach to Analysing Organisational Controls in a Loan Origination Process}, booktitle = {Proceedings of the Eleventh ACM Symposium on Access Control Models and Technologies}, series = {SACMAT '06}, year = 2006, isbn = {1-59593-353-0}, location = {Lake Tahoe, California, USA}, pages = {139--149}, numpages = 11, url = {http://doi.acm.org/10.1145/1133058.1133079}, doi = {10.1145/1133058.1133079}, acmid = 1133079, publisher = {ACM}, address = {New York, NY, USA}, keywords = {delegation, model-checking, organisational control, revocation, separation}, } @article{Mustafa:2015:UIA:2807721.2807786, author = {Mustafa, Tanveer and Sohr, Karsten}, title = {Understanding the Implemented Access Control Policy of Android System Services with Slicing and Extended Static Checking}, journal = {Int. J. Inf. Secur.}, issue_date = {August 2015}, volume = 14, number = 4, month = aug, year = 2015, issn = {1615-5262}, pages = {347--366}, numpages = 20, url = {http://dx.doi.org/10.1007/s10207-014-0260-y}, doi = {10.1007/s10207-014-0260-y}, acmid = 2807786, publisher = {Springer-Verlag}, address = {Berlin, Heidelberg}, keywords = {Android, Extended static checking, Java Modeling Language, Slicing}, } @inproceedings{Rubio-Medrano:2013:VAC:2546398.2546459, author = {Rubio-Medrano, Carlos E. and Ahn, Gail-Joon and Sohr, Karsten}, title = {Verifying Access Control Properties with Design by Contract: Framework and Lessons Learned}, booktitle = {Proceedings of the 2013 IEEE 37th Annual Computer Software and Applications Conference}, series = {COMPSAC '13}, year = 2013, isbn = {978-0-7695-4986-6}, pages = {21--26}, numpages = 6, url = {http://dx.doi.org/10.1109/COMPSAC.2013.7}, doi = {10.1109/COMPSAC.2013.7}, acmid = 2546459, publisher = {IEEE Computer Society}, address = {Washington, DC, USA}, keywords = {security, access control, formal verification}, } @article{Sohr:2012:CTA:2365358.2365402, author = {Sohr, Karsten and Kuhlmann, Mirco and Gogolla, Martin and Hu, Hongxin and Ahn, Gail-Joon}, title = {Comprehensive Two-level Analysis of Role-based Delegation and Revocation Policies with UML and OCL}, journal = {Inf. Softw. Technol.}, issue_date = {December, 2012}, volume = 54, number = 12, month = dec, year = 2012, issn = {0950-5849}, pages = {1396--1417}, numpages = 22, url = {http://dx.doi.org/10.1016/j.infsof.2012.06.008}, doi = {10.1016/j.infsof.2012.06.008}, acmid = 2365402, publisher = {Butterworth-Heinemann}, address = {Newton, MA, USA}, keywords = {Delegation, OCL, RBAC, Revocation, UML}, } @inproceedings{Kuhlmann:2011:CTA:2061041.2061931, author = {Kuhlmann, Mirco and Sohr, Karsten and Gogolla, Martin}, title = {Comprehensive Two-Level Analysis of Static and Dynamic RBAC Constraints with UML and OCL}, booktitle = {Proceedings of the 2011 Fifth International Conference on Secure Software Integration and Reliability Improvement}, series = {SSIRI '11}, year = 2011, isbn = {978-0-7695-4453-3}, pages = {108--117}, numpages = 10, url = {http://dx.doi.org/10.1109/SSIRI.2011.18}, doi = {10.1109/SSIRI.2011.18}, acmid = 2061931, publisher = {IEEE Computer Society}, address = {Washington, DC, USA}, keywords = {RBAC, Security, Reliability, Modeling, UML/OCL, Analysis}, } @inproceedings{Sohr:2011:SSA:1982185.1982506, author = {Sohr, Karsten and Mustafa, Tanveer and Nowak, Adrian}, title = {Software Security Aspects of Java-based Mobile Phones}, booktitle = {Proceedings of the 2011 ACM Symposium on Applied Computing}, series = {SAC '11}, year = 2011, isbn = {978-1-4503-0113-8}, location = {TaiChung, Taiwan}, pages = {1494--1501}, numpages = 8, url = {http://doi.acm.org/10.1145/1982185.1982506}, doi = {10.1145/1982185.1982506}, acmid = 1982506, publisher = {ACM}, address = {New York, NY, USA}, keywords = {Java security, mobile phone, static security analysis}, } @inproceedings{Sohr:2008:ERA:1468162.1468214, author = {Sohr, Karsten and Mustafa, Tanveer and Bao, Xinyu and Ahn, Gail-Joon}, title = {Enforcing Role-Based Access Control Policies in Web Services with UML and OCL}, booktitle = {Proceedings of the 2008 Annual Computer Security Applications Conference}, series = {ACSAC '08}, year = 2008, isbn = {978-0-7695-3447-3}, pages = {257--266}, numpages = 10, url = {http://dx.doi.org/10.1109/ACSAC.2008.35}, doi = {10.1109/ACSAC.2008.35}, acmid = 1468214, publisher = {IEEE Computer Society}, address = {Washington, DC, USA}, } @article{Sohr:2008:AMR:1383051.1383240, author = {Sohr, Karsten and Drouineaud, Michael and Ahn, Gail-Joon and Gogolla, Martin}, title = {Analyzing and Managing Role-Based Access Control Policies}, journal = {IEEE Trans. on Knowl. and Data Eng.}, issue_date = {July 2008}, volume = 20, number = 7, month = jul, year = 2008, issn = {1041-4347}, pages = {924--939}, numpages = 16, url = {http://dx.doi.org/10.1109/TKDE.2008.28}, doi = {10.1109/TKDE.2008.28}, acmid = 1383240, publisher = {IEEE Educational Activities Department}, address = {Piscataway, NJ, USA}, keywords = {Access controls, Access controls, Protection mechanisms, Protection mechanisms}, } @inproceedings{Sohr:2005:SVA:2156732.2156737, author = {Sohr, Karsten and Ahn, Gail-Joon and Gogolla, Martin and Migge, Lars}, title = {Specification and Validation of Authorisation Constraints Using UML and OCL}, booktitle = {Proceedings of the 10th European Conference on Research in Computer Security}, series = {ESORICS'05}, year = 2005, isbn = {3-540-28963-1, 978-3-540-28963-0}, location = {Milan, Italy}, pages = {64--79}, numpages = 16, url = {http://dx.doi.org/10.1007/11555827_5}, doi = {10.1007/11555827_5}, acmid = 2156737, publisher = {Springer-Verlag}, address = {Berlin, Heidelberg}, } @article{Sohr:2005:AEA:1082983.1083215, author = {Sohr, Karsten and Ahn, Gail-Joon and Migge, Lars}, title = {Articulating and Enforcing Authorisation Policies with UML and OCL}, journal = {SIGSOFT Softw. Eng. Notes}, issue_date = {July 2005}, volume = 30, number = 4, month = may, year = 2005, issn = {0163-5948}, pages = {1--7}, numpages = 7, url = {http://doi.acm.org/10.1145/1082983.1083215}, doi = {10.1145/1082983.1083215}, acmid = 1083215, publisher = {ACM}, address = {New York, NY, USA}, } @inproceedings{Hamann2015, author = "Hamann, Lars and Sohr, Karsten and Gogolla, Martin", editor = "Piessens, Frank and Caballero, Juan and Bielova, Nataliia", title = "Monitoring Database Access Constraints with an RBAC Metamodel: A Feasibility Study", booktitle = "Proceedings of the 7th International Symposium on Engineering Secure Software and Systems", location = "Milan, Italy", year = 2015, publisher = "Springer International Publishing", address = "Cham", pages = "211--226", isbn = "978-3-319-15618-7", doi = "10.1007/978-3-319-15618-7_16", url = "http://dx.doi.org/10.1007/978-3-319-15618-7_16" }