MTC Spring 2013: Modernisierung einer geerbten iOS-App

Preview:

DESCRIPTION

Vortrag auf der MobileTech Conference Spring 2013 in München http://mobiletechcon.de/2013spring/

Citation preview

Schweres Erbe: Modernisierung einer geerbten iOS-App

Claus Höfele <choefele@ebay.com>

Schweres Erbe: Modernisierung einer geerbten iOS-App

eBay Kleinanzeigen

Schweres Erbe: Modernisierung einer geerbten iOS-App

Kleinanzeigen in Zahlen

6MAktive Anzeigen

4MApp Downloads

10MUnique Visitors/Monat

Schweres Erbe: Modernisierung einer geerbten iOS-App

Anteil Mobile an Visits

2011 2012 2013

Schweres Erbe: Modernisierung einer geerbten iOS-App

Commit Historie 2012

Übernahme Redesign

Schweres Erbe: Modernisierung einer geerbten iOS-App

Vier Dinge, die wir verbessert haben

Technologien AutomatischeBuilds DesignProzess

PROZESS

Schweres Erbe: Modernisierung einer geerbten iOS-App

Urspünglicher Prozess

Schweres Erbe: Modernisierung einer geerbten iOS-App

Kanban

Schweres Erbe: Modernisierung einer geerbten iOS-App

Kanban - Details

ToDo Dev in Progress

Dev Done

QA in Progress

Schweres Erbe: Modernisierung einer geerbten iOS-App

Entwicklungsprozess

PM

Dev

QA

SystemTest

Apple ReviewTickets

Schweres Erbe: Modernisierung einer geerbten iOS-App

Home Office

Schweres Erbe: Modernisierung einer geerbten iOS-App

Digitales Lagerfeuer

Schweres Erbe: Modernisierung einer geerbten iOS-App

Warum Kanban?

Technologien

Schweres Erbe: Modernisierung einer geerbten iOS-App

iOS Versionen (Juli 2012)

Sonstige4.2-

4.3

iOS 5+

Schweres Erbe: Modernisierung einer geerbten iOS-App

Customization & Appearance Proxies

UINavigationBar *navigationBarProxy = UINavigationBar.appearance;[navigationBarProxy setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];

HeaderBarButtonItemGreen

HeaderBarButtonItemGray

Schweres Erbe: Modernisierung einer geerbten iOS-App

Storyboard - wird schnell komplex

Schweres Erbe: Modernisierung einer geerbten iOS-App

Möglichkeiten zur UI Anpassungen

AppearanceProxies

Storyboard

Code

AllgemeingültigeAnpassungen

Programmablauf

Sonstige Anpassungen

Schweres Erbe: Modernisierung einer geerbten iOS-App

Code Modernisierung

• ARC

• Blocks

• Core Data

• NSURLCache

AUTOMATISCHE BUILDS

Schweres Erbe: Modernisierung einer geerbten iOS-App

Vorher

Schweres Erbe: Modernisierung einer geerbten iOS-App

Jenkins

Schweres Erbe: Modernisierung einer geerbten iOS-App

Distribution Builds & Deployment

iTunes Enterprise

Schweres Erbe: Modernisierung einer geerbten iOS-App

Automatisierte Tests

17 %

27 %56 %

Unit Tests Integrations Tests Automation Tests

95 %

3 %1 %

Laufzeit# Tests

Schweres Erbe: Modernisierung einer geerbten iOS-App

OCUnit

Schweres Erbe: Modernisierung einer geerbten iOS-App

UI Automation

Schweres Erbe: Modernisierung einer geerbten iOS-App

Walldisplay

DESIGN

Schweres Erbe: Modernisierung einer geerbten iOS-App

Menü v1.x

Schweres Erbe: Modernisierung einer geerbten iOS-App

Menü v2.0

Schweres Erbe: Modernisierung einer geerbten iOS-App

Suchresultate

Schweres Erbe: Modernisierung einer geerbten iOS-App

E-Mail von Apple

Schweres Erbe: Modernisierung einer geerbten iOS-App

Menü 2.1/2.2

Schweres Erbe: Modernisierung einer geerbten iOS-App

HTML Prototyp

Schweres Erbe: Modernisierung einer geerbten iOS-App

Menü 3.x

Schweres Erbe: Modernisierung einer geerbten iOS-App

Menü 3.x Demo

Schweres Erbe: Modernisierung einer geerbten iOS-App

Vier Dinge, die wir verbessert haben

Technologien AutomatischeBuilds DesignProzess

Claus Höfele <choefele@ebay.com>

Senior Web Developer / Frontend EngineerSenior Android Developer

http://jobs.ebay-kleinanzeigen.de

Recommended