
ENCOURAGING DEVELOPMENT OF MOBILE APPLICATIONS AS A SERVICE TO THE COMMUNITY A Thesis presented to the Faculty of California Polytechnic State University, San Luis Obispo In Partial Fulfillment of the Requirements for the Degree Master of Science in Computer Science by Vanessa Forney November 2016 c 2016 Vanessa Forney ALL RIGHTS RESERVED ii COMMITTEE MEMBERSHIP TITLE: Encouraging Development of Mobile Ap- plications as a Service to the Community AUTHOR: Vanessa Forney DATE SUBMITTED: November 2016 COMMITTEE CHAIR: Chris Lupo, Ph.D. Professor of Computer Science COMMITTEE MEMBER: John Bellardo, Ph.D. Professor of Computer Science COMMITTEE MEMBER: David Janzen, Ph.D. Professor of Computer Science iii ABSTRACT Encouraging Development of Mobile Applications as a Service to the Community Vanessa Forney The convenience of mobile applications combined with the efficiency and effectiveness provided by technology has contributed to an increased interest in mobile applications. Local groups and non-profit organizations often utilize outdated, manual processes and don't have the resources or time to look into improving these systems. For Cal Poly students and other members of the community, this means there is an opportu- nity to apply technical skills and school projects to address these inefficiencies. This work explores whether a better system can be developed to provide the functionality of the existing system and enhance the experience of users through technology, data tracking, and automation. Two apps demonstrate the application of technology to meet needs within the San Luis Obispo community: Poly Rides is an iOS and Android application that improves ridesharing for Cal Poly students. The idea stemmed from the Cal Poly Rideshare Facebook page, where the posting format for a ride is inconsistent, making it difficult to find a ride match. The Poly Rides app provides an improved user interface for posting, searching, and coordinating rides with other students. Its success has been validated through the popularity of the app. There were 3734 installations and 7925 messages sent as of May 27, 2016. Woods is an iOS application for iPhone, iPad, and Apple Watch that improves the care tracking process for dogs at Woods Humane Society. The previous technique involved updating a whiteboard to manage the information and care for the avail- able dogs. The whiteboard had inconsistent and limited information, was often out of date, and did not have room to list all of the dogs. An app was created which automatically pulls the dogs from the shelter database, provides more detailed in- iv formation and instructions, and is available for volunteers on their personal devices. The results revealed a much larger and more positive impact than originally antici- pated; volunteers reported feeling more confident providing appropriate care to the dog (65.9%) and that they have more trust in the dogs' information (52.3%). Of staff and volunteers, 83.9% prefer the app over the whiteboard and 10.7% have no preference. Dog breed, size, age, and photo, details not available on the whiteboard, were reported to be \Very" or \Extremely" important by 56.8% of volunteers. This thesis describes some important requirements for developing community ser- vice mobile applications, offers suggestions for facilitating the development of a high quality product, and lists some useful resources for iOS development. Both apps not only reach their goal of improving a manual process in the local community, but also have the potential to improve and impact other communities around the world. v ACKNOWLEDGMENTS Thank you for everyone who has supported my journey in Computer Science, with special thanks to: • Myra Lukens and Michael Wong for helping with the Poly Rides app. • Carson Carroll and Vivian Fong for helping with the Woods app. • Zoe Wood for sparking my love of Computer Science. • John Bellardo for teaching me iOS and for guidance, kindness, and support. • Chris Lupo for never giving up on me and allowing me to follow my passions. • My dog, Scruff, for making me smile every day. • My mom for endless encouragement and for being my rock. • My sister, Christina Forney, because without her I would not have tried Com- puter Science at all. vi TABLE OF CONTENTS Page LIST OF TABLES . xi LIST OF FIGURES . xii CHAPTER 1 Introduction . .1 1.1 Motivation . .1 1.2 Mobile Applications . .2 1.3 Contribution . .2 2 Background . .4 2.1 Swift . .4 2.1.1 Constants . .4 2.1.2 Enumerations . .5 2.1.3 Arrays . .5 2.1.4 Protocols . .6 2.1.5 Extensions . .6 2.1.6 Xcode . .7 2.2 Tools . .8 2.2.1 Libraries . .9 2.2.2 Resources . .9 2.3 Platforms . 11 2.4 Backends . 11 2.4.1 Parse . 12 2.4.2 Firebase . 12 3 Requirements . 14 3.1 Identifying a Need . 14 3.2 Defining a Solution . 15 3.3 Selecting a Platform . 17 3.4 User Experience . 17 3.5 Moving to Production . 18 vii 3.6 Maintenance . 19 4 Poly Rides . 20 4.1 Introduction . 20 4.1.1 Motivation . 20 4.1.2 Context . 21 4.1.3 Contribution . 22 4.2 Background . 23 4.2.1 Commuting . 23 4.2.2 Taxi Services . 23 4.2.3 Long Distance . 23 4.3 Related Work . 24 4.3.1 Overview . 24 4.3.2 Volt . 26 4.3.3 BlaBlaCar . 29 4.3.4 Zimride . 32 4.3.5 Tripda . 33 4.3.6 Uber and Lyft . 33 4.4 Requirements . 34 4.5 Design . 35 4.5.1 Definitions . 35 4.5.2 User Experience . 35 4.6 Workflows . 36 4.6.1 Adding a Ride . 37 4.6.2 Removing a Ride . 38 4.6.3 Searching for a Ride . 38 4.6.4 Requesting a Ride . 39 4.7 Implementation . 39 4.7.1 Model . 39 4.7.2 Autocomplete . 40 4.7.3 Ride Search Algorithm . 41 4.7.4 Backend . 42 4.7.5 Messaging . 43 viii 4.7.6 Facebook Integration . 43 4.8 Testing and Validation . 43 4.8.1 Survey . 43 4.8.2 Results . 44 4.8.3 Analysis . 46 4.9 Conclusions . 46 4.9.1 Requirements . 47 4.9.2 Discussion . 47 4.10 Future Work . 50 4.10.1 Ratings . 50 4.10.2 Verifications . 50 4.10.3 Poly Rides 2.0 . 51 5 Woods...................................... 53 5.1 Introduction . 53 5.1.1 Motivation . 53 5.1.2 Context . 56 5.1.3 Contribution . 57 5.2 Background . 58 5.2.1 Pods . 58 5.2.2 Pet Finder . 59 5.2.3 Length of Stay . 59 5.3 Related Work . 59 5.3.1 Overview . 60 5.3.2 Shelter Buddy . 61 5.3.3 Volgistics . 61 5.3.4 Chameleon . 62 5.4 Requirements . 62 5.5 Design . 64 5.5.1 Definitions . 64 5.5.2 User Experience . 64 5.6 Workflows . ..
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages130 Page
-
File Size-