Android Developer Guide - Cs Mwsu - Midwestern State University

linencharmMobile - Wireless

Dec 10, 2013 (3 years and 4 months ago)

62 views

Mobile Development



Presented by:

Samantha C. Tomeï


CMPS 5143

Adv. Software Engineering

Midwestern State University


October 11, 2012

Overview


Introduction


Brief overview research papers


Software Engineering Issues


Survey Results


What Makes Mobile Development Different?


Model
-
Driven Development (
MobiA

tool)


Test
-
Driven Development


Android Developer Guide


Conclusion


References


Introduction


Apple App Store opened in July 2008


Google Play


October 2008


Blackberry App World


April 2009


Nokia Store


May 2009


Windows Phone Marketplace


October 2010


1

Survey Results


Most applications were relatively small


Averaging several KLOC


One or two developers


Two main categories


Native applications


Web applications


“Best practices” were adhered to quite well


Rarely used formal development processes


Very little organized tracking of development efforts
and gathered few metrics




2

What Makes Mobile
Development Different?

Common issues:


Integration with device
hardware


Security


Performance


Reliability


Storage limitations






Additional requirements:


Interaction with other
applications


Sensor handling


Native and hybrid apps


Families of hardware
and software platforms


User interfaces


Complexity of testing


Power consumption



3

MobiA


Mobile Application (
MobiA
) modeler


Model Driven Development (MDD)


Create high
-
level, platform independent model of
the system


Generate specific code based on the model for the
target system




4

Test
-
Driven Development (TDD)


TDD


evolutionary software development technique


Reduces time wasted on debugging


Speeds up the development process


Develops more reliable software


Process:


Tests prepared by dividing the software functions into
small units


Developers generate
automated
unit tests


Otherwise tests not performed frequently enough


Software developed based on unit tests




5

Android Developer Guide











Available at http://developer.android.com

6

Android Developer Guide

7

Android Developer Guide

8

Android Developer Guide

Tip: Draw launcher icons on an 864x864
artboard

Could be need to be 96, 72, 48, or 36 pixels wide, depending on screen density

9

Android Developer Guide

10

Android Developer Guide

11

Android Developer Guide

12

Android Developer Guide

Other topics covered:


“Smoothing Out Performance”


“Multi
-
versioning Android User Interfaces”


“Ten Things Game Developers Should Know”


“Security and Privacy in Android Apps”


“So You’ve Read The Design Guide.


Now What?”


“Android Apps in Google Play”


“Building Applications That Use Web API”





13

Android Developer Guide

14

Android Developer Guide

15

Android Developer Guide

16

Android Developer Guide

17

Android Developer Guide

18

Android Developer Guide

19

Android Developer Guide

Tablet App Quality Checklist:

1)
Test for Core App Quality

2)
Optimize screen for larger layouts

3)
Take advantage of extra screen area available

4)
Use icons and other assets that are designed for tablets

5)
Adjust font sizes and touch targets for tablet screens

6)
Adjust size of home screen widgets for tablet screens

7)
Offer the app’s full feature set to tablet users

8)
Don’t require hardware features that might not be
available on tablets



20

References


Android Developer Guide <http://www.developer.android.com>


Balagtas
-
Fernandez, T. F. and H. Hussmann. "Model
-
Driven Development of Mobile
Applications."
IEEE/ACM International Conference on Automated Software
Engineering.

Washington: IEEE, 2008. 509
-
512.


Free Android Games, Apps.
<http://www.androidfree.us/2012/08/idc
-
android
-
jumps
-
to
-
681
-
global
-
market.html>


Heejin
, Kim,
Choi

Byoungji

and Yoon
Seokjin
. "Performance Testing Based on Test
-
Driven Development for Mobile Applications."
International Conference on
Ubiquitous Information Management and Communication.

New York: ACM, 2009.
612
-
617.


Joke Portal <http://www.joke
-
portal.com/cell_phone_users_iphone
-
android
-
blackberry.jpg>


Scharff
,
Christelle

and Ravi
Verma
. "SCRUM to Support Mobile Application
Development Projects in a Just
-
in
-
Time Learning Context."
ICSE Workshop on
Cooperative an Human Aspects of Software Engineering.

New York: ACM, 2012.
25
-
31.


Wasserman, Anthony I. "Software Engineering Issues for Mobile Application
Development."
Future of Software Engineering Research.

New York: ACM, 2010.
397
-
400.

21

Questions?