Class1 Northeastern Mob App Class

Embed Size (px)

Citation preview

  • 7/29/2019 Class1 Northeastern Mob App Class

    1/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 1

    Mobile Application (Design and)Development

    Prof. Stephen [email protected]

  • 7/29/2019 Class1 Northeastern Mob App Class

    2/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 2

    Welcome!

    Goa ls of this c ourse:

    Help you lea rn about mob ile appdevelop ment and best prac tic es

    Help you lea rn about mob ile interac tiondesign and rap id p rototyping stra teg ies

    Provide you with the tools, knowledge, andexc use to c rea te a novel mobile app tha thelps solve a serious p rob lem tha t streng thensyour p rogramming portfolio

  • 7/29/2019 Class1 Northeastern Mob App Class

    3/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 3

    Who am I?

    BSE in CSE from Penn

    Ph.D. from MIT (c omputer vision)

    Home of the Future and a rc hitec ts

    Hea lth and House_n Northeastern! (Sep 2011)

    New Ph.D. Persona l Hea lth Informatics)

    Interests: mob ile hea lth, games for hea lth,mob ile and home sensing and pa tternrec ognition, UI design, AI

  • 7/29/2019 Class1 Northeastern Mob App Class

    4/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 4

    Mobile Applications

    What a re they?

    Any app lic a tion tha t runs on a mob iledevice

    Types (and evo lution)

    Web apps: run in a web b rowserHTML, Java Sc ript, Flash, server-side c omponents, etc .

    Native: compiled binaries for the deviceNot c ross-plat form, but more interesting options

    This c lass: Android phones

  • 7/29/2019 Class1 Northeastern Mob App Class

    5/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 5

    Native development environments Op tions

    Java ME .NET Compac t Framework (C++, C# , VB.NET) forWindows Mob ile

    Qua lcomms BREW (C or C++)

    Symbian (C++) Blac kBerry (Java) Android (Java) iPhone (Ob jec tive-C)

    Is having so many choic es and so muc hindustry turmoil/ c ompetition a good thing?

  • 7/29/2019 Class1 Northeastern Mob App Class

    6/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 6

    Development Environments

    Most p la tforms have a n SDK that you can

    download and build aga inst

    Every p la tform has an emula tor that you

    c an use to test your apps Most emula tors a re c onfigurab le to match

    a variety of mob ile devic es

    Various sc reen sizes, memory limita tions,tab lets, etc .

    In p rac tice, emulators quite limited

  • 7/29/2019 Class1 Northeastern Mob App Class

    7/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 7

    xCode IDE & iPhone Emulator

  • 7/29/2019 Class1 Northeastern Mob App Class

    8/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 8

    Ec lipse and Android Emulator

  • 7/29/2019 Class1 Northeastern Mob App Class

    9/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 9

    Why a spec ia l course?

    There is a growing demand for experts

    Mobile c omputing is transformative

    It s easier to learn with a group

    Mob ile app interac tion design offers

    unique c hallenges and opportunities

  • 7/29/2019 Class1 Northeastern Mob App Class

    10/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 10

    Mobile devices the good

    Always with the user

    Inc reasingly powerful devic es

    Typ ic a lly GPS c apab le

    Typ ic a lly have ac c elerometer Designed for c ommunic a tion

    2+ types of wireless c onnec tions Many apps a re free or low-c ost

  • 7/29/2019 Class1 Northeastern Mob App Class

    11/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 11

    Mobiles the not-so-good

    Limited p roc essor speed

    Limited ba ttery life

    Limited and slow network ac c ess

    Limited sc reen size Limited or awkward input

    (none grea t: soft keyboa rd , phone keyp ad , touc h sc reen, stylus, speec h)

    Inc onsistent p la tforms ac ross devic es Warning: Blac kberry thumb

  • 7/29/2019 Class1 Northeastern Mob App Class

    12/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 12

    Primary design challenges

    Short bursty interac tions

    User expec ta tions for simp lic ity

    Interruptions!

    Limited input moda lity Da ta reliab ility (and multip le p oints of desired data ac c ess)

    Stand ing out in a c rowd Aggressive opera ting systems

    In the future: sec urity/ p rivac y

  • 7/29/2019 Class1 Northeastern Mob App Class

    13/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 13

    How will the c ourse work? 7 week, intensive, immersive Android

    p rogramming experienc e. Are you ready?

    Foc us on both DESIGN and DEVELOPMENT,w ith some user testing thrown in.

    Syllabus (in p rogress) online:http:/ / ww w.cc s.neu.ed u/ home/ intille/ tea ching/ MobileAp p lic a tionDevelop ment2011Syllabus.htm

  • 7/29/2019 Class1 Northeastern Mob App Class

    14/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 14

    Project Sudoku

    Bogg le

    Something tha t helps peop le with hea lthbehavior c hange that is add ic tive,

    innova tive, and useful and uses thephones unique c apab ilities ... tha t isdesigned by you and turns hea ds

  • 7/29/2019 Class1 Northeastern Mob App Class

    15/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 15

    Projec t contest Everyone in the c lass will try/ c ritique apps

    from other tea ms

    At end of the c ourse we will vote for theTop App , a long with a sma ll group ofinvited expert judges

    Small p rize awarded and b ragg ing rights

  • 7/29/2019 Class1 Northeastern Mob App Class

    16/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 16

    More on projec t options Plug-in for the CITY p rojec t

    Innovative use of motion sensor for

    enc ourag ing physic a l ac tivity or lesssedentary behavior

    (Advanced : c ould use Woc kets)

  • 7/29/2019 Class1 Northeastern Mob App Class

    17/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 17

    Demo: CITY App http://www.dukecitystudy.org

  • 7/29/2019 Class1 Northeastern Mob App Class

    18/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 18

    Lets start thinking c reatively... Timing of delivery of ta ilored information

    important for behavior c hange

    Mob ile d evic es with rea l-time feedbac k

    c rea te novel (and enga ging?) op tions tha t can t be a c hieved without the tec hnology

    There a re some design and tec hnic a lc hallenges, but they can be overc omewith more researc h

  • 7/29/2019 Class1 Northeastern Mob App Class

    19/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 19

    Opportunity

    Big opportunities a t the intersec tion usingrea l-time, c ost-effec tive feedbac k ... Some

    killer apps yet to be built.

    Human

    ComputerInteraction

    Sensors &

    MachineLearning

    BehavioralScience

    Leverage:Consumer elect ronics

    Mobile t echnologies

    Focus:Body

    HomeWorkplaceCommunity

    Personal}

  • 7/29/2019 Class1 Northeastern Mob App Class

    20/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 20

    Engineering getting c loser... Phone sensors

    Ac c elerometer

    GPS Others...

    Wearab le sensors Woc kets

    (accelerometers) Heart ra te monito rs

    Self-report on phone

    Detect change in activity;Motivate behavior changes;

    Info at teachable moment

    healthapplications

    machinelearningalgorithms

    Physic a l ac tivity

    Ac tivity type

    Intensity Duration

    Loca tion

    Other behaviors Physiolog ic a l sta te

    Self-rep orted sta te

  • 7/29/2019 Class1 Northeastern Mob App Class

    21/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 21

    Inspiration Suppose a person visits the doc tor and the

    doc tor rec ommends more physic a lactivity

    Sc enario 1: Doc tor g ives a lec ture with suggestions

    Hands out some read ing materia l

    Sc enario 2: Person hires a (good) persona l tra iner

  • 7/29/2019 Class1 Northeastern Mob App Class

    22/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 22

    Inspiration Person wants to inc rease b risk wa lking

    Sc enario 1:

    Doc tor p rovides a pedometer At end of a day, 1500 more steps to goa l

    Sc enario 2: Doc tor p rovides just-in-time phone app

    When wa lking, no tifies 1500 more steps to goa l

    Timing of information delivery is powerful

    & c ould d ramatic a lly improve intervention

  • 7/29/2019 Class1 Northeastern Mob App Class

    23/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 23

    New opportunity Context-sensitive just-in-time c ontent

    delivery a t p oints of dec ision, behavior, orconsequence [Fogg 99]

    Exp loit the sensor-enab led mob ile d evic esand persona l c omputers peop le a re

    ac quiring for enterta inment andc ommunic a tion ... and their sensing andproc essing power

  • 7/29/2019 Class1 Northeastern Mob App Class

    24/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 24

    Strategy

    Simp le messages(points of dec ision/ beha vior/ c onseq uenc e)

    Right t ime

    Right p lac e

    Ta ilored , non-d isrup tive

    Repea ted and c onsistent

    Impac t on behavior c hange?

    Requires computational sensing

    Requires portable computing

    Requires attentionto interface design

    Requires patience(computers excellent at this)

  • 7/29/2019 Class1 Northeastern Mob App Class

    25/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 25

    Does just- in-time work?

  • 7/29/2019 Class1 Northeastern Mob App Class

    26/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 26

    Example 1: StepLively Based on operant cond itioning

    Uses positive, just-in-time reinforc ement

    Multi-level (day, week) goa l setting

    aga inst own behavior tha t is c ontinuouslyand automatic a lly measured using phonemotion sensor

    Provides p leasant aud io reinforc ers basedon c urrent behavior

  • 7/29/2019 Class1 Northeastern Mob App Class

    27/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 27

    Standard phone app(Windows Mob ile 6.x version)

  • 7/29/2019 Class1 Northeastern Mob App Class

    28/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 28

    Simple startup

  • 7/29/2019 Class1 Northeastern Mob App Class

    29/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 29

    Tutoria l

  • 7/29/2019 Class1 Northeastern Mob App Class

    30/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 30

    Tutoria l

    M bil A li i D i d D l S 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    31/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 31

    Starting motion(grad student a t 3AM!)

    M bil A li ti D i d D l t S 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    32/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 32

    Moving ... eventually get pointNo movement a t

    3AM from priortime so getahead and

    receiverreinforcement(sound + sta r)

    Goa l: say ahea d

    of the past

    Mobile Applic ation Design and Development Summer 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    33/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 33

    Fill in gaps via self report

    Mobile Applic ation Design and Development Summer 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    34/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 34

    Navigate to see goal

    Mobile Applic ation Design and Development Summer 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    35/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 35

    Day goal and week goal (then reset)

    Mobile Applic ation Design and Development Summer 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    36/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 36

    Customize reinforc ement

    Mobile Applic ation Design and Development Summer 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    37/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 37

    Example 2: Woc kets Goa l

    24/ 7 measurement of physica l ac tivity of Type

    Intensity

    Dura tion Locat ion

    For months+

    Keep c ost low so suitab le for c ohort stud ies Exp loit consumer phone tec hnolog ies

    All op en sourc e

    Mobile Applic ation Design and Development Summer 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    38/53

    Mobile Applic ation Design and Development Summer 2011

    Northeastern University 38

    Vision: population-scale

    24/ 7 Real-t ime PA detect ionand cont ext -sensit ive self

    repor t w it h sensors (GPS, phone)

    Data sentt o server f oranalysis & remot eadministration Years

    I deas tomakeflexible &

    personallyvaluable& engaging

    Part icipant has flexibilit yin how t o wear/ use

    sensors

    App Store

    New surveys/ interventions

    remot ely loaded &administered; remot e soft w areupdates w / new capabil i t ies

    Real-t ime f eedback toencourage compliance

    Mobile Applic ation Design and Development Summer 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    39/53

    ob e pp c at o es g a d e e op e t Su e 0

    Northeastern University 39

    Woc ket kit (+ phone)Charge 2

    Wear 2 for 24h

    Upper + lower

    body motion

    Mobile Applic ation Design and Development Summer 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    40/53

    pp g p

    Northeastern University 40

    Thin for c ontinuous wearability

    Actigraph Wocket

    Mobile Applic ation Design and Development Summer 2011Production & sizing

  • 7/29/2019 Class1 Northeastern Mob App Class

    41/53

    pp g p

    Northeastern University 41

    Production&sizing

    WRISTANDANKLEBANDDESIGN

    POCKETBAGDESIGN

    Usability c ritic al

    Mobile Applic ation Design and Development Summer 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    42/53

    Northeastern University 42

    Ac

    Mobile Applic ation Design and Development Summer 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    43/53

    Northeastern University 43

    Continuous data c ollec tion 2 sensors wearing , 2 c ha rg ing

    Summary da ta sent hourly to server

    Plug p hone nightly (up loads raw da ta)

    Woc kets last 42+ hours, phone waking day Phone d etec ts da ta qua lity & missingness

    in rea l time and p rovides feedbac k to

    enc ourage study c ompliance

    Mobile Applic ation Design and Development Summer 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    44/53

    Northeastern University 44

    Robustness

    Note : Ac tivities manua lly labeled ...

    Working on rea l-time detec tion of some ac tivity types andc ontext (posture, ambula tion, struc ture exerc ise, etc .)

    Mobile Applic ation Design and Development Summer 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    45/53

    Northeastern University 45

    Robustness

    Mobile Applic ation Design and Development Summer 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    46/53

    Northeastern University 46

    Robustness

    Mobile Applic ation Design and Development Summer 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    47/53

    Northeastern University 47

    Robustness

    Mobile Applic ation Design and Development Summer 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    48/53

    Northeastern University 48

    Robustness

    Mobile Applic ation Design and Development Summer 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    49/53

    Northeastern University 49

    Robustness

    Mobile Applic ation Design and Development Summer 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    50/53

    Northeastern University 50

    Robustness

    Mobile Applic ation Design and Development Summer 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    51/53

    Northeastern University 51

    Mobile Applic ation Design and Development Summer 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    52/53

    Northeastern University 52

    Mobile Applic ation Design and Development Summer 2011

  • 7/29/2019 Class1 Northeastern Mob App Class

    53/53

    Northeastern University 53

    Status Both projec ts went through itera tive

    design; about to be dep loyed inva lida tion stud ies

    Pilot testing began with researc h tea msand friend lies

    Identified many c ha llenges an in b oth c asesmade ma jor design c hanges

    Next: 7 of the c ha llenges and imp lic a tions