Schichtenarchitekturen und ihre Auswirkungen auf die objektorientierte Modellierung

Ähnliche Dokumente
Techniker Krankenkasse, Hamburg: 10 Jahre produktives Java Enterprise

TKeasy - 10 Jahre produktives Java Enterprise in Hamburg. Arbeitskreis Objekttechnologie, , Hamburg Ralf Degner, Techniker Krankenkasse

Java Enterprise Architekturen Willkommen in der Realität

TKeasy. Die Anwendungsarchitektur der Techniker Krankenkasse. ACM/GI Regionalgruppe Hamburg, Ralf Degner, Frank Griffel

TKeasy: Die unternehmensweite Java-Enterprise- Architektur der Techniker Krankenkasse

JDO Java Data Objects

Enterprise JavaBeans Überblick

Entwicklung von Web-Anwendungen auf JAVA EE Basis

Softwareentwicklung mit Enterprise JAVA Beans

Komponentenorientierte Software-Entwicklung. Seite 1 / 42

TEIL I: OBJEKTORIENTIERUNG UND GRUNDKURS JAVA GRUNDLAGEN DER PROGRAMMIERUNG... 4

Model-View-Controller

Frank Schlüter, Techniker Krankenkasse Gerd Wütherich, Freiberuflicher Softwarearchitekt. Enterprise OSGi im wahren Leben: ein Migrationsbericht

GWI Research. Gesellschaft für Wirtschaftsberatung und Informatik

Java Beans Enterprise Java Beans. Eine kurze Einführung in die Welt der Bohnen

Service-Orientierte InterSystems GmbH 2009

OWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes

Webservices. 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung. Hauptseminar Internet Dienste

Design im Softwareentwicklungsprozess. Stand der Dinge & Designziel. fachliche & technische Architektur. generelles Vorgehen bei Grob-Design

Smartphone Entwicklung mit Android und Java

Rolf Behrens (B.Sc.) FH Osnabrück

Business Applika-onen schnell entwickeln JVx Framework - Live!

Analyse und praktischer Vergleich von neuen Access- Layer-Technologien in modernen Webanwendungen unter Java. Oliver Kalz

Existierende Systeme I Bibliotheken & Frameworks

Java 2, Enterprise Edition Einführung und Überblick

Aufgabenblatt 3 - Designbeschreibung

Ausgemustert? Der Einfluss von EJB 3.0 auf J2EE Design Patterns. Java Forum Stuttgart, 5. Juli 2007 Stefan M. Heldt

Inhaltsverzeichnis. Zusammenfassung Wydler

Transaktionsmonitore und Applikationsserver

Kapitel 5: Das Design

Service Virtualisierung

Business Objekte. Der Schlüssel für Applikationen mit Zukunft TMN Systemberatung GmbH Folie 1

Architekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller

6. Design-Phase Software Engineering (FB EIT) Wintersemester 2007 / 2008 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik

Architekturen. DB-Anwendungen: Aufgaben. Aufteilung der Funktionen. ƒ Datenbankanwendungen

Übungen zur Softwaretechnik

Web Services. XML, WSDL, SOAP und UDDI Einblicke und Ausblicke J.M.Joller 1

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de

Client/Server-Systeme

Autorisierung. Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente

FH LU JEE Vorlesung SS Ralf Gitzel

Smart Client Plattform

Evaluation of Java Messaging Middleware as a Platform for Software Agent Communication

VISkompakt. Inside. Referent. ! Name: Alexander Wedekind! Funktion: Consultant! Firma: PDV-Systeme Erfurt! Kontakt: Alexander.Wedekind@pdv.

ORACLE Business Components for Java (BC4J) Marco Grawunder

NOKIS Stand des Projekts

Jakarta Turbine Ein Open Source Framework fÿr Webanwendungen. KNF Kongre 2001 Henning P. Schmiedehausen

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 17: 3-Schichten-Architektur 2

Komponentenbasierte Softwareentwicklung mit PHP. Oliver Schlicht - bitexpert

C O C O O N. Wo ist Cocoon in die Apache Projekte einzureihen?

Bericht über ein Technologieprojekt der Barmenia Versicherungen und Object Technology Practice, IBM

HL-Monitoring Module

Development auf der Plattform SAP HANA

Herzlich Willkommen! eine praxisnahe Übersicht. Mit Java ins Web - mb@bebox.franken.de (c) Michael Behrendt -

Der SBB Online-Ticketshop Mit SOA zum Erfolg

Datenmanagement in Android-Apps. 16. Mai 2013

NABUCCO Test Automation Automatisiertes Testen ohne Programmieren

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI

WSO2 Middleware Platform Vorlesungsbegleitendes Praktikum soa

Dataport IT Bildungs- und Beratungszentrum. HTML- Grundlagen und CSS XML Programmierung - Grundlagen PHP Programmierung - Grundlagen...

Technologische Entwicklung von GIS und Internet der letzten Jahre

8.4 Überblick und Vergleich weiterer ERP-Systeme. G Oracle Applications 11 G PeopleSoft 7 G J.D. Edwards One World G BaanERP

Java Einführung Objektorientierte Grundkonzepte

Mission. Vortragender: Dipl. Inform. Reinhard IRSIGLER

Welten verbinden. Visualisierung mit CICS und JAVA. Heinz Peter Maassen Leiter SW Entwicklung. Lothar Stein stv. IT Leiter.

CAIRO if knowledge matters

Technik der SAP-Anbindung Christian Aigner Team Entwicklung, Kranzberg

Java Connectivity mit Caché extreme (Persist & Perform ohne Umwege) Gerd Nachtsheim, Senior Sales Engineer, InterSystems

InQMy Application Server Flexible Softwareinfrastruktur für verteilte Anwendungen

CARSTEN EMRATH. Abschluss Diplom (FH) Fach Angewandte Informatik. Sun Certified Programmer for the Java 2 Platform, Standard Edition 1.

Grid-Systeme. Betrachtung verschiedener Softwareplattformen zur Realisierung von Grids und Vorstellung des Globus Toolkit Grid Systeme 1

Architecture Blueprints

Programmierung von Java- Webanwendungen. paluno

CARL HANSER VERLAG. Erika Horn, Thomas Reinke. Softwarearchitektur und Softwarebauelemente Eine Einführung für Softwarearchitekten

Das Softwaresystem BASEMENT

Masterkurs Verteilte betriebliche Informationssysteme

PITSS.CON Oracle Forms 11g - Lower your IT Costs

VS3 Slide 1. Verteilte Systeme. Vorlesung 3 vom Dr. Sebastian Iwanowski FH Wedel

Vorlesung Methoden des Software Engineering. Martin Wirsing. Einheit B.2,

Wir bringen Ihre Notes/Domino Anwendungen sicher ins Web , Bilster Berg Drive Resort Michael Steinhoff, agentbase AG.

Enterprise Java Beans Einführung

Enterprise Application Integration Erfahrungen aus der Praxis

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server

PL/SQL und Ingres. Der beste Weg, die Zukunft vorauszusagen, ist, sie zu gestalten. John Naisbitt (*1930), amerik. Prognostiker

Qualitätsaspekte des Software Designs am Beispiel Traffic Tower

Einführung in z/os und OS/390

Mufid Sulaiman

inext Dashboard System i Daten auf Windows und mobilen Geräten ML-Software GmbH

Metadata Service Respository (MDS) - Sehen, lernen, verstehen!

Robert Seibt. Jahrgang: System- und Anwendungsentwicklung im OO- Bereich (OOA, OOD, UML, C++, Java) Schwerpunkt:

ERP System CATUNO.pro

Informationsmanagement in verteilten logistischen Systemen. Dr. Franz Josef Weiper. Copyright 2003 Qnamic AG

Software & Schnittstellen (1/28)

Der Java Server beinhaltet Container für EJB, Servlet und JSP, darüber hinaus unterstützt er diejee 1.3 Version.

BI Publisher Berichtswesen einfach und sicher. Alexander Klauss Centric IT Solutions GmbH

Erste Erfahrungen mit NSASJ anhand der OmnivoBase Portierung. September 2013

VISkompakt V2. Internals. Referent. 1M05 Internals von VISkompakt 15:00 Uhr 16:00 Uhr. Entwicklungsleiter von VISkompakt. PDV-Systeme Erfurt

Last- und Stresstest mit the Grinder 3

Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Stabilisierung von J2EE-Anwendungen durch APM

Transkript:

TKeasy Schichtenarchitekturen und ihre Auswirkungen auf die objektorientierte Modellierung Software Engineering 2007, 27.-30.3.2007, Hamburg Ralf Degner, Frank Griffel

Überblick Das Projekt TKeasy Technische Schichten und ihr Probleme Logische Schichten Trennung der Verantworlichkeiten Schichten als Abstraktionen Objektorientierung ermöglichen 2 2007 Techniker Krankenkasse

Das Projekt - TKeasy Java basiertes unternehmensweites EDV-System Einheitliches Framework für alle Anwendungen des Unternehmens Eigenentwicklung von Application-Server und Persistenz-Dienst Auf SWING basierende GUI-Framework Einbindung der Altsysteme über Objektmapping und Services Ziel: durchgängiger Einsatz von OO-Methoden und Technologien TKeasy in Zahlen (ca. pro Tag): Über 7000 parallele Clients 1 Millionen Anwendungen 150 Millionen erzeugte Geschäftsobjekte 2 Milliarden Methodenzugriffe 15 Millionen Großrechnertransaktionen (DB-System) 3 2007 Techniker Krankenkasse

Technische Schichten (I) Ausrichtung von Schichten an technischen Grenzen => jede Schicht auf eigenem System Beispiel: Geschäftsobjekt Kunde Methoden des Kunden: getname() getadresse() getgeburtsdatum()... Client Geschäftsobjekte Datenbank CORBA/RMI/... JDBC/... Darstellung des Kunden erfordert viele Methodenzugriffe auf den Kunden. 4 2007 Techniker Krankenkasse

Technische Schichten (II) Schlechte Performance durch viele feine Zugriffe auf Geschäftsobjekte (BOs) Lösungsansatz: weniger Zugriffe durch andere Schneidung der Methoden, z.b. getstammdaten() Folgen: Methode an Bedürfnissen eines Nutzers ausgerichtet Unterschiedliche Klienten führen zu unterschiedlichen Methoden Objekt konzentriert sich damit nicht auf sein Geschäft Keine klare Trennung der Verantwortlichkeiten der Schichten Feingranulare Modellierung eingeschränkt 5 2007 Techniker Krankenkasse

Logische Schichten Boundary BOs - Persistenz Clients SWING WAN (SOA-) Messages Browser WAN aktiv Boundary GUI- Message- JSP-... Boundary Boundary Engine Geschäftslogik Buisness Objects Controller (transient) Entities (persistent) passiv Datenbanken Persistenz DB2 LAN IMS 6 2007 Techniker Krankenkasse

Logische Schichten Client hat Adapter (Boundary) in der VM der Geschäftsobjekte Feingranulare Zugriffe von Boundary auf BOs ohne Einschränkung Boundary nutzt BOs und beliefert Client nach dessen konkreten Bedürfnissen Boundary gehört logisch zur Schicht Präsentation => Bedürfnisse des Clients optimal unterstützt ohne dadurch BO- Design zu beeinflussen => Klare Trennung der Verantwortlichkeiten zwischen Geschäftslogik und Darstellung 7 2007 Techniker Krankenkasse

Trennung der Verantwortlichkeiten Schichten als Abstraktionen Jede Schicht stellt eine Abstraktion von Aufgaben und Verantwortlichkeiten dar. Jede kümmert sich um ihren Kram (und hält sich aus dem der anderen raus) Schichten müssen hierfür undurchlässig sein Fast jedes Projekt plant dies, kaum eines hält es durch. (automatisierte Prüfungen hilfreich) 8 2007 Techniker Krankenkasse

Objektorientierung ermöglichen Schneidung der Schichten hat starken Einfluss auf die Freiheit OO einzusetzen Auch Frameworks für Security, Transaktionshandling und Persistenz beeinflussen OO-Modellierung stark (z.b. Einschränkung durch Laufzeit-Overhead) Wichtige Eigenschaften für vollwertiges OO in großen Systemen: Feingranulare Modellierung Vererbung Exception-Handling Generische Referenzen Geschachtelte Transaktionen auf BOs... 9 2007 Techniker Krankenkasse

Zusammenfassung Wahl der Schichten hat starke Rückwirkung auf die OO- Modellierung Grenzen von logischen Schichten unabhängig von Systemgrenzen Schichten zur klaren Trennung von Verantwortlichkeiten 10 2007 Techniker Krankenkasse

Vielen herzlichen Dank für Ihre Aufmerksamkeit Frank.Griffel@tk-online.de Ralf.Degner@tk-online.de