three “tall” tails - goto conferencegotocon.com/dl/jaoo-melbourne-2011/slides/kevin-o... ·...

Post on 20-Jun-2020

1 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Three “Tall” TailsYOW 2011

Three stories from mobile software delivery.

Friday, 2 December 11

Who Am I?Friday, 2 December 11

The Tails

Friday, 2 December 11

a story about a card wall hack

Friday, 2 December 11

a story about getting to right via wrong

Friday, 2 December 11

a story about application testing

Friday, 2 December 11

The Card Wall Hack

Friday, 2 December 11

Lonely Planet was an early iOS adopter

Friday, 2 December 11

Seventy plus “City Guides” based on their

book offerings

Friday, 2 December 11

Created for iOS 2

Friday, 2 December 11

“Upgraded” to iOS 3

Friday, 2 December 11

From the App store

Friday, 2 December 11

• “I don’t think this app has been properly tested before it was released …”

• “The new version crashed to the iPhone desktop every time I use it …”

• “… I love Lonely Planet but this is a poor half-baked (and that’s being generous) release …”

Friday, 2 December 11

The “Platform” wasn’t progressing

Friday, 2 December 11

New features where difficult to add

Friday, 2 December 11

Most of the effort was going into “fixing” stuff

Friday, 2 December 11

Product schedules are compromised by technical fragility

Friday, 2 December 11

Card wall has degenerated into a

mess of things to do

Friday, 2 December 11

But

Friday, 2 December 11

There’s a reluctance to discard the current

code base

Friday, 2 December 11

Activity equated with progress

Friday, 2 December 11

An Opportunity

Friday, 2 December 11

A new light weight product

Friday, 2 December 11

A focused producer(now with four square)

Friday, 2 December 11

A great UX/UI designer(now the rea group)

Friday, 2 December 11

The Christmas Break

Friday, 2 December 11

Quick Inception

Friday, 2 December 11

New card wall layout

Friday, 2 December 11

A public and visual progress report

Friday, 2 December 11

The crux of the Hack

Friday, 2 December 11

Use card colours to distinguish types of

activity

Friday, 2 December 11

Duh!

Friday, 2 December 11

At the end of the iteration stack the

cards up

Friday, 2 December 11

Pretty simple huh

Friday, 2 December 11

The result

Friday, 2 December 11

Inception to submission in three weeks

Friday, 2 December 11

A card wall telling a story

Friday, 2 December 11

An opportunity to apply the same

techniques to the existing products

Friday, 2 December 11

Friday, 2 December 11

A wall that told a story

Friday, 2 December 11

Friday, 2 December 11

Made it apparent that we weren’t going

forward

Friday, 2 December 11

The decision was made to “re-platform”

Friday, 2 December 11

FromFriday, 2 December 11

ToFriday, 2 December 11

BobFriday, 2 December 11

Right via Wrong

Friday, 2 December 11

From concept toFriday, 2 December 11

Greenfield's Delivery

Friday, 2 December 11

New Team

Friday, 2 December 11

An organisations first step into native mobile

Friday, 2 December 11

High Expectations

Friday, 2 December 11

Large team

Friday, 2 December 11

Only one with commercial iOS

experience

Friday, 2 December 11

Only two had commercial c experience

Friday, 2 December 11

Native mobile is not the mobile web

Friday, 2 December 11

Almost three months in

Friday, 2 December 11

The product is sketchy

Friday, 2 December 11

Progress is unpredictable

Friday, 2 December 11

Unknown unknowns are killing us

Friday, 2 December 11

We (I) screwed up

Friday, 2 December 11

The project was cancelled

Friday, 2 December 11

It was the best thing that could have

happened

Friday, 2 December 11

Agile in practice

Friday, 2 December 11

… but boy did it sting

Friday, 2 December 11

Regrouped& re-imagined

Friday, 2 December 11

Halved the team size

Friday, 2 December 11

New producer

Friday, 2 December 11

Doubled productivity

Friday, 2 December 11

Increased focus& commitment

Friday, 2 December 11

Friday, 2 December 11

Nine weeks from inception to submission

Friday, 2 December 11

Rejected

Friday, 2 December 11

We appealed

Friday, 2 December 11

Including appeal time it took a month from

submission to release

Friday, 2 December 11

Android

Friday, 2 December 11

Two external parties approached

Friday, 2 December 11

Both estimated the same delivery time

Friday, 2 December 11

Three weeks …

Friday, 2 December 11

Four months later

Friday, 2 December 11

Friday, 2 December 11

All experienced java mobile developers

Friday, 2 December 11

Majority of the development done in

China

Friday, 2 December 11

Completed here with the offshore team

Friday, 2 December 11

You can’t just port

Friday, 2 December 11

The UI/UX paradigms are often different

Friday, 2 December 11

And must be respected

Friday, 2 December 11

Fragmented device market results in …

Friday, 2 December 11

Increased testing load

Friday, 2 December 11

Interesting performance issues

Friday, 2 December 11

iOS 1.3

Friday, 2 December 11

Bookmarking + ?

Friday, 2 December 11

Third party code integration

Friday, 2 December 11

Shelved waiting on third party

Friday, 2 December 11

Eventually released without third party

components

Friday, 2 December 11

We broke it

Friday, 2 December 11

Active error monitoring alerted us

within minutes of store launch

Friday, 2 December 11

Our only x.x.x release

Friday, 2 December 11

12 hours for new version to appear in the

store

Friday, 2 December 11

iPad

Friday, 2 December 11

Eight week schedule

Friday, 2 December 11

Problems with unanticipated scope

Friday, 2 December 11

Problems with defects

Friday, 2 December 11

Five weeks in and very little is production

quality

Friday, 2 December 11

Stop!

Friday, 2 December 11

Changed the team structure

Friday, 2 December 11

Reduced from six to three developers

Friday, 2 December 11

Moved two developers to create automated

test tooling

Friday, 2 December 11

Moved two to another project

Friday, 2 December 11

Added a developer experienced with the platform & domain

(me)

Friday, 2 December 11

Friday, 2 December 11

Testing iOS applications

Friday, 2 December 11

iOS testing is comparatively primative

Friday, 2 December 11

Unit tests only effectively cover a small

portion of the application

Friday, 2 December 11

but they are effective

Friday, 2 December 11

what matters?

Friday, 2 December 11

imho

Friday, 2 December 11

we want to test what’s on screen

Friday, 2 December 11

we want to test on device

Friday, 2 December 11

we want a report that hi-lights issues

Friday, 2 December 11

Some choices

Friday, 2 December 11

Frankthe grandaddy

Friday, 2 December 11

KIFthe “hot” new kid

Friday, 2 December 11

UIAutomationthe child no-one talks

about

Friday, 2 December 11

Frank

Friday, 2 December 11

Cucumber for iOS

Friday, 2 December 11

… but it’s fragile

Friday, 2 December 11

KIF

Friday, 2 December 11

built on accessibility API’s

Friday, 2 December 11

… but it’s written in objective-c

Friday, 2 December 11

UIAutomation

Friday, 2 December 11

Integrated within instuments

Friday, 2 December 11

… but it’s verbose

Friday, 2 December 11

… difficult to run in CI

Friday, 2 December 11

… not designed for TFD

Friday, 2 December 11

… but it runs on device

Friday, 2 December 11

and that’s key

Friday, 2 December 11

Zucchini

Friday, 2 December 11

Friday, 2 December 11

Zucchini ain’t Cucumber

Friday, 2 December 11

Wrapper around UIAutomation

Friday, 2 December 11

designed for developers and testers

Friday, 2 December 11

Runs in CI

Friday, 2 December 11

tests are written in coffeescript

Friday, 2 December 11

with a little DSL loven’Friday, 2 December 11

screens Friday, 2 December 11

anchor Friday, 2 December 11

define elements Friday, 2 December 11

define actions Friday, 2 December 11

zucchini run <feature>

Friday, 2 December 11

generates javascriptFriday, 2 December 11

runs instruments

Friday, 2 December 11

checks images

Friday, 2 December 11

generates reportsFriday, 2 December 11

bloody awesome

Friday, 2 December 11

RejeshVasily

Friday, 2 December 11

PlayUp will be releasing zucchini via github later

this month

Friday, 2 December 11

Wrapping it up

Friday, 2 December 11

We’ve seen how important visualisations

are to effective agile processes

Friday, 2 December 11

We’ve walked the path of a product to multi-

platform release

Friday, 2 December 11

We’ve looked at application testing in

iOS

Friday, 2 December 11

Questions?Twitter: @kevinoneill

#yow_oz#zucchini

Friday, 2 December 11

top related