ICSM'01 Most Influential Paper - Rainer Koschke

1,773 views

Published on

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,773
On SlideShare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
27
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

ICSM'01 Most Influential Paper - Rainer Koschke

  1. 1. Aiding Program Comprehension by Static and Dynamic Feature Analysis Thomas Eisenbarth1 , Rainer Koschke2 , Daniel Simon3 1 Axivion GmbH 2 Universit¨t a Bremen 3 SQS ICSM 2011 Presentation of Most-Influential Paper ICSM 2001
  2. 2. This paper was joint work with my two colleagues.These are the three authors at the time of the publication, ten years ago.Left you have Thomas Eisenbarth and at the right you see Daniel Simon.Unfortunately, they cannot be here. They want me to send their bestregards. They are – like me – very honored by this award.
  3. 3. Here are two more current photographs of them.They have not changed much. That is no surprise since their mainexpertise is in maintenance.
  4. 4. I remember ICSM 2001 very well. It was in a great location. In Florence.Florence has so many attractions.
  5. 5. Florence is full of so many attractions and beauty.It was a real surprise that someone showed up at my talk at Florence.
  6. 6. Before I tell you more about the content of the paper, I would like to tellyou a bit about the history of the paper itself, that is, its developmentprocess.
  7. 7. The initial trigger for the idea of our paper was the call for paper of a German software product line workshop. *&4&SBVOIPGFS *OTUJUVU Call for Papers &YQFSJNFOUFMMFT 4PGUXBSF &OHJOFFSJOH 1. Deutscher Software-Produktlinien Workshop Kaiserslautern, 10. November 2000 Hintergrund Themengebiete Beiträge, vor allem, aber nicht ausschließlich zu den Die Entwicklung ähnlicher Produkte als Produktlinie folgenden Themen, sind willkommen: – oder Produktfamilie – bietet gegenüber der relativ • Planung von Produktlinien teuren Einzelsystementwicklung viele Vorteile, die • Requirements Engineering für Produktlinien überwiegend darauf beruhen, daß alle Familienmit- • Modellierung von Produktlinien glieder auf einer gemeinsamen Infrastruktur – auch • Verfolgbarkeit von Anforderungen Plattform oder Architektur genannt – aufbauen. Wäh- • Konfigurationsmanagement für Produktlinien rend in anderen Industriebranchen, wie z.B. dem • Definition von Softwarearchitekturen Automobilbau oder der Unterhaltungsindustrie, die • Recovery von Softwarearchitekturen Vorteile der Produktlinienentwicklung längst systema- • Referenzarchitekturen für Produktlinien tisch genutzt werden, werden die meisten Softwaresy- • Weiterentwicklung von Architekturen steme nach wie vor als teure Einzelstücke gefertigt. • Komponententechnologie für Produktlinien Dabei kann speziell die Softwareentwicklung von • Reengineering im Hinblick auf Produktlinien Produktlinien profitieren: zum Beispiel durch Zeit- • Industrielle Erfahrungen mit Produktlinien und Kostenersparnis bei der Entwicklung neuer, ähnli- • Produktlinien für KMUs cher Produkte oder durch höhere Produktqualität auf- • Einführung von Produktlinienansätzen grund eines hohen Wiederverwendundgsanteils Beiträge sind in elektronischer Form (PDF oder existierender und bereits erprobter Komponenten. PostScript) an knauber@iese.fhg.de einzureichen; der Auch das Anpassen von Standardprodukten an beson- Umfang der Beiträge sollte fünf Seiten nicht über- dere Kundenwünsche wird durch vorab geplante schreiten. Weitere Informationen sind unter Variabilität erleichtert. Produktlinien decken naturge- http://www.iese.fhg.de/dspl-workshop mäß den gesamten Softwarelebenszyklus ab, daher verfügbar. integrieren sie viele andere Themenbereiche wie Termine: Requirements Engineering, Softwarearchitekturen Einsendung von Beiträgen: 31.8.2000 und Reengineering. Benachrichtigung über die Annahme: 1.10.2000 Nach etwa einem Jahrzehnt der Forschung erfahren Einsendung der endgültigen Version: 20.10.2000 Produktlinien für Softwaresysteme immer mehr Auf- Versand des endgültigen Programms: 25.10.2000 merksamkeit, was sich in der zunehmenden Anzahl Programmkommitee: internationaler Veranstaltungen zu diesem Themen- • Dr. P. Knauber (Fraunhofer IESE) kreis niederschlägt. Auch in Deutschland stoßen Pro- • Prof. Dr. K. Pohl (Universität Essen) duktlinien und benachbarte Themengebiete auf immer mehr Interesse, was sich unter anderem an der Beteili- • Prof. Dr. C. Atkinson (Universität Kaiserslautern) gung verschiedener Organisationen an europäischen • Dr. G. Böckle (Siemens AG) Projekten wie z.B. PRAISE und ESAPS zeigt. • Dr.-Ing. K. Czarnecki (DaimlerChrysler AG) • Prof. Dr. U. Eisenecker (FH Kaiserslautern) Ziel des Workshops • Prof. Dr. E. Plödereder (Universität Stuttgart) • Prof. Dr. W. Pree (Universität Konstanz) Der Workshop hat zum Ziel, einen Erfahrungsaus- • Prof. Dr. D. Rombach (Fraunhofer IESE) tausch zwischen Industrie und Forschung im Bereich • S. Thiel (Robert Bosch GmbH) der Software-Produktlinien und angrenzender The- • R. Trauter (DaimlerChrysler AG) menbereiche zu ermöglichen. • Dr. M. Verlage (Market Maker Software AG)
  8. 8. In software product lines, they have these product-feature maps thatdescribe the commonalities and differences of the products with respectto their features as a table.
  9. 9. At that time, there was a German professor, Gregor Snelting, whointroduced formal concept analysis in software engineering.I taught formal concept analysis as part of my reengineering class.
  10. 10. Concept analysis allows you to analyze such tables. In mathematicalterms, concept analysis is a technique to analyze the structure ofarbitrary binary relations.We proposed in that German workshop to use concept analysis to analyzesuch product-feature maps in software product lines.I will describe it later in more detail.
  11. 11. However, we were more interested in program analysis than inrequirement engineering.Another problem they have in product lines is to identify the componentsnecessary to implement a feature, which is needed to identify re-usablecomponents to be used in product lines.So we decided to use formal concept analysis to search where features areimplemented in the code.

×