Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Überblick Client-Architekturen

Überblick Client-Architekturen

Von nativen Clients bis hin zu HTML5/JavaScript. Votrag im Rahmen der Vorlesung IKS-Architekturen bei Prof. Hasenkamp an der Philipps-Universität Marburg

Alexander Schwartz

February 04, 2014
Tweet

More Decks by Alexander Schwartz

Other Decks in Technology

Transcript

  1. Übersicht Client-Technologien
    In der Vorlesung IKS-Architektur Prof. Hasenkamp
    Philipps-Universität Marburg
    Alexander Schwartz, 05-02-2014
    msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    1

    View full-size slide

  2. AGENDA
    1. Einführung
    2. Native Anwendungen
    3. Portable Anwendungen
    4. Thin Clients
    5. Evolution
    6. Interoperabilität
    7. Testen
    8. Auswahl einer Client-Technologie
    2 Alexander Schwartz, Client Technologien msg systems ag, 05-02-2014

    View full-size slide

  3. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    3
    Mein Sponsor und Arbeitgeber
    1980 gegründet
    mehr als 4000 Kollegen
    9 Branchen
    540 Mio € Umsatz 2012
    23 Länder
    in 13 Städten
    in Deutschland präsent
    msg systems ag

    View full-size slide

  4. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    4
    Startup im Konzern
    Projektmanager
    für die Durchführung
    Softwareentwickler
    für Individualsoftware
    (.NET und Java)
    IT Consultants
    für Beratung
    Fachspezialisten
    für Konzepte
    insges. 50 Mitarbeiter
    an 4 Standorten
    Geschäftsbereich Travel und Logistik

    View full-size slide

  5. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    5
    Wer ich bin
    Alexander Schwartz
    Principal IT Consultant im GB Travel und Logistics
    BWL Studium
    Marburg und
    Canterbury
    11 Jahre Java
    7 Jahre PL/SQL
    7 Jahre
    Absatzfinanzierung
    3,5 Jahre Direktbank
    1 Frau
    2 Kinder
    311 gefundene
    Geocaches

    View full-size slide

  6. AGENDA
    1. Einführung
    2. Native Anwendungen
    3. Portable Anwendungen
    4. Thin Clients
    5. Evolution
    6. Interoperabilität
    7. Testen
    8. Auswahl einer Client-Technologie
    6 Alexander Schwartz, Client Technologien msg systems ag, 05-02-2014

    View full-size slide

  7. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    7
    Aspekte der Client-Techologie:
    • Gibt Informationen wieder (z.B. auf einem Bildschirm)
    • Stellt Eingabemöglichkeiten bereit
    • Gibt Rückmeldung zur Validierung und Verarbeitung
    • Greift auf Backend-Services für Fachlogik zu
    • Erlaubt Zugriff auf zentral gespeicherte Informationen
    Im Fokus für heute:
    • Desktop
    • Mobile (Telefon/Tablet)
    Heute nicht betrachtet:
    • Sprachdialogsysteme
    • Eingebettete Systeme
    • Kommandozeilen-Interfaces
    Einführung
    Die Client-Technologie ist die Schnittstelle zum Nutzer.

    View full-size slide

  8. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    8
    • verschiedene Betriebssysteme (OS)
    • verschiedene Bildschirmgrößen
    • verschiedene Eingabemöglichkeiten (Maus, Tastatur, Finger)
    • verschiedene Extras (GPS, Drucker, Scanner, Kamera, …)
    Einführung
    Endgeräte haben unterschiedliche Eigenschaften
    Internet
    Corporate Network
    Cloud

    View full-size slide

  9. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    9
    • Systematische Analyse der Aspekte
    • Unterstützt durch einen etablierten Standard:
    ISO 25 0xx quality model
    • Benutzerzentriert: “quality in use” Modell*
    • Produktzentriert: “product quality” Modell*
    Einführung
    Bewertung verschiedener Client-Technologien
    * Alle Referenzen zum Standard in sind hier und im weiteren Verlauf – wie der Standard selbst – in englischer Sprache

    View full-size slide

  10. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    10
    • Im Fokus ist die Wahrnehmung der Software durch den Endanwender
    Einführung
    “Quality in use” zur Bewertung der Mensch-Maschine-Interaktion

    View full-size slide

  11. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    11
    Einführung
    “Product quality” zur Charakterisierung eines Softwareprodukts
    • Im Folgenden: zur Charakterisierung verschiedener Client-Technologien

    View full-size slide

  12. AGENDA
    1. Einführung
    2. Native Anwendungen
    3. Portable Anwendungen
    4. Thin Clients
    5. Evolution
    6. Interoperabilität
    7. Testen
    8. Auswahl einer Client-Technologie
    12 Alexander Schwartz, Client Technologien msg systems ag, 05-02-2014

    View full-size slide

  13. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    13
    • functional completeness
    … covers all the specified tasks and user objectives …
    • user interface aesthetics
    … pleasing and satisfying interaction …
    • time behaviour
    … response and processing times …
    • learnability
    … user … learning to use the product …
    Native Anwendungen
    Native Anwendungen können alle Funktionen nutzen, die das
    darunterliegende Betriebssystem anbietet.

    View full-size slide

  14. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    14
    Desktop
    • Microsoft Windows:
    .NET mit Windows Presentation Foundation (WPF) *
    • Apple Mac OS X:
    Objective C mit Cocoa
    Mobile
    • Apple iOS:
    Objective C mit Cocoa Touch
    • Google Android:
    Java mit Android SDK *
    * Auch C/C++ stehen zur Verfügung, um native Anwendungen (oder Teile davon) zu entwickeln.
    Native Anwendungen
    Haupt-Plattformen für native Anwendungen

    View full-size slide

  15. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    15
    • Native Anwendungen für die Windows-Plattform
    • Code wird auf der Common Language Runtime (CLR) ausgeführt
    • Teil von .NET 3.0 (verfügbar seit 2006)
    • Letzte Version 4.5.1 (2013)
    • Alle nativen Funktionen von Windows stehen den Entwicklern zur
    Verfügung
    • “Click once” Installation / automatisches Update
    • Windows Store als Teil von Windows 8
    • Plugin Framework (MEF) seit 3.5 für Erweiterung durch Module zur
    Laufzeit
    • Entwicklung muss auf einem (aktuellen) Windows-Rechner erfolgen
    Native Anwendungen
    Microsoft Windows / Desktop:
    .NET mit Windows Presentation Foundation (WPF)

    View full-size slide

  16. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    16
    • Erstes Release 2001
    • Neustes Release 10.9 (2013)
    • Alle nativen Funktionen des Mac OS X stehen den Entwicklern
    zur Verfügung
    • App-Store für Anwendungen, inklusive automatische Aktualisierung
    • Entwicklung muss auf einem (aktuellen) Mac OS X erfolgen
    Native Anwendungen
    Apple Mac OS X / Desktop:
    Objective C mit Cocoa

    View full-size slide

  17. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    17
    • Erstes Release 2007
    • Neustes Release 7 (2013)
    • Alle nativen Funktionen des Apple iOS stehen den Entwicklern
    zur Verfügung
    • App-Store für Anwendungen, inklusive automatische Aktualisierung
    • Entwicklung muss auf einem (aktuellen) Mac OS X erfolgen
    Native Anwendungen
    Apple iOS / Mobile:
    Objective C mit Cocoa touch

    View full-size slide

  18. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    18
    • Erstes Release Release 2008
    • Neustes Release 4.4 (2013)
    • Alle nativen Funktionen des Google Android stehen den
    Entwicklern zur Verfügung
    • App-Store für Anwendungen, inklusive automatische Aktualisierung
    • Entwicklung kann erfolgen auf Linux, Mac OS und Windows
    mit Android SDK basierend auf Eclipse IDE (Preview: IntelliJ IDE)
    Native Anwendungen
    Google Android / Mobile:
    Java w/ Android SDK
    The Android robot is reproduced or modified from work created and shared by Google and used according to
    terms described in the Creative Commons 3.0 Attribution License.

    View full-size slide

  19. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    19
    • Installation benötigt ggf. lokale Administratorenrechte
    • Installation müssen vom IT Betrieb verwaltet werden
    • Aktualisierungen müssen bereitgestellt und ausgerollt werden
    • Keine Portabilität auf ein anderes Betriebssystem
    • Technologie auf dem Client stimmt ggf. nicht mit der Technologie im
    Backend überein (.NET / Objective C / Java)
    Native Anwendungen
    Nachteile von nativen Anwendungen

    View full-size slide

  20. AGENDA
    1. Einführung
    2. Native Anwendungen
    3. Portable Anwendungen
    4. Thin Clients
    5. Evolution
    6. Interoperabilität
    7. Testen
    8. Auswahl einer Client-Technologie
    20 Alexander Schwartz, Client Technologien msg systems ag, 05-02-2014

    View full-size slide

  21. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    21
    • portability
    … can be transferred from one hardware, software … to another
    • reusability
    … asset can be used in more than one system …
    • maintainability
    … effectiveness and efficiency … system can be modified …
    • Bibliotheken können auf verschiedenen Betriebssystemen verwendet
    werden
    • Verschiedene Plattformen können aus einem Release bedient werden
    Desktop:
    • Java / Eclipse RCP
    Mobile:
    • Phonegap / Apache Cordova
    Portable Anwendungen
    Portable Anwendungen laufen auf mehr als einem Betriebssystem

    View full-size slide

  22. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    22
    • Plugin-Architektur basierend auf OSGi für
    Erweiterungen zur Laufzeit
    • Automatische Aktualisierung
    • Wiederverwendung von Java-Know-How, wenn dies bereits auf der
    Server-Seite eingesetzt wird
    • Unterstützte Plattformen:
    Windows, Mac OS X, Linux
    • Unterscheidet sich in Aussehen und Bedienbarkeit von nativen
    Anwendungen
    • Zugriff auf einzelne native Elemente ist möglich
    • Interaktion mit nativen Anwendungen ist möglich, z. B. OLE (Object
    Linking and Embedding) unter Windows
    Portable Anwendungen
    Desktop: Java / Eclipse RCP

    View full-size slide

  23. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    23
    • Nutzt HTML, CSS und JavaScript, um eine Anwendung
    zu erstellen (mit jQuery mobile oder Dodo Mobile)
    • Anwendung wird in eine native Hülle eingepackt
    • Zugriff auf native Funktionen über eine
    JavaScript Abstraktionsschicht
    • Ein Build Service in der Cloud baut Versionen für verschiedene
    Zielplattformen, zusätzliche Hardware wird nicht benötigt
    • Zugriff auf 7 mobile Plattformen, inkl. Android, iOS, Windows Phone
    • Aussehen und Bedienbarkeit sind (etwas) anders als bei nativen
    Anwendungen
    (Anpassungen via CSS sind möglich)
    • Zugriff auf die Hauptfunktionen der Endgeräte
    • Langsamer als eine native Anwendung
    Portable Anwendungen
    Mobile: Phone Gap / Apache Cordova

    View full-size slide

  24. AGENDA
    1. Einführung
    2. Native Anwendungen
    3. Portable Anwendungen
    4. Thin Clients
    5. Evolution
    6. Interoperabilität
    7. Testen
    8. Auswahl einer Client-Technologie
    24 Alexander Schwartz, Client Technologien msg systems ag, 05-02-2014

    View full-size slide

  25. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    25
    • installability
    … effectiveness and efficiency [to be] installed/uninstalled …
    • replaceability
    … new version … different product …
    • operability
    … easy to operate and control …
    • maintainability
    … effectiveness and efficiency … system can be modified …
    Thin Clients
    Nutzung eines Browsers mit serverseitiger Logik

    View full-size slide

  26. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    26
    Thin Clients
    Nutzung eines Browsers mit serverseitiger Logik
    Darstellung
    Präsentations-
    logik
    Fachlogik
    Datenschicht
    Client
    Server
    Native
    Anwendung
    Client
    HTML
    basierend
    Server

    View full-size slide

  27. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    27
    • Minimaler Einsatz von JavaScript
    • Nutzt etablierte Browser-Standards
    • Stellt Abstraktionen für HTTP und HTML bereit
    • Kein Zugriff auf betriebssystemspezifische Funktionen
    • Jede Aktion des Nutzers wird vom Server verarbeitet
    Thin Clients
    Serverseitige Frameworks für HTML
    Java .NET
    MVC Spring Web MVC ASP.NET MVC
    Komponenten Java Server Faces (JSF) ASP.NET

    View full-size slide

  28. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    28
    • Starker Einsatz von JavaScript (oder Browser Plugin)
    • Mächtige Abstraktionsschichten über HTTP und HTML
    (GWT kompiliert Java zu JavaScript)
    • Einige Aktionen des Nutzers benötigen eine Rückmeldung vom
    Server
    Thin Clients
    Rich Internet Applications (RIA)
    Client Technologie
    AJAX Komponenten RichFaces, IceFaces, PrimeFaces
    Komponenten Google Web Toolkit (GWT)
    Browser Plugins Adobe Flash
    Microsoft Silverlight

    View full-size slide

  29. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    29
    Thin Clients
    Nutzung eines Browsers mit serverseitiger Logik
    Darstellung
    Präsentations-
    logik
    Fachlogik
    Datenschicht
    Client
    Server
    Native
    Anwendung
    Client
    HTML
    basierend
    Server
    Client
    Rich Internet
    Application
    Server

    View full-size slide

  30. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    30
    • Reduziertes Nutzererlebnis durch geringere Interaktivität der
    genutzten Technologie
    • Auf dem Server gespeicherter Zustand benötigt Resourcen pro
    zusätzlichem Nutzer, der mit dem System arbeitet
    • Der Zustand auf dem Server muss zwischen den verschiedenen
    Knoten abgeglichen werden
    • Skalierbarkeit wird mit wachsender Nutzerzahl schwierig
    • Aspekt “functional completeness” kann schwer erreicht werden, wenn
    mehrere Abstraktionsstufen existieren
    • Browser Plugins müssen separat installiert (und aktualisiert) werden
    • Browser Plugins sind bekannt für Sicherheitsprobleme
    Thin Clients
    Nachteile der vorgestellten Thin Client Technologien

    View full-size slide

  31. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    31
    Alle Vorteile einer Browser-Technologie plus:
    • capacity
    … maximum limits of a product …
    • resource utilization
    … resource used to meet requirements …
    • functional completeness
    … covers all the specified tasks and user objective …
    … wenn REST-basierte, zustandslose Backend-Services genutzt werden.
    Thin Clients
    HTML5 + JavaScript als Client-Technologie

    View full-size slide

  32. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    32
    Thin Clients
    Nutzung eines Browsers mit serverseitiger Logik
    Darstellung
    Präsentations-
    logik
    Fachlogik
    Datenschicht
    Client
    Server
    Native
    Anwendung
    Client
    HTML
    basierend
    Server
    Client
    Rich Internet
    Application
    Server
    HTML5
    JavaScript
    Client
    Server

    View full-size slide

  33. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    33
    • HTML:
    1990 (Sir Tim Berners-Lee, CERN)
    • JavaScript:
    1996 (Brendan Eich, Netscape)
    • JavaScript interagiert mit HTML: Document Object Model (DOM)
    1997 (“intermediate DOM”) … 2004 (“DOM Level 3”)
    • JavaScript interagiert mit dem Server: XMLHttpRequest
    2001 (Microsoft / Internet Explorer 6 – in IE 5 nur mit ActiveX)
    • Standardisiertes JavaScript API für Interaktion mit HTML: jQuery
    2006
    • Modularisierung in JavaScript: requireJS
    2010
    • Model-View-Binding HTML/JavaScript: Knockout
    2010
    Thin Clients
    HTML5 + JavaScript Zeitleiste
    (cc) W3C http://www.w3.org/html/logo/

    View full-size slide

  34. AGENDA
    1. Einführung
    2. Native Anwendungen
    3. Portable Anwendungen
    4. Thin Clients
    5. Evolution
    6. Interoperabilität
    7. Testen
    8. Auswahl einer Client-Technologie
    34 Alexander Schwartz, Client Technologien msg systems ag, 05-02-2014

    View full-size slide

  35. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    35
    • maturity
    … applied to reliability, but also other quality characteristics …
    • maintainability
    … corrections, improvements, adoption of the software to changes in
    the environment …
    • adaptability
    ... can be adapted for different or evolving hardware, software …
    • Neue Frameworks und Versionen erscheinen monatlich
    • Wenige erlangen Bedeutung und werden Quasi-Standards ihrer Zeit
    und im Unternehmensumfeld eingesetzt
    • Einige Technologien verschwinden, wenn Hersteller- oder
    Community-Unterstützung ausbleiben
    Evolution von Client Technologien
    Evolution von Client Technologien

    View full-size slide

  36. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    36
    • Java basiertes Web MVC Framework
    • Früher sehr stark verbreitet
    • Erstes Release: 2000
    • Letztes Release: 2008
    • Offizielle Community-Aussage: “end of life”
    • Es gibt weiterhin Unternehmensanwendungen
    basierend auf Struts 1.x
    • Ein Migrationspfad zu 2.0 existiert – aber 2.0 ist inkompatibel
    Evolution von Client Technologien
    Tote Technology: Struts 1.x

    View full-size slide

  37. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    37
    • Java Server Faces (JSF) ist Teil des offenen
    Java Enterprise Edition (JEE) Standards
    • Erstes Release JSF 1.0: 2004
    • Neustes Release JSF 2.2: 2013
    • Alte Versionen laufen auch auf neuen Applikationsservern
    • Refactoring ist empfehlenswert, um neue Funktionen nutzen zu
    können
    • Migrationen sind notwendig, wenn Bibliotheken von Drittanbietern
    verwendet wurden, deren Funktionen später in den Standard
    aufgenommen werden
    Evolution von Client Technologien
    Evolution eines Standards: Java Enterprise Edition / Java Server Faces

    View full-size slide

  38. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    38
    • HTML: Früher gab es Standards des W3C in verschiedenen Versionen
    … jetzt ein “living standard” (http://html5.org/)
    • JavaScript: Standardisiert als ISO/IEC 16262
    … aber nicht alle APIs sind Teil des Standards
    Nach mehr als 10 Jahren sind wir nun in der Lage, modulare und interaktive
    Anwendungen zu bauen
    Ist es nun eine „reife Technologie“?
    Evolution von Client Technologien
    Ungesteuerte (?) Evolution: HTML und JavaScript

    View full-size slide

  39. AGENDA
    1. Einführung
    2. Native Anwendungen
    3. Portable Anwendungen
    4. Thin Clients
    5. Evolution
    6. Interoperabilität
    7. Testen
    8. Auswahl einer Client-Technologie
    39 Alexander Schwartz, Client Technologien msg systems ag, 05-02-2014

    View full-size slide

  40. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    40
    • interoperability
    … can exchange information and use the information …
    • compatibility
    … can exchange information … sharing the same … environment …
    • functional completeness
    … covers all specified tasks and user objectives …
    Interoperabilität von Client Technologien
    Interoperabilität von Clients

    View full-size slide

  41. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    41
    • Android
    Intents: Publish/Subscribe Mechanismus, um Daten und Events zu
    versenden und zu empfangen
    • Windows
    OLE: spezifische Interaktion zwischen einzelnen Anwendungen
    Contracts (seit Windows 8): Publish/Subscribe Mechanismus, um Daten
    und Events zu versenden und empfangen
    • HTML / HTML5
    Links: Weiterleitung zu einer anderen Awendung, ggf. mit Datenübergabe
    JavaScript/DOM Mash-Up: Integration in die eigene Anwendung zur
    Laufzeit
    • Eclipse RCP / .NET WPF
    Plugins können zur Laufzeit dazuinstalliert werden
    Interoperabilität von Client Technologien
    Interoperability nach Betriebssystem and Client Technologie

    View full-size slide

  42. AGENDA
    1. Einführung
    2. Native Anwendungen
    3. Portable Anwendungen
    4. Thin Clients
    5. Evolution
    6. Interoperabilität
    7. Testen
    8. Auswahl einer Client-Technologie
    42 Alexander Schwartz, Client Technologien msg systems ag, 05-02-2014

    View full-size slide

  43. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    43
    • functional correctness
    … correct results with the needed degree of precision …
    • usability
    … achieve specified goals …
    • maintainability
    … system can be modified by the intended maintainers …
    • testability
    … test criteria can be established for the system …
    … tests can be performed for [the] criteria …
    Testen in Abhängigkeit zur Client Technologie
    Testen in Abhängigkeit zur Client Technology

    View full-size slide

  44. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    44
    • Continuous Integration Build
    • Unit Testing
    • Automatische Provisionierung
    • Smoke Tests
    • Integrationstests
    • Graphical User Interface (GUI) Tests
    • Lasttests
    • Continuous Integration ist für alle vorgestellten Technologien
    verfügbar
    • Automatische Provisionierung ist eine Herausforderung
    • GUI Tests sind schwierig und empfindlich
    Testen in Abhängigkeit zur Client Technologie
    Elemente automatischen Testens

    View full-size slide

  45. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    45
    .NET / WPF
    • Ein Betriebssystem (wenige unterschiedliche Versionen)
    • Kann mit wenigen virtuellen Maschinen (VMs) bereitgestellt werden
    Eclipse RCP
    • Mehrere Betriebssystems (wenige unterschiedliche Versionen)
    • Kann mit einigen wenigen VMs bereitgestellt werden
    Web Client / HTML5
    • Viele Betriebssysteme, viele Browser und Browser-Versionen
    • Kann mit vielen VMs bereitgestellt werden
    Android
    • Viele Endgeräte, viele Auflösungen, viele Versionen
    • Kann virtualisiert werden für Standard-Android, aber nicht
    für modifizierte Android-Versionen der verschiedenen Hersteller
    iOS
    • Wenige Endgeräte, wenige Auflösungen, wenige Versionen
    • Schwierig zu virtualisieren
    Testen in Abhängigkeit zur Client Technologie
    Schwierigkeit des GUI Testens
    Schwierigkeit
    Cloud-
    basierte
    Services
    können
    helfen

    View full-size slide

  46. AGENDA
    1. Einführung
    2. Native Anwendungen
    3. Portable Anwendungen
    4. Thin Clients
    5. Evolution
    6. Interoperabilität
    7. Testen
    8. Auswahl einer Client-Technologie
    46 Alexander Schwartz, Client Technologien msg systems ag, 05-02-2014

    View full-size slide

  47. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    47
    • Anforderungen prüfen
    • Lebensdauer der Anwendung abschätzen
    • Ggf. getrennte Schätzung der Lebensdauer von Client und Server
    • Evaluierung in Anlehnung an einen Kriterienkatalog
    ähnlich ISO 250xx
    • Prüfen, welche Kriterien für den Kunden in seiner Situation wichtig sind
    • Mit Menschen reden, die die Technologie schon verwendet haben
    • Einen Prototypen bauen
    • Test-Automatisierung am Prototyp ausprobieren
    • Aufschreiben, warum man sich für eine bestimmte Technologie
    entschieden hat *
    • (Vielleicht) schon darauf vorbereiten, die Client-Technologie später
    austauschen zu können
    * vgl. [arc42], Kapitel 9
    Auswahl einer Client-Technologie
    Auswahl einer Client-Technologie

    View full-size slide

  48. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    48
    Auswahl einer Client-Technologie
    Antworten
    Fragen

    View full-size slide

  49. msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    49
    Referenzen
    [ISO 25010]
    ISO/IEC 25010:2011, Systems and software engineering — Systems and
    software Product Quality Requirements and Evaluation (SQuaRE) —
    System and software quality models
    [Quamoco]
    Quamoco, Software-Qualitätsstandard für Deutschland
    http://www.quamoco.de/webmodel/
    (frei zugängliche Details zum Product Quality Model gem. ISO 25010)
    [arc42]
    Vorlage, um IT-Systemarchitekturen zu dokumentieren
    http://www.arc42.org

    View full-size slide

  50. www.msg-systems.com
    Danke!
    msg systems ag, 05-02-2014
    Alexander Schwartz, Client Technologien
    50
    msg systems ag
    Alexander Schwartz
    Mobile: +49 171 5625767
    E-Mail: [email protected]
    Mergenthalerallee 73-75
    65760 Eschborn
    www.msg-systems.com

    View full-size slide