Mobile App Development: The Use of Apache Cordova to Construct Features for iOS and Android Applications

132341-Thumbnail Image.png
Description
Mobile app development has been the fastest growing software development since the release of the iPhone in 2007 and the creation of the App Store in 2008. After the rise in popularity of the smartphone and mobile app development, businesses

Mobile app development has been the fastest growing software development since the release of the iPhone in 2007 and the creation of the App Store in 2008. After the rise in popularity of the smartphone and mobile app development, businesses started to shift from browser-based software to mobile platforms. There are multiple reasons that any company would want to reach out in the mobile environment, including attracting new customers, creating a better experience, expanding their brand, being more accessible, and overall growth. Developers started to build new platforms that would make it easy for not only their own company but anyone else to develop new applications at a faster pace. Today there are three different ways to create a mobile application: a native app, a hybrid app, and a web app. At DriveTime, we spent time researching and developing possible options for how we could make a mobile application to expand our user involvement. Our conclusion was to use a hybrid application that would incorporate our already existing web app and relaunch it as a native app. I took over this project for DriveTime and planned to implement two new features for their mobile application. Using Apache Cordova, I dived into the Software Development Life Cycle to create and deploy a Rate and Review feature and Push Notification functionality. In the end, I was only able to implement the Rate and Review feature due to some unexpected delays in development. I assumed all roles of a standard Agile development team to understand all of the different aspects that go into planning, creating, and publishing software.
Date Created
2019-05
Agent

A List-based App Launcher Tweak for Jailbroken iOS Devices

132364-Thumbnail Image.png
Description
Finding applications on Apple’s iOS device Home screen is a difficult task since applications are arranged in a disorganized grid of icons and small labels. By “jailbreaking” an iOS device, it is possible to install third party “tweaks” that modify

Finding applications on Apple’s iOS device Home screen is a difficult task since applications are arranged in a disorganized grid of icons and small labels. By “jailbreaking” an iOS device, it is possible to install third party “tweaks” that modify the operating system to customize and fix annoying aspects of iOS. Current jailbreak tweaks exist that can launch applications differently than Apple’s stock Home screen, but they leave much to be desired in terms of functionality, usability, and aesthetics. HomeList is a watchOS-inspired tweak I created to add an easy to read, quick to navigate, and visually appealing list of applications integrated directly into the Home screen. Research into Apple’s private iOS frameworks was used to figure out how to perform tasks required by an app launcher as well as match iOS design aesthetics.
Date Created
2019-05
Agent

Task Organizer Platform for Class and Group Collaboration

132426-Thumbnail Image.png
Description
There exist many very effective calendar platforms out there, from Google Calendar, to Microsoft’s Outlook, and various implementations by other service providers. While all those services serve their purpose, they may be missing in the capacity to be easily portable

There exist many very effective calendar platforms out there, from Google Calendar, to Microsoft’s Outlook, and various implementations by other service providers. While all those services serve their purpose, they may be missing in the capacity to be easily portable for some, or the capacity to offer to the user a ranking of their various events and tasks in order of priority. This is that, while some of these services do offer reliable support for portability on smaller devices, it could be even more beneficial to the user to constantly have an idea of which calendar entry they should prioritize at a given point in time, based on the necessities of each entry and regardless of which entry occurs first on a chronologic line. Many of these capacities are missing in the technology currently used at ASU for course management. This project attempts to address this issue by providing a Software Application that offers to store a user’s calendar events and present those events back to the user after arranging them by order of priority. The project makes use of technologies such as Fibrease, Angular and Android to make the service available through a web browser as well as an Android mobile client. We explore possible avenues of implementations to make the services of this platform accessible and usable through other existing platforms such as Blackboard or Canvas. We also consider ways to incorporate this software into the already existing workflow of other web platforms such as Google Calendar, Blackboard or Canvas, by allowing one platform to be aware of any item creation or update from the other platform, and thus removing the necessity of creating one calendar entry multiple times in different platforms.
Date Created
2019-05
Agent

Alexa Discussion Board Skill

132901-Thumbnail Image.png
Description
A common challenge faced by students is that they often have questions about course material that they cannot ask during lecture time. There are many ways for students to have these questions answered, such as office hours and online discussion

A common challenge faced by students is that they often have questions about course material that they cannot ask during lecture time. There are many ways for students to have these questions answered, such as office hours and online discussion boards. However, office hours may be at inconvenient times or locations, and online discussion boards are difficult to navigate and may be inactive. The purpose of this project was to create an Alexa skill that allows users to ask their Alexa-equipped device a question concerning their course material and to receive an answer retrieved from discussion board data. User questions are mapped to discussion board posts by use of the cosine similarity algorithm. In this algorithm, posts from the discussion board and the user’s question are converted into mathematical vectors, with each term in the vector corresponding to a word. The values of these terms are computed based on the word’s frequency within the vector’s corresponding document, the frequency of that word within all the documents, and the length of the document. After the question and candidate posts are converted into vectors, the algorithm determines the post most similar to the user’s question by computing the angle between the vectors. With the most similar discussion board post determined, the user receives the replies to the post, if any, as their answer. Users are able to indicate to their Alexa device whether they were satisfied by the answer, and if they were unsatisfied then they are given the opportunity to either rephrase their question or to have the question sent to a database of unanswered questions. The professor can view and answer the questions in this database on a website hosted by use of Amazon’s Simple Storage Service. The Alexa skill does well at answering questions that have already been asked in the discussion board. However, the skill depends heavily on the user’s word choice. Two questions that are semantically identical but different in phrasing are often given different answers. This is because the cosine algorithm measures similarity on the basis of word overlap, not semantic meaning, and thus the application never truly “understands” what type of answer the user desires. Improving the performance of this Alexa skill will require a more advanced question answering algorithm, but the limitations of Amazon Web Services as a development platform make implementing such an algorithm difficult. Nevertheless, this project has created the basis of a question answering Alexa skill by demonstrating a feasible way that the resources offered by Amazon can be utilized in order to build such an application.
Date Created
2019-05
Agent

Developing an iOS Application to Guide Users Around Flooded Areas in Charleston, SC

132922-Thumbnail Image.png
Description
Charleston, South Carolina currently faces serious annual flooding issues due to tides and rainfall. These issues are expected to get significantly worse within the next few decades reaching a projected 180 days a year of flooding by 2045 (Carter et

Charleston, South Carolina currently faces serious annual flooding issues due to tides and rainfall. These issues are expected to get significantly worse within the next few decades reaching a projected 180 days a year of flooding by 2045 (Carter et al., 2018). Several permanent solutions are in progress by the City of Charleston. However, these solutions are years away at minimum and faced with development issues. This thesis attempts to treat some of the symptoms of flooding, such as navigation, by creating an iPhone application which predicts flooding and helps people navigate around it safely. Specifically, this thesis will take into account rainfall and tide levels to display to users actively flooded areas of downtown Charleston and provide routing to a destination from a user’s location around these flooded areas whenever possible.
Date Created
2019-05
Agent

CDA: Career Development Application

133216-Thumbnail Image.png
Description
CDA - short for "Career Development Application" - is an iOS application that aims to help students who may not have inside connections on Wall Street break into the notoriously hard-to-enter investment banking industry. The application does this by asking

CDA - short for "Career Development Application" - is an iOS application that aims to help students who may not have inside connections on Wall Street break into the notoriously hard-to-enter investment banking industry. The application does this by asking the user a few questions about his or her characteristics, classifying him or her into different categories based on his or her response, then tailoring the information displayed to him or her based on his or her classifications. The information, compiled by my thesis partner, is stored in a cloud-based database system to facilitate easy content updates without having to recompile and resubmit the application to the App Store. Because the application shows information to its users based on certain characteristics of the users, such as grade level, previous experience in the industry, and the geographical region and prestigiousness of the school he or she attends, the application is more useful than simply showing the same information to every student regardless of his or her circumstances. While the current application presents useful information in a compact, easy-to-use format, there are still many improvements that could be made. The application could be more sensitive to minor mistakes made by the user trying to answer the classification questions, and it could present information in an even easier-to-use format. Still, the application as it stands could be extremely useful for helping students who are not the traditional "Wall Street types" to enter the competitive, prestigious investment banking industry.
Date Created
2018-05
Agent

CDA: Career Development Application

133240-Thumbnail Image.png
Description
CDA is a mobile application that helps students, specifically those without a mentor, break into the competitive investment banking industry. Investment banking is arguably one of the most competitive industries to break into because it is widely viewed as the

CDA is a mobile application that helps students, specifically those without a mentor, break into the competitive investment banking industry. Investment banking is arguably one of the most competitive industries to break into because it is widely viewed as the premier finance career available out of undergraduate school. The industry is unique in the sense that there are many unwritten rules on how to break into the industry. The large investment banks receive tens of thousands of applications every year, but only an extremely small percentage of those applications are viewed. This is a problem for a majority of students, who believe that simply having a high GPA and a passion for finance and submitting an application is adequate to get into investment banking. Many students who successfully make it into the industry are provided with programs and mentors to teach them everything necessary to do so, but I have noticed that there are many other qualified students that are not given these resources and are, accordingly, not as successful getting into the industry. This application is designed to provide some of the custom mentorship advice necessary to get into investment banking. I will approach this project as a business venture and will develop methods to monetize the services this program provides.
Date Created
2018-05
Agent

AhriBot: A Python Bot Written for Discord Tasks

134113-Thumbnail Image.png
Description
Since the release of Discord in March of 2015 it has become the choice VoIP client for 25 million users, pulling in more each day from many sources including online video games with no voice chat, such as League of

Since the release of Discord in March of 2015 it has become the choice VoIP client for 25 million users, pulling in more each day from many sources including online video games with no voice chat, such as League of Legends. With such an expansive user base and many servers hosting multiple users during all times of the day, for a server admin to always be monitoring users is unreasonable. AhriBot aims to solve this problem by providing general administration through a command system to a server while it is logged onto that server. Specifically, AhriBot will be tailored for use on servers where League of Legends is primarily being played. Using commands issued to AhriBot, users can get statistics about their current game. By providing a set of features for general users, and a more specific set of features for League of Legends, AhriBot provides a greater experience and will help players to have quicker access to information about the game without having to travel to multiple outside sources.
Date Created
2017-12
Agent

Clippr: A Stylist First Approach

134144-Thumbnail Image.png
Description
The main objective of this thesis is to describe and analyze Clippr, an ASU startup founded by four students: Adam Lynch, Eric Gottfried, Ty Sivley, and Thomas Carpaneto. This paper will describe the formation of Clippr as a business, analyze

The main objective of this thesis is to describe and analyze Clippr, an ASU startup founded by four students: Adam Lynch, Eric Gottfried, Ty Sivley, and Thomas Carpaneto. This paper will describe the formation of Clippr as a business, analyze the work and reasoning for dissolving the business, and suggest three pivots that could increase the chances of success for the future of Clippr. These three pivots are: mini salons, a concierge service, and an online resource. The idea for Clippr came from Sam, the team's friend's experience within the cosmetology industry. Sam graduated from cosmetology school in Phoenix and started his career as an assistant, which is the most common entry level position within the industry. Assistants do not get to work with clients and primarily do chores around the salon so he was not gaining any valuable experience. Eventually Sam found a position at a salon in Flagstaff. Unfortunately, he was not scheduled enough hours to pay his rent which forced him to travel back to Phoenix to cut his friend's and family's hair to make ends meet. Sam is not alone experiencing these issues within the industry, they are a common trend throughout the cosmetology field. It was found that there is a clear problem that affects every stylist: they struggle to reap the benefits of their self-employment. Most stylists become independent contractors where they are constrained by the salon's management. They are generally forced to work during the salon's hours of operations, promote specific products, adhere to a dress code, and forfeit their clients information. On the other hand, freelance workers outside of salons do enjoy greater freedoms within their work but with significant hurdles to overcome. They have a much harder time building a client base and face prohibitive start-up costs that make it harder to break into the industry.
Date Created
2017-12
Agent

Mobile Application for Student Productivity Awareness

135605-Thumbnail Image.png
Description
An application called "Productivity Heatmap" was created with this project with the goal of allowing users to track how productive they are over the course of a day and week, input through scheduled prompts separated by 30 minutes to 4

An application called "Productivity Heatmap" was created with this project with the goal of allowing users to track how productive they are over the course of a day and week, input through scheduled prompts separated by 30 minutes to 4 hours, depending on preference. The result is a heat map colored according to a user's productivity at particular times of each day during the week. The aim is to allow a user to have a visualization on when he or she is best able to be productive, given that every individual has different habits and life patterns. This application was made completely in Google's Android Studio environment using Java and XML, with SQLite being used for database management. The application runs on any Android device, and was designed to be a balance of providing useful information to a user while maintaining an attractive and intuitive interface. This thesis explores the creation of a functional mobile application for mass distribution, with a particular set of end users in mind, namely college students. Many challenges in the form of learning a new development environment were encountered and overcome, as explained in the report. The application created is a core functionality proof-of-concept of a much larger personal project in creating a versatile and useful mobile application for student use. The principles covered are the creation of a mobile application, meeting requirements specified by others, and investigating the interest generated by such a concept. Beyond this thesis, testing will be done, and future enhancements will be made for mass-market consumption.
Date Created
2016-05
Agent