You are previewing Enterprise Class Mobile Application Development: A Complete Lifecycle Approach for Producing Mobile Apps.
O'Reilly logo
Enterprise Class Mobile Application Development: A Complete Lifecycle Approach for Producing Mobile Apps

Book Description

Build and Deploy Mobile Business Apps That Smoothly Integrate with Enterprise IT
For today’s enterprises, mobile apps can have a truly transformational impact. However, to maximize their value, you can’t build them in isolation. Your new mobile apps must reflect the revolutionary mobile paradigm and delight today’s mobile users--but they must also integrate smoothly with existing systems and leverage previous generations of IT investment.

In this guide, a team of IBM’s leading experts show how to meet all these goals. Drawing on extensive experience with pioneering enterprise clients, they cover every facet of planning, building, integrating, and deploying mobile apps in large-scale production environments. You’ll find proven advice and best practices for architecture, cloud integration, security, user experience, coding, testing, and much more.

Each chapter can stand alone to help you solve specific real-world problems. Together, they help you establish a flow of DevOps activities and lifecycle processes fully optimized for enterprise mobility.

Coverage Includes

  • How mobile applications motivate business innovation--and why they present unique challenges for enterprise IT

  • Understanding how the enterprise mobile app lifecycle resembles and differs from conventional development

  • Designing mobile business apps that delight their users

  • Choosing more effective mobile development techniques, languages, and architectural approaches

  • Optimizing linkages between mobile front-ends and enterprise back-end systems

  • Testing for complex, constantly changing device environments

  • Practicing DevOps to accelerate and increase value, from ideation to delivery

  • Table of Contents

    1. About This E-Book
    2. Title Page
    3. Copyright Page
    4. Dedication Page
    5. Contents
    6. Preface
      1. About This Book
      2. The IBM® developerWorks® Series
      3. How This Book Is Organized
    7. Acknowledgments
    8. About the Authors
    9. Chapter 1. Mobile: The New Generation of Information Technology
      1. Why Businesses Are Adopting Mobile Applications
      2. Driving Business Process Innovation
      3. A Formula for Designing Engaging Systems
      4. Unique Challenges for Development of Engaging Applications
        1. Form Factors and User Input Technology
        2. Usability and User Interaction Design
        3. Choice of Implementation Technology
        4. Mobile Application Build and Delivery
        5. Testing
      5. Enterprise Mobile Development
      6. Summary
    10. Chapter 2. Mobile Development Lifecycle Overview
      1. Introduction
      2. DevOps and Enterprise Mobile Development Lifecycle Overview
        1. A DevOps Approach Is Core to Delivering Client Value
      3. One Essential View of DevOps: The Mobile Developer Perspective
      4. Sprint 1: “Hello World”—Initial Operating Capability and Prototype
        1. Design—The Big Picture
        2. Integrate: Enterprise Services and Data
        3. Test: Manual Testing Is Better than No Testing
        4. Test: Simulate/Preview
      5. Sprint 2: “Hello DevOps!”—Improve Developer Productivity
        1. Develop: Productivity with Wizards and Mobile Platform Portability
        2. Instrument: Quality Assurance and Testing “In the Wild”
        3. Test: Code-Centric and Unit Testing
        4. Deploy: Automate Your Deployment Pipeline
      6. Sprint 3: “Software Delivery Is a Team Sport!”
        1. Develop: Agile Planning
        2. Develop: Work Items (Defects, Enhancement Requests)
        3. Develop: Application Lifecycle Management (ALM) Imperatives
        4. Test: Improving Manual, Automating User Interface Tests, and Test Data Management
      7. Sprint 4: “Ruggedized for the App Store”
        1. Test: “FURPS” and Virtualization
        2. Scan and Certify
        3. Obtain Insight: Application Quality Feedback and Analytics
      8. Sprint 5: “Optimizing Enterprise DevOps”
        1. Integrate: Enterprise Developer Integration
        2. Instrument and Obtain Insight: Customer Experience (CX) and Campaign Management
        3. Obtain (App Store) Insight: Mobile Quality Assurance
        4. Manage: Application Versions, Updates, and More!
      9. Summary
    11. Chapter 3. Design Quality Is Crucial, Make the Investment Up-Front
      1. Overview
        1. Why Is Design Important?
      2. Scope of Design in Mobile App Development
        1. Design Research
        2. Information Architecture
        3. Interaction Design
        4. Visual Design
      3. Overarching Design Principles and Guidelines
        1. Discover, Try, and Buy
        2. Get Started
        3. Everyday Use
        4. Manage and Upgrade
        5. Leverage and Extend
        6. Get Support
      4. Designing for Enterprise Mobile
      5. Designing the IBM Way
        1. Core Practices
      6. Some Design Methods
        1. Understand
        2. Explore
        3. Prototype
        4. Evaluate
      7. Summary
    12. Chapter 4. Mobile Application Development
      1. The Mobile App
        1. Factors for Choosing
        2. How Should I Build Applications?
      2. The Case for Cloud
      3. Mobile App Architectural Components
        1. Mobile Device Components
        2. Public Network Components
        3. Provider Cloud Service Components
        4. Enterprise Network Components
        5. Complete Picture
      4. Mobile App Flow
      5. Mobile App Deployment Considerations
      6. Summary
    13. Chapter 5. Mobile Enterprise—Beyond the Mobile End-Point
      1. Building Mobile Apps Powered by Enterprise Backend
      2. Connecting the Mobile App with Enterprise IT Services and Data
      3. Types of IT Backends to Integrate from Mobile Apps
      4. Type of API Protocols
      5. Security Integration
      6. IBM DataPower XG45 Security Gateway
      7. Mobile Devices Security Considerations
        1. Loss and Theft
        2. Malware
        3. Phishing
      8. Understanding the Worklight Security Integration Framework
      9. Secured Data Store and Synchronization
      10. Enterprise Mobile Application Management and Device Management
        1. Special Challenges in Managing Mobile Applications and Devices
        2. Example Product: IBM MaaS360
      11. Architectural Choices for Secured Enterprise Connectivity
      12. Summary
    14. Chapter 6. A Comprehensive Approach to Testing of Mobile Applications
      1. Why Is Quality Essential?
      2. When Should Quality Be in Focus?
      3. What Is the Cost of Quality?
      4. Automated versus Manual Testing
      5. Preproduction versus Postrelease
      6. Automated Mobile App Testing Considerations
        1. Test Devices
        2. Emulators and Simulators
        3. Device Clouds
        4. Crowd-Sourced Testing
        5. Using Service Virtualization to Isolate Mobile Code
        6. Mobile Test Automation Techniques
        7. Mobile App Programmatic Instrumentation
        8. Random Generated Mobile Tests
        9. Image Recognition Automated Mobile Tests
        10. Making Manual Testing More Effective
        11. Crash Data Capture and Analysis
        12. Performance Testing
        13. Load and Stress Performance Testing
        14. Mobile Client Resource Metrics
        15. User Sentiment as a Measure of Quality
      7. Summary
    15. Chapter 7. Best Practices of Mobile DevOps
      1. What Is DevOps?
      2. Some Definitions
      3. The IBM DevOps Solution
        1. Plan and Measure
        2. Develop and Test
        3. Release and Deploy
        4. Monitor and Optimize
      4. DevOps Best Practices
        1. Plan and Track Everything
        2. Dashboard Everything
        3. Version Everything
        4. Automate Everything
        5. Test Everything
        6. Monitor Everything
      5. Mobile DevOps Challenges
        1. Fragmented Platforms
        2. Mobile Applications Front a Complex Enterprise Back Office
        3. App Stores Add Additional Asynchronous Deployment Step
        4. Security, Code Signing, and Keystores
        5. Testing
      6. Mobile DevOps Best Practices
        1. Practice Continuous Integration/Delivery and Automate Builds and Deployments
        2. Test Each Build
        3. Simulate Backend Services to Expand Testing Environment Availability
        4. Monitor Deployed Application and Backend Server Performance
        5. Centralize Governance of Provisioning Profiles, Certificates, and API Keys
        6. Use a Private App Store to Test Deployment Devices
        7. Convert Real User Feedback to Enhancements
      7. Summary
    16. Chapter 8. Conclusions and Further Readings
      1. Conclusions
      2. Further Readings
        1. Chapter 2: Development Lifecycle
        2. Chapter 3: Design Related
        3. Chapter 4: Mobile Development
        4. Chapter 5: Mobile Server
        5. Chapter 6: Mobile Quality
        6. Chapter 7: Mobile DevOps
    17. Index