Evaluierung der Sybase Unwired Platform anhand der ...edoc.sub.uni- Ho˛ Thema der Arbeit Evaluierung der Sybase Unwired Platform anhand der Entwicklung einer iPad Applikation zur

  • View
    215

  • Download
    2

Embed Size (px)

Text of Evaluierung der Sybase Unwired Platform anhand der ...edoc.sub.uni- Ho˛ Thema der Arbeit...

  • BachelorarbeitChristian Ho

    Evaluierung der Sybase Unwired Platform anhand derEntwicklung einer iPad Applikation zur Abbildung SAP

    gesttzter CRM Prozesse

    Fakultt Technik und InformatikStudiendepartment Informatik

    Faculty of Engineering and Computer ScienceDepartment of Computer Science

  • Christian Ho

    Evaluierung der Sybase Unwired Platform anhand derEntwicklung einer iPad Applikation zur Abbildung SAP

    gesttzter CRM Prozesse

    Bachelorarbeit eingereicht im Rahmen der Bachelorprfung

    im Studiengang Bachelor of Science Angewandte Informatikam Department Informatikder Fakultt Technik und Informatikder Hochschule fr Angewandte Wissenschaften Hamburg

    Betreuender Prfer: Prof. Dr. Stefan SarstedtZweitgutachter: Prof. Dr. Olaf Zukunft

    Eingereicht am: 03. April 2013

  • Christian Ho

    Thema der ArbeitEvaluierung der Sybase Unwired Platform anhand der Entwicklung einer iPad Applikation zurAbbildung SAP gesttzter CRM Prozesse

    StichworteSybase Unwired Platform, Mobile Enterprise Application Platform, CRM Prozesse, mobileEntwicklung, native Applikation, iOS, iPad, Synchronisation

    KurzzusammenfassungMobile Enterprise Application Platforms (MEAPs) sind Systeme zur Entwicklung und Bereit-stellung mobiler Applikationen im Unternehmen. Sie versprechen dabei eine einheitliche undeinfache Entwicklung von Applikationen fr unterschiedliche Plattformen (iOS, Android, Black-Berry, etc.) und untersttzen dabei die Einbindung unterschiedlicher Backend-Datenquellen(SQL Server, Webservices, SAP Systeme, etc.). Sybase Unwired Platform (SUP) ist eine solcheMEAP und wird im Rahmen dieser Arbeit evaluiert. Die Evaluierung erfolgt anhand der Ent-wicklung einer nativen iPad Applikation zur Abbildung SAP gesttzter CRM Prozesse.

    Christian Ho

    Title of the paperEvaluation of Sybase Unwired Platform based on the development of an iPad application forCRM business processes with SAP connectivity

    KeywordsSybase Unwired Platform, Mobile Enterprise Application Platform, CRM processes, mobiledevelopment, native application, iOS, iPad, synchronization

    AbstractMobile enterprise application platforms (MEAPs) are suites for development and deploymentof business mobile applications. They promise a uniform and easy development of mobileapplications for various platforms (iOS, Android, Blackberry, etc.) and support multiple backenddata sources (SQL server, web services, SAP systems). Sybase Unwired Platform (SUP) is aMEAP and will be evaluated in this bachelor thesis. The evaluation is based on the developmentof a native iPad application for CRM business processes with SAP connectivity.

  • Inhaltsverzeichnis

    1 Einleitung 11.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Ziel der Arbeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.3 Aufbau der Arbeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

    2 Grundlagen 32.1 Grundlagen der mobilen Entwicklung . . . . . . . . . . . . . . . . . . . . . . . 3

    2.1.1 Bedienbarkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.1.2 Leistung und Ezienz . . . . . . . . . . . . . . . . . . . . . . . . . . . 42.1.3 Sicherheit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42.1.4 Portierbarkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.1.5 Quality of Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

    2.2 Objective-C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.2.1 Geschichte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.2.2 Eigenschaften von Objektive-C . . . . . . . . . . . . . . . . . . . . . . 72.2.3 Nachrichten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72.2.4 Delegates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    2.3 iOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.3.1 Beschreibung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.3.2 Architektur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

    2.4 Model-View-Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

    3 Sybase Unwired Platform 123.1 Einordnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123.2 Unwired Platform Runtime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

    3.2.1 EIS-Schicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.2.2 Data-Schicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.2.3 Server-Schicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.2.4 DMZ-Schicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.2.5 Client-Schicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

    3.3 Mobile Business Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.3.1 Synchronisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

    3.4 Sybase Mobile SDK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193.4.1 Object API Applications . . . . . . . . . . . . . . . . . . . . . . . . . . 193.4.2 HTML5/JS Hybrid Applications . . . . . . . . . . . . . . . . . . . . . . 20

    iv

  • Inhaltsverzeichnis

    3.4.3 OData SDK Applications . . . . . . . . . . . . . . . . . . . . . . . . . . 213.5 Development Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

    4 Analyse 244.1 Grundlage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244.2 Entitten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

    4.2.1 Account . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254.2.2 Opportunity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254.2.3 Angebot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254.2.4 Aktivitt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

    4.3 Prozessablufe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274.4 Umsetzung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284.5 Szenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284.6 Anforderungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

    5 Realisierung: Serverseitig 315.1 Rahmenbedingungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315.2 Einrichtung des Unwired WorkSpaces . . . . . . . . . . . . . . . . . . . . . . . 315.3 Modellierung der Mobile Business Objects . . . . . . . . . . . . . . . . . . . . 32

    5.3.1 Geschftspartner lesen . . . . . . . . . . . . . . . . . . . . . . . . . . . 325.3.2 Geschftspartner anlegen . . . . . . . . . . . . . . . . . . . . . . . . . 375.3.3 Opportunity lesen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415.3.4 Opportunity anlegen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425.3.5 Aktivitt lesen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445.3.6 Aktivitt anlegen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

    5.4 Preview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455.5 Codegenerierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455.6 Deployment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465.7 Registrierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

    6 Realisierung: Clientseitig 496.1 Projekteinrichtung XCode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496.2 AppDelegate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506.3 GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

    6.3.1 Storyboard vs. xib . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516.3.2 UISplitViewController . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

    6.4 SUPCallbackHandler und SUPApplicationCallback . . . . . . . . . . . . . . . . 576.5 SUP Initialisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 596.6 Zugri auf Mobile Business Objects . . . . . . . . . . . . . . . . . . . . . . . . 62

    6.6.1 Datenbestand synchronisieren . . . . . . . . . . . . . . . . . . . . . . . 626.6.2 Geschftspartner lesen . . . . . . . . . . . . . . . . . . . . . . . . . . . 646.6.3 Opportunity lesen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 676.6.4 Aktivitt lesen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

    v

  • Inhaltsverzeichnis

    6.6.5 Geschftspartner anlegen . . . . . . . . . . . . . . . . . . . . . . . . . 676.6.6 Opportunity anlegen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 686.6.7 Aktivitt anlegen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 696.6.8 Multi-Level-Insert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

    6.7 Deployment auf das iPad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

    7 Schluss 747.1 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 747.2 Ausblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

    vi

  • Tabellenverzeichnis

    2.1 Bildschirmausungen mobiler Gerte . . . . . . . . . . . . . . . . . . . . . . 32.2 Betriebssysteme und Programmiersprachen . . . . . . . . . . . . . . . . . . . . 5

    3.1 MBO Abbildungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.2 Sybase Mobile SDK (Vgl. [sup11], S.16) . . . . . . . . . . . . . . . . . . .