Custom mobile workforce app

Azure Active Directory
API Management
App Service

Solution ideas

This article is a solution idea. If you'd like us to expand the content with more information, such as potential use cases, alternative services, implementation considerations, or pricing guidance, let us know by providing GitHub feedback.

This mobile workforce app architecture uses Active Directory to secure corporate data from an SAP back end system, delivered to devices via Azure App Service API Management.

A Xamarin.Forms client app, with support for iOS, Android, and Windows, works offline and enables field engineers to view and edit the jobs assigned to them.

The app is built with Visual Studio (PC or Mac) and Xamarin, sharing C# code across Android, iOS, and Windows without compromising user experience. Visual Studio App Center is used to automate builds and tests and distribute to beta testers and app stores, while also providing usage monitoring and analytics with App Insights.

Potential use cases

This solution is optimized for employees that work from the field and don't regularly come into the office.

  • Technicians (telecommunications)
  • Engineers
  • Sales
  • Construction (facilities and real estate)

Architecture

Architecture diagram Download an SVG of this architecture.

Dataflow

  1. Create the app using Visual Studio and Xamarin.
  2. Add the Azure App Service Mobile Apps back end service to the app solution.
  3. Implement authentication through Azure Active Directory.
  4. Connect to business data in external systems like SAP using Azure API Management.
  5. Implement offline sync to make the mobile app functional without a network connection.
  6. Build and test the app through Visual Studio App Center and publish it.
  7. Use Application Insights to monitor the App Service.
  8. Deploy the app to devices using App Center.

Components

  • Build the web front end, mobile apps, and back end services with C# in Visual Studio 2017 or Visual Studio for Mac.
  • Xamarin: Create mobile apps for iOS and Android using C# and Azure SDKs.
  • Visual Studio App Center: App Center enables a continuous integration and deployment workflow by pulling code from BitBucket, GitHub, and Visual Studio Team Services.
  • An App Service web app can host a customer-facing web app and a service that is used by both the web and mobile client.
  • Application Insights (via Azure Monitor): Detect issues, diagnose crashes, and track usage in your web app with Application Insights. Make informed decisions throughout the development lifecycle.
  • API Management: Publish APIs to external, partner, and employee developers securely and at scale.
  • Azure Active Directory is used for secure, enterprise-grade authentication.

Next steps