1.1 Mobile Application
Mobile application development involves the process of developing applications for mobile devices such as Personal Digital Assistants (PDA), tablets and smartphones, and other mobile devices. Native mobile apps are designed to run on a specific mobile platform, sometimes a specific mobile operating system and supported hardware.
Mobile applications are part of mainstream digital strategy for Business 2 Consumer (B2C) enterprises. Most enterprises are now adopting a “mobile-first” strategy wherein the digital applications are designed, developed, and tested for mobile devices; mobile users attain the primary focus of the digital strategy. Disruption in mobility space has a major impact on the revenues of the enterprises. Mobile apps are shaping user experiences and are providing real-time information and offering more engaging experiences for the users.
The mobility-based digital strategy considers various things such as user experience, performance, interactivity, device form factors, device limitations, location needs, and personalization.
Key Drivers for Mobile Application
The following are the key drivers of mobile apps:
- Innovation: In mobile space such as the proliferation of smartphones, higher bandwidths offered by 3G (Third generation) and 4G (Fourth generation) technologies are coupled with higher capacity storage technologies with higher speed chips that would keep powering mobile devices.
- Consumer behavior: Customers are more used to mobile devices and are easy for them to access information on the move.
- Personalized content delivery: Enterprise can leverage the location and sensors to offer more contextualized, relevant and personalized content, offers, and advertisements.
- Mobile ecosystem: An explosive growth in Mobile Applications stores such as Apple Store, Google Play Store, Windows marketplace store was coupled with the availability of games, utilities, and other apps.
- Social Networking: With the popularity of web 2.0 and social media technologies such as Facebook, Twitter users are increasingly using location-based features on social media platforms.
Impact of Mobile Apps on various domains
Mobile apps are impacting various industry verticals and functional domains. Given below are high-level changes enabled by mobile apps across industries:
- Retail and Consumer Packaged Goods (CPG) Industry: Mobile apps provide location-based store locator, targeted promotions/offers/coupons, service reminders, mobile bidding, in-store tools, cross-sell/upsell tools, and comparator tools. Basically, mobile apps play a key role in driving traffic, increasing sales, and driving brand loyalty. On the B2B front, mobile apps have redefined lead management, CRM functions, efficient tracking, field force automation, and such. Mobile apps have also led to improvement in-store merchandise, supply chain, and inventory management.
- Banking Industry: Mobile apps enable convenient ways to carry out transactions such as account balance, payment, localized alerts, tap-to-pay, branch locator, and payment coupons. Mobile apps would also enable mobile banking, mobile wallet and provide “on-the-go” features.
- Logistics: It is easier to track shipments, get updates, manage warehouses, and fleets using mobile apps.
- Healthcare: Mobile apps can easily connect patients, doctors, and insurance providers as well as provide wellness management solutions.
Besides the above-mentioned enterprise scenarios, mobile apps have revolutionized consumer space with various mobile apps related to gaming, utilities, social media, video streaming, and many more.
Attributes of Mobile applications
The following are the key attributes of mobile applications:
- Ubiquity: Mobile applications are always available and connected and enable users to access information anytime anywhere
- User-friendliness: Mobile applications provide a responsive and interactive user interface with essential information. They utilize the camera, sensors, media output, touch/multi-touch/voice interface for providing simplified actionable information.
- Location awareness: Mobile applications provide location-sensitive information using Global Positioning System (GPS) and other sensors.
- Minimalistic: The content and features in mobile apps are minimal which are essential for the functionality.
CONSIDERATIONS AND CHALLENGES FOR MOBILE APP
The main considerations for mobile apps are given in Figure 1.1
The main considerations for mobile app design are listed below:
- Intended utility of the mobile app
- Consumer engagement with a richer user experience
- Productivity through efficient flows
- Driving incremental revenue through user stickiness
- Customer conversion
- User loyalty through targeted and personalized offers
- App Architecture
- Native vs hybrid vs web-based on the requirements
- Middleware requirement for centralized configuration
- Offline vs online capability for storing data
- App Development Principles
- User experience through richer controls and interactive components
- Compatibility on various devices and platforms
- Performance for each screen and task
- Security for data o Productivity enhancement tools
- Target users
- Consumers for B2C apps
- Business for Business to Business (B2B) apps
- Partners for B2B apps
- Employees for Business to Employee (B2E) apps
- Testing o Device testing
- Performance testing
- Various testing scenario
The main challenges in mobile app strategy are given below:
- Diversity of devices and heterogeneous technologies: There are various mobile platforms and devices. The app should provide an optimal experience in all the scenarios.
- Security: Mobile app should ensure data security during transmission and during storage.
- User experience: Mobile app should provide optimal user experience leveraging the device capabilities to provide the highest engagement possible.
- Network: Mobile app should be designed to work in regions with network, latency, and bandwidth challenges.
- Compliance with diverse standards, OS, mobile platforms, and devices.
PC BASED APPLICATIONS
Personal Computer (PC) based applications are software programs developed to run on specific operating systems and hardware platforms. These were the pioneer applications that were used during the initial days of software development. There are mainly two types of PC-based applications, namely, standalone PC applications and client-server applications.
- Standalone PC Applications:
Standalone PC applications are independent software programs that would run on an OS. These applications do not typically use network resources or support multi-user mode. Utility programs such as word processors, calculators, and media players fall into this category. Each of the applications had a good user interface for the PC user to interact with.
2. Client-server applications
In client-server applications, each terminal PC had client software that is connected to centralized server software. The client program would get input from the end-user and would submit the details to the server software through a dedicated session established through the network. These applications were also referred to as “thick clients”. Database software, networked games, banking software, network file systems are some of the examples of this category of applications.
1.2 History Of Mobile App Development
- The first smartphone was announced for general use by IBM in 1993 that was equipped with the features like a calculator, world clock, calendar, and contact book.
- The BlackBerry Smartphone released in 2002 was the next major achievement in the field of mobile application development and it was marked by BlackBerry Limited, formerly known as Research In Motion Limited (RIM), and integrated with the innovative concept of wireless email.
- EPOC (operating system) developed by Psion for portable devices, primarily PDAs.
- It was the first recognizable app and was first released in the early 90s, the sixteen-bit machines (SIBO) which ran EPOC permitted user programmers such as a word processor, spreadsheet, diary, and database.
- Running a 32-bit OS, would come with up to 2MB RAM and let users add extra apps via software packs.
- In 1996 for personal digital assistants. This had a touchscreen GUI (graphical user interface) and came with a raft of basic apps and tons of third party apps programmed in C/C++.
- Java ME began life as JSR 68, replaced Personal Java, and rapidly became so favorite that it evolved into several standards for use across PDAs, phones and other embedded devices.
- Symbian grew out of the Psion EPOC OS AND was developed by Symbian Ltd – a joint venture of Psion, Ericsson, Nokia, and Motorola. This operating system was almost omnipresent and 250 million devices were running Symbian in 2009.
- According to a report, “There were 19 billion software developers across the world in the year 2014, and the number would grow to a whopping 25 billion by 2020”. Nowadays, India, Russia, and China are seeing fast growth in the number of mobile app developers compared to the first world countries that produced more mobile applications developers once.
1.3 Mobile Application Distribution Platforms
A mobile app distribution platform holds the collection of mobile apps in all categories like entertainment, shopping, games, etc. This platform offers mobile users to search for their favorite apps and download them anytime. Almost every mobile app development company targets these platforms while launching applications.
These platforms also provide different tools to companies or developers that uploaded their apps for tracking their progress. From the number of downloads to the number of searches in which their app appeared, companies can track everything. As a result, the motive of mobile app distribution on different channels becomes more profound.
Examining these reports, businesses can implement their mobile app store optimization guide and increase the search and download rate of their apps. Utilizing different application distribution platforms helps companies to reach out to more users across the globe.
Leading mobile tech companies have their own mobile app distribution platforms. Let’s know about them and see how they are rising consistently:
1.3.1 Google Play
Google Play, also branded as the Google Play Store and formerly Android Market, is a digital distribution service operated and developed by Google. It serves as the official app store for certified devices running on the Android operating system and its derivatives as well as Chrome OS, allowing users to browse and download applications developed with the Android software development kit (SDK) and published through Google. Google Play also serves as a digital media store, offering music, books, movies, and television programs. Content that has been purchased on Google Play Movies & TV and Google Play Books can be accessed on a web browser and through the Android and iOS apps.
1.3.2 App Store
The App Store is an app store platform, developed and maintained by Apple Inc., for mobile apps on its iOS and iPadOS operating systems. The store allows users to browse and download approved apps developed within Apple’s iOS Software Development Kit. Apps can be downloaded on the iPhone, iPod Touch, or the iPad, and some can be transferred to the Apple Watch smartwatch or 4th-generation or newer Apple TVs as extensions of iPhone apps.
1.3.3 Microsoft Store
Microsoft Store is a digital distribution platform owned by Microsoft. It started as an app store for Windows 8 and Windows Server 2012 as the primary means of distributing Universal Windows Platform apps. With Windows 10, Microsoft merged its other distribution platforms (Windows Marketplace, Windows Phone Store, Xbox Music, Xbox Video, Xbox Store, and a web storefront also known as “Microsoft Store”) into Microsoft Store, making it a unified distribution point for apps, console games, and digital videos. Digital music was included until the end of 2017, and E-books were included until 2019.
1.3.4 Google Assistant
Google Assistant is Google’s voice assistant. When it launched, Google Assistant was an extension of Google Now, designed to be personal while expanding on Google’s existing “OK Google” voice controls.
Originally, Google Now smartly pulled out relevant information for you. It knew where you worked, your meetings and travel plans, the sports teams you liked, and what interested you so that it could present you with information that mattered to you.
Google has long killed Google Now, but Assistant lives in the same space, fusing these personalized elements with a wide range of voice control. Google Assistant supports both text and voice entry and it will follow the conversation whichever entry method you’re using.
Google Assistant offers voice commands, voice searching, and voice-activated device control, letting you complete a number of tasks after you’ve said the “OK Google” or “Hey Google” wake words. It is designed to give you conversational interactions.
Google Assistant will:
- Control your devices and your smart home
- Access information from your calendars and other personal information
- Find information online, from restaurant bookings to directions, weather, and news
- Control your music
- Play content on your Chromecast or other compatible devices
- Run timers and reminders
- Make appointments and send messages
- Open apps on your phone
- Read your notifications to you
- Real-time spoken translations
- Play games