iOS , Android , WP7... Alle nativ auf einen Streich!

35
© Zühlke 2012 Romano Roth & Oliver Brack iOS, Android, WP7... Alle nativ auf einen Streich! Romano Roth und Oliver Brack 7. Mai 2012 Folie 1

description

iOS , Android , WP7... Alle nativ auf einen Streich!. Romano Roth und Oliver Brack. Kein Erfolg ohne Mobilität!. IDC/Nielsen 2012. Fünf Fragen eines Entscheiders. Entwicklungskosten senken Mehrere mobile Plattformen (nativ) Bestehende Mitarbeiter Produkteinführungszeit verkürzen - PowerPoint PPT Presentation

Transcript of iOS , Android , WP7... Alle nativ auf einen Streich!

Page 1: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012

Romano Roth & Oliver Brack

iOS, Android, WP7...Alle nativ auf einen Streich!Romano Roth und Oliver Brack

7. Mai 2012Folie 1

Page 2: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Kein Erfolg ohne Mobilität!

20102011201220132014201520160

200

400

600

800

1000

1200

1400

1600

PCs MobilgeräteIDC/Nielsen 2012

12/11 - 02/12

Android iOSandere

7. Mai 2012 Folie 2

Page 3: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Fünf Fragen eines Entscheiders

• Entwicklungskosten senken

• Mehrere mobile Plattformen (nativ)

• Bestehende Mitarbeiter

• Produkteinführungszeit verkürzen

• Investitionen schützen

7. Mai 2012 Folie 3

Page 4: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Zielpublikum

Entscheider

• Projektleiter

• Product Owner

• Entwicklungsleiter

• Softwarearchitekten

Keine Erfahrung in Mobile-Entwicklung

Wenig technische Details

Rollenspiel

7. Mai 2012 Folie 4

Page 5: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Über uns

Romano Roth

• Lead Software Architect

• Zühlke seit 2002

• Client Architekturen (WPF)

• Entwickler (Dev) im [email protected]

7. Mai 2012 Folie 5

Oliver Brack

• Senior Software Engineer

• Zühlke seit 2007

• Projektleitung Cliententwicklung

• Product Owner (PO) im [email protected]

Page 6: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Rollenspiel – 1. Akt

Kürzlich nach den X.DAYS:

«Eine mobile App fürs Windows Phone muss her!»

7. Mai 2012 Folie 6

Page 7: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Ausgangslage

• .NET-Entwicklungsabteilung (C#)

• Kundenverwaltung (RIA: Silverlight)

• Cloud Service (Azure) mit Datenhaltung

Service (Azure)Business

Layer (.NET)

Kundenverwaltung

WCF Kundendaten

7. Mai 2012 Folie 7

Page 8: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Der Business Layer

7. Mai 2012 Folie 8

Page 9: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack 7. Mai 2012 Folie 9

User Interface Mockup

Page 10: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Windows Phone 7 (1/2)

7. Mai 2012 Folie 10

Demo

Page 11: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Windows Phone 7 (2/2)

• Wiederverwendung des Business Layers

• Daten aus Cloud

• UI mit Visual Studio 2010

Service (Azure)

.NET

UI

Customer BL

User Interface

Framework

Business Layer

7. Mai 2012 Folie 11

Page 12: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Rollenspiel – 2. Akt

Nach der Verkaufssitzung:

«Alle unsere Vertreter haben ein iPhone…»

7. Mai 2012 Folie 12

Page 13: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Web, hybrid oder nativ?

Kriterium Web hybrid nativ

User Experience

Performance

Offlinefähigkeit

Hardware

Bezahlmodelle

Multi-Plattform

Abstrahierung

Deployment 7. Mai 2012 Folie 13

Page 14: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Beispiel nativ vs. Web

nativ Web

• Interaktionselemente

• Deployment, Updates

• Offlinefähigkeit (Ticket kaufen)

• Hardware(Schütteln für Ticket)

80 % 20 % • OnlinezeitStefano Malle (Microsoft), 2012

7. Mai 2012 Folie 14

Page 15: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Von Microsoft zu Apple

Gedanken des Entwicklers

• Wiederverwendung von Code (Business Layer)

• Neue Konzepte und Sprachen (Objective-C) lernen?

• Zeitdruck

Visual Studio 2010.NET mit C#

MonoDevelopMono mit C#

7. Mai 2012 Folie 15

Page 16: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Was ist Mono?

• Open-source-Implementation der .NET CLR

• Linux, MacOS X, Solaris, BSD, Wii, PS3

• MonoDevelop als Entwicklungsumgebung

• Binary-kompatibel mit Microsoft .NET

7. Mai 2012 Folie 16

Page 17: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Was ist MonoTouch?

MonoTouch

Sprache C# (statt Objective-C)

Framework Mono

IDE MonoDevelop,(Visual Studio 2010)

UI Designer Xcode

Hersteller Xamarin

Hardware Intel-Mac

Preise MonoTouch: USD 399.-Apple Dev: USD 99.-

7. Mai 2012 Folie 17

Page 18: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

MonoTouch (1/2)

Demo

7. Mai 2012 Folie 18

Page 19: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

MonoTouch (2/2)

• Wiederverwendung des Business Layers

• Daten aus Cloud

• UI mit Xcode und MonoDevelop

Service (Azure)

MonoTouchCustomer

BL

Mono

UI

User Interface

Framework

Business Layer

7. Mai 2012 Folie 19

Page 20: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Rollenspiel – 3. Akt

Ein halbes Jahr später:

«Einige Vertreter haben jetzt ein Android-Phone…»

7. Mai 2012 Folie 20

Page 21: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Was ist Mono for Android?

MonoTouch Mono for Android

Sprache C# (statt Objective-C)

C# (statt Java)

Framework

Mono Mono

IDE MonoDevelop,(Visual Studio 2010)

MonoDevelop,Visual Studio 2010

UI Designer

Xcode DroidDraw, Eclipse

Hersteller Xamarin Xamarin

Hardware Intel-Mac Windows PC/Intel-Mac

Preise MonoTouch: USD 399.-Apple Dev: USD 99.-

Mono Android: USD 399.-Google Dev: USD 25.-7. Mai 2012 Folie 21

Page 22: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Mono for Android (1/2)

7. Mai 2012 Folie 22

Demo

Page 23: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Mono for Android (2/2)

• Wiederverwendung des Business Layers

• Daten aus Cloud

• UI mit Visual Studio 2010

Service (Azure)

MonoAndroidCustomer BL

Mono

UI

User Interface

Framework

Business Layer

7. Mai 2012 Folie 23

Page 24: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Die Architektur

Service (Azure)

BL BL BL BLBusiness Layer

Kundendaten

UIUI UI UI

7. Mai 2012 Folie 24

Page 25: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Nachteile von Mono

• UI weiterhin nativ pro Plattform:– XAML (WP7)– Xcode (iOS)– AXML (Android)

• Deployment pro Plattform (App Stores)

• iOS-Entwicklung trotzdem nur mit Intel-Mac

• Neue API-Features erst mit Mono-Release

• Abhängigkeit von Xamarin (Hersteller)

• «Lediglich» Silverlight-4-Stack

7. Mai 2012 Folie 25

Page 26: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Kompetenzen

7. Mai 2012

Plattformspezifisch Mono

Backend

Backend

Objective-C Java

.NET

z.B. .NET.NET

.NET

Folie 26

Page 27: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Kompetenzen

7. Mai 2012 Folie 27

Plattformspezifisch Mono

Objective-C- Xcode

z.B. .NET

.NET (C#)- XAML- Xcode- AXML

.NET- XAML

Java- AXML

Page 28: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Anfängliche fünf Fragen

• Entwicklungskosten senken

• Mehrere mobile Plattformen (nativ)

• Bestehende Mitarbeiter

• Produkteinführungszeit verkürzen

• Investitionen schützen

7. Mai 2012 Folie 28

Page 29: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Entwicklungskosten senken?

Programmlogik wiederverwenden, z. B.- Authentifizierung, Autorisierung- Persistierung (online/offline)- Hardwarezugriff (iOS/Android)- «Rechenkern» - Xing-App: WP7 iOS

39 %66 %

Antworten (1/5)

7. Mai 2012 Folie 29

Aufwand (Schätzung)Codezeilen

Page 30: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Antworten (2/5)

Mehrere mobile Plattformen?

Mit MonoTouch und Mono for Android weiterhin in .NET mit C# (wie WP7) entwickeln

- Quellcode hybrid, App nativ- Synergien nutzen- Bekannte Konzepte und Tools

7. Mai 2012 Folie 30

Page 31: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Antworten (3/5)

Bestehende Mitarbeiter?

Alle nativen Projekte für WP7, iPhone und Android. Praktisch ohne Umlernen!

- Fachkräfte sind Mangelware!- Risikominimierung für Firma- Job-Enrichment für Entwickler

7. Mai 2012 Folie 31

Page 32: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Antworten (4/5)

Produkteinführungszeit verkürzen?

Pro Plattform lediglich noch UI entwickeln - Parallelisierung der Entwicklung- Möglichkeit zum Outsourcing (nur UI) BL ist/enthält Kernkompetenz- UI-Designtools nutzen

7. Mai 2012 Folie 32

Page 33: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Antworten (5/5)

Investitionen schützen?

Weiterhin auf .NET mit C# setzen- n Technologieäste pflegen, kostet Geld- Ausbildung ist teuer- Spezialisten sind begehrt (Abwerbung)- Wiederverwendung von bestehendem Code/Tools

7. Mai 2012 Folie 33

Page 34: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Rollenspiel – Schlussakt

Mitte März 2012:

«The new iPad...»

7. Mai 2012 Folie 34

Page 35: iOS ,  Android , WP7... Alle nativ auf einen Streich!

© Zühlke 2012Romano Roth & Oliver Brack

Fragen

7. Mai 2012 Folie 35