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