The Enterprise Mobile Applications Development Framework



Similar documents
Mobile Commerce and Ubiquitous Computing. Chapter 6

Mobile Cloud Computing In Business

Hermes: Generic Designs for Mobile, Context-Aware Trails-Based Applications

Comparing Mobile VPN Technologies WHITE PAPER

Governance van Mobiele Service Platforms

What Cloud computing means in real life

Hosted Telephony Guide

Introduction to Computer Networking: Trends and Issues

DETECTION OF CONTRAVENTION IN MOBILE CLOUD SERVICES

Logical Data Models for Cloud Computing Architectures

Cloud Computing for Agent-based Traffic Management Systems

An Advanced Commercial Contact Center Based on Cloud Computing

Middleware- Driven Mobile Applications

The Internet of Things: Opportunities & Challenges

Transformation of POS Operations at

Chapter 6 Telecommunications, Networks, and Wireless. Computing

Overview to the Cisco Mobility Services Architecture

Cisco Medical-Grade Network: Build a Secure Network for HIPAA Compliance

Boosting Business Mobility and Responsiveness with the Cisco Unified Wireless Network

Cisco Virtual Office Unified Contact Center Architecture

INTERNATIONAL JOURNAL OF ADVANCES IN COMPUTING AND INFORMATION TECHNOLOGY An International online open access peer reviewed journal

Security issues in Voice over IP: A Review

An integrated management platform for the support of advanced Charging, Accounting & Billing schemes in Reconfigurable Mobile Networks

Backend Systems Architectures in the Age of the Next Generation Network

The Next Generation Network:

Introduction Chapter 1. Uses of Computer Networks

Vulnerability Analysis on Mobile VoIP Supplementary Services and MITM Attack

MOBILE ARCHITECTURE BEST PRACTICES: BEST PRACTICES FOR MOBILE APPLICATION DESIGN AND DEVELOPMENT. by John Sprunger

Mobile Marketing: Key Trends

How To Make A Cell Phone Converged Into A Cell Network

Voice over Wired and Wireless Communication for Academic Institutions

Oracle WebCenter Sites Mobility Server Enabling exceptional mobile and tablet web applications and web sites without compromise

Clients for Unified Communications

A B S T R A C T. Index Trems- Wi-Fi P2P, WLAN, Mobile Telephony, Piconet I. INTRODUCTION

SERVICES IN NGN NEXT GENERATION NETWORKS

Vortex White Paper. Simplifying Real-time Information Integration in Industrial Internet of Things (IIoT) Control Systems

Introduction. Mobile GIS emerged in the mid-1990s to meet the needs of field work such as surveying and utility maintenance.

The changing face of global data network traffic

Msc(ECom&IComp) List of modules offered in

Wireless (Select Models Only) User Guide

Mobile Devices and Your Business. A white paper from InduSoft

Towards Distributed Service Platform for Extending Enterprise Applications to Mobile Computing Domain

Mobile Multimedia Meet Cloud: Challenges and Future Directions

Building the Mobility Security Eco System in the Cloud for Universal Communications Fact Sheet.

Security Infrastructure for Trusted Offloading in Mobile Cloud Computing

The Internet of Things (IoT) Opportunities and Risks

Inter-Tel 5000 Network Communications Solutions

A Grid Architecture for Manufacturing Database System

How To Understand Cloud Computing

TRANSFORMATION OPPORTUNITIES WITH THE ALCATEL-LUCENT OPENTOUCH SUITE OPTIMIZING CONVERSATION DELIVERY OVER CENTRALIZED COMMUNICATIONS NETWORKS

MSc Computer Science with specialisation in either Distributed Systems & Multimedia or Software Engineering - E526

INFORMATION SCIENCE. INFSCI 0010 INTRODUCTION TO INFORMATION SCIENCE 3 cr. INFSCI 0015 DATA STRUCTURES AND PROGRAMMING TECHNIQUES 3 cr.

feature requirements engineering

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY

Integrated Command and Control Center Solutions for Public Safety

COMPREHENSIVE PERFORMANCE ANALYSIS OF UNIFIED COMMUNICATIONS TECHNOLOGY

Ingenious Systems. Evolute System's. Mobile Payment. Initiative

The Cloud A Seamless Mobile Experience. Martin Guilfoyle VP Innovation, R&D

Unified Communications: The Layman s Guide

Service Delivery Platforms for Network Operators

An Integrated Service Management Approach Using OSGi Technology and ACAP

The following is a list of the features available with the managed Intersoft IP Telephony Services.

Implementing Conditional Conference Call Use Case over IMS and Non IMS Testbed an experimental results through comparison approach

FROM TELEPHONY TO IP COMMUNICATIONS: A NATURAL EVOLUTION REDUCE COSTS AND IMPROVE MOBILITY WITH IP COMMUNICATIONS APPLICATION NOTE

Cisco Unified IP Phone Solutions

Fundamentals of Mobile and Pervasive Computing

ITU-T Y General overview of NGN

Cloud Based E-Government: Benefits and Challenges

ENHANCING MOBILE PEER-TO-PEER ENVIRONMENT WITH NEIGHBORHOOD INFORMATION

MOBILE CHIP ELECTRONIC COMMERCE: ENABLING CREDIT CARD PAYMENT FOR MOBILE DEVICES

Comprehensive Network Security Approach: Security Breaches at Retail company- A Case Study

The ultimate IP DECT communication devices for voice, text messaging and inhouse mobility

Collaborative & Integrated Network & Systems Management: Management Using Grid Technologies

Remote Desktop Access through Android Mobiles and Android Mobiles Access through Web Browser

THE ADVANCES OF INTEGRATED GEOSPATIAL APPLICATION IN WORKFORCE MANAGEMENT AND FIELD SERVICE OPTIMIZATION

ENTERPRISE MOBILITY GIVE YOUR BUSINESS THE BIG ADVANTAGE

Parent FAQ s. 1:1 Laptop Program. Introduction. 1-to-1 devices and student learning. Will students use computers too much for schoolwork?

Enterprise. Application Performance Optimization Services Boosting your application performance by optimizing network resources

Sta t te of ark ansas Video e Str ateg e y

REROUTING VOICE OVER IP CALLS BASED IN QOS

the mobile web and the mobile communication service provider Robert Hyerle, Marc Brandt OpenCall Business Unit w3c mwi, November 2004

McAfee Enterprise Mobility Management Versus Microsoft Exchange ActiveSync

Real-Time Analysis of CDN in an Academic Institute: A Simulation Study

How To Use An Ipcortex Pbx On A Pc Or Mac Or Ipcorta On A Cell Phone Or Ipbx At A Cost Of $99.99 Per Month (For A Sim Sim) Or $99 Per Year

Remote Monitoring and Controlling System Based on ZigBee Networks

IJREAT International Journal of Research in Engineering & Advanced Technology, Volume 1, Issue 1, March, 2013 ISSN:

Communication Networks. MAP-TELE 2011/12 José Ruela

"Secure insight, anytime, anywhere."

Expansion of Melody Call for Enhanced Music Services

OPTIMIZED CONSUMPTION AND ACCESS OF REMOTE DISPLAY ON MOBILE DEVICE ENVIRONMENT

Mobile Applications And Services for Converged Networks

alcatel-lucent converged network solution The cost-effective, application fluent approach to network convergence

The 5G Infrastructure Public-Private Partnership

CDW PARTNER REVIEW GUIDE WIRELESS INFRASTRUCTURE

Chapter 2 PSTN and VoIP Services Context

An Introduction to SIP

Introducing Cisco Unified Communications Express

Indepth Voice over IP and SIP Networking Course

Home Gateway Enabling Evolution of Network Services

Transcription:

Mobile CoMputing The Enterprise Mobile Applications Development Framework Bhuvan Unhelkar, MethodScience San Murugesan, BRITE Professional Services Enterprises face several challenges in deploying mobile applications, emanating from features such as location independence, contextualization, and personalization. The six-layer enterprise Mobile Applications Development Framework offers a systematic and comprehensive solution to mobile application development and maintenance. In recent years, mobile technologies and applications have become ubiquitous, permeating every aspect of our personal and professional lives. Enterprises are now adopting mobile technologies for numerous applications to increase their operational efficiency (by providing employees greater access to real-time information), improve their responsiveness and competitiveness, capitalize on the mobile revolution, and meet new customer demands. This evolving mobile paradigm offers location independence and personalization for users accessing information and applications, thus enhancing user satisfaction. Mobile applications can also offer context-aware responses that consider the user s location, the time of use, or other attributes. For example, businesses can offer banking, travel, or emergency services that are sensitive to the user s location and time of use. Although mobile technologies and applications present many new opportunities for enterprises, they also present development and implementation challenges. These challenges are in addition to those encountered in fixed-location, wirednetwork desktop applications. For example, the development and deployment of enterprise mobile applications must converge with the computing and communications paradigms. Some mobile applications also must determine the user s location before offering the service and then continually track the location to adapt services and information accordingly. Incorporating the required level of security, reliability, and quality of service (QoS) are additional challenges. 1520-9202/10/$26.00 2010 IEEE P u b l i s h e d b y t h e I E E E C o m p u t e r S o c i e t y computer.org/itpro 33

Mobile Computing Supports collaboration within and outside the enterprise Mobility M-collaboration M-operation M-transaction M-information Facilitates internal operational aspects of the business (such as inventory management, human-resources management, and supply-chain management) Facilitates e-transactions, customer relationship management, and sales and marketing Provides information sought by the mobile user, such as timetables, job vacancies, weather conditions, and tourist information Richer and complex applications M-broadcast Facilitates large-scale information broadcast to mobile gadgets, such as advertisements and promotions Figure 1. A new taxonomy of enterprise mobile applications. Applications in the upper categories are richer and more complex than those in the lower ones. (Adapted from an earlier model proposed by MethodScience.com.) Here, we present a new taxonomy of enterprise mobile applications that builds on earlier work done at MethodScience and examines the challenges of mobile application development. To successfully address such challenges in a systematic and comprehensive manner, we present the six-layer Mobile Applications Development Framework (MADF). A New Taxonomy for Enterprise Mobile Applications Now that enterprises are using mobile technologies for a wide range of applications, we need a better understanding of these applications and the demands placed on them. We therefore propose a new taxonomy of enterprise mobile applications (see Figure 1). We broadly classify mobile applications into five categories: mobile broadcast (mbroadcast), information (m-information), transaction (m-transaction), operation (m-operation), and collaboration (m-collaboration). Applications in the last three categories are rich and complex and pose different requirements and challenges than applications in the first two categories. Our taxonomy can help application developers focus their attention on key aspects of application design and implementation. Mobile Broadcast Applications in this category primarily broadcast different kinds of content to a large group of mobile users. For example, they might broadcast directions to users in an emergency situation or promotional information to users at a shopping mall. The users are casual (that is, unregistered) and usually in flux. Mobile Information These applications primarily present userrequested information, and the flow is usually unidirectional that is, from the application to the user. Examples include user-sought information about events, products, services, promotions, schedules, and prices. Although these kinds of applications usually have less stringent security needs, they still present usability and privacy issues. Mobile Transaction In addition to broadcasting and providing information, applications in this category facilitate and execute transactions. They let users buy and sell goods and services, place and track orders, and make electronic payments. These applications need to provide better security, quicker responses, higher transaction reliability, a higher level of performance, and 34 IT Pro May/June 2010

more trusted services than applications in the first two categories. Also, they include three parties: the user (client), the business concerned (such as a service provider, an online store, or an airline), and a financial mediator (an online payment gateway or PayPal). Mobile Operation These applications primarily support the operational aspects of a business that don t involve direct interaction with customers or clients. They offer convenient access to timely information such as current stock information, production schedules, payroll information, and leave balances. The challenges these applications pose include provision of real-time information and issues surrounding inventory management, dynamic scheduling of work shifts for employees with mobile access, and changing organizational structures. Integrating diverse back-end enterprise systems and several different databases is also a key challenge. Mobile Collaboration These applications foster collaboration among employees and various functional units in an enterprise. Furthermore, they facilitate collaboration with other enterprises of interest and business partners. Social networking applications that help create and manage groups of people (employees, customers, or enterprises) also belong in this category. Dynamic interactions among the various stakeholders and the software modules that support these interactions increase the complexity of these applications. This in turn presents coding and data-management challenges. Mobile Application Development Challenges Although software development for traditional enterprise applications presents its own challenges, mobile application development further intensifies and extends these challenges. For instance, in location-aware mobile applications, we must incorporate the user s location-specific context into the application s analysis, architecture, design, coding, and testing. Additional challenges in mobile application development include customizing mobile functionality according to the user profile, ensuring access and usability, facilitating optimum user interactions on mobile devices, and dealing with the bandwidth and poor reliability of wireless communication. 1 Addressing these challenges is key to successfully developing and deploying enterprise mobile applications. These challenges are grouped into three categories. Devices and Platforms Devices on which the mobile applications display and receive data usually have small screens and keyboards. So, developers must pay special Additional challenges in mobile application development include customizing mobile functionality. attention to usability for example, offering one-touch navigation and removing certain features and facilities to display data sensibly. Interface design should also consider options such as voice activation, touch-sensitive screens, innovative menus and styluses, and handwriting and gesture recognition. Mobile applications must be designed to suit a variety of handsets, which operate on different platforms and with different interfacing capabilities. The same application must work on multiple mobile devices with varying presentation formats, so we must consider device features and their operating platforms. Clever use of small battery power to extend the duration of device operation before recharging also poses challenges. User Location, Usage, and Content Mobile devices are more personal than desktop computers, and a growing number of people are now living with their mobile devices. The related applications require personalization because different mobile users like to receive information or alerts (or respond to them) in different ways, according to personal preferences and depending on the type of device being used. Mobile applications should also adapt to the user s dynamic profile as his or her computer.org/itpro 3 5

Mobile Computing Presentation Application Middleware and binding Information Communications Mobile user interface and devices Business aplications Middleware Database Network Figure 2. The six layers of the enterprise Mobile Applications Development Framework. 2,3 The security layer covers all other layers. Security Mobile phones, PDAs, and tablet PCs Hosted applications such as schedules, bookings, customer relationship management, and payment solutions Service frameworks (imode, Wireless Application Protocol) Multimedia information in different formats, available from different sources, and information search facilities TCP/Internet Protocol, mobile Internet, cellular Global System for Mobile Communication/Wideband Code Division Multiple Access (3G) location and the context of requested information changes. For instance, we should consider parameters such as location, time of use, current task, and history of use in providing relevant information and functionality. A multipurpose mobile application might also need to address multiple and continually changing objectives. For example, an application that provides the tram schedule at a commuter stop should also provide traffic information. Furthermore, mobile applications vary widely in terms of their purpose and significance. They can provide life-saving services to police officers and paramedics or facilitate social networks, recreational sports, music downloads, personalized ring tones, and marketing. So, the different applications have different demands in terms of service reliability and availability. Web page content text, links, images, and video and the functionality offered should be appropriate to the application s purpose and scope and to the device being used. Mobile applications should present multi media content (audio, video, and data) in a mixed format. Mobile applications also demand additional presentation formats. Along with text and images, we must consider other forms of delivery, such as voice prompts. For example, voice response is more appropriate for gaining a driver s immediate attention. Dynamic Communication and Networks Mobile application development must consider the bandwidth of mobile communication networks and the potential for interruptions in communication. Similarly, the security of wireless communication across various tiers of mobile networks and satisfactory completion of a transaction despite any breakdown in communication must be addressed. Enterprise MADF Our Mobile Applications Development Framework can help address these challenges. MADF s six layers comprise communication, information, middleware and binding, applications, presentation, and security (see Figure 2). 2,3 The security layer lies orthogonally, covering all other layers. This layered framework brings together elements of software architecture and design and the required supporting communication infrastructure (network and protocols) and different types of information accessed from multiple sources. It also brings together user interface design as well as code and design pattern reuse and application programming, as appropriate, and it helps to design an appropriate mobile enterprise architecture. Established architectural frameworks such as the Zachman Framework at the enterprise level (www.zachmaninternational.com) and the Open Group Architectural Framework at the technical level (www.theopengroup.org/ togaf) provide background for understanding MADF. Communication Mobile networks provide the underlying communication infrastructure for mobile applications. 4 Mobile application developers need to consider the TCP and Internet Protocol (IP) at the base, followed by the Wireless Application Protocol (WAP), personal area network (PAN), and, 36 IT Pro May/June 2010

occasionally, the metropolitan area networks (MANs). The next consideration is standards such as the IEEE 802.1x group of network protocols; mobile cellular telecommunication standards (2G, 2.5G, 3G, or 4G); localized communications (using infrared or Bluetooth); as well as RFID, WiMax, and Wireless VoIP technologies. For instance, for long-range communication, mobile applications often include a stack of networks (typically cellular networks) that link to programmable interfaces using infrared, Bluetooth, and other short-range networks. Networks and communication capabilities directly affect a mobile application s QoS. For example, billing applications must be deployed on cellular networks, whereas micropayments or mobile retailing will need a combination of a Wi-Fi-based wireless local area network together with the mobile Internet. Developers can use this MADF layer to model and incorporate the application s execution location, interface for third-party deployments, and security interfaces. Information Mobile applications use multimedia content, which poses three key challenges: content sourcing and presentation, secured content storage, and content mining. 5 Presenting quality multimedia content including structured and semistructured data, natural language text, images, audio, and video often drawn from multiple sources (in different formats) on a small screen with lower demands on computing, storage, and communication resources is a challenge. Furthermore, the presentation might have to be reformatted to suite specific devices with different form factors. The storage mechanisms affect access speed and content quality. For example, developers might have to sacrifice quality when displaying video content on a mobile device, but they can still store the content in a high-density format on a database. Data-mirroring strategies enhance redundancy and improve reliability, but the dual storage and related maintenance functions result in additional overhead and slower data access. To obviate this challenge, mobile applications should pool the data in a centralized database. This streamlines the process flows and architectures and leads to a more consistent way of handling the information. Developers can use design patterns such as the Observer pattern to model the solution. 6 As client-side storage needs grow in size and sophistication, they should consider creating cache content on the user device itself opening up opportunities for mobile grids. Furthermore, the mobile application architecture should handle the replication of events on each client device and synchronize event creation or modification on each mobile device. To address users specific information needs, data might have to be mined. This is a challenging task because of the data s volume, differing data types, heterogeneity resulting from multiple As client-side storage needs grow, developers should consider creating cache content on the user device itself. sources containing the same or similar information (in various formats), and constant updates. Furthermore, the data might have to be mined with different objectives to meet the diverse needs of the several users. Finally, mobile content management should explore opportunities to provide correlations between business intelligence, integration, and reliability. Middleware and Binding This layer binds the offered applications or services and the content. Mobile middleware technologies aim to bring together or gel the various services or parts of a mobile software application. Mobile middleware handles the dispersed services in a mobile environment and also provides the glue to varying types of devices (along with the devices operating environments). WAP and imode are the two well-known mobile middleware protocols, built on top of the TCP and IP, used in mobile application development. Connectivity of mobile applications isn t a homogenous process. Applications are executed intermittently and from different locations, requiring mobile applications and services to connect, disconnect, and reconnect at various stages. computer.org/itpro 3 7

Mobile Computing Middleware technologies must cater to this pattern of connectivity during execution. Applications Applications containing the business rules of the enterprise reside in this layer. Modeling mobile processes is a vital element in developing mobile enterprise applications. Developers can use Business Process Modeling Notation (www.bpmi.org) to create models of how businesses will use the mobile applications. They can extend these models to collaborative mobile processes as well. The process models also help to reengineer the business process (discussed for normal, nonmobile business processes elsewhere 7 ), thereby improving business performance. To derive Don t treat mobility simply as an add-on to existing business processes. full benefit, however, it s important to consider mobile applications as closely linked to the business and its processes. Don t treat mobility simply as an add-on to existing business processes. Presentation Presenting information to users on their mobile devices and providing suitable user interfaces and navigation systems is a vital part of mobile application development. Developers must consider application deployment on smart mobile phones, ipods, PDAs, and Blackberries. As highlighted earlier, these wirelessly connected mobile devices are far more personal than the corresponding desktop PCs. Therefore, developers should use the presentation layer to consider user profiles and usability 8 and privacy requirements. Security Mobile application security, which includes information confidentiality, integrity, and availability, is a key concern in enterprise mobile applications. This is because communication through wireless and mobile networks is more vulnerable to attack than in wired networks. So, developers need to incorporate an adequate level of security into all MADF layers. Password protection is a basic mobile security mechanism included in most handheld devices. 9 Other security measures include authentication, cryptography, secure communications, and secure mobile payment methods. We successfully applied MADF in three different enterprise settings one was a large mobile services provider, another was a consulting company, and the third was a security organization. In all three, MADF proved to be a useful backdrop for mobile application development and maintenance. The layered approach helped define APIs for use between layers, ease application debugging and testing, and manage development and deployment efforts. Also, we discovered that developers devoted more attention to certain layers, depending on the organization, business model, and application. For example, the mobile service provider paid more attention to the content and networks, focusing on the content s format, sources, and currency. The consulting organization was less interested in the mobile networks, because it assumed they were a given. It instead focused on the analytical applications and their m-informative output and usability on mobile device interfaces. The security organization focused on the middleware and application layers. We hope this discussion, highlighting significant aspects of enterprise mobile application development and presenting our framework, helps developers and enterprises realize the full potential of mobile enterprise applications. References 1. S. Murugesan and B.A. Venkatakrishnan, Addressing the Challenges of Web Applications on Mobile Handheld Devices, Proc. Int l Conf. Mobile Business (ICMB 05), IEEE CS Press, 2005, pp. 199 205. 2. B. Unhelkar, Mobile Enterprise Architecture: Model and Application, Cutter Enterprise Architecture Practice Executive Report, vol. 11, no. 3, 2008; www.cutter.com/ content/architecture/fulltext/summaries/2008/03/ index.html. 3. B. Unhelkar, Mobile Enterprise Transition and Management, Taylor and Francis, 2009. 4. J.D. Vriendt et al., Mobile Network Evolution: A Revolution on the Move, IEEE Comm. Magazine, vol. 40, no. 4, 2002, pp. 104 111. 38 IT Pro May/June 2010

5. J. Goh and D. Taniar, Mobile User Data Mining and Its Applications, Handbook of Research in Mobile Business: Technical, Methodological and Social Perspectives, B. Unhelkar, ed., IGI Global, 2006, pp. 1519 1538. 6. E. Gamma et al., Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley Longman Professional Reading, 1995. 7. M. Hammer and J. Champy, Reengineering the Corporation: A Manifesto for Business Revolution, Nicholas Brealey, 2001. 8. L. Constantine and L. Lockwood, Software for Use: A Practical Guide to the Models and Methods of Usage- Centered Design, Addison-Wesley Longman, 1997. 9. M. Guizani and A. Raju, Wireless Networks and Communications Security, Security and Routing in Wireless Networks, vol. 3, Y. Xiao, J. Li, and Y. Pan, eds., Nova Science Publishers, 2005, p. 320. Bhuvan Unhelkar is the founder and principle consultant of MethodScience (www.methodscience.com) and is an adjunct associate professor in the School of Computing and Mathematics at the University of Western Sydney. His research interests include software engineering, green IT, enterprise globalization, Web services, and mobile technologies. Unhelkar received his PhD in object-oriented design from the University of Technology, Sydney. He is a fellow of the Australian Computer Society, and a life member of the Computer Society of India. Contact him at bhuvan.unhelkar@ gmail.com. San Murugesan is a principal consultant at BRITE Professional Services, Australia, and is an adjunct professor at the University of Western Sydney. His research interests include green IT, cloud computing, Web 2.0 and 3.0, and e-business. He received his PhD in computer science from the Indian Institute of Science, Bangalore. He is a fellow of the Australian Computer Society. Contact him at san1@ internode.net. Selected CS articles and columns are available for free at http://computingnow.computer.org. computer.org/itpro 3 9