Home
- Hochschule für Technik Rapperswil
Contents
1. Auswahl der Ebs Ansicht Aktionen f r Ebs Ansicht MS Neue Ebs Ansicht anlegen Ebs Tile Ebs Ansicht speichern Ansicht der letzten Ebs Ansicht l schen Deals limitierten Der Ebs Ansicht ein neues Ebs Auftr gen Tile hinzuf gen Foreign Exchange UI Benutzerdokumentation 99 131 Studienarbeit Daniel H fliger Dominik S sstrunk 3 Ansichten 3 1 Ansichtsauswahl Die Auswahl der verschiedenen Ansichten geschieht ber die Combobox Auswahl der Ebs Ansicht Nach dem Ausw hlen wird diese geladen und frica RE dessen Tiles in der Hauptansicht angezeigt 3 1 1 Neue Ansicht anlegen Um eine neue Ebs Ansicht zu erstellen w hlt man den neue Ebs Ansicht anlegen Nun ffnet sich ein Fenster in welchem man den Ok Cancel Namen der neuen Ansicht angeben kann Best tigt man diese Eingabe durch klicken des Ok Knopfes so wird eine neue Ansicht falls noch keine unter diesem Namen abgespeichert wurde gespeichert Wurde bereits eine Ansicht mit demselben Namen angelegt kann diese nicht gespeichert werden und es wird eine Fehlermeldung angezeigt 3 1 2 Ansicht entfernen Das Entfernen einer Ansicht erreicht man wenn man die gew nschte Ansicht aus der Ansichtsauswahl ausw hlt und wenn diese geladen ist den Ebs Ansicht l schen Knopf bet tigt SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Benutzerdokumentation 100 131 Studienarbeit Danie
2. Resultat Call Level kann nicht eingegeben werden Stop Loss und Take Profit nur in SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Testprotokolle 92 131 Studienarbeit Daniel H fliger Dominik S sstrunk Graph eingetragen nicht in Liste Zus tzliche Limit Order sowie Call Level noch nicht implementiert Information Testfall Limit Order speichern Beschreibung Einen Limit Order soll man mittels klick auf den Send Limit Order Button speichern k nnen Die get tigten Eingaben werden dann gespeichert und w rden vom Banksystem ausgewertet werden Erwartetes Resultat Nach dem senden eines Limit Orders wird ein Fenster angezeigt auf welchem man den Limit Order noch einmal best tigen muss Best tigt man diesen so soll ein Datensatz in der Datenbank angelegt sein und dieser muss in der Limit Order Ticket Liste erscheinen Das Eingabeformular des Limit Orders wird daraufhin geleert um einen neuen Limit Order zu erfassen Resultat Noch nicht Implementiert SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Testprotokolle 93 131 Studienarbeit Daniel H fliger Dominik S sstrunk 3 Testvom 16 12 09 Test durchgef hrt von Dominik S sstrunk 3 1 Systemtests Testfall Beschreibung Benutzer welcher in der Datenbank erfasst ist ans System anmelden Erwartetes Resultat Bei korrekter Eingabe ist der Benutzer am System angemeldet und kann W hrungen handeln Bei einer fehlerh
3. Views from Forex SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UL Software Architecture Document 74 131 Studienarbeit Daniel H fliger Dominik S sstrunk 4 2 Forex Client 4 2 1 Libraries e SLExtensions 3 N tig f r die Implementierung des MVVM Es g be auch noch andere Bibliotheken MVVM Light Prism e Silverlight 3 Toolkit July October 2009 4 oder h her F r zus tzliche Controls z B WrapPanel 4 2 2 Aufbau Das Ul ist nach dem MVVM Model View ViewModel Modell aufgebaut UserControls J FXGraphExtended MessageBoxWindow InputT extWindow MainView A TileControl TradeView TileDetailControl A TileMainControl TileSettingsWindow N from Client AmountConverter ArrowConverter Commands DateConverter DateTimeConverter ExchangeRateConverter ForexExpertClientController LimitOrderViewModel ForexNumberhlelper FXColor FXColors FXGraphTimeEnum MainViewModel TradeViewModel from Client FXGraphTimeEnumHelper InputT extHelper LimitOrderRowT ypeConverter l l l l LimitOrderTypeConverter MessageBoxHelper d NotifyHelper SecondsConverter Pr TileSettingsHelper TimeConverter ExchangeRateDetail FE LimitOrder LimitOrderRowT ype from Client LimitOrderT ype TradeTimes WorldTime from Client from Client SA_ForeignExchangeUl pdf Vers
4. 2 3 Datenzugriff Der Zugriff auf die Daten erfolgt in unserer L sung mittels LINQ to SQL auf einen MSSQL Server Es ist allerdings auch m glich andere Datenbanken zum Beispiel mittels DbLINQ 1 anzusprechen Eine weitere Liste findet sich im Wikipedia Eintrag zu LINO 2 SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Software Architecture Document 72 131 Studienarbeit Daniel H fliger Dominik S sstrunk 3 Architektonische Ziele und Einschr nkungen 3 1 Ziele Die Benutzeroberfl che soll einfach intuitiv sowie bersichtlich sein Bei Unklarheiten eines Benutzers sollte es diesem m glich sein rasch und m glichst einfach Hilfe f r sein Problem zu finden Die Latenzzeit zwischen Client und Server Datafeed soll m glichst gering sein Es soll wenn m glich nur eine SSL Session pro Clientanmeldung und nicht f r jede Anfrage aufgebaut werden riesiger Overhead 3 2 Einschr nkungen Auf die Sicherheit muss nicht geachtet werden SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UL Software Architecture Document 73 131 Studienarbeit Daniel H fliger Dominik S sstrunk 4 Logische Architektur 4 1 Projekt UI Domain Data DataLibrary App CustomHost CH Properties 4 App CustomHostFactory LimitOrder ForexWebService 4 LimitOrder print MainPage print from Forex IForexWebService PS UserControls ES Utilities ViewModels ON
5. SL Extensions SL Extensions http www slextensions net Silverlight 3 Toolkit July October 2009 Codeplex http www codeplex com Silverlight SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Projektplan 22 131 Studienarbeit Daniel H fliger Dominik S sstrunk Foreign Exchange Ul Projektplan SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Projektplan 23 131 Studienarbeit Daniel H fliger Dominik S sstrunk 1 Dokumentinformationen 1 1 nderungsgeschichte Datum Version nderung Autor 18 09 09 0 1 Dokument erstellt Projektorganisation Management Team Abl ufe definiert 29 11 09 1 4 berarbeitung Anpassung Konfigurationsverwaltung dh Referenzen 09 12 09 1 5 berarbeitung Anpassung ds 15 12 09 1 6 berarbeitung Verbesserung ds 1 2 Referenzen Nr Dokument Autor SA H fliger S sstrunk CS FX Aufgabenstellung pdf ms 1 2 Projektantrag pdf Team 3 Internal Coding Guidelines Brad Adams http blogs msdn com brada articles 361363 aspx SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Projektplan 24 131 Studienarbeit Daniel H fliger Dominik S sstrunk 2 Einf hrung 2 1 Zweck Dieses Dokument dient zur Beschreibung des Projektplans f r die Ssemesterarbeit Foreign Exchange User Interface 2 2 G ltigkeitsbereich Dieses Dokument bildet die Grundlage dieser Arbeit und ist deshalb ber die gesamte Projektdauer des Foreign Exc
6. peee een E E D WE dE EEE A j I D i I H jl i I I i H b l i 3 H i I I J H I 1 F U I F i H i i I S d d N ur er r E Un Ke Ir T 1 EZE D I i nenn nn Cini Lean Dot din ia an apaa t T I Men haer f i gn E ee e T e f U H i H I H bg u u n Reg nn MEET EE i D I 1 i l T E Tu E a a Sn ae u Ge 4 111441 Ticketinfos M g E _ Eg Ji Orders zu drucken speichern MERER i Iiii rrer filtern etc BERTE SEEE D Ee ir a E EREENZEZEERBEBEEN LEI ECKE EC ell I E 25 ET I u MW LI zu ii zu FE I II LIF FI LIT In der FX LIMIT View wird das EBS Chart angezeigt Man kann verschiedene Ansichten definieren Die Orderdetails unten k nnen auch ausgeblendet gespeichert und gefiltert werden Foreign Exchange Ul Paperprototype 66 131 Studienarbeit Daniel H fliger Dominik S sstrunk 4 1 DIGELDEIA VIER Ver ndern und Ansicht von Callevels Detailansicht der Orders Das LineChart kann ausgeblendet werden Ordereinstellungen ver ndern sich je nach Auswahl bei Order Type Im LineChart k nnen Callevels angezeigt und ver ndert werden Hier fehlen noch die Optionen f r das Chart Intervall Welcher Wert etc Foreign Exchange Ul Paperprototype 67 131 Studienarbeit Daniel H fliger Dominik S sstrunk 4 2 OrderSecurityCheck pP rogressbar Sicherheitsabfrage bei Order mit ausfahrbaren Details
7. 692 744 ug 74 708 1 000 000 CHF 1 000 000 EUR 1 000 000 USD 1 000 000 JPY USDIJIPY Sell 88 4 LI 88 4 744 79 Bei GBPJPY Sell 142 i 142 SEN 371 1 000 000 JPY IV Spot IV Outright v Swap Ref No Deal type Curri Curr2 224 SPOT GBP JPY 223 SPOT GBP JPY 222 SPOT GBP JPY 221 SPOT GBP JPY SPOT USD 1 000 000 JPY Deal time Maturity date 09 12 2009 15 55 10 11 12 2009 09 12 2009 15 54 29 11 12 2009 09 12 2009 15 53 22 11 12 2009 09 12 2009 15 53 20 11 12 2009 09 12 2009 15 48 24 11 12 2009 Amount 1000000 1000000 1000000 1000000 1000000 Dealt rate 142 07 142 1 142 05 142 05 1 0501 Amount 142070000 142100000 142050000 142050000 1050100 Amount B S Currency Pair Dealt rate Maturity date Deal time Ref No Deal type Amount Payment 1000000 GBP 11 12 2009 09 12 2009 15 55 10 224 SPOT 142070000 5 Hauptansicht des Forex Traders mit allen abonnierten Rates und den letzen get tigten Trades In der Hauptansicht sieht man alle aktuell abonnierten Rates auf sogenannten Tiles In dieser Ansicht werden auch die letzten 100 Deals angezeigt sowie die pers nlichen Views verwaltet 3 3 2 2 Tiles EURUSD Sell RK Ei y Sell Buy Limit Order View Bu 1 48 1 48 21 gt 267 N 1 000 000 USD Spot Outright Swap SL LS Lsl Le 6 Ansich
8. GetHistory zu Testbed WCF service nur f r User Verwaltung berpr fen viewmodels models Evtl frage f r Dr Liver Wer verwaltet subscriptions Client oder testbed Weiteres Vorgehen Anpassung Architektur wie oben erw hnt EBS Chart und Linechart Ansichten erstellen Aufarbeitung Dokumente SAD Projektplan Testdokument N chster Termin 4 11 09 Termin mit M Stolze Woche Danach M glichkeit zum Termin mit Dr Liver SA_ForeignExchangeUl pdf Version 1 0 124 131 18 12 2009 Foreign Exchange UI Sitzungsprotokolle 125 131 Studienarbeit Daniel H fliger Dominik S sstrunk 5 Sitzungsprotokoll vom 04 11 09 5 1 Teilnehmer Prof Dr Markus Stolze Daniel H fliger Dominik S sstrunk 5 2 Tranktanden Stand berpr fen EBS Chart Graph SAD 5 3 Beschl sse Termin mit Herr Liver festlegen Ansonsten fortfahren wie gehabt SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Sitzungsprotokolle 126 131 Studienarbeit Daniel H fliger Dominik S sstrunk 6 Sitzungsprotokoll vom 19 11 09 6 1 Teilnehmer Prof Dr Markus Stolze Dr Beat Liver Daniel H fliger Dominik S sstrunk 6 2 Tranktanden Prototyp Betrag USD pro Konto Detail Tile Anordnung Anz Tiles eines Traders _ CPU Animationen Differenz Sell Buy Highlight Color von Tiles 6 3 Beschl sse Ul Stream Key Acceleration Versuch mit Highlight Color Tiles Graph
9. Qualit tsmerkmale SW04 Funktionale nichtfunktionale Anforderungen Use Cases Brief Supplementary Specification Domain Model Systemsequenzdiagramme External Design Operation Contracts Elaboration 2 Design Model Logische Architektur Testbed Architekturprototyp Use Cases Fully Dressed Review External Design UI Internal Design Prototyp Construction 1 Testf lle definieren Datenbankanbindung Silverlight Controls erstellen EBS Chart Graphen Erfassung Limitierter Auftr ge Prototyp Construction 2 Personalisieren der Oberfl che Ausbau Datenbankanbindung UI erweitern Beta Release Construction 3 Abschluss Security Optional Netzwerk Security User Levels Release Candidate Transition Benutzerdokumentation SW Semester Woche SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Projektplan 27 131 Studienarbeit Daniel H fliger Dominik S sstrunk 5 2 3 Meilensteine MS Titel Woche Termin Beschreibung Mai Projektplan 25 09 09 Projektplan Version 1 0 Zeitplan Arbeitspakete definiert Verantwortlichkeiten zugeteilt Abgabe Projektplan Analyse 16 10 09 Dokumente des OOA Eingearbeitet in architekturrelevante Problembereiche Abgabe OOA Dokumente Paper Prototype Architekturprototyp 23 10 09 Testbed l uft Architekturprototyp Review Abgabe Architekturprototyp Pr sentation des Architektur prototyps Prototyp mit Custom 13 11 09 Datenbankanbindung Silverlight Controls Si
10. Take Profit Stop Loss Funktionsweise der einzelnen LimitedOrder Typen nachzulesen 1 SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Domainanalyse Studienarbeit Daniel H fliger Dominik S sstrunk 2 3 EBSView 51 131 Eine EBSView ist eine Ansicht eines Benutzers auf verschiedene W hrungspaare Ein Benutzer kann mehrere solcher EBSViews besitzen 3 System Sequenzdiagramme 3 1 Userauthentication sd Authentication T OpenSite Login User System nl n berl SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Domainanalyse Studienarbeit Daniel H fliger Dominik S sstrunk 3 2 EBS View CRUD sd EBSView chooseDifferentEBSView name movelTile tile subscribeT ile tile unsubscribeT ileftile newEBSView name SA_ForeignExchangeUl pdf Version 1 0 52 131 18 12 2009 Foreign Exchange Ul Domainanalyse Studienarbeit Daniel H fliger Dominik S sstrunk 3 2 1 Sub Use Case Choose Currency Pair sd ChooseCurrencyPair A op chooseFirstCurrency Currency chooseSecondCurrency Currency System accept 3 3 Trade sd Trade System newTrade l chooseCurrencyPair enterAmount Amount buy l sell l checkAndAcceptTrade SA_ForeignExchangeUl pdf Version 1 0 53 131 18 12 2009 Foreign Exchange Ul Domainanalyse Stu
11. W hrungspaar Linechart der letzten Minuten Stunden Beta Release SW11 27 11 09 Oberfl che personalisierbar Anordnung der Kacheln in EBS Chart Einzelne Kacheln detaillierter dargestellt Trading Handel von W hrungen Limitierte Auftr ge erfassen OSO OCO Release Candidate SW13 11 12 09 Erweitern des Erfassens limitierter Auftr ge OSO OCO Sicherheit implementiert Anmeldung an Server verschl sselt Rest Daten bertragung verschl sselt SW14 18 12 09 Schlussbericht SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Projektplan Studienarbeit Daniel H fliger Dominik S sstrunk 6 Risiko Management Risiko Probleme mit Server Client Architektur und Services Unzureichende Dokumentation der Technologien Ausfall eines Teammitglieds infolge Krankheit Unfall Wissen konzentriert auf einzelne Person Probleme mit Konfigurationsverwaltung Anforderungen des Projekts ndern sich Probleme mit Foreign Exchgange Prozessen Auswirkung Verz gerung im Projektverlauf L ngere Einarbeitungszeit Verz gerung im Projektverlauf Einzelne Aufgaben k nnen nicht erf llt werden Teile der Arbeit gehen verloren berarbeitung von Projektdokumenten Verz gerung im Projektverlauf Total Kosten in Arbeitspaketen enthalten Total R ckstellungen SA_ForeignExchangeUl pdf Version 1 0 29 131 EZE Kosten Max Schaden Gute Einarbeitung in Silverlight WCF NET Weitere
12. hrungspaar angezeigt werden Wird eine Highlight Color ausgew hlt muss das Tile die ausgew hlte Farbe annehmen Resultat Das bernehmen der Einstellungen funktioniert Testfall Tile Position ndern Beschreibung Die Position der einzelnen Tiles kann durch Drag amp Drop ge ndert werden Erwartetes Resultat Nach dem Drag amp Drop der Tiles werden diese an der neuen Position angezeigt Resultat Nicht implementiert Testfall Tile vergr ssern verkleinern Beschreibung Wird das Tile vergr ssert so zeigt es einen Graphen des Verlaufs des W hrungspaares Erwartetes Resultat Die Tiles k nnen vergr ssert verkleinert werden Resultat Graph sowie Verlauf werden angezeigt SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Testprotokolle 90 131 Studienarbeit Daniel H fliger Dominik S sstrunk 2 1 2 EBS Views Testfall Laden der EBS Views Beschreibung Ein angemeldeter Benutzer sieht seine angelegten EBS Views und kann zwischen diesen wechseln Erwartetes Resultat Die EBS Views werden in der Liste angezeigt und nach dem Wechseln einer EBS View werden die entsprechenden Tiles angezeigt Die DefaultView wird geladen angezeigt Information Testfall Anlegen einer neuen EBS View Beschreibung Der Benutzer hat die M glichkeit neue EBS Views anzulegen Dazu klickt dieser auf den Knopf neue EBS View anlegen Neu Symbol und gibt den Namen der View ein Diese wird nun er ffnet und in der
13. jedermann kann in diesem Markt handeln Gehandelt wird mit unterschiedlichsten Applikation wie z B dem Meta Trader Ein m chtiges Tool welches wohl vor allem f r erfahrene Profis gemacht ist Am h ufigsten gehandelt werden die W hrungen der gr ssten Wirtschaftsr ume USD EUR YEN sowie W hrungen aus L ndern mit starken Finanzpl tzen z B GBP CHF Die Credit Suisse betreibt eine Online Applikation basierend auf Java Applets f r den Devisenhandel Es ist m glich die aktuellen Kurse live anzuschauen und sofort Trades zu erfassen oder auch Limited Orders zu platzieren 1 1 Projektbeschreibung Ziel ist es die M glichkeiten von Silverlight anhand einer Applikation f r den Devisenhandel zu erforschen Die Applikation sollte modular aufgebaut sein geringe Latenz garantieren kurze Entwicklungszeiten f r Folgearbeiten haben und die Wartung sollte auch m glichst einfach sein Das User Interface soll verbessert werden um intuitives Arbeiten zu erm glichen Es sollen mehrere aktuelle Kurse angezeigt werden k nnen die f r den Benutzer personalisierbar sind Ausserdem sollen die wichtigen Stellen Pips hervorgehoben und spezielle Kurse besonders gekennzeichnet werden k nnen Weiter sollen normale Gesch ftsauftr ge sowie limitierte Auftr ge wie z B OSO und OCO erfasst werden k nnen Das Erfassen dieser limitierten Auftr ge sollte m glichst einfach sein Auf die Sicherheit soll prim r nicht geachtet werden SA_ForeignExch
14. Byte Array des Eingabewortes arrays SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UL Software Architecture Document 78 131 Studienarbeit Daniel H fliger Dominik S sstrunk 5 1 2 Generator ExchangeGenerator factor double 1 0 readOnly modifier int readOnly negativeFactor double 1 0 readOnly randomizer Random readOnly exchangeRate double modifierCount int 1 startVal double Currencyld int CurrencyHelper ExchangeGenerator double int int ceurrPairs Dictionary lt int CurrencyPair gt Start void ang Generate void _GetCurrencyPairs Dictionary lt int CurrencyPair gt GetNextRate double GetSellRate double double GetDouble double double GetModifiedBool bool event OnRateChange RateChangeEventHandler property BuyRate double SellRate double id int name string startVal double modifier int generator ExchangeGenerator exchangeRate ExchangeRateDto lastRate ExchangeRateDto CurrencyPairfint string double int OnRateChangel int void GetNextRates bool ExchangeRateDto Der Generator ist f r die kontinuierliche Erzeugung der fiktiven Forex Daten zust ndig Jede CurrencyPair Instanz besitzt dazu ihren eigenen ExchangeGenerator Die Daten werden in einem eigenen Thread erzeugt damit die Anwendung blockierungsfrei bleibt 5 1 2 1 ExchangeGenerator 5 1 2 1 1 ExchangeGenerator Konstruktor Kon
15. Darstellung Die Forex Ul Silverlight Applikation basiert auf einer Client Server Architektur Die Silverlight Applikation wird mittels Webserver auf den Client geladen Das Login geschieht ber den WCF Service des Webservers welcher mit der Datenbank verbunden ist 2 1 M gliches Szenario 1 Implementiert S mtliche Daten werden ber den WCF Service geladen Um an die Daten zu kommen muss ein Benutzer authentifiziert sein Die Forex Daten sowie die pers nlichen Einstellungen werden ber den WCF Service gehandhabt Es ist auch ohne weiteres m glich dass der WCF Service z B die Forex Daten von einem weiteren Service z B SOAP herunterl dt und diese so dem Client berspielt Silverlight Client Webserver WCF Service Application SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Software Architecture Document 71 131 Studienarbeit Daniel H fliger Dominik S sstrunk 2 2 M gliches Szenario 2 Jegliche benutzerspezifischen Daten Kontoinformationen Transaktionen werden ber den WCF Service auf Anfrage geladen Einstellungen zu welchen auch die EBS Tiles geh ren k nnen ber diesen Service gespeichert werden Die Live Datafeeds werden asynchron ber den SOAP Webservice konsumiert Wir gehen davon aus dass die Datafeeds bankintern gel st sind Deswegen simulieren wir die Feeds und schreiben die Daten in die Datenbank Silverlight Client Application Webservice SOAP Webserver WCF Service
16. EbsView des Benutzers und gibt an ob diese gespeichert werden konnte 5 1 1 7 DeleteEbsView L scht die angegebene EbsView des angemeldeten Benutzers 5 1 1 8 GetCurrencyPairs Gibt alle W hrungspaare in einer Liste zur ck 5 1 1 9 SaveDeal Speichert ein Deal SPOT des angemeldeten Benutzers 5 1 1 10 GetRecentDeals Die letzten get tigten Deals SPOT des angemeldeten Benutzers abrufen 5 1 1 11 IsLoggedIn Pr fung ob der Benutzer bereits angemeldet ist 5 1 1 12 Logout Meldet den Benutzer vom System ab und l scht dessen Session 5 1 1 13 GetHistory GetHistory liefert eine Liste von Raten eines bestimmten W hrungspaares Die Liste wird durch ein Intervall gruppiert Das Intervall kann von einer Minute bis hin zu Stunden sein Man erh lt jeweils die tiefsten sowie h chsten buy sell Werte von jeder Zeitspanne 5 1 1 14 GetRate Die GetRate Methode liefert nach dem Aufruf eine neue Rate eines W hrungspaares zur ck Dies kann je nachdem wie schnell der Generator die Rate generiert zwischen einigen hundert Millisekunden bis zu einigen Sekunden dauern 5 1 1 15 GetLimitedOrders Gibt die erfassten limitierten Auftr ge des angemeldeten Benutzers zur ck 5 1 1 16 PlaceLimitedOrder Erfasst einen limitierten Order in der Datenbank 5 1 1 17 ConvertStringToArray Wandelt einen String in ein Byte Array um Dies wird ben tigt um einen String zu hashen 5 1 1 18 GetHash Die GetHash Methoden liefern ein mit SHA 256 gehashtes
17. Il Outright V Swap 6 Limitierte Auftr ge A RK Ei Buy Buy au an View Um die limitierten Auftr ge zu erfassen w hlt man die Limit Order View in der Detailanzeige 244 297 eines Tiles Diese ffnet dann das Erfassen der J limitierten Auftr ge 1 4936 1 000 000 USD Spot Outright Swap w l Is L eil Ss ra aaa Kx Sell Buy Sell Buy 5min Limit Order View 1 49 1 49 281 331 LS ebe 1 000 000 USD Spot Outright Swap ep Diese Ansicht zeigt im Fussbereich des Graphen Le Le l i E E R kn eine Eingabemaske In dieser kann man nun einen e 2 2 2 3 8 2 i 4 2 2 i solchen Auftrag erfassen Die Erfassung kann aber Order Type oo el Zone v Send Order SC Tai on mus Blau auch grafisch erfolgen 1 000 000 Sisel v 0 0000 11 12 2009 bs 09 13 SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Benutzerdokumentation 103 131 Studienarbeit Daniel H fliger Dominik S sstrunk 6 1 Grafisches Erfassen von limitierten Auftr gen Sell Buy Smin Limit Order Vie Die Erfassung von einem limitierten Auftrag OCO Zuerst wird die Take Profit Tp Rate gesetzt Dies geschieht indem man in dem Graph an die gew nschte Position f hrt Hat man die gew nschte Position erreicht so dr ckt man nun die CTRL oder auch STRG und Klickt dabei mit der linken Maustaste h lt
18. Liver Credit Suisse beat liver credit suisse com SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Projektplan 25 131 Studienarbeit Daniel H fliger Dominik S sstrunk 4 4 Organisationsstruktur Dom D men D mn 4 4 1 Planung Prozessverantwortlicher Dokumentation Dominik S sstrunk Artefakte Projektplan Anforderungsspezifikationen 4 4 2 Analyse Prozessverantwortlicher Dominik S sstrunk Artefakte Domainanalyse 4 4 3 Entwicklung Prozessverantwortlicher Daniel H fliger Artefakte Code SAD Releases 4 4 4 Test Prozessverantwortlicher Dominik S sstrunk Artefakte Code Unittests Testprotokolle 4 4 5 Dokumentation Prozessverantwortlicher Daniel H fliger Artefakte Handbuch Summary Foreign Exchange UI Projektplan 26 131 Studienarbeit Daniel H fliger Dominik S sstrunk 5 Management Abl ufe 5 1 Projekt Kostenvoranschlag Das Projekt hat eine Laufzeit von 14 Wochen da f r die Semesterarbeit 8 ECTS Punkte angerechnet werden und jeder ECTS Punkt ca 2h Arbeit pro Woche ergibt Entspricht dies ca 230h pro Teammitglied In der Summe also 460h 5 2 Projektplan 5 2 1 Zeitplan Der Zeitplan f r die Arbeit befindet sich in der Datei O2_Projektplan Zeitplan xisx 5 2 2 Iterationsplanung Iteration Beschreibung Inception Projektantrag Dokumentvorlagen Elaboration 1 Projektplan Zeitplan Risiko Management
19. Studienarbeit Daniel H fliger Dominik S sstrunk 2 Testvom 04 12 09 Durchgef hrt von Daniel H fliger 2 1 Systemtests Testfall Beschreibung Benutzer welcher in der Datenbank erfasst ist ans System anmelden Erwartetes Resultat Bei korrekter Eingabe ist der Benutzer am System angemeldet und kann W hrungen handeln Bei einer fehlerhaften Eingabe wir dem Benutzer ein Fehler angezeigt Resultat Resultat wie erwartet 2 1 1 Tiles Testfall Hinzuf gen eines Tiles Beschreibung Erwartetes Resultat Resultat Durch klick auf den Tiles Hinzuf gen Button soll ein Einstellungsfenster ge ffnet werden auf welchem man die Einstellungen des Tiles vornehmen kann Best tigt man die Eingaben soll ein Tile der EBS View hinzugef gt werden Nach Auswahl des W hrungspaares auf dem Einstellungsfenster und der Best tigung des Dialoges muss ein neues Tile in der EBS Ansicht mit dem ausgew hlten W hrungspaar angezeigt werden Wird eine Highlight Color ausgew hlt muss das Tile die ausgew hlte Farbe annehmen Tile wird hinzugef gt und die Highlight Color sowie das W hrungspaar wird gesetzt Testfall Einstellungen eines Tiles ndern Beschreibung Die Einstellungen eines Tiles k nnen zur Laufzeit ge ndert werden auch das W hrungspaar Erwartetes Resultat Nach Auswahl des W hrungspaares auf dem Einstellungsfenster und der Best tigung des Dialoges muss ein neues Tile in der EBS Ansicht mit dem ausgew hlten W
20. User 15 11 Interfaces 3 5 Architekturanalyse Verbindung zwischen Silverlight 4 4 Applikation und Streaming Server 3 6 Review 4 0 4 Design 16 19 4 1 Klassendiagramm Klassendiagramme erstellen 8 13 4 2 Serverarchitektur Architektur der Server Client Verbindung 4 3 beschreiben 4 3 Review A 2 5 Implementation 185 173 5 1 User Interface Erstellen des User Interfaces 40 43 5 2 Silverlight Controls Erstellen einzelner Controls 30 48 5 3 Styles Styles definieren um ein einheitliches 5 15 Erscheinungsbild zu schaffen 5 4 Testbed Aufsetzen eines Testbeds welches Daten 30 A ber Devisen streamt 5 5 Dataservice Service auf dem Testbed entwickeln 20 21 welcher die Daten bereitstellt 5 6 Datenbank Datenbank f r die Benutzerverwaltung 10 17 anlegen SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Projektplan 31 131 Studienarbeit Daniel H fliger Dominik S sstrunk 5 7 Orders Limitierte Auftr ge OCO OSO erfassen 25 15 bearbeiten und l schen 5 8 Security Sicherheit implementieren 15 0 Verschl sslung von Daten 6 1 Usability Test Test ob Applikation intuitiv bedien bar ist 15 14 6 2 Unit Test Testmethoden im Code um Methoden zu 5 15 pr fen 7 Dokumentation 59 93 71 SAD Architekturdokument bearbeiten 20 33 7 2 Benutzerhandbuch amp Handbuch amp Video s ber die Bedienung 10 8 Video der Applikation 73 Code Dokumentieren des Codes A 22 7 4 Tests Testf lle dokumentieren erst
21. Zustand angezeigt werden Werden die nderungen nicht gespeichert muss nach dem Wechseln der Views oder nach einer Neuanmeldung der alte gespeicherte Zustand geladen werden Resultat nderungen an einer View werden in der Datenbank gespeichert 1 1 3 Buy Sell Testfall Buy Sell auf einem Tile Beschreibung Der Benutzer hat die M glichkeit schnell und einfach W hrungen zu kaufen oder verkaufen Durch einen Klick auf den Buy oder Sell Button eines Tiles wird ein solcher Auftrag erfasst Erwartetes Resultat Nach dem Buy Sell Klick wird von der W hrung 1 so viel gekauft verkauft wie eingegeben wurde Zuerst muss der Benutzer jedoch noch in einem Fenster die Daten best tigen Ein Ticket muss dann erfasst sein angezeigt bei den Tickets Resultat Sicherheitsabfrage fehlt Rest stimmt Testfall Tickets filtern Beschreibung Ticket k nnen nach Tickettyp SPOT SWAP OUTRIGHT gefiltert werden SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Testprotokolle 87 131 Studienarbeit Daniel H fliger Dominik S sstrunk Ee und nach allen Feldern sotiert werden Erwartetes Resultat Je nachdem welche Typen ausgew hlt sind Checkboxen sollen nur jeweilige Tickets angezeigt werden Auch nach einer Aktualisierung soll der Filter weiter bestehen wie auch die Sortierung Resultat Eintr ge k nnen gefiltert und sortiert werden sind jedoch nach einer Aktualisierung wieder zur ckgesetzt Testfa
22. angezeigt Zum Teil noch unsaubere Animation 1 1 2 EBS Views Testfall Laden der EBS Views Beschreibung Ein angemeldeter Benutzer sieht seine angelegten EBS Views und kann zwischen diesen wechseln Erwartetes Resultat Die EBS Views werden in der Liste angezeigt und nach dem Wechseln einer EBS View werden die entsprechenden Tiles angezeigt Die DefaultView wird geladen Resultat EBSViews werden in Liste angezeigt Default View wird nicht immer sauber geladen z T noch alte View Testfall Anlegen einer neuen EBS View Beschreibung Der Benutzer hat die M glichkeit neue EBS Views anzulegen Dazu klickt dieser auf den Knopf neue EBS View anlegen Neu Symbol und gibt den Namen der View ein Diese wird nun er ffnet und in der Liste angezeigt Erwartetes Resultat Wird eine neue EBS View angelegt ist diese in der Datenbank dem entsprechenden Benutzer zugeordnet und wird dem Benutzer angezeigt Resultat Gespeicherte View ist in der Datenbank f r den jeweiligen User hinterlegt Testfall Speichern einer EBS View Beschreibung Die EBS View enth lt verschiedene Tiles welche der Benutzer hinzugef gt hat Diese kann er laufend anpassen Currency Pair wechseln l schen hinzuf gen nderungen an einer EBS View werden durch den Speichern Knopf bernommen Erwartetes Resultat Nach dem Speichern einer EBS View wird diese auch beim n chsten Start der Applikation so geladen Auch nach dem Wechseln der Views muss der gespeicherte
23. dem gr ssten Finanzmarkt der Welt Jedermann kann auf diesem Markt mit entsprechender Software MetaTrader FX Expert etc handeln Die Credit Suisse betreibt eine eigene Online Applikation FX Expert welche auf Java Applets basiert Die Aufgabe besteht darin die Machbarkeit einer Silverlight Applikation bez glich Bedienung Skalierbarkeit Sicherheit und Wartbarkeit zu analysieren Ziel ist es ein Testbed welches die Bank simuliert und einen Prototyp Silverlight Client zur Verf gung zu stellen 2 Architektur Der Webserver dient zugleich als Testbed und hosted die Client Applikation die beim Aufruf der Website des Servers heruntergeladen und gestartet wird Der Server stellt einen WCF Service zur Verf gung Dieser dient zur Kommunikation zwischen Server und Client verwaltet die Benutzer und f hrt die Bankprozesse aus Die Datenbank wird vom Server ber Ling to SQL angesprochen Die ganze Applikation ist in C geschrieben 3 Ergebnisse Der Prototyp zeigt dass sich Silverlight schon sehr gut f r professionelle Anwendungen einsetzen l sst Eine einfache Bedienung wurde durch ein bersichtliches und einfaches Design mit selbsterkl renden Controls durch Tooltips Bilder etc erreicht Der Benutzer bekommt vom User Interface Inputs zu wichtigen Aktionen durch Bilder Animation etc Das Trennen der verschiedenen Schichten durch das MVVM Pattern WCF und Ling to SQL f hrt zu einer guten Wartbarkeit der Applikation Die Skalierbar
24. der Prototyp die Silverlight Applikation entwickelt 3 Technologien 3 1 Client Der Client wurde mit Silverlight 3 entwickelt Microsoft Silverlight ist ein Plug In f r Webbrowser welches auf NET basiert und die Ausf hrung von Rich Internet Applications erm glicht und damit ber die M glichkeiten des klassischen HTML hinausgeht Dem Anwender wird z B Drag and Drop 3D Effekte und Animationen erm glicht Zudem erfolgt meist eine schnellere Reaktion als bei klassischen HTML basierten Anwendungen da die Silverlight Applikationen auf dem lokalen Rechner ausgef hrt werden und somit nicht auf die Reaktion eines Servers gewartet werden muss Silverlight ist als propriet res programmierbares Plug in f r Windows und Apple Macintosh verf gbar F r Linux wird von Novell mit Zustimmung und Unterst tzung von Microsoft Moonlight angeboten Im November 09 wurde die erste Beta zu Silverlight 4 ver ffentlicht Das User Interface wird in XAML beschrieben Die Logik dahinter wird in C definiert 3 2 Webserver WCF Connection ForexWebService Forex Client xap wird heruntergeladen Client Webserver Forex_db Forex Client Forex Web Forex Datalibrary Der Webserver welcher unter IIS6 l uft wurde auch in C geschrieben Die Kommunikation zwischen dem Client und dem Server wird ber einen WCF Service geregelt WCF Windows Communcation Foundation stellt den Webservice zur Verf gung welcher f r die Kommunikation zwischen Server und C
25. en 1 f a ht ep ee ng nn H 1 I I H D I A 1 H I gt m l 1 E AE aim al a I le Add E E ze Ze le A Se E HE E ne ie H T F H F i T T H d j E H i l a f i 1 D i H i b i H 1 oe EE j i i I I H I 5 I I I H i H i i I I eg E E teg a d EE Re nn eg i Das Login ist grunds tzlich sehr einfach Bei einem nicht erfolgreichen Login Versuch erscheint eine Fehlermeldung SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Paperprototype 61 131 Studienarbeit Daniel H fliger Dominik S sstrunk 3 FX TRADE View Re Date und Auswahl der verschiedenen Views und weiteren Optionen Ca ES es AMT ie SD eu EES D KE mm EES Ticketdetails k nnen auch ausgeblendet werden i 4 A nn DR ed to e eeh Ni In der FX TRADE View wird das EBS Chart angezeigt Man kann verschiedene Ansichten definieren Die Dealdetails unten k nnen auch ausgeblendet gespeichert und gefiltert werden Foreign Exchange Ul Paperprototype 62 131 Studienarbeit Daniel H fliger Dominik S sstrunk 3 1 Tile View Ansicht mit aktuellem Kurs und direktem Buy Sell mit Klick auf Button Hier Sell 59 Buy 64 Die Pfeile geben an wie sich der Kurs im Vergleich zum letzten Mal ver ndert hat Kann vergr ssert werden gt gt zur Tile Chart View 3 2 Tile Detail View RE bee S el 4 400 IKT Detailliertere Ansicht der Kachel mit den unte
26. nur andere Silverlight Projekte als Referenzen akzeptiert haben wir darauf verzichtet SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Glossar 115 131 Studienarbeit Daniel H fliger Dominik S sstrunk Foreign Exchange Ul Glossar SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Glossar 116 131 Studienarbeit Daniel H fliger Dominik S sstrunk 1 Dokumentinformationen 1 1 nderungsgeschichte Datum Version nderung Autor 17 09 09 0 1 Dokument erstellt dh 18 09 09 0 2 Finanzbegriffe dh 1 2 Referenzen Dokument Orders Dokument Credit Suisse https entry credit suisse ch csfs p cb de dev_zinsen media pdf dzs stoploss de pdf Brief und Geldkurs Eintr ge in Wikipedia org http de wikipedia org wiki Briefkurs http de wikipedia org wiki Geldkurs Termingesch ft Dokument Credit Suisse https entry credit suisse ch csfs p cb de dev_zinsen media pdf dzs termingeschaeft de pdf SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Glossar 117 131 Studienarbeit Daniel H fliger Dominik S sstrunk 2 Forex Trader Begriffe Erkl rung Ein Tile ist eine Ansicht eines W hrungspaares und zeigt die buy sowie die sell Rate Zudem enth lt ein Tile auch weiter Elemente DetailTile DetailTile Das DetailTile ist die Detailansicht eines Tiles Es bietet zu der normalen Ansicht noch erweiterte Deal Einstellungen sowie einen Verlaufsgraphen Eine
27. r Designer zur Verf gung steht Die Controls welche von Silverlight zur Verf gung gestellt werden haben auch schon einen modernen Default Style welchen wir meist nicht weiter ver ndert haben Durch Vergleiche von hnlichen Applikation der verschiedenen RIA Technologien Java Flash Flex Silverlight ist uns aufgefallen dass die Prozessorauslastung bei der Silverlight Applikation um einiges geringer ist als bei der Konkurrenz Was noch fehlt bei Silverlight 3 ist dass die Trennung mittels des MVVM Patterns noch sehr m hsam zu Implementieren ist da Silverlight nicht alle erforderlichen Klassen unterst tzt SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Management Summary 13 131 Studienarbeit Daniel H fliger Dominik S sstrunk 5 Ausblick Die Sicherheit bei der Applikation muss noch stark verbessert werden um einer Anwendung f r eine Grossbank gerecht zu werden Vor allem der WCF Service welcher nur ber ein basicHttpBinding mit dem Server kommuniziert ist hier eine grosse Schwachstelle Weiter ist zu hoffen dass mit dem offiziellen Release von Silverlight 4 auch die Unterst tzung f r das MVVM Pattern sowie die Handhabung der WCF Services verbessert wird SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Technischer Bericht 14 131 Studienarbeit Daniel H fliger Dominik S sstrunk Foreign Exchange Ul Technischer Bericht SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Fo
28. setzen Usability testen Vorgehen Zeitplan Einarbeiten Foreign Exchange Bestehende L sung Silverlight Dokumentstruktur Projektverwaltung einrichten SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Sitzungsprotokolle 122 131 Studienarbeit Daniel H fliger Dominik S sstrunk 2 Sitzungsprotokoll vom 23 09 09 2 1 Teilnehmer Prof Dr Markus Stolze Daniel H fliger Dominik S sstrunk 2 2 Traktanden vServer f r Team Server Version Control B cher f r Silverlight 3 0 Bestellen FOREX Unklarheiten Meta Traider Daten Welche Export Daten Entwurf Projektplan diskutieren 2 3 Beschl sse vServer Direkt bei Verantwortlichen Anfragen B cher Silverlight infos Franzsika Altdorfer Bachelorarbeit FS09 Micha Boller amp Danny Meier Bachelorarbeit FS09 LABS auf CD PhotoBrowser MVVM von namoSMS SE2 FS09 FOREX DataFeed als Servlet da Banken wohl so operieren Projektplan Anpassungen Arbeitspaket Video hinzuf gen Mehr Aufwand f r Paket Benutzerhandbuch Weitere Vorgehen Anpassen des Projektplans Erstellen der Anforderungen N chstes Meeting Mittwoch 7 10 09 17 00 Weiteres Abgaben Kurzversion Schule Kurzer Text Wiki 5Seiten 1 Einleitung Was ist FOREX Existierende L sung Matrix L sung Silverlight Was ist SL Was kann SL Was kann es nicht Unsere L sung Architektur Netzwerk Oberfl che Erfahru
29. und anderen Technologien w re sehr interessant Bei einem n chsten Projekt w rde ich vor allem darauf achten von Beginn weg nicht zu viele Ziele zu verfolgen darauf die wenigen die brig bleiben sauber und komplett zu erf llen Auch w rde ich die Softwareaufteilung bei Beginn genauer Aufteilung und sauber benennen SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Literaturverzeichnis 21 131 Studienarbeit Daniel H fliger Dominik S sstrunk Literaturverzeichnis Dokument Autor SA H fliger S sstrunk CS FX Aufgabenstellung pdf ms Projektantrag pdf Team Internal Coding Guidelines Brad Adams http blogs msdn com brada articles 361363 aspx Java Applet Version der bestehenden Anwendung CS https entry credit suisse ch csfs p cb de online onl uebersicht js Silverlight 3 0 Microsoft http www silverlight net Anleitung zur bestehenden Java Applet Version CS Manual_FX_Expert pdf DbLINQ Google http code google com p dbling2007 Datenbank Provider f r UNO http en wikipedia org wiki Language Integrated Query Other providers Orders Dokument Credit Suisse https entry credit suisse ch csfs p cb de dev_zinsen media pdf dzs_ stoploss de pdf Brief und Geldkurs Eintr ge in Wikipedia org http de wikipedia org wiki Briefkurs http de wikipedia org wiki Geldkurs Termingesch ft Dokument Credit Suisse https entry credit suisse ch csfs p cb de dev_zinsen media pdf dzs termingeschaeft de pdf
30. wird ein zweiter gestartet meist um 1 Gesch ft gewinnbringend einzudecken Stop Loss Auftr ge Sch tzen bestehende Positionen vor negativen Auswirkungen von Kursbewegungen hnlich Take Profit sell Take Profit buy sell Stellt sicher dass der Handel bei einer gewissen Marke abgeschlossen oder ein neuer Handel gemacht wird Bsp Kauf von CHFUSD zu einem Kurs von 1 10 nach kurzer Zeit steigt der Kurs auf 1 16 f llt danach aber auf 1 05 Take Profit w re ein Trigger der zum Beispiel bei einem fallenden Kurs auf 1 15 verkauft SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Glossar 118 131 Studienarbeit Daniel H fliger Dominik S sstrunk 3 3 Termingesch ft Begriff Erkl rung Termingesch ft Jede konvertible W hrung kann auf jeden gew nschten Termin Forward Outright gekauft oder verkauft werden Der Terminkurs besteht aus dem Kassakurs und dem Swapsatz Kassagesch ft Ein Termingesch ft welches in der Regel eine zweit gige Laufzeit Spot besitzt heute den Handel t tigen in zwei Tagen bezahlen 3 4 Swapgesch ft Begriff Erkl rung Ein Swap ist ein Finanzmarktgesch ft das aus einem Devisen Kassagesch ft Spot und einem Devisentermingesch ft Forward besteht Dabei werden zwei W hrungen per Spot gegeneinander getauscht und zu einem sp teren Zeitpunkt wieder zur ckgetauscht Beide Transaktionen eines Devisenswaps werden gleichzeitig und mit derselben Gegenpartei abg
31. zum Deal und einer Progressbar welche je nach Zeitvorgabe hinunterz hlt Beim Ablaufen der Zeit kann die Order nicht mehr platziert werden 5 Weitere Views Hinzukommen noch Ansichten f r Hilfe Benutzereinstellungen Evtl grosse Chart Ansicht Foreign Exchange UI Software Architecture Document 68 131 Studienarbeit Daniel H fliger Dominik S sstrunk Foreign Exchange Ul Software Architecture Document SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Software Architecture Document 69 131 Studienarbeit Daniel H fliger Dominik S sstrunk 1 Dokumentinformationen 1 1 nderungsgeschichte Datum Version nderung Autor 20 10 09 0 1 Dokument erstellt dh 28 10 09 0 2 Models eingef gt Update von architektonischer Darstellung dh 04 11 09 0 3 Review dh 29 11 09 0 4 Anpassung dh 10 12 09 0 5 Anpassung Datenbank hinzugef gt dh 15 12 09 1 0 berarbeitung Review Verbesserung ds 1 2 Referenzen Dokument Autor DbLINO http code google com p dbling2007 Google Datenbank Provider f r UNO WIKI http en wikipedia org wiki Language Integrated Query Other providers SL Extensions SL Extensions http www slextensions net Silverlight 3 Toolkit July October 2009 Codeplex http www codeplex com Silverlight SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Software Architecture Document 70 131 Studienarbeit Daniel H fliger Dominik S sstrunk 2 Architektonische
32. 0 18 12 2009 Foreign Exchange UI Szenarios 47 131 Studienarbeit Daniel H fliger Dominik S sstrunk Die Prognosen f r den Wechselkurs USDCHF sehen so aus als ob dieser in einem halben Jahr bei 1 1 22 steht Da Otto die Komponenten erst dann bestellen wird w rde ihn dies 1 52 Mio CHF kosten Er h tte also eine Differenz von ca 210 000 CHF Um dies vorzubeugen entschliesst er sich beim Zuschlag seiner Offerte die 51 24 Mio bereits zu wechseln um mit diesen dann in einem halben Jahr verlustfrei die Komponenten einzukaufen 3 3 1 Zuschlag Otto erh lt den Zuschlag der Embedded Solutions und beschliesst nun das Auftragsvolumen f r seinen Amerikanischen Handelspartner zu tauschen Er ffnet die Devisenhandels Plattform FOREX Ul seiner Bank und meldet sich mit seinen Zugangsdaten an Er m chte nun einen Forward Auftrag erfassen und sieht dass er Gl ck hat Der Wechselkurs zu welchem er heute wechseln kann steht bei 1 1 0172 was ihm ber 15 000 CHF einspart und er somit noch mehr Gewinn erwirtschaften kann Schnell gibt er die 51 246 Mio ein und klickt auf buy Das Popup Fenster welches sich ffnet enth lt alle Informationen zur Transaktion Er best tigt diese und die Transaktion ist erfasst SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Domainanalyse 48 131 Studienarbeit Daniel H fliger Dominik S sstrunk Foreign Exchange Ul Domainanalyse SA_ForeignExchangeUl pdf Version 1 0 18
33. 12 2009 Foreign Exchange UL Software Architecture Document 76 131 Studienarbeit Daniel H fliger Dominik S sstrunk 5 Packages 5 1 Forex Web 5 1 1 Forex Web Service IForex WebService Login string byte Date Time UserDto Logout bool GetUser UserDto GetEbsViews List lt EbsViewDto gt SaveEbsView EbsViewDto bool NewEbsView string bool DeleteEbsView int bool GetRecentDeals List lt TicketDto gt SaveDeal CurrencyPairDto DealType DealDirection double double bool GetCurrencyPairs List lt CurrencyPairDto gt lsLoggedin bool GetHistory int int int List lt HistoryDataDto gt GetRate int Date Time ExchangeRateDto GetLimitedOrders List lt LimitOrderDto gt PlaceLimitedOrder LimitOrderDto void 7 eg T i e a a S D ForexWebService currPairs Dictionary lt int CurrencyPair gt readOnly ForexWebService Login string byte DateTime UserDto GetUser UserDto GetEbsViews List lt EbsViewDto gt NewEbsViewfstring bool SaveEbsView EbsViewDto bool DeleteEbsView int bool GetCurrencyPairs List lt CurrencyPairDto gt SaveDeal CurrencyPairDto DealType DealDirection double double bool GetRecentDealst List lt TicketDto gt IsLoggediIn bool Logout bool GetHistory int int int List lt HistoryDataDto gt GetRate int DateTime ExchangeRateDto GetLimitedOrders List lt LimitOrderDto gt PlaceLimi
34. 12 2009 Foreign Exchange Ul Domainanalyse 49 131 Studienarbeit Daniel H fliger Dominik S sstrunk 1 Dokumentinformationen 1 1 nderungsgeschichte Datum Version nderung Autor i S S 06 10 09 1 0 Review d 15 12 09 1 1 berarbeitung Verbesserung d 1 2 Referenzen Nr Dokument Autor 1 FX Expert Instruction Manual CS SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Domainanalyse 50 131 Studienarbeit Daniel H fliger Dominik S sstrunk 2 Domain Model J class Domain Model EBSView ve name password email cellphone shq p Ir AmountCurl Time 2 1 _AmountCur2 1 1 S Se TT N CallLev el Amount Expiry LimitRate 2 1 Ticket Ein Ticket geh rt zu einem Benutzer Es wird angezeigt wann das Ticket er ffnet wurde Das Ticket dient momentan nur als Schnittstelle zu den Orders 2 2 Order Ein Order geh rt jeweils zu einem Ticket und besitzt ein Currency Pair sowie die Betr ge beider W hrungen Ein Order ist ein bestimmter Typ Die Typen haben in sich andere Funktionalit t 2 2 1 Swap Spot Forward Sind simple Auftr ge funktionsweise nachzulesen 1 2 2 2 Limited Order Ein limitierter Auftrag besitzt wiederum verschiedene Funktionalit ten Je nach Funktionalit t gibt es eine oder mehrere Zeilen In einer Zeile werden Betrag Enddatum sowie die limitierte Rate angegeben Zudem geh rt zu jeder Row ein Zeilentyp
35. 93300 Dealtime 11 12 2009 09 18 11 Ref No 233 Deal type SPOT 11 12 2009 09 18 03 13 12 2009 1000000 1 4933 1493300 amount 1492900 5 Payment e 11 12 2009 09 18 04 13 12 2009 1000000 1 493 1493000 8 Recent Limited Orders Die Anzeige der limitierten Auftr ge zeigt ebenfalls die letzten 100 erfassten Auftr ge Deal type Currency Pair Deal time Amount Row Type Rate Exp Date Amount Row Type OCO EURUSD 11 12 2009 00 00 00 1 000 000 TpSell 1 4946 11 12 2009 09 13 04 1 000 000 Sisell oso USDCHF 09 12 2009 00 00 00 1 000 000 Tp 1 0310 12 12 2009 00 00 00 1 000 000 TpSell OCO USDCHF 09 12 2009 00 00 00 1 000 000 TpSell 1 0366 12 12 2009 00 00 00 1 000 000 SiSell Single USDCHF 09 12 2009 00 00 00 1 000 000 SISell 1 4775 09 12 2009 00 00 00 SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Summary 106 131 Studienarbeit Daniel H fliger Dominik S sstrunk Foreign Exchange Ul Summary SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Summary 107 131 Studienarbeit Daniel H fliger Dominik S sstrunk 1 Einleitung Es gibt auf der Welt keinen zentralen Platz f r W hrungshandel Dieser wird in den Hauptzentren auf der ganzen Welt London New York Tokyo Z rich Frankfurt Hong Kong Singapur Paris Sydney verwaltet Der Devisenhandel ist 24 Stunden pro Tag und 5 Tage die Woche offen Es ist der gr sste Finanzmarkt der Welt und jede Firma bzw
36. Dokumentationen Beispiele suchen und studieren B cher bestellen Zeitreserve einplanen Wissen weitergeben in Sitzungen Einsatz von Versionierungssystem Regelm ssige Sitzungen Zeitreserve einplanen Gute Einarbeitung in Begriffe und gutes Verst ndnis der Gesch ftsabl ufe 12h 100h 18 12 2009 Wahrschein lichkeit Gewichteter Schaden 18h Priorit t mittel mittel niedrig niedrig mittel Foreign Exchange UI Projektplan 30 131 Studienarbeit Daniel H fliger Dominik S sstrunk 7 Arbeitspakete Pakete Beschreibung Soll h Ist h 1 Projekt Management 29 32 11 Projektantrag Festlegung was in dem Projekt geleistet 2 2 werden soll 1 2 Projektplan Zeitplanung Zuweisung der 15 13 Verantwortlichkeiten Milestones festlegen und Risiken erfassen 1 3 Zeitplan Planung der Arbeitsstunden pro Pakete 5 6 sowie Goller bersicht 1 4 Konfigurationsverwaltung MS Team Foundation Server einrichten und Build Automatisierung REG 2 1 Anforderungsspezifikation Erfassen der Anforderungen 8 7 2 3 Use Cases Fully Dressed Wichtigste Use Cases Fully Dressed 5 A 2 4 Szenarios Abl ufe von Benutzern A 3 2 5 Review 3 5 e 3 1 Domain Model Domain Model anhand der Use Cases 15 9 und der Spezifikationen erstellen 3 2 Contracts Verfassen der Contracts f r die System 6 5 operationen 3 3 SSD Erstellen der wichtigsten Sequenz A 2 diagramme 3 4 Paperprototype Handschriftliche Prototypen des
37. Kerzendarstellung ab 1min Darstellung von moving average History Graph ohne Animation pr fen ob nicht zu nerv s http Request f r Polling Auf Server packen mit Wireshark pr fen Datenlast berechnen SSL Sessions analysieren m glichst nur 1 Session Binary Encoding Auswahl des Zahlungsweges Pr sentation des Projektes voraussichtlich in der Woche vom 21 Dez Demo Video des Prototyp 2 SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Sitzungsprotokolle Studienarbeit Daniel H fliger Dominik S sstrunk 7 Sitzungsprotokoll vom 02 12 09 7 1 Teilnehmer Prof Dr Markus Stolze Daniel H fliger Dominik S sstrunk 7 2 Tranktanden Abgaben Abstract Management Summary Poster Hauptabgabe 18 12 09 Wie Forex Ul Schlussspurt Was muss noch zwingend gemacht werden Dokumentation Weiteres Gegenleser J Joller 7 3 Beschl sse Abgaben Abstract Thema aus AVT Management Summary Selber text wie Abstract Poster Stichworte keine Texte Ziel 21 Dokument mit allem Abstract Zus tzliche Dokumentation f r Herr Stolze Demo Video Wiki Page wie in Sitzung von 23 09 besprochen Hilfe gt System durch Tipps at Start zeigen Abgabe n chste Woche Draft des 5 Seiten Papers Kontakt mit Gegenleser J Joller aufnehmen SA_ForeignExchangeUl pdf Version 1 0 127 131 18 12 2009 Foreign Exchange UI Sitzungsprotokolle 128 131 Stud
38. Liste angezeigt Erwartetes Resultat Wird eine neue EBS View angelegt ist diese in der Datenbank dem entsprechenden Benutzer zugeordnet und wird dem Benutzer angezeigt View ist in der Datenbank vorhanden Testfall Speichern einer EBS View Beschreibung Die EBS View enth lt verschiedene Tiles welche der Benutzer hinzugef gt hat Diese kann er laufend anpassen Currency Pair wechseln l schen hinzuf gen nderungen an einer EBS View werden durch den Speichern Knopf bernommen Erwartetes Resultat Nach dem Speichern einer EBS View wird diese auch beim n chsten Start der Applikation so geladen Auch nach dem Wechseln der Views muss der gespeicherte Zustand angezeigt werden Werden die nderungen nicht gespeichert muss nach dem Wechseln der Views oder nach einer Neuanmeldung der alte gespeicherte Zustand geladen werden Resultat nderungen der View werden in die Datenbank bernommen 2 1 3 Buy Sell Testfall Buy Sell auf einem Tile Beschreibung Der Benutzer hat die M glichkeit schnell und einfach W hrungen zu kaufen oder verkaufen Durch einen Klick auf den Buy oder Sell Button eines Tiles wird ein solcher Auftrag erfasst Erwartetes Resultat Nach dem Buy Sell Klick wird von der W hrung 1 so viel gekauft verkauft wie eingegeben wurde Zuerst muss der Benutzer jedoch noch in einem Fenster die Daten best tigen Ein Ticket muss dann erfasst sein angezeigt bei den Tickets Resultat Sicherheitsabfrage nicht
39. Man kann die Werte der Raten bei Bedarf ndern Klickt man nun den Send Order Knopf so a 5 gt wird der limitierte Auftrag abgesendet und PEN o SE die Eingabe geleert LU UU 20 30 21 00 21 30 2 0i UU Ak 30 23 30 19 20 E E Send Order Tpsell sl 1 4346 11 12 2009 be 09 13 Slsel e 1 4330 11 12 2009 15 09 13 nn CH 1 000 000 1r ooooo0 SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Benutzerdokumentation 104 131 Studienarbeit Daniel H fliger Dominik S sstrunk 6 1 1 Erfassen von Call Level Die Call Level k nnen nur in den beiden limitierten Auftragstypen OSO One starts the other sowie Call Level vorkommen A A Limit Order View R f Sell Buy 5min Die Call Level Erfassung wird mit derselben Methode get tigt wie bereits das Erfassen von StopLoss TakeProfit Einziger Unterschied die wenn Besse 1 4943 Linien sind blau und die Maus wird nicht nach lt oben bzw unten gezogen sondern nach links 1 4524 Vgl RE ARE N res Sell Buy 5min lal Limit Order View MT 1 4903 4953 WAS LEN a a eise gp i bp N r m N 2 D m Ce il DN fe N 1 4933 Order Type a0 sl Zone EA Send Order d demm er a ooso 11 12 2008 fs los 3 ES EEE F d Tps el 1 4043 11 12 2009 be 09 13 09 13 SES VEH SE alsem 1 4010 11 12 2000 fs os 13 Sy uf 1 4903 e R le eRe e ik BE E B je Dieses ver nderte Verhalten ist n tig u
40. Order Ticket Liste erscheinen Resultat Nicht Implementiert SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Benutzerdokumentation 96 131 Studienarbeit Daniel H fliger Dominik S sstrunk Foreign Exchange Ul Benutzerdokumentation SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Benutzerdokumentation 97 131 Studienarbeit Daniel H fliger Dominik S sstrunk 1 Anmeldung Wenn sie die Webapplikation Forex Trader aufstarten sehen sie folgenden Anmeldebildschirm in welchem sie ihre Benutzerdaten eingeben und sich anmelden k nnen Forex Trader 2 YC LDN ZRH SGP TKY 11 12 2009 03 33 08 33 09 33 16 33 17 33 Login Password Die Anmeldung am Forex Trader geschieht durch Login einen Benutzernamen sowie ein Passwort Die Eingabe best tigen sie mit einem Klick auf Login Username HansMuster oder durch Dr cken der Enter Taste Login SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Benutzerdokumentation 98 131 Studienarbeit Daniel H fliger Dominik S sstrunk Uhrzeiten anderer Handelspl tze e lt Hilfe anzeigen SPOT Datum Vom System abmelden Forex Trader 2 bersicht Logout Zi NYC LDN ZRH SGP TKY 11 12 2009 03 15 08 15 09 15 16 15 17 15 Spotdate 13 12 2009 Europe O k X AE 231 7 261 60 654 404 444 1 000 000 USD 1 000 000 CHF 1 000 000 CHF
41. Sitzungsprotokolle Alle Meetings mit dem Projektbetreuer und oder dem Auftraggeber werden mit einer Traktandenliste vorbereitet welche den Teilnehmern vor dem Meeting gesendet wird Alle Meetings werden protokolliert damit Vorschl ge Kritik und Abmachungen schriftlich erfasst sind 9 4 Dokumentvorlagen F r alle Dokumentationen wird die Vorlage 99_Templates document_template dotx verwendet F r Sitzungsprotokolle wird die Vorlage 99_Templates metting_template dotx verwendet 9 5 Versionsverwaltung 9 5 1 Dokumentenversionen Die Versionierung der Dokumente sieht wie folgt aus lt Major Version gt lt Minor Version gt Die 1 Version von Dokumenten ist immer 0 1 die Minor Version wird bei jeder Anpassung erh ht Die Major Version wird dann erh ht wenn das Dokument zur Abgabe bereit ist 9 5 2 Code Verwaltung Der Code wird mit SVN verwaltet und versioniert 9 6 Automatisierung Auf dem Server auf welchem der Hudson Build Server l uft wird ein Buildjob erfasst welcher automatisch alle 4 Stunden ausgef hrt wird und die Build Reports per E Mail ans Team schickt 9 7 Tests 9 7 1 System Tests Systemtests werden basierend auf den Use Cases durchgef hrt protokolliert ausgewertet und zeigen ob die Software den funktionalen Anforderungen gen gt 9 7 2 Usability Tests Externe Benutzer potentielle Benutzer des Systems testen die Prototypen auf ihre Benutzerfreundlichkeit und geben Feedback welches dann ausgewerte
42. Zeit im Soll ausser auf die letzten zwei Wochen welche doch noch einiges an Arbeit gebracht haben 2 3 Teamarbeit Die Zusammenarbeit mit Daniel H fliger funktionierte meinem Erachten nach meist sehr gut Wir arbeiteten fast nie am selben Teil der Applikation herum was dazu f hrte dass wir uns nicht allzu oft in die Quere gekommen sind Auch die Dokumentation wurde klar aufgeteilt sodass wir uns auch hier nicht gegenseitig behinderten Die einzigen Probleme entstanden dann auch wenn einer von uns Zwei nur sehr sporadisch seine ge nderten Dateien eingecheckt hat Dies f hrte ein bis zwei Mal zu kleineren Konflikten 2 4 Fazit Mit dem Endprodukt bin ich zufrieden Nat rlich hat es noch einige Dinge die noch nicht komplett abgearbeitet sind und man k nnte hier nat rlich noch unz hlige Stunden investieren doch f r einen ersten Prototypen um zu zeigen was mit Silverlight m glich ist ist uns dies durchaus gelungen Das Projekt im Zusammenhang mit Silverlight und der ganzen Foreign Exchange Geschichte hat mir eigentlich gut gefallen und ich war auch stets motiviert jedoch hatte ich mit der Zeit das Gef hl dass eine Bankenapplikation f r Silverlight Beginner nicht gerade geeignet ist und ich mir somit ein wenig mehr Vorahnung in diesem Bereich gew nscht habe Internettechnologien im Allgemeinen finde ich eine ganz spannende Sache Ich hoffe auch in Zukunft mit diesen Technologien zu tun zu haben Ein Vergleich zwischen Flex Silverlight
43. aften Eingabe wir dem Benutzer ein Fehler angezeigt Resultat Verhalten wie beschrieben 3 1 1 Tiles Testfall Hinzuf gen eines Tiles Beschreibung Erwartetes Resultat Durch klick auf den Tiles Hinzuf gen Button soll ein Einstellungsfenster ge ffnet werden auf welchem man die Einstellungen des Tiles vornehmen kann Best tigt man die Eingaben soll ein Tile der EBS View hinzugef gt werden Nach Auswahl des W hrungspaares auf dem Einstellungsfenster und der Best tigung des Dialoges muss ein neues Tile in der EBS Ansicht mit dem ausgew hlten W hrungspaar angezeigt werden Wird eine Highlight Color ausgew hlt muss das Tile die ausgew hlte Farbe annehmen Resultat Beides wird korrekt bernommen Testfall Einstellungen eines Tiles ndern Beschreibung Die Einstellungen eines Tiles k nnen zur Laufzeit ge ndert werden auch das W hrungspaar Erwartetes Resultat Nach Auswahl des W hrungspaares auf dem Einstellungsfenster und der Best tigung des Dialoges muss ein neues Tile in der EBS Ansicht mit dem ausgew hlten W hrungspaar angezeigt werden Wird eine Highlight Color ausgew hlt muss das Tile die ausgew hlte Farbe annehmen Resultat Beides wird korrekt bernommen Testfall Tile Position ndern Beschreibung Die Position der einzelnen Tiles kann durch Drag amp Drop ge ndert werden Erwartetes Resultat Nach dem Drag amp Drop der Tiles werden diese an der neuen Position angezeigt Resultat Nicht i
44. angeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Summary Studienarbeit Daniel H fliger Dominik S sstrunk 1 2 Bestehende L sungen 1 2 1 Aktuelle L sung https FXEXPERT HOME Positions Dyamiaw Deal Capture Deal doter Rates and Charts Customization www credit suisse com FX trade EUR USD Spot 160309 5a ei Sell EUR Buy EUR 115 1 15 21 1 78 Sell USD buy USD 147 Sell EUR Spot 150309 Spot 16 03 09 Buy EUR Le el De Price Info New York Landan Zurich Singapore Tokyo 04 53 AM 05 53 AM 09 59 AM 04 59 PM 05 59 PN Details api Sustome ESTBANK AGI 0835 Suzinese daie 120312009 Trader ID CFX trade mit Order Soot 160309 GER Sell USD Buy USD gt 1 000 000 00 EUR 122 a 122 ER Sell EUR Buy EUR gt 1 000 000 00 eur Spot 1610300 CES Sall EUR Buy EUR 1 000 000 00 eur Spot 160309 gt ema uso gt 1000 00 00 ewe p Spot 16 03 09 GBFP USD w 1 37 Spot 16 03 09 1 7 54 Sell GBP Buy GBF gt 1 000 000 00 cae rl 1 000 000 00 ser Ir 159 Sell GBP 159 St Buy OBP I E EA sooo gt I ooon kl 1 Ansicht der abonnierten Kurse in EN Expert 1 000 000 00 USD Spot 10309 0 92 0 92 799 845 Sell EUR Buy EUR _ 1 000 000 00 EUR L E Do 1 000 000 ij 108 131 Die aktu
45. angedEventHandler Currency2 String Name String Ian int event LimitOrderDto PropertyChanged PropertyChangedEventHandler LoadLimitOrder LimitOrder LimitOrderDt INotifyPropertyChanged TicketDto HistoryDataDto property Id int Time DateTime Userld int CurrencyPair int CurrencyPairs string Type int Amounti double Typei int Rate1 double Date1 DateTime Amount2 double Type2 int Rate2 double Date2 DateTime Amount g double Types int Rate3 double Dates DateTime SaveLimitOrder LimitOrderDto LimitOrdar _time DateTime property DealTime DateTime Direction DealDirectio property Type DealType Rateld double Currency1 String Time DateTime Currency2 String MinSell double DealAmount Double MaxSell double TradeAmount Double MinBuy double MaturityDate DateTime MaxBuy double RefNr Int32 event TradeRate Double PropertyChanged PropertyChangedEventHandler i ar aP ar ar ar ir d E ar Die Models Datenklassen werden f r die bertragung des WCF Services verwendet Sie bestehen meist nur aus Properties da sie keine Funktionalit t implementieren Somit wird sichergestellt dass die bertragenen Daten nicht unn tig Ballast verursachen und der WCF Service alle Datentypen vers
46. apiere wie auch f r den Devisenhandel Auch wenn sein Kapital noch nicht so gross ist handelt er immer wieder mit kleineren Betr gen ber das Online Portal der Bank 2 3 Otto Otto 52 j hrig Inhaber eines Elektronikgesch ftes welches Platinen f r Grossprojekte herstellt und best ckt Die Elektronikkomponenten kauft er ber einen langj hrigen Handelspartner in den USA ein auf welchen er sich verlassen kann Um seinen Kunden Offerten zu erstellen welche f r ihn m glichst rentabel sind sollte er wissen wie viel ihn die Komponenten kosten Er m chte deshalb in Zukunft CHF in USD anlegen so k nnen ihm gr ssere Kursschwankungen nichts anhaben Vom Devisenhandel versteht er nicht sehr viel Er hat die von der Bank zur Verf gung gestellten Dokumente sowie ein Buch gelesen und m chte m glichst einfach Gesch fte abwickeln k nnen Vom Computer versteht er nicht allzu viel Er beherrscht allerdings das Zehnfinger System um seine Offerten zu schreiben SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Szenarios 46 131 Studienarbeit Daniel H fliger Dominik S sstrunk 3 Szenarios 3 1 Oskars Arbeitstag Morgens p nktlich um 7 30 Uhr ist Oskar an seinem Arbeitsplatz und richtet sich f r seinen Tag ein Er hat das Gef hl dass heute der Schweizer Franken im Verlaufe des Tages ein wenig einbricht Um die Devisen handeln zu k nnen meldet er sich an dem FOREX System seines Arbeitgebers an und w hlt eine An
47. atures welche noch zu beschr nkt sind wie z B WCF Service Bindings erweitern dann sehe ich daf r eine grosse Zukunft SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Pers nliche Berichte 20 131 Studienarbeit Daniel H fliger Dominik S sstrunk 2 Dominik S sstrunk 2 1 Allgemein Silverlight hat mich in seinen Bann gezogen Anfangs war ich noch skeptisch gegen ber Silverlight da es abh ngig von NET ist und ich mir nicht sicher war ob sich Silverlight jemals durchsetzen wird Doch nach der Einarbeitung in das Thema wurde mir schnell bewusst dass Silverlight in den meisten Dingen wohl schon weiter ist als vergleichbare Technologien wie Flash oder Java 2 2 Ablauf des Projektes Motiviert wie wir Jungen so sind st rzten wir uns nat rlich auf das Projekt und hatten viele Ideen f r den Prototyp die Versionierung und das Testbed Die gr sste Zeitliche Fehlinvestition f r mich war dann auch dass wir die Versionierung mit einem Team Foundation Server bewerkstelligen wollten Dies kostete mich ca eine Woche Die nderung auf SVN dauerte dann gerade einmal noch 30 Minuten Mit der Zeit wurde mir auch bewusst dass wir alle uns aufgetragenen Funktionen f r den Prototyp und das Testbed wohl nicht erreichen w rden was dazu f hrte dass wir relativ lange an der Implementation herum schraubten und so mit der Dokumentation nicht ganz im Zeitplan waren Von den get tigten Stunden waren wir eigentlich die ganze
48. bServiceUrl strin NewViewFail strin SI strin NewViewlnputTitle strin SIBuy strin NewViewWindowfTitle strin SISell strin RateError strin To string TpBuy strin TpSell strin Die Ressourcen beinhalten Texte welche im Ul angezeigt werden um diese schneller und einfacher lokalisieren zu k nnen 5 2 2 UserControls description string TileControl title string Settings_ ae RoutedEventArgs void windowType MessageBoxHelper MessageBoxHelperWindowType DeleteTile_Click object RoutedEventArgs void Enlarge_Click object System Windows RoutedEventArgs void MessageBoxWindow Sell_Click object RoutedEventArgs void CancelClick object RoutedEventArgs void Buy_Click object RoutedEventArgg void OkClicklobject RoutedEventArgs void l hyperlinkButton_Click object System Windows RoutedEventArgs void MessageBoxWindow_Loaded object RoutedEventArgs void property EE IsEnlarged bool Description string dn int Windowlmage Image Rateld int WindowType MessageBoxHelper MessageBoxHelperWindowT ype HighlightColor SolidColorBrush Title string HighlightColorIndex Int32 event Settings TileSettings MessageBoxButtonClicked EventHandler Ratelnfo ExchangeRateDetail PropertyChanged PropertyChangedEventHandler UserControl UserControl UserControl TileDetailControl TileMainControl TileSettingsWindow TileDeta
49. beit findet in Zusammenarbeit mit der Credit Swiss statt 1 1 Ansprechpartner amp Auftraggeber Dr Beat Liver Credit Suisse IT Treasury Flow Products KSTC 11 beat liver credit suisse com 1 2 Betreuer HSR Prof Dr Markus Stolze Institut f r Software mstolze hsr ch 2 Ausgangslage Gegeben ist eine White labelled Forex Trading Internet Applikation welche aus Java Applets und HTML Masken besteht Die Handelsmaske f r Devisen unterst tzt folgende Preisstellungsmethoden Bei der Request for Quote Preisstellung werden die Gesch ftsdetails erfasst und ein Wechselkurs wird angefragt vlg Demoversion 1 Dies ist somit ein Pull Modell Beider Preisstellung mittels streamed handelbaren Kursen erfasst der Benutzer die Gesch ftsdetails wenigstens das W hrungspaar und subskribiert damit die entsprechenden Kurse vom Server Dies ist somit ein Push Modell 3 Ziele und Aufgabenstellung Entwurf und Implementation einer Gesch ftserfassungsmaske auf neuerer Graphical User Interface Technologie wobei folgende Ziele vorgegeben sind das Konzept soll grunds tzlich f r die gesamte Produktepalette verwendbar sein muss d h von den einfachen Kassagesch ften bis zu den komplizierten Limitierten Devisenauftr gen wie One Cancels the Other OCO Die Wahl der Graphical User Interface Technologie der neueren Generation soll begr ndet werden Die Implementation soll die Erfassung von Devisenkassagesch ften erlauben und dies sow
50. dOnly sellDataListBinderProperty DependencyProperty DependencyPrope readOnly FXGraphExtended SetStopLoss double bool void SetTakeProfit double bool void SetCallLevel double bool void Repaint void property BuyDatalistBinder ObservableCollection lt KeyValuePair lt DateTime double gt gt SellDataListBinder ObservableCollection lt KeyValuePair lt DateTime double gt gt LimitOrderType LimitOrderType StopLoss double TakeProfit double CallLevelTp bool CallLevel double GraphZoomInSeconds int F r n n event PropertyChanged PropertyChangedEventHandler GraphSizeChanged EventHandler Dieses UserControl zeigt einen Graphen mit Buy Sell Linie an welcher mit Listen von ExchangeRates Daten abgef llt werden kann Es bietet zudem Funktionalit ten um die LimitedOrders grafisch erfassen zu k nnen In der obigen Grafik sind nur die Public Member zu sehen 5 2 2 6 1 SetStopLoss SetTakeProfit SetCallLevel Setzt den Wert der StopLoss TakeProfit CallLEvel Linie welche bei den LimitedOrders angezeigt werden kann 5 2 2 6 2 Repaint Zeichnet den Graphen mit seinen Daten neu SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 83 131 Software Architecture Document Studienarbeit Daniel H fliger Dominik S sstrunk Foreign Exchange UI 6 Sequenzdiagramm Das Sequenzdiagramm welches die Benutzeranmeldung bis hin zur Rat
51. da wir das noch nie gemacht hatten und die Module welche dies behandeln MsTech IntT noch vor uns liegen Zum Gl ck ist die Silverlight WPF Community schon sehr gross da Microsoft Silverlight extrem pusht und die Anzahl Arbeitspl tze in diesem Bereich stark zunimmt 4 2 1 Performance Die Performance von Silverlight ist relativ gering Anfangs hatten wir noch ohne Performanceoptimierung gearbeitet und es kam schnell vor dass die Prozessorauslastung ber 30 betrug Nachdem wir das Zeichnen von der CPU auf die GPU ausgelagert hatten sank dieser Wert drastisch in den einstelligen Prozentbereich Problematisch ist es nur dann wenn mehrere Graphen gleichzeitig angezeigt werden Bei diesen Graphen sind die Performanceprobleme aber auf die Animationen abzuschieben Die Animationen ben tigen sehr viele Ressourcen vor allem dann wenn die Framerate der Silverlight Applikation nicht gesetzt ist da Silverlight standardm ssig 64 Frames pro Sekunde zeichnet was zu viel des Guten ist 4 2 2 Security Silverlight 3 bietet wohl f r eine Bank noch zu wenige Sicherheiten doch in Silverlight 4 wird die Sicherheit markant erh ht Wie schon beschrieben wird die Unterst tzung von WCF verbessert was wohl auch zu erh hter Sicherheit f hren wird Ansonsten kann man auch die ganze Applikation Client Service Website in einer SSL Session betreiben 4 3 Bankengesch ft Da wir keine Banker sind war es f r uns nicht leicht diese Gesch ftsprozesse r
52. den Erwartetes Resultat Wird ein Call Level eingegeben wird dieser mittels blauer Linie mit Verlauf angezeigt Take Profit Verlauf nach oben Stop Loss Verlauf nach unten Wird ein Stop Loss oder Take Profit eingegeben so werden diese rot gr n dargestellt Eingaben von Stop Loss Take Profit mit der Maus m ssen in der Liste angezeigt werden Diese werden durch CTRL Klick Mausbewegung rauf runter gezeichnet Eingabe des Call Levels mittels CTRL Doppelklick nur bei Typ Call Level m glich Resultat Verhalten funktioniert noch nicht wirklich muss noch fertig gestellt werden SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Testprotokolle 88 131 Studienarbeit Daniel H fliger Dominik S sstrunk Beschreibung Einen Limit Order soll man mittels klick auf den Send Limit Order Button speichern k nnen Die get tigten Eingaben werden dann gespeichert und w rden vom Banksystem ausgewertet werden Erwartetes Resultat Nach dem senden eines Limit Orders wird ein Fenster angezeigt auf welchem man den Limit Order noch einmal best tigen muss Best tigt man diesen so soll ein Datensatz in der Datenbank angelegt sein und dieser muss in der Limit Order Ticket Liste erscheinen Das Eingabeformular des Limit Orders wird daraufhin geleert um einen neuen Limit Order zu erfassen Resultat Nicht Implementiert SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Testprotokolle 89 131
53. df Version 1 0 18 12 2009 Foreign Exchange UI Inhaltsverzeichnis Studienarbeit Daniel H fliger Dominik S sstrunk 1 Dokumentintormationen DO N On Un A UU N 9 Q alitatsmas sahe EE Anforderungsspezifikationen sessssesesesscssoesesesesoecessscesecssesescecee 1 Dokumentinformattonen nennen 2 Allgemeine Beschreibung 3 Spezifische Anforderungen sessssssssersssssesssrerressrrrsssrerssererresrerrsseeeee e RE e SZENAL O8 eet 1 Dokumentinformattonen nennen EE 3 nee nee es ernennen Mei NEE EE 1 Dokumentinformattonen nennen 2 Doman le E 3 System Sequenzdiagramme deng deebdeketageE Nee dekteggegkE ee 4 Swvstemoperationen A PADELDIEOTOEVDE Ee 1 Dokumentinformattonen nennen Se A BEE 3 EE d ES ORDER View eskeEKEKEEEREEEEEEREREEREREREENERERRRNERENRERNENENKERKER KREE EE EEN 5 Weitere VIEWS ein nee Software Architecture Document esues0srnnenonnnonnnnenonnnnnnnnennn en 1 Dokumentinformattonen nn 2 Architektonische Darstellung soossessessenssseersssrrresreressrrrrsssreressses 3 Architektonische Ziele und Einschr nkungen essessssessresersereerreeee 4 Logische Architektur au nenne SA_ForeignExchangeUl pdf Version 1 0 PACU REONE een es es ehe Projekt BERSICHT ereach eat Projektorganisation VE Management Abl ute Risiko Management eu e Ing ett URL TEE 3 131 18 12 2009 Foreign Exchange UL Inhaltsverzeichnis 4 131 Studienarbeit Daniel H fliger Domi
54. dienarbeit Daniel H fliger Dominik S sstrunk 3 4 Limited Order 54 131 sd LimitedOrder System e newLimitedOrder l chooseCurrencyPair Et chooseOrderT ype Type enterAmount Amount enterLimitsAndDirections Limits Directions enterExpiration Date enterZone Zone activateOrder l gg checkAndAcceptOrder SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Domainanalyse 55 131 Studienarbeit Daniel H fliger Dominik S sstrunk 4 Systemoperationen 4 1 Userauthentication 4 1 1 Login Operation Login user Vorbedingung Silverlight Plugin Installiert Seite verf gbar Nachbedingung Bei richtigen Benutzerangaben angemeldet 4 2 EBS View CRUD Vorbedingung Userauthentication erfolgreich 4 2 1 Show Last EBS View Operation ShowLastEBSView Vorbedingung Nachbedingung Anzeige des EBS Screens so wie ihn der Benutzer zuletzt gesehen hat oder bei der Erstanmeldung Default Screen 4 2 2 Choose Different EBS View Operation ChooseDifferentEBSView name Vorbedingung Nachbedingung Anzeige eines anderen gespeicherten EBS Views 4 2 3 Move Tile Operation MovefTile tile Vorbedingung Mindestens zwei Tiles in EBS View Nachbedingung Verschobenes Tile an neuer Position gespeichert 4 2 4 Subscribe Tile Operation SubscribeTile tile Vorbedingung Mindestens ein noch nicht abonniertes Tile vorhanden Nachbedingun
55. diese gedr ckt und zieht die Maus nach oben je je Les je oO gt je oO oO m 3 m oO m kel m oO m kel Iw Iw GC G Ei EI Ai et et _ N i mn mN N Order Type oco Zu Zone A Send Order a z 1 000 000 TpSell v 0 0000 11 12 2009 15 09 13 z e Kee Sell Buy 5min Limit Order View 1 000 000 Siet 0 0000 11 12 2009 15 09 13 1 4951 Erscheint ein gr ner vertikaler Balken hat man alles richtig gemacht L sst man nun die Maustaste los wird der Startwert der Linie als Rate f r den Take Profit eingetragen und ein Verlauf wird im Graph 283 83 R 8 8 8 R 8 R dargestellt O a u E EES SS LS Order Type OCO Zone Ea SendOrder 1 000 000 Tpsell den 0 0000 11 12 2009 Del 09 13 1 000 000 SiSell 10 0000 11 12 2009 fs 09 13 EM smin DEE m Mit dem gleichen vorgehen kann man nun auch einen Stop Loss Wert hinzuf gen Dies geschieht wiederum durch dr cken der CTRL Taste und Klicken der linken Maustaste diesmal aber durch ziehen der Maus nach unten Sell Bug Smin el Limit Order View 1 4518 E CA E e o c en oO m oO en O Les m amp N CN oi ei e ei Ki hand N mn N Ce A DN N N r Order Type OCO Bal Zone A Send Order 1 000 000 TpSell_ el 1 4946 11 12 2009 l15 09 13 1 000 000 Sisel v 0 0000 11 12 2009 f15 09 13 Der Fertig erfasste Auftrag wird nun dargestellt
56. dig auf CD DVD in 5 Exemplaren abzugeben Auf Wunsch ist f r den Auftraggeber eine gedruckte Version zu erstellen Zudem ist eine kurze Projektresultatdokumentation im Wiki von Prof Stolze zu erstellen Weiterhin erw nscht ist die Erstellung eines kurzen Videos oder einer Camtasia Demo sowie die Erstellung einer Kurzzusammenfassung bis maximal 5 Seiten welche die wichtigsten Resultate und Erkenntnisse der Arbeit zusammenfasst Abteilung Informatik Herbstsemester 2009 Studienarbeit f r Daniel H fliger und Dominik S sstrunk Foreign Exchange User Interface Seite 3 1 Markus Stolze Datei SA H fliger S sstrunk CS FX docx Ausgabe 1 0 Letzte nderung am 14 09 09 SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Aufgabenstellung Foreign Exchange UI 8 131 Studienarbeit Daniel H fliger Dominik S sstrunk 7 Termine Siehe auch Terminplan auf https www hsr ch Termine Diplom Bachelor und 5142 0 html 14 09 2009 Beginn der Studienarbeit Ausgabe der Aufgabenstellung durch die Betreuer 15 9 2009 8 00 9 00 Kick off Sitzung mit Auftraggeber an HSR 6 112 18 12 2009 Abgabe Kurzbeschreibung an das Abteilungssekretariat mit folgendem Formular gem ss https www hsr ch Allgemeine Infos Diplom Bach 4418 0 html 18 12 2009 17 00 Abgabe des Berichtes an die Betreuer 8 Beurteilung Eine erfolgreiche Studienarbeit erh lt 8 ECTS Punkten 1 ECTS Punkt entspricht einer Arbeitsleistung von ca 25 bis 30 Stunden F r die Mod
57. e e Komplizierte Prozesse s OCO e OSO Sell Buy Sell Buy 0 80 CEA 894 d 1 000 000 EUR Spot Outright Swap i A v e CREDIT SUISSE 2 Silverlight 18 12 2009 Foreign Exchange Ul Anhang 131 131 Studienarbeit Daniel H fliger Dominik S sstrunk 2 System Sequenz Diagramm F CurrencyHelper Client l l l l l E EI 12 Eas l l l l 7 N s o D SIA eo O GetCurrencyPairs l l GetCurrencyPairs List lt CurrencyPairs gt l loop CurrencyPair for each result ExchangeRateGenerator l l Login bool isLoggedin TradeViewModel GetEbsVienwsl List lt EbsView gt for each result i SwitchToDefaultEBSViewi i l GetRate id lastReceivedDate BxchangeRate b rateChanged GetNextjRate SA_ForeignExchangeUl pdf Version 1 0 Forex Data malen A gt 5 I W hrungspaare Laden und f r jedes W hrungspaar einen ExchangeRateGenerator erstellen welcher mit Hilfe von Events die W hrungspaare aktualisiert Benutzer mit gehashtem Passwort SHA 256 in Datenbank suchen Falls der Benutzer gefunden wird so wird dieser in einer Session gespeichert um die weiteren Anfragen zu authentisieren Nach dem Anmelden wird ein TradeViewModel erstellt dieses l dt alle EbsViews welche dem Ben
58. edit Suisse Projektbeschreibung Ziel Anforderungen Client Anforderungen Testbed Forex Trader vers L Zu Ergebnis Testbed e Machbarkeit Silverlight Ap e Gute Bedienbarkeit e Erzeugen von Devisenkursen ZC e Kommunikation mit Client e e S USOCHF AR usoeur om Rz usoeur Anm EWmRUsD RE uspirr sane as e e plikation im Bereich Forex e Sicherheit Benutzerverwaltung BEE ___ m Bregen ze pa ber einzelnen WCF Service Trading e Einfache Wartbarkeit e Auftr ge ausf hren ag 514 64 69t 64469 79 83t 244 274 Datenbankzugriff ber Ling to e Gute Skalierbarkeit ae en SOL Rei en BS e ASP Session als einzige Sicher era er e heit S 244 274 63 664 N Km gg EE User Interface SS e Selbsterkl rend Tee Forex Web pen aeg Set si ouro Wi Sao k Trennung durch MVVM zum ame ani a cx Be Ge en Cen MM Auslagerung auf GPU E ee eg e Architektur Erkenntnisse Server Technologien Silverlight Foreign Exchange USDEUR e Windows 2003 Server e SQL Server 2008 e C Prototyp e Silverlight SL 3 e C XAML SA_ForeignExchangeUl pdf e Linq to SQL e WCF e MVVM Version 1 0 es WCF minimal implementiert e Fehler bei Animationen e Verbesserung mit SL 4 Performance e Stark abh ngig von Netzwerk e Animationen verlangsamen Ul Security e M glichkeit ber SSL Keine Sicherheit bei WCF Ser vic
59. ei HSR HOCHSCHULE F R TECHNIK iN RAPPERSWIL CREDIT SUISSE l EN E INFORMATIK Foreign Exchange UI Semesterarbeit Abteilung Informatik Hochschule f r Technik Rapperswil HSO9I Autoren Daniel H fliger Dominik S sstrunk Betreuer Prof Dr Markus Stolze Projektpartner Dr Beat Liver Credit Suisse Z rich Gegenleser Prof Dr Josef Joller Foreign Exchange UI Inhaltsverzeichnis 2 131 Studienarbeit Daniel H fliger Dominik S sstrunk Inhaltsverzeichnis Jun VE e een innerer 2 Aufgabenstellung Foreign Exchange Ul s euesssnenennennnnnnensnnnnunsnnnnnnnnnunsnsnnunsnsnnununnnnene 6 1 Auftraggeber und Betreuer insni E T ES E a 6 EN EI 6 3 Ziele und Aufgabenstellune ecenin a A 6 4 M sliche Erweiterungen un a a et 7 5 e DUCA ONUN anerkennen een 7 6 wie EE O ee ee ee A 7 7 dun E 8 EE EE 8 Erkl rung ber die eigenst ndige Arbeit u rssss0sss0nnnsnnnnnnsnnnnnnnnnnnnnnnnsnnnnnnnnnnsnnnnn 9 ege E 10 Ne E 10 e T E 10 E eet ME EEN 10 Management vu un e EE 11 1 E ue Er 11 2 OBEN EE 11 3 leg enee Te E E 11 A EISEN ee ee een leere ee 12 SE e lte 13 TECcHnISCHer DENCE E 14 1 Dokumentinformatonen EEN 15 2 Einleitung und bersicht sseeseeseeseesseesseesnessessreerrssressrirrsstessrestiesrestreettssttstttsrinsttsrisseesresreseee 16 SC E Dee 17 D DE e lte EL TE 18 Pers nliche SEVEN 19 C TC Ela eo nee 19 SN Ee TEE gn 20 Mee el TC 21 Wilz EE 22 SA_ForeignExchangeUl p
60. eigen und die angezeigte Ansicht verwalten Benutzer M chte die Ansicht von W hrungspaaren anpassen Use Case Userauthentication abgeschlossen Benutzer sieht EBS Ansicht so wie er diese gerne sehen m chte und sie beim letzten Mal eingestellt hat 1 Der Benutzer sieht die zuletzt eingestellte EBS Ansicht 2 Er bearbeitet die Ansicht indem er die Kacheln an die gew nschte Position verschiebt Bei der Erstanmeldung wird dem Benutzer eine Standardauswahl angezeigt M chte er eine andere gespeicherte Ansicht ansehen so w hlt er diese in einer Liste aus Der Benutzer f gt eine neue Kachel durch Klicken und Ausw hlen des W hrungspaars Sub Use Case Choose Currency Pairs zur Auswahl hinzu Der Benutzer entfernt eine Kachel indem er diese schliesst Der Benutzer m chte eine weitere Ansicht erstellen Er erstellt eine neue Ansicht durch Ausw hlen von Ansicht hinzuf gen Eine alte nichtbenutzte Liste soll entfernt werden Der Benutzer w hlt Ansicht entfernen Laden der Daten im Minimum bei jedem Anwendungsstart Trader mehrmals t glich Version 1 0 18 12 2009 Foreign Exchange Ul Anforderungsspezifikationen 41 131 Studienarbeit Daniel H fliger Dominik S sstrunk Amateur w chentlich Miscellaneous Die aktuelle Ansicht wird beim W hlen einer anderen neuen Ansicht sowie beim Verlassen der Applikation gespeichert 4 5 Sub Use Case Choose Currency Pairs Main Success Scenario 1 Auswahl der 1 W hr
61. eignExchangeUl pdf 88 87 86 85 84 83 82 81 80 79 78 84 131 Der Client hat beinhaltet mit Abstand am meisten Code Dies ist damit zu E Client 1870 Lines erkl ren dass die E Web 510 Lines Version 1 0 ViewModels einiges an Code zur Implementierung m DataLibrary 790 Lines beinhalten Die Codezeilen beinhalten keine XAML Dateien Maintainability Index E Client E Web E DataLibrary 18 12 2009 Foreign Exchange UI Testprotokolle 85 131 Studienarbeit Daniel H fliger Dominik S sstrunk Testprotokolle 1 Testvom 27 11 09 Durchgef hrt von Dominik S sstrunk 1 1 Systemtests Testfall Benutzerlogin Beschreibung Benutzer welcher in der Datenbank erfasst ist ans System anmelden Erwartetes Resultat Bei korrekter Eingabe ist der Benutzer am System angemeldet und kann W hrungen handeln Bei einer fehlerhaften Eingabe wir dem Benutzer ein Fehler angezeigt Resultat Verhalten wie beschrieben 1 1 1 Tiles Testfall Hinzuf gen eines Tiles Beschreibung Durch klick auf den Tiles Hinzuf gen Button soll ein Einstellungsfenster ge ffnet werden auf welchem man die Einstellungen des Tiles vornehmen kann Best tigt man die Eingaben soll ein Tile der EBS View hinzugef gt werden Erwartetes Resultat Nach Auswahl des W hrungspaares auf dem Einstellungsfenster und der Best tigung des Dialoges muss ein neues Tile in der EBS Ansicht mit dem ausgew hlten W hrungspaar angezeig
62. elle L sung der Credit Suisse besteht aus Java Applets und nennt sich FX Expert Der Aufbau des User Interfaces kann zu grossen Teilen davon abgeleitet und verbessert werden 1 2 2 Morgan Stanley Matrix http Die L sung von Morgan Stanley ist mit Adobe Flash gel st und besticht vor allem durch sein sch nes Design Weitere Features dieser Losung sind www morganstanlev com matrixinfo aktuelle Videos von Experten mit Markteinsch tzungen und Empfehlungen SA_ForeignExchangeUl pdf Version 1 0 EUR AUD GDP USD 300 SPOT 425 149 Q A 2 De Ge USD JPY II 174 J 2 Ansicht der Kurse in der L sung von Morgan Stanley 18 12 2009 Foreign Exchange Ul Summary 109 131 Studienarbeit Daniel H fliger Dominik S sstrunk 2 Silverlight Microsoft Silverlight ist ein Plug In f r Webbrowser welches auf NET basiert die Ausf hrung von Rich Internet Applications erm glicht und damit ber die M glichkeiten des klassischen HTML hinausgeht Dem Anwender werden z B Drag and Drop 3D Effekte und Animationen zur Verf gung gestellt Zudem erfolgt meist eine schnellere Reaktion als bei klassischen HTML basierten Anwendungen da die Anwendung auf dem lokalen Rechner ausgef hrt wird und somit nicht auf die Reaktion eines Servers gewartet werden muss Silverlight ist als propriet res programmierbares Plug in f r Windows und Apple Macintosh verf gbar F r Linux wird von Novell mit Zustimmung und Unterst t
63. ellen 10 7 testen Testergebnis dokumentieren 7 5 Summary Kurzbeschreibung des Projektes f r das 4 7 WIKI von Herrn Prof Dr Stolze 7 7 Review 6 21 E 8 1 Einarbeitung Silverlight Erlernen der Silverlight Technologie 20 26 8 2 Einarbeitung FOREX Verstehen wie der Devisenhandel 10 10 funktioniert 8 3 Serverarchitektur Streaming Technologien kennenlernen 10 12 Streaming 9 Sitzungen 32 47 9 1 Teammeetings H fliger S sstrunk 14 30 9 2 Meetings mit Betreuer H fliger S sstrunk Stolze 14 13 9 3 Meetings mit Auftraggeber H fliger S sstrunk Stolze Liver A A und Betreuer 10 Qualit tssicherung 13 15 10 1 Risk Management Auflistung m glicher Risiken und deren 3 1 Folgen auf das Projekt 10 2 Code Reviews Quellcode durchsehen und 10 14 refactorisieren Total 473 525 SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Projektplan 32 131 Studienarbeit Daniel H fliger Dominik S sstrunk 8 Infrastruktur 8 1 R umlichkeiten Gemeinsam wird an den uns zugeteilten Stationen im Zimmer 1 258 gearbeitet Meetings werden in freien reservierten Sitzungsr umen an der HSR abgehalten 8 2 Hardware Arbeiten an eigenem Notebook oder der zugeteilten Station Der Server ist ein von der Schule zur Verf gung gestellter Virtueller Server 8 3 Software 8 3 1 TestServer Windows Server 2003 SVN VisualSVN Hudson M SQL Server 2005 8 3 2 Programmiersprachen CH XAML XML 8 3 3 Entwic
64. enabfrage darstellt befindet sich im Anhang 7 Datenbank puan E ymum A 1UDOUUE La Pd Kaal E Junti Ang fa IPS i ail Ama Flessus4ns paga d DIE A Said Coid E anje papal EIER amp EREA E cadi di EILUDOGUUE Ve zaEP ZajEA nr zadi SUP d Lamp E 1 jE4 N pad de Tlunouue E adh E adiou E Pussn amp zul H DEA say adoag E apapun wel CES h SOU OS E pewa E paomssed ET Sue HO na Sa saladoig E Jasi aeu ed Adan day pamu EI anjen E Jedisuanums E DA wadag E Amang papisal PRO SSAgByBng EE Jap Ace D D aaazCha d amp Fre gisusaana Ar A LaIatOid E ANZ ma Agaa oe Ara je janzeu Ar Sjeyapea E JUNGLUGSPEA E Junowugjesp Ara ZA AN de p ou N adi UEop d i phan E a0 dai Di amp i uB s gt sanasdoAg ans E SWEU E H sapadodg AHL zA JUBANI La ELEN EE gm A DA say4sdoAg ITT gjuan b EIERE Ke H abesau E E r PEA j sayaadoag E f DU an d aE A ap EanIaddeid Dalias 18 12 2009 Version 1 0 snExchangeUl pdf SA_Forei Foreign Exchange UI Software Architecture Document Studienarbeit Daniel H fliger Dominik S sstrunk 8 Codeauswertung Lines of Code Der Maintainability Index gibt an wie gut welches Projekt wie wart bar ist Je h her der Score desto besser die Wartbarkeit Der Client ist sicherlich am schwierigsten zu warten da es auch das komplexeste Projekt ist SA_For
65. enarbeit Daniel H fliger Dominik S sstrunk Foreign Exchange Ul Szenarios SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Szenarios 44 131 Studienarbeit Daniel H fliger Dominik S sstrunk 1 Dokumentinformationen 1 1 nderungsgeschichte Datum Version nderung Autor i S S 06 10 09 1 0 Review d 15 12 09 1 1 berarbeitung Verbesserung d SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Szenarios 45 131 Studienarbeit Daniel H fliger Dominik S sstrunk 2 Personas 2 1 Oskar Oskar ist ein 43 j hriger Banker der im Devisenhandel arbeitet Er benutzt w hrend der Arbeit stets einen Computer mit der FOREX Software der Bank Das Zehnfinger System hat er nie richtig gelernt aber er ben tigt es bei seiner Arbeit auch nicht zwingend Oskar arbeitet gerne am Morgen z hlt er zu den Ersten und am Abend bleibt er manchmal l nger Zuhause besitzt er einen Computer benutzt ihn aber nur selten um seine privaten E Mails abzurufen Sein Sohn Lukas 12 zeigt ihm jedoch immer wieder was er im Internet so alles entdeckt hat 2 2 Patrik Patrik ist ein 29 j hriger aufstrebender Banker Seit dem Abschluss seines Wirtschaftsstudiums ist er als Kundenberater im Investmentbereich einer Bank t tig Seine Arbeit erledigt er stets gewissenhaft und sauber Er beherrscht den Computer auch wenn er ihn w hrend der Arbeit nicht so oft gebraucht Zuhause interessiert er sich f r Wertp
66. engraph nicht funktioniert Allerdings ist das Control so aufgebaut dass man solche nderungen problemlos einbetten k nnte Auch das Browsen der Daten im Graph w re nicht gerade simpel trotzdem auch ohne weiteres machbar Die History Raten wahlweise als Moving Average zu laden und die Daten auch so darzustellen ist nicht sehr Zeitintensiv man h tte beim aktualisieren der Raten die lteren Raten nachberechnen m ssen die Daten sind aber nicht daf r vorbereitet und deswegen haben wir uns dagegen entschieden SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Technischer Bericht 18 131 Studienarbeit Daniel H fliger Dominik S sstrunk 4 Schlussfolgerung Gem ss Titel der Arbeit ging es vor allem um das User Interface es wurde auch verh ltnism ssig viel Zeit darin investiert Grunds tzlich wurde das User Interface bis auf einige Kleinigkeiten fertig designt allerdings wurden die Funktionen teilweise nicht implementiert die meisten nicht implementierten Funktionen wurden aber sauber vorbereitet und k nnten ohne grossem Zeitaufwand noch fertiggestellt werden W rde dieses Projekt nochmals gestartet w rden wir von Anfang an mehr Zeit f r die Strukturierung der Code Projekte verwenden nur durch eine saubere Grundstruktur ist es m glich eine saubere Software zu entwickeln Wir werden dieses Projekt in den n chsten Wochen bei der Credit Suisse vorstellen was damit passiert k nnen wir zu diesem Zeitpunkt noc
67. er ffnet sich Er hat noch 5 Sekunden Zeit sich definitiv zu entscheiden Jetzt oder nie denkt er sich und best tigt das Fenster Zwei Monate sp ter hat sich das Pfund sehr gut erholt Der derzeitige Wechselkurs liegt bei 1 63 1 ein guter Zeitpunkt seine 12 900 wieder zu verkaufen Er meldet sich erneut bei der FOREX Applikation an und erfasst den Auftrag 12 900 GBP f r 21 000 CHF zu verkaufen Er hat nun 1 000 CHF Gewinn gemacht Nicht sehr viel aber es reicht um ein paar Tage l nger in den Ferien zu bleiben 3 3 Ottos Offerte Die Firma Embedded Solutions m chte ein neues Produkt auf den Markt bringen Um den Projektablauf sowie die Kosten m glichst gut planen zu k nnen holen sie eine Offerte bei Ottos Firma ein Die Offerte bezieht sich auf die Bestellung von 10 000 best ckten Platinen welche das Herz des neuen Produktes sein wird Auf dieser Platine befinden sich ein etwas teurerer Mikrokontroller sowie etliche kleine und g nstige Komponenten Der Projektablauf sieht vor dass die Platinen voraussichtlich in einem Jahr geliefert werden m ssen Otto schreibt nun eine Offerte Die 10 000 leeren Platinen besitzt er bereits und muss diese nicht bestellen Anders den etwas teureren Mikrokontroller sowie die zus tzlichen Komponente Pro Platine w rde ihn dies zurzeit 5124 60 oder umgerechnet 131 0707 CHF kosten Wechselkurs 1 1 0272 Dies ergibt ein Gesamtvolumen von 1 31 Mio CHF SA_ForeignExchangeUl pdf Version 1
68. er Implementation zeigt dass vor allem das E Silverlight User Interface sowie das Implementieren Controls der Silverlight Controls viel Zeit in Anspruch 3 geg nahm dies ist aber logisch Mit 8 haben wir den Code auch relativ oft durchgeschaut RSR Die Security schl gt mit 0 zu Buche da wir daf r keine Zeit mehr hatten E Security SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul 121 131 Studienarbeit Daniel H fliger Dominik S sstrunk Sitzungsprotokolle 1 Sitzungsprotokoll vom 15 09 09 1 1 Teilnehmer Prof Dr Markus Stolze Dr Beat Liver Daniel H fliger Dominik S sstrunk 1 2 Traktanden Kickoff Meeting 1 3 Beschl sse Technologie Silverlight 3 0 Security Zeigen was sicherheitstechnisch m glich ist Kennenlernen FOREX Begriffe Swap Spot limited order order forward berwachungsauftr ge System berwacht Call Level Trigger gt SMS E Mail Benachrichtigung 0sO OcO take profit profit loss Request for quote Kursanfrage Bisheriges Handling Click gt Done Zeitscheibe z B 5s f r Privatanwender EBS Tableau Gesuchte L sung Kurse in Grid anzeigen Ev zoombar Einzelne Fenster vergr ssern amp Zusatzinformationen z B Chart anzeigen Werden gestreamt Anmeldung an streams f r jede W hrung simulieren O0sO OcO Erfassung IQ Test bestehen Wieviele Anl ufe bis richtig erfasst Ev In Chart Call Levels
69. er weiter bestehen wie auch die Sortierung Resultat Eintr ge k nnen gefiltert und sortiert werden Nach nderung ist Filter noch aktiv nicht aber die Sortierung Testfall Ticketinfo anzeigen Beschreibung Anzeigen von detaillierteren Informationen zu einem Ticket SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Testprotokolle 95 131 Studienarbeit Daniel H fliger Dominik S sstrunk Erwartetes Resultat Nach Auswahl eines Tickets werden die Informationen zu diesem Ticket angezeigt Resultat Feld wird angezeigt mit korrektem Inhalt 3 1 4 FX Graph Limited Order Testfall Graph anzeige wechseln Beschreibung Der FX Graph unterst tzt mehrere Ansichtsarten Die Buy Sell Linien k nnen ein ausgeblendet werden und die Zeitachse ist durch einen Slider sowie das Mausrad wechselbar Erwartetes Resultat Wird der Sell Buy Knopf aktiviert so m ssen die entsprechenden Linien im Graph angezeigt werden Sind beide Kn pfe deaktiviert so wird automatisch die Buy Linie angezeigt Die Zeitachse muss durch das Mausrad sowie den Slider gewechselt werden k nnen und die Beschriftung der Zeitachse muss stimmen Resultat Verhalten ist wie beschrieben Testfall Limit Order Modus aktivieren Beschreibung Oberhalb des Graphen befindet sich ein Link um den Limit Order Modus zu aktivieren Dieser blendet die Limit Order Leiste ein respektive aus Erwartetes Resultat Wird der Link angeklickt muss die Limit Order Leiste a
70. erverweis 4 2 8 Choose Currency Pair 4 3 3 Enter Amount Operation EnterAmount Amount Vorbedingung W hrungspaar ausgew hlt Nachbedingung Betrag in Trade festgelegt 4 3 4 Buy Operation Buy Vorbedingung Amount eingegeben Nachbedingung 4 3 5 Sell Operation Sell Vorbedingung Amount eingegeben Nachbedingung 4 3 6 Check And Accept Trade Operation CheckAndAcceptTrade Vorbedingung Sell Buy ausgef hrt Nachbedingung Neue Transaktion ge ffnet W hrung wird gehandelt SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Domainanalyse 57 131 Studienarbeit Daniel H fliger Dominik S sstrunk 4 4 Limited Order Vorbedingung Userauthentication erfolgreich 4 4 1 New Limited Order Operation NewLimitedOrderf Vorbedingung Nachbedingung Neuer limitierter Auftrag er ffnet 4 4 2 Choose Currency Pair Operation ChooseCurrencyPair Querverweis 4 2 8 Choose Currency Pair 4 4 3 Choose Order Type Operation ChooseOrderType Type Vorbedingung W hrungspaar ausgew hlt Nachbedingung Typ des limitierten Auftrages gesetzt 4 4 4 Enter Amount Operation EnterAmount Amount Vorbedingung Typ des limitierten Auftrages gesetzt Nachbedingung Betrag in Limited Order festgelegt 4 4 5 Enter Limits and Directions Operation EnterLimitsAndDirections Limits Directions Vorbedingung Betrag in Limited Order festgelegt Nachbedingung Limits sowie deren Directions wurden erfas
71. eschlossen 4 Technologiebegriffe 4 1 Allgemein Begriff Erkl rung Rich Internet Application beschreibt Anwendungen welche Internet Techniken und eigenst ndige intuitive Benutzeroberfl chen nutzt Silverlight Microsoft Silverlight ist eine Erweiterung f r Webbrowser welche die Ausf hrung von Rich Internet Applications RIAs erm glicht und damit ber die M glichkeiten des klassischen HTML hinausgeht z B Drag amp Drop Animationen etc Windows Communictaion Foundation Die Windows Communication Foundation soll in Microsoft Windows eine neue dienstorientierte Kommunikationsplattform f r verteilte Anwendungen werden Microsoft will hier viele Netzwerk Funktionen zusammenf hren und den Programmiierern solcher Anwendungen standardisiert zur Verf gung stellen Windows Presentation Foundation WPF stellt ein umfangreiches Modell f r den Programmierer bereit Dabei werden die Pr sentation und die Gesch ftslogik getrennt dies wird vor allem durch die Auszeichnungssprache XAML unterst tzt Silverlight ist die Plattform welche explizit f r das Web entwickelt wurde XAML beschreibt eine Oberfl chen Hierarchien deklarativ als XML Code und wird f r Silverlight sowie f r WPF verwendet Binding Anbindung von Daten an einen Control an einen Service Silverlight Binding bindet Daten aus dem Datenkontext an ein Control WCF Binding gibt an auf welche Art der Austausch zwischen WCF Service und Client abgehandel
72. esserung Aktuell ist die erste Beta verf gbar Laut Angaben von Microsoft soll die Unterst tzung von WCF stark verbessert werden was darauf hoffen l sst dass auch andere Bindings unterst tzt werden Weiter besteht die M glichkeit dass Silverlight 4 Commands standardm ssig unterst tzt Foreign Exchange Ul Summary 110 131 Studienarbeit Daniel H fliger Dominik S sstrunk 3 Ergebnis 3 1 Architektur N WCF Connection S i ForexWebService Silverlight Client Webserver Forex_db Forex Client Forex Web Forex DataLibrary 4 bersicht des Kommunikationsablauf zwischen Client Server und Datenbank 3 2 Testbed Das Testbed beinhaltet den WCF Service welcher f r die Kommunikation mit dem Client zust ndig ist und die Rates generiert sowie die Website welche der Silverlight Client zum Download anbietet 3 2 1 ForexWebsService Der Service stellt die Rates zur Verf gung welche vom Client abonniert werden k nnen Da Silverlight nur das basicHttpBinding unterst tzt muss der Client jedes Mal seine abonnierten Rates abfragen und kann diese nicht in einem Stream vom Server erhalten Weiter handelt der Service die Benutzerverwaltung Login Logout Views etc und platziert die Trades 3 2 2 Andere Techniken Eine andere M glichkeit w re es ber den ClientStack zu gehen und vom Server aus st ndig Messages zu schicken Dies w re wohl schneller aber auch hier m sste man immer einen Request schicken was man genau w
73. g Tile wird in EBS View angezeigt und gespeichert 4 2 5 Unsubscribe Tile Operation UnsubscribeTile tile Vorbedingung Tile bereits registriert Nachbedingung Tile ist von EBS View entfernt 4 2 6 NewEBS View Operation NewEBSView name Vorbedingung EBS View mit selbem Name existiert noch nicht Nachbedingung Neue EBS View ist mit dem Namen angelegt und wird angezeigt 4 2 7 Delete EBS View Operation DeleteEBSView name Vorbedingung EBS View mit dem Namen existiert Nachbedingung EBS View ist entfernt und andere View wird angezeigt Wenn es die letzte EBS View war wird eine neue leere EBS View angelegt SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Domainanalyse 56 131 Studienarbeit Daniel H fliger Dominik S sstrunk NewEBSView 4 2 8 Choose Currency Pair 4 2 8 1 Choose First Currency Operation ChoosefFirstCurrency Currency Vorbedingung Nachbedingung 1 W hrung ausgew hlt 4 2 8 2 Choose Second Currency Operation ChooseSecondCurrency Currency Vorbedingung 1 W hrung ausgew hlt Nachbedingung 2 W hrung ausgew hlt 4 2 8 3 Accept Operation Accept Currency Vorbedingung 1 und 2 W hrung ausgew hlt Nachbedingung W hrungspaar akzeptiert 4 3 Trade Vorbedingung Userauthentication erfolgreich 4 3 1 New Trade Operation NewTrade Vorbedingung Nachbedingung Neuer Handel er ffnet 4 3 2 Choose Currency Pair Operation ChooseCurrencyPair Qu
74. h nicht sagen wir denken allerdings dass unser Projekt eher als Forschungsarbeit denn als sp ter zu verwendetes Projekt weiterleben wird Es w re aber durchaus m glich dass einige unserer Designentscheidungen in einem allf lligen Projekt der Credit Suisse diskutiert werden SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul 19 131 Studienarbeit Daniel H fliger Dominik S sstrunk Pers nliche Berichte 1 Daniel H fliger 1 1 Allgemein Ich hatte schon immer ein Flair f r Anwendungen im Internet allerdings hatte ich immer nur relativ statische Seiten betreut Silverlight war anfangs f r mich eine grosse Horizonterweiterung da ich oft mit NET arbeite fand ich die Arbeit interessant berrascht hat mich das einfache Handling von Silverlight damit hatte ich nicht gerechnet 1 2 Ablauf des Projektes Als die Themen f r die Semesterarbeit zur Auswahl standen fiel mir sofort dieses Projekt ins Auge So war es nicht verwunderlich dass ich mit sehr viel Elan in dieses Projekt gestartet bin Anfangs war das Einarbeiten in die Bankenwelt sowie in Silverlight im Vordergrund Beides sorgte ab und an f r Verwirrung doch je l nger das Projekt lief desto besser kam ich damit zu recht Das Paper Prototyping hat mir sehr viel Spass gemacht es ist ein netter Ausgleich zum sonstigen Programmieralltag Nat rlich blieb unser Projekt auch nicht von Fehlern verschont Der Versuch sich mit dem Team Foundation Server zu ve
75. hange User Interface Projektes g ltig 2 3 Definitionen und Abk rzungen S mtliche Definitionen Abk rzungen welche in der Semesterarbeit auftreten werden in einem externen Dokument Glossar pdf beschrieben Unter anderem auch die verwendeten Finanz Begriffe 2 4 bersicht Das Kapitel 4 Projekt bersicht beschreibt Ziel und Zweck der Semesterarbeit Foreign Exchange User Interface Nachfolgend werden Projektorganisation Managementabl ufe wie Zeitplanung Meilenseine Iterationen sowie das Risikomanagement beschrieben Weiter werden die verschiedenen Arbeitspakete definiert aus welchen sich die Arbeitsaufteilung ergibt Im letzten Teil des Dokuments werden Infrastruktur sowie Qualit tsmassnahmen der Arbeit beschrieben 3 Projekt bersicht Eine bersicht ber das Projekt befindet sich in den zwei folgenden Dokumenten SA H fliger S sstrunk CS FX Aufgabenstellung pdf 1 Projektantrag pdf 2 3 1 Zweck und Ziel Die alte mit Java Applet realisierte Version welche die Credit Suisse heute verwendet soll ein grafisch moderneres Erscheinungsbild erhalten Die Technologie sollte auch dem heutigen State of the Art entsprechen 3 2 Annahmen und Einschr nkungen Pro Woche wird pro Teammitglied rund 16 Stunden gearbeitet 4 Projektorganisation 4 1 Team Daniel H fliger dhaeflig hsr ch Dominik S sstrunk dsuesstr hsr ch 4 2 Betreuer Prof Dr Markus Stolze mstolze hsr ch 4 3 Industriepartner Dr Beat
76. hnology and Data Variations List Frequency of Occurence Bei jedem Handel von W hrungen SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Anforderungsspezifikationen 42 131 Studienarbeit Daniel H fliger Dominik S sstrunk Trader sehr oft St ndlich mehrmals Amateur w chentlich Miscellaneous 4 7 Limited Order CRUD Overview Erfassen von limitierten Auftr gen und Verwalten von aktiven limitierten Auftr gen Stakeholder and Interests Benutzer M chte limitierte Auftr ge verwalten Preconditions Use Case Userauthentication abgeschlossen Success Guarantee Limited Order ist erstellt angepasst oder abgebrochen worden Main Success Scenario 1 Auswahl des W hrungspaares durch Benutzer mit welchem gehandelt werden soll Eingabe des Limited Order Typs Eingabe des Betrages der gehandelt werden soll Limits und deren Art SL TP erfassen Ablaufdatum Zeit erfassen Zone ausw hlen Limited Order aktivieren Fenster zur berpr fung der Transaktion welches vom Benutzer best tigt wird Extensions Alternative 2 a Bestehenden Limited Order zum Bearbeiten ffnen Flows 2 b Bestehenden Limited Order abbrechen 3 a Verschiedene Betr ge eingeben Special Requirements Variations List Frequency of Occurence Trader sehr oft T glich mehrere Male Amateur selten Monatlich Miscellaneous SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Szenarios 43 131 Studi
77. iche Erweiterungen Erweiterung der Implementation f r weitere Benutzerklassen wie Semi professionelle Anwender weitere und komplizierte Produkte wie Swaps weitere Funktionen wie Drucken Import und Export 5 Zur Durchf hrung Mit den HSR Betreuern finden in der Regel w chentliche Besprechungen statt Zus tzliche Besprechungen sind nach Bedarf durch die Studierenden zu veranlassen Besprechungen mit dem Auftraggeber werden nach Bedarf durchgef hrt Alle Besprechungen sind von den Studenten mit einer Traktandenliste vorzubereiten und die Ergebnisse in einem Protokoll zu dokumentieren das den Betreuern dem technischen Berater und dem Auftraggeber per E Mail zugestellt wird F r die Durchf hrung der Arbeit ist ein Projektplan zu erstellen Dabei ist auf einen kontinuierlichen und sichtbaren Arbeitsfortschritt zu achten An Meilensteinen gem ss Projektplan sind einzelne Arbeitsresultate in vorl ufigen Versionen abzugeben ber die abgegebenen Arbeitsresultate erhalten die Studierenden ein vorl ufiges Feedback Eine definitive Beurteilung erfolgt auf Grund der am Abgabetermin abgelieferten Dokumentation 6 Dokumentation ber diese Arbeit ist eine Dokumentation gem ss den Richtlinien der Abteilung Informatik zu verfassen Die zu erstellenden Dokumente sind im Projektplan festzuhalten Alle Dokumente sind nachzuf hren d h sie sollten den Stand der Arbeit bei der Abgabe in konsistenter Form dokumentieren Die Dokumentation ist vollst n
78. ichtig zu verstehen Um diese Prozesse richtig nachvollziehen zu k nnen muss man im Bankenumfeld t tig sein Vor allem die limitierten Auftr ge wie OCO und OSO bereiteten uns grosses Kopfzerbrechen Dank einem Buch welches wir organisierten war der Einstieg deutlich einfacher SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Summary 114 131 Studienarbeit Daniel H fliger Dominik S sstrunk 4 4 Weiteres Durch den Besuch der Moduls Microsoft Technologien und des f r dieses Modul obligatorische Mini Projekt sah man noch viele Verbesserungsm glichkeiten f r unsere Applikation welche jedoch zu diesem Zeitpunkt teilweise nicht mehr ber cksichtigt werden konnten e Ling to Sql Implementiert Der Zugriff auf die Datenbank erfolgt ber Linq to Sql Die Datenbank wird gemappt sodass ber UNO Language Integrated Query auf die Datenbank zugegriffen werden kann Dies erleichtert die Lesbarkeit des Codes und nderungen k nnen einfacher implementiert werden e DTOs Implementiert ber die WCF Schnittstelle werden nicht direkt Ling to Sql Objekte bertragen sondern sogenannte DTOs DataTransferObjects Dies f hrt dazu dass nur die f r den Client wichtigen Daten bertragen werden e WCF Interface Nicht Implementiert Am besten w re es wenn der OperationContract f r den WCF Service als Library f r alle Projekte verf gbar w re damit alle Projekte immer den gleichen Stand haben Da Silverlight jedoch
79. ienarbeit Daniel H fliger Dominik S sstrunk 8 Sitzungsprotokoll vom 16 12 09 8 1 Teilnehmer Prof Dr Markus Stolze Daniel H fliger Dominik S sstrunk 8 2 Traktanden Management Summary Abstract Poster Server Erhaltung Literaturverzeichnis 8 3 Beschl sse Abstract Datenbank zu Testbed Skalierbarkeit serverseitig integrieren in folgearbeit evtl Dr Liver Credit Suisse umkehren Poster Dr Liver Credit Suisse umkehren Techniker gt Technologien Literaturverzeichnis Eigenes andere bleibenlassen Ausdruck 1xin stolze schwarz weiss ixf r Dr Liver evtl farbig Abgabe 1xCD f r Sekretariat 1xCD Dr Liver 1xCD Stolze 1xCD self Pr sentation Kurze Pr sentation Was wurde gemacht Was wurde nicht gemacht Zeit Investition Demo SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Anhang 129 131 Studienarbeit Daniel H fliger Dominik S sstrunk Foreign Exchange UI Anhang SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Anhang Studienarbeit Daniel H fliger Dominik S sstrunk 1 Poster HSR HOCHSCHULE F R TECHNIK RAPPERSWIL u u INFORMATIK Semesterarbeit Herbstsemester 09 Software 130 131 FOREIGN EXCHANGE USER INTERFACE User Interface mit Silverlight me Dominik S sstrunk Daniel H fliger Betreuer Prof Dr Markus Stolze Industriepartner Dr Beat Liver Cr
80. ilControl TileMainControl TileSettingsWindow btnOk_Click object RoutedEventArgs void Tilelnfo TileContro btnCancel_Click object RoutedEventArgs void property Id int event TileSettingsWindowButtonClicked EventHandler property Settings TileSettings Id int Die UserControls sind mehrfach verwendete grafische Komponenten welche aus mehreren Unterelementen bestehen 5 2 2 1 MessageBoxWindow Das MessageBoxWindow ist eine Messagebox welche sich beim Aufruf ber die gesamte Applikation legt und die restlichen Controls berdeckt eine Art modaler Dialog 5 2 2 2 TileControl Das TileControl bildet den Rahmen eines TileDetailControls SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UL Software Architecture Document 82 131 Studienarbeit Daniel H fliger Dominik S sstrunk 5 2 2 3 TileDetailControl Das TileDetailControl enth lt alle Komponenten eines Tiles wie z B Sell Buy Buttons mit Raten FxGraphExtended usw Zudem enth lt es die 3 verschiedenen Status Default Extended LimitOrder 5 2 2 4 TileMainControl Das TileMainControl ist die Hauptansicht eines Tiles 5 2 2 5 TileSettingsWindow Ist das Einstellungsfenster f r die Tiles auch welchem das W hrungspaar sowie die Highlight Farbe gesetzt werden kann 5 2 2 6 FxGraphExtended INotifyPropertyChanged FXGraphExtended BuyDatalListBinderProperty DependencyProperty DependencyPrope rea
81. ill Zudem w re die Sicherheit nicht so gut zu handeln wie bei einem WCF Service 3 3 User Interface 3 3 1 Aufbau Das User Interface ist grob nach dem MVVM Model View ViewModel Pattern erstellt Durch die fehlende Unterst tzung seitens Silverlight wurde auf eine Zusatzlibrary SLExtensions zur ckgegriffen welche vor allem wegen den Commands gebraucht wurde 3 3 2 Design Das externe Design wurde zu grossen Teilen aus der Java Applet Version bernommen jedoch mit ein paar Erg nzungen und Ver nderungen wie beispielsweise das Erfassen von Auftr gen in einem Graph oder nur eine Ansicht f r normale und limitierte Auftr ge Zudem wurde das User Interface optisch auf einen moderneren Stand gebracht Dies wurde erreicht durch schlichteres Design welches wichtige Controls hervorhebt z B durch Abrundungen oder Farbverl ufe und der Vereinheitlichung durch vordefinierte Styles welche einfach angepasst werden k nnen Auch alle statischen Ressourcen Texte Bilder sind vordefiniert und k nnen schnell und einfach ge ndert werden SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Summary 111 131 Studienarbeit Daniel H fliger Dominik S sstrunk 3 3 2 1 Hauptansicht Forex Trader per NYC 09 12 2009 10 Spotdate 11 12 2009 47 15 47 SGP 23 47 America USDCHF USDEUR EURUSD USDJPY Sell Sell Sell Sell Buy 1 03 1 03 0 67 0 67 1 48 1 48 88 4 H 88 4 204 8 354
82. implementiert Buy und Sell funktionieren Testfall Tickets filtern Beschreibung Ticket k nnen nach Tickettyp SPOT SWAP OUTRIGHT gefiltert werden und nach allen Feldern sotiert werden Erwartetes Resultat Je nachdem welche Typen ausgew hlt sind Checkboxen sollen nur SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Testprotokolle 91 131 Studienarbeit Daniel H fliger Dominik S sstrunk jeweilige Tickets angezeigt werden Auch nach einer Aktualisierung soll der Filter weiter bestehen wie auch die Sortierung Resultat Daten werden gefiltert angezeigt der Filter besteht auch nach einer Aktualisierung die Sortierung klappt nicht Testfall Ticketinfo anzeigen Beschreibung Anzeigen von detaillierteren Informationen zu einem Ticket Erwartetes Resultat Nach Auswahl eines Tickets werden die Informationen zu diesem Ticket angezeigt Resultat Informationen zu ausgew hltem Ticket wird angezeigt 2 1 4 FX Graph Limited Order Testfall Graph anzeige wechseln Beschreibung Erwartetes Resultat Der FX Graph unterst tzt mehrere Ansichtsarten Die Buy Sell Linien k nnen ein ausgeblendet werden und die Zeitachse ist durch einen Slider sowie das Mausrad wechselbar Wird der Sell Buy Knopf aktiviert so m ssen die entsprechenden Linien im Graph angezeigt werden Sind beide Kn pfe deaktiviert so wird automatisch die Buy Linie angezeigt Die Zeitachse muss durch das Mausrad sowie den Slider gewech
83. ion 1 0 18 12 2009 Foreign Exchange UL Software Architecture Document 75 131 Studienarbeit Daniel H fliger Dominik S sstrunk 4 2 2 1 Views Ziel ist es in den Views nur die Ansichten ber das XAML zu definieren und im Code Behind eigentlich nichts zu tun Da Silverlight jedoch noch standardm ssig keine Commands im XAML zur Verf gung stellt werden Events doch noch vom Code Behind als Commands ans ViewModel weitergesendet Im Package Views befinden sich auch die UserControls EBSTile FXGraph etc welche jedoch zum Teil ber mehr Code Behind verf gen 4 2 2 2 ViewModels Das ViewModel besitzt Kenntnis ber die View und dem Model und kann also Daten entsprechend weiterreichen Im Normalfall wird das ViewModel per Data Binding an die View gebunden zum Teil wegen Einschr nkungen von Silverlight auch direkt an die Controls Daraus entsteht zwar eine enge Kopplung wobei diese jedoch nicht zwangsweise auch an das Model weitergegeben werden muss 4 2 2 3 Models Die Models stellen nun die Daten zur Verf gung Die Models m ssen sich nicht zwingen auf dem Client befinden sondern k nnen auch die Daten welche ber den WCF SOAP Channel kommen sein 4 2 2 4 Utilities Im Package Utilities befinden sich Hilfsklassen wie beispielsweise Converter f r das UI z B Umwandeln von DateTime Objekten ins richtige Format 4 2 2 5 Resources Beinhaltet Grafiken Texte f r die Sprachanpassung etc SA_ForeignExchangeUl pdf Version 1 0 18
84. iter soll das Produkt personalisierbar sein und auf die Bed rfnisse des Kunden angepasst werden k nnen Die Sicherheit soll anfangs vernachl ssigt werden 2 2 Produkt Funktion Anzeigen des EBS Charts EBS Ansicht f r Currency Pair Eigene Ansichten erstellen LineChart f r Currency Pair mit History anzeigen Erfassen von einfachen Auftr gen Spots Outright Swap Erfassen von limitierten Auftr gen Erfassen von Call Levels in LineChart 2 3 Benutzer Charakteristik Es gibt tendenziell zwei verschiedene Benutzergruppen Den Amateur und den Profitrader 2 3 1 Amateur Der Amateur braucht das Programm nicht allzu oft Da er nicht t glich mit der Software arbeitet und auch nicht t glich tradet ist er eher unsicher In der bestehenden L sung sind f r den Amateur sogenannte Zeitscheiben untergebracht Wenn er einen Trade machen will erscheint eine Sicherheitsabfrage mit einer Zeitvorgabe wie lange er f r die Entscheidung noch Zeit hat 2 3 2 Profi Der Profi arbeitet eigentlich immer mit der Software und bewegt sich auch sonst viel in der FOREX Welt Er ist sich seiner Entscheidung sicher In der bestehenden L sung sind hier sogenannte Sicherheitsklicks eingebaut Will der Trader eine Order ausl sen so tut er dies zum Beispiel mit ctrl click 2 4 Einschr nkungen Um die Software ausf hren zu k nnen muss die neuste Version von Silverlight aufdem Clientbrowser installiert sein Der C
85. k nnen nicht mehr ver ndert gel scht werden SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Summary 113 131 Studienarbeit Daniel H fliger Dominik S sstrunk 4 Erkenntnisse 4 1 Server Der Server war von der Logik her nicht das Hauptproblem Schwieriger war eher die Entscheidung will man nun mit zwei Services arbeiten SOAP und WCF was zu Komplikationen mit der Session f hren k nnte oder nur mit einem Service WCF wo man zwar das Session Problem nicht hat jedoch auch keine eine Trennung von den generierten Rates und der ganzen Benutzersteuerung Wir entschieden uns f r nur einen Service da dies vom Sicherheitsaspekt wohl mehr Sinn ergibt weil man sonst mit einer Art Proxy arbeiten m sste 4 2 Silverlight Da Silverlight eine der am schnellsten wachsenden Internettechnologieplattformen ist war die Arbeit mit Silverlight h chst interessant und lehrreich Man merkte auch dass es Silverlight noch nicht allzu lange gibt und st ndig erweitert wird W hrend unserer Entwicklungsphase starteten wir mit dem Toolkit vom Juli stellten dann um auf Oktober und sp ter kam dann noch das Toolkit vom November und die Silverlight 4 Beta welche wir jedoch nicht eingesetzt haben Die Verbesserungen vom Juli zum Oktober waren eigentlich minimal Einzig die Charting API wurde verbessert An unserem bestehenden Code mussten wir nichts ndern Am Neusten war f r uns die ganze Beschreibung des User Interfaces mit XAML
86. keit von Silverlight ist stark von Animationen abh ngig Durch auslagern des Zeichnen der aufw ndigen Animationen auf die GPU und einstellen einer tieferen Framerate wurde hier eine Leistungssteigerung erreicht Aus Zeitmangel wurde die serverseitige Skalierung nicht vertieft betrachtet was eine gute Aufgabe f r Folgearbeiten w re Die Sicherheit der Applikation ist die grosse Aufgabe welche noch stark verbessert werden muss da sie nur sehr rudiment r implementiert wurde SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Management Summary 11 131 Studienarbeit Daniel H fliger Dominik S sstrunk Management Summary 1 Ausgangslage Forex Trading beschreibt das Handeln mit W hrungen auf dem Foreign Exchange Market dem gr ssten Finanzmarkt der Welt Jedermann kann auf diesem Markt mit entsprechender Software MetaTrader FX Expert etc handeln Die Credit Suisse betreibt eine eigene Online Applikation FX Expert welche auf Java Applets basiert Die Aufgabe besteht nun darin die Machbarkeit einer Silverlight Applikation bez glich Bedienung Skalierbarkeit Sicherheit und Wartbarkeit zu analysieren Ziel ist es ein Testbed welches die Bank simuliert und einen Prototyp Silverlight Client zur Verf gung zu stellen 2 Vorgehen In einem ersten Schritt wurde ein Testbed entwickelt Das Testbed erzeugt zuf llige nicht realit tsgetreue Devisenkurse verwaltet die Benutzer und f hrt die Trades aus Danach wurde
87. klungsumgebung Tools Visual Studio Team System 2008 Expression Blend 3 Silverlight Toolkit Silverlight SDK NUnit 8 3 4 Versionsverwaltung Automatisierung Versionskontrolle SVN VisualSVN SVN Plugin f r SVN Buildserver Hudson mit MSBuild 8 3 5 Dokumentation MS Office Enterprise Architect 8 3 6 Visual Studio Team System Wir wollten unsere Arbeit mit dem Visual Studio Team System verwalten allerdings war der uns zur Verf gung gestellte Server nicht gen gend leistungsstark um ein schnelles Versionieren zu erm glichen Die Check In dauerten gut zwei Minuten f r einige Kilobyte an Daten Deswegen sind wir auf SVN umgestiegen SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Projektplan 33 131 Studienarbeit Daniel H fliger Dominik S sstrunk 9 Qualit tsmassnahmen 9 1 Dokumentation Es wird darauf geachtet dass die Dokumentationen aktuell gehalten werden und die nderungsgeschichte sauber angepasst wird damit sich jeder Projektteilnehmer auf deren Inhalt verlassen kann 9 2 Projekt und Zeitplan aktualisieren Der Projektplan wird w chentlich vom Projektleiter nachgef hrt und angepasst damit er immer auf einem m glichst aktuellen Stand ist Jedes Mitglied tr gt nach erfolgter Arbeit seine Zeiten in den Zeitplan ein damit auch dieser aktuell ist und allf llige nderungen im Projektplan klar sind Jede Iteration wird am Ende der Vorhergehenden geplant 9 3
88. l H fliger Dominik S sstrunk 4 W hrungspaare Einstellungsdialog m aufrufen W hrungspaar Kurs f r Verkauf 237 T 260 1 000 000 USD 4 1 Verwalten 4 1 1 Hinzuf gen Spotdate 13 12 2009 MS Um in der Ansicht ein neues W hrungspaar hinzuzuf gen klickt man auf den Der Ebs Ansicht neues Ebs Tile hinzuf gen Knopf Currencypair f Zu Highlightcolor welcher die nebenstehende Ansicht anzeigt In dieser Ansicht w hlt man das gew nschte W hrungspaar aus und man kann wenn man m chte dem W hrungspaar Highlightcolor USDCHF USDEUR EURUSD N USDJPY GBPCHF EURCHF GBPJPY Ok i Cancel eine Farbe welche das Tile hervorhebt w hlen Diese Farbe wird dezent ber das Tile gezeichnet um wichtige W hrungspaare besser Currencypair EURUSD v Green im Auge zu behalten Blue Yellow Red Purple Brown Orange Magenta Cyan Grey 4 1 2 Entfernen Das entfernen eines Tiles geschieht durch einen Klick auf den Tile entfernen Knopf 4 1 3 Einstellungen Der Einstellungsdialog bietet dieselben M glichkeiten wie beim hinzuf gen eines W hrungspaares siehe Hinzuf gen Foreign Exchange UI Benutzerdokumentation 101 131 Studienarbeit Daniel H fliger Dominik S sstrunk 4 2 Details EURCHF A XIR Sell Buy how Hide Details 1 53 1 53 Um die Details ei
89. lient Silverlight Applikation gebraucht wird Silverlight unterst tzt hier nur das sogenannte basicHttpBinding was dazu f hrt dass der Service nicht Duplex verf gbar ist sondern nur durch SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Management Summary 12 131 Studienarbeit Daniel H fliger Dominik S sstrunk Push vom Client her Die Datenbank wird vom Server ber Ling to SQL angesprochen Der Webserver dient zugleich als Testbed und hosted die Client Applikation die beim Aufruf der Website des Servers heruntergeladen und gestartet wird Der Webservice kommuniziert mit dem Client und der Datenbank und verwaltet die Benutzer platziert Trades und generiert die Rates 4 Ergebnisse Der Prototyp zeigt dass sich Silverlight schon sehr gut f r professionelle Anwendungen einsetzen l sst Eine einfache Bedienung wurde durch ein bersichtliches und einfaches Design mit selbsterkl renden Controls durch Tooltips Bilder etc erreicht Der Benutzer bekommt vom User Interface Inputs zu wichtigen Aktionen durch Bilder Animation etc Das Trennen der verschiedenen Schichten durch das MVVM Pattern WCF und Ling to SQL f hrt zu einer guten Wartbarkeit der Applikation Die Skalierbarkeit von Silverlight ist stark von Animationen abh ngig Durch auslagern des Zeichnen der aufw ndigen Animationen auf die GPU und einstellen einer tieferen Framerate wurde hier eine Leistungssteigerung erreicht Die Sicherheit der App
90. lient muss eine Verbindung zum Server haben Inter Intranet 2 5 Annahmen Die Applikation wird immer werktags ausgef hrt Der Benutzer besitzt ein Login SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Anforderungsspezifikationen 38 131 Studienarbeit Daniel H fliger Dominik S sstrunk 2 6 Abh ngigkeiten Allgemeine Foreign Exchange Auftr ge m ssen den originalen Auftragsarten entsprechen Da die Software mit Silverlight umgesetzt wird ist sie stark an das NET Framework gebunden 3 Spezifische Anforderungen 3 1 Funktionale Anforderungen 3 1 1 Angemessenheit Da dies eine Internetanwendung ist und der Benutzer beim Starten die Software immer komplett aus dem Internet herunterladen muss sollte diese mehr als 25 MB gross sein damit es nicht zu langer Wartezeit kommt 3 1 2 Richtigkeit Da es beim Foreign Exchange um gr ssere Geldbetr ge geht m ssen die Daten zwingend richtig weiterverarbeitet werden vom System 3 1 3 Sicherheit Anfangs soll nur ein einfaches Benutzerlogin zur Sicherheit beitragen Sp ter k nnen immer noch weitere Sicherheitsmechanismen eingef hrt werden wie z B die Verschl sslung der Daten ber das Netz etc 3 2 Bedienbarkeit 3 2 1 Wiederherstellbarkeit Die Daten m ssen auch bei einem Browserabsturz oder versehentlichem Beenden wieder verf gbar sein Es d rfen keine Auftr ge verloren gehen 3 2 2 Erlernbarkeit Die Applikation soll schnell und einfach zu e
91. likation ist die grosse Aufgabe welche noch stark verbessert werden muss da sie nur sehr rudiment r implementiert wurde Forex Trader NYC LDN ZRH SGP TKY 09 12 2009 07 07 12 07 13 07 20 07 21 07 Spotdate 11 12 2009 america E i USDCHF AXA USDEUR K Xa USDEUR o RE EURUSD ARE USDJPY AxA Sell Buy Sell Buy Sell Buy Sell Buy Sell Buy 88 7 88 7 ost 129 rat 554 V 604 404 y 444 404 i 444 63 y 684 1 000 000 CHF 1 000 000 EUR 1 000 000 EUR 1 000 000 USD 1 000 000 JPY dE EE USDIJIPY o RE GBPJPY A RE Sell Buy Sell Buy 88 7 144 144 08 ur 58t sit 1 000 000 JPY 1 000 000 JPY 1000000 USD SELL USDEUR 0 6939 11 12 2009 09 12 2009 12 25 19 Wl Spot IV Outright v Swap kW e Ref No Deal type Curri Curr2 Deal time Maturity date Amount Dealt rate Amount B S 209 SPOT CHF GBP 09 12 2009 12 25 20 11 12 2009 1000000 88 568 88568000 SELL 208 SPOT USD EUR 09 12 2009 12 25 20 11 12 2009 1000000 0 6939 693900 BUY 207 SPOT CHF GBP 09 12 2009 12 25 19 11 12 2009 1000000 88 568 88568000 BUY 206 SPOT USD EUR 09 12 2009 12 25 19 11 12 2009 1000000 0 6939 693900 SELL 205 SPOT EUR USD 09 12 2009 12 25 05 11 12 2009 1000000 1 0537 1053700 BUY Ein Silverlight User Interface ist einfach zu gestalten da durch Expression Blend ein professionelles Werkzeug f
92. ll Ticketinfo anzeigen Beschreibung Anzeigen von detaillierteren Informationen zu einem Ticket Erwartetes Resultat Nach Auswahl eines Tickets werden die Inforamtionen zu diesem Ticket angezeigt Resultat Feld wird zwar angezeigt aber ohne Inhalt 1 1 4 FX Graph Limited Order Testfall Graph anzeige wechseln Beschreibung Der FX Graph unterst tzt mehrere Ansichtsarten Die Buy Sell Linien k nnen ein ausgeblendet werden und die Zeitachse ist durch einen Slider sowie das Mausrad wechselbar Erwartetes Resultat Wird der Sell Buy Knopf aktiviert so m ssen die entsprechenden Linien im Graph angezeigt werden Sind beide Kn pfe deaktiviert so wird automatisch die Buy Linie angezeigt Die Zeitachse muss durch das Mausrad sowie den Slider gewechselt werden k nnen und die Beschriftung der Zeitachse muss stimmen Resultat Verhalten ist wie beschrieben Testfall Limit Order Modus aktivieren Oberhalb des Graphen befindet sich ein Link um den Limit Order Modus zu aktivieren Dieser blendet die Limit Order Leiste ein respektive aus ausgeblendet werden Limit Order Modus wird aktiviert Testfall Limit Order Liste FX Graph Beschreibung Der FX Graph kann mit der Limit Order Liste zusammenarbeiten und zeigt Stop Loss Take Profit sowie Call Levels Die Eingaben in die Limit Order Liste m ssen in den FX Graph bertragen werden Eingaben in dem Graph Ctrl Mausklick und Rauf Runterbewegen der Maus m ssen in der Liste angezeigt wer
93. lverlight Controls EBS Chart Graphen Prototyp Abgabe Prototyp Beta Release 27 11 09 Beta Release Personalisierbare Oberfl che Trading Erfassung limitierter Auftr ge OCO OSO Abgabe Beta Release Release Candidate 11 11 09 Erweiterung der Erfassung limitierter Auftr ge OCO OSO SAD fertig Security Optional Release Candidate Abgabe SAD Release Candidate 18 11 09 Bericht Benutzerdokumentation Abgabe Benutzerdokumentation Release Candidate Jeglicher Dokumente Jeglicher Code SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Projektplan 28 131 Studienarbeit Daniel H fliger Dominik S sstrunk 5 2 4 Besprechungen Alle Besprechungen werden vom Team mit einer Traktandenliste vorbereitet und die Ergebnisse in einem Protokoll dokumentiert welches dem Betreuer und dem Industriepartner per E Mail zugestellt wird Mit dem Betreuer finden in der Regel w chentliche Besprechungen statt Zus tzliche Besprechungen werden nach Bedarf durchgef hrt Besprechungen mit dem Industriepartner werden nach Bedarf vereinbart und durchgef hrt 5 2 5 Abgabe Titel Woche Termin Beschreibung Architekturprototyp S WO6 23 10 09 FOREX Quotes von Stream lesen amp anzeigen Abonnieren verschiedener FOREX Streams Prototyp mit SWO9I 13 11 09 Silverlight Controls f r Anzeige der Daten Custom Silverlight EBS Chart Kachelansicht der abonnierten Controls FOREX Streams mit Statusupdate Graph
94. m beim CN ex m K Kn eo D D D Fr Ze E oe SE ee aoa Erfassen keinen Konflikt zwischen Take Profit Stop Loss und Call Level zu haben Tpsel 1 4943 11 12 2009 be 09 13 zu 1 4925 11 12 2009 BI less 69 13 REN Sell 1 4910 11 12 2009 bei 09 13 SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Benutzerdokumentation 105 131 Studienarbeit Daniel H fliger Dominik S sstrunk 7 Recent Deals In der Liste der Recent Deals werden die letzten 100 get tigten Deals aufgelistet W hlt man einen Eintrag aus so wird auf der rechten Seite eine Detailansicht angezeigt in welcher man den Zahlungsweg ndern k nnte Ba Spot Ba Outright Ba Swap Ref No Deal type Curri Curr2 Deal time Maturity date Amount Dealt rate Amount SPOT EUR USD 11 12 2009 09 18 11 13 12 2009 1000000 1 4929 1492900 EUR USD 11 12 2009 09 18 09 13 12 2009 1000000 1 4933 1493300 EUR USD 11 12 2009 09 18 04 13 12 2009 1000000 1 493 1495000 EUR USD 11 12 2009 09 18 03 13 12 2009 1000000 1 4933 1493300 EUR USD 11 12 2009 09 18 02 13 12 2009 1000000 1 493 1493000 dl Spot dl Outright Swap MN amp Arm 1000000 EUR _ _ _ u _ BE h Js SELL Ref No Dealtype Curri Curr2 Deal time Maturity date Amount Dealt rate Amount Currency Pair EURUSD 233 SPOT EUR USD 11 12 2009 09 18 11 13 12 2009 1000000 1 4929 Eae Dech rap 1 4929 Maturity date 13 12 2009 232 11 12 2009 09 18 09 13 12 2009 1000000 1 4933 14
95. mplementiert Testfall Tile vergr ssern verkleinern Beschreibung Wird das Tile vergr ssert so zeigt es einen Graphen des Verlaufs des W hrungspaares Erwartetes Resultat Die Tiles k nnen vergr ssert verkleinert werden Resultat Chart mit Verlauf wird angezeigt 3 1 2 EBS Views Testfall Laden der EBS Views Beschreibung Ein angemeldeter Benutzer sieht seine angelegten EBS Views und kann SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Testprotokolle 94 131 Studienarbeit Daniel H fliger Dominik S sstrunk 20 zwischen diesen wechseln Erwartetes Resultat Die EBS Views werden in der Liste angezeigt und nach dem Wechseln einer EBS View werden die entsprechenden Tiles angezeigt Die DefaultView wird geladen Resultat EBSViews werden in Liste angezeigt Default View wird geladen Testfall Anlegen einer neuen EBS View Beschreibung Der Benutzer hat die M glichkeit neue EBS Views anzulegen Dazu klickt dieser auf den Knopf neue EBS View anlegen Neu Symbol und gibt den Namen der View ein Diese wird nun er ffnet und in der Liste angezeigt Erwartetes Resultat Wird eine neue EBS View angelegt ist diese in der Datenbank dem entsprechenden Benutzer zugeordnet und wird dem Benutzer angezeigt Resultat Gespeicherte View ist in der Datenbank f r den jeweiligen User hinterlegt Testfall Speichern einer EBS View Beschreibung Die EBS View enth lt verschiedene Tiles welche der Benutzer hinz
96. n Handel zwischen zwei W hrungen wobei der Typ des Handels SPOT SWAP sowie Outright sein kann 3 Finanzbegriffe 3 1 Allgemein Erkl rung Big Figures Die Big Figures sind die ersten drei Ziffern eines Kurses Sie sind f r den Devisenh ndler meist uninteressant da diese in der Regel bekannt sind und sich nicht so schnell ndern Bsp EURCHF 1 51661 Der Kurs zwischen zwei W hrungen besitzt zwei sehr wichtige Zahlen die sogenannten Pips Sie befinden sich an Position 4 und 5 der Zahl mit diesen wird Geld gemacht Bsp EURCHF 1 51661 EURJPY 133 801 Request for Quote RFQ Anfrage eines Kurses zwischen zwei W hrungen z B EURCHF FOREX Quotes Kurs eines W hrungspaars 3 2 Orders Begriff Erkl rung Briefkurs Kurs zu dem ein Marktteilnehmer bereit ist seine Devisen zu verkaufen Call Level Ein Auftrag welcher nur eine Orientierung des Kunden zur Folge hat Bsp Der Kunde m chte bei einem CHFUSD Kurs von 1 10 orientiert werden Steigt nun der Kurs auf diesen Wert wird dieser benachrichtig ohne etwas zu kaufen oder verkaufen One cancels the Other OCO hnlich OSO Umfasst zwei Auftr ge beim Ausf hren des einen wird der andere beendet Damit kann von einer vorteilhaften Kursbewegung mit gleichzeitiger Absicherung profitiert werden One starts the Other OSO Kombination zweier Auftr ge in Form von sell after buy oder buy after sell Ein Auftrag wird berwacht Sobald dieser ausgef hrt wurde
97. nes W hrungspaares anzusehen klickt man auf Show Hide Details 424 i 474 1 000 000 CHF Buy Sell Buy 15min 1 53 1 53 42 47 Die Detailansicht enth lt erweiterte Erfassungsm glichkeiten f r Spot Outright 1 000 000 CHF sowie Swap Gesch fte sowie einen Spot Outright Swap Graphen 5j Le Ba m 1 53 1 53 03 iaz 7 des Die Skalierung des Graphen nimmt man mit 1 000 000 CHF S i dem Slider oder durch das Scrollrad der Spot Outright Swap er Maus vor Es reicht von einer detaillierten Darstellung bis hin zu einer Jahres bersicht SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Benutzerdokumentation 102 131 Studienarbeit Daniel H fliger Dominik S sstrunk 5 Handeln 5 1 SPOT Forward Das Handel von W hrungen geschieht ber den Verkaufen sowie den EURUSD AXA Kaufen Knopf Der Handel wird mit dem aktuellen Kurs der W hrung ges sowie dem eingegebenen Betrag vollzogen und erscheint in der Liste der ug Lo SE SE 234 2 26 Deals T Forex Trader Logout S 1 000 000 5 Spotdate 13 12 2009 Europe STEE EURUSD GBPCHF RK EURCHF ARE mells E PS TE ege Wird ein Handel get tigt wird die o3 03 al 2747 31 564 604 554 584 Recent deals Liste aktualisiert 1 000 000 USD 1 000 000 CHF 1 000 000 CHF lV Spot
98. ngen Probleme mit SL Servlets SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Sitzungsprotokolle Studienarbeit Daniel H fliger Dominik S sstrunk 3 Sitzungsprotokoll vom 07 10 09 3 1 Teilnehmer Prof Dr Markus Stolze Daniel H fliger Dominik S sstrunk 3 2 Traktanden Anforderungsspezifikationen Use Cases Domainanalyse Domainmodell Contracts Server Java SOAP Paper Prototype V1 Daten f r Dr Liver weiteres 3 3 Beschl sse Personas Szenarios Use Cases an Herrn Liver senden Fragen an Herrn Liver 0cO OsO unterschiede der verschiedenen Rows Spot Date bei EBS View in der alten Applikation pro Tile Ticket Grid ausdrucken Redundanzen in Ticket Grid n tig Buy Sell f r beide Currencies EBS Views f r Kunden User Namen f r Zeilen bei Limited Order bei uns bisher Rows genannt Domainmodel Row berarbeiten Tile in Domainmodel SSD Sequenzdiagramm Client Start gt Updates _ Connections to SOAP Drucken gt PDF generieren SA_ForeignExchangeUl pdf Version 1 0 123 131 18 12 2009 Foreign Exchange UI Sitzungsprotokolle Studienarbeit Daniel H fliger Dominik S sstrunk 4 Sitzungsprotokoll vom 23 10 09 4 1 Teilnehmer Prof Dr Markus Stolze Daniel H fliger Dominik S sstrunk 4 2 Tranktanden Besprechung Architekturprototype 4 3 Beschl sse Architekturprototype Anpassen der Struktur
99. ngezeigt oder ausgeblendet werden Limit Order Modus wird aktiviert Testfall Limit Order Liste FX Graph Beschreibung Der FX Graph kann mit der Limit Order Liste zusammenarbeiten und zeigt Stop Loss Take Profit sowie Call Levels Die Eingaben in die Limit Order Liste m ssen in den FX Graph bertragen werden Eingaben in dem Graph Ctrl Mausklick und Rauf Runter bewegen der Maus m ssen in der Liste angezeigt werden Erwartetes Resultat Wird ein Call Level eingegeben wird dieser mittels blauer Linie mit Verlauf angezeigt Take Profit Verlauf nach oben Stop Loss Verlauf nach unten Wird ein Stop Loss oder Take Profit eingegeben so werden diese rot gr n dargestellt Eingaben von Stop Loss Take Profit mit der Maus m ssen in der Liste angezeigt werden Diese werden durch CTRL Klick Mausbewegung rauf runter gezeichnet Eingabe des Call Levels mittels CTRL Doppelklick nur bei Typ Call Level m glich Graph verhaltet sich wie oben beschrieben Testfall Limit Order speichern Beschreibung Einen Limit Order soll man mittels klick auf den Send Limit Order Button speichern k nnen Die get tigten Eingaben werden dann gespeichert und w rden vom Banksystem ausgewertet werden Erwartetes Resultat Nach dem senden eines Limit Orders wird ein Fenster angezeigt auf welchem man den Limit Order noch einmal best tigen muss Best tigt man diesen so soll ein Datensatz in der Datenbank angelegt sein und dieser muss in der Limit
100. nik S sstrunk S e E 76 E TE TEE Tue Te serres neninn E EEE E E ETE 83 2 E ne 83 6 ee Eug e D 84 Ed sl en e TE 85 KK e ie E E 22er en ae ee ee 85 Se ee un e O A A A A E A N A A A E A A 89 3 TE Tonie 2 II WE 93 D nutzerdo k me EIERE 96 HE eu Ce TEE 97 NN e GE 98 CET gn ee ee ee ee ee ee 99 4 Wahr nespad EE 100 D Ee TEE 102 E Be ee NEE EN ET 102 EE 105 8 Recent Limited Orders sea 105 GEIER 106 NN Set De E 107 2 SINeT EE 109 I E E a AE en een ler ee 110 4 SEFKENNIENI SE ee ea ee een 113 EI LE 115 1 Dokumentinformatonen ENEE 116 2 Forex Trader d nee een 117 3 AENSIDZDED E 117 2 Keeler E 118 ZEIE AU WETEUNE EE 120 Siune ENEE tele 121 1 _ Sitzungsprotokoll vom 15 00 00 121 2 Sitzungsprotokoll vom 23 09 09 E 122 SC Beleeg ee leien BA En BE 123 4 Sitzungsprotokoll vom 23 10 00 124 5 Sitzungsprotokoll vom O4 11 00 125 SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UL Inhaltsverzeichnis 5 131 Studienarbeit Daniel H fliger Dominik S sstrunk 6 Sitzungsprotokoll vom 19 11 09 nee en een 126 7 Sitzungsprotokoll vom DA E En be E E 127 8 Sitzungsprotokoll vom 16 1200 128 EE T 129 E Get WEE 130 2 System Sequenz Diagramm 131 SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Aufgabenstellung Foreign Exchange UI 6 131 Studienarbeit Daniel H fliger Dominik S sstrunk Aufgabenstellung Foreign Exchange UI 1 Auftraggeber und Betreuer Diese Studienar
101. ntrol mit grafischer Erfassung von limitierten Auftr gen 3 1 1 Erkl rung Der modulare Aufbau wurde durch strikte Trennung vom Code User Interface und Einteilung in verschiedene Unterordner Namespaces erreicht Dies bewirkt auch die kurzen Entwicklungszeiten da der Code in einer sauberen Struktur ist findet man sich auch schnell darin zurecht Das User Interface wurde vor allem durch einige Paper Prototypen entwickelt und sp ter anhand dieser implementiert Das Abonnieren von W hrungspaaren funktioniert leider abonniert man keinen Stream da dies bei Silverlight 3 nicht ber einen WCF Service funktioniert jedoch funktioniert es wenn man den Service nach jeder erhalten Antwort erneut anfragt Pull Mode Die grafische Erfassung von limitierten Auftr gen wird mittels Maus Gesten gesteuert Diese aktiviert man durch einen Klick wenn man gleichzeitig die Control Taste gedr ckt h lt Rechtsklick erst ab Silverlight 4 unterst tzt 3 2 Nicht erreichte Ziele Detaileingabe von SPOT SWAP Outright LimitOrder editieren Kerzengraph Moving Average in Graph Browsen in Graph 3 2 1 Ursachen Die Ursachen der nicht erreichten Ziele sind praktisch alle durch Zeitmangel entstanden Vorbereitet w re das editieren von limitierten Auftr gen und das Erfassen der Detaileingaben von SPOT SWAP Outright Den Kerzengraph zu implementieren w re nicht gerade simpel da der Graph bis anhin nur mit Polylines gezeichnet wird was bei einem Kerz
102. ohl im Pull als auch Push Mode wobei die beiden Modi typischerweise die Benutzerklassen Privatanwender und professionelle Anwender abdecken Man beachte dass die serverseitige Pr sentationslogik und Gesch ftslogik in J2EE Terminologie w hren dies dann Servlet und Entrerprise Java Beans m glichst realit tsnahe bzw simuliert werden sollen Die Entwurfskriterien sind Benutzbarkeit Usability hohe Leistung insbesondere geringe Latenzzeiten Antwortzeiten etc Sicherheit kurze Entwicklungszyklen Wiederverwendung Modularit t und Wartbarkeit Die Reihenfolge der Aufz hlung ist die Gewichtung der Entwurfsziele Evaluation wie gut die die Entwurfskriterien erreicht wurden t Siehe https entry credit suisse ch csfs p cb de online onl_uebersicht jsp unter dem Menu Forex Trading gt Demoversion SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Aufgabenstellung Foreign Exchange UI 7 131 Studienarbeit Daniel H fliger Dominik S sstrunk F r diese Aufgabe kann die bestehende Anwendung benutzt werden und es stehen die entsprechende Dokumentation zur Verf gung Eine Liste von Applikationen ist vorhanden welche marktf hrende Elemente enthalten Im Weiteren k nnen die entsprechenden Benutzer bzw Benutzervertreter befragt werden und es k nnen auch Benutzertests durchgef hrt werden In einem ersten Schritt soll ein Testbed entwickelt werden welches die notwendigen Test Datafeeds zur Verf gung stellt 4 M gl
103. reign Exchange UI Technischer Bericht 15 131 Studienarbeit Daniel H fliger Dominik S sstrunk 1 Dokumentinformationen 1 1 nderungsgeschichte Datum Version nderung Autor 11 12 09 0 1 Dokument erstellt ds 11 12 09 0 2 Dokument geschrieben dh 12 12 09 1 0 Review ds 15 12 09 1 1 berarbeitung Verbesserung ds SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Technischer Bericht 16 131 Studienarbeit Daniel H fliger Dominik S sstrunk 2 Einleitung und bersicht Das Ziel war es die M glichkeiten von Silverlight anhand einer Applikation f r den Devisenhandel zu erforschen Wichtigste Ziele waren dabei dass die Applikation modular aufgebaut wird geringe Latenzen garantiert kurze Entwicklungszeiten f r Folgearbeiten haben und ein einfaches Warten m glich sein sollte Das User Interface soll verbessert und intuitiv bedienbar sein und es soll modern aussehen Es sollen W hrungspaare und deren aktuelle Kurse angezeigt werden zu diesen Kursen sollten auch SPOT SWAP sowie Outright Gesch fte vollzogen werden k nnen Limitierte Auftr ge sollen erfasst und in einem Graphen dargestellt werden k nnen SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Technischer Bericht 17 131 Studienarbeit Daniel H fliger Dominik S sstrunk 3 Ergebnisse 3 1 Erreichte Ziele Modularer Aufbau Kurze Entwicklungszeiten User Interface Abonnieren von W hrungspaaren FxGraph Co
104. rlernen sein Benutzer sollen n tige Instruktionen direkt innerhalb der Applikation z B ber Video erhalten 3 2 3 Verst ndlichkeit Das GUI soll intuitiv zu bedienen sein Benutzer die schon die alte Version benutzt haben sollen sich m glichst rasch und einfach auf dem neuen GUI zurechtfinden k nnen 3 3 Zuverl ssigkeit 3 3 1 Verf gbarkeit Die Software muss zu 99 9 verf gbar sein da es sich hier wie bereits erw hnt um grosse Geldbetr ge handelt 3 3 2 Fehlertoleranz Bei schlechter Netzverbindung d rfen keine Daten verloren gehen 3 4 Leistung 3 4 1 Latenz Antwortzeiten M glichst geringe Latenz sowie Antwortzeiten da sich die Kurse bei jeder Transaktion ndern SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Anforderungsspezifikationen 39 131 Studienarbeit Daniel H fliger Dominik S sstrunk 3 5 Lizenzanforderungen Die Rechte an der Software geh ren 1 den Entwicklern Daniel H fliger und Dominik S sstrunk 2 der HSR 3 der Credit Suisse Die Software kann von allen Rechteinhabern so weiterverwendet werden wie diese es wollen 4 Use Cases 4 1 Use Case Diagramm FOREX UI Userauthentication A A _ include l SC l l SES l inglude include User Server Limited Order CRUD Ebs View CRUD Choose Currency Pairs 4 2 Aktoren amp Stakeholders Die Aktoren sind Benutzer Diese beinhalten Bankangestellte sowie Bankk
105. rsuchen misslang auf allen Ebenen mit SVN war dann dieses Problem gel st Schade h tte ich doch gerne die TFS Welt besser kennengelernt Sonst war der Ablauf oft wie geplant Differenzen werden immer zu finden sein allerdings bewegt sich das Meiste in einer Marge welche ich als akzeptabel erachte Zum Schluss hat es dann leider nicht mehr gereicht um alle Aufgabenbereiche komplett zu implementieren alles in Allem ist es aber eine gute bersicht 1 3 Teamarbeit Dominik S sstrunk und ich bilden ein gutes Team wir erg nzen uns prima Wir konnten beide gegenseitig voneinander profitieren und haben f r die Zukunft einiges gelernt Das Arbeitsklima war stets von Respekt und Anstand gepr gt und auch kleinere Differenzen konnten wir mit einer Diskussion kl ren sodass beide zufrieden waren 1 4 Fazit Ich w rde dieses Thema nochmals w hlen und auch den Aufwand nochmals in Kauf nehmen Das Projekt hat Spass gemacht und ich war stets motiviert Mit dem jetzigen Wissensstand w re es einiges einfacher dieses Projekt aufzuziehen viel ndern w rde ich trotzdem nicht Alles in allem denke ich dass uns diese Arbeit gut gelungen ist und f r die Credit Suisse einen guten Einblick in die Silverlight Technologie gibt Auch wenn es vielleicht zurzeit noch nicht so empfehlenswert ist eine Finanzapplikation mit Silverlight zu programmieren denke ich dass in der Zukunft vermehrt solche RIA Technologien eingesetzt werden Wird Silverlight 4 die Fe
106. rtypen Spot Outright Swap SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Paperprototype 63 131 Studienarbeit Daniel H fliger Dominik S sstrunk 3 3 Tile Part view Ansicht der Kachel mit LineChart f r eingestelltes Intervall Live 15 Minuten etc Ansonsten gleich wie Tile Detail View 3 4 Tile Settings View Einstellungen f r eine einzelne Kachel Einstellung des CurrencyPairs einer Highlight Color und gewissen Charteinstellungen Standard Stream Standard Intervall SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Paperprototype 64 131 Studienarbeit Daniel H fliger Dominik S sstrunk 3 5 Deal Security View Sicherheitsabfrage bei Deal mit ausfahrbaren Details zum Deal und einer Progressbar die je nach Zeitvorgabe hinunterz hlt Beim Ablaufen der Zeit kann die neue Rate via Get Rate geholt werden Foreign Exchange Ul Paperprototype 65 131 Studienarbeit Daniel H fliger Dominik S sstrunk 4 FX ORDER View mn man mn mine um m ee m nn H SEI DN Lem F e E EE E ER un en n ri i n i H Auswahl der verschiedenen Views und weiteren Optionen Es k nnen beliebig viele Vorgaben f r Limited Orders erfasst werden Details siehe unten I i y S f Li H H A l i F H I D i H I H 1 r U H l p 1 H H I l I H i f i H H p d H i j i i D j H i l i H i l H F H 1 j H
107. selt werden k nnen und die Beschriftung der Zeitachse muss stimmen Resultat Linien werden ein ausgeblendet und Slider Mausrad setzt den Zoom Testfall Limit Order Modus aktivieren Beschreibung Oberhalb des Graphen befindet sich ein Link um den Limit Order Modus zu aktivieren Dieser blendet die Limit Order Leiste ein respektive aus Erwartetes Resultat Wird der Link angeklickt muss die Limit Order Leiste angezeigt oder ausgeblendet werden Resultat Limit Order Modus wird angezeigt allerdings ohne Funktion Zus tzliche Limit Order erst grafisch implementiert Information Testfall Limit Order Liste FX Graph Beschreibung Erwartetes Resultat Der FX Graph kann mit der Limit Order Liste zusammenarbeiten und zeigt Stop Loss Take Profit sowie Call Levels Die Eingaben in die Limit Order Liste m ssen in den FX Graph bertragen werden Eingaben in dem Graph Ctrl Mausklick und Rauf Runter bewegen der Maus m ssen in der Liste angezeigt werden Wird ein Call Level eingegeben wird dieser mittels blauer Linie mit Verlauf angezeigt Take Profit Verlauf nach oben Stop Loss Verlauf nach unten Wird ein Stop Loss oder Take Profit eingegeben so werden diese rot gr n dargestellt Eingaben von Stop Loss Take Profit mit der Maus m ssen in der Liste angezeigt werden Diese werden durch CTRL Klick Mausbewegung rauf runter gezeichnet Eingabe des Call Levels mittels CTRL Doppelklick nur bei Typ Call Level m glich
108. sicht auf verschiedene Devisenkurse z B CHFEUR USDCHF GBPCHF Bei seinem ersten Handel an diesem Tag m chte er f r 500 000 CHF Euros kaufen Er gibt diesen Betrag in die Applikation ein und verfolgt den Markt ein wenig Als der Wechselkurs niedrig ist handelt er sofort und kauft mit einem Klick auf den Kaufen Knopf Euros im Wert von 500 000 CHF Kurs 1 51 1 Er hat 330 000 Euros f r die CHF erhalten Sp ter an diesem Tag trifft Oskars Vorhersage ein der Schweizer Franken sinkt und zu seinem Gl ck steigt der Wert des Euros Er verkauft die 330 000 Euros zu einem Kurs von 1 55 1 und erh lt 511000 CHF ein Gewinn von 11 000 Schweizer Franken 3 2 Patriks Feierabendbesch ftigung Es ist wieder einmal 18 00 Uhr ein langer Arbeitstag geht f r Patrik zu Ende und er tritt seinen Heimweg an Nachdem er zuhause angekommen ist und sich etwas gekocht hat setzt er sich vor seinen Computer Er hat im Verlaufe des Tages die Devisenkurse beobachtet und bemerkt dass das Britische Pfund zu einem sehr tiefen Wechselkurs gehandelt wird und er vermutet dass dieser in den n chsten Tagen markant ansteigt Er meldet sich ber das Online Banking an der FOREX Trading Software an und sieht die Wechselkurse 1 55 1 das h rt sich sehr verlockend an Er gibt seinen gew nschten Betrag 20 000 CHF ein Das Geld hatte er eigentlich f r Ferien mit seiner Freundin gespart allerdings ist dies nun doch zu verlockend Er klickt den buy Knopf und ein Fenst
109. st 4 4 6 Enter Expiration Operation EnterExpiration Date Vorbedingung Limits sowie Directions wurden festgelegt Nachbedingung Ablaufdatum erfasst 4 4 7 Enter Zone Operation EnterZone Zone Vorbedingung Ablaufdatum erfasst Nachbedingung 4 4 8 Activate Order Operation ActivateOrder Vorbedingung Ablaufdatum erfasst Nachbedingung 4 4 9 Check And Accept Order Operation CheckAndAccept Order Vorbedingung Activate ausgef hrt Nachbedingung Neue Transaktion ge ffnet Limited Order erfasst SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Paperprototype 58 131 Studienarbeit Daniel H fliger Dominik S sstrunk Foreign Exchange UI Paperprototype SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Paperprototype 59 131 Studienarbeit Daniel H fliger Dominik S sstrunk 1 Dokumentinformationen 1 1 nderungsgeschichte Datum Version nderung Autor 08 10 09 0 1 Dokument erstellt Screens hinzugef gt ds 08 10 09 1 0 Review Team 15 12 09 1 1 berarbeitung Verbesserung ds 1 2 Referenzen Nr Dokument Autor 1 Anleitung zur bestehenden Java Applet Version CS Manual_FX_Expert pdf SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Paperprototype 60 131 Studienarbeit Daniel H fliger Dominik S sstrunk 2 Lesch View J H e fi i i N 1 i a me ben ee e nn eh R T d I R i I i i H w i TI A i SeT 115 EL 0 1
110. struktor mit Parametern f r den Initialwert des W hrungspaares Modifizierungswert um beim Testen z B sinkende oder steigende Flanken schnell simulieren zu k nnen sowie das W hrungspaar 5 1 2 1 2 Start Startet einen Thread welcher das Generieren der Raten vornimmt GetNextRate Die Raten werden in zuf lligen Abst nden zwischen mehreren Zehntelsekunden und einigen Sekunden generiert Dies entspricht dem m glichen Updateintervall beim Fremdw hrungshandel SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UL Software Architecture Document 79 131 Studienarbeit Daniel H fliger Dominik S sstrunk 5 1 3 Models INotifyPropertyChanged l UserDto EbsView Dto enumeration DealType username string property In int SPOT property Name string SWAP d Int32 Rates List lt EbsViewRateDto gt OUTRIGHT Username String Email String Phone String EbsView RateDto enumeration Hash bytel DealDirection DefaultEBSView int property BUY event Rateld int SELL PropertyChanged PropertyChangedEventHandler HighlightColorld in INotifyPropertyChanged ExchangeRateDto INotifyPropertyChanged CurrencyPairDto time DateTime Se Eat property _hame String Id int _ currency1 string Buy double _ currency2 string Gell double Time DateTime property event Currency1 String PropertyChanged PropertyCh
111. t des aufgeklappten Tiles mit Live Graph und Live Rate Auf einem Tile wird der aktuelle Kurs des gew nschten Currencypairs angezeigt Pro Tile gibt es 3 Ansichten In der Standardansicht wird nur der Kurs angezeigt und es k nnen direkt SPOT Trades ausgef hrt werden In der ersten aufgeklappten Ansicht sieht man den Live Graph und es besteht die M glichkeit SWAPs und Outrights zu platzieren In der dritten Ansicht kann man Limited Orders erfassen Die Limited Orders k nnen direkt im Graph durch klicken und ziehen markiert werden SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Summary 112 131 Studienarbeit Daniel H fliger Dominik S sstrunk 3 4 Fehlendes 3 4 1 Durch die fehlende Zeit konnten wir ein paar Pendenzen nicht abarbeiten Testbed Folgende Funktionen fehlen im Testbed bzw beim Service e Speichern von Ticketdetails Der ge nderte Zahlungsweg kann nicht gespeichert werden e Speichern von SWAPSs und Outrights 3 4 2 User Interface Folgende Funktionalit ten fehlen im User Interface e Generierung eines PDFs der letzten Deals Limited Orders Es kann zwar ein PDF heruntergeladen werden jedoch zeigt dieses nur an dass das Herunterladen funktioniert Es wird kein benutzerspezifisches PDF generiert Dies k nnte man einfach mit einer zus tzlichen Library generieren e Festlegen mit welchem Konto man handelt Im Moment gibt es pro Benutzer ein Konto e Bearbeiten von Limit Orders Gespeicherte Limited Orders
112. t werden Wird eine HighlightColor ausgew hlt muss das Tile die ausgew hlte Farbe annehmen Resultat W hrungspaar stimmt jedoch keine HighlightColor Zus tzliche HighlightColor noch nicht implementiert Information Testfall Einstellungen eines Tiles ndern Beschreibung Die Einstellungen eines Tiles k nnen zur Laufzeit ge ndert werden auch das W hrungspaar Erwartetes Resultat Nach Auswahl des W hrungspaares auf dem Einstellungsfenster und der Best tigung des Dialoges muss ein neues Tile in der EBS Ansicht mit dem ausgew hlten W hrungspaar angezeigt werden Wird eine Highlight Color ausgew hlt muss das Tile die ausgew hlte Farbe annehmen Resultat W hrungspaar ndert sich jedoch nicht die HighlightColorss Zus tzliche HighlightColor noch nicht implementiert Information Testfall Tile Position ndern Beschreibung Die Position der einzelnen Tiles kann durch Drag amp Drop ge ndert werden Erwartetes Resultat Nach dem Drag amp Drop der Tiles werden diese an der neuen Position angezeigt Resultat Nicht implementiert Testfall Tile vergr ssern verkleinern SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Testprotokolle 86 131 Studienarbeit Daniel H fliger Dominik S sstrunk Beschreibung Wird das Tile vergr ssert so zeigt es einen Graphen des Verlaufs des W hrungspaares Erwartetes Resultat Die Tiles k nnen vergr ssert verkleinert werden Resultat Chart mit Verlauf wird
113. t werden soll Bsp BasicHttpBinding Informationsaustausch ber das http Protokoll SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Glossar 119 131 Studienarbeit Daniel H fliger Dominik S sstrunk 4 2 Entwicklungswerkzeuge Begriff Erkl rung Expression Blend Entwicklungsumgebung f r plattform bergreifende Webanwendungen RIAs auf Basis von Silverlight und XAML SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Zeitauswertung 120 131 Studienarbeit Daniel H fliger Dominik S sstrunk Zeitauswertung Zeitauswertung Soll lst 200 0 180 0 160 0 ann LB l 120 0 NN Die bersicht ber die Soll Ist 100 0 EEE Zeitauswertung zeigt ein relativ 80 0 EEE E SOLL ausgeglichenes Ergebnis Die En EEE Implementation haben wir zwar an grossz gig geplant trotzdem 40 0 haben wir dies noch ein wenig 20 0 untersch tzt 0 0 Q QL Ist E Projekt Managment E Requirements Darstellung des Ist Zustandes Mit einem Drittel hat die Implementation wie bereits oben ersichtlich am meisten Zeit ben tigt Zusammen mit der Dokumentation machen diese Punkte ber die H lfte unserer Arbeit aus F r die Qualit tssicherung haben wir mit nur 3 am wenigsten Zeit aufgewendet E Analyse E Design E Implementation m Test Dokumentation E Studium Technologien H Sitzungen m Qualit tssicherung Implementation E User Interface Die Auswertung des Ist Zustandes d
114. t wird SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Projektplan 34 131 Studienarbeit Daniel H fliger Dominik S sstrunk 9 8 Codierungs Richtlinien Um das gemeinsame Arbeiten zu erleichtern halten sich alle Teammitglieder an folgende Punkte betreffend dem Umgang mit Codefiles Grunds tzlich basieren diese Vorgaben auf dem Dokument Internal Coding Guidelines von Brad Adamsl3 9 8 1 Kommentare Alle public Methoden m ssen kommentiert werden Bei Methoden muss nur dokumentiert werden was die jeweilige Methode macht und nicht wie 9 82 Namensgebung Klassen und Methoden haben einen Namen welche ihre Aufgabe widerspiegelt Klassen und Methoden m ssen mit einem Grossbuchstaben beginnen Interfaces mit einem Der Name der Assemblies widerspiegelt die implementierten Klassen und deren Namespace Namen sollen in Camel Case geschrieben werden 9 8 3 Formatierung Geschweifte Klammern sollen auf einer separaten Zeile geschrieben werden Im Allgemeinen sollten die vorgegebenen Einstellungen im Visual Studio beibehalten werden 9 9 Reviews 9 9 1 Dokumentreviews Vor einer Abgabe werden die Dokumente von beiden Teammitgliedern durchgelesen und die Fehler korrigiert Danach wird die Major Version des Dokuments erh ht sowie die Minor Version zur ckgesetzt 9 9 2 Codereviews Bei den Codereviews wird vor allem darauf geachtet dass der Quellcode den Richtlinien entspricht und m gliche Codesmells
115. tedOrder LimitOrderDto void ConvertStringToByteArray string bytel GetHash string byte GetHash byte bytel Hr Hr Hr Hr Hr Hr Die Forex Web Service Klasse implementiert den WCF Service auf dem Webserver Dieser WCF Service bietet die Schnittstelle zwischen User Interface und Domain 5 1 1 1 Login Die Anmeldung erfolgt mittels Benutzername dem Passwort welches mit SHA 256 gehasht wird sowie der Zeit der Anmeldung damit der Handshake der Authentifikation erfolgreich gehast wird Zudem legt die Login Methode bei erfolgreicher Anmeldung noch eine Session an um den User bei zuk nftigen Aktivit ten automatisch zu authentisieren Beim Schliessen der Silverlight Anwendung wird diese vom Webserver automatisch eliminiert 5 1 1 2 Get User Gibt den Benutzer zur ck welcher am System angemeldet ist 5 1 1 3 GetEbsViews L dt die EbsViews des angemeldeten Benutzers in eine Liste und gibt diese zur ck SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Software Architecture Document 77 131 Studienarbeit Daniel H fliger Dominik S sstrunk 5 1 1 4 GetEbsView Gibt die angegebene EbsView des angemeldeten Benutzers zur ck 5 1 1 5 NewEbsView Legt eine neue EbsView mit dem angegebenen Namen an Falls eine EbsView mit demselben Namen bereits angelegt ist oder der Benutzer nicht authentisiert werden konnte wird diese nicht gespeichert 5 1 1 6 SaveEbsView Speichert die angegebene
116. teht z B KeyValuePair lt K V gt versteht der WCF Service nicht SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Software Architecture Document 80 131 Studienarbeit Daniel H fliger Dominik S sstrunk 5 1 4 Utilities NotifyHelper SessionHelper RaisePropertyChanged object string PropertyChangedEventHandler void Set string object void Get string object Clear void Containsfstring bool Die Utilities sind Hilfsklassen welche global nutzbare Methoden innerhalb des Webservices anbieten SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UL Software Architecture Document 81 131 Studienarbeit Daniel H fliger Dominik S sstrunk 5 2 Forex Client 5 2 1 Resources Messages Resources resourceMan global System Resources ResourceManager resourceMan global System Resources ResourceManager resourceQulture global System Globalization Culturelnfo resourceCulture global System Globalization Culturelnfo Messages Resources property property ResourceManager global System Resources ResourceManager ResourceManager global System Resources ResourceManager Culture global System Globalization Culturelnfo Culture global System Globalization Culturelnfo ConfirmDeleteView strin ArrowDown strin ConfirmTitle string ArrowStraight strin CurrencyPairError strin ArrowUp strin ErrorWindowTitle strin ForexWe
117. ugef gt hat Diese kann er laufend anpassen Currency Pair wechseln l schen hinzuf gen nderungen an einer EBS View werden durch den Speichern Knopf bernommen Erwartetes Resultat Nach dem Speichern einer EBS View wird diese auch beim n chsten Start der Applikation so geladen Auch nach dem Wechseln der Views muss der gespeicherte Zustand angezeigt werden Werden die nderungen nicht gespeichert muss nach dem Wechseln der Views oder nach einer Neuanmeldung der alte gespeicherte Zustand geladen werden Resultat nderungen an einer View werden in der Datenbank gespeichert 3 1 3 Buy Sell Testfall Buy Sell auf einem Tile Beschreibung Der Benutzer hat die M glichkeit schnell und einfach W hrungen zu kaufen oder verkaufen Durch einen Klick auf den Buy oder Sell Button eines Tiles wird ein solcher Auftrag erfasst Erwartetes Resultat Nach dem Buy Sell Klick wird von der W hrung 1 so viel gekauft verkauft wie eingegeben wurde Zuerst muss der Benutzer jedoch noch in einem Fenster die Daten best tigen Ein Ticket muss dann erfasst sein angezeigt bei den Tickets Sicherheitsabfrage fehlt Rest stimmt Testfall Tickets filtern Beschreibung Ticket k nnen nach Tickettyp SPOT SWAP OUTRIGHT gefiltert werden und nach allen Feldern sotiert werden Erwartetes Resultat Je nachdem welche Typen ausgew hlt sind Checkboxen sollen nur jeweilige Tickets angezeigt werden Auch nach einer Aktualisierung soll der Filt
118. ulbeschreibung der Studienarbeit siehe https unterricht hsr ch staticWeb allModules 10938_M _SAl html Gesichtspunkt 1 Organisation Durchf hrung 2 Berichte Abstract Mgmt Summary techn u pers nliche Berichte sowie Gliederung Darstellung Sprache der gesamten Dokumentation 3 Inhalt Die Unterteilung und Gewichtung von 3 Inhalt wird im Laufe dieser Arbeit festgelegt Im brigen gelten die Bestimmungen der Abt Informatik zur Durchf hrung von Studienarbeiten Rapperswil den 14 September 2009 1 2 Prof Dr Markus Stolze Institut f r Software Hochschule f r Technik Rapperswil Foreign Exchange UI Erkl rung ber die eigenst ndige Arbeit 9 131 Studienarbeit Daniel H fliger Dominik S sstrunk Erkl rung ber die eigenst ndige Arbeit Wir erkl ren hiermit dass wir die vorliegende Arbeit selber und ohne fremde Hilfe durchgef hrt haben ausser derjenigen welche explizit in der Aufgabenstellung erw hnt ist oder mit dem Betreuer schriftlich vereinbart wurde dass wir s mtliche verwendeten Quellen erw hnt und gem ss g ngigen wissenschaftlichen Zitierregeln korrekt angegeben haben Dominik S sstrunk Rapperswil den 17 Dezember 2009 Daniel H fliger Rapperswil den 17 Dezember 2009 H Foreign Exchange UI Abstract 10 131 Studienarbeit Daniel H fliger Dominik S sstrunk Abstract 1 Aufgabe Forex Trading beschreibt das Handeln mit W hrungen auf dem Foreign Exchange Market
119. unden welche die FOREX Applikation benutzen SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange Ul Anforderungsspezifikationen 40 131 Studienarbeit Daniel H fliger Dominik S sstrunk 4 3 Userauthentication Overview Stakeholder and Interests Preconditions Success Guarantee Main Success Scenario Extensions Alternative Flows Special Requirements Technology and Data Variations List Frequency of Occurence Miscellaneous 4 4 EBS View CRUD Overview Stakeholder and Interests Preconditions Success Guarantee Main Success Scenario Extensions Alternative Flows Special Requirements Technology and Data Variations List Frequency of Occurence SA_ForeignExchangeUl pdf Benutzer authentifizieren am FOREX Ul anmelden Benutzer M chte die Anwendung nutzen Silverlight Plug In f r verwendeten Webbrowser installiert Der Benutzer ist angemeldet und kann das FOREX UI nutzen Der Benutzer ffnet die FOREX Trading Website mit der Silverlight Applikation Er meldet sich mit Benutzernamen und Passwort am System an Die eingegebenen Daten werden auf dem Server authentifiziert Der Benutzer ist am FOREX Ul angemeldet a Die Authentifizierung ist fehlgeschlagen 5 Der Benutzer wird nicht gefunden 6 Das eingegebene Passwort stimmt nicht mit demjenigen des Benutzers berein Bei jedem Anwendungsstart Trader t glich Amateur w chentlich EBS Ansicht mit einzelnen W hrungspaar Kacheln anz
120. ung durch Benutzer 2 Auswahl der 2 W hrung durch Benutzer 3 Best tigen der Eingaben Extensions Alternative Flows Technology and Data Frequency of Occurence Beim Hinzuf gen von neuen W hrungspaaren Trader selten beim 1 Start danach nur noch sp rlich Amateur selten beim 1 Start danach ab und an Miscellaneous 4 6 Trade Overview Einen Trade zwischen einem W hrungspaar abwickeln Stakeholder and Interests Benutzer M chte Fremdw hrungen handeln System M chte Auftrag erfolgreich erfassen und Provision kassieren Preconditions Use Case Userauthentication abgeschlossen Success Guarantee Eine Transaktion zum Handeln zweier W hrungen wurde auf dem Server erstellt Main Success Scenario 1 Auswahl des W hrungspaares durch Benutzer mit welchem gehandelt werden soll 2 Eingabe des Betrages der gehandelt werden soll 3 Durch Ausw hlen von kaufen f r den eingegebenen Betrag Fremdw hrung kaufen Fenster zur berpr fung der Transaktion welches vom Benutzer best tigt wird Extensions Alternative 3 a Durch Ausw hlen von verkaufen Fremdw hrung des Flows eingegebenen Betrages verkaufen 4 a Das Angebot ist nur eine gewisse Zeit g ltig Ist diese Zeit abgelaufen muss ein neuer Kurs geladen werden welcher dann wieder f r diese Zeitspanne g ltig ist 4 b Handelt es sich bei dem Benutzer um einen Trader so wird dieses Fenster nicht angezeigt und der Handel sofort vollzogen Special Requirements Tec
121. utzer zugeordnet sind Die geladenen EbsViews werden in einer Liste hinzugef gt und diese wird vom Service zur ckgegeben Sind alle EbsViews geladen so wird zur Default EbsView gewechselt F r alle in der Default EbsView angezeigten W hrungspaare werden nun die Raten Abonniert Nach jeder Antwort einer Ratenanfrage wird eine neue Anfrage der betreffenden Rate gesendet 18 12 2009
122. verschwinden Demnach ist der Ablauf eines Codereviews Codesmells finden und diese refaktorisieren Die Reviews des Codes werden jeweils von dem Teammitglied welches weniger an der Quellcode Datei gearbeitet hat vorgenommen SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Anforderungsspezifikationen 35 131 Studienarbeit Daniel H fliger Dominik S sstrunk Foreign Exchange Ul Anforderungsspezifikationen SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Anforderungsspezifikationen 36 131 Studienarbeit Daniel H fliger Dominik S sstrunk 1 Dokumentinformationen 1 1 nderungsgeschichte Datum Version nderung Autor 02 10 09 0 5 Schreibfehler verbessert Use Case Fully Dressed ds dh 1 2 Referenzen Nr Dokument Java Applet Version der bestehenden Anwendung https entry credit suisse ch csfs p cb de online onl uebersicht js Silverlight 3 0 Microsoft http www silverlight net SA_ForeignExchangeUl pdf Version 1 0 18 12 2009 Foreign Exchange UI Anforderungsspezifikationen 37 131 Studienarbeit Daniel H fliger Dominik S sstrunk 2 Allgemeine Beschreibung 2 1 Produkt Perspektive Die CS hat eine bestehende Foreign Exchange Online Software auf Basis von Java Applets Da neue Technologien wie Silverlight Flex oder GWT im Anmarsch sind will man da die M glichkeiten austesten Wichtig ist hier vor allem das Anzeigen des EBS Charts und Erfassen von Auftr gen We
123. zung von Microsoft Moonlight angeboten Bei unserer Arbeit haben wir mit Silverlight 3 gearbeitet Im November 09 ist die erste Beta zu Silverlight 4 aufgetaucht 2 1 Aufbau Silverlight Anwendungen werden vom Webserver heruntergeladen und auf dem Client typischerweise im Browser ausgef hrt kann auch Out of Browser betrieben werden Die Kommunikation der mie Dynamic z Mima F anguages Anwendung mit dem Webserver erfolgt mittels HTTP GET REST Python l SC t Ruby oder Webservices F r die Programmierung mittels NET eignen Roques As sich unter anderem die ADO NET Data Services die Datenbanken o automatisch als Webdienst f r einen Silverlight basierten RIA ei Client bereitstellen k nnen Be E Silverlight ist hinsichtlich seiner Ul Layer abgeleitet aus der a re l Tont Windows Presentation Foundation Hauptbestandteil der vektorbasierten Grafikdarstellung und der Gestaltung von Anwendungsoberfl chen ist das universelle und textbasierte Te XML Format XAML Networking Dom Scripting 2 2 Erfahrungen 3 Aufbau von Silverlight W hrend unserer Semesterarbeit sind uns Dinge aufgefallen die von Silverlight noch nicht unterst tzt werden e Animieren des Margin Properties e Fehlende Unterst tzung des MVVM Patterns konnte nur mit Hilfe von Zusatzlibraries erm glicht werden e WCF Service funktioniert nur mit basicHttpBinding Kein Duplex Keine Security keine Transactions Silverlight 4 bietet einige Verb
Download Pdf Manuals
Related Search
Related Contents
Le Vol du Bourdon - Programmation SEPTEMBRE VR50HD_2nd catalog CORALLO - Grimac Copyright © All rights reserved.
Failed to retrieve file