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

Post on 24-Dec-2015

213 views 0 download

Tags:

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