Defining the mobile application requirements

The mobile application is a software application that is developed specifically for use on small, wireless computing devices, such as smartphones or tablets. The Cúram mobile application provides the caseworker with quick and easy access to Cúram data. You must define the business requirements for your Cúram mobile application.

Before you begin defining the mobile application requirements, you must decide what format is best suited for your project. Mobile applications are categorized according to whether they are web-based or native applications, which are created specifically for a given platform. A third category, hybrid applications, combine elements of both native and web-based applications.

Native applications, web-based applications, and hybrid applications are all ways to meet the needs of the mobile user. There is no unique best solution: each type has strengths and weaknesses. The choice of one versus the other depends on the organization's project requirements. Table 1 provides a list of some of the strengths and weaknesses for each mobile application type.
Table 1. Mobile Application Types
Mobile Application Type Strengths Weaknesses
Native application
  • Access to all the device-specific features, including GPS, camera, gestures, and notifications.
  • Can be used without an internet connection.
  • Provides a full experience to the user on their iOS or Android smartphone.
  • Most responsive option that is key to usability.
  • As native applications are platform-specific and written in the platform's native language, they can be fully optimized for the platform making them more efficient.
  • Higher development costs. Building a native application requires more specialized talent. Developers not familiar with the development process for their target platform need to upskill in order to develop the application.
  • Maintenance can be complicated for users and developers. Changes must be packaged in a new version and placed in the app store.
  • Less discoverable. The user must go to the app store, search for an application, and download it.
Web-based application
  • Most discoverable. A user can easily search for a web application by using a search engine.
  • The web-based application can typically be developed much faster than a native application.
  • Maintenance is simple. It can be done as often as needed.
  • Lower development costs. It’s cheaper to develop hybrid and web applications, as these require skills that build upon previous experience with the web.
  • No need to distribute the software to machines that use the application.
  • Any application updates are made to the application alone and are immediately available to the user.
  • Inherent cross platform support as they run solely on the browser and are platform agnostic.
  • The web-based application system performance can be much slower than the native application.
  • Cannot do work offline.
  • Web applications are not optimized for the platform they are running on as they are not written in the platform's native programming language.
  • Cannot use any of the platform's features such as the camera, contacts list, accelerometer.
  • Web applications cannot access platform-specific UI features so they cannot avail of the same style that native and hybrid applications can avail of.
Hybrid application
  • Less expensive option for organizations that want to sell an application in an app store without spending significant development effort on a native application.
  • Maintenance is simple. It can be done as often as needed.
  • Lower development costs. It’s cheaper to develop hybrid and web applications, as these require skills that build up on previous experience with the web.
  • The application can target multiple platforms reducing cost of development and negating the need to hire experts to develop for each platform.
  • Hybrid applications can avail of the platforms UI style features allowing the application to be developed to look as close to a native application as possible.
  • The hybrid application system performance can be much slower than the native application.
  • Hybrid applications cannot avail of a device's full range of features as they are often restricted while running through the WebView.
  • Hybrid applications will not be fully optimized for the device they are running on as the bulk of their code is written in platform independent web development languages.

The mobile application is meant to provide quick access to client and case information. When you define the requirements, keep in mind that you do not need to recreate the existing Cúram functions in the mobile application. At the same time, do not create unnecessary new functions. The basic idea is to cut features and content to eliminate things that are not core to the mobile application use case.

You must decide what client and case information to display on the mobile application pages. Try to use only the most recent information unless there is a valid business reason to display older data. For example, if the user needs to create and maintain case evidence, then consider displaying only the most recent, active, evidence records. It might not be necessary to display older data as the caseworker can view that information from the Cúram application. You must also consider the impact that the older data has on system performance. It is important to make sure your mobile site loads quickly. Users can become frustrated if they must wait a long time to see your content. Any data that is not necessary can slow down the system performance.

As part of the requirements definition process, try to identify customer pain points that can be addressed by the mobile application. If possible, meet with real system users to validate assumptions about customer pain points.

When you design the user interface, follow the relevant UI design guidelines for your mobile application. Apple and Android each have their own guidelines. Following a method for displaying data and interacting with content makes your app easier to learn by end users. Following these conventions also ensures that your application is consistent with the other Cúram applications already on a mobile device.