P126 - Software archeology and the handbook of software architecture 2008
Auflistung P126 - Software archeology and the handbook of software architecture 2008 nach Erscheinungsdatum
1 - 10 von 20
Treffer pro Seite
Sortieroptionen
- KonferenzbeitragEmpirische Grundlagen für das Klonmanagement(Software archeology and the handbook of software architecture, 2008) Harder, Jan; Koschke, RainerSoftware-Systeme enthalten in der Praxis häufig einen hohen Grad redundanten Quelltextes - so genannte Klone. Von solcher Software-Redundanz wird angenommen, dass sie bei der Entwicklung und Wartung von Software zu zusätzlichem Aufwand und Problemen führt. Ein Ziel der Klonforschung besteht darin, Methoden und Werkzeuge für den Umgang mit Klonen oder deren Vermeidung zu entwickeln. Für das so genannte Klonmanagement fehlen jedoch noch wichtige empirische Grundlagen, die Aufschluss über die Ursachen und Auswirkungen von Klonen geben und eine informierte Basis für die Entwicklung von Methoden und Werkzeugen bieten. In diesem Positionspapier nennen wir, ausgehend vom Stand der Forschung, offene Forschungsfragen, deren Beantwortung wesentliche Grundlagen für das Klonmanagement liefern wird.
- KonferenzbeitragDas ARNO Projekt – Herausforderungen und Erfahrungen in einem großen industriellen Software-Migrationsprojekt(Software archeology and the handbook of software architecture, 2008) Teppe, Werner; Eppig, RobertIn diesem Artikel fassen wir das Vorgehen und die Erfahrungen mit der Migration eines sehr großen Anwendungssystems zusammen. Über wichtige Aspekte des Projekts und den Projektverlauf berichteten wir regelmäßig auf der jährlichen WSR und der REPRO in Vorträgen. Das Projekt ARNO hatte zum Ziel, alle Anwendungen einer Mainframe-Plattform auf UNIX zu migrieren, damit die komplette Systemplattform abzulösen und so erhebliche Hardware-, Softwarelizenz- und Infrastrukturkosten einzusparen. ARNO steht für Application Relocation to New Operating System. Die besonderen Herausforderungen bestanden darin, dass die umzustellenden Anwendungssysteme nicht stand-alone arbeiten, sondern Rechnerkopplungen zu rund 200 externen Partnersystemen unterhalten. Zudem sollte es möglich sein, während der mehrere Jahre dauernden Projektlaufzeit monatlich neue Anwendungsreleases herauszubringen, um Kundenanforderungen zu erfüllen. Außer den Anwendungen mussten das hoch performante Filehandlingsystem durch eine Datenbank abgelöst, die Middleware umgestellt und angepasst sowie umfangreiche Jobs (Skripte) auf das Zielsystem portiert werden. Die Systeme laufen in einem nahezu 7*24 Stunden Betrieb und wickeln in Spitzenzeiten ca. 750 Benutzertransaktionen pro Sekunde (TA/s) ab – dies entspricht rund 1500 technischen TA/s. Die Projektbeteiligten waren in unterschiedlichen Unternehmen über mehrere Standorte verteilt.
- KonferenzbeitragGraph Technology in Reverse Engineering The TGraph Approach(Software archeology and the handbook of software architecture, 2008) Ebert, Jürgen; Riediger, Volker; Winter, AndreasTGraphs are directed graphs with typed, attributed, and ordered nodes and edges. These properties leverage the use of graphs as models for all kinds of artifacts in the context of software reengineering. TGraphs are accompanied by metamodel based technologies to define, manipulate, analyze, query, visualize, and transform graphs. This paper summarizes the work accomplished around TGraphs and graph based modeling over the last decade. We introduce TGraphs as a versatile and expressive formalism and demonstrate their well-suitedness for solving reverse engineering problems.
- KonferenzbeitragUsing Library Dependencies for Clustering(Software archeology and the handbook of software architecture, 2008) Quante, JochenSoftware clustering is an established approach to automatic architecture recovery. It groups components that are in some way similar to each other. Usually, the similarity measure is based on the dependencies between components of a system. Library dependencies are intentionally ignored during the clustering process – otherwise, system components would be clustered with library components they use. We propose to particularly look at the dependencies on external components or libraries to learn more about an application’s high-level structure. The number of dependencies of a component from different kinds of libraries provides insightful information about the component’s functionality. Our case study illustrates the potential of this idea.
- Konferenzbeitrag20 Years of Software-Reengineering – A Résumé(Software archeology and the handbook of software architecture, 2008) Sneed, Harry M.This paper is an attempt to define what software reengineering is and what it has accomplished in the light of 20 years of practical application. The paper points out that reengineering is one of the many software maintenance activities, i.e. everything done with software once it has been put to use. Reengineering actions are devoted to improving the technical quality of existing software. By accepting this definition, it is possible to distinguish reengineering from other related activities performed on a software product after its first release such as reverse engineering, redocumentation, evolution and migration.
- KonferenzbeitragECARES-Projekt: Kombination von graphbasierten Redesign-Analysen(Software archeology and the handbook of software architecture, 2008) Mosler, Christof; Walter, TobiasIm ECARES-Projekt werden Methoden und Konzepte zur Unterstützung des graphbasierten Reengineerings von Telekommunikationssystemen entwickelt. Neben dem Reverse Engineering werden für verschiedene Anwendungsszenarien auch konkrete Redesign-Methoden entwickelt, die zur Veränderung der Systemsoftware führen. Hierfür sind Analysen notwendig, die dem Benutzer entsprechende Redesign-Vorschläge liefern. Diese werden in datenorientierte, funktionsorientierte oder anwendungsspezifische Ansätze unterteilt, die jeweils unterschiedliche Vorteile bieten. Dieses Papier zeigt, wie diese verschiedenen Redesign-Analysen flexibel miteinander kombiniert werden können, um insgesamt zu besseren Vorschlägen zu gelangen.
- KonferenzbeitragEntwurfsmuster-Erkennung mit BAUHAUS(Software archeology and the handbook of software architecture, 2008) Wiebe, Eduard; Keul, Steffen; Staiger, Stefan; Vogel, Gunther; Haufler, Andreas; Scherer, WolfgangIn diesem Artikel stellen wir ein interaktives Werkzeug zur Erkennung von Entwurfsmustern in Java-Programmen vor. Unser Werkzeug ermöglicht die Spezifikation von zu suchenden Mustern als UML-Klassendiagramme, sucht nach Instanzen dieser Muster in vorliegendem Bytecode, gewichtet die Vorkommnisse anhand des Übereinstimmungsgrades und ermöglicht eine manuelle Überprüfung anhand des zugrunde liegenden Quelltextes.
- KonferenzbeitragA Decade of Reverse Engineering at Fraunhofer IESE – The Changing Role of Reverse Engineering in Applied Research(Software archeology and the handbook of software architecture, 2008) Knodel, Jens; Muthig, DirkThe Fraunhofer Institute for Experimental Software Engineering (IESE) recognized reverse engineering as an essential competence and thus has been active in the field since 1996, which is right from its beginning. The role of reverse engineering, however, within the institute changed over time. Since Fraunhofer IESE is an applied research institute its competencies are tailored to the market to be and stay attractive to industry. This paper analyzes the evolution of the competence reverse engineering in retrospective and derives a picture of the role and importance of reverse engineering to practice in the last ten years where reverse engineering moved from a set of techniques applied in pure reengineering project to an enabling technology for other software engineering disciplines. Furthermore, we present our vision for the future role of reverse engineering at Fraunhofer IESE, as a supportive technology for the development of software, which gives constant and continuous feedback already at construction time.
- KonferenzbeitragLegacy Migration mit VisualAge Generator – Ein Praxisbericht(Software archeology and the handbook of software architecture, 2008) Pauling, MatthiasEin Projektteam der IBM AS GmbH entwickelt seit mittlerweile 15 Jahren Legacy-Anwendungen für Immobiliendienstleister im öffentlichen Dienst. Einige dieser Legacy-Anwendungen wurden auf die Client/Server-Plattformen Windows NT bzw. AIX migriert. Im Rahmen dieses Beitrages werden dabei gewonnene Erfahrungen vorgestellt.
- KonferenzbeitragDas Debeka-Projekt MiKe – Migration der Debeka-Kernanwendungen von Bull/GCOS8 auf AIX(Software archeology and the handbook of software architecture, 2008) Bach, Johannes; Schulze, MartinIn diesem Beitrag wird das bislang größte IT-Projekt in der Geschichte der Debeka vorgestellt: die Migration der Versicherungs- und Bauspar- Kernanwendungen von einem Bull-/GCOS8-Großrechner auf eine AIX-Plattform. Aufgrund verstärkter Zweifel an der Zukunftssicherheit der GCOS8-Groß- rechnerplattform der Firma Bull fiel im Jahr 2002 die Entscheidung, die Kernanwendungen der Debeka auf eine möglichst herstellerunabhängige Plattform zu migrieren und mit den Vorarbeiten zu beginnen. Wegen des zu sichernden Investitionsvolumens von mehr als eintausend Personen- jahren kam nur eine 1:1-Migration in Frage, bei der sowohl die Programm- und Job-Sourcen als auch die Daten automatisiert konvertiert werden. Bedingt durch eine phasenweise Vorgehensweise, in der einzelne Anwendungen paketweise migriert werden, entstand für eine Übergangszeit ein Hybridsystem, in dem das al- te GCOS-System und das neue AIX-System durch Brücken miteinander verbunden sind. Obwohl ein auf dem Gebiet von GCOS8-Migrationen erfahrener Dienstleister gewonnen werden konnte, ergaben sich im Lauf des Projekts unerwartete Herausforderungen beispielsweise bei der Abbildung der migrierten CODASYL-Datenbank auf eine relationale Datenbank mit anderen Sperrmechanismen, welche jedoch zeitnah bewältigt werden konnten. Das Projekt wurde zusätzlich genutzt, einen neuen Softwareentwicklungsprozess auf Basis einer modernen Entwicklungsumgebung im Unternehmen einzuführen und damit sowohl die Qualität als auch die Produktivität der Softwareentwicklung entscheidend zu verbessern.