Entwicklung einer Web Applikation zur Clusteranalyse von Microarray Daten

Größe: px
Ab Seite anzeigen:

Download "Entwicklung einer Web Applikation zur Clusteranalyse von Microarray Daten"

Transkript

1 Johannes Rainer Entwicklung einer Web Applikation zur Clusteranalyse von Microarray Daten Diplomarbeit Institut für Elektro- und Biomedizinische Technik Technische Universität Graz Krenngasse 37, A Graz Vorstand: Univ.-Prof. Dipl.-Ing. Dr.techn. Gert Pfurtscheller Betreuer: Univ.-Prof. Dipl.-Ing. Dr.techn. Zlatko Trajanoski Begutachter: Univ.-Prof. Dipl.-Ing. Dr.techn. Zlatko Trajanoski Graz, September 2003

2 Für Anita Für meine Eltern

3 Abstract Abstract It has been shown that the analysis of microarray data is a very promising approach in experimental molecular biology. Various clustering techniques can be used to analyze gene expression patterns from microarray data at a genomic scale. A web application as an implementation of a web based client server architecture has been developed to analyze data from microarray experiments. The software is based on the Java 2 Enterprise Edition (J2EE) technology from Sun Inc including Java Server Pages (JSP), Servlets, Enterprise Java Beans (EJB) and on the open source framework struts from the apache software foundation. To provide a user interaction with the data and increase the user friendliness JavaScript and image maps have been used. The microarray data can be analyzed with different clustering algorithms including 1) Hierarchical Clustering (HCL), 2) K Means Clustering (KMC), 3) Self Organizing Maps (SOM), 4) Support Vector Machines (SVM), 5) Principal Component Analysis (PCA) and 6) Correspondence Analysis (CA). Various distance measurements can be used to measure the similarity between genes. The platform independent and scalable web application makes it possible to analyze large data sets with most web browser also from low resource workstations without having to install any additional software packages. All user data will be saved on the server so that it can be accessed from everywhere in the network. Therefore the web application is a useful tool to analyze large microarray data also in networks with low hardware resources. Keywords: microarray, cluster analysis, client server, web application, J2EE, bioinformatics i

4 Abstract Kurzfassung Die Microarray Technologie hat sich in den letzen Jahren für die Analyse von Gen Expressionen auf Genom Ebene etabliert. In den Microarraydaten wird nach Genen mit gleichen Expressionsmustern gesucht, da bei diesen von einer ähnlichen Funktion bzw. einer Coregulation ausgegangen wird. Für diese Suche können verschiedene Clusteranalyse Verfahren verwendet werden. Im Rahmen der Diplomarbeit wurde eine Web Applikation basierend auf der Microarray Analyse Suite Genesis als Implementation einer Web basierten Client Server Architektur entwickelt. Die Software basiert auf der Java 2 Enterprise Edition (J2EE) Architektur von Sun Inc und dem open source Framework struts der apache software foundation. Daten aus Microarray Experimenten können mit Hilfe der Web Applikation dargestellt und durch die verschiedenen Clusterverfahren 1) Hierarchical Clustering (HCL), 2) K Means Clustering (KMC), 3) Self Organizing Maps (SOM), 4) Support Vector Machines (SVM), 5) Principal Component Analysis (PCA) und 6) Correspondence Analysis (CA) analysiert werden. Hierbei können für die Ähnlichkeitsmessung der Gene verschiedenste Distanzmessverfahren angewandt werden. Durch die Verwendung einer Image Map und JavaScript wird eine Interaktion des Benutzers mit den dargestellten Bildern und Daten ermöglicht. Mit Hilfe eines Navigationsbaumes wird eine übersichtliche, intuitive und einfache Navigation und Bedienung der Web Applikation ermöglicht. Der große Vorteil der Web Applikation liegt in der Entlastung der Client Rechner, da rechenintensive Analysen durch einen hierfür ausgelegten Server durchgeführt werden. Der Benutzer benötigt nur einen Webbrowser um Microarray Analysen durchführen zu können. Somit wird eine maximale Plattformunabhängigkeit garantiert und es entfällt die Installation eines eigenen Programmes. Die Daten werden zentral abgespeichert wodurch der Benutzer von jedem Rechner aus auf seine Analysen zugreifen kann. Die Web Applikation stellt somit ein hilfreiches Wekzeug zur Analyse von Microarray Daten vor allem in Netzwerken mit beschränkten Hardwareresourcen dar. Schlüsselwörter: Microarray,Clusteranalyse,Client Server,Web Applikation,J2EE, Bioinformatik ii

5 Inhaltsverzeichnis Glossar viii 1 Einleitung Microarrays Aufgabenstellung Methoden Clusteranalyse Hierarchical Clustering Self Organizing Maps K-Means Clustering Principal Component Analysis Correspondence Analysis Support Vector Machines HTML JavaScript Client Server Architektur Vorteile der Client Server Architektur: Java 2 Platform Enterprise Edition ( J2EE ) J2EE Komponenten Container EJB iii

6 INHALTSVERZEICHNIS INHALTSVERZEICHNIS Session Beans Entity Beans Message driven Beans JMS Java Servlets Java Server Pages (JSP) Lebenszyklus einer JSP Jakarta Struts Das Projekt Model View Controller Konzept Struts als Implementation des MVC Konzeptes Controller Komponenten Model Komponenten View Komponenten Usability Test Ergebnisse Vom Programm zur Web Applikation Web Applikation GenesisWeb Benutzerverwaltung Aufbau der Webseite Navigationsbaum Darstellung eines Datensatzes Verschiedene Darstellungsmöglichkeiten Zeichnen der Bilder und Bildformat Analyse der Daten HCL KMC SOM iv

7 INHALTSVERZEICHNIS INHALTSVERZEICHNIS PCA CA SVM Weitere Eigenschaften Normalisierung und Filtern Abfangen von möglichen Fehlern on the fly Komprimierung Usability Test Diskussion Vor- und Nachteile der Web Applikation Erweiterungs- und Verbesserungsvorschläge Literaturverzeichnis 52 v

8 Abbildungsverzeichnis 1.1 Microarray Produktion Multi Tier Modell Kommunikations Modelle JSP Lebenszyklus MVC Konzept Struts Überblick Konzept des Systems GenesisServer GenesisWeb Aufbau der GenesisWeb Webseite Verlauf der Expression eines Genes über die Experimente Webseite zum Verändern der Darstellungsart HCL Analyse Resultat Webseite zur Auswahl der Farbe für die Markierung eines Cluster KMC Analyse Resultat SOM Analyse Resultat Vergleich der Ergebnisse der Clusterverfahren PCA Analyse Resultat Plots der Principal Components CA Analyse Resultat HCL Analyse über die Experimente SVM Training vi

9 ABBILDUNGSVERZEICHNIS ABBILDUNGSVERZEICHNIS 3.15 SVM Klassifikations Ergebnis Webseite zum Sortieren bzw. Filtern vii

10 Glossar axis Apache extensible Interaction System, Framework zur Erstellung von SOAP Clients/Servern. CA Correspondence Analysis, Clusterverfahren mit dessen Hilfe Zusammenhänge zwischen Genexpressionen und Experimenten aufgedeckt werden können. cdna komplementäre DNA, komplementärer Abschnitt der DNA. Codon Folge von 3 Basen der DNA bzw RNA, codiert eine Aminosäure. DNA Desoxyribonukleinsäure. Träger der Erbinformation aller Organismen. Genom Gesamte DNA eines Organismus bzw. einer Zelle. KMC k Means Clustering, Clusterverfahren um Gene ähnlicher Expression zu Gruppen zusammenzufassen. EJB Enterprise Java Bean, wiederverwendbare Softwarekomponenten mit deren Hilfe skalierbare, verteilte Systeme realisiert werden können. HCL Hierarchical Clustering, Cluster Algorithmus mit dessen Hilfe Ähnlichkeiten zwischen Genen als Baumstruktur (dendrogram) dargestellt werden kann. Hybridisierung Prozess bei dem sich Einzelstränge von DNA (oder RNA) an ihr komplementäres Gegenstück binden. viii

11 Glossar JSPs Java Server Pages, Komponenten um dynamische Web Inhalte erzeugen zu können. Markup gibt an, wie Text in einem Dokument zu interpretieren ist. MDB Message Driven Bean, asynchrone EJB. mrna messenger RNA, Vorlage für die Proteinsynthese. PCA Principle Component Analysis, Clusterverfahren bei dem nach gemeinsamen Mustern in den Daten gesucht wird und die Expression jedes Genes als lineare Kombination dieser Muster dargestellt werden kann. ORB Object Request Broker. RMI aufzurufen. Remote Method Invocation, Protokoll um Methoden auf Rechnern in einem Netzwerk RMI/IIOP Remote Method Invocation / Internet Inter ORB Protocol, Erweiterung von RMI das Aufrufe von Methoden unabhängig von der verwendeten Programmiersprache ermöglicht. RNA Ribonukleinsäure. Chemisch ähnlich zu einzelsträngiger DNA. Übermittelt die genetische Information der DNA an das Cytoplasma einer Zelle wo die Proteine gebildet werden. Servlet erzeugen. Serverseitige Java Komponente um dynamische Antworten auf Benutzeranfragen zu SOAP Simple Object Access Protocol, Protokoll, das RMI Aufrufe auch durch Firewalls ermöglicht, da die Daten als XML Datei an ein entsprechendes Servlet im Web Container gesandt werden. ix

12 Glossar SOM Self Organizing Map, Clusterverfahren beruhend auf einem neuronalen Netzwerk um Gene ähnlicher Expression zu Gruppen zusammenzufassen. Struts Framework zur Entwicklung skalierbarer und einfach wartbarer Web Applikationen. SVM Support Vector Machines, Clusterverfahren bei dem unbekannte Gene aufgrund von Genen deren Funktion bekannt ist klassifiziert werden können. Tag siehe Markup. Thread Task, leichtgewichtiger Prozess in dem Code ausgeführt wird. Transkription Übertragung der genetischen Information der DNA auf einzelsträngige mr- NA. Erster Schritt der Proteinbiosynthese. x

13 Kapitel 1 Einleitung 1.1 Microarrays Die Microarray Technologie hat sich in den letzen Jahren für die Analyse von Gen Expressionen auf Genom Ebene etabliert [14]. Microarrays bestehen aus einem Glasplättchen, auf dem cdna Stücke an bestimmten Stellen, den sogenannten Spots, aufgetragen und verankert sind. An diese cdna Stücke binden sich Nukleinsäuresequenzen die das komplementäre Gegenstück zu den gespotteten Sequenzen bilden [31]. Durch die reverse Transkriptase werden von Proben und Kontroll mrna komplementäre cd- NA Stränge gebildet. Diese werden jeweils mit einem fluoreszierenden Farbstoff markiert und auf das Plättchen aufgetragen, wo die einzelnen cdna Stränge jeweils an ihr komplementäres Gegenstück binden (siehe Abbildung 1.1). Nach dieser Hybridisierung wird das Microarray mit Laserlicht bestrahlt und die fluoreszierenden Farbstoffe angeregt. Das von den einzelnen Spots emittierte Licht wird gescannt und die so erhaltenen Daten werden analysiert und in einem speziellen Dateiformat abgespeichert. Als nächster Schritt wird eine Normalisierung der Daten durchgeführt [30]. Ziel der Normalisierung ist es systematische Fehler in den Daten zu erkennen und zu korrigieren, sowie eine 1

14 Einleitung 1.1 Microarrays Abbildung 1.1: Microarray Verfahren. DNA Klone werden auf das Glasplättchen gespottet. Mit fluoreszierenden Farbstoffen markierte Proben und Kontroll-cDNA wird auf das Slide aufgetragen. Nach der Hybridisierung wird das Plättchen mit Laserlicht bestrahlt, gescannt und das resultierende Bild analysiert [16]. Anpassung der Expressionen der verschiedenen Slides durchzuführen um diese untereinander vergleichbar zu machen. Nach diesem Normalisierungsschritt erfolgt eine Analyse mit Hilfe von statistischen Methoden mit deren Hilfe grundsätzliche Zusammenhänge und Ähnlichkeiten in der Expression der einzelnen Gene gesucht werden. Bei dieser sogenannten Clusteranalyse (engl.: Clustering) wird nach gemeinsamen Expressionsmustern in den Daten gesucht und es werden die ähnlich exprimierten Gene in Cluster, also in Gruppen zusammengefasst. Der Grundgedanke hinter dieser Theorie ist, dass viele Gene, die die selbe Funktion haben auch coexprimiert sind. Somit kann angenommen werden, dass ein unbekanntes Gen das gleich exprimiert wird wie ein bekanntes, auch diesselbe Funktion haben könnte [17]. Weiters wird angenommen, dass ein Zusammenhang zwischen Coexpression und Coregulation 2

15 Einleitung 1.1 Microarrays besteht, d.h. wenn zwei Gene durch das selbe regulatorische System kontrolliert werden, so sind sie höchstwahrscheinlich auch coexprimiert. Zudem ist es von Interesse zu wissen, wie die Expression von Genen in unterschiedlichen Zellen, bei unterschiedlichen Krankheiten z.b. bei gesunden Zellen und Krebszellen aussieht. Für die Analyse von Microarray Daten gibt es verschiedene Software Pakete. Die Analyse von Datensätzen aus Microarray Experimenten kann allerdings in Abhängigkeit von der Anzahl der enthaltenen Gene die Computerhardware von Client Computern überfordern. Analysen von Datensätzen mit Genen können auf Rechnern mit 512 MB Arbeitspeicher nicht mehr, oder nur schwerlich, durchgeführt werden. Hierbei ist es vor allem die Analyse mit Hilfe des hierarchischen Clusterverfahrens das sehr viel Arbeitsspeicher benötigt. Ebenso benötigen die verschiedenen Analyseverfahren ein hohes Mass an Rechenleistung. Es liegt somit nahe rechenintensive Berechnungen auf einen entsprechenden Server mit genügend Hardwareressourcen auszulagern [33]. Die Analyse von Microarraydaten auf Genom Ebene mit seinen zehntausenden von Genen pro Datensatz stellt daher ein ideales Einsatzgebiet für Client / Server Systeme dar, und insbesondere für eine Web Applikation. Durch die Verwendung einer Web Applikation im Sinne einer web basierten Thin Client Architektur kann eine Erhöhung der Plattformunabhängigkeit, sowie das Entfallen der Installation eines Programmes auf den Client Rechnern gewährleistet werden. Das hohe Mass an Plattformunabhängigkeit kann durch die Verwendung von purem HTML ohne benötigte Plug Ins in den Web Browsern garantiert werden. Eine Web Applikation stellt auch eine ideale Lösung für Microarray Analysen, zum Beispiel im Rahmen einer Lehrveranstaltung dar, da die Installation eines eigenen Programmes auf den einzelnen Workstations nicht nötig ist; Analysen können von jedem Web Browser aus durchgeführt werden. Weiters ist es dem Benutzer durch eine Web Applikation möglich umfangreiche Berechnungen und Analysen zu starten, ohne dass er bis zum Ende der Berechnung ständig online bleiben muss. Auch kann der Benutzer weitere Programme ausführen, ohne dass intensive Berechnungen deren Ausführung stören. Ein weiterer Vorteil einer Web Applikation liegt darin, dass der Benutzer während seiner Analysen nicht an einen Rechner gebunden ist, sondern von jedem Rechner im Netzwerk auf seine 3

16 Einleitung 1.1 Microarrays Analysen und Daten zugreiffen kann. Weiters ist die Wartung einer Web Applikation, verglichen mit der einer normaler Applikationen, sehr viel einfacher. Bei einer Web Applikation können Updates und Bugfixes zentral am Server eingespielt werden, ohne dass der Benutzer Softwarepakete hierfür installieren muss. 4

17 Einleitung 1.2 Aufgabenstellung 1.2 Aufgabenstellung Es sollte eine Web Applikation entwickelt werden, welche diesselbe Funktionalität aufweist wie das Microarraydaten Analyse Programm Genesis [32]. Datensätze aus Microarray Experimenten sollten in der Web Applikation mit Hilfe verschiedener Clusteranalyse Verfahren analysiert werden können und die Ergebnisse sollten in einer anschauliche Art und Weise dargestellt werden. Anforderungen: Darstellen der Datensätze als Expression Image. Sortieren und Filtern der Datensätze. Einfache Normalisierung der Daten nach verschiedenen Gesichtspunkten. Analyse der Daten und Darstellung der Ergebnisse der Clusterverfahren: Hierarchical Clustering (HCL) K Means Clustering (KMC) Principal Component Analysis (PCA) Correspondence Analysis (CA) Self Organizing Maps (SOM) Support Vector Machines (SVM) Verwendbarkeit der Web Applikation möglichst ohne spezielle Plug Ins in den verschiedenen Web Browsern. Die Web Applikation sollte intuitiv gestaltet werden und eine Interaktion des Benutzers mit den Daten ermöglichen. 5

18 Kapitel 2 Methoden Dieses Kapitel gibt einen kurzen Überblick über die verschienden Clusterverfahren, mit denen Microarray Daten in der entwickelten Web Applikation analysiert werden können. Weiters wird auf die verwendeten programmiertechnischen Technologien eingegangen, beginnend mit den clientseitigen Technologien wie HTML und JavaScript über die Client / Server Technologie zu den serverseitigen Komponenten wie Enterprise Java Beans, Servlets, Java Server Pages und dem Framework Struts. Am Ende des Kapitels wird noch kurz auf Web Usability Tests eingegangen. 2.1 Clusteranalyse Die Clusteranalyse von Microarray Daten ist eine Methode, bei der eine Einteilung der Gene bzw. Experimente nach der Ähnlichkeit ihrer Expression in Gruppen, den sogenannten Clustern, erfolgt. Das Ziel ist es hierbei Gruppen zu bilden, die untereinander möglichst unterschiedlich sind, das heisst eine möglichst große Distanz zueinander aufweisen, deren einzelne Komponenten aber möglichst ähnlich sind und eine geringe Distanz zueinander aufweisen [30] [13]. Grundsätzlich sind zwei Arten des Clusteranalyse möglich, das sogenannte supervised Clustering, bei dem auf bekanntes Wissen zurückgegriffen wird, und das unsupervised Clustering [32]. Die folgenden Angaben zu den verschiedenen Clusteranalyse Verfahren geben nur einen 6

19 Methoden 2.1 Clusteranalyse kurzen Einblick in die Thematik, eingehender werden die Clusteralgorithmen in der Diplomarbeit von Alexander Sturn [32] behandelt Hierarchical Clustering Zu den unsupervised Clustering Methoden gehört das hierarchical Clustering. Der Ablauf des hierarchical Clustering umfasst folgende Schritte: 1) Als erster Schritt wird eine Distanzmatrix abhängig von der Ähnlichkeit der Objekte, also der Gene bzw. Experimente, berechnet. Im ersten Durchlauf besteht jeder Cluster aus einem Gen bzw. Experiment. 2) Im nächsten Schritt werden die zwei Cluster mit der kleinsten Distanz zueinander gesucht. 3) Diese beiden werden zu einem neuen Cluster zusammengefügt und es werden alle Distanzen die von diesem Cluster abhängen neu berechnet. 4) Im weiteren werden die Schritte 2 und 3 so lange wiederholt, bis nur mehr ein Cluster übrig bleibt. Das Ergebnis wird als eine hierarchische Baumstruktur dargestellt, bei der die Länge der einzelnen Äste die Ähnlichkeit, also die Nähe der Elemente zueinander darstellt. Der Vorteil dieses Verfahrens ist, dass kein Vorwissen über die Gene oder spezielle Einstellungen notwendig sind. Von Nachteil ist, dass der Benutzer selbst die Cluster identifizieren und markieren muss und dass aufgrund der sehr großen Distanzmatrix, die während der Berechnung erstellt wird, der Arbeitsspeicherbedarf der Berechnung sehr groß ist Self Organizing Maps Das neuronale Netzwerk Modell der Self Organizing Maps wurde von Professor Kohonen an der Universität Helsinki entwickelt und ist eine populäre Methode der Clusteranalyse, bei der das Training des neuronalen Netzwerkes allein auf den gegebenen Daten beruht. 7

20 Methoden 2.1 Clusteranalyse Eine SOM besteht aus Neuronen, die in einem meist 2 dimensionalen Gitter angeordnet sind. Die Anzahl der Neurone gibt dabei die Anzahl der Cluster wieder. Jedes Neuron wird durch einen n dimensionalen Gewichtsvektor repräsentiert, wobei n gleich der Dimension der Eingabevektoren, also der Anzahl der Experimente, ist. Vor dem Training erfolgt die Initialisierung der SOM. Hierbei werden die Gewichtsvektoren der Cluster gebildet, die entweder mit Zufallswerten gefüllt werden, oder aber mit zufällig ausgewählten Genen des Datensatzes. In jedem der folgenden Trainingsschritte wird jeweils ein Vektor, also eine Zeile der Datenmatrix zufällig ausgewählt und eine Ähnlichkeitsmessung mit allen Gewichtvektoren durchgeführt. Der Gewichtsvektor mit der höchsten Ähnlichkeit wird bestimmt und zusammen mit seinen Nachbarn in Richtung des Eingabevektors projiziert. Dies wird solange wiederholt bis die Cluster optimal getrennt sind. Nach dem Training der SOM erfolgt die Zuweisung der Gene zu den einzelnen Clustern, jeweils in Abhängigkeit von der Ähnlichkeit der Expression des Genes mit dem Gewichtsvektor des jeweiligen Clusters K-Means Clustering KMC [25] ist den Self Organizing Maps sehr ähnlich und zählt ebenso zu den unsupervised Clustering Methoden. Der Grundgedanke besteht darin, dass ein Satz von m Vektoren der Dimension n in k Cluster zerteilt werden soll, wobei die Anzahl der Cluster vor der Berechnung angegeben werden muss. Vorgangsweise: 1) Jeder Vektor wird in einen der k Cluster gelegt. 2) Der Mittelwert für jeden Cluster wird berechnet. 3) Die Distanzen zwischen einem Objekt und den Mittelwerten der Cluster werden berechnet. 4) Das Objekt wird dem Cluster zugeteilt dessen Mittelwert ihm am ähnlichsten ist. 5) Die Mittelwerte der betroffenen Cluster werden neu berechnet. 6) Die Schritte 3 bis 5 werden solange wiederholt, bis keine Reallokationen mehr vorkommen. 8

21 Methoden 2.1 Clusteranalyse Der Vorteil des KMC Verfahrens liegt vor allem in seiner Geschwindigkeit bei der Analyse grosser Datensätze. Ebenso ist der Arbeitsspeicherbedarf gering. Der grösste Nachteil des Verfahrens liegt darin, dass die Anzahl der Cluster bereits vor dem Beginn der Berechnung abgeschätzt werden muss (gleich wie bei SOM) Principal Component Analysis PCA [27] ist eine statistische Methode dessen Ziel es ist, die Dimension einer Datenmatrix mit m Spalten (z.b. Experimenten) und n Zeilen (z.b. Genen) zu reduzieren, indem r n (oder m) neue Variablen (den Principal Components) gefunden werden. Mit Hilfe dieser Principal Components ist es nun möglich die Daten zu visualisieren. Um die Principal Components zu bestimmen, werden die Eigenwerte und Eigenvektoren der m m Distanzmatrix der Eingabematrix bestehend aus n Genen und m Experimenten mit Hilfe der Single Value Decomposition (SVD) [11] berechnet. Diese Eigenvektoren können nun (vorausgesetzt die Distanzmatrix ist nicht singulär) als Principal Components (PC) angenommen werden. Bei der graphischen Darstellung werden die ersten 3 PC, welche auch die grössten Eigenwerte besitzen, auf ein 3 dimensionales Koordinatensystem aufgetragen. Die x Achse entspricht der PC 1, die y Achse der PC 2 und die z Achse der PC 3. Die Expression eines Genes kann durch eine Linearkombination aus den PC eindeutig beschrieben werden. Somit werden die Gene in dieses Koordinatensystem eingezeichnet. Gene, die im 3 dimensionalen Raum einen geringen Abstand zueinander aufweisen, sind auch ähnlich in ihrer Expression. Das PCA Verfahren kann somit dafür verwendet werden, grundlegende Muster in der Expression der Gene (bzw. auch Experimente) eines Datensatzes zu finden und die Daten durch eine Kombination dieser zu visualisieren. 9

22 Methoden 2.1 Clusteranalyse Correspondence Analysis CA [21] [20] beruht auf dem selben Grundprinzip wie PCA. Es wird eine mehrdimensionale Datenmatrix in einen 2 oder 3 dimensionalen Raum projiziert. Um die Parameter mit dem grössten Einfluss auf die 2 Variablen (Gene & Experimente) zu finden, wird wie bei PCA die Single Value Decomposition (SVD) verwendet, jedoch ist es mit Hilfe der CA möglich, direkt die Zusammenhänge zwischen Genen und Experimenten zu erkennen, nicht nur zwischen den Genen bzw. den Experimenten. Hierzu werden sowohl die Gene als auch die Experimente in einem sogenannten Biplot im selben Koordinatensystem eingezeichnet. Die Distanzen im Biplot sind sogenannte X 2 Distanzen. Eine X 2 Distanz zwischen zwei Punkten ist klein, wenn die Vektoren die die Punkte beschreiben einen ähnliche Form haben, unabhängig von ihren absoluten Werten. Besteht nun ein Zusammenhang zwischen einem Gen und einem Experiment (bzw. einer Gruppe von Experimenten), so neigen beide dazu auf einer gemeinsamen Linie durch den Koordinatenursprung zu liegen. Ist ein Gen in einem bestimmten Experiment überexprimiert, so liegen die beiden Punkte auf der selben Seite des Koordinatensystems, ist es unterexprimiert so liegen das Gen und das Experiment auf gegenüberliegenden Seiten im Koordinatensystem. Je weiter die Punkte vom Koordinatenursprung entfernt sind, desto stärker ist ihr Zusammenhang Support Vector Machines Das SVM [22] Clusterverfahren ist ein Vertreter der supervised clustering methods. Bei den supervised clustering methods findet der Lernprozess des Netzwerkes anhand von gegebenem Wissen statt. Angenommen es sind Gene bekannt, die eine bestimmte Funktion erfüllen, und ebenso Gene, die mit Sicherheit nicht zu dieser funktionellen Gruppe gehören. Die Information über diese Gene wird dazu verwendet eine SVM zu trainieren. Durch dieses Training ist die SVM in der Lage, Gene mit unbekannter Funktion einer der beiden Gruppen zuzuordnen. Beim Training versucht die SVM eine Ebene, die sogenannte Hyperplane, zu finden, die die Gene im mehrdimensionalen Raum (die Expression eines Genes kann als Punkt in einem mehr- 10

23 Methoden 2.1 Clusteranalyse dimensionalen Raum verstanden werden, die Anzahl der Experimente bestimmt hierbei die Dimension dieses Raumes) eindeutig in die zwei Klassen unterteilt. Da allerdings meist keine eindeutige Trennung der positiven und negativen Trainingsgene in diesem Raum möglich ist, transformiert die SVM die Genexpressionen auf einen höherdimensionalen Raum, in dem dann eine Hyperplane gefunden werden kann. Das SVM Verfahren ist sehr hilfreich, wenn nur ein Teil der Gene in einem Organismus einer Funktion zugeordnet sind. Diese Information kann dazu verwendet werden, noch in ihrer Funktion unbekannte Gene zu klassifizieren. 11

24 Methoden 2.2 HTML 2.2 HTML HTML (Hypertext Markup Language) ist eine standardisierte Seitenbeschreibungssprache für Seiten im Internet bzw. Intranet. Entwickelt wurde HTML 1990 von Tim Berners-Lee, einem britischen Informatiker am Genfer Hochenergieforschungszentrum CERN, der einige Tags des SGML (Standardized Generalized Markup Language) das am CERN verwendet wurde, verwendete und die Möglichkeit Bilder und Hyperlinks einzubinden hinzufügte. Anfänglich war HTML eine reine Dokumentenbeschreibungssprache, wurde allerdings im Laufe der Zeit mangels Alternativen zu einer Sprache die ebenfalls das Layout der Seiten bestimmte. HTML wurde von Microsoft und Netscape ohne Koordination verwässert und erweitert, was allerdings zu Browserinkompatibilitäten führte. Um diesen Trend entgegenzuwirken wurden vom W3 Konsortium (www.w3.org) Standards eingeführt und es wurde versucht, eine Einheitliche Version von HTML zu definieren. Dies ist teilweise gelungen, wobei es allerdings bis heute notwendig ist gewisse Eigenschaften von HTML Seiten an den jeweiligen Browser anzupassen. Eine Trennung von Layout und Information ist mit HTML schwer geworden, aber dank CSS (Cascading Style Sheets) nicht unmöglich. 2.3 JavaScript JavaSkript ist eine einfache Skript Sprache die es ermöglicht, einfache Funktionen innerhalb eines Web Browsers, und somit am Client Rechner, auszuführen. Entwickelt wurde JavaScript im Rahmen eines Gemeinschaftsprojektes von SUN und Netscape. Rein technisch gesehen hat JavaScript ausser dem Namen nicht viel mit der Programmiersprache Java gemeinsam. Der Grund für die Entwicklung dieser Skript Sprache war, dass man HTML Seiten optimieren und interaktiver gestalten wollte. Mit JavaScript ist es zum Beispiel möglich eine gewisse Interaktion des an sich statischen HTML Dokuments mit dem Benutzer zu gewährleisten. Als Beispiel kann hier ein Mouseovereffekt herangezogen werden, d.h. dass zum Beispiel in der Sta- 12

25 Methoden 2.4 Client Server Architektur tus Leiste des Web Browsers eine Information zu einem Bereich eines Bildes angezeigt wird, sobald der Benutzer sich mit der Maus über der betreffenden Stelle im Bild befindet. Neben den Vorteilen wie Plattformunabhängigkeit und Sicherheit sollte allerdings auch erwähnt werden, dass JavaScript relativ langsam ist, und es wiederum von den Browserherstellern abhängt, wie diese JavaScript in ihren Browser integrieren. So sind zum Beispiel Funktionen die unter dem Open Source Browser Mozilla einwandfrei funktionieren teilweise im Internet Explorer von Microsoft nicht lauffähig. 2.4 Client Server Architektur Die Client / Server Architektur entstand zu einer Zeit, als die Hardware sehr teuer, und die Kapazität und Geschwindigkeit lokaler Rechner beschränkt war [12]. Das klassische Modell der Client Server Architektur ist das Two Tier Modell (Tier = Schicht), bei dem der Client die sogenannte Business Logic enthält und der Server hauptsächlich für die Datenverarbeitung und Speicherung zuständig ist. Unter dem Begriff Business Logic wird die gesamte Funktionalität einer Applikation verstanden. Dieses Modell wurde durch das Three Tier Modell abgelöst [28], das auch z.b. in der Java 2 Enterprise Edition (J2EE) verwendet wird. Das Three Tier Modell besteht aus dem Client Tier, dem Middle Tier und dem EIS Tier (Enterprise Information System). Das Client Tier stellt die Schnittstelle zwischen dem Benutzer und der Applikation dar. Das Middle Tier hat die Aufgabe die Anfragen des Benutzers auszuführen und das EIS Tier ist für das sichere Speichern und Halten der Daten zuständig Vorteile der Client Server Architektur: Entlastung der Client Rechner: rechenintensive oder speicheraufwändige Anwendungslogik wird auf einem zentralen Server ausgeführt. Der Benutzer kann zudem auf seinem Rechner weitere Programme ausführen ohne dass aufwändige Berechnungen deren 13

Softwareentwicklung mit Enterprise JAVA Beans

Softwareentwicklung mit Enterprise JAVA Beans Softwareentwicklung mit Enterprise JAVA Beans Java Enterprise Edition - Überblick Was ist J2EE Java EE? Zunächst mal: Eine Menge von Spezifikationen und Regeln. April 1997: SUN initiiert die Entwicklung

Mehr

Entwicklung von Web-Anwendungen auf JAVA EE Basis

Entwicklung von Web-Anwendungen auf JAVA EE Basis Entwicklung von Web-Anwendungen auf JAVA EE Basis Java Enterprise Edition - Überblick Prof. Dr. Bernhard Schiefer Inhalt der Veranstaltung Überblick Java EE JDBC, JPA, JNDI Servlets, Java Server Pages

Mehr

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

Dataport IT Bildungs- und Beratungszentrum. HTML- Grundlagen und CSS... 2. XML Programmierung - Grundlagen... 3. PHP Programmierung - Grundlagen... Inhalt HTML- Grundlagen und CSS... 2 XML Programmierung - Grundlagen... 3 PHP Programmierung - Grundlagen... 4 Java - Grundlagen... 5 Java Aufbau... 6 ASP.NET Programmierung - Grundlagen... 7 1 HTML- Grundlagen

Mehr

Existierende Systeme I Bibliotheken & Frameworks

Existierende Systeme I Bibliotheken & Frameworks Projektgruppe: Generierung von Webanwendungen aus visuellen Spezifikationen Existierende Systeme I Bibliotheken & Frameworks Von Christian Schneider Paderborn, den 18.06.2004 Übersicht Motivation Dynamische

Mehr

Java 2, Enterprise Edition Einführung und Überblick

Java 2, Enterprise Edition Einführung und Überblick Universität aiserslautern AG Datenbanken und Informationssysteme Seminar Datenbank-Aspekte des E-Commerce Java 2, Enterprise Edition Einführung und Überblick m_husema@informatik.uni-kl.de Vortragsinhalte

Mehr

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Präsentation zur Diplomarbeit von Übersicht Java 2 Enterprise Edition Java Servlets JavaServer Pages Enterprise JavaBeans Framework

Mehr

Inhaltsverzeichnis. Enterprise Java im Überblick. Technologien der Java2 Enterprise Edition

Inhaltsverzeichnis. Enterprise Java im Überblick. Technologien der Java2 Enterprise Edition Inhaltsverzeichnis Vorwort 13 I Enterprise Java im Überblick 1 Bedeutung von Enterprise Java und IBM WebSphere 21 1.1 Enterprise Java 23 1.1.1 Anforderungen 23 1.1.2 E-Business 30 1.1.3 Java 36 1.2 IBM

Mehr

Inhaltsverzeichnis. Zusammenfassung Wydler

Inhaltsverzeichnis. Zusammenfassung Wydler Inhaltsverzeichnis 1 Multitier Anwendungen... 2 2 J2EE Komponenten... 2 2.1 J2EE Design Patterns for Performance... 2 2.1.1 Design Patterns... 2 2.1.2 Session Façade... 2 2.1.3 Data Transfer Object (Value

Mehr

Komponenten & Hypermedia Seminar Prof. Dr. Frank Thiesing Struts Java-Framework für Web-Applikationen. Referenten: Fabian Bartelt Jens de Witt

Komponenten & Hypermedia Seminar Prof. Dr. Frank Thiesing Struts Java-Framework für Web-Applikationen. Referenten: Fabian Bartelt Jens de Witt Komponenten & Hypermedia Seminar Prof. Dr. Frank Thiesing Struts Java-Framework für Web-Applikationen Referenten: Fabian Bartelt Jens de Witt - Struts 1 Inhaltsverzeichnis Was ist Struts? Vorkenntnisse

Mehr

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

Jakarta Turbine Ein Open Source Framework fÿr Webanwendungen. KNF Kongre 2001 Henning P. Schmiedehausen <henning@apache.org> Jakarta Turbine Ein Open Source Framework fÿr Webanwendungen Henning P. Schmiedehausen Turbine - ein berblick Open Source unter Apache License 100% pure Java, Java 2 (JDK 1.2+) Servlet-basiertes

Mehr

Online-Publishing mit HTML und CSS für Einsteigerinnen

Online-Publishing mit HTML und CSS für Einsteigerinnen mit HTML und CSS für Einsteigerinnen Dipl.-Math. Eva Dyllong Universität Duisburg Dipl.-Math. Maria Oelinger spirito GmbH IF MYT 07-2002 Web-Technologien Überblick HTML und CSS, XML und DTD, JavaScript

Mehr

Client/Server-Systeme

Client/Server-Systeme Fachbereich Informatik Projektgruppe KOSI Kooperative Spiele im Internet Client/Server-Systeme Vortragender Jan-Ole Janssen 26. November 2000 Übersicht Teil 1 Das Client/Server-Konzept Teil 2 Client/Server-Architekturen

Mehr

Übungen zur Softwaretechnik

Übungen zur Softwaretechnik Technische Universität München Fakultät für Informatik Lehrstuhl IV: Software & Systems Engineering Markus Pister, Dr. Bernhard Rumpe WS 2002/2003 Lösungsblatt 8 10. Dezember 2002 www4.in.tum.de/~rumpe/se

Mehr

Glossar. SVG-Grafiken in Bitmap-Grafikformate. Anweisung Eine Anweisung ist eine Folge aus Schlüsselwörtern, Variablen, Objekten,

Glossar. SVG-Grafiken in Bitmap-Grafikformate. Anweisung Eine Anweisung ist eine Folge aus Schlüsselwörtern, Variablen, Objekten, Glossar Anweisung Eine Anweisung ist eine Folge aus Schlüsselwörtern, Variablen, Objekten, Methoden und/oder Eigenschaften, die eine bestimmte Berechnung ausführt, eine Eigenschaft ändert oder eine Methode

Mehr

Java - Webapplikationen

Java - Webapplikationen Java - Webapplikationen Bestandteile (HTTP,, JSP) Aufbau (Model View Controller) Datenverwaltung (Java Beans, Sessions) Entwicklung (Projektstruktur, Sysdeoplugin für Eclipse) 17. Januar 2006 Jan Hatje

Mehr

PHP Kurs Online Kurs Analysten Programmierer Web PHP

PHP Kurs Online Kurs Analysten Programmierer Web PHP PHP Kurs Online Kurs Analysten Programmierer Web PHP Akademie Domani info@akademiedomani.de Allgemeines Programm des Kurses PHP Modul 1 - Einführung und Installation PHP-Umgebung Erste Lerneinheit Introduzione

Mehr

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

OWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes OWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes 1 XSS: Cross-Site Scripting 1.) Es gelangen Daten in den Web-Browser, die Steuerungsinformationen

Mehr

Methoden & Tools für die Expressionsdatenanalyse. Vorlesung Einführung in die Bioinformatik - Expressionsdatenanalyse U. Scholz & M.

Methoden & Tools für die Expressionsdatenanalyse. Vorlesung Einführung in die Bioinformatik - Expressionsdatenanalyse U. Scholz & M. Methoden & Tools für die Expressionsdatenanalyse U. Scholz & M. Lange Folie #7-1 Vorgehensmodell Expressionsdatenverarbeitung Bildanalyse Normalisierung/Filterung Datenauswertung U. Scholz & M. Lange Folie

Mehr

Web 2.0 Software-Architekturen

Web 2.0 Software-Architekturen Web 2.0 Software-Architekturen Servlets als Controller einer MVC Web Architektur Prof. Dr. Nikolaus Wulff HTTP und HTML Das HyperText TransferProtokoll (HTTP) beschreibt eine einfache verbindungslose Kommunikation,

Mehr

Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. WebSphere Application Server Teil 4

Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. WebSphere Application Server Teil 4 UNIVERSITÄT LEIPZIG Mainframe Internet Integration Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013 WebSphere Application Server Teil 4 Leistungsverhalten el0100 copyright W. G. Spruth,

Mehr

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

Herzlich Willkommen! eine praxisnahe Übersicht. Mit Java ins Web - mb@bebox.franken.de. 26.11.2000 (c) Michael Behrendt - Herzlich Willkommen! Mit Java ins Web - eine praxisnahe Übersicht 1 Wer bin ich? Michael Behrendt, 21, Nürnberg kurzer Lebenslauf: 1991 Erster Rechner: Commodore C128 1995 Ausbildung zum Datenverarbeitungskaufmann

Mehr

Schlussbewertung FB VI SOFTWAREPROJEKT II WS 09/10 TEAM. Alexander Kalden Dominik Eckelmann Marcel Pierry Julian Heise Besha Taher

Schlussbewertung FB VI SOFTWAREPROJEKT II WS 09/10 TEAM. Alexander Kalden Dominik Eckelmann Marcel Pierry Julian Heise Besha Taher Schlussbewertung FB VI SOFTWAREPROJEKT II WS 09/10 TEAM Alexander Kalden Dominik Eckelmann Marcel Pierry Julian Heise Besha Taher 729631 745097 736477 745011 741297 Inhalt Schlussbewertung... 3 Bewertung

Mehr

Glossarverwaltung GV3

Glossarverwaltung GV3 Glossarverwaltung GV3 Designbeschreibung VQWiki Leszek Kotas Sebastian Knappe Gerrit Mattausch Raimund Rönn 23. Mai 2004 Inhaltsverzeichnis 1 Allgemeines 3 1.1 Kurzcharakteristik.................................

Mehr

Der IBM Websphere Portalserver

Der IBM Websphere Portalserver Der IBM Websphere Portalserver Ergebnisse aus dem Universitäts-Praxis-Projekt 2001/2002 Vortrag von Il-Hyun Kim und Horst Rechner am 19. Juli 2002 Weiterer Teilnehmer am UPP: Clemens Oertel Betreuer: Dipl.-Phys.

Mehr

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

Webservices. 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung. Hauptseminar Internet Dienste Hauptseminar Internet Dienste Sommersemester 2004 Boto Bako Webservices 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung Was sind Web Services? Web Services sind angebotene

Mehr

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

Architekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller 2002 131 Architekturen Von der DB basierten zur Multi-Tier Anwendung DB/CRM (C) J.M.Joller 2002 131 Lernziele Sie kennen Design und Architektur Patterns, welche beim Datenbankzugriff in verteilten Systemen verwendet

Mehr

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

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de s & Servlet Integration Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht Motivation Das Interface Stateful und Stateless s Programmierung einer Stateful

Mehr

6.9 Java Server Pages

6.9 Java Server Pages DocumentCollection dc = db.ftsearch(abfrage); Document d = dc.getfirstdocument(); while (d!= 0) { String Name = db.gettitle(); out.println(name + ""); d = dc.getnextdocument(); catch (NotesException

Mehr

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

Wir bringen Ihre Notes/Domino Anwendungen sicher ins Web 19.11.2015, Bilster Berg Drive Resort Michael Steinhoff, agentbase AG. www.agentbase. Wir bringen Ihre Notes/Domino Anwendungen sicher ins Web 19.11.2015, Bilster Berg Drive Resort Michael Steinhoff, agentbase AG www.agentbase.de 1 Agenda Grundlagen Modernisierung Möglichkeiten mit Domino

Mehr

VS12 Slide 1. Verteilte Systeme. Vorlesung 12 Sebastian Iwanowski FH Wedel

VS12 Slide 1. Verteilte Systeme. Vorlesung 12 Sebastian Iwanowski FH Wedel VS12 Slide 1 Verteilte Systeme Vorlesung 12 Sebastian Iwanowski FH Wedel Mögliche Plattformen für Web Services VS12 Slide 2 VS12 Slide 3 Java-Software für verteilte Systeme J2EE: Java 2 Enterprise Edition

Mehr

Java und XML 2. Java und XML

Java und XML 2. Java und XML Technische Universität Ilmenau Fakultät für Informatik und Automatisierung Institut für Praktische Informatik und Medieninformatik Fachgebiet Telematik Java und XML Hauptseminar Telematik WS 2002/2003

Mehr

Enterprise Application Integration Erfahrungen aus der Praxis

Enterprise Application Integration Erfahrungen aus der Praxis Enterprise Application Integration Erfahrungen aus der Praxis Teil 4: EAI und.net, EAI und J2EE Tutorial NODs 2002, Wolfgang Keller and Generali 2001, 2002, all rights reserved 1 Überblick EAI und....net

Mehr

ORACLE Business Components for Java (BC4J) Marco Grawunder

ORACLE Business Components for Java (BC4J) Marco Grawunder ORACLE Business Components for Java (BC4J) Marco Grawunder Gliederung 2 Probleme von J2EE/EJB J2EE-Pattern Lösungsansatz: BC4J Architektur einer BC4J-Anwendung Komponenten Entity Objects View Objects Application

Mehr

Softwareschnittstellen

Softwareschnittstellen P4.1. Gliederung Rechnerpraktikum zu Kapitel 4 Softwareschnittstellen Einleitung, Component Object Model (COM) Zugriff auf Microsoft Excel Zugriff auf MATLAB Zugriff auf CATIA Folie 1 P4.2. Einleitung

Mehr

Proseminar: Website-Management-Systeme

Proseminar: Website-Management-Systeme Proseminar: Website-Management-Systeme Thema: Web: Apache/Roxen von Oliver Roeschke email: o_roesch@informatik.uni-kl.de Gliederung: 1.) kurze Einleitung 2.) Begriffsklärung 3.) Was ist ein Web? 4.) das

Mehr

Online Banking System

Online Banking System Online Banking System Pflichtenheft im Rahmen des WI-Praktikum bei Thomas M. Lange Fachhochschule Giessen-Friedberg Fachbereich MNI Studiengang Informatik Erstellt von: Eugen Riske Yueksel Korkmaz Alper

Mehr

09.06.2003 André Maurer andre@maurer.name www.andre.maurer.name Wirtschaftsinformatik FH 3.5 Fachhochschule Solothurn, Olten

09.06.2003 André Maurer andre@maurer.name www.andre.maurer.name Wirtschaftsinformatik FH 3.5 Fachhochschule Solothurn, Olten Aktuelle Themen der Wirtschaftsinformatik Zusammenfassung 09.06.2003 André Maurer andre@maurer.name www.andre.maurer.name Wirtschaftsinformatik FH 3.5 Fachhochschule Solothurn, Olten 1 Serverseitige Webprogrammierung

Mehr

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

Java Beans Enterprise Java Beans. Eine kurze Einführung in die Welt der Bohnen Java Beans Enterprise Java Beans Eine kurze Einführung in die Welt der Bohnen Java Beans Einführung Stefan Sauer Was ist ein Java Bean? Beans sind Komponenten. Einmal schreiben Überall wiederverwerten

Mehr

Liste V Enterprise JavaBeans

Liste V Enterprise JavaBeans Liste V Enterprise JavaBeans Fachhochschule Wiesbaden, FB Design Informatik Medien Studiengang Allgemeine Informatik Vorlesung zur Vertiefungslehrveranstaltung Spezielle Methoden der Softwaretechnik SS

Mehr

Inhaltsverzeichnis. Vorwort... Einleitung... Einführung... 1

Inhaltsverzeichnis. Vorwort... Einleitung... Einführung... 1 Vorwort... Einleitung... V VII Einführung... 1 1 Grundlagen... 7 1.1 Dokumentmodelle... 7 1.1.1 Multimedia... 8 1.1.2 Hypermedia... 9 1.1.3 Verteilung... 11 1.2 Geschichte des WWW... 13 1.2.1 Struktur...

Mehr

Integrating Architecture Apps for the Enterprise

Integrating Architecture Apps for the Enterprise Integrating Architecture Apps for the Enterprise Ein einheitliches Modulsystem für verteilte Unternehmensanwendungen Motivation und Grundkonzept Inhalt Problem Ursache Herausforderung Grundgedanke Architektur

Mehr

Enterprise Java Beans Einführung

Enterprise Java Beans Einführung Enterprise Java Beans Einführung Vorlesung 8 Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht EJBs im JEE Umfeld Verschiedene Typen von EJBs Von der Javaklasse

Mehr

EJB Beispiel. JEE Vorlesung 10. Ralf Gitzel ralf_gitzel@hotmail.de

EJB Beispiel. JEE Vorlesung 10. Ralf Gitzel ralf_gitzel@hotmail.de EJB Beispiel JEE Vorlesung 10 Ralf Gitzel ralf_gitzel@hotmail.de 1 Stundenkonzept Gemeinsame Übung Stoff der letzten Stunde wird gemeinsam in einem Beispiel umgesetzt Details werden nochmals erklärt bzw.

Mehr

CORBA. Systemprogrammierung WS 2006-2007

CORBA. Systemprogrammierung WS 2006-2007 CORBA Systemprogrammierung WS 2006-2007 Teilnehmer: Bahareh Akherattalab Babak Akherattalab Inhaltsverzeichnis: Verteilte Systeme Vergleich zwischen lokale und verteilte Systeme Verteilte Anwendungen CORBA

Mehr

Seminar SS 2000 Enterprise Application Intergration

Seminar SS 2000 Enterprise Application Intergration Seminar SS 2000 Enterprise Application Intergration Web Programming Lifang Chen Betreuer: Marcello Mariucci Juli 2000, Universität Stuttgart Seminar "Web Programming" von Lifang Chen, Juli 2000 Folie 1

Mehr

Enterprise Softwarearchitekturen in Java

Enterprise Softwarearchitekturen in Java Enterprise Softwarearchitekturen in Java Dauer: 5 Tage 1. Tag: Vorbereitungstag...2 Der erste Tag richtet sich an alle, die bislang wenig Praxiserfahrung mit der Programmiersprache Java haben. Die Teilnehmer

Mehr

Netzwerk Technologien in LabVIEW

Netzwerk Technologien in LabVIEW Netzwerk Technologien in LabVIEW von Dirk Wieprecht NI Germany Hier sind wir: Agenda Agenda Bedeutung des Ethernet für die Messtechnik Ethernet-basierende Technologien in LabVIEW Low Level- TCP/IP Objekt

Mehr

Datenbank-basierte Webserver

Datenbank-basierte Webserver Datenbank-basierte Webserver Datenbank-Funktion steht im Vordergrund Web-Schnittstelle für Eingabe, Wartung oder Ausgabe von Daten Datenbank läuft im Hintergrund und liefert Daten für bestimmte Seiten

Mehr

Browserbasiertes, kollaboratives Whiteboard

Browserbasiertes, kollaboratives Whiteboard WS 2011/12 Bachelorarbeit Browserbasiertes, kollaboratives Whiteboard Sebastian Dorn 1 von 21 Inhalt 1. Motivation 2. Analyse 3. Design 4. Evaluation 5. Fazit Inhalt 2 von 21 Motivation Zusammenarbeit

Mehr

J2EEKurs. J2EE eine Plattform für betriebliche Anwendungen. Peter Thiemann. Sommercampus J2EEKurs, Freiburg, Germany, 10.-14.10.

J2EEKurs. J2EE eine Plattform für betriebliche Anwendungen. Peter Thiemann. Sommercampus J2EEKurs, Freiburg, Germany, 10.-14.10. J2EE eine Plattform für betriebliche Anwendungen Universität Freiburg, Germany Sommercampus, Freiburg, Germany, 10.-14.10.2005 Plattform Betriebliche Anwendung J2EE Kontrahenten J2EE im Überblick Was ist

Mehr

Android Kurs Online Kurs Entwicklung auf Android-Handys

Android Kurs Online Kurs Entwicklung auf Android-Handys Android Kurs Online Kurs Entwicklung auf Android-Handys Akademie Domani info@akademiedomani.de Allgemeines Programm des Kurses Modul Eins - Programmierung J2ee 1) Grundlegende Java - Programmierung : Grundlegende

Mehr

Java Pet Store vs..net Pet Shop. Seminar Software-Entwurf Jörg Eggermann

Java Pet Store vs..net Pet Shop. Seminar Software-Entwurf Jörg Eggermann <Eggermann@hosterme.de> Java Pet Store vs..net Pet Shop Seminar Software-Entwurf Jörg Eggermann Gliederung Motivation Einordnung Einschub - Enterprise Java Beans Anwendungen in der Übersicht Java Pet Store.NET

Mehr

Webanwendungen mit IBM Rational und IBM WebSphere V6

Webanwendungen mit IBM Rational und IBM WebSphere V6 Joachim Gucker, Michael Müller, Dietmar Rager, Stefan Schäffer, Walter Schilder, Veronika Thurner, Dina Winkler 2008 AGI-Information Management Consultants May be used for personal purporses only or by

Mehr

Um asynchrone Aufrufe zwischen Browser und Web Anwendung zu ermöglichen, die Ajax Hilfsmittel DWR ist gebraucht.

Um asynchrone Aufrufe zwischen Browser und Web Anwendung zu ermöglichen, die Ajax Hilfsmittel DWR ist gebraucht. Technisches Design Inhalt Design Übersicht Menü und DispatcherServlet DWR Servlet Viewer Servlets Controllers Managers Sicherheit Anwendung Architektur Component Diagram Deployment Diagram Komponente Sequence

Mehr

Kurzübersicht Diplomarbeit

Kurzübersicht Diplomarbeit Thema: Konzeption und Implementierung einer Basisarchitektur für eine regelbasierte Client-/Server-Anwendung für das Workflow Management Ort: Bundesamte für Wehrtechnik und Beschaffung, Wehrtechnische

Mehr

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

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server Einsatz von Applikationsservern Untersucht am Beispiel des Sybase Enterprise Application Server Architektur von Datenbanksystemen Client / Server Modell (2 Schichten Modell) Benutzerschnittstelle Präsentationslogik

Mehr

5. Programmierschnittstellen für XML

5. Programmierschnittstellen für XML 5. Programmierschnittstellen für für Medientechnologen Dr. E. Schön Wintersemester 2015/16 Seite 146 Notwendigkeit: Programmierschnittstelle Zugriff auf -Daten durch Applikationen wiederverwendbare Schnittstellen

Mehr

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

C O C O O N. Wo ist Cocoon in die Apache Projekte einzureihen? C O C O O N ein Web-Framework der Apache Software Foundation http://www.apache.org Wo ist Cocoon in die Apache Projekte einzureihen? Apache Server sehr leistungsfähiger HTTP-Server Tomcat Server Referenzimplementierung

Mehr

FH LU JEE Vorlesung SS 2010. Ralf Gitzel ralf_gitzel@hotmail.de

FH LU JEE Vorlesung SS 2010. Ralf Gitzel ralf_gitzel@hotmail.de FH LU JEE Vorlesung SS 2010 Ralf Gitzel ralf_gitzel@hotmail.de 1 Einführung + Organisatorisches Ralf Gitzel ralf_gitzel@hotmail.de 2 Dozent Dr. Ralf Gitzel Promotion an der Universität Mannheim in Wirtschaftsinformatik

Mehr

DRESDEN, 08.10.2009 CHRISTIAN.KNAUER@INF.TU-DRESEDEN.DE

DRESDEN, 08.10.2009 CHRISTIAN.KNAUER@INF.TU-DRESEDEN.DE DOKUMENTATION MAAS - MONITORING AS A SERVICE DRESDEN, 08.10.2009 CHRISTIAN.KNAUER@INF.TU-DRESEDEN.DE Dokumentation MaaS - Monitoring as a Service Inhalt 1. MaaS - Monitoring as Service... 3 1.1 Einleitung...

Mehr

Diplomarbeit: GOMMA: Eine Plattform zur flexiblen Verwaltung und Analyse von Ontologie Mappings in der Bio-/Medizininformatik

Diplomarbeit: GOMMA: Eine Plattform zur flexiblen Verwaltung und Analyse von Ontologie Mappings in der Bio-/Medizininformatik Diplomarbeit: GOMMA: Eine Plattform zur flexiblen Verwaltung und Analyse von Ontologie Mappings in der Bio-/Medizininformatik Bearbeiter: Shuangqing He Betreuer: Toralf Kirsten, Michael Hartung Universität

Mehr

Managed VPSv3 Was ist neu?

Managed VPSv3 Was ist neu? Managed VPSv3 Was ist neu? Copyright 2006 VERIO Europe Seite 1 1 EINFÜHRUNG 3 1.1 Inhalt 3 2 WAS IST NEU? 4 2.1 Speicherplatz 4 2.2 Betriebssystem 4 2.3 Dateisystem 4 2.4 Wichtige Services 5 2.5 Programme

Mehr

Anwendung eines Enterprise Java Beans

Anwendung eines Enterprise Java Beans Anwendung eines Enterprise Java Beans EJB Server EJB Container Remote Interface Home Interface EJB Object Der EJB Container kümmert sich um die Kommunikation des Beans mit anderen Komponenten, wobei er

Mehr

Java Server Pages 2 und Benutzerdefinierte Tags. Strahil Yordanov

Java Server Pages 2 und Benutzerdefinierte Tags. Strahil Yordanov Java Server Pages 2 und Benutzerdefinierte Tags Strahil Yordanov Überblick Einleitung JSP im Kontext von J2EE JSP2 Benutzerdefinierte Tags Zusammenfassung Einleitung Java Server Pages ist eine Technik

Mehr

Beschreibung und Bedienungsanleitung. Inhaltsverzeichnis: Abbildungsverzeichnis: Werkzeug für verschlüsselte bpks. Dipl.-Ing.

Beschreibung und Bedienungsanleitung. Inhaltsverzeichnis: Abbildungsverzeichnis: Werkzeug für verschlüsselte bpks. Dipl.-Ing. www.egiz.gv.at E-Mail: post@egiz.gv.at Telefon: ++43 (316) 873 5514 Fax: ++43 (316) 873 5520 Inffeldgasse 16a / 8010 Graz / Austria Beschreibung und Bedienungsanleitung Werkzeug für verschlüsselte bpks

Mehr

Benutzerdokumentation Web-Portal

Benutzerdokumentation Web-Portal GRUPP: SWT0822 Benutzerdokumentation Web-Portal Yet Another Reversi Game Martin Gielow, Stephan Mennicke, Daniel Moos, Christine Schröder, Christine Stüve, Christian Sura 05. Mai 2009 Inhalt 1. Einleitung...3

Mehr

Transcriptomics: Analysis of Microarrays

Transcriptomics: Analysis of Microarrays Transcriptomics: Analysis of Microarrays Dion Whitehead dion@uni-muenster.de Division of Bioinformatics, Westfälische Wilhelms Universität Münster Microarrays Vorlesungsüberblick : 1. Überblick von Microarray

Mehr

DCCS Lotusphere Nachlese 2012 Was sind XPages? Mobile Features für XPages

DCCS Lotusphere Nachlese 2012 Was sind XPages? Mobile Features für XPages Wir automatisieren und optimieren Ihre Geschäftsprozesse DCCS Lotusphere Nachlese 2012 Was sind XPages? Mobile Features für XPages Thomas Brandstätter 06.03.2012 www.dccs.at Agenda Theorie Was sind XPages

Mehr

Oliver Zeigermann, Stefan Toth embarc GmbH. Flux Facebooks Beitrag zur UI- Architektur der Zukunft

Oliver Zeigermann, Stefan Toth embarc GmbH. Flux Facebooks Beitrag zur UI- Architektur der Zukunft Oliver Zeigermann, Stefan Toth embarc GmbH Flux Facebooks Beitrag zur UI- Architektur der Zukunft UI-Architektur Warum? User Experience wird wichtiger Rich Client Optionen werden rar Es gibt mehrere Philosophien

Mehr

5. Programmierschnittstellen für XML

5. Programmierschnittstellen für XML 5. Programmierschnittstellen für Grundlagen Dr. E. Schön FH Erfurt Sommersemester 2015 Seite 135 Programmierschnittstelle Notwendigkeit: Zugriff auf -Daten durch Applikationen wiederverwendbare Schnittstellen

Mehr

Remote Communications

Remote Communications HELP.BCFESDEI Release 4.6C SAP AG Copyright Copyright 2001 SAP AG. Alle Rechte vorbehalten. Weitergabe und Vervielfältigung dieser Publikation oder von Teilen daraus sind, zu welchem Zweck und in welcher

Mehr

Programmierung von Java- Webanwendungen. paluno

Programmierung von Java- Webanwendungen. paluno Programmierung von Java- Webanwendungen Gliederung 1 Vorstellung und Einführung 2 Basiswissen Web 3 XML und JSF- Einführung 4 JSF- Komponenten und RichFaces 5 Wiederholung der ersten Woche 6 JSF- Konzepte

Mehr

Von SAP R/3 zu mysap ERP und NetWeaver

Von SAP R/3 zu mysap ERP und NetWeaver Von SAP R/3 zu mysap ERP und NetWeaver Bremerhaven 06.05.2006 T4T Bremerhaven 1 Inhaltsverzeichnis 1. Motivation für SAP NetWeaver 2. SAP R/3 mysap ERP und SAP Business Suite 3. Application Platform T4T

Mehr

Softwareentwicklung in verteilten Umgebungen, Teil 12 Enterprise Middleware. Dieter Schmalstieg. Dieter Schmalstieg SVU Enterprise Middleware

Softwareentwicklung in verteilten Umgebungen, Teil 12 Enterprise Middleware. Dieter Schmalstieg. Dieter Schmalstieg SVU Enterprise Middleware Softwareentwicklung in verteilten Umgebungen, Teil 12 Enterprise Middleware Dieter Schmalstieg Middleware für Enterprise Information Systems Enterprise Information Systems Grosse Unternehmen Viele existierende

Mehr

Bridging the Gap between the Enterprise and You. Who s the JBoss now?

Bridging the Gap between the Enterprise and You. Who s the JBoss now? or Who s the JBoss now? Patrick Hof (patrick.hof@redteam-pentesting.de) Jens Liebchen (jens.liebchen@redteam-pentesting.de) RedTeam Pentesting GmbH http://www.redteam-pentesting.de 16. DFN-Cert Workshop

Mehr

SmartExporter 2013 R1

SmartExporter 2013 R1 Die aktuelle Version wartet mit zahlreichen neuen Features und umfangreichen Erweiterungen auf. So können mit SmartExporter 2013 R1 nun auch archivierte Daten extrahiert und das Herunterladen der Daten

Mehr

Die Cargo Plattform bietet einen sicheren und einfachen Datentransfer mit einem modernen Web- Interface.

Die Cargo Plattform bietet einen sicheren und einfachen Datentransfer mit einem modernen Web- Interface. Die Cargo Plattform bietet einen sicheren und einfachen Datentransfer mit einem modernen Web- Interface. Inhaltsverzeichnis Erste Schritte Anmelden 2 Startseite 3 Dateimanager 4 CargoLink 5 Freigaben 6

Mehr

QUICK-START EVALUIERUNG

QUICK-START EVALUIERUNG Pentaho 30 für 30 Webinar QUICK-START EVALUIERUNG Ressourcen & Tipps Leo Cardinaals Sales Engineer 1 Mit Pentaho Business Analytics haben Sie eine moderne und umfassende Plattform für Datenintegration

Mehr

World Wide Mining mit dem AppDev Studio 2.0

World Wide Mining mit dem AppDev Studio 2.0 World Wide Mining mit dem AppDev Studio 2.0 Frank Rosner Technical Product Management Präsentationsüberblick AppDev Studio die SAS Entwicklungsumgebung Java erobert den Server Andere Möglichkeiten Anwendungsbeispiel:

Mehr

JSP JSTL. JEE Vorlesung Teil 6. Ralf Gitzel ralf_gitzel@hotmail.de

JSP JSTL. JEE Vorlesung Teil 6. Ralf Gitzel ralf_gitzel@hotmail.de JSP JSTL JEE Vorlesung Teil 6 Ralf Gitzel ralf_gitzel@hotmail.de 1 Übersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht Wiederholung / Vertiefung JSTL Grundlagen JSTL Basisbefehle Templates über JSTL

Mehr

XPages Good to know. Benjamin Stein & Pierre Hein Stuttgart 7. Mai 2015

XPages Good to know. Benjamin Stein & Pierre Hein Stuttgart 7. Mai 2015 XPages Good to know Benjamin Stein & Pierre Hein Stuttgart 7. Mai 2015 Agenda 1. Einführung Was sind XPages? 2. Allgemeine Tipps Allgemeine Tipps für die Verwendung von XPages 3. Designer Tipps Tipps für

Mehr

UNIVERSITÄT LEIPZIG. Mainframe Internet Integration SS2013. Java Enterprise Edition Teil 4. Schnittstellen

UNIVERSITÄT LEIPZIG. Mainframe Internet Integration SS2013. Java Enterprise Edition Teil 4. Schnittstellen UNIVERSITÄT LEIPZIG Mainframe Internet Integration Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013 Java Enterprise Edition Teil 4 Schnittstellen el0100 copyright W. G. Spruth, wgs 04-10

Mehr

Einleitung. Funktion. Panzenböck Phillipp. Download 13.05.2003. Installation. Testen. Konfiguration

Einleitung. Funktion. Panzenböck Phillipp. Download 13.05.2003. Installation. Testen. Konfiguration Panzenböck Phillipp 13.05.2003 Der Applikationsserver wird von einer in Schweden ansässigen Firma namens Ironflare entwickelt Orion ist das einzige Produkt dieser Firma Der Orionserver ist komplett in

Mehr

ObjectBridge Java Edition

ObjectBridge Java Edition ObjectBridge Java Edition Als Bestandteil von SCORE Integration Suite stellt ObjectBridge Java Edition eine Verbindung von einem objektorientierten Java-Client zu einer fast beliebigen Server-Komponente

Mehr

Jump Project. Softwarelösungen für professionelles Projektmanagement

Jump Project. Softwarelösungen für professionelles Projektmanagement Jump Project Softwarelösungen für professionelles Projektmanagement Jump Project Office Übersichtliche Dokumentenstruktur und schneller Zugriff auf alle wichtigen Funktionen. Steuern Sie Ihre Projekte

Mehr

Microsoft.NET und SunONE

Microsoft.NET und SunONE Microsoft.NET und SunONE, Plattformen und Application Service Providing Agenda Einordnung.NET und SunONE Kurzvorstellung Gegenüberstellung Zusammenfassung ASP (Application( Service Providing) ) und Ausblick

Mehr

Workflow Systeme mit der Windows Workflow Foundation

Workflow Systeme mit der Windows Workflow Foundation Studiengang Electronic Business (EB) Diplomarbeit (280000) Workflow Systeme mit der Windows Workflow Foundation externe Betreuung durch Christoph Müller vorgelegt bei Prof. Dr. Michael Gröschel von Hans-Martin

Mehr

Erlernbarkeit. Einsatzbereich. Preis. Ausführungsort

Erlernbarkeit. Einsatzbereich. Preis. Ausführungsort 1.3 PHP Vorzüge Erlernbarkeit Im Vergleich zu anderen Sprachen ist PHP relativ leicht erlernbar. Dies liegt hauptsächlich daran, dass PHP im Gegensatz zu anderen Sprachen ausschließlich für die Webserver-Programmierung

Mehr

Herzlich willkommen im Modul Informatik Grundlagen

Herzlich willkommen im Modul Informatik Grundlagen Herbstsemester 2010/2011 Herzlich willkommen im Modul Informatik Grundlagen Wirtschaftsingenieurwesen: 1. Semester Dozent: Martin Hüsler Fachhochschule Nordwestschweiz FHNW / Martin Hüsler 1 Ablauf: 1.

Mehr

STRUTS - Einführung Kurs am Rechenzentrum Universität Stuttgart 16.02.2005

STRUTS - Einführung Kurs am Rechenzentrum Universität Stuttgart 16.02.2005 STRUTS - Einführung Kurs am Rechenzentrum Universität Stuttgart 16.02.2005 Was ist ein Web Applikation Framework? STRUTS Features MVC-Pattern Architektur und Komponenten Tag Libraries Konfiguration Links

Mehr

CORBA-Konzept. Ziele. Common Object Request Broker Architecture CORBA. Plattformunabhängige Kommunikation Transparente Verteilung von Objekten

CORBA-Konzept. Ziele. Common Object Request Broker Architecture CORBA. Plattformunabhängige Kommunikation Transparente Verteilung von Objekten CORBA-Konzept Ziele Common Object Request Broker Architecture CORBA Plattformunabhängige Kommunikation Transparente Verteilung von Objekten CORBA-Konzept Object Management Group Spezifiziert den CORBA-Standard

Mehr

Fujitsu BeanConnect TM V3.0 Software 0 FUJITSU LIMITED 2013

Fujitsu BeanConnect TM V3.0 Software 0 FUJITSU LIMITED 2013 Fujitsu BeanConnect TM V3.0 Software 0 FUJITSU LIMITED 2013 Die Herausforderung: Hostanbindung Viele Unternehmen besitzen Mainframe- und Legacy-Anwendungen, so genannte Enterprise Information Systems (EIS),

Mehr

SemTalk Services. SemTalk UserMeeting 29.10.2010

SemTalk Services. SemTalk UserMeeting 29.10.2010 SemTalk Services SemTalk UserMeeting 29.10.2010 Problemstellung Immer mehr Anwender nutzen SemTalk in Verbindung mit SharePoint Mehr Visio Dokumente Viele Dokumente mit jeweils wenigen Seiten, aber starker

Mehr

JPC Visualisierung in Java

JPC Visualisierung in Java Visualisierung in Java Ihr Partner für f r Embedded Systeme! Hauptsitz: Niederwangen (Bern), Schweiz Niederlassungen: Winterthur (Zürich) und Basel, Schweiz Sales Office: München, Deutschland NetModule

Mehr

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 Gerald.Ehmayer@borland.com

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 Gerald.Ehmayer@borland.com Web Services Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 1 Web Services Einführung Definition, Eigenschaften, Anwendungen... JAX-RPC Überblick, Architektur... JAX Übersicht, Architektur Java Praktikum

Mehr

Programmierung von Client/Server- Anwendungen

Programmierung von Client/Server- Anwendungen Programmierung von Client/Server- Anwendungen Komponenten des Web-Containers (Java EE) SoSe2015 Prof. Dr. Andreas Schmietendorf 1 Übersicht zur Vorlesung Entwicklung der Java Enterprise Edition Servlets,

Mehr

JSP und Servlet Programmierung

JSP und Servlet Programmierung Seminarunterlage Version: 5.02 Copyright Version 5.02 vom 1. März 2013 Dieses Dokument wird durch die veröffentlicht. Copyright. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen

Mehr

Enterprise JavaBeans

Enterprise JavaBeans Enterprise JavaBeans Sebastian Pipping 18. Dezember 2006 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License. Teil I J2EE J2EE Was ist J2EE? Was ist J2EE?

Mehr