October 24, 2016 Application Development Trends Managers & Execs Can’t Ignore What are some of the most meaningful application development trends and how are they impacting how consumers use and view technology? Emily Genco Consumer behavior and technology advancement have a complex relationship. Users influence the direction of innovation, but simultaneously, available technology influences use patterns. Our team weighed in on some of the most meaningful application development trends impacting how consumers use and view technology. 1. Privacy Matters to Your Users Technologists and app creators have realized the power of big data. But, so have consumers, and they are balking. 54% of app users opted to avoid installing a mobile app when they realized how much personal information was required to run it. 30% of app users even went so far as to uninstall an app already downloaded because they discovered the amount of personal data it was collecting. Pew research has further found the concern isn’t limited to iOS or Android platform users. It’s technology agnostic. Users of both platforms are equally likely to remove or avoid a particular mobile app due to privacy concerns. Wariness over the collection of personal app data has impacted the behavior of over half of all app users. Source: http://www.pewinternet.org/2012/09/05/privacy-and-data-management-on-mobile-devices/ 19% of owners have turned off the location-tracking feature on their cell phones, according to the Pew report on “Privacy and Data Management on Mobile Devices.” How Is the Data Being Collected? According to MentorMate Lead Software Engineer Doug Reeves, when data is collected on Android devices, it can optionally be stored on the device, and it can optionally be sent to a server. If it is stored on the device, it can be kept in the preferences for the application, which is effectively a key-value store that is held in an XML file on the device. The preferences would typically be used for things like name, email and other variables where only one of them needs to exist. Data can also be stored in a SQLite database on the device. This would typically be used for list-like data, for example, a list of locations. Option 1: Send immediately. When data is sent to the server, if the data is not first stored on the device, it must be sent immediately. Most commonly, the data will be sent to a REST endpoint in JSON format, but could use any kind of network communication. Option 2: Store first. If the data is first stored on the device, then it can either be sent immediately, or it can be scheduled to be sent later. The most robust, and also hardest to implement, is storing the data on the device when it is entered, and sending it later. When implementing option 2, the developer must be sure to track what has or hasn’t been successfully sent. Should You Encrypt It? Divorced from application development trends, and as a basic build principle, highly-sensitive information should be encrypted to minimize the possibility of someone gaining access to it if stored on the device, advised Senior Software Engineer Gavin Finden. If the data needs to be transmitted to a server, it should never be sent over an insecure connection. If there is no reason to keep the data locally, it should not be stored once it’s transmitted to the server, and should only be stored in active memory, never written to long term storage. That way, as soon as the app is closed, the data is no longer retained by the app. Apps that are bound by HIPAA-compliance (for the healthcare sector) must be created especially carefully to ensure patient rights are respected. Using Data to Improve the User Experience Data can improve the user experience and save users time by applying collected information. Take user location, for example. If users choose to provide it, the app can pull the saved information and have users confirm rather than requiring them to manually enter it. Here’s a look at some of the code that may be used to optionally collect information: Writing SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE); SharedPreferences.Editor editor = sharedPref.edit(); editor.putInt(getString(R.string.saved_high_score), newHighScore); editor.commit(); Reading SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE); int defaultValue = getResources().getInteger(R.string.saved_high_score_default); long highScore = sharedPref.getInt(getString(R.string.saved_high_score), defaultValue); Understand the Effort Your Chosen Method Requires SQLite requires more code. Developers must carefully convert the data from old formats to new formats if the structure of the data changes. For example, if you are storing locations, and you start saving the name of a location with the location, the database must be properly updated so that users who are upgrading will still be able to access everything, Doug shared. Depending on the implementation, this might involve inserting a sensible default for the name of the location or handling empty locations nicely throughout the app. Is the Data Collection Necessary? When you’re conceptualizing your app, ask whether location tracking or other personal data collection is integral to your business model or app’s functionality. Documentation is key. A detailed privacy policy should be created for any app collecting personal, consumer data. If this is the intention, consider how you can work with a technology partner like MentorMate to safeguard valuable, yet sensitive, consumer data. Why Some Companies Are Choosing to Minimize Data Collection Beyond monitoring application development trends and best practices related to data, Gavin recommends businesses consider the user journey asking for sensitive information only at certain pivotal steps. A user shouldn’t need to provide payment information to simply browse a shopping app. Some businesses require an email, but most would agree that collecting a credit card number feels excessive until the user is ready to make a purchase. While this example seems simplistic, this same analysis of journey stage should drive all data collection decisions. Some information can also be marked as optional if it’s only desired for marketing purposes but not essential to the operation of an app. 2. Consumers Aren’t Afraid to Shop Prepared Consumers don’t shop in a vacuum, and they haven’t for a long time. The digital resources at their disposal make it even easier to shop around. These figures prove it. In the last 30 days, 28% of users have looked up reviews of a product while in the store to aid with their decision. While in-store, 27% also looked to see if they could find a better price elsewhere. 65% of the consumers who looked up the price of the product in the store bought the product. These statistics demonstrate a correlation between engaging with technology during purchase consideration and a user’s likelihood to buy the product. How could a mobile app strengthen this correlation while providing desired insight to consumers? Only time will tell. 3. Consumers Are Using mHealth to Manage Wellness These next few mobile app stats offer insight for startups and well-established players looking to break into the healthcare market and leverage existing consumer behavior. Over half of smartphone users have looked up medical or health information using their devices, found Pew research. 70% of adults living in the United States have tracked health information personally or for someone else. Of that group, 34% share results or notes with others. What do mobile app stats like this mean? As user-tracked mHealth data is becoming more normalized, moving beyond the category “application development trends” the healthcare industry must come to grips with how it can leverage the data and whether it can be trusted. Provider institutions may need technology to verify the accuracy of the data. Product managers and developers will need to ensure any other apps on the mobile device aren’t interfering with the collection of the data or any associated actions. The Importance of Offline Functionality Consider this: an mHealth app doesn’t just track insulin levels. Instead, it serves as a connected device communicating with a diabetic’s insulin pump. Product managers, physicians and patients alike must have utmost confidence the devices can continue to function even during a software download or other device maintenance activity. Tags MobileDevelopmentSystems ArchitectureSecurity Share Share on Facebook Share on LinkedIn Share on Twitter Share Share on Facebook Share on LinkedIn Share on Twitter Sign up for our monthly newsletter. Sign up for our monthly newsletter.