Designing Enterprise Mobile Applications: Critical Success Factors

39
Designing Enterprise Mobile Applications Critical Success Factors August 29, 2012

description

 

Transcript of Designing Enterprise Mobile Applications: Critical Success Factors

Page 1: Designing Enterprise Mobile Applications: Critical Success Factors

Designing Enterprise Mobile Applications

Critical Success Factors

August 29, 2012

Page 2: Designing Enterprise Mobile Applications: Critical Success Factors

About Perficient

Perficient is a leading information technology consulting firm serving clients

throughout North America.

We help clients implement business-driven technology solutions that integrate

business processes, improve worker productivity, increase customer loyalty and create

a more agile enterprise to better respond to new business opportunities.

Page 3: Designing Enterprise Mobile Applications: Critical Success Factors

Perficient Profile

Founded in 1997

Public, NASDAQ: PRFT

2011 Revenue of $260 million

Major market locations throughout North America— Atlanta, Austin, Charlotte, Chicago, Cincinnati, Cleveland,

Columbus, Dallas, Denver, Detroit, Fairfax, Houston, Indianapolis, Los Angeles, Minneapolis, New Orleans, Philadelphia, San Francisco, San Jose, Southern California,St. Louis and Toronto

Global delivery centers in China, Europe and India

2,000+ colleagues

Dedicated solution practices

87% repeat business rate

Alliance partnerships with major technology vendors

Multiple vendor/industry technology and growth awards

Page 4: Designing Enterprise Mobile Applications: Critical Success Factors

Perficient brings deep solutions expertise and offers a complete set of flexible services to help clients implement business-driven IT solutions

Our Solutions Expertise & Services

Business-Driven Solutions• Enterprise Portals• SOA and Business Process Mgmt• Business Intelligence• User-Centered Custom Applications• Interactive Design• CRM Solutions• Enterprise Performance Management• Customer Self-Service• eCommerce & Product Information

Management• Enterprise Content Management• Enterprise Resource Planning• Management Consulting• Industry-Specific Solutions• Mobile Technology• Security Assessments

Perficient Services End-to-End Solution Delivery IT Strategic Consulting IT Architecture Planning Business Process & Workflow

Consulting Usability and UI Consulting Custom Application Development Offshore Development Package Selection, Implementation

and Integration Architecture & Application Migrations Education Interactive Design

Page 5: Designing Enterprise Mobile Applications: Critical Success Factors

Our Speakers

Eric Roch• Chief Technologist for Perficient• 20+ years of experience in various aspects of

Information Technology including:• IT executive level management within industry and

consulting• technical architecture• application and systems development.

• He has also been an IT industry speaker and author for many years.

Kevin Orbaker• Director, SOA/Integration at Perficient• 20+ years of experience in various aspects of

Information Technology. • Software Solutions Architect• Enterprise Infrastructure Architect• Executive Management

• Industry speaker and recognized community contirbutor

Page 6: Designing Enterprise Mobile Applications: Critical Success Factors

Perficient’s Mobility Practice

6

Page 7: Designing Enterprise Mobile Applications: Critical Success Factors

Agenda

• About Perficient • Perficient’s Mobility Practice • Mobility Experience Design • Mobility Enterprise Architecture • Mobility Application Development

– Process lifecycle – Solution Architecture – Standards and Frameworks

• Perficient’s Mobility Roadmap • Case Studies

7

Page 8: Designing Enterprise Mobile Applications: Critical Success Factors

Perficient Mobility Solution Offerings

Perficient’s mobility practice provides expertise across a variety of enterprise platforms and technologies. Our approach is device independent and scalable for emerging technology.

• Business Case Definition• Vision and Roadmaps• Experience Design• Architecture and Frameworks • Custom Development• Back Office Integration

8

Page 9: Designing Enterprise Mobile Applications: Critical Success Factors

User Experience Design

9

Page 10: Designing Enterprise Mobile Applications: Critical Success Factors

Responsive Design

10

Responsive websites adapt (and respond) to their environment. Same site, different experiences.

Page 11: Designing Enterprise Mobile Applications: Critical Success Factors

Responsive Design

11

Page 12: Designing Enterprise Mobile Applications: Critical Success Factors

Responsive Design

12

VS

Page 13: Designing Enterprise Mobile Applications: Critical Success Factors

Mobile Architecture

13

Page 14: Designing Enterprise Mobile Applications: Critical Success Factors

Architecture Constraints

14

• Limited: battery life, bandwidth, memory, storage

• Large data sets: paging, parsing, filtering

• Support native runtime features (graphics, camera, GPS)

• Rich user experience over slow data connections

• Connectionless environments• Security and transactional state

regardless of connection • Context awareness and digital memory • All-ways-on: Agents, events and rules,

RFID, sensors and actuators

Pervasive computing is coming. How will your architecture support it?

Page 15: Designing Enterprise Mobile Applications: Critical Success Factors

Mobile Architecture Concerns

15

Bolt on point-to-point

LayeredExtensible

Service-Oriented

Value in reusable services and architecture consistency

Page 16: Designing Enterprise Mobile Applications: Critical Success Factors

Architecture Goals

16

Complex

Slow toChange

LeverageSOA,

Integration Patterns, Security

Manage APIs and

Developer Community

IntuitiveRapid

Change

Layered architecture leveraging existing IT assets and cloud integration

Page 17: Designing Enterprise Mobile Applications: Critical Success Factors

Mobile Enterprise Architecture Landscape

17

Page 18: Designing Enterprise Mobile Applications: Critical Success Factors

Mobile Architecture Decision Points

18

Single Device

OR

Multiple Devices?

Custom code

OR

Platform?

Mobile Browser

OR

Native App?

Page 19: Designing Enterprise Mobile Applications: Critical Success Factors

Mobile Enterprise Application Platforms

19

MEAPApplication Server

On-premise Systems SaaS/Cloud Systems Public Services

• iOS• Android• Blackberry• Windows Mobile

• A MEAP is a central mobile development platform

• The leading MEAP solutions allow you to develop a single application and seamlessly deploy it to multiple providers (Apple, Android, Blackberry) and multiple device types (tablets, SmartPhones)

• Most MEAPs have pre-built connectors to many common data sources (ERP, CRM, DW)

Page 20: Designing Enterprise Mobile Applications: Critical Success Factors

Gateway Proxy – Security and Protocol Mediation

20

Page 21: Designing Enterprise Mobile Applications: Critical Success Factors

RESTful APIs for Mobile

21

• Consistent and intuitive API design

• Published, reusable APIs • Leverage SOA investments • API governance and ownership • Developer community portal • Protocol mediation – Web

Services to REST/JSON • Security handshakes • API monitoring • API traffic throttling

Page 22: Designing Enterprise Mobile Applications: Critical Success Factors

Mobile Application Development

22

Page 23: Designing Enterprise Mobile Applications: Critical Success Factors

Agile Meets User Expectations for Rapid Iterations

23

• Release Planning

• User Stories

• Iteration Planning

• Daily Standup Meetings

• Test Driven

Development

• Unit Testing

• Continuous Integration

• Refactoring

• Iteration Metrics

• Customer Show and Tell

Iterative Feedback

Loop

Continuous Improvement

Collaboration with Business

StakeholderVisibility

Practices …that promote

AdaptabilityPredictability

ManageabilityVisibility

ScopeControl

Page 24: Designing Enterprise Mobile Applications: Critical Success Factors

Our Agile Approach to Mobility

24

• User Stories

• Release Planning

• Iteration Planning

• Task Breakdown

• Daily Standup Meetings

• Test Driven Development

• Unit Testing

• Continuous Integration

• Refactoring

• Iteration Metrics

• Customer Show and Tell

• Mobile Needs Assessment

• Mobile Vision and Strategy

• Device Selection

• Device Capabilities List

• On-Board Storage

Assessment

• Disconnected Usage

Scenarios

• Services and Data

Assessment

• Data Transfer Mechanisms

• Device Security Policies

• App Provisioning Strategy

• Test

• App Signing

• App Certification

• App Provision

• Updates / Fixes

• Device Migration /

Sunset

Plan Develop Deploy

Page 27: Designing Enterprise Mobile Applications: Critical Success Factors

Web Based Development with Limited OS APIs

27

Page 29: Designing Enterprise Mobile Applications: Critical Success Factors

Application Architecture Standards

29

• API naming standards

• Data format standards

• Library standards

• Hybrid frameworks

• Native frameworks

• Cross-platform frameworks

• Solution architecture patterns

• Design standards

• Coding standards

• Packaging standards

• Continuous integration

• Testing frameworks

• Deployment standards and automation

Page 30: Designing Enterprise Mobile Applications: Critical Success Factors

Application Architecture Frameworks

30

• Architecture Patterns

• OOA/OOD

• Class Libraries

• Reusable elements

• Web views

• Table views and scrolling

• HTTP services

• Security

• Data persistence

• Disconnected operations

• Error handling, Logging and debugging

Page 31: Designing Enterprise Mobile Applications: Critical Success Factors

Mobility Roadmap

31

Page 32: Designing Enterprise Mobile Applications: Critical Success Factors

Perficient’s Mobility Roadmap

32

Perficient’s mobility roadmap defines mobility efforts in the context of a program that meets business goals. The roadmap will also defined activities needed to create a consistent user experience, comprehensive architecture and standardized application development practices.

The roadmap will include activities to addressing the following needs:

• Business vision and goals • User experience and branding • Application integration architecture • Development approach and lifecycle • Organizational suture and governance needs • Development tools and framework needs• Define Quick-win Pilot Project • Program timeline, budget, iterations

Page 33: Designing Enterprise Mobile Applications: Critical Success Factors

Mobility Application Roadmap

33

Business goals for mobility drive the mobile application portfolio development and the requirements for the portfolio drive architecture decisions.

• Define each mobile application based on business goals • Understand components needed for each mobile application• Learn the audience and key scenarios where mobile applications will be

used• Define the design considerations for mobile applications – user

experience and architecture requirements • Identify specific scenarios for mobile applications, such as security,

deployment, power usage, integration and synchronization• Define the key patterns and technology considerations for designing

mobile applications• Determine high-level project estimates, timelines, and benefits • Develop program roadmap and architecture vision to support the to-be

mobile portfolio

Page 34: Designing Enterprise Mobile Applications: Critical Success Factors

Mobility Roadmap Deliverables

34

While each of our customers needs are unique and as such our roadmaps are customized the following deliverables a typical for mobile roadmaps:

• Documented business goals and critical success factors • Recommended organizational model and governance frameworks • Platform architecture recommendations and implementation timelines • Experience design strategy • High-level as-is and to-be architecture to support mobile • Experience design, architecture and development of a pilot mobile

application • Plans to mature people, processes and technology driven by business

needs and project requirements • Candidate mobile applications with high-level costs and benefits; typical

mobile candidate projects include: • Marketing and customer loyalty • Customer and employee self service • Content distribution – knowledge management, marketing, process documentation • Business process tasks notifications and approvals • Work order and field service automation • Inventory management • Logistics optimization • Messaging and alert notification

Page 35: Designing Enterprise Mobile Applications: Critical Success Factors

Sample Roadmap

35

Page 36: Designing Enterprise Mobile Applications: Critical Success Factors

Mobility Roadmap Timelines and Staffing

36

The investment in a mobile roadmap varies with the detail of candidate application discovery and estimation; the complexity of pilot project and the implementation of mobile platforms to support the pilot. Roadmaps, architecture, frameworks and organization skills are developed over time and the roadmap is a living document and ongoing process.

The following are options for the development of the mobility roadmap:

• Mobility current-state assessment and recommended action items • 2 Weeks • XD Architect and Mobility Architect

• Mobility roadmap and pilot project • 3-5 Weeks • XD Architect, Mobility Architect, Mobile Developer

• Mobility Standards, Architecture and Frameworks • 5-6 Weeks • XD Architect, Mobility Architect • If done with a pilot project add Mobile Developer

Page 37: Designing Enterprise Mobile Applications: Critical Success Factors

Case Studies

37

Page 38: Designing Enterprise Mobile Applications: Critical Success Factors

Progress Energy

38

Experience Design Perficient designed and developed a cross-platform experience for Progress Energy that included a new web site redesign, the conversion of traditional offline communications to an interactive iPad application and the creation of a customer mobile application optimized for iPhone and Android devices, while providing alternate experience for basic mobile browsers.

Page 39: Designing Enterprise Mobile Applications: Critical Success Factors

39

PetSmart

• PetSmart, Inc. provides products, services, and solutions for the lifetime needs of pets across North America.

• Enterprise Service Bus (ESB) Product Selection • SOA Readiness - Business Case and Technology

selection. • Established the SOA Competency Center • Created SOA Standards • Developed the SOA Project Roadmap • Implementation of "The Information Bus" project

– Implemented a real-time, event driven ESB• Implementation of project "ASTRO" - real-time

integration among enterprise applications • Sales Process Enhancement Project - real-time

POS data• Implementation of Demand Planning Integration • Establishment of PetSmart’s B2B gateway • Design and development of Carrier Notifications -

improve freight visibility• Enabled PetSmart vision for a mufti-channel

strategy