Mobile Application Unit 1 Short Notes

 Introduction

  • Mobile devices are major gateways to the internet as compared to desktop browsers.
  • Mobile device is replacing all traditional channels to access the information.
  • Most of the enterprises are now adopting to "Mobile-First" strategy to various reasons.
 
Key Drivers for Mobile Applications
  • Innovation
    • Proliferation in Smart Phones
    • Higher 3G and 4G Bandwidths
    • Higher Capacity Storage
    • Higher Speed Chips
  • Consumer Behavior
    • More Usability
    • Access Information easily on the move
  • Personalized Content Delivery
    • Contextualized, Relevant, and Personalized Contents
    • Offers and Advertisements
  • Mobile Ecosystem
    • Explosive Growth in Mobile Application Stores
  • Social Network
    • Popularity of Web 2.0
    • Social Media Technologies

Attributes of Mobile Application
  • Ubiquity
    • Always Available and Connected
    • Access information Anytime Anywhere
  • User Friendliness
    • Responsive and interactive User Interface
  • Location Awareness
    • Location Sensitive Information Using GPS
  • Minimalistic
    • Minimal Contents and Features(which are essential for the functionality)

Consideration for Mobile Apps
  • Utility of Mobile App
    • Engagement
    • Productivity
    • Revenue
    • Conversion
    • Loyalty
  • Apps Architecture
    • Native
    • Hybrid
    • Web Based
  • Development Principals
    • User Experience
    • Security
    • Management
    • Hosting
  • Target Users
    • Consumers
    • Business
    • Partners
    • Employees
  • Testing
    • Device Testing
    • Performance Testing
    • Other Testing
Consideration in Mobile Apps
  • Diversity of devices and heterogeneous technologies
  • Data Security
  • Optimal User Experience Leveraging Capabilities
  • Network such as bandwidth challenges
  • Compliance to Standards, OS and Devices
PC Based Application
PC based applications are software programs developed to run on specific OS and hardware platforms.
  • Standalone PC Applications
    • Theas applications are not typically use network resources or support multi-user mode
    • Ex- Word Processor, Calculator, Media Players
  • Client Server Applications
    • The PC has a client software which is connected to a centralized server software.
    • Referred as "Thick-Client"
    • Ex- Networked Gams, Banking Software
WEB Based Application

Internet enabled applications rendered on desktop browsers are web applications.

Modern web applications follow MVC architecture which supports loose coupling and flexible modular components.

MVC Architecture
  • Presentation Layer
    • User Experience Components
      • Ex- Widgets, Pages, Buttons, Forms
  • Business Layer
    • Business Logic and Business Rules
      • Ex- Rules Engine, Search, Business Objects, Workflows and BPM
  • Data Layer(Model Layer)
    • Persistence Handling Components
      • Ex- Database Access Component, DAO, Query Components
There are more layers such as,
  • Security Component
    • Responsible for authentication and authorization
  • Utilities Component
    • Handling Cross-cutting Concerns
  • Web Content Management Layer
    • Content authoring, tagging, and publishing
  • E-Commerce Layer
    • Modules such as Order Management, Shopping Cart Modules, Promotions.
Evolution of Mobile based Applications
  • Embedded System
  • Device Specific App
  • OS Specific Apps
  • Cloud Based Apps
Evolution of Mobile Applications


Mobile Apps vs Web Applications
  • Location Awareness
    • Web- Less Location Awareness
    • Mobile- Location sensitive & Contextual Information
  • User Intuitive Features
    • Web- Limited amount of Device Features
    • Mobile- Intuitive features such as Camera, Sensors, GPS
  • Common Use Cases
    • Web- News, Blogs
    • Mobile- Gams, Social Media, Location related Services
Content in Mobility
The adaptive content uses rules to adapt itself based on the context which includes,
  • Location, Time, Form Factor, Mobile Platform, Screen Resolution
Protocol in Mobility
  • Wireless Application Protocol(WAP)
    • Optimized for low memory
    • low bandwidth mobile devices
  • Representational State Transfer(REST)
    • Communication using light-weight REST service calls
    • JSON data is used for data exchange
Mobile App Platforms
  • Android
    • Android is an open-source mobile development platform that is based on Java
    • It is maintained by Google. 
    • The key features supported by Android are SQLite based light-weight storage, SMS and MMS messaging, multi-lingual support, mobile browser. 
    • Other key features are multi-touch support, multi-tasking, voice features, external storage and such.
    • Android development needs Android SDK, libraries, emulator and Eclipse IDE.
    • Testing can be done using Android testing APIs. We can deploy Android apps to Google Play store.
  • Apple iOS
    • iOS is the mobile OS for Apple devices.
    •  The development on iOS happens using objective C. 
    • iOS supports many features such as iMessage, iCloud, Sirietc. iOS provides in-built apps such as mail, notifications, contacts calendar,bookmarks, sync etc.
This blog will be updated with visual images in few days

Thank You

Comments

Popular posts from this blog

Search results in MySQL database using PHP

Introduction to React Native Navigation