Challenges of a mobile application developer

Post on 16-Apr-2017

376 views 0 download

Transcript of Challenges of a mobile application developer

challenges of amobile application developer

who is this guy?

williamsrz@outlook.com / @WilliamSRodz28bytes.com.br / williamsrz.com.br

http://bit.ly/DotNetCuritiba

get involved

"Mobile ALM is emerging as a discipline separate from ALM, because mobile applications pose unique challenges for software

professionals at each stage of the lifecycle."

mobile ALM

UX, multiples platform, local

caching…

RESTFul API, Multi client, authentication, push, data storage…

mobile project anatomy

#1 platform fragmentation

platform fragmentation

24,093 distinct Android devices, up 28% from

2014

• 9 OS Version; • 39 languages; • 6 screen configurations; • 15 manufactures; • 27 screen sizes;

Sundar Pichai

platform fragmentation

• 6 OS Version; • 20 devices; • 20 languages; • 6 screen sizes;

Tim Cook

platform fragmentation

complexity++

complexity++

#2 user experience

user experience

"mobile is not just another screen"

user experience

"Mobile != Web”

#3 project lifecycle

mobile app project lifecycle

1

idea

2 3

mobile app project lifecycle

wireframe

backlog

mobile app project lifecycle

4

development• Multiple code bases;

• Thousands of Windows, iOS and Android APIs;

• Emulator;

• Backend integrations;

• UX animations;

• Third party libraries;

• Memory, CPU and networks;

• Tab, Scroll, Swipe, Pinch, Multifinger, Text Entry, Rotation, etc..

• Language, Currency,

5

mobile app project lifecycle

really?

6

mobile app project lifecycle

#4 distribution

client distribution

client distribution

#5 quality

quality challenges

Companies must test on 134 devices to get to

75% U.S. market coverage.

• Device fragmentation;

• App complexity;

• Fast release cycles;

• Short sessions;

quality challenges

one year circles

how to overcome those challenges?

challenges•platform fragmentation; •user experience; •project lifecycle; •distribution; •quality;

ensure that your app works

"forget what you can't change, and work

on… "

challenges•platform fragmentation; •user experience; •project lifecycle; •distribution; •quality;

user experience

https://balsamiq.com

wireframe

https://moqups.com

wireframe

http://justinmind.com

prototyping

https://sketchapp.com

prototyping

project lifecycle

must have

http://appium.io/

automation

http://hockeyapp.net

distribution, automation, analytics, crash reports, feedback…

https://genymotion.com

emulate

http://fsharp.github.io/FAKE/

build automation

https://buildozer.io

build automation

https://circleci.com/mobile

build automation

https://parse.com

push, analytics, background jobs…

https://azure.microsoft.com/en-us/services/app-service/

api, push, continuous integration…

http://www.microsoft.com/en-us/server-cloud/products/microsoft-intune/

device & app management

http://www.air-watch.com

device & app management

quality

https://try.crashlytics.com/

crash reporting, beta distribution, mobile analytics

https://raygun.io

crash reporting

http://google.com/analytics/mobile/

analytics, reporting…

thank you :)

williamsrz@outlook.com / @WilliamSRodz28bytes.com.br / williamsrz.com.br

http://bit.ly/DotNetCuritiba

get involved