Mobile Checklist: Preparing for Building an Enterprise App Unlike fleeting consumer apps, enterprise mobile applications for a business are transformative. Forward-thinking organizations are eager to take advantage of increased mobility to empower their workforce and give them access to enterprise data. But before jumping into development, many considerations must be taken into account to be sure an enterprise is ready to deploy an app. Like any project, whether it be software development or construction, preparation is key in ensuring its success. When building a deck or patio, preparing a solid foundation will make sure the resulting structure will stand for years. In mobile development, understanding the environment within which an enterprise is working will accelerate implementation and yield a smooth deployment process. What follows is a list of items that should be considered before embarking on a mobile project. Whether the app is created in-house, or by a third party vendor, going through this checklist will prepare an enterprise for the successful development of its application. Each item is grouped into one of five steps: Audience, Data, Infrastructure, Deployment, and Support (ADIDS). White Paper Norton Lam “An enterprise needs to understand the objective of mobile visitors through current web site analytics and cater to their needs.” Audience outnumber iOS devices in the market and are making their Determine the appropriate audience policies. Windows Phone isn’t a player yet, but should be Developing use cases is a great way to develop an enterprise mobile strategy. Use cases can help a company develop personas to determine if one or multiple apps are needed. If multiple apps are needed, a roadmap can be developed to implement all the desired apps on an appropriate schedule. By focusing on the application’s utility in contrast with these personas, an enterprise will decrease cost, control scope, and improve adoption rates. Personas also define if the app(s) should be internal or external facing. Knowing whether the mobile application being developed will be targeted to internal or external customers will affect how the application will be deployed and accessed. Understanding the audience and developing the personas and use cases will help with decisions further down in this checklist. An added benefit is that stakeholders and developers will be on the same page which will speed up implementation. Understand the audience’s objective A mobile user has a completely different objective than that of a user visiting a web site on a desktop or laptop. A web site visitor is probably looking for a lot of different kinds of information while a mobile user tends to look for specific information. An enterprise needs to understand the objective of mobile visitors through current web site analytics and cater to their needs. Decide which platforms will be supported When prioritizing mobile platforms, it’s important to consider each platform’s strengths. Apple’s iOS is a popular choice because of their reputation and loyal fan base. Android devices 2 | Robust Mobile Security for the Enterprise way into the enterprise through Bring Your Own Device (BYOD) picking up market share with the release of new phones and the buzz surrounding Windows 8. And while RIM’s BlackBerry has seen its market share diminish, it is still the de facto choice for some enterprises because of its robust security. An enterprise should have an idea of which platform they want to target and possibly narrow the choice as they progress further down the checklist. Limiting the app to one platform will decrease cost, but will also decrease the likelihood of universal adoption. If multiple platforms are deemed necessary, prioritizing the order in which the apps will be developed will optimize the development process. “Limiting the app to one platform will decrease cost, but will also decrease the likelihood of universal adoption.” Determine if native apps are possible or if mobile web will be sufficient An app developed natively for a platform will bring the richest user experience and provide the best performance. Native apps should be developed whenever possible. However, they require specialized skills that can be expensive. Development also has to be performed on a platform-by-platform basis, which increases cost. Many times, developing a mobile web site using HTML5 is a good alternative. One site can generally be deployed across multiple platforms with interface tweaks for specific platforms. The tweaks, however, can consume more development time than expected if not managed correctly (see below). Budgets and the skills of available resources—for development disconnected at times (while on an airplane, for instance). and support—will play a big part in this decision. Decisions will need to be made about what data can be stored for If mobile web, narrow the devices that will access the site offline access and what data needs to be up-to-the-minute. Device While mobile web sites can be deployed to multiple platforms, enterprises will generally want to customize the user interface storage may play a part in those decisions. Even though many of today’s devices have a significant amount of storage, it is still limited. Images and videos can expose these limitations quickly. to specific platforms. Not only can screen sizes and resolutions Once the type of data that can be stored offline has been differ, but the capabilities of mobile web browsers can differ determined, securing it must be taken into account. Some devices from phone to phone. Designing and implementing a mobile can implicitly secure data local to the device, but enterprises that web application for all these device configurations can get encrypt the data themselves will get an added layer of security. out of hand quickly unless project scope is narrowed to target Many third party packages exist to implement enterprise class specific devices. security locally on the device. Data Infrastructure Determine the data that will need to be presented on the device Identify which systems the data resides on Going through the exercise of determining the audience for a Depending on the size of the enterprise, data can be divided mobile app will help to determine the data that needs to be between multitudes of systems. It’s important for an enterprise to presented to that audience. Knowing the data will determine its identify which systems hold the data needed for the mobile app so sensitivity and in turn determine the security measures needed to that access can be granted to the data. protect the data. Establish web services to access the data Determine what, if any, data needs to be accessible off-line The best way for mobile devices to access enterprise data is through web services. It doesn’t matter what technology the web services Generally, everyone is connected all the time. However, worldwide are developed in as long as they are well-defined. A well-defined Internet access is not yet available and users will find themselves interface can be used on multiple platforms and non-mobile 3 | Robust Mobile Security for the Enterprise “If developing an internal app, the data is only as secure as the weakest link. This includes the mobile devices themselves.” Deployment systems, reducing the need for repeated development and thereby lowering cost. App Stores for External Apps Secure the web services (HTTPS) Securing data while it is in-transit is easy to do using the HTTPS protocol for an enterprise’s web services. Data is encrypted before it leaves one side of the transaction and decrypted when it gets to the other side. Most IT departments are familiar with HTTPS and can set up a web server implementing the protocol with little effort. Allow for web services to be accessed outside the network if needed If the target audience needs to access the enterprise data from outside the enterprise network, the web services, and therefore the machines that house the web services, will need to be accessible from outside the internal network. Most enterprises prevent outsiders from accessing their internal network. A special machine may need to be established outside the internal network to act as an intermediary between external devices and the enterprise data within the secured corporate network. Secure the devices accessing the internal network If developing an internal app, the data is only as secure as the weakest link. This includes the mobile devices themselves. Many enterprises are adopting a BYOD policy because of the proliferation of personal devices and because it saves money. However, devices that don’t adhere to security standards are vulnerable to attack and can compromise enterprise data. Enterprises must establish security policies and implement a Mobile Device Management (MDM) system to enforce said policies. MDM software can enforce security policies in real-time as well as prevent malicious applications from being installed. They can also remote wipe data on a lost or stolen device. When developing an app targeted to external customers, the app will likely be placed on the iTunes App Store, Google Play (Android), or Blackberry App World. Each medium will require its own registration and submission fees Enterprises also must understand what assets will be needed for each deployment. Each app store requires different sized icons and screenshots. The number may vary as well. MAMs for Internal Apps Internal apps need to be restricted to the enterprise’s employees and that is not possible using the public app stores and markets. MDM systems can also handle Mobile Application Management (MAM) and deploy apps internally. If an enterprise doesn’t already have an MDM system installed, it will need to evaluate potential vendors and have one installed and ready prior to deployment. Otherwise, the enterprise will need to determine another way to deploy the app. It’s also worth noting that Apple requires enterprises to obtain an Enterprise Development license for apps deployed outside of the public iTunes app store. The enterprise license process could take several weeks to complete, so starting early is highly recommended. Support Determine who will support & maintain the app Whether developing an app in-house or through a third party, the group that supports an application is rarely the same as the group that develops it. It’s important to identify the group that will be tasked with supporting the app as it may affect the decision of 4 | Robust Mobile Security for the Enterprise whether to develop an app natively or as a mobile web app. a Mobile Device Management system, create an elite mobile app, Plan ahead for knowledge transfer and support the final product. Our end-to-end solutions have A mobile app can’t simply be dropped on someone’s desk. Knowledge transfer between the developers and support staff should begin several weeks before the development process completes. This will ensure a smooth transition and prevent the support staff from having to ask questions of the developers after the project has been handed off. helped transform hundreds of businesses. Summary All too often, enterprises jump into mobile development without taking into consideration the preparation needed to successfully deploy an application. An enterprise should think through the five major ADIDS steps prior to embarking on “Preparing for mobile development can be a daunting task. With experience in all facets of mobile – design, development, deployment, support, QA – Magenic is here to help.” Magenic’s Mobile Expertise Preparing for mobile development can be a daunting task. With experience in all facets of mobile – design, development, deployment, support, QA – Magenic is here to help. Magenic can help determine the audience, decide on a target platform, set up any enterprise mobile endeavor Each step will help to form a strong foundation upon which an application can be developed. During the development of a mobile app, all of the ADIDS steps will eventually be accomplished. Savvy businesses will perform them proactively in order to accelerate the development process while limiting the risk of project delays and unforeseen complications. The careful preparation that is built into ADIDS, helps avoid difficulties so that development of an app for employees or customers can be executed smoothly. About the Author - Norton Lam Norton Lam has been the mobile lead consultant for Magenic. He brings with him more than 20 years of experience in the software development industry and is particularly versed in Java and Android development. He holds a B.S. in Computer Science and Math from Purdue. About Magenic Founded in 1995 by the same technical minds that still run the company, Magenic focuses on the Microsoft stack and mobile application development. Visit us at magenic.com or call us at 877.277.1044 to learn more or to engage Magenic today. 5 |Robust Mobile Security for the Enterprise
© Copyright 2024