The document discusses options for modernizing legacy line-of-business applications when planning a migration to Office 365. It outlines initial questions to consider about existing applications and reasons for modernization. Major modernization options include replacing server-side code with SharePoint Framework web parts using client-side code only, provider-hosted add-ins separating the user interface from backend logic, or hosting the application fully in Azure to take advantage of its services. Azure applications can integrate with Office 365 features like SharePoint while gaining scalability, availability and easier maintenance. The document emphasizes that modernizing applications should be considered when migrating to Office 365 or wanting different access methods like mobile apps.
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
App modernization-What you need to know before planning a migration to office 365
1. App Modernization
What You Need to Know Before
Planning a Migration to Office 365
Oliver Wirkus (MVP)
Sr. Consultant at DevFacto
Oliver.Wirkus@devfacto.com
Calgary, Nov. 2nd, 2019
3. INITIAL QUESTIONS
Are you using custom Line-of-Business application in your organization?
Are you using custom LOB applications?
Were those LOB applications built more than 5 years ago?
Are those LOB applications crucial for your business?
When did you add new functionality to at least one of those business
application?
4. APP MODERNIZATION – THE WHY?
What are the reason why YOU should think about App Modernization?
Improve UX and
efficiency of a Legacy
LOB application
Modern functionality
(like AI) intended to be
added
Improve LOB
application security and
thread protection
Legacy LOB
application needs
additional
functionality
Planning a migration to
Office 365
Reduce efforts for
maintaining a Legacy
LOB application
5. APP MODERNIZATION – THE OPTIONS
Gartner’s 5 ‘R’s - Five Ways to Migrate Applications to the Cloud
Reference: http://www.gartner.com/newsroom/id/1684114
Retire
TCO is
greater
than
Business
Value
Replace
Replace
with off-
the-shelf,
SaaS
solution
Retain
App still
provides
value, and
business
logic is
still
applicable
Rehost
App still
provides
value, but
expensive
to run
Re-envision
App still
provides
value, but
cannot be
easily
migrated
6. DEVELOPMENT PARADIGM CHANGES
The way we developed custom application changed dramatically!
Full Trust Code
Partial Trust Code
App Model
SharePoint Framework
2001
SharePoint
Portal Server 2001
2003
SharePoint
Portal Server 2003
2006
SharePoint
Server 2007
2009
SharePoint
Server 2010
2012
SharePoint
Server 2013
2016
SharePoint
Server 2016
2019
SharePoint
Server 2019
Server-side code Client-side code
7. WHY IS THIS AFFECTING YOU?
Are you planning for a migration to Office 365?
Business
Application
deployed to
SharePoint on-
premises?
Business
Application
developed for
older versions
of SharePoint?
8. WHAT IS WRONG WITH SERVERSIDE CODE?
There is nothing wrong with server-side code, but ….
Executes on the SharePoint server directly
Has access to the complete SharePoint API
Code can be impersonated
Security risks possible / Requires ‘Full Trust’
Hard to maintain
Can have negative performance impact
Can cause trouble when SharePoint gets updated/upgraded
Downtime when solution is updated
Troubleshooting can get very complicated
Not available in Office 365
9. REPLACING SERVER-SIDE CODE
These are the options to replace server-side code
Business
Application
using Server-
side code
SharePoint-framework Web Part using client-side
code only
Provider-hosted Add-in using client-side code for
UI/UX and (external) Server-side code for Business
Logic
Azure-hosted application using Azure infrastructure
and Azure services (PaaS), separate business-logic
from user-interface
10. SHAREPOINT FRAMEWORK SPFX
Utilize an establish client-side code framework to rebuild your applications
Lightweight development environment
Script-code only
Requires strict coding guidelines
Limited functionality
Centered around SharePoint components
Code runs under permissions of current
user (no impersonation)
Great integration with modern sites (like
communication sites)
11. PROVIDER-HOSTED ADD-IN
Host business logic and user-interface on different environments
Requires 2 elements: UI and business logic
UI solution deployed to SharePoint, using
Script languages only
Logic solution deployed to ‘cloud’ using C#
or other supported language
Challenging development environment
Skilled developers needed
Capable of handling multiple clients
Updates to the logic solution do not affect
the UI solution within SharePoint
12. PROVIDER-HOSTED ADD-IN
Host business logic and user-interface on different environments
SharePoint
Host Web
External Provider
SharePoint Page Provider
hosted
App
Data
Business
Logic
CSOM, REST
13. AZURE-HOSTED APPLICATION
Host the business logic in Azure to take advantage of the many services
Different approach – not relying on
SharePoint Add-in framework
Business application is hosted in Azure
Business application can use diversified
services provided by Azure
Azure is providing different approaches to
create a Business Application
Depending on the approach there can be a
separate UI solution in SharePoint
Business Applications are reusable and not
tied to SharePoint anymore
14. AZURE-HOSTED APPLICATION
These are the options to replace server-side code
Web
Apps
Mobile
Apps
API
Management
API
Apps
Logic
Apps
Notification
Hubs
Content Delivery
Network (CDN)
Media
Services
HDInsight Machine
Learning
Stream
Analytics
Data
Factory
Event
Hubs
Mobile
Engagement
Biztalk
Services
Hybrid
Connections
Service
Bus
Storage
Queues
Backup
StorSimple
Site
Recovery
Import/Export
SQL
Database
DocumentDB
Redis
Cache
Search
Tables
SQL Data
Warehouse
Azure AD
Connect Health
AD Privileged
Identity Mngt
Operational
Insights
Cloud
Services
Batch Remote App
Service
Fabric Visual Studio
Application
Insights
Azure SDK
Team Project
Active
Directory
Multi-Factor
Authentication
Automation
Portal
Key Vault
Store /
Marketplace
VM Image Gallery
& VM Depot
SECURITY &
MANAGEMENT PLATFORM SERVICES HYBRID
OPERATIONS
15. AZURE-HOSTED APPLICATION
Different approaches for different requirements
Server-less Web/Mobile
Azure functions
Event-driven compute
application components
• IoT events
• Games events
• Operational events
App service
Web and mobile fully
managed applications. No
infrastructure management
• Ecommerce sites
• LoB sites
• Supporting websites
Microservices
Service fabric
Massive-scale 24*7 available
applications with agile multi-
components
• Multi-part live games
• Queuing systems
• Large-scale sites/LoB
Existing frameworks
Cloud services
Applications focused on the
framework / runtime /
application model
• Existing enterprise/LoB
apps
• New scale-out with
existing components
16. POWER-FULL AZURE APPLICATIONS
Why are Azure applications so powerful when used with Office 365?
Windows Azure
Business
Application
Azure
Infrastructure
Azure
Services
Azure
Storage
SharePoint (Office 365)
Business
Application
UI
External Systems
Mobile Application
(Power Apps, Xamarin)
Power BI Reporting
Flow
SharePoint
elements
17. SUMMARY
The main take-aways of my session
If you are using custom Business Applications and think about moving
to Office 365 -> Your applications probably need a modernization
If you want different frontends (like SharePoint or mobile Apps) -> Your
applications probably need a modernization
If you want to utilize the power, high-availability and effortless
maintenance of Azure -> You applications probably need a
modernization
18. TIME FOR QUESTIONS
Thank you very much for attending me session
Oliver Wirkus (MVP)
Sr. Consultant at DevFacto
Oliver.Wirkus@devfacto.com