Lessons Learned
Phil
Microsoft Corporation
Hand
Good practices for Dynamics 365
mobile implementations
Lessons Learned: Good practices for
Dynamics 365 mobile implementations
This session will focus on the full implementation
lifecycle for both tablets and phones covering:
• Users want a mobile solution but what does that
mean?
• Typical up-front challenges and considerations
• Designing for mobile users
• Mobile offline architectural overview and how to get
started
• Understanding security options
• Common recommendations for improving the user
experience
Session Objectives
• Establish an understanding of the key aspects you
need to consider before commencing on your mobile
implementation
• Recommendations based on real World experiences
to avoid common challenges
• Practical advice that will support user adoption
• Reference resources to further your learning
A real World scenario
“We need to define MVP scope.
We need everything the current
system does….
…. Oh - and also mobile”
“Absolutely – we must have mobile”
“Yes!
Mobile is a
must!”
“Mobile!”
“Mobile!”
“Mobile!”
“Mobile!”
“Mobile!”
“Mobile!”
“Mobile!”
“Mobile!”
“Mobile!”
A real World scenario
“I need access to my
customer information
wherever I am”
“Yes!
And also their full order
history ”
“Not to mention we
need all of this offline”
“Offline!”
“Offline!”
“Offline!”
“Offline!”
“Offline!”
“Offline!”
“Offline!”
“Offline!”
“Everything
and Offline!”
But what does mobile mean?
What is the context?
One size does not fit
all
• Right information
• At the right time
• In the right context
• To the right user
• On the right device
Information needs will
likely transition
through a “day in the
life” cycle
Important to consider
context(s) in design
Who will use while mobile and how will
they use?
Important to focus on role based tasks needing to be
accomplished while mobile
• Account Manager
complete visit report, schedule next meeting
• Salesperson
update opportunity status, take order, capture new contact
• Field Service Agent
notify of arrival, record parts used, verify next job
#1 mistake – Mobile must do everything*
*Note: Rarely are there mobile users who never touch the web client. Dynamics 365
for tablets and phones should be positioned as a companion application
Perhaps they only require the
App for Outlook?
Revisiting the real
World scenario
As a salesperson, I need to track
outlook contacts and emails from
them
Typical challenges and considerations
Using CRM to front an ERP data model
The one-size fits all approach
Enabling mobile with no mobile specific design
Limited focus on offline needs and use cases
Testing and UAT for mobile scenarios
Security as an afterthought
Planning mobile deployments
• Decide which users will have mobile access and what
they will use
• Configure Dynamics 365 for content accessed by
mobile users
• Define and implement mobile security & offline
features
• Communicate with users regarding device support
and how to get training
• Enable users by Security Role
• Invest in Mobile CoE at Partners and Mobile
Champion at customers – assign them to test each
Managing device OS upgrade
• We aspire to update mobile App shortly following the
release of a new mobile OS
• Rushing to upgrade device OS, rarely but can lead to
mobile App issues
• With users choosing and bringing their own devices
in many cases this can be challenging
• Consider proactive communication so users
understand the implication of early OS upgrades
Configuration
Feature awareness
https://www.microsoft.com/en-us/dynamics/crm-customer-
center/dynamics-365-for-phones-and-tablets-user-s-guide.aspx
Understand the latest
features for your
version of
CRM/Dynamics365
Dynamics 365 for phones and tablets
Mobile UI Refresh
• landing page with Relation Insights
(online only)
• Stacked Components
• Native device integration
• Customer feedback (mashups, task
flows, inline edit preview, geocoding)
Create/Edit additional entities
View multiple dashboards
Offline client SDK
Offline web resources (tablet)
Can use Portable Business Rules
Can use Server-side triggered events when Online
Workflows, Plugins are primary source of interactive
data design
Can use most of SDK specific Xrm.* code
Can tell difference between Phone|Tablet|Web
clients in code
Can’t change forms or ribbons, collapse tabs
Can’t cause navigate events like close or popup
prompt or alerts
…Also understand the gaps..
Maps
Yammer
Activity Feeds
SharePoint document libraries
Theming
Reports
Advanced Find
Dialogs
Homepage: default dashboard
Default Dashboards for Home is “Sales Dashboard”
Check Dashboard Permissions – must have same
user roles as enabled for mobile access
Recommendation – rename it
“Mobile - Sales Dashboard”
“Mobile - Home Page Dashboard”
that way it’s clear this is your mobile home page
for anyone customizing the system later
Deleted it a long time ago?
Import from a trial system or another instance
where you do have one
Navigation
Follows Site Map from Web
Entities shown in order seen in Site
Map
Only one will show
Only Entities used in Site Map are
shown, can hide lookup entities from
Navigation
Home, Drafts & Dashboards always
on top
Entity tile colours
Custom icons are not available on
phones or tablets
The tile colour is enabled and is very
useful for distinguishing entity types
Relationship
names matter
Ensure you set a custom label for the
relationship name
Views - tablet
Tablet doesn't need much tailoring
for views
Can change columns widths
Can re-sort any single column Asc &
Desc
No record icons or images in entity
list views, only on dashboards
Editable Grid works on Tablet!
Views - phone
Carefully choose the first few
columns in views
No option to sort within the app
Icon usage reduces available columns
for 4 to 3
Views - lookups
App Lookup views are shared with
the Web Client
First 3 columns in view are displayed
Important to consider how users will
identify records
Still possible to search by “Find”
columns but can be difficult to
distinguish in results
No Advanced Find means users can
only see what is displayed and can’t
change views
Note: check lookups work well across
phones and tablets throughout
Form layout and flow
Web app
https://technet.microsoft.com/en-us/library/dn531159.aspx
https://technet.microsoft.com/en-us/library/dn531176.aspx
Tablet app
Phone app
Form design tips
Consider the order and flow of tabs
Consider the order of sections vs web side-by-side layout
No section style options for field labels or multi-column layout
Phone Client
• Hide Fields, Sections and Tabs from Phone app (Clear the Available on phone check
box)
• No UI Web Resources
Limit of 5 tabs, 75 fields and 10 subgrids
Note: Hidden fields in tabs are counted
Design Assumption: Loaded in order for business logic to show/hide them
Recommendation: If they are not required on phone clear the Available on phone
checkbox
No tablet specific toggle
Familiarity with Custom Control
Framework
https://technet.microsoft.com/en-
Improve start-up experience for users
Prepare client customizations
Form and view errors
Verify that other entities shown on lookups and grids in forms are
enabled for mobile access
Verify that Views do not contain role based secured content or lookup
fields to entities that are not enabled for mobile access
If you need to see full error details:
Enable Logging on Windows and Android
Download the Log to see actual error
Mobile Offline
Mobile offline journey
Microsoft Dynamics CRM 2013
Offline cache
 Cache previously viewed
records
o Read-only
o No CUD
o User initiated
o Stale cached data
Microsoft Dynamics CRM 2015
Offline drafts
 Create offline records
 Cache previously viewed
records
o No update/delete
o Manual commit
o No lookup
o No commanding
o User initiated
o Stale cached data
Microsoft Dynamics CRM 2016
Rich offline support
 Create, update, delete
 Profile-based data filtering
 Offline commands
 PBL and BPF
 Automatic actions playback
 Background Sync
 Better provisioning Sync status
o CRM/Dynamics 365 Online only
o Assumes occasionally
disconnected modes
Mobile Offline – intended use
Enabling Mobile Offline on everything for everyone is
highly discouraged
Enabling mobile offline just for temporary internet loss
is inappropriate
Plan & Understand the real world use cases for your
users and when true offline work needs to be enabled
Be realistic and honest about wants vs needs
Disconnected cache (read-only) – no
offline edit
Offline Create as Draft
Lookup fields locked
Required fields that are Lookup
fields can cause an issue
Cache – issues &
considerations
Users can’t view record if not cached
while online
• Dashboard: Add List of Accounts
& Contacts from today’s Job Order
list
ensures they are cached on open for
today’s work while I am online in the
morning
• Cases for those Accounts are on
grids on the Form, so need to
open each Account to get latest
otherwise a blank or partial list
will appear
(UI will notify when partial list)
• Education & Training
Mobile Offline
Getting Setup
Enable Mobile Offline on an Entity
Configure Org data filter for Entity
Select a Default Mobile Offline Profile
Configure Mobile Offline Profile
Assign Users to Mobile Offline Profile
Start Provision process in Mobile
Offline Configuration in your CRM
Organization
Consider a phased roll out by regions
or teams
Mobile App
Initial sync in progress:
Red / Not Ready for Offline
Initial sync is completed:
Green / Ready for Offline
Mode Behaviors
Online • Create/Update/Delete directly against CRM – Immediate visibility
• Record not available offline immediately, sync with offline database in normal sync cycle
• Keeps track of the last record created
Offline • Stored in the offline database
• Sync the records to CRM when go online
• Plug-ins and processes will not execute offline, but it will replay when go back online
Mobile Security
User authentication &
authorization
Device approvals
Application approvals
Policies to govern data
sharing
Data LeakageAccess Control
Tim has seen lots of
apps in the stores for
accessing CRM, but he
can’t evaluate them all…
he needs to have a
trusted app, and allow
only it through the
firewall
Tim is used to being able
to enforce corporate and
administrative policies
on company owned
devices… but employees
just won’t carry around 2
devices
Common Mobile Security Challenges
Mobile security strategies
Mobile Device Management
(MDM)
Device level protection
using a service
Handles full device,
including business &
personal apps &
information
Mobile Application Management
(MAM)
Application level
protection
Separates business apps &
information from personal
Allows for app specific
scenario handling
Multi-Factor
Authentication
(MFA)
 Using MFA can make
client authentication
more secure
 CRM On-premises
support MFA using
Windows Server 2012
R2
 Dynamics 365 CRM On-
line Azure AD Premium
provides MFA
 Thoroughly test actual
deployed devices
and MFA technologies
Conditional Access
Generally Available
Device based conditional access
policy support for Intune MDM
Provides Multi-factor Authentication
at the service level
Applications
Network Location
Devices
User attributes
Conditional
access
control
Cerificate based
authentication
Generally Available
Mobile Management Enhancement
with ADAL
Users can authenticate with
certificate on the device
Enhances security while simplifying
access for business users
Personal Data
Corporate
Personal
Corporate Data
MDM
(Intune or 3rd
party)
The MAM Service on a managed device
Corporate
Personal
Personal Data
Corporate
Data
The MAM Service on an unmanaged BYOD device
Mobile Application
Management with
Microsoft Intune
Managing App-Layer Protection
Policies allow IT configuration
Deployable per user, per app
Enabling Protection for Apps
Built into Microsoft Office &
Productivity apps
Support for App Store and LOB
applications
Separating Corporate and Personal
Focusing protection on Corporate
apps, data and now identities
Manage the corporate data in the app
versus managing the entire device
Personal use is left untouched and
unhindered
Corporate
Personal
Personal Data
Corporate Data
Scenario Solutions
I do not want users accessing CRM data from
enrolled devices
Intune MDM with Conditional Access
I want to protect CRM data but I don’t want to
employees’ personal device
Intune MAM or Good for iOS
I am using a 3rd party MDM but want my CRM
protected
Intune MAM or Good for iOS
My employees use Windows 10, how do I
data
Windows Information Protection (WIP) - part of
Anniversary Update release
When my employees connect with CRM, I want
a multifactor authentication. I do not want to
MAM solution
Azure feature of Conditional Access
I want to push certs to my user devices and
valid certs should be able to connect to CRM
Certificate based Authentication
Common Scenarios
In Review - Session Objectives
 Establish an understanding of the key aspects you
need to consider before commencing on your mobile
implementation
 Recommendations based on real World experiences
to avoid common challenges
 Practical advice that will support user adoption
 Reference resources to further your learning
Questions?
Complete prior to the closing session to be included in the survey drawing!
LG TONE PLATINUM Wireless Stereo Headset
WEBSITE
Phil Hand, Microsoft Corporation
FILL OUT SURVEY THROUGH THE MOBILE APP
Thank you to our sponsors!

Lessons learned good practices for dynamics 365 mobile implementations

  • 1.
    Lessons Learned Phil Microsoft Corporation Hand Goodpractices for Dynamics 365 mobile implementations
  • 2.
    Lessons Learned: Goodpractices for Dynamics 365 mobile implementations This session will focus on the full implementation lifecycle for both tablets and phones covering: • Users want a mobile solution but what does that mean? • Typical up-front challenges and considerations • Designing for mobile users • Mobile offline architectural overview and how to get started • Understanding security options • Common recommendations for improving the user experience
  • 3.
    Session Objectives • Establishan understanding of the key aspects you need to consider before commencing on your mobile implementation • Recommendations based on real World experiences to avoid common challenges • Practical advice that will support user adoption • Reference resources to further your learning
  • 4.
    A real Worldscenario “We need to define MVP scope. We need everything the current system does…. …. Oh - and also mobile” “Absolutely – we must have mobile” “Yes! Mobile is a must!” “Mobile!” “Mobile!” “Mobile!” “Mobile!” “Mobile!” “Mobile!” “Mobile!” “Mobile!” “Mobile!”
  • 5.
    A real Worldscenario “I need access to my customer information wherever I am” “Yes! And also their full order history ” “Not to mention we need all of this offline” “Offline!” “Offline!” “Offline!” “Offline!” “Offline!” “Offline!” “Offline!” “Offline!” “Everything and Offline!”
  • 6.
    But what doesmobile mean? What is the context? One size does not fit all • Right information • At the right time • In the right context • To the right user • On the right device Information needs will likely transition through a “day in the life” cycle Important to consider context(s) in design
  • 7.
    Who will usewhile mobile and how will they use? Important to focus on role based tasks needing to be accomplished while mobile • Account Manager complete visit report, schedule next meeting • Salesperson update opportunity status, take order, capture new contact • Field Service Agent notify of arrival, record parts used, verify next job #1 mistake – Mobile must do everything* *Note: Rarely are there mobile users who never touch the web client. Dynamics 365 for tablets and phones should be positioned as a companion application
  • 8.
    Perhaps they onlyrequire the App for Outlook? Revisiting the real World scenario As a salesperson, I need to track outlook contacts and emails from them
  • 9.
    Typical challenges andconsiderations Using CRM to front an ERP data model The one-size fits all approach Enabling mobile with no mobile specific design Limited focus on offline needs and use cases Testing and UAT for mobile scenarios Security as an afterthought
  • 10.
    Planning mobile deployments •Decide which users will have mobile access and what they will use • Configure Dynamics 365 for content accessed by mobile users • Define and implement mobile security & offline features • Communicate with users regarding device support and how to get training • Enable users by Security Role • Invest in Mobile CoE at Partners and Mobile Champion at customers – assign them to test each
  • 11.
    Managing device OSupgrade • We aspire to update mobile App shortly following the release of a new mobile OS • Rushing to upgrade device OS, rarely but can lead to mobile App issues • With users choosing and bringing their own devices in many cases this can be challenging • Consider proactive communication so users understand the implication of early OS upgrades
  • 12.
  • 13.
    Understand the latest featuresfor your version of CRM/Dynamics365 Dynamics 365 for phones and tablets Mobile UI Refresh • landing page with Relation Insights (online only) • Stacked Components • Native device integration • Customer feedback (mashups, task flows, inline edit preview, geocoding) Create/Edit additional entities View multiple dashboards Offline client SDK Offline web resources (tablet) Can use Portable Business Rules Can use Server-side triggered events when Online Workflows, Plugins are primary source of interactive data design Can use most of SDK specific Xrm.* code Can tell difference between Phone|Tablet|Web clients in code Can’t change forms or ribbons, collapse tabs Can’t cause navigate events like close or popup prompt or alerts
  • 14.
    …Also understand thegaps.. Maps Yammer Activity Feeds SharePoint document libraries Theming Reports Advanced Find Dialogs
  • 15.
    Homepage: default dashboard DefaultDashboards for Home is “Sales Dashboard” Check Dashboard Permissions – must have same user roles as enabled for mobile access Recommendation – rename it “Mobile - Sales Dashboard” “Mobile - Home Page Dashboard” that way it’s clear this is your mobile home page for anyone customizing the system later Deleted it a long time ago? Import from a trial system or another instance where you do have one
  • 16.
    Navigation Follows Site Mapfrom Web Entities shown in order seen in Site Map Only one will show Only Entities used in Site Map are shown, can hide lookup entities from Navigation Home, Drafts & Dashboards always on top
  • 17.
    Entity tile colours Customicons are not available on phones or tablets The tile colour is enabled and is very useful for distinguishing entity types
  • 18.
    Relationship names matter Ensure youset a custom label for the relationship name
  • 19.
    Views - tablet Tabletdoesn't need much tailoring for views Can change columns widths Can re-sort any single column Asc & Desc No record icons or images in entity list views, only on dashboards Editable Grid works on Tablet!
  • 20.
    Views - phone Carefullychoose the first few columns in views No option to sort within the app Icon usage reduces available columns for 4 to 3
  • 21.
    Views - lookups AppLookup views are shared with the Web Client First 3 columns in view are displayed Important to consider how users will identify records Still possible to search by “Find” columns but can be difficult to distinguish in results No Advanced Find means users can only see what is displayed and can’t change views Note: check lookups work well across phones and tablets throughout
  • 22.
    Form layout andflow Web app https://technet.microsoft.com/en-us/library/dn531159.aspx https://technet.microsoft.com/en-us/library/dn531176.aspx Tablet app Phone app
  • 23.
    Form design tips Considerthe order and flow of tabs Consider the order of sections vs web side-by-side layout No section style options for field labels or multi-column layout Phone Client • Hide Fields, Sections and Tabs from Phone app (Clear the Available on phone check box) • No UI Web Resources Limit of 5 tabs, 75 fields and 10 subgrids Note: Hidden fields in tabs are counted Design Assumption: Loaded in order for business logic to show/hide them Recommendation: If they are not required on phone clear the Available on phone checkbox No tablet specific toggle
  • 24.
    Familiarity with CustomControl Framework https://technet.microsoft.com/en-
  • 25.
    Improve start-up experiencefor users Prepare client customizations
  • 26.
    Form and viewerrors Verify that other entities shown on lookups and grids in forms are enabled for mobile access Verify that Views do not contain role based secured content or lookup fields to entities that are not enabled for mobile access If you need to see full error details: Enable Logging on Windows and Android Download the Log to see actual error
  • 27.
  • 28.
    Mobile offline journey MicrosoftDynamics CRM 2013 Offline cache  Cache previously viewed records o Read-only o No CUD o User initiated o Stale cached data Microsoft Dynamics CRM 2015 Offline drafts  Create offline records  Cache previously viewed records o No update/delete o Manual commit o No lookup o No commanding o User initiated o Stale cached data Microsoft Dynamics CRM 2016 Rich offline support  Create, update, delete  Profile-based data filtering  Offline commands  PBL and BPF  Automatic actions playback  Background Sync  Better provisioning Sync status o CRM/Dynamics 365 Online only o Assumes occasionally disconnected modes
  • 29.
    Mobile Offline –intended use Enabling Mobile Offline on everything for everyone is highly discouraged Enabling mobile offline just for temporary internet loss is inappropriate Plan & Understand the real world use cases for your users and when true offline work needs to be enabled Be realistic and honest about wants vs needs
  • 30.
    Disconnected cache (read-only)– no offline edit Offline Create as Draft Lookup fields locked Required fields that are Lookup fields can cause an issue
  • 31.
    Cache – issues& considerations Users can’t view record if not cached while online • Dashboard: Add List of Accounts & Contacts from today’s Job Order list ensures they are cached on open for today’s work while I am online in the morning • Cases for those Accounts are on grids on the Form, so need to open each Account to get latest otherwise a blank or partial list will appear (UI will notify when partial list) • Education & Training
  • 32.
    Mobile Offline Getting Setup EnableMobile Offline on an Entity Configure Org data filter for Entity Select a Default Mobile Offline Profile Configure Mobile Offline Profile Assign Users to Mobile Offline Profile Start Provision process in Mobile Offline Configuration in your CRM Organization Consider a phased roll out by regions or teams
  • 33.
    Mobile App Initial syncin progress: Red / Not Ready for Offline Initial sync is completed: Green / Ready for Offline Mode Behaviors Online • Create/Update/Delete directly against CRM – Immediate visibility • Record not available offline immediately, sync with offline database in normal sync cycle • Keeps track of the last record created Offline • Stored in the offline database • Sync the records to CRM when go online • Plug-ins and processes will not execute offline, but it will replay when go back online
  • 34.
  • 35.
    User authentication & authorization Deviceapprovals Application approvals Policies to govern data sharing Data LeakageAccess Control Tim has seen lots of apps in the stores for accessing CRM, but he can’t evaluate them all… he needs to have a trusted app, and allow only it through the firewall Tim is used to being able to enforce corporate and administrative policies on company owned devices… but employees just won’t carry around 2 devices Common Mobile Security Challenges
  • 36.
    Mobile security strategies MobileDevice Management (MDM) Device level protection using a service Handles full device, including business & personal apps & information Mobile Application Management (MAM) Application level protection Separates business apps & information from personal Allows for app specific scenario handling
  • 37.
    Multi-Factor Authentication (MFA)  Using MFAcan make client authentication more secure  CRM On-premises support MFA using Windows Server 2012 R2  Dynamics 365 CRM On- line Azure AD Premium provides MFA  Thoroughly test actual deployed devices and MFA technologies
  • 38.
    Conditional Access Generally Available Devicebased conditional access policy support for Intune MDM Provides Multi-factor Authentication at the service level Applications Network Location Devices User attributes Conditional access control
  • 39.
    Cerificate based authentication Generally Available MobileManagement Enhancement with ADAL Users can authenticate with certificate on the device Enhances security while simplifying access for business users
  • 40.
    Personal Data Corporate Personal Corporate Data MDM (Intuneor 3rd party) The MAM Service on a managed device
  • 41.
  • 42.
    Mobile Application Management with MicrosoftIntune Managing App-Layer Protection Policies allow IT configuration Deployable per user, per app Enabling Protection for Apps Built into Microsoft Office & Productivity apps Support for App Store and LOB applications Separating Corporate and Personal Focusing protection on Corporate apps, data and now identities Manage the corporate data in the app versus managing the entire device Personal use is left untouched and unhindered Corporate Personal Personal Data Corporate Data
  • 43.
    Scenario Solutions I donot want users accessing CRM data from enrolled devices Intune MDM with Conditional Access I want to protect CRM data but I don’t want to employees’ personal device Intune MAM or Good for iOS I am using a 3rd party MDM but want my CRM protected Intune MAM or Good for iOS My employees use Windows 10, how do I data Windows Information Protection (WIP) - part of Anniversary Update release When my employees connect with CRM, I want a multifactor authentication. I do not want to MAM solution Azure feature of Conditional Access I want to push certs to my user devices and valid certs should be able to connect to CRM Certificate based Authentication Common Scenarios
  • 45.
    In Review -Session Objectives  Establish an understanding of the key aspects you need to consider before commencing on your mobile implementation  Recommendations based on real World experiences to avoid common challenges  Practical advice that will support user adoption  Reference resources to further your learning
  • 46.
  • 47.
    Complete prior tothe closing session to be included in the survey drawing! LG TONE PLATINUM Wireless Stereo Headset WEBSITE Phil Hand, Microsoft Corporation FILL OUT SURVEY THROUGH THE MOBILE APP
  • 48.
    Thank you toour sponsors!

Editor's Notes

  • #14 Stacked Components Reducing panorama scrolling, A birds eye view with a way to drill in experience, Focusing on user’s mobile productivity Native device integration Access Camera & Microphone directly from app Quickly capture Photos, Videos & Audio recordings Crop, compress and upload easily Scan barcodes to capture information quickly Other Customer feedback items Solution aware task flows Inline note edition and attachment preview Geocoding support
  • #39 Available to customers using Azure Active Directory Premium Allows configuring per application multi factor authentication access Allows blocking access to users not on a trusted network