Verbesserung der Architektur der DPP- Software Saros (Vortrag 2) Slawa Belousow Institut für Informatik FU Berlin
|
|
- Jakob Seidel
- vor 5 Jahren
- Abrufe
Transkript
1 Verbesserung der Architektur der DPP- Software Saros (Vortrag 2) Slawa Belousow Institut für Informatik FU Berlin
2 Inhalt der Präsentation 1.Arbeit und Vortrag 1 2.Aktuelle Saros-Architektur 3.Probleme 4.Analyseansätze 5.Analysewerkzeuge 6.Virtuelle Modularisierung 7.Neue Architektur 8.Meilensteine 9.Zusammenfassung Verbesserung der Architektur der DPP-Software Saros (Vortrag 2) 2
3 1. Arbeit und Vortrag 1 Verbesserung der Architektur Vortrag 1 ( ) Aufteilung des Saros Projektes in mehrere Teilprojekte über abstrakte Schnittstellen verbinden zwei parallele Entwicklungsgleise automatisches Refactoring Verbesserung der Architektur der DPP-Software Saros (Vortrag 2) 3
4 1. Vortrag 1 Entwicklung: Test- «import» Core Dokumentation, Doc-Werkzeuge framework 1 Skripte Testframework 2 Test- «import» «import» «import» Eclipse Netbeans IntelliJ IDEA Plug-in Plug-in Plug-in «import» Ressourcen jedit Plug-in «import» framework 3 Release 1 Ant Release 2 Maven Release X Produkt: Saros für Eclipse Saros für jedit Verbesserung der Architektur der DPP-Software Saros (Vortrag 2) 4
5 2. Aktuelle Saros-Architektur Logische Einheiten ein Konzept direkte Integration in die reale Umwelt Abhängigkeit starke direkte Verknüpfung zwischen Konzepten Direktzugriff auf konkrete Klassen doppelter Code PicoContainer als Assembler (nicht Dependency Injection) Big Ball of Mud Verbesserung der Architektur der DPP-Software Saros (Vortrag 2) 5
6 3. Probleme Vermischung von Technologien große Klassen schwer zu überblicken schwer zu warten Änderungen erzeugen Seiteneffekte virale Designprobleme (Copy & Paste) Verbesserung der Architektur der DPP-Software Saros (Vortrag 2) 6
7 4. Analyseansätze erster Ansatz physische Aufteilung in logische Module nach ein paar Tagen verworfen zweiter Ansatz virtuelle Module Analyse der Abhängigkeiten Definition von Schnittstellen Erstellung eines Refactoring-Plan für ein Modul Verbesserung der Architektur der DPP-Software Saros (Vortrag 2) 7
8 5. Analysewerkzeuge JDepend BSD, Mike Clark JDepend4Eclipse XRadar Verbesserung der Architektur der DPP-Software Saros (Vortrag 2) 8
9 5. Analysewerkzeuge - JDepend prüft Abhängigkeit zwischen Klassen und Paketen Afferent Couplings (Ca) - wird verwendet von Efferent Couplings (Ce) hängt ab von Abstractness (A) Instability (I) - I = Ce / (Ce + Ca) Distance from the Main Sequence (D) Package Dependency Cycles JDepend analysiert einzelne Pakete und Klassen Verbesserung der Architektur der DPP-Software Saros (Vortrag 2) 9
10 5. Analysewerkzeuge - JDepend JDepend Vorführung Verbesserung der Architektur der DPP-Software Saros (Vortrag 2) 10
11 6. Virtuelle Modularisierung virtuelles Modul Liste von Paketen und/oder Klassen Schnittstelle keine Abhängigkeit zwischen v. Modulen außerhalb der Schnittstelle mögliche = "...") Base, Project, Whiteboard, Chat, VoIP, Utils feinere Aufteilung konzeptbasiert Verbesserung der Architektur der DPP-Software Saros (Vortrag 2) 11
12 6. Virtuelle Modularisierung Erstellung eines Werkzeug für... virtuelle Moduldefinition Auflistung der Abhängigkeiten zwischen Modulen Refactoring-Plan bzw. TODOs um das Modul physisch abzugrenzen optional automatisches Refactoring Überwachung des virtuellen Moduls Automatisierung Eclipse JDT Core Java Document Model Analogie zu XML und XPath OSGi Verbesserung der Architektur der DPP-Software Saros (Vortrag 2) 12
13 7. Neue Architektur MVC global aufwendig Inkrementelle Modularisierung Teile von Saros werden nacheinander in virtuelle Module verwandelt Ziel: nur v. Module und passive Utility-Klassen Weiterentwicklung Abstraktion / Schnittstellen Pattern Oriented Design Verbesserung der Architektur der DPP-Software Saros (Vortrag 2) 13
14 7. Neue Architektur this.container.addcomponent(saros.class, this); this.container.addcomponent(klasse1.class); this.container.addcomponent(klasse2.class); //... class Klasse1 { protected Saros saros; protected Klasse1(Saros saros) { this.saros = saros; } } Verbesserung der Architektur der DPP-Software Saros (Vortrag 2) 14
15 7. Neue Architektur this.container. registercomponentimplementation(isaros.class, SarosImpl.class); this.container. registercomponentimplementation(imodul1.class, Modul1Impl.class); //... class Modul1Impl implements IModul1 { protected ISaros saros; protected Modul1Impl(ISaros saros) { this.saros = saros; } } Verbesserung der Architektur der DPP-Software Saros (Vortrag 2) 15
16 7. Neue Architektur Pattern Oriented Design Prinzipien Interface Segregation Principle Dependency-Inversion Principle Single-Responsibility Principle Open-Closed Principle Patterns Abstract Factory Value Object Null Object Adapter Observer Verbesserung der Architektur der DPP-Software Saros (Vortrag 2) 16
17 8. Meilensteine I Februar 2011 Abgrenzung eines virtuellen Moduls Refactoring-Plan Durchführung des Refactorings Erfahrung sammeln März 2011 weitere Module in Saros abgrenzen verschiedene Szenarien simulieren Aufwandsabschätzung erstellen Verbesserung der Architektur der DPP-Software Saros (Vortrag 2) 17
18 5. Meilensteine II April 2011 Refactoring des Testframeworks (Abschätzung) Refactoring weiterer v. Module Mai 2011 Refactoring weiterer v. Module Dokumentation der eigenen Werkzeuge Tests Schreiben Juni 2011 Tests Schreiben Verbesserung der Architektur der DPP-Software Saros (Vortrag 2) 18
19 9. Zusammenfassung virtuelle Module Werkzeug um diese Module zu verwalten und zu überwachen Inkrementelle Modularisierung von Saros Verbesserung der Architektur der DPP-Software Saros (Vortrag 2) 19
20 Diskussion 1.Aktuelle Saros-Architektur 2.Probleme 3.Analyseansätze 4.Analysewerkzeuge 5.Virtuelle Modularisierung 6.Neue Architektur 7.Meilensteine Verbesserung der Architektur der DPP-Software Saros (Vortrag 2) 20
21 Vielen Dank! Verbesserung der Architektur der DPP-Software Saros (Vortrag 2) 21
Verbesserung der Architektur und Dokumentation der DPP-Software Saros. Slawa Belousow Institut für Informatik FU Berlin 13.01.2011
Verbesserung der Architektur und Dokumentation der DPP-Software Saros Slawa Belousow Institut für Informatik FU Berlin 13.01.2011 Vorstellung der Arbeit Problem Entwicklung wird immer schwieriger Ziel
MehrBestandsaufnahme und Arbeit an einer Alpha-Version des Saros- Plugins für die IntelliJ-Plattform
Tobias Bouschen Institut für Informatik der Freien Universität Berlin, Arbeitsgruppe Software Engineering Bestandsaufnahme und Arbeit an einer Alpha-Version des Saros- Plugins für die IntelliJ-Plattform
MehrVerbesserung der Architektur der DPP- Software Saros
Verbesserung der Architektur der DPP-Software Saros Wjatscheslaw Belousow (belousow@inf.fu-berlin.de) Arbeitsgruppe Software Engineering, Institut für Informatik Verbesserung der Architektur der DPP- Software
MehrSOLID für.net und JavaScript
SOLID für.net und JavaScript www.binarygears.de Stefan Dirschnabel Twitter: @StefanDirschnab #dncgn SOFTWARE ENTWICKLUNG BERATUNG SCHULUNG 5 Prinzipien für das Design von Software Wartbarer Code Leicht
MehrStefan Zörner: Beziehungskiste: Abhängigkeiten im Softwareentwurf planen und überwachen
Beziehungskiste. Abhängigkeiten im Softwareentwurf planen und überwachen Stefan Zörner (sz@de) Berlin, den 05. April 2013 Berlin Expert Days Stefan Zörner: Beziehungskiste: Abhängigkeiten im Softwareentwurf
MehrProjektgruppe. Thomas Kühne. Komponentenbasiertes Software Engineering mit OSGi
Projektgruppe Thomas Kühne Komponentenbasiertes Software Engineering mit OSGi Anforderungen der PG IDSE an ein Komponenten- Client Nativer Client Web Client Alternativen IDSE Nutzer Szenario Pipe IDSE
MehrSoftware-Refactoring. 29. Mai 2013
Software-Refactoring 29. Mai 2013 Überblick Was ist Refactoring und wozu dient es? Welche Refactorings gibt es? Refactoring-Katalog: www.refactoring.com Wann, wo und wie führt man Refactorings durch? Wie
MehrSonargraph in 15 Minuten. Andreas Hoyer blog.hello2morrow.com
Sonargraph in 15 Minuten Andreas Hoyer a.hoyer@hello2morrow.com blog.hello2morrow.com hello2morrow GmbH Gegründet 2005 Angesiedelt in Deutschland, USA und Kolumbien > 95% des Umsatzes Software Lizenzen,
MehrErstellung eines mockbasierten Testframeworks für Saros. Philipp Cordes Masterarbeit
Erstellung eines mockbasierten Testframeworks für Saros Unit-Tests Integrationstests Akzeptanztests @Test public void test() { } assertequals(15, Math.multiply(3, 5)); über 80.000 Zeilen Code Know-how
MehrÜberblick FBC SNW Zusammenfassung. Entwurfsmuster. Eine Einführung. Botond Draskoczy. Marcus Vitruvius Pollio
Entwurfsmuster Eine Einführung Botond Draskoczy Marcus Vitruvius Pollio Überblick Historie, Literatur Das Flugapparat-Bildschirmschoner-Projekt (FBP) Das internetbasierte Solar-Netzwerk (SNW) Zusammenfassung
MehrUmstieg auf OSGi - aber wie? Martin Lippert & Matthias Lübken akquinet it-agile
Umstieg auf OSGi - aber wie? Martin Lippert & Matthias Lübken akquinet it-agile OSGi The dynamic module system for Java Bundles Exports Imports Dependencies Services Declarative Services Versionen Dynamic
MehrMSE/SWF - API Design. Arthur Zaczek. Feb 2015
Arthur Zaczek Feb 2015 1 Einleitung Dieses Dokument ist eine Zusammenfassung des Buches Practical API Design: Confessions of a Java Framework Architect. [@Tulach2012] 1.1 Cluelessness Je einfacher eine
MehrRefactorings in großen Softwareprojekten
Refactorings in großen Softwareprojekten (C) 2004 Martin Lippert lippert@acm.org Stefan Roock stefan@stefanroock.de Was ist Refactoring? A change made to the internal structure of software to make it easier
MehrIntegration von Web Services in J EE Anwendungen mit XFire. 1/26 André Janus - Integration von Web Services in J EE Anwendungen mit XFire
Integration von Web Services in J EE Anwendungen mit XFire 1/26 André Janus - Integration von Web Services in J EE Anwendungen mit XFire univativ : = Umsetzung durch Studenten und Young Professionals.
MehrInhalt. TEIL I Grundlagen. Einleitung 15
Einleitung 15 TEIL I Grundlagen 1.1 Notwendigkeit einer verbesserten Abstraktion 23 1.2 Klassen und Objekte 25 1.3 Festlegung von Grenzen 27 1.4 Wiederverwendung 30 1.4.1 Komposition 30 1.4.2 Vererbung
MehrThomas Schissler MVP Visual Studio ALM, artiso AG
Thomas Schissler MVP Visual Studio ALM, artiso AG Kurs-Übersicht Moderne Softwareentwicklung 01 Überblick Was macht moderne Software-Entwicklung aus? 02 Projektmanagement Wie funktioniert modernes Projektmanagement
MehrAbschlussbericht. Erstellung eines automatisierten Build-Prozesses für Eclipse-RCP- Anwendungen am Fallbeispiel Control System Studio.
Abschlussbericht Erstellung eines automatisierten Build-Prozesses für Eclipse-RCP- Anwendungen am Fallbeispiel Control System Studio Christian Weber Agenda Motivation (3-5) Vorgehen (6-7) Konzeptionelle
Mehroose. Abhängigkeiten: Die Wurzel allen Übels im Softwareentwurf. Und wie Sie sie in der Java-Entwicklung behandeln...
Abhängigkeiten: Die Wurzel allen Übels im Softwareentwurf. Und wie Sie sie in der Java-Entwicklung behandeln... Stefan Zörner (sz@de) Wien, den 16. Jänner 2013 Software Quality Days Stefan Zörner: Abhängigkeiten:
MehrAuf der Suche nach Q Andr eas Havenstein 1
Auf der Suche nach Q Andreas Havenstein ah@it-agile.de 1 Der Beginn der Suche SoCraTes 2011: International Software Craftsmanship and Testing (un)conference 2 Das Q-Messinstrument Q=68 Q=25 Q = 38,6 3
MehrEclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007
Eclipse Equinox als Basis für Smart Client Anwendungen Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007 Übersicht Definition / Architektur Smart Client Smart Client mit RCP / Equinox Gesamtfazit
MehrDesign Patterns 2. Model-View-Controller in der Praxis
Design Patterns 2 Model-View-Controller in der Praxis Design Patterns Oft Schablonen für eine Klassenstruktur... aber nicht immer! Dahinterliegende Konzepte wichtiger als wörtliche Umsetzung Pattern werden
MehrCreational Patterns. Seminar Software-Entwurf. Thomas Liro WS 2004/05.
Creational Patterns Seminar Software-Entwurf WS 2004/05 Thomas Liro Inhaltsüberblick Einordnung des Themas Beschreibung von Design Pattern Auswahl von Design Patterns Was sind Creational
MehrSWP Übersetzerbau im SS 13 Einführung und Organisatorisches. Till Zoppke Maximilian Konzack Yves Müller Freie Universität Berlin
SWP Übersetzerbau im SS 13 Einführung und Organisatorisches Till Zoppke Maximilian Konzack Yves Müller Freie Universität Berlin Auftaktveranstaltung am 13. April 2013 Übersicht Projektidee Einteilung in
MehrErhebung von Benutzerfeedback aus der Nutzung eines Werkzeugs zur verteilten Paarprogrammierung
Bachelorarbeit Erhebung von Benutzerfeedback aus der Nutzung eines Werkzeugs zur verteilten Paarprogrammierung Lisa Dohrmann Institut für Informatik, FU Berlin 08.09.2009 Übersicht Was ist Saros? Inhalt
MehrTechnische Schulden in Architekturen erkennen und beseitigen
Technische Schulden in Architekturen erkennen und beseitigen Dr. Carola Lilienthal Carola.Lilienthal@wps.de, @cairolali www.wps.de //// Hans-Henny-Jahnn-Weg 29 //// 22085 HAMBURG Business-Software, die
MehrTutorium Softwaretechnik I
Tutorium Softwaretechnik I Moritz Klammler 27. Juni 2017 Fakultät für Informatik, IPD Tichy Titelfoto: Copyright (C) 2010 Multimotyl CC BY-SA 3.0 1 27. Juni 2017 Moritz Klammler - Tutorium Softwaretechnik
MehrModularisierung und Inversion of Control mit Spring done right
Modularisierung und Inversion of Control mit Spring done right Fabian Knittel, David Burkhart andrena objects ag Entwicklertag Karlsruhe, 21. Mai 2014 1 Modularisierung https://www.flickr.com/photos/juhansonin/4734829999/
MehrStudienarbeit. Mohammad Athar Januar Verantw. Betreuer : Prof. Dr. Walter F. Tichy Betr. Mitarbeiter : Dipl.-Inform. Marc Schanne
Studienarbeit Bewertung von Programmier- und Entwicklungsassistenten am Beispiel eines Eclipse-Plug-Ins für den Entwurf verteilter Systeme mit der EventChannelNetwork- Kommunikationsinfrastruktur Mohammad
MehrLogo in neuer Logosystematik einfügen: Bewertung der Softwarequalität eines bestehenden Softwaresystems an Hand von
Bewertung der Softwarequalität eines bestehenden Softwaresystems an Hand von Software Engineering Grundsätzen und Identifikation von Maßnahmen zur Verbesserung Axel Sommer Inhalt Motivation und Ziele Software
MehrArchitecture Blueprints
Architecture Blueprints Daniel Liebhart, Peter Welkenbach, Perry Pakull, Mischa Kölliker, Michael Könings, Markus Heinisch, Guido Schmutz Ein Leitfaden zur Konstruktion von Softwaresystemen mit Java Spring,.NET,
MehrSEQIS 10 things. Herzlich Willkommen! Alexander Weichselberger SEQIS Geschäftsleitung
SEQIS 10 things SEQIS 10 things Herzlich Willkommen! Alexander Weichselberger SEQIS Geschäftsleitung SEQIS 10 things Programm 2014 20.03.14 Business Analyse Einführung in den BABOK Guide 26.06.14 API Testing:
MehrDie S.O.L.I.D-Prinzipien für C# Entwickler Thomas Claudius
Die S.O.L.I.D-Prinzipien für C# Entwickler Thomas Claudius Huber @ThomasClaudiusH BASEL BERN BRUGG DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. GENEVA HAMBURG COPENHAGEN LAUSANNE MUNICH STUTTGART VIENNA ZURICH
MehrEntwicklungswerkzeuge
Entwicklungswerkzeuge Werner Struckmann & Tim Winkelmann 10. Oktober 2012 Gliederung Anforderungen Projekte Debugging Versionsverwaltung Frameworks Pattern Integrated development environment (IDE) Werner
MehrIntelliJ IDEA. Gliederung. Was ist IntelliJ IDEA? Lizenzmodell Warum IntelliJ einsetzen? IntelliJ und Eclipse Demo. Blick über den Eclipse-Tellerrand
IntelliJ IDEA Blick über den Eclipse-Tellerrand Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim Version: 1.0 www.oio.de info@oio.de Gliederung 2007 Orientation in Objects GmbH IntelliJ IDEA:
MehrAndreas Mösching Senior IT Architekt Hewlett-Packard (Schweiz) GmbH HP Banking Service Center Bern andreas.moesching@rtc.ch
Eclipse Runtime (OSGi) als Plattform eines Swing Rich Client Andreas Mösching Senior IT Architekt Hewlett-Packard (Schweiz) GmbH HP Banking Service Center Bern andreas.moesching@rtc.ch Zu meiner Person
MehrInhalt. 3.1 Der inkrementelle Entwurf im Überblick... 13 3.2 Flache Aufwandskurve... 14 3.3 Qualitätskriterien für den inkrementellen Entwurf...
ix 1 Einleitung 1 Roman Pichler Stefan Roock 1.1 Agile Softwarewicklung und Scrum............................ 1 1.2 Zielgruppe und Zielsetzung.................................. 2 1.3 Überblick über das
MehrSoftwareprojekt: Agile Softwareentwicklung in einem Open-Source-Projekt. Sommersemester 2016
Softwareprojekt: Agile Softwareentwicklung in einem Open-Source-Projekt Sommersemester 2016 Franz Zieris AG Software Engineering Freie Universität Berlin 27.04.2016 Das Projekt: Worum geht es? Teilnahme
MehrMatthias Geirhos. Entwurfsmuster. Das umfassende Handbuch. Rheinwerk. Computing
Matthias Geirhos Entwurfsmuster Das umfassende Handbuch Rheinwerk Computing Inhalt Vorwort 17 1 Einführung 19 1.1 Einleitung und allgemeine Hinweise 19 1.1.1 Für wen ist dieses Buch gedacht? 19 1.1.2 Muster
MehrVerteilte Paarprogrammierung in Open Source Projekten. Eike Starkmann Institut für Informatik FU Berlin
Verteilte Paarprogrammierung in Open Source Projekten Eike Starkmann Institut für Informatik FU Berlin 23.07.2009 Übersicht Kontext und Ziele der Arbeit Plan der Durchführung Projektauswahl Projekt anschreiben
MehrWahlpflichtfach Design Pattern
Wahlpflichtfach Design Pattern Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik miwilhelm@hs-harz.de http://www.miwilhelm.de Raum 2.202 Tel. 03943 / 659 338
MehrPS Software Engineering WS 2018/19
PS Software Engineering WS 2018/19 Wöchentlich Dienstag 08:00-10:00 Start: 8:15 Termine: PLUSonline Homepage zum PS: Allgemeines www.softwareresearch.net Teaching Programmieren im Großen Die Entwicklung
MehrErweiterung des Saros Test Frameworks für die HTML GUI. Masterarbeit Jannis Fey
Erweiterung des Saros Test Frameworks für die HTML GUI Masterarbeit Jannis Fey 17.12.18 Was ist Saros? Plugin für Eclipse & IntelliJ Ermöglicht verteilte Paarprogrammierung in Echtzeit STF HTML GUI Masterarbeit
MehrENTWURFSPRINZIPIEN DIE SOLID-PRINZIPIEN NACH ROBERT C. MARTIN 1 / 21. Markus Just Wissenschaftliche Vertiefung
ENTWURFSPRINZIPIEN DIE SOLID-PRINZIPIEN NACH ROBERT C. MARTIN Markus Just 22.01.2016 Wissenschaftliche Vertiefung 1 / 21 Agenda 1) Einführung 2) SOLID- nach Robert C. Martin 3) Fazit 2 / 21 Mängel von
MehrEntwicklung einer IDE unabhängigen Benutzeroberfläche für Saros. Matthias Bohnstedt Betreuer: Franz Zieris Eingereicht bei: Prof. Dr.
Entwicklung einer IDE unabhängigen Benutzeroberfläche für Saros Matthias Bohnstedt Betreuer: Franz Zieris Eingereicht bei: Prof. Dr. Prechelt Aufbau des Vortrags Einleitung Motivation: Saros für IntelliJ
MehrSoftware modular bauen
Software modular bauen Architektur von langlebigen Softwaresystemen Grundlagen und Anwendung mit OSGi und Java von Ulf Fildebrandt 1. Auflage Software modular bauen Fildebrandt schnell und portofrei erhältlich
MehrSpring IDE. Christian Dupuis - Spring 2.0 Release Party
Spring IDE Torsten Jürgeleit, J Christian Dupuis - Spring 2.0 Release Party Agenda? Überblick? Spring Beans Unterstü? Spring Web Flow Unterstü? Geplante Erweiterungen? Demonstration Überblick? Spring gibt
MehrInhaltsverzeichnis. Bernd Weber, Patrick Baumgartner, Oliver Braun. OSGi für Praktiker
Bernd Weber, Patrick Baumgartner, Oliver Braun OSGi für Praktiker Prinzipien, Werkzeuge und praktische Anleitungen auf dem Weg zur "kleinen SOA" ISBN: 978-3-446-42094-6 Weitere Informationen oder Bestellungen
MehrSoftwareprojekte mit Kultur
Maven Softwareprojekte mit Kultur Patrick Zeising Konfigurationsmanagement Motivation Projektaufbau unterschiedlich Abläufe zum Übersetzen und Deployen unterschiedlich Verwendete Tools, Prozesse, Skripte
MehrMathematik Seminar WS 2003: Simulation und Bildanalyse mit Java. Software-Architektur basierend auf dem Plug-in-Konzept
Mathematik Seminar WS 2003: Simulation und Bildanalyse mit Java Software-Architektur basierend auf dem Plug-in-Konzept Aufteilung: Probleme mit normaler/alter Software Ziele des Software Engineerings Die
MehrFWP Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen
FWP Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen Sommersemester 2018 Michael Theis, Lehrbeauftragter 2 Servlet API Websockets JSF JAX-WS JAX-RS JMS JAXB JSON-P JEE Enterprise Application
MehrApplication Frameworks
Seminar Software Engineering 1 Grundlagen Agenda Spring Framework Dependency Injection Aspektorientierte Programmierung Datenbankanbindung Modell View Controller Sicherheit Spring vs. Java EE Zusammenfassung
MehrJUnit 5 Die Plattform. Johannes Link
JUnit 5 Die Plattform Johannes Link @johanneslink johanneslink.net Softwaretherapeut "In Deutschland ist die Bezeichnung Therapeut allein oder ergänzt mit bestimmten Begriffen gesetzlich nicht geschützt
MehrHandbuch für die Erweiterbarkeit
Handbuch für die Erweiterbarkeit Inhalt Pakete für die Erweiterbarkeit... 2 Actions... 2 Items... 2 Itemset... 2 Die UseCaseNewAction... 3 Eigene Shapes... 4 Der Shape Container... 5 User Objects... 6
MehrDer agile Software Architekt
Der agile Software Architekt Ingmar Kellner 2013-09-25 Agil == Beweglich == Zur Handlung Fähig Source: http://de.wiktionary.org/wiki/agil Gegebene Versprechen schränken meine Agilität ein! 2013, hello2morrow
MehrEclipse Modeling Framework
1 / 14 Eclipse Modeling Framework Stefan Berlik Fachgruppe Praktische Informatik FB 12, Elektrotechnik und Informatik Universität Siegen 14. November 2007 Was ist das Eclipse Modeling Framework (EMF)?
MehrPraktikumsvorbesprechung: Software Engineering WS 07/08
Praktikumsvorbesprechung: Software Engineering WS 07/08 Bernd Bruegge Technische Universität München Lehrstuhl für Angewandte Softwaretechnik Marc Lindike Flughafen München 1 Überblick Einleitung (5 min)
MehrIntegration von Java Legacy Code in die Fusion Middleware 11 mittels des SOA Suite Spring Components
Integration von Java Legacy Code in die Fusion Middleware 11 mittels des SOA Suite Spring Components Integration von Java Legacy Code in die Fusion Middleware 11 mittels des SOA Suite Spring Components
MehrBehutsame Modernisierung
Software Evolution mit Legacy Systemen Forum Forschungsförderung / ViSEK Trends im Software Engineering Software Evolution mit Legacy Systemen Behutsame Modernisierung Jan Wloka
MehrQuellcode-Repräsentation in Eclipse. Seminarvortrag PG Reclipse Jan Rieke
Quellcode-Repräsentation in Eclipse Seminarvortrag PG Reclipse Jan Rieke Gliederung Motivation Architektur von Eclipse Quelltext-Repräsentation in Eclipse Java-Modell Java DOM/AST Zusätzliche Konzepte
MehrMatthias Küspert software engineering
Matthias Küspert software engineering Aliceplatz 3 63065 Offenbach +49 (0) 173 537 4207 matthias@kuespert-web.de www.kuespert-web.de Profil Software Ingenieur seit 1988. Fachliche Schwerpunkte Aufbau und
MehrRefaktorisierung des Eclipse- Plugins Saros für die Portierung auf andere IDEs. Verteidigung der Bachelorarbeit von Arndt Tigges
Refaktorisierung des Eclipse- Plugins Saros für die Portierung auf andere IDEs Verteidigung der Bachelorarbeit von Arndt Tigges Überblick Einleitung Saros Refaktorisierung Durchführung Analysen Anwendung
MehrModellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick. 7. Februar 2013
Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick 7. Februar 2013 Überblick Zusammenfassung: Generell: Konzepte der Softwaretechnik im Kontext der modellgetriebenen Entwicklung Diskussion
MehrLanglebige Softwarearchitekturen - technische Schulden beherrschen und abbauen
Langlebige Softwarearchitekturen - technische Schulden beherrschen und abbauen Dr. Carola Lilienthal, cl@wps.de, @cairolali www.wps.de //// Hans-Henny-Jahnn-Weg 29 //// 22085 HAMBURG 1 Business-Software
MehrDie OSGi Service Plattform
Die OSGi Service Plattform Seminarvortrag Bernhard Cleven Gliederung 1 Einleitung 2 Das Framework 3 Bundles 4 Services 5 Beispiel 6 Fazit Seite 1/ 17 Einleitung Warum OSGi? Durch Modularisierung flexible
MehrGenerischer Modellvergleich mit EMF Compare
Fakultät Informatik Hauptseminar Technische Informationssysteme SS2010 Generischer Modellvergleich mit EMF Betreuer: Dipl.-Inf. Uwe Ryssel Dresden, 16.07.2010 Gliederung 1. Motivation 2. Eclipse Modeling
MehrSpring & OSGi: Plattform der Zukunft. Bernd Kolb (Kolbware) Martin Lippert (akquinet agile GmbH) Gerd Wütherich (comdirect bank AG)
Spring & OSGi: Plattform der Zukunft Bernd Kolb (Kolbware) Martin Lippert (akquinet agile GmbH) Gerd Wütherich (comdirect bank AG) 0 Inhalt Warum Spring & OSGi? Die Grundidee Der Stand der Dinge Ein praktisches
MehrMichael C. Feathers. Legacy Code. Effektives Arbeiten mit. Refactoring und Testen bestehender Software
Michael C. Feathers Effektives Arbeiten mit Legacy Code Refactoring und Testen bestehender Software Vorwort................................................... 13 Geleitwort.................................................
MehrIndigo vs. Juno. Was ist neu für Eclipse 4.x RCP Entwickler? Hauptseminar 2012
Fakultät Informatik, Institut für Angewandte Informatik, Professur für Technische Informationssysteme Indigo vs. Juno Was ist neu für Eclipse 4.x RCP Entwickler? Hauptseminar 2012 Thomas Pischulski (Thomas.Pischulski@mailbox.zih.tu-dresden.de)
MehrDesign Patterns. 3. Juni 2015
Design Patterns 3. Juni 2015 Überblick Was sind Design Patterns? Welche Design Patterns gibt es? Wann sollte man Design Patterns einsetzen? Taentzer Softwarequalität 2015 138 Was sind Design Patterns?
MehrMotivation Grundlagen Technologien Manipulation Ecore Genmodell Demo Persistenz Notification Ausblick GMF Fazit / Quellen
Motivation Grundlagen Technologien Manipulation Ecore Genmodell Demo Persistenz Notification Ausblick GMF Fazit / Quellen Soll ich Modellieren oder Programmieren? sowohl als auch!!! Produktivitäts-Steigerung
MehrEinführung in das Eclipse Modeling Framework (EMF)
1 / 14 Einführung in das Eclipse Modeling Framework (EMF) Timo Kehrer Fachgruppe Praktische Informatik FB 12, Elektrotechnik und Informatik Universität Siegen 04. November 2008 Was ist EMF? Eclipse Modeling
MehrIT-Projekt-Management
IT-Projekt-Management email: av@dr-vuong.de http: www.dr-vuong.de 2005-2015 by, Bielefeld Seite 1 IT-Projekte: Entwicklungsprozesse -1 - Planen Projektsteuerung, Budgetüberwachung (Controlling) Anforderungs-,
MehrSoftware Entwicklung 1
Software Entwicklung 1 Annette Bieniusa AG Softech FB Informatik TU Kaiserslautern Klassenattribute und -methoden Bieniusa Software Entwicklung 1 2/ 23 Beispiel: Klassenattribute I class Uebungsgruppe
MehrModularisierung in Java: Pakete Software Entwicklung 1
Modularisierung in Java: Pakete Software Entwicklung 1 Annette Bieniusa, Mathias Weber, Peter Zeller Um zusammengehörende Klassen, Interfaces, etc. gemeinsam zu verwalten, Sichtbarkeiten einzugrenzen und
MehrDesign Patterns. (Software-Architektur) Prof. Dr. Oliver Braun. Letzte Änderung: :12. Design Patterns 1/26
Design Patterns (Software-Architektur) Prof. Dr. Oliver Braun Letzte Änderung: 11.07.2017 15:12 Design Patterns 1/26 Standardwerk Gang of Four: Erich Gamma, Richard Helm, Ralph Johnson & John Vlissides:
MehrDas Kommunikations-Problem Architekten, Entwickler und die Code-Basis Zusammenfassung
Das Kommunikations-Problem Architekten, Entwickler und die Code-Basis Zusammenfassung Miteinander, Nebeneinander, Durcheinander Kommunikation und Koordination in Softwareprojekten Kommunikation Übertragung
MehrSoftware-Engineering im Sommersemester 2014
Methodische Grundlagen des Software-Engineering SS 2014 Vorlesung Methodische Grundlagen des Software-Engineering im Sommersemester 2014 Prof. Dr. Jan Jürjens TU Dortmund, Fakultät Informatik, Lehrstuhl
MehrSpring und Eclipse Equinox kombiniert. Martin Lippert (it-agile GmbH) Gerd Wütherich (comdirect bank AG)
Spring und Eclipse Equinox kombiniert Martin Lippert (it-agile GmbH) Gerd Wütherich (comdirect bank AG) Inhalt Eclipse Equinox Server-Side Eclipse Spring und Eclipse Equinox Beispiele Fazit 1 Eclipse everywhere
MehrModell zur Einflussanalyse Ein Modell zur Einflussanalyse von Methodenänderungen in Entwicklungsprozessen
Modell zur Einflussanalyse Ein Modell zur Einflussanalyse von Methodenänderungen in Entwicklungsprozessen Roland Koppe, Stefan Häusler, Axel Hahn 2 Übersicht Einleitung und Motivation Ansatz und Methodik
MehrCoding-Standards und Dokumentation
Coding-Standards und Dokumentation SEP 2018 Tobias Lingelmann 2018-04-17 DBS Wissenschaftliche Betreuer: Daniel Kaltenthaler, Johannes Lohrer Verantwortlicher Professor: Prof. Dr. Peer Kröger Übersicht
MehrFactory Patterns und deren Auswirkung auf die Softwarearchitektur in der Praxis
Factory Patterns und deren Auswirkung auf die Softwarearchitektur in der Praxis Klaus Kusche, Juni 2013 Inhalt Was ist das? Warum braucht man das? Was bringt das? Wann hilft es noch? Realistisches Beispiel
MehrEclipse Rieh Client Platform
Heiko Sippel, Jens Bendisposto, Michael Jastram Eclipse Rieh Client Platform Entwicklung von erweiterbaren Anwendungen mit RCP ntwickier.press V E E.l E.2 E.3 E.4 Teil 1 1 1.1 1.2 1.3 1.4 1.5 2 2.1 2.2
MehrSoftwaremodellierung innerhalb eines SAP ABAP Projekts im agilen Umfeld
Softwaremodellierung innerhalb eines SAP ABAP Projekts im agilen Umfeld 1. Die Kosten der Softwareentwicklung Warum es manchmal sinnvoll ist, am Anfang mehr zu tun, als nötig ist. Modellgetrieben Software-Entwicklung
MehrBuild Management Tool
Build Management Tool Build-Prozess? Source Code 3rd Party libraries Veröffentlichung Download all 3rd Party libs by hand Compile your sources: javac -sourcepath./src1;./src2 Byte Code -cp lib1.jar;lib2.jar
MehrCONTINUOUS DELIVERY. codecentric AG
CONTINUOUS DELIVERY AGENDA Einstieg Was ist Continuous Delivery Welche Ziele werden verfolgt? Voraussetzungen Technisch Organisatorisch Kulturell Umsetzung und Einführung 6 Disziplinen der Continuous Delivery
MehrIntegration des Eclipse-Communication-Frameworks in Saros
Konzeptvortrag zur Diplomarbeit: Integration des Eclipse-Communication-Frameworks in Saros von Björn Gustavs Saros Was ist Saros Plug-In für Eclipse zur verteilten Paar Programmierung (Distributed Pair
MehrAnt + Ivy Building with dependencies
Ant + Ivy Building with dependencies Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim Björn Feustel Version: 1.0 www.oio.de info@oio.de Java, XML und Open Source seit 1998 ) Software Factory
MehrSOLID Verstehen und Anwenden
1 SOLID Verstehen und Anwenden Simon Wagner, Kristin Utech, Sabine Neubauer (andrena objects ag) 2 Ablauf & Organisatorisches 1. Setup 2. Vorstellung und Diskussion der SOLID-Prinzipien 3. Programmieren
MehrDependency Injection in der Praxis: Spring, PicoContainer und Eclipse im Vergleich
Dependency Injection in der Praxis: Spring, PicoContainer und Eclipse im Vergleich Dipl.-Informatiker Martin Lippert Senior IT-Berater martin.lippert@it-agile.de http://www.it-agile.de/ Überblick Motivation
MehrFWP Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen. Sommersemester Michael Theis, Lehrbeauftragter 1
FWP Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen Sommersemester 2017 2017 Michael Theis, Lehrbeauftragter 1 2 Servlet API Websockets JSF JAX-WS JAX-RS JMS JAXB JSON-P JEE Enterprise
MehrLehrplan: Architektur und Design. paluno
Lehrplan: Architektur und Design Gliederung 1 Grundlagen der industriellen So9ware Entwicklung 2 Ebenen von Architektur und Design 3 KernakAvitäten von So9ware- Architekten 4 Architekturtypologien von
MehrImplementierung einer Unterstützung von Versionsverwaltung in einem Plug-In für verteilte Paarprogrammierung
Verteidigung Bachelorarbeit, Versionsverwaltung Paarprogrammierung Christian Zygmunt, Jeschke Software Engineering, Institut für Informatik 21.03.2019 Implementierung einer Unterstützung von Versionsverwaltung
MehrReferat. Continuous Integration. mit Maven und Jenkins. Benjamin Keeser. Hochschule für angewandte Wissenschaften München FB 07 Informatik (Master)
# Entwicklung verteilter Java Anwendungen # Referat Continuous Integration mit Maven und Jenkins Benjamin Keeser Hochschule für angewandte Wissenschaften München FB 07 Informatik (Master) 2 Ablauf... Continuous
Mehr1.4! Einführung. Systemmodellierung. Methoden und Werkzeuge
Einführung. Vorbemerkungen und Überblick. Die elektronischen e des Fahrzeugs. Prozesse in der Fahrzeugentwicklung im Überblick,.4 Grundlagen. Steuerungs- und regelungstechnische e (Prof. Schumacher). Diskrete
MehrRefactoring von Legacy Systemen. Jochen Winzen jochen.winzen@andrena.de andrena objects ag
Refactoring von Legacy Systemen Jochen Winzen jochen.winzen@andrena.de andrena objects ag Was ist ein Legacy System Ein Legacy System hat folgenden Eigenschaften: + Besitzt die geforderte Funktionalität
MehrEinführung in das Eclipse Modeling Framework (EMF)
1 / 14 Einführung in das Eclipse Modeling Framework (EMF) Maik Schmidt Fachgruppe Praktische Informatik FB 12, Elektrotechnik und Informatik Universität Siegen 21. April 2009 Was ist EMF? Eclipse Modeling
MehrQualitätsmanagement im Projekt
Software-Engineering Qualitätsmanagement im Projekt Vorlesung im Wintersemester 2008/2009 Fakultät Wirtschaftsinformatik Klaus Mairon, M.Sc. Inhalte Messen und Bewerten: Metriken in der Qualitätssicherung
MehrEin Design Tool für objektorientierte portable Programmierschnittstellen
Diplomarbeit Ein Design Tool für objektorientierte portable Programmierschnittstellen Vortragender: Elias Volanakis Inhalt 1. Entwurfsmuster 2. Wrapper Facade (WF) Aufgaben & Struktur Implementierung Nutzen
MehrSpring Dynamic Modules for OSGi Service Platforms
Gerd Wütherich freiberuflicher Softwarearchitekt Spring Dynamic Modules for OSGi Service Platforms Server Anwendungen mit Spring und Eclipse Equinox Agenda OSGi Technologie: OSGi Technologie im Überblick
Mehr