1 / 24

Mobile Development

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?

etoile
Télécharger la présentation

Mobile Development

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Mobile Development • Presented by: • Samantha C. Tomeï • CMPS 5143 • Adv. Software Engineering • Midwestern State University • October 11, 2012

  2. 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

  3. 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

  4. 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

  5. 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

  6. 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

  7. 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

  8. Android Developer Guide Available at http://developer.android.com

  9. Android Developer Guide

  10. Android Developer Guide

  11. 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

  12. Android Developer Guide

  13. Android Developer Guide

  14. Android Developer Guide

  15. 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” • …

  16. Android Developer Guide

  17. Android Developer Guide

  18. Android Developer Guide

  19. Android Developer Guide

  20. Android Developer Guide

  21. Android Developer Guide

  22. Android Developer Guide Tablet App Quality Checklist: • Test for Core App Quality • Optimize screen for larger layouts • Take advantage of extra screen area available • Use icons and other assets that are designed for tablets • Adjust font sizes and touch targets for tablet screens • Adjust size of home screen widgets for tablet screens • Offer the app’s full feature set to tablet users • Don’t require hardware features that might not be available on tablets

  23. 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, ChoiByoungji 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.

  24. Questions?

More Related