Integration einer Risk Management Lösung

Größe: px
Ab Seite anzeigen:

Download "Integration einer Risk Management Lösung"

Transkript

1 Diplomarbeit Integration einer Risk Management Lösung Aron Kovacs August 2007 Betreuung: Prof. Dr. rer. nat. Andreas Lux Fachbereich Design und Informatik Fachhochschule Trier University of Applied Sciences

2 Vorwort Vorwort Die Diplomarbeit wurde bei der Firma Ikano Fund Management S.A. (IFM) in Luxemburg erstellt. Ikano Fund Management gehört zu der Firmengruppe Ikano Group [IKGRP], die ein Teil des 1943 in Älmhult gegründeten Ikea war. Während 1970 erweiterte die Gruppe ihren Geschäftsbereich um Immobilienhandel, Versicherungswesen und finanzielle Dienstleistungen wurde die Ikano Group zu einer eigenständigen Firmengruppe und seither entwickelt die Gruppe stetig neue Geschäftsfelder, wenngleich die Kamprad Familie weiterhin Eigentümer der Firmengruppe geblieben sind. Asset Management [IFM], offiziell Ikano Fund Management (IFM), ist eines dieser Geschäftsfelder und hat zurzeit rund 4Mrd. Euro als Investitionssumme zur Verfügung. IFM verfolgt eine Multi-Management Strategie [MUMA], das heißt, dass die Firma nicht direkt in Anlagen investiert, sondern anhand speziellerer Verfahren Manager ausgesucht werden, denen eine gewisse Investitionssumme unter bestimmten Auflagen zur Verfügung gestellt wird. Die Firma Advanced Portfolio Technologies (APT) [APT01] wurde 1985 durch Prof. John Blin und Steven Bender gegründet und bot Dienstleistungen rund um Risikoanalyse für Aktienportfolios an. Da die Firma mit der Zeit ihren Kompetenzbereich um weitere verlässliche Werkzeuge zur Portfolio- und Risikoanalyse ausgeweitet hat, wurde bei IFM 2006 der Beschluss gefasst, ihre Produkte in die Firmenumgebung zu integrieren. Nach der Einarbeitungszeit des Diplomanden startete das Projekt Ende Februar Diese Diplomarbeit spiegelt den aktuellen Stand des Systems wieder, und stellt die einzelnen Komponenten vor. Das Endprodukt ist ein Client/ Server basierendes System, das seine Daten über unterschiedliche Web Services [WEBS] austauscht. Es wurden zwei Endanwendungen implementiert: - Eine Konsolenanwendung zur zeitgesteuerten, automatisierten Ausführung. - Eine Benutzerschnittstelle in Form einer ASP.NET Webseite, mit der Wartungsund Berechnungsaufgaben wahrgenommen werden können.

3 Die Diplomarbeit selbst ist in drei Themenkomplexe unterteilt. In der Einleitung werden die Grundlagen erläutert, welche für die Kenntnis der grundlegenden Problematik notwendig sind und wie die Zielsetzung des Projektes ist. Hierzu zählen ein kurzer Ausflug in die Finanz- und Fondwelt mit Schwerpunkt Risikomanagement, die Rolle der Firma APT dabei und die daraus resultierende Aufgabe des Entwicklers. Auch die Bedeutung des Value at Risk (VaR) wird in diesem Kapitel geklärt. Nach der Einleitung werden die Vorbereitungen behandelt, welche die technischen Grundlagen des Intranets, der Programmierumgebung, sowie Konventionen während der Entwicklung betreffen. In diesem Rahmen werden auch Prototypen vorgestellt, die zur Erfüllung der vorher definierten Kernaufgaben implementiert worden sind. Im Hauptteil der Diplomarbeit, dem Systemdesign, werden technisch interessante Aspekte des Systems in vereinfachter Form beschrieben: sämtliche Klassendiagramme sind auf wesentliche Komponenten gekürzt, um die Aufmerksamkeit des Lesers nicht mit unbedeutenden Details zu belasten. Die vollständigen Diagramme und Grafiken sind in digitaler Form als Anlage vorhanden. Die Grafiken wurden mit dem Programm Sparx Enterprise Architect [EA] erstellt, daher befindet sich ein entsprechender Betrachter ebenfalls auf der CD. Das Kapitel Systemdesign hat vier Schwerpunkte: die Client-Bibliothek und die Server-Bibliothek, welche zusammen das Fundament des Systems darstellen, und die beiden Endanwendungen, der Agent Host und die Webseite. Leitgedanke des Kapitels ist die Berechnung des Value at Risk, daher wird die Rolle jeder Komponente in dieser Aufgabe aufgezeigt. Der technische Schwerpunkt der Diplomarbeit liegt auf Entwurfsmustern, also Strukturen und Konstrukten, die sich für eine bestimmte Art von Aufgabe als besonders geeignet gezeigt haben. Die Entwurfsmuster werden einzeln vorgestellt und diskutiert. 3

4 Inhaltsverzeichnis 1. Inhaltsverzeichnis Integration einer Risk Management Lösung... 1 Vorwort Inhaltsverzeichnis Einleitung Theoretische Grundlagen Aufgabenstellung Vorbereitungen Grundlagen der Entwicklungsumgebung Konventionen während der Entwicklung Die Datenbasis Prototypen Der Risk Computation Prototyp Der Proxy Issue Solver Mockup Test Driven Development Grundüberlegungen zur Systemarchitektur Systemdesign Die Client-Bibliothek Transformierung von Instrumenten Builder und ihre Funktionsweise Strukturanalyse der InstrumentSetupFactory ClientFactory Web Services und Windows Communication Foundation VaR Sequenz... 96

5 4.2. Die Serverbibliothek Der Testserver Die RMS Konsole Die Singletons Die Server-Controller Zusammenspiel der Komponenten: Start des Servers Abarbeitungssequenz LookUp Tabellen Beispiel einer Worker-Klasse: FDBImportWorker Agent Host Der AgentContext AgentContextFactory VaR Sequenz Die Webseite Wartungsaufgaben Berechnungen SessionState/ ViewState Mediator Observer Zusammenfassung Anhang Anhang: Literaturverzeichnis Abbildungsverzeichnis Instrumente des Kapitalmarktes

6 Anleihen (Bonds) Wandelbare Anleihen (Convertible Bonds) Floater (Floating Rate Note) ABS (Asset Backed Security) Perpetuals Step up/ Step down Bonds Zero Bonds (Zero Coupon Bond) Derivative Instrumente des Kapitalmarktes Options Forwards Future Swaps Payer Swap (base swap) Receiver Swap/ Coupon Swap Forward Swap Swap options/ Swaptions Double Swap Cross Currency Swap

7 Einleitung - Theoretische Grundlagen 2. Einleitung Neben der direkten Investition in Anlagen kann ein Anleger auch in Fonds investieren. Alle handelbaren Anlageformen eines Finanzmarktes, darunter Aktien, Anleihen und Termingeschäfte, werden auch als Marktinstrumente, Instrumente des Marktes oder schlicht Instrumente bezeichnet. Fonds sind die Gruppierung verschiedener Anlageformen mit unterschiedlicher Gewichtung zu einem Gesamtpaket. Je nach Fond-Art kann die Gewichtung einzelner Positionen oder die Zusammensetzung des Fonds während der Laufzeit des Fonds variieren oder nicht. Durch die Investition in einen Fond erreicht der Anleger mit geringem Aufwand eine kostengünstige Risikostreuung bei vergleichsweise hohen Renditen[FIHA01]. Ein Maß für das Risiko eines Fonds ist seine Diversifikation. Sie ist die Größe, welche die Streuung der Einzelrisiken der Instrumente im Fond angibt. Stark diversifizierte Fonds nehmen viele unabhängige Einzelrisiken in Kauf, wobei jedes Risiko nur einen kleinen Einfluss auf Performance und Risiko des Fonds hat. Das Gesamtrisiko eines solchen Fonds ist eher gering, da Risiken auch gegensätzlich wirken, doch aus demselben Grund ist auch der Ertrag eines solchen Fonds begrenzt. Durch Diversifikation können Unternehmens- und branchenspezifische Risiken auf ein Minimum reduziert werden, das Marktrisiko kann allerdings nicht durch sie verringert werden [BAST01]. Schwach diversifizierte Fonds nehmen dagegen nur wenige gezielte Risiken in Kauf, sind also in relativ großer Abhängigkeit von ihnen. Dafür kann der Ertrag höher ausfallen. Zudem lassen sich zwei Fondsstrategien feststellen: langfristige und kurzfristige. Auf einen Langzeiteffekt abzielende Fonds weisen eine gewisse Trägheit in bezug auf ihre Zusammensetzung auf: Sie wird über die Zeit wenig bis gar nicht verändert, da sie langfristig mit einem kalkulierten Ertrag rechnen und daher momentane Tiefpunkte aussitzen. Sie werden auch als passive Fonds bezeichnet.

8 Einleitung - Theoretische Grundlagen Als Kontrapunkt können die aktiv verwalteten Fonds angesehen werden. Die Fondverwaltungsgesellschaft verwaltet und überwacht ständig die Zusammensetzung des Fonds und passt sie gemäß dem Risikoprofil, aktuellen Problemen und Gelegenheiten an. Fondverwaltungsgesellschaften verwalten entweder direkt oder indirekt ihre Fonds. Indirekte Verwaltung bedeutet, dass die Gesellschaft anderen Fondmanagern einen Investitionsauftrag über eine gewisse Summe und Risikoprofil entsprechend erteilt. Das Fondmanagement überwacht in diesem Fall die Entwicklung der einzelnen Fondmanager. Der Erfolg des Fonds ist maßgeblich von der Wahl des Fondmanagers abhängig. Der Fondmanager hat innerhalb der ihm vorgegebenen Richtlinien freie Wahl, in welche Instrumente er investiert. Ikano Fund Management ist eine solche Fondgesellschaft und hat hierzu bereits ein Wertesystem entwickelt, mit dem Fondmanager beurteilt werden können. Es ist im Interesse der Fondverwaltungsgesellschaft, die Tätigkeiten des jeweiligen Fondmanagers zu überwachen, um Auswirkungen ihrer Transaktionen abschätzen und Seiteneffekte im Portfolio oder Risikoprofil vermeiden zu können. Die korrelierende Beziehung zwischen Risiko und Ertrag wurde erst mal durch das Capital Asset Pricing Model [CAPM] modelliert, welches von Treynor, Sharpe und Lintner entwickelt und 1960 vorgestellt wurde. Sie sagt im Prinzip aus, dass der Anleger bei höherem Risiko einen höheren Ertrag erwartet. Aus dem CAPM lassen sich noch weitere Erkenntnisse ableiten, die aber in diesem Zusammenhang keine Rolle spielen, können aber unter der oben genannten Literaturquelle nachgeschlagen werden Theoretische Grundlagen Das Capital Asset Pricing Model beschreibt die Rendite der Anlage R A in linearer Abhängigkeit der Marktrendite der R M, seiner Empfindlichkeit bezüglich Bewegungen des Marktes β (Marktrisiko) und des nicht näher bestimm- oder eliminierbaren Risikos ε. Der CAPM unterscheidet also zwischen systematischem und unsystematischem Risiko. Damit für den Ertrag R A der Anlage A folgende Formel: 8

9 Einleitung - Theoretische Grundlagen R A = β A * R M + ε A Da β die Größe ist, die die Sensitivität der Anlage zum Markt bzw. dessen Korrelation mit dem Markt ausdrückt, hat sie entscheidenden Einfluss auf die Rendite der Anlage: Ist sie größer als eins, reagiert die Anlage stark auf die Marktentwicklung. Kleiner als eins bedeutet, dass die Anlage gering auf die Marktentwicklung reagiert. Ist sie im negativen Bereich, so verhält sich die Rendite des Papiers invers zur Marktrendite: der Wert des Papiers steigt, wenn der Markt fällt. Hieraus lassen sich grundlegende Spekulationsüberlegungen ableiten: Wird erwartet, dass der Markt steigt, sollte in ein Wertpapier investiert werden, welches ein möglichst großes β aufweist. Bei einer erwarteten Marktbaisse sollte in eine Anlage investiert werden, dessen β im negativen Bereich liegt, um so durch die negative Korrelation eine positive Rendite zu erzielen. Die Herangehensweise zur Bestimmung der einzelnen Größen ist einfach: über einen Zeitraum t werden die einzelnen Preise einer Anlage gesammelt. Die Gerade, die den geringsten Abstand zu allen Punkten hat, ist die grafische Repräsentation des CAPM für die fiktive Anlage und damit ist β als einziger linearer Faktor im CAPM die Steigung der Geraden (Abb. 2.1): t Abb. 2.1: Rendite als Gerade einer fiktiven Anlage Der Abstand zwischen der Geraden und den einzelnen tatsächlichen Preisen ist als nicht näher bestimmbare Abweichung oder als das unsystematische Risiko ε definiert. 9

10 Einleitung - Theoretische Grundlagen Je geringer dieses Hintergrundrauschen ist, desto präziser oder hochwertiger gilt die Formel. Die Firma APT bezeichnet diese nicht systematisch und damit nicht errechenbare Größe als residual. Eine risikoreiche Anlage hat einen großen Anteil an unbestimmten Risikoeinflüssen, daher ist dieser Wert für solche Anlagen vergleichsweise groß. Die errechneten Werte gelten für den Augenblick -mit voranschreitender Zeit aber verlieren sie an Aussagekraft. Der CAPM hat den entscheidenden Nachteil, dass von einem Marktgleichgewicht ausgegangen wird, da die Summe aller Einzelrenditen die Marktrendite ergeben soll, ansonsten wäre β nicht bestimmbar. Da ein Marktgleichgewicht einen in sich geschlossenen Markt voraussetzt, was mitunter bedeutet, dass Transfers aus oder in den Markt nicht erlaubt sind, ist die Aussagekraft des CAPM sehr beschränkt. An diesem Kritikpunkt setzt das Arbitrage Pricing Model (APM), entwickelt von Stephen Ross, an: als Gegensatz zum Ein-Faktor-Modell CAPM versucht sie neben dem anlagentypischen β, die Motivatoren des Marktes zu finden, indem R M und β A als eine Linearkombination von Faktoren dargestellt werden: R A = Summe i (β Ai * M i) + ε i Im Kern beschreibt die Theorie die Rendite einer Anlage R A anhand einzelner Marktfaktoren M i, die Sensitivität der Anlage zu diesen Marktfaktoren β Ai, sowie dem unvermeidbaren Risiko ε. Ein Marktfaktor ist ein Faktor, der einen bestimmten Einfluss auf eine Anlage ausübt und Teil des Marktes ist. Der Grad dieses Einflusses wird durch das dazugehörige β dargestellt. Für den Spezialfall des Marktgleichgewichts ist β A * R M = Summe i (β Ai * M i) Die Errechnung der einzelnen Marktfaktoren M i ist nicht trivial, da hierzu historische Daten als Vorlage dienen. Hierzu werden Muster in den Anlagenbewegungen gesucht. Gleichzeitige Preisentwicklungen von Anlagen, sowohl ins Negative, als auch ins Positive, deuten auf die Einwirkung eines Marktfaktors an. 10

11 Einleitung - Theoretische Grundlagen Abb. 2.2: Relative Kursentwicklungen von vier Anlagen über einen Zeitraum t Ein Ausschlag einer Kurve in Abb. 2.2 nach oben bedeutet, dass die jeweilige Anlage an Wert gewonnen hat, während aus einem Ausschlag nach unten das Gegenteil eingetroffen ist. Um einen Marktfaktor zu identifizieren, müssen alle (marktrelevanten) Anlagen auf synchrone Bewegungen hin analysiert werden. Ein Marktfaktor gilt als wahrscheinlich, wenn eine Reihe von Anlagen zur gleichen Zeit eine Kursentwicklung aufweist, wobei die Richtung der Bewegung keine Rolle spielt, da Anlagen durchaus auch negativ mit dem Markt korrelieren können. Die senkrechten Balken in Abb. 2.2 stellen Markierungen für jeweils einen Marktfaktor dar. Es lässt sich erkennen, dass Anlage 1 mindestens von den Marktfaktoren M 1, M 2, M 3, M 4 und M 5 anhängt. Mindestens deshalb, da auch noch weitere, hier nicht identifizierte Marktanlagen existieren können, die einen Einfluss auf die Anlage haben. Anlage 2 hängt mindestens von dem Marktfaktor M 4 ab. Anlage 6 von den Marktfaktoren M 1, M 3 und M 6. 11

12 Einleitung - Theoretische Grundlagen Abb. 2.3: Identifizierte Marktfaktoren M1-M6 Doch was für das menschliche Auge mit Hilfe solcher Graphen offensichtlich wird, bedeutet für die maschinelle Verarbeitung, dass die Kursbewegungen jeder Anlage mit jeder anderen Anlage verglichen und auf synchrone Bewegungen hin analysiert werden müssen. Die zu verarbeitenden Datenmengen sind gigantisch: bei einer Grundmenge von nur Anlageformen ergeben sich demnach für einen Zeitpunkt und Anlage * /2 = zu untersuchende Datensätze. Grund: jede Anlage muss mit jeder Anlage verglichen werden, außer sich selbst. Bei n Anlagen sind: n * (n-1) Vergleiche notwendig. Zudem sind die Vergleiche symmetrisch, daher gilt. M(A1, A2) M(A2, A1) Aufgrund der Symmetrie halbiert sich die Menge der zu untersuchenden Datensätze. Idealer Weise sollten alle handelbaren Anlagen in diese Analyse eingebunden werden, was der Grund dafür ist, warum das Arbitrage Pricing Model bis 1983 praktisch keine 12

13 Einleitung - Theoretische Grundlagen Anwendung fand. Zum Vergleich: die Firma APT verarbeitet zurzeit rund Anlagen, die auf etwa * = Vergleiche pro Zeitpunkt und Anlage hinauslaufen. APT entwickelte als eine der ersten Unternehmen 1983 eine praktische Umsetzung des APM. Sie hat zu diesem Zweck ein Verfahren aus dem Militärbereich für Sonardatenanalysen adaptiert, das ursprünglich Muster im Hintergrundrauschen des Meeres finden sollte, um U-Boote aufzuspüren. Dieser Algorithmus, der Synchronitäten in Sonardaten effizient finden konnte, wurde von APT modifiziert, um gleichartige Kursentwicklungen zu finden und daraus eine Folge von Faktoren abzuleiten, die im Endergebnis zu einem hohen Prozentsatz die Entwicklungen der Graphen wie in Abb. 2.1 und Abb. 2.2 beschreiben. Da die Faktoren selbst aus den Kursbewegungen fast aller handelbaren Anlagen hergeleitet sind, lässt sich für jede Anlage eine lineare, gewichtete Beziehung von Faktoren herstellen, wie die in Abb. 2.3, die die Anlage repräsentiert. Diese Gewichte nennt man anlehnend an das Single Factor Model CAMP Betas, in der APM-Formel durch β Ai vertreten. Abb. 2.3: Die Zusammensetzung der Marktfaktoren von Yen. 13

14 Einleitung - Aufgabenstellung Da die Anlagen, und damit die Marktfaktoren, sich im ständigen Wandel befinden, müssen sie in regelmäßigen Abständen aktualisiert werden. Da die Berechnung der Marktfaktoren immer noch viel Rechenkapazität voraussetzt, werden sie zentral errechnet und in einer Datenbank an die Kunden verteilt. Diese Datenbank, die Factor Database (FDB), die die Faktorisierungen einer großen Zahl von Anlagen auf dem Weltmarkt beinhaltet, gilt es mit den hausinternen Datenbeständen zu verbinden. Auf Basis dieser Zuordnung kann anschließend eine detaillierte Risikoanalyse von Anlagen und Portfolios durchgeführt werden Aufgabenstellung Die Factor Database (FDB) ist keine Datenbanksoftware im eigentlichen Sinne -sie unterstützt kein SQL. Vom Prinzip her ist sie lediglich eine Tabelle vielen Spalten und rund Zeilen, die monatlich aktualisiert wird. Der Zugriff auf diese Datenbank erfolgt über beispielsweise über ein Modul namens APTxVaR. Das Modul bietet, sobald ihr eine solche Datenbank zugewiesen worden ist, eine ganze Reihe von Funktionen zur Risikokontrolle und Abschätzung an: Tracking Error [TRKERR], Marginal Risk [MARRSK], Volatility [VOL] und Value at Risk. Value at Risk ist die Größe, um die es in diesem Projekt wirklich geht. Sie ist ein relativer oder absoluter Wert, der angibt, wie viel Geld innerhalb einer bestimmten Zeit t und einer bestimmten Sicherheit c verloren werden kann. Eine VaR von 5% bei t=20 Tagen und c=0.96 bedeutet, dass 5% des Nettowertes innerhalb von 20 Tagen bei aktueller Zusammensetzung der Anlagen mit 96-prozentiger Wahrscheinlichkeit verloren werden kann, es besteht also nur eine 4% Chance, mehr als 5% innerhalb von 20 Tagen zu verlieren. Das APTxVAR Modul verwendet zur Berechnung des VaR eine Monte Carlo Simulation, indem intern Marktfaktoren manipuliert werden und ihre Auswirkung auf die Anlagen des Portfolios übertragen werden. Das APT System ist geschlossen, der Zugriff auf die Daten der Datenbank ist ausschließlich über eines der angebotenen Modulschnittstellen möglich. Die 14

15 Vorbereitungen - Aufgabenstellung Hauptkomponente APTxVAR stellt Methoden zu Berechnungen zur Verfügung, auf Basis der verknüpften Faktor-Datenbank umgesetzt werden. Das Modul APTFactorDBReader kann Suchanfragen in der Factor Database durchführen. Das Modul APTUDBEditor dient zur Speicherung von ergänzenden Daten wie Anleihen (Bonds) und Swaps, die ansonsten keine Repräsentation in der FDB haben. Da das APT System nur mit den eigenen Daten, den Marktfaktoren, arbeiten kann, ist es Aufgabe des Entwicklers, die durch die Module bereitgestellten Funktionen in die firmeninterne Softwareumgebung und Datenhaltung nahtlos zu integrieren. Hierzu ist es notwendig, einen korrekten Wissens-, Daten- und Informationstransfer zwischen den Systemen sicherzustellen, um die Daten auch im APT Umfeld korrekt repräsentieren zu können. Hierzu zählen vor allem zwei Dinge: Instrumente, die als Berechnungsgrundlage dienen sollen, müssen vorher in eine von APT spezifizierte Form transformiert werden [APT02]. Zusätzlich muss sichergestellt sein, dass die Instrumente in der FDB wieder gefunden werden, da ansonsten keine Repräsentation der Marktfaktoren verfügbar ist. In so einem Fall muss ein Stellvertreter (Proxy) aus der FDB für das Instrument ausgewählt werden. Daher der Anwender Möglichkeiten haben, auftretende Probleme beheben zu können. Welche das sind, wird im folgenden Kapitel erläutert. 3. Vorbereitungen Zu den Grundstrategien dieses Projekts gehört das teile und herrsche Prinzip (Divide and Conquer [DAC]): wo es immer möglich ist, wird die Aufgabenkompetenz der Komponente/ Klasse so klein wie möglich gehalten, um so zeitgleich die Komplexität und den Implementierungsaufwand zu reduzieren. Die einzelnen Teilkompetenzen werden dabei so definiert, dass sie in ihrer Gesamtheit in der Lage sind, die geforderten Aufgaben möglichst unabhängig zu erfüllen. Da aber zu Beginn kaum absehbar ist, welche Teilkompetenzen am besten geeignet sind, um eine möglichst leicht verständliche, effiziente und flexible Lösung zu erhalten, nähern wir uns Schritt für Schritt an. 15

16 Vorbereitungen - Aufgabenstellung Der Kernbereich des Projektes besteht in den Berechnungen, die Teils automatisiert ablaufen sollen. Das System soll VaR, Volatilität und Beta errechnen können. Anhand der Anforderungen werden die grundlegenden Anwendungsfälle, Use Cases, geleitet. Auf Basis dieser Spezifikation wird die grundlegende Funktionsfähigkeit und der Berechnungsprozess des APT Moduls ergründet, indem ein Prototyp implementiert wird. Die Problematiken dieser ersten Erfahrungen dienen anschließend als Vorlage und Wertmaß der verschiedenen Lösungsansätze des Endprodukts. Bevor aber mit der Implementierung des Endprodukts begonnen wird, fließen die gewonnenen Erkenntnisse in eine neue Anwendungsfall- Spezifikation zusammen, Abb In der Grafik sind drei Aktoren eingetragen, denen eine unterschiedliche Rolle zugeteilt ist: Der Entwickler ist nur an einer Aktion beteiligt. Er ist dafür verantwortlich, dass Daten korrekt an das APT System weitergegeben werden. Da es einerseits den zeitlichen Rahmen sprengen würde, alle denkbaren Instrumente zu implementieren und andererseits neue, oder Variationen alter Instrumente im Portfolio auftauchen können, wird es notwendig werden, das Programm zu erweitern, damit es auch die neuen Instrumente korrekt verarbeiten kann. Hieraus ergibt sich die Notwendigkeit, dass das Programm modular aufgebaut sein muss und somit leicht mit zusätzlichen Funktionalitäten erweitert werden kann. Der Verwalter ist der Initiator für eine Reihe von Aufgaben. Er kann Berechnungen wie Value at Risk, Beta oder die Volatilität durchführen und ist zudem für die Fehler- und Ausnahmebehandlung zuständig, sofern es sich dabei nicht um technische handelt. Hierzu zählt die Zuweisung von Proxies, wenn notwendig (siehe Prototyp) und die Verwaltung der nächtlichen Aufgaben des Systems. Die Bedienung wird durch eine Webseite erfolgen. 16

17 Vorbereitungen - Aufgabenstellung Abb. 3.1: Die acht geplanten Anwendungsfälle der Applikation. 17

18 Vorbereitungen - Aufgabenstellung Der letzte Aktor, das System, symbolisiert die automatisierte Abarbeitung von Aufgaben. Hierzu gehören insbesondere die nächtliche Berechnung des Value at Risk und die Validierung der Verknüpfungen der sich täglich ändernden Datensätze der Firmendatenbank Data Warehouse (DW), siehe Kapitel Datenbasis. Automatisch ablaufende Programme werden hier als Agenten bezeichnet. Ein solcher wird zum Beispiel für die Aktualisierung der APT Datenbank zuständig sein (siehe Beispiel einer Worker-Klasse). Die unterschiedlichen Aufgabengebiete und Perspektiven der Aktoren legen bereits eine verteilte Architektur nahe: Abb Ein Programm, das für die allgemeine Verarbeitung zuständig ist, eine grafische Oberfläche zur Steuerung dieses Programms und eine kleine Konsolenanwendung, welche ebenfalls das Kernprogramm benutzt, um seine automatisierte Aufgabe zu erfüllen. Wie bei jeder verteilten Anwendung, stellt sich auch hier die Frage, wie die verschiedenen Komponenten miteinander kommunizieren sollen. Neben ferngesteuerten Prozeduraufrufen (RMI) oder selbst definierten Protokollen eignen sich auch HTTP basierende Protokolle wie SOAP [SOAP] für die Lösung dieser Aufgabe. Da in der Firmenumgebung Web Services bereits im Einsatz sind, werden auch die Komponenten über diese Methode miteinander interagieren. Ein Web Service ist im Prinzip eine minimalisierte Webseite, dessen Ausgabe nicht für den Menschen, sondern für die maschinelle Verarbeitung gedacht ist, wenngleich manche Browser wie der Internet Explorer [IE] diese Daten auch strukturiert darstellen können. Der Webserver produziert basierend auf einer Anfrage eine XML Ausgabe, die von einem beliebigen Clientprogramm auswertet werden kann. Die Kommunikation mit einem Web Service erfolgt unter.net [DOTNET] transparent: sofern ein Kommunikations-Client vorhanden ist, unterscheidet sich der Aufruf einer Web Service Methode nicht von einem normalen Methodenaufruf. 18

19 Vorbereitungen - Aufgabenstellung Abb. 3.2: Erster Entwurf des Systems Die Windows Communication Foundation (WCF) entwickelt das Konzept weiter: denn während normale Web-Dienste nur primitive Datenstrukturen wie String, Double, Int etc. transportieren können, ist es mit dieser Klassenbibliothek möglich, komplexe Objekte auszutauschen, die dann innerhalb der Anwendung weiterverwendet werden können. Hierzu werden von dem Clientgenerator von Visual Studio [WEBREF], neben der Client-Klasse auch Proxy-Objekte erstellt, die die Objekte der Serverseite hinsichtlich deren Attribute widerspiegeln. Diese Proxy-Objekte sind jedoch nicht mit den Proxies im 19

20 Vorbereitungen - Grundlagen der Entwicklungsumgebung Zusammenhang mit der APT Datenbank zu verwechseln, denn die sind zugewiesene Stellvertreter nicht gefundener Instrumente Grundlagen der Entwicklungsumgebung C# [CSHRP] wird von Microsoft als eine Weiterentwicklung des betagten C++ verstanden. Die Wurzel von C# liegt in J# [JSHRP], also in der von Microsoft entwickelten Java Variante. Daher ist C# technisch wenig mit C++ verwandt, da ihre Urform auf der Java-Engine von Microsoft basiert. Hinsichtlich Performance, Speicherverbrauch und Sprachstruktur ist sie folglich eher mit Java als mit C++ vergleichbar. C# wird genau so wie Java- in Bytecode übersetzt und über die.net Runtime ausgeführt. Hinsichtlich Zweck und Funktion ist die.net Runtime mit der Java Virtual Machine (JVM) vergleichbar. Microsoft hat C# um Sprachmerkmale erweitert, die ursprünglich aus C++ stammen. Diese war notwendig, damit jede Windowskomponente mit C# herstellbar ist und damit C# C++ in absehbarer Zeit auf Anwendungsebene ablösen kann. Neben den üblichen Programmen wie Konsolenanwendungen, Formularapplikationen, Windows Diensten und Bibliotheken lassen sich auch Webserver, Web Services und dynamische Webseiten mit C# programmieren. Letztere Aufgabe wird durch eine Erweiterung namens ASP.NET [ASPNET] unterstützt. Eine Besonderheit von C# ist die partial Klasse. Hierbei handelt es sich um eine verteilte Klasse: wird eine Klasse mit diesem Schlüsselwort markiert, kann sie aus einem beliebigen Teil des Quellcodes heraus um Attribute und Methoden erweitert werden. Dabei handelt es sich nicht um Ableitung oder Vererbung, da die Klasse faktisch erweitert wird. Intern tut der Compiler so, als würde der Inhalt beider Dateien in einer Datei geschrieben worden sein. Methoden und Attribute von partial Klassen können in unterschiedlichen Modulen implementiert werden. Diese Klassen werden vor allem in ASP.NET Webseiten verwendet; der Compiler setzt bei Formularen und Controls versteckten Code in die eigene Datei ein, was zu schwer nachvollziehbaren Nebenwirkungen führen kann. 20

21 Vorbereitungen - Konventionen während der Entwicklung Das partial Schlüsselwort ist ein grundlegendes Architekturmerkmal von ASP.NET und daher unvermeidbar. Aufgrund der absehbaren Schwierigkeit, den verteilter Code verursachen kann, werden in dem Projekt ansonsten keine Klassen dieses Typs verwendet. Operatorüberladungen und Makros, in C# als Compiler Tags bekannt, sind Methodologien, die aus C++ abgeleitet wurden. Eine Besonderheit hingegen ist der Unterschied zwischen Felder einer Klasse und Eigenschaften (Attribute) einer Klasse: 1. class Fahrzeug { 2. private String name; // Attribut der Klasse public String Name { // Feld der Klasse 5. get { return name; } 6. set { name = value; } 7. } 8. } Attribute dienen zur Speicherung von Daten innerhalb der Klasse und sind nur lokal (oder in den Kindelementen) abrufbar. Felder sind dazu gedacht, den Zugriff auf das Attribut zu kontrollieren und gegebenenfalls bestimmte Aktionen bei Zuweisung oder Abruf auszulösen. Sie sind die Akzessoren von Attributen, oder umgangssprachlich ausgedrückt, nehmen sie den Platz von Get- und Set-Methoden ein [GESE]. Felder können daher sowohl in einem lesenden als auch in einem schreibenden Terminus definiert werden, indem der entsprechende Absatz einfach weggelassen wird Konventionen während der Entwicklung Da verschiedene Entwickler früher oder später den Quellcode des Projektes lesen und bearbeiten müssen, ist es unabdingbar, gemeinsame Standards festzulegen und einzuhalten, damit im Notfall der Quelltext von Jedermann bearbeitet werden kann. Hinsichtlich Stil und Konvention gelten daher innerhalb der Firma und des Projektes einheitliche Regeln, die im Großen und Ganzen von den Richtlinien angeleitet sind, die Microsoft empfiehlt. 21

22 Vorbereitungen - Konventionen während der Entwicklung Bei Namensräumen gilt als Ergänzung, dass aus jeder Tiefenebene automatisch auch ein Ordner mit gleichem Namen folgt und umgekehrt. Zusätzlich gilt (wie in Java), dass pro Datei nur eine Klasse definiert sein darf und der Dateiname dem Klassennamen entsprechen muss. Innere Klassen sind die einzigen Ausnahmen, wobei ihr Geltungsbereich nicht die Dateigrenzen überschreiten darf. Hinsichtlich Groß- Kleinschreibung gilt: Entität -> erster Buchstabe groß Klassen -> erster Buchstabe groß Eigenschaften -> erster Buchstabe klein Methoden -> erster Buchstabe groß Objektinstanzen -> erster Buchstabe klein Felder -> erster Buchstabe groß ASP-ID -> erster Buchstabe klein Passend zur einheitlichen Nomenklatur, wird auch eine einheitliche Namensgebung der Klassen bevorzugt. Einige dieser Klassen können nicht instantiiert werden. Das hat vor allem zwei Gründe: - Es besteht in dem Zusammenhang kein Grund/ kein Vorteil darin, eine Instanz dieses Objekts erstellen zu können. - Vererbung ist nicht notwendig/ vorgesehen (zusätzlich zu 1) Statische Methoden und Klassen sind in parallelen Anwendungen mit Vorsicht zu verwenden. Statische Methoden können in parallelisierten Umgebungen bedenkenlos eingesetzt werden, solange sie ihrerseits keine statische Variable benutzen. Bei der Verwendung von statischen Variablen ist in Multi-Threading Anwendungen höchste Vorsicht geboten. Der Vorteil statischer Methoden ist die problemlose Adressierung: die Klasse einer statischen Methode muss nicht vor Verwendung instantiiert werden, sie kann direkt über den Klassennamen angesprochen und ausgeführt werden: <Klassenname>.<Methode>(<Parameterliste>) 22

PIWIN I. Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I. Vorlesung 3 SWS WS 2007/2008

PIWIN I. Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I. Vorlesung 3 SWS WS 2007/2008 PIWIN I Kap. 7 Objektorientierte Programmierung - Einführung 1 PIWIN I Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I Vorlesung 3 SWS WS 2007/2008 FB Informatik

Mehr

Integration Services - Dienstarchitektur

Integration Services - Dienstarchitektur Integration Services - Dienstarchitektur Integration Services - Dienstarchitektur Dieser Artikel solle dabei unterstützen, Integration Services in Microsoft SQL Server be sser zu verstehen und damit die

Mehr

Willkommen zur Vorlesung. Objektorientierte Programmierung Vertiefung - Java

Willkommen zur Vorlesung. Objektorientierte Programmierung Vertiefung - Java Willkommen zur Vorlesung Objektorientierte Programmierung Vertiefung - Java Zum Dozenten Mein Name: Andreas Berndt Diplom-Informatiker (TU Darmstadt) Derzeit Software-Entwickler für Web- Applikationen

Mehr

UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18

UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18 UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18 Software Testing Automatisiert Manuell 100% 70% 1 Überwiegender Teil der Testing Tools fokusiert auf automatisiertes Testen Microsoft

Mehr

Softwaretechnik (Medieninformatik) Überblick: 6. Objektorientiertes Design

Softwaretechnik (Medieninformatik) Überblick: 6. Objektorientiertes Design Softwaretechnik (Medieninformatik) Überblick: 6.1 Einleitung 6.2 Verfeinerung des Klassenmodells 6.3 Sequenzdiagramme 6.4 Umsetzung der Analysekonstrukte in das Design 6.5 Fallstudie 6.6 Software Kontrakte

Mehr

Java Einführung Methoden in Klassen

Java Einführung Methoden in Klassen Java Einführung Methoden in Klassen Lehrziel der Einheit Methoden Signatur (=Deklaration) einer Methode Zugriff/Sichtbarkeit Rückgabewerte Parameter Aufruf von Methoden (Nachrichten) Information Hiding

Mehr

ALM mit Visual Studio Online. Philip Gossweiler Noser Engineering AG

ALM mit Visual Studio Online. Philip Gossweiler Noser Engineering AG ALM mit Visual Studio Online Philip Gossweiler Noser Engineering AG Was ist Visual Studio Online? Visual Studio Online hiess bis November 2013 Team Foundation Service Kernstück von Visual Studio Online

Mehr

Technische Beschreibung: EPOD Server

Technische Beschreibung: EPOD Server EPOD Encrypted Private Online Disc Technische Beschreibung: EPOD Server Fördergeber Förderprogramm Fördernehmer Projektleitung Projekt Metadaten Internet Foundation Austria netidee JKU Linz Institut für

Mehr

Tutorium Java Ein Überblick. Helge Janicke

Tutorium Java Ein Überblick. Helge Janicke Tutorium Java Ein Überblick Helge Janicke 26. Oktober 2000 1 VORRAUSSETZUNGEN ZUM PROGRAMMIEREN MIT JAVA. 1 1 Vorraussetzungen zum Programmieren mit Java. Was braucht man, wenn man mit Java programmieren

Mehr

Grundlagen der Verwendung von make

Grundlagen der Verwendung von make Kurzskript zum Thema: Grundlagen der Verwendung von make Stefan Junghans Gregor Gilka 16. November 2012 1 Einleitung In diesem Teilskript sollen die Grundlagen der Verwendung des Programmes make und der

Mehr

PIWIN 1 Übung Blatt 5

PIWIN 1 Übung Blatt 5 Fakultät für Informatik Wintersemester 2008 André Gronemeier, LS 2, OH 14 Raum 307, andre.gronemeier@cs.uni-dortmund.de PIWIN 1 Übung Blatt 5 Ausgabedatum: 19.12.2008 Übungen: 12.1.2009-22.1.2009 Abgabe:

Mehr

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck Javadoc Programmiermethodik Eva Zangerle Universität Innsbruck Überblick Einführung Java Ein erster Überblick Objektorientierung Vererbung und Polymorphismus Ausnahmebehandlung Pakete und Javadoc Spezielle

Mehr

Zeiterfassung-Konnektor Handbuch

Zeiterfassung-Konnektor Handbuch Zeiterfassung-Konnektor Handbuch Inhalt In diesem Handbuch werden Sie den Konnektor kennen sowie verstehen lernen. Es wird beschrieben wie Sie den Konnektor einstellen und wie das System funktioniert,

Mehr

Objektorientierte Programmierung. Objektorientierte Programmierung. Klasse. Objekt. Beispiel: Sportfest1. Methode. Eine Einführung mit BlueJ

Objektorientierte Programmierung. Objektorientierte Programmierung. Klasse. Objekt. Beispiel: Sportfest1. Methode. Eine Einführung mit BlueJ Objektorientierte Programmierung Objektorientierte Programmierung Eine Einführung mit BlueJ stellt die Daten, ihre Struktur und ihre Beziehungen zueinander in den Vordergrund. Weniger im Blickpunkt: die

Mehr

Von der UML nach C++

Von der UML nach C++ 22 Von der UML nach C++ Dieses Kapitel behandelt die folgenden Themen: Vererbung Interfaces Assoziationen Multiplizität Aggregation Komposition Die Unified Modeling Language (UML) ist eine weit verbreitete

Mehr

4 Vererbung, Polymorphie

4 Vererbung, Polymorphie 4 Vererbung, Polymorphie Jörn Loviscach Versionsstand: 21. März 2014, 22:57 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html This work

Mehr

Klausur Kommunikation I. Sommersemester 2003. Dipl.-Ing. T. Kloepfer

Klausur Kommunikation I. Sommersemester 2003. Dipl.-Ing. T. Kloepfer Kommunikation I 1 Klausur Kommunikation I Sommersemester 2003 Dipl.-Ing. T. Kloepfer Bearbeitungsinformationen Aufbau der Klausur Die Klausur ist wie folgt aufgebaut: Die Klausur ist in 18 Aufgaben unterteilt.

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java objektorientierte Programmierung 2 2 Zusammenhang Klasse-Datei In jeder *.java Datei kann es genau eine public-klasse geben wobei Klassen- und Dateiname übereinstimmen. Es können

Mehr

Analyse und Modellierung von Informationssystemen

Analyse und Modellierung von Informationssystemen Analyse und Modellierung von Informationssystemen Dr. Klaus Höppner Hochschule Darmstadt Sommersemester 2013 1 / 19 Einführung: Entwurfsmuster Erzeugungsmuster Fabrik-Muster Singleton-Muster Beispiel 2

Mehr

3. Konzepte der objektorientierten Programmierung

3. Konzepte der objektorientierten Programmierung 3. Konzepte der objektorientierten Programmierung 3.1 Basiskonzepte 3.2 Generalisierung / Spezialisierung 3.3 Aggregation 3.4 Assoziation 3.5 Nachrichten 3.6 Polymorphismus 3. Konzepte der Objektorientierung

Mehr

Analyse und Modellierung von Informationssystemen

Analyse und Modellierung von Informationssystemen Analyse und Modellierung von Informationssystemen Dr. Klaus Höppner Hochschule Darmstadt Sommersemester 2013 1 / 19 Einführung: Entwurfsmuster Erzeugungsmuster Fabrik-Muster Singleton-Muster Beispiel 2

Mehr

1. Java Grundbegriffe

1. Java Grundbegriffe 1. Java Grundbegriffe Geschichte von Java Programmieren mit Java Interpretieren vs. Kompilieren Java Byte-Code Jave Virtual Machine Arbeitsmaterialien Allgemeine Informatik 2 SS09 Folie 1.1 Java, eine

Mehr

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {... PIWIN I Kap. 8 Objektorientierte Programmierung - Vererbung 31 Schlüsselwort: final Verhindert, dass eine Methode überschrieben wird public final int holekontostand() {... Erben von einer Klasse verbieten:

Mehr

Microsoft Dynamics NAV Technische Details

Microsoft Dynamics NAV Technische Details Microsoft Dynamics NAV Technische Details INHALT Microsoft Dynamics NAV Technische Details........................................ [3] Infrastruktur.............................................. [3] Systemanforderungen.....................................

Mehr

Einführung in das Microsoft.NET-Framework. Programmiersprache C# MEF Das Managed Extensibility Framework. André Kunz

Einführung in das Microsoft.NET-Framework. Programmiersprache C# MEF Das Managed Extensibility Framework. André Kunz Einführung in das Microsoft.NET-Framework Programmiersprache C# MEF Das Managed Extensibility Framework André Kunz 21.09.2010 1 In dieser Einführung bekommen Sie einen kurzen Einstieg in das.net-framework

Mehr

Timo Wagner & Sebastian Kühn Entwurf einer Multi-Tier Anwendung in ASP.NET

Timo Wagner & Sebastian Kühn Entwurf einer Multi-Tier Anwendung in ASP.NET Timo Wagner & Sebastian Kühn Entwurf einer Multi-Tier Anwendung in ASP.NET Überblick 1.Einfürung in die Multi-Tier Architektur 2.Ausgangspunkt und Probleme 3.Rundgang durch die Architektur 4.Architektur

Mehr

1 Einleitung. 1.1 Caching von Webanwendungen. 1.1.1 Clientseites Caching

1 Einleitung. 1.1 Caching von Webanwendungen. 1.1.1 Clientseites Caching 1.1 Caching von Webanwendungen In den vergangenen Jahren hat sich das Webumfeld sehr verändert. Nicht nur eine zunehmend größere Zahl an Benutzern sondern auch die Anforderungen in Bezug auf dynamischere

Mehr

Tabellenkalkulation / Funktionen. VBA Visual Basic for Applications VBA auf einfache Art und Weise nutzen Der Makro-Recorder von EXCEL

Tabellenkalkulation / Funktionen. VBA Visual Basic for Applications VBA auf einfache Art und Weise nutzen Der Makro-Recorder von EXCEL Tabellenkalkulation / Funktionen VBA auf einfache Art und Weise nutzen Der Makro-Recorder von EXCEL Möchte man mal eben einfache Arbeitsschritte automatisieren oder einfach nur Tastatur-eingaben und Mausklicks

Mehr

Selbstbestimmtes Lernen. Proinformatik III Objektorientierte Programmierung. Format. Inhalt. Buzzwords

Selbstbestimmtes Lernen. Proinformatik III Objektorientierte Programmierung. Format. Inhalt. Buzzwords 4.0 Proinformatik III Objektorientierte Programmierung Michael Kölling University of Kent Canterbury, UK Selbstbestimmtes Lernen Vorlesung Tutorium Übungen Buch Web-Seite Üben, üben, üben! Format Vorlesung:

Mehr

17.2 MS-Access Projekte

17.2 MS-Access Projekte 964 Von MS-Access 2000 zum SQL-Server 17.2 MS-Access Projekte MS-Access-Projekte, die die Dateiendung adp besitzen, werden als Front-End-Anwendung verwendet. Für die Back-End-Seite gibt es mehrere Möglichkeiten.

Mehr

Ausarbeitung des Interpreter Referats

Ausarbeitung des Interpreter Referats Ausarbeitung des Interpreter Referats Gliederung 1. Programmiersprache 1.2. Syntax 1.2.1. Konkrete Syntax 1.2.2. Abstrakter Syntax Baum (Abstrakte Syntax) 2. Parser 2.1. Syntaktische Struktur einer Sprache

Mehr

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Dateiname: ecdl5_01_00_documentation_standard.doc Speicherdatum: 14.02.2005 ECDL 2003 Basic Modul 5 Datenbank - Grundlagen

Mehr

Einführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005

Einführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005 Einführung in die objektorientierte Programmierung mit Java Klausur am 19. Oktober 2005 Matrikelnummer: Nachname: Vorname: Semesteranzahl: Die Klausur besteht aus drei Frageblöcken zu den Inhalten der

Mehr

Projekt AGB-10 Fremdprojektanalyse

Projekt AGB-10 Fremdprojektanalyse Projekt AGB-10 Fremdprojektanalyse 17. Mai 2010 1 Inhaltsverzeichnis 1 Allgemeines 3 2 Produktübersicht 3 3 Grundsätzliche Struktur und Entwurfsprinzipien für das Gesamtsystem 3 3.1 Die Prefuse Library...............................

Mehr

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221 Oracle 10g und SQL Server 2005 ein Vergleich Thomas Wächtler 39221 Inhalt 1. Einführung 2. Architektur SQL Server 2005 1. SQLOS 2. Relational Engine 3. Protocol Layer 3. Services 1. Replication 2. Reporting

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

7 Dateien und Datenströme (Streams)

7 Dateien und Datenströme (Streams) 7 Dateien und Datenströme (Streams) Jörn Loviscach Versionsstand: 21. März 2014, 22:57 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html

Mehr

Inhalt: Version 1.7.5

Inhalt: Version 1.7.5 Inhalt: Objekte ohne Methoden Objekte mit einfachen Methoden Objekte und Methoden mit Parametern Objekte und Methoden mit Rückgabewert Objekte mit einem Array als Attribut Beziehungen zwischen Objekten

Mehr

Einführung in die Programmierung mit Java. Hörsaalübung

Einführung in die Programmierung mit Java. Hörsaalübung Einführung in die Programmierung mit Java Hörsaalübung Folie 1 Grundlagen der Objektorientierung Seit Anfang der Neunzigerjahre Standardmethode der Softwareentwicklung. Die OOP Objektorientierte Programmierung

Mehr

Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik

Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik Programmieren I Die Programmiersprache Java KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Eigenschaften von Java Java ist eine

Mehr

Die Bedeutung abstrakter Datentypen in der objektorientierten Programmierung. Klaus Kusche, September 2014

Die Bedeutung abstrakter Datentypen in der objektorientierten Programmierung. Klaus Kusche, September 2014 Die Bedeutung abstrakter Datentypen in der objektorientierten Programmierung Klaus Kusche, September 2014 Inhalt Ziel & Voraussetzungen Was sind abstrakte Datentypen? Was kann man damit grundsätzlich?

Mehr

Der Investitionsbereich ist nicht mehr sektoriell sondern deckt potentiell alle Sektoren des MSCI Europe Index;

Der Investitionsbereich ist nicht mehr sektoriell sondern deckt potentiell alle Sektoren des MSCI Europe Index; SCHREIBEN AN DIE ANTEILEINHABER DES INVESTMENTFONDS AMUNDI ETF MSCI EUROPE IT UCITS ETF Paris, den 2. Januar 2014 Sehr geehrte Damen und Herren! Als Anteileinhaber des Investmentfonds AMUNDI ETF MSCI EUROPE

Mehr

Objektorientierte Programmierung. Kapitel 12: Interfaces

Objektorientierte Programmierung. Kapitel 12: Interfaces 12. Interfaces 1/14 Objektorientierte Programmierung Kapitel 12: Interfaces Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2012/13 http://www.informatik.uni-halle.de/ brass/oop12/

Mehr

Kapitel 3 Das Projekt Bankkonto Seite 1

Kapitel 3 Das Projekt Bankkonto Seite 1 Kapitel 3 Das Projekt Bankkonto Seite 1 3 Das Projekt Bankkonto Nun wirst du dich etwas gründlicher mit dem Quelltext einer Klasse beschäftigen. Du lernst, wie zwei Objekte eine gemeinsame Aufgabe erledigen.

Mehr

AJAX SSL- Wizard Referenz

AJAX SSL- Wizard Referenz AJAX SSL- Wizard Referenz Version 1.0.2+ - 04.04.2011 Präambel Die vorliegende Dokumentation beschreibt den AJAX basierten SSL- Wizard der CertCenter AG. Der SSL- Wizard kann mit wenigen Handgriffen nahtlos

Mehr

Programmieren I. Strategie zum Entwurf von Klassen. Beispiele. Design von Klassen. Dr. Klaus Höppner. Beispiel: Bibliothek

Programmieren I. Strategie zum Entwurf von Klassen. Beispiele. Design von Klassen. Dr. Klaus Höppner. Beispiel: Bibliothek Programmieren I Dr. Klaus Höppner Hochschule Darmstadt Wintersemester 2008/2009 1 / 22 2 / 22 Strategie zum Entwurf von Klassen Beispiele Objektorientierte Sichtweise: Mit welchen Objekten habe ich es

Mehr

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12 Grundlagen: Folge 19 - Bäume 19.1 Binärbäume - Allgemeines Unter Bäumen versteht man in der Informatik Datenstrukturen, bei denen jedes Element mindestens zwei Nachfolger hat. Bereits in der Folge 17 haben

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

Internetprotokolle: POP3. Peter Karsten Klasse: IT7a. Seite 1 von 6

Internetprotokolle: POP3. Peter Karsten Klasse: IT7a. Seite 1 von 6 Internetprotokolle: POP3 Peter Karsten Klasse: IT7a Seite 1 von 6 Alle Nachrichten, die auf elektronischem Weg über lokale oder auch globale Netze wie das Internet verschickt werden, bezeichnet man als

Mehr

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Suche schlecht beschriftete Bilder mit Eigenen Abfragen Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere

Mehr

Zustandsgebundene Webservices

Zustandsgebundene Webservices Zustandsgebundene Webservices Präsentation ausgewählter Problemstellungen der Informatik Markus Oertel oer@uni-paderborn.de Universität Paderborn 25. September 2005 Zustandsgebundene Webservices Seite

Mehr

C++ - Einführung in die Programmiersprache Polymorphismus und Vererbung. Eltern

C++ - Einführung in die Programmiersprache Polymorphismus und Vererbung. Eltern C++ - Einführung in die Programmiersprache Polymorphismus und Vererbung Eltern Kind Kind Vererbung Definition von Klassen auf Basis von bestehenden Klassen. Implementierung von ist ein. bildet ein hierarchisches

Mehr

.NET-Networking 2 Windows Communication Foundation

.NET-Networking 2 Windows Communication Foundation .NET-Networking 2 Windows Communication Foundation Proseminar Objektorientiertes Programmieren mit.net und C# Fabian Raab Institut für Informatik Software & Systems Engineering Agenda Grundproblem Bestandteile

Mehr

Dokumentation zur Anlage eines JDBC Senders

Dokumentation zur Anlage eines JDBC Senders Dokumentation zur Anlage eines JDBC Senders Mithilfe des JDBC Senders ist es möglich auf eine Datenbank zuzugreifen und mit reiner Query Datensätze auszulesen. Diese können anschließend beispielsweise

Mehr

einkonto.zahle(+100); //Transaktion Einzahlung einkonto.zahle(-20); //Transaktion Auszahlung einkonto.zahle(+30); //Transaktion Einzahlung

einkonto.zahle(+100); //Transaktion Einzahlung einkonto.zahle(-20); //Transaktion Auszahlung einkonto.zahle(+30); //Transaktion Einzahlung PIWIN I Kap. 7 Objektorientierte Programmierung - Einführung 28 Testklasse public class TestGirokonto { public static void main(string[] args) { // erzeuge neues Konto Girokonto einkonto = new Girokonto();

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Praktikum Internetprotokolle - POP3

Praktikum Internetprotokolle - POP3 Technische Universität Ilmenau Fakultät für Informatik und Automatisierung Institut für Praktische Informatik und Medieninformatik Fachgebiet Telematik/Rechnernetze 19. Mai 2008 1 Aufgabenstellung Praktikum

Mehr

8 Kapitel TypoScript 219

8 Kapitel TypoScript 219 8 Kapitel TypoScript TypoScript gehört zu den umfangreichsten und zugleich wichtigsten Bereichen, die ein TYPO3 Integrator beherrschen muss. Nahezu die gesamte Erstellung einer Website, angefangen bei

Mehr

Konzepte zur Datenhaltung für Webseiten in einem Web-Content- Management-System

Konzepte zur Datenhaltung für Webseiten in einem Web-Content- Management-System Konzepte zur Datenhaltung für Webseiten in einem Web-Content- Management-System Web-Content-Management-Systeme () dienen dazu, komplexe Websites zu verwalten und den Autoren einzelner Webseiten möglichst

Mehr

Objektorientierte Programmierung mit Python Polymorphismus und Vererbung. Eltern

Objektorientierte Programmierung mit Python Polymorphismus und Vererbung. Eltern Objektorientierte Programmierung mit Python Polymorphismus und Vererbung Eltern Kind Kind Kind Kind Prinzipien der objektorientierten Programmierung Vererbung Strukturierung von Klassen. Oberbegriffe beschreiben

Mehr

Prinzipien Objektorientierter Programmierung

Prinzipien Objektorientierter Programmierung Prinzipien Objektorientierter Programmierung Valerian Wintner Inhaltsverzeichnis 1 Vorwort 1 2 Kapselung 1 3 Polymorphie 2 3.1 Dynamische Polymorphie...................... 2 3.2 Statische Polymorphie........................

Mehr

ESB - Elektronischer Service Bericht

ESB - Elektronischer Service Bericht Desk Software & Consulting GmbH ESB - Elektronischer Service Bericht Dokumentation des elektronischen Serviceberichts Matthias Hoffmann 25.04.2012 DESK Software und Consulting GmbH Im Heerfeld 2-4 35713

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Java Einführung Programmcode

Java Einführung Programmcode Java Einführung Programmcode Inhalt dieser Einheit Programmelemente Der erste Programmcode Die Entwicklungsumgebung: Sun's Java Software Development Kit (SDK) Vom Code zum Ausführen des Programms 2 Wiederholung:

Mehr

Hello World in Java. Der Weg zum ersten Java-Programm

Hello World in Java. Der Weg zum ersten Java-Programm Vorwort Hello World in Java Der Weg zum ersten Java-Programm Diese Anleitung wurde unter Windows XP verfasst. Grundsätzlich sollte sie auch unter späteren Windows Versionen wie Windows Vista oder Windows

Mehr

Übersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung

Übersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung Übersicht 3.1 Modell Konto 3.2 Modell Konto - Erläuterungen 3.3 Benutzer Ein- und Ausgabe mit Dialogfenster I 3.4 Benutzer Ein- und Ausgabe mit Dialogfenster II 3.5 Klassen- und Objekteigenschaften des

Mehr

PIWIN I. Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I. Vorlesung 3 SWS WS 2008/2009

PIWIN I. Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I. Vorlesung 3 SWS WS 2008/2009 PIWIN I Kap. 8 Objektorientierte Programmierung - Vererbung 1 PIWIN I Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I Vorlesung 3 SWS WS 2008/2009 FB Informatik

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

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

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI Universität Osnabrück Drei-Schichten-Architektur 3 - Objektorientierte Programmierung in Java Vorlesung 6: 3-Schichten-Architektur Fachkonzept - GUI SS 2005 Prof. Dr. F.M. Thiesing, FH Dortmund Ein großer

Mehr

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 2 Datenstrukturen 2.1 Einführung Syntax: Definition einer formalen Grammatik, um Regeln einer formalen Sprache (Programmiersprache) festzulegen.

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

Neuerungen Analysis Services

Neuerungen Analysis Services Neuerungen Analysis Services Neuerungen Analysis Services Analysis Services ermöglicht Ihnen das Entwerfen, Erstellen und Visualisieren von Data Mining-Modellen. Diese Mining-Modelle können aus anderen

Mehr

Software Engineering Klassendiagramme weiterführende Konzepte

Software Engineering Klassendiagramme weiterführende Konzepte Software Engineering Klassendiagramme weiterführende Konzepte Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Klassenattribut: static Implementierung in Java public

Mehr

Seminararbeit Ruby Uno Kartenspiel

Seminararbeit Ruby Uno Kartenspiel Seminararbeit Ruby Uno Kartenspiel Autor: Fabian Merki Fabian Merki 05.11.2006 1 von 10 Inhaltsverzeichnis Einleitung... 3 Die Idee... 4 Design und Implementierung in Ruby... 5 Testing... 7 Startbefehle...

Mehr

Kurs für Microsoft Online Kurs Microsoft Analysten Programmierer

Kurs für Microsoft Online Kurs Microsoft Analysten Programmierer Kurs für Microsoft Online Kurs Microsoft Analysten Programmierer Akademie Domani info@akademiedomani.de Allgemeines Programm des Kurses für Microsoft Modul 1 Basis Programm Erste Lerneinheit Einführung

Mehr

WENDIA ITSM EXPERT TALK

WENDIA ITSM EXPERT TALK WENDIA ITSM EXPERT TALK WENDIA ITSM WHITEPAPER IT SERVICE MANAGEMENT BASISWISSEN: IN EINFACHEN SCHRITTEN ZUR CMDB Wer, Wie, Was: Die CMDB als Herzstück eines funktionierenden IT Service Management Die

Mehr

White Paper. Embedded Treiberframework. Einführung

White Paper. Embedded Treiberframework. Einführung Embedded Treiberframework Einführung White Paper Dieses White Paper beschreibt die Architektur einer Laufzeitumgebung für Gerätetreiber im embedded Umfeld. Dieses Treiberframework ist dabei auf jede embedded

Mehr

Kundenanforderungen. Hochschule Luzern Technik & Architektur. Software Komponenten FS13. Gruppe 03 Horw, 24.05.2013

Kundenanforderungen. Hochschule Luzern Technik & Architektur. Software Komponenten FS13. Gruppe 03 Horw, 24.05.2013 Software Komponenten FS13 Gruppe 03 Horw, 24.05.2013 Bontekoe Christian Estermann Michael Moor Simon Rohrer Felix Autoren Bontekoe Christian Studiengang Informatiker (Berufsbegleitend) Adresse Telefon

Mehr

Einführung in VisualBasic for Applications. Stefan Mahlitz

Einführung in VisualBasic for Applications. Stefan Mahlitz Einführung in VisualBasic for Applications Stefan Mahlitz Stefan Mahlitz Einführung in VBA 27.08.00 Inhaltsverzeichnis 1. Grundlagen der VisualBasic for Applications (VBA) Programmierung...2 1.1 Variablen,

Mehr

Aktuelle Sicherheitsprobleme im Internet: Angriffe auf Web-Applikationen

Aktuelle Sicherheitsprobleme im Internet: Angriffe auf Web-Applikationen FAEL-Seminar Aktuelle Sicherheitsprobleme im Internet: Angriffe auf Web-Applikationen Prof. Dr. Marc Rennhard Institut für angewandte Informationstechnologie InIT ZHAW Zürcher Hochschule für Angewandte

Mehr

Jump Helpdesk. Softwarelösungen für professionelles Servicemanagement

Jump Helpdesk. Softwarelösungen für professionelles Servicemanagement Jump Helpdesk Softwarelösungen für professionelles Servicemanagement Jump Network GmbH 2004-2006 Jump Helpdesk Office Übersichtliche Dokumentenstruktur und schneller Zugriff auf alle wichtigen Funktionen.

Mehr

Liste der Handbücher. Liste der Benutzerhandbücher von MEGA

Liste der Handbücher. Liste der Benutzerhandbücher von MEGA Liste der Handbücher Liste der Benutzerhandbücher von MEGA MEGA 2009 SP4 1. Ausgabe (Juni 2010) Die in diesem Dokument enthaltenen Informationen können jederzeit ohne vorherige Ankündigung geändert werden

Mehr

Erwin Grüner 15.12.2005

Erwin Grüner 15.12.2005 FB Psychologie Uni Marburg 15.12.2005 Themenübersicht Mit Hilfe der Funktionen runif(), rnorm() usw. kann man (Pseudo-) erzeugen. Darüber hinaus gibt es in R noch zwei weitere interessante Zufallsfunktionen:

Mehr

Data Mining-Modelle und -Algorithmen

Data Mining-Modelle und -Algorithmen Data Mining-Modelle und -Algorithmen Data Mining-Modelle und -Algorithmen Data Mining ist ein Prozess, bei dem mehrere Komponenten i n- teragieren. Sie greifen auf Datenquellen, um diese zum Training,

Mehr

Code wiederverwenden: Objektorientierte Programmierung (OOP) sinnvoll nutzen Roland Wagner Automatisierungstreff IT & Automation 2015

Code wiederverwenden: Objektorientierte Programmierung (OOP) sinnvoll nutzen Roland Wagner Automatisierungstreff IT & Automation 2015 Code wiederverwenden: Objektorientierte Programmierung (OOP) sinnvoll nutzen Roland Wagner Automatisierungstreff IT & Automation 2015 CODESYS a trademark of 3S-Smart Software Solutions GmbH Agenda 1 Warum

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

Software Engineering Übung 4 Architektur, Modulentwurf

Software Engineering Übung 4 Architektur, Modulentwurf software evolution & architecture lab Software Engineering Übung 4 Architektur, Modulentwurf 1 Informationen 1.1 Daten Ausgabe Di 27.10.2009 Abgabe So 08.11.2009 bis 23:59 Uhr Besprechung am Di 17.11.2009

Mehr

C# - PROGRAMME MIT PLUGINS ERWEITERN

C# - PROGRAMME MIT PLUGINS ERWEITERN C# - PROGRAMME MIT PLUGINS ERWEITERN Schreibt man ein Programm welches erweiterbar sein soll, dann gibt es häufig mehrere Möglichkeiten dies umzusetzen. Die Objektorientierung ist dabei der erste Schritt,

Mehr

C++ - Operatoren. Eigene Klassen mit neuen Funktionen

C++ - Operatoren. Eigene Klassen mit neuen Funktionen C++ - Operatoren Eigene Klassen mit neuen Funktionen Übersicht Klassen bisher Eigene Operatoren definieren 2 Bisher Durch Kapselung, Vererbung und Polymorphy können nun eigene Klassen definiert werden,

Mehr

Whitepaper. Produkt: combit List & Label 16. List & Label Windows Azure. combit GmbH Untere Laube 30 78462 Konstanz

Whitepaper. Produkt: combit List & Label 16. List & Label Windows Azure. combit GmbH Untere Laube 30 78462 Konstanz combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit List & Label 16 List & Label Windows Azure List & Label Windows Azure - 2 - Inhalt Softwarevoraussetzungen 3 Schritt 1: Neues Projekt

Mehr

Whitepaper Walkyre Enterprise Resource Manangement

Whitepaper Walkyre Enterprise Resource Manangement Whitepaper Walkyre Enterprise Resource Management Seite 1 Whitepaper Walkyre Enterprise Resource Manangement Stand 15.11.2004 Inhalt 1. Hinweis... 2 2. Grundsätzliches zur Funktionalität... 3 3. Der Walkyre-Client...

Mehr

2.4.3 Polymorphie (Wiederholung von Alp2)

2.4.3 Polymorphie (Wiederholung von Alp2) 2.4.3 Polymorphie (Wiederholung von Alp2) Sparbuch einsparbuch = new Sparbuch(3.0); Konto einkonto; KontoDrucker = new KontoDrucker(); KontoDrucker.setzeKonto(einSparbuch); einkonto = einsparbuch; Wie

Mehr

Abbildung 1: Titelbild (Quelle: http://www.oobject.com/algorithmic-architecture/follymorph-continuum-group-finalpresentation/3267/)

Abbildung 1: Titelbild (Quelle: http://www.oobject.com/algorithmic-architecture/follymorph-continuum-group-finalpresentation/3267/) Abbildung 1: Titelbild (Quelle: http://www.oobject.com/algorithmic-architecture/follymorph-continuum-group-finalpresentation/3267/) Enterprise Continuum Wiederverwendung von Unternehmensarchitekturen Modul

Mehr

www.triton.at White Paper Testfallgewinnung mit dem Portfolio-Manager Gewinnung effizienter Testfälle und -daten

www.triton.at White Paper Testfallgewinnung mit dem Portfolio-Manager Gewinnung effizienter Testfälle und -daten www.triton.at White Paper Testfallgewinnung mit dem Portfolio-Manager Gewinnung effizienter Testfälle und -daten Inhaltsverzeichnis Testfall-Gewinnung bei Triton... 3 Ebenen der Testfall-Definition...

Mehr

[DIA] Webinterface 2.4

[DIA] Webinterface 2.4 [DIA] Webinterface 2.4 2 Inhalt Inhalt... 2 1. Einleitung... 3 2. Konzept... 4 2.1 Vorteile und Anwendungen des... 4 2.2 Integration in bestehende Systeme und Strukturen... 4 2.3 Verfügbarkeit... 5 3.

Mehr

TimeSafe Leistungserfassung

TimeSafe Leistungserfassung Keep your time safe. TimeSafe Leistungserfassung Adressimport 1/8 Inhaltsverzeichnis Inhaltsverzeichnis... 2 1 Allgemeines... 3 1.1 Adressen in der TimeSafe Leistungserfassung... 3 1.2 Organisationen und/oder

Mehr

4D Server v12 64-bit Version BETA VERSION

4D Server v12 64-bit Version BETA VERSION 4D Server v12 64-bit Version BETA VERSION 4D Server v12 unterstützt jetzt das Windows 64-bit Betriebssystem. Hauptvorteil der 64-bit Technologie ist die rundum verbesserte Performance der Anwendungen und

Mehr

4 Die FrontPage-Website

4 Die FrontPage-Website 4 Die FrontPage-Website Ziele dieses Kapitels A Sie lernen die Struktur einer Website kennen. A Sie können Websites verschachteln. A Sie können Websites konvertieren. Microsoft Office Frontpage 2003 Einführung

Mehr

www.uni-math.gwdg.de/linuxuebung

www.uni-math.gwdg.de/linuxuebung 14 Netzwerküberwachung und -steuerung Überblick SNMP Simple Network Management Protocol Datendefinitionen SNMP Implementierungen unter Linux Kommandos zur Datenbeschaffung Konfiguration des Net-SNMP Agenten

Mehr

C# im Vergleich zu Java

C# im Vergleich zu Java C# im Vergleich zu Java Serhad Ilgün Seminar Universität Dortmund SS 03 Gliederung Entstehung von C# und Java Überblick von C# und Java Unterschiede und Gemeinsamkeiten Zusammenfassung und Ausblick Entstehung

Mehr