design considerations and best practices for mobile applications david e. figley, jr programmer, c2...

23
Design Considerations and Best Practices for Mobile Applications David E. Figley, Jr Programmer, C2 Technologies, Inc.

Upload: shanon-murphy

Post on 24-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Design Considerationsand Best Practices

for Mobile ApplicationsDavid E. Figley, Jr

Programmer, C2 Technologies, Inc.

Patriot Missile System Training Apps

• Connecting Soldiers to Digital Applications

• Deployed on iPhone 4 and desktop web browsers

• Runs on iPad 2, new iPad, select Android devices

• Developed in Unity

Design Considerations

Considerations

• Platform (iOS, Android, Blackberry OS, etc)• Different development environments• Device diversity

• Device Limitations• Memory and storage• Accelerometer, gyroscope, camera, multitouch

Considerations (cont.)

• Target Audience• ‘App’titude• Accessibility, 508 Compliance

• Deployed Environment• Network availability• Device management / updates

Platforms

• Predictable hardware configurations

• Relatively few resolutions and aspect ratios: (480x320, 960x640, 1024x768, 2048x1536)

• Closed platform

Ios Resolutions

• Diverse hardware (CPU, GPU, memory, storage)

• Numerous device resolutions and aspect ratios: (240x300, 320x240, 320x480, 360x640, 480x640, 480x800, 480x854, 540x960, 640x960, 800x400, 800x600, 1024x600, 1024x768, 1280x720, 1280x800)

• Disparate UI experiences & limitations

Android Resolutions

Audience

Considering The User

• ‘App’titude• Gamer’s instincts• “Hold my hand”• Feedback fallbacks

Deployment

• Network availability

• Updates

• Device management

• Testing

Best Practices

Development Approach

• Core Framework• Base classes (UI screen, controlled obj, utils)• Interaction behaviors (character controls)• Content management (Scenarios, activities)

• Bundled assets• Externalized content

Framework

• Modular design• Reusable chunks• Encapsulated behaviors (independent code)• Objects inherit attributes• Applies to graphical assets

Framework (cont)

• Interactive elements• Character controls (joystick, touchpad, hybrid)

• Touches and collisions• Camera controls (followers, look at objects)

• Create realistic models, figuratively and literally• Open-ended, immersive environments

Framework (cont)

• Content Management• Scenarios• Activities• Steps

Asset Workflow

• Bundled assets• Core framework separate from scenes• Load as needed, reduce load times• Scalability• Reusability

Asset Workflow (Cont)

• Future-proofing for new devices• Scaling assets• Levels of detail• Working in percentages, not pixels

• Polygons vs. Textures

Content

• Externalized, editable, extensible• Runtime content building and testing

• Push & pull content from a database• Create an activity and test without rebuilding• Eliminate guesswork

Thank you