SlideShare ist ein Scribd-Unternehmen logo
1 von 36
Downloaden Sie, um offline zu lesen
©	
  Eleonore50/	
  fotocommunity.de	
  
©	
  Rainer	
  Sturm	
  /	
  pixelio.de	
  
©	
  Rainer	
  Sturm	
  /	
  pixelio.de	
  
©	
  Katharina	
  Bregulla	
  /	
  pixelio.de	
  
©	
  Katharina	
  Bregulla	
  /	
  pixelio.de	
  
©	
  lucylaus	
  /	
  fotocommunity.de	
  
©	
  lucylaus	
  /	
  fotocommunity.de	
  
Legacy:
• veraltet, nicht zwangsläufig alt
• obsolete Technologien und Methoden
• oft in kritischen Geschäftsbereichen
Quelle: dpunkt Verlag
Software gilt etwa nach 5 Jahren als legacy
© Rainer Sturm / pixelio.de
© Rainer Sturm / pixelio.de
©	
  unknown	
  
PIM
PSMPSM’
PIM’
Code’ Code
ForewardEngineering(MDA)
ReverseEngineering(ADM)
Re-Engineering
Architecture
Transformation
©	
  unknown	
  
PIM
PSMPSM’
PIM’
Code’ Code
ForewardEngineering(MDA)
ReverseEngineering(ADM)
Re-Engineering
Architecture
Transformation
Qualität ì
Wartbarkeit ì
Fehler î
Horseshoe Model
Information & Wissen ì
©	
  Rainer	
  Sturm	
  /	
  pixelio.de	
  
• Grep, AWK, Shellskripte, …
• Debugger, …
• Decompiler, …
• JaMoPP, Snoop, MoDisco, …
©	
  Rainer	
  Sturm	
  /	
  pixelio.de	
  
Starring…
MoDisco - Concepts
MoDisco
Eclipse Modeling
Source Code
Databases
Metrics
Norm checking
Configuration
Files
Restructured Code
Migrated Code
Documentation
Impact Analysis
Models
Viewpoints
..other
MoDisco - Modernization Phases
Models
Discover
Viewpoints
UnderstandExisting Artifacts
Software Artifacts
•  Source Code
•  Configuration
•  Tests
•  Database
•  …
New
Artifacts
Transform
©	
  Michael	
  Bührke	
  	
  /	
  pixelio.de	
  
MoDisco – Use Cases (1/2)
§  Qualitätssicherung (Metriken, ...)
§  Dokumentation (Struktur, Datenfluss, …)
§  Refaktorierung (Design Pattern, Standards, …)
§  Migration (Framework, Architektur, …)
©	
  Michael	
  Bührke	
  	
  /	
  pixelio.de	
  
MoDisco – Use Cases (2/2)
©	
  Rainer	
  Sturm	
  /	
  pixelio.de	
  
©	
  Rainer	
  Sturm	
  /	
  pixelio.de	
  
©	
  Rainer	
  Sturm	
  /	
  pixelio.de	
  
JUnit3
Queries
JUnit3
Facet
JUnit3
Customization
java.ecore
uses uses
customizes extends
conforms to
Java EMF Model
Leichtgewichtigere
Lösungen für reine
Migration
JUnit3èJUnit4
©	
  Rainer	
  Sturm	
  /	
  pixelio.de	
  
©	
  Rainer	
  Sturm	
  /	
  pixelio.de	
  
©	
  Rainer	
  Sturm	
  /	
  pixelio.de	
  
©	
  Gerd	
  Altmann	
  /	
  pixelio.de	
  
ü  Anpassbarkeit
o  Metamodels
o  M2M, M2T
o  …
ü  umfangreich
o  Discoverer
o  Queries
o  …
ü  Workflow
ü  DSL (Xtext, …)
ü  (Fokus auf Java)
ü  Einstiegshürden
o  Refactoring
o  …
ü  Werkzeugkasten
©	
  Mario	
  De	
  MaFa	
  /	
  pixelio.de	
  
ü  Metriken zur Wartbarkeit von Software
o  Bugs / Commits pro Zeitraum
o  Committer pro Zeitraum
o  …
ü  Identifizierung von Varianten in Branches
o  Modularisierung
o  …
ü  Abgleich von Domain Model und DB
§  www.eclipse.org
§  www.eclipse.org/modeling/emf
§  www.eclipse.org/MoDisco
§  www.omg.org/technology/kdm
©	
  unknown	
  
©	
  Gerd	
  Altmann	
  /	
  pixelio.de	
  
©	
  Willi	
  Heidelbach/	
  pixelio.de	
  
Master Thesis / Abschlussarbeit –
Software Engineering
Aufgabengebiet:
•  Entwicklung von Methoden zur
Informationsgewinnung
•  Implementierung der Methoden mittels
Eclipse basierter Technologien
Studienbereiche:
•  Informatik und -Informatik
lars.martin@smb-tec.com - +49-(0)151-42607011

Weitere ähnliche Inhalte

Ähnlich wie Software Archaeology - Raiders of the Lost Code (long)

Blog portables schliffbildlabor ml3002
Blog portables schliffbildlabor ml3002Blog portables schliffbildlabor ml3002
Blog portables schliffbildlabor ml3002Daniela Christer
 
Was nicht passt wird responsive gemacht - Extended Edition
Was nicht passt wird responsive gemacht - Extended EditionWas nicht passt wird responsive gemacht - Extended Edition
Was nicht passt wird responsive gemacht - Extended EditionChristoph Reinartz
 
Imitrix Elektronik D
Imitrix Elektronik DImitrix Elektronik D
Imitrix Elektronik Dimitrix GmbH
 
Einstieg in Xamarin und Xamarin.Forms, DDC 2018
Einstieg in Xamarin und Xamarin.Forms, DDC 2018Einstieg in Xamarin und Xamarin.Forms, DDC 2018
Einstieg in Xamarin und Xamarin.Forms, DDC 2018André Krämer
 
BASTA! 2016 - Roslyn & Visual Studio Extensions
BASTA! 2016 - Roslyn & Visual Studio ExtensionsBASTA! 2016 - Roslyn & Visual Studio Extensions
BASTA! 2016 - Roslyn & Visual Studio ExtensionsRobin Sedlaczek
 
.NET Core Architecture (UI)
.NET Core Architecture (UI).NET Core Architecture (UI)
.NET Core Architecture (UI)Robin Sedlaczek
 
Präsentation Screencasts 2.11.11
Präsentation Screencasts 2.11.11Präsentation Screencasts 2.11.11
Präsentation Screencasts 2.11.11primaErma
 
Was nicht passt wird responsive gemacht - Conference Edition
Was nicht passt wird responsive gemacht - Conference EditionWas nicht passt wird responsive gemacht - Conference Edition
Was nicht passt wird responsive gemacht - Conference EditionChristoph Reinartz
 
Projektkrisen Vortrag OOP 2011
Projektkrisen Vortrag OOP 2011Projektkrisen Vortrag OOP 2011
Projektkrisen Vortrag OOP 2011KEGON AG
 
Architectures for .Net Core Applications
Architectures for .Net Core ApplicationsArchitectures for .Net Core Applications
Architectures for .Net Core ApplicationsRobin Sedlaczek
 
Marquardt Internship Presentation 2015
Marquardt Internship Presentation 2015Marquardt Internship Presentation 2015
Marquardt Internship Presentation 2015Andrew DePerro
 
Augmented Reality Workshop
Augmented Reality WorkshopAugmented Reality Workshop
Augmented Reality Workshopargency
 
Makeathon kickoff 170523_v2
Makeathon kickoff 170523_v2Makeathon kickoff 170523_v2
Makeathon kickoff 170523_v2Open Adaptronik
 
Wertstoff Software - Wissenssicherung in Legacy-Systemen
Wertstoff Software - Wissenssicherung in Legacy-SystemenWertstoff Software - Wissenssicherung in Legacy-Systemen
Wertstoff Software - Wissenssicherung in Legacy-SystemenMichael Moser
 
BASTA! Spring 2017 - Warum warten auf die IDE? Direct Coding in der eigenen A...
BASTA! Spring 2017 - Warum warten auf die IDE? Direct Coding in der eigenen A...BASTA! Spring 2017 - Warum warten auf die IDE? Direct Coding in der eigenen A...
BASTA! Spring 2017 - Warum warten auf die IDE? Direct Coding in der eigenen A...Robin Sedlaczek
 
PLM Open Hours - Softwareentwicklung im Innovationsprozess
PLM Open Hours - Softwareentwicklung im InnovationsprozessPLM Open Hours - Softwareentwicklung im Innovationsprozess
PLM Open Hours - Softwareentwicklung im InnovationsprozessIntelliact AG
 

Ähnlich wie Software Archaeology - Raiders of the Lost Code (long) (20)

Blog portables schliffbildlabor ml3002
Blog portables schliffbildlabor ml3002Blog portables schliffbildlabor ml3002
Blog portables schliffbildlabor ml3002
 
Was nicht passt wird responsive gemacht - Extended Edition
Was nicht passt wird responsive gemacht - Extended EditionWas nicht passt wird responsive gemacht - Extended Edition
Was nicht passt wird responsive gemacht - Extended Edition
 
Imitrix Elektronik D
Imitrix Elektronik DImitrix Elektronik D
Imitrix Elektronik D
 
Einstieg in Xamarin und Xamarin.Forms, DDC 2018
Einstieg in Xamarin und Xamarin.Forms, DDC 2018Einstieg in Xamarin und Xamarin.Forms, DDC 2018
Einstieg in Xamarin und Xamarin.Forms, DDC 2018
 
Java User Group Düsseldorf - Vortrag der iks am 13. März 2008
Java User Group Düsseldorf - Vortrag der iks am 13. März 2008Java User Group Düsseldorf - Vortrag der iks am 13. März 2008
Java User Group Düsseldorf - Vortrag der iks am 13. März 2008
 
BASTA! 2016 - Roslyn & Visual Studio Extensions
BASTA! 2016 - Roslyn & Visual Studio ExtensionsBASTA! 2016 - Roslyn & Visual Studio Extensions
BASTA! 2016 - Roslyn & Visual Studio Extensions
 
.NET Core Architecture (UI)
.NET Core Architecture (UI).NET Core Architecture (UI)
.NET Core Architecture (UI)
 
Präsentation Screencasts 2.11.11
Präsentation Screencasts 2.11.11Präsentation Screencasts 2.11.11
Präsentation Screencasts 2.11.11
 
Was nicht passt wird responsive gemacht - Conference Edition
Was nicht passt wird responsive gemacht - Conference EditionWas nicht passt wird responsive gemacht - Conference Edition
Was nicht passt wird responsive gemacht - Conference Edition
 
Projektkrisen Vortrag OOP 2011
Projektkrisen Vortrag OOP 2011Projektkrisen Vortrag OOP 2011
Projektkrisen Vortrag OOP 2011
 
Architectures for .Net Core Applications
Architectures for .Net Core ApplicationsArchitectures for .Net Core Applications
Architectures for .Net Core Applications
 
Marquardt Internship Presentation 2015
Marquardt Internship Presentation 2015Marquardt Internship Presentation 2015
Marquardt Internship Presentation 2015
 
Team Foundation Server
Team Foundation ServerTeam Foundation Server
Team Foundation Server
 
Augmented Reality Workshop
Augmented Reality WorkshopAugmented Reality Workshop
Augmented Reality Workshop
 
Makeathon kickoff 170523_v2
Makeathon kickoff 170523_v2Makeathon kickoff 170523_v2
Makeathon kickoff 170523_v2
 
Wertstoff Software - Wissenssicherung in Legacy-Systemen
Wertstoff Software - Wissenssicherung in Legacy-SystemenWertstoff Software - Wissenssicherung in Legacy-Systemen
Wertstoff Software - Wissenssicherung in Legacy-Systemen
 
BASTA! Spring 2017 - Warum warten auf die IDE? Direct Coding in der eigenen A...
BASTA! Spring 2017 - Warum warten auf die IDE? Direct Coding in der eigenen A...BASTA! Spring 2017 - Warum warten auf die IDE? Direct Coding in der eigenen A...
BASTA! Spring 2017 - Warum warten auf die IDE? Direct Coding in der eigenen A...
 
Mdd Days 2009 Handout
Mdd Days 2009   HandoutMdd Days 2009   Handout
Mdd Days 2009 Handout
 
PLM Open Hours - Softwareentwicklung im Innovationsprozess
PLM Open Hours - Softwareentwicklung im InnovationsprozessPLM Open Hours - Softwareentwicklung im Innovationsprozess
PLM Open Hours - Softwareentwicklung im Innovationsprozess
 
PlaceCam 3
PlaceCam 3PlaceCam 3
PlaceCam 3
 

Software Archaeology - Raiders of the Lost Code (long)