Our previous post, Microsoft PowerApps: Revolutionary Potential for Office 365 Collaborative Applications, provides an overview of some reasons why we believe Microsoft’s new PowerApps tool is likely to be exceptionally popular for modern and mobile applications used in conjunction with Office 365. This post continues our PowerApps-related coverage, and explains how enterprises can overcome challenges resulting from structured content being held captive in traditional content/collaboration platforms. Liberating the structured content resources can make them far more useful, when they’re managed by more appropriate systems and more readily accessible to PowerApps and other application development and data analysis tools.
Documents and Data: A Durable Dichotomy
To understand how traditional content/collaboration platforms can become counterproductive for structured content resources, it’s useful to start with a brief review of the distinctions between documents and data.
Documents are content resources optimized for human comprehension, and are organized in terms of narrative, hierarchy, and sequence. This blog post is a document, for example, as are Word and PDF files, email messages, conversation topics and responses, and a wide variety of other types of information we use on a daily basis. SharePoint is often used as a tool for managing and sharing document repositories for enterprise domains such as sales and marketing materials.
Structured data, in contrast, represent collections of records that describe real-world things of interest, along with relationships between those things. Unlike documents, records are not organized in terms of narrative, hierarchy, or sequence; instead, there is generally one table or list for each type of business entity of interest. The record collections are ideally optimized for use by other tools, not directly for human comprehension (although records can be viewed and edited in forms). A sales tracking record, for example, is likely to capture customer attributes such as the customer name and location along with the potential product of interest and the identity of the salesperson assigned to the customer. These records are most effectively managed in a database management system (DBMS) rather than a content/collaboration platform, as the records include information that is likely to be useful in multiple application and data analysis contexts. A DBMS is also more effective at managing concurrent transactional updates to shared data (to prevent conflicting updates to a single customer record, for example).
Consider this SharePoint intranet page:
Like many traditional SharePoint sites, this example includes views of a mix of documents and structured data:
The Marketing Materials section is a set of folders containing documents for different marketing activities
The Sales Tracking list is a collection of records pertaining to sales opportunities
The Tasks list is a record set capturing simple task requests
The Service Request block is a more elaborate record list for equipment-related service requests
Traditional content/collaboration platforms such as Notes/Domino and on-premises SharePoint have often been used for this type of mixed information management scenario in part because, historically, data management platforms were relatively more complex and costly to acquire and use. There has also been a tendency for people to specialize in either document-centric tools or database-centric tools, with largely distinct communities and related sets of vendors, products, career paths, and conferences. An IT architect specializing in SQL Server, for example, is unlikely to also be an expert in traditional enterprise content management (ECM) systems (such as EMC Documentum and IBM FileNet), and an ECM expert is unlikely to prefer the database community standard SQL as a language for content manipulation.
To briefly recap, documents and databases (collections of structured records) serve different and complementary needs. Due to the evolution of enterprise IT over the last several decades, the IT industry has been counterproductively split between largely distinct document and database communities.
The Limits of Content/Collaboration Platforms for Record Collections
The state-of-the-art in database management is focused on modern DBMSs that support multiple data model types (e.g., relational and document) with no model fidelity compromises. Unfortunately, that’s not the data architecture approach used in traditional content/collaboration platforms such as Domino and SharePoint, because both platforms predated the advent of multi-model DBMSs. They instead attempt to handle record-oriented data with services optimized for document-oriented concerns, resulting in trade-offs (relative to using a DBMS for the collections of records) including:
Data model compromises, such as storing a customer order in a single document instead of a set of tables, making it more difficult to share data among applications and to enforce database integrity constraints (e.g., preventing someone from deleting a record for a customer with open orders, or accepting a new order that would exceed a customer’s credit limit)
Data redundancy, since it’s often simplest to create and share a copy of a record collection, perhaps restructuring it as well, rather than trying to work around a less-than-ideal data model stemming from attempts to manage structured records in a document-centric system
Constraints on the extent to which it’s possible to create “360-degree view” of business entities such as customers, products, and products, since the related data is often scattered across a variety of poor form-follows-function-fit content/collaboration lists
If you’re wondering how enterprises managed to get themselves into this situation in the first place, it’s important to remember that – until recently – it was often pragmatic to operate along document/database community boundaries, due to the cost, complexity, and constraints associated with high-end database platforms and tools. It was often much easier to create a basic customer- or sales-tracking application in SharePoint, for document community developers already familiar with SharePoint, than it was to productively engage database community colleagues and have them address the record-oriented aspects of a collaborative workflow application.
There were also significant complications involved in extending record-oriented systems built in database community tools with collaboration capabilities, e.g., the ability to easily share, comment on, or “like” a specific record, so it might have been a reasonable trade-off to compromise on the record-centric features in order to gain the ability to more easily collaborate (without having to write and maintain custom programs).
How Cloud Platforms and Modern Device Platforms Change the Trade-off Equations
Modern cloud-based platforms and tools such as Azure, Office 365, and PowerApps are game-changers for document and database projects. They collectively make the full power of document- and database-oriented systems more accessible and affordable, reducing incentives to compromise on information management or collaboration goals. At a high level of abstraction, you can consider the combination of cloud services and modern devices as:
The best of multi-model DBMSs, addressing both document- and data-centric needs with no trade-offs for developer convenience, along with significantly simplified development and management tasks, compared to earlier on-premises alternatives
The ability to collaborate via content in any context, thanks to modern device platforms that make sharing, commenting, “liking,” and other collaboration-conducive services part of all user experience contexts (see this blog post for a summary of and link to a free 30+ page overview of related market dynamics)
Revisiting the traditional SharePoint intranet example from earlier in this post, for example, enterprises can now:
Manage content collections such as marketing materials in enterprise group-level intranet sites or OneDrive folders, augmented with comprehensive and permission-filtered search and discovery tools such as Delve; users can discover content to which they have access privileges without needing to know in which site or application the content is stored
Manage record-oriented application needs such as sales tracking, task lists, and service requests using PowerApps and the best form-follows-function-fit database service (e.g., Azure SQL Database or Azure DocumentDB for record and document collections, respectively); Office 365 Sites can also be used for collections such as simple task lists
Present related content and applications in modern Web-centric user experiences that incorporate resources from both document- and database-centric systems while making it possible for users to focus on their business tasks rather than juggling and switching between the tools and technologies used to deliver the user experience
Leverage platform-level services (e.g., the “share box” options available in Android and iOS) to make enterprise content-based collaboration as simple as using Facebook or Twitter, while also addressing all requisite security and privacy considerations
To complete migration for the SharePoint intranet example, an enterprise might opt to migrate the marketing materials document collection to a Delve-accessible repository (such as OneDrive), the task list to an Office 365 Site, and the more data-centric record lists for sales tracking and services requests to data management systems that are accessible to PowerApps.
Modernizing and Migrating Traditional Content/Collaboration Apps to Liberate and Better Leverage Structured Content
Many enterprises have very large collections of legacy content collections and collaborative applications deployed on platforms such as Notes/Domino and SharePoint. Although there are tactical options for making structured content held captive in content/collaboration platforms accessible to other tools, using interfaces such as the NotesSQL ODBC driver for Domino (created for Lotus Development Corp. by CASAHL more than twenty years ago), that approach doesn’t address the fundamental form-follows-function fit challenges. To get the most value from enterprise content resources and foster improved data integrity in the future, the best approach is to disaggregate traditional content/collaboration applications and recompose them using modern cloud services and device platform features.
CASAHL DART is the only migration solution that supports multiple sources and targets, using a highly automated approach addressing the complete migration project lifecycle, that also makes it possible to efficiently modernize and migrate complex collaborative workflow applications. DART can be used to automatically disaggregate and recompose complex legacy collaborative apps created in traditional SharePoint or Notes/Domino, for example, revitalizing enterprise content resources and making them readily and securely accessible through PowerApps.
To reiterate some points from our previous PowerApps post, a typical complex legacy SharePoint or Notes app is likely to include a mix of documents, data (structured lists), conversations, and business logic expressed in workflow actions. DART makes it possible to automatically disaggregate and migrate the application elements to the most appropriate tool/service in Office 365. A legacy collaborative app migration mapping can include, for example:
Documents collections migrated to OneDrive for Business or SharePoint document libraries
Data migrated to a wide variety of structured database managers, including SharePoint (SharePoint lists), SQL Server, and Azure SQL Database
Conversations migrated to Office 365 Groups or SharePoint discussions
Business logic recomposed in several tools, including the new PowerApps logic flows
DART liberates enterprise information resources that would otherwise be of limited business value, counterproductively held captive in legacy content/collaboration platforms. To get the most business value from your enterprise document and database resources, and to fully leverage new platforms and tools including Office 365 and PowerApps, CASAHL DART makes it possible to easily and cost-effectively modernize and migrate your traditional content/collaboration deployments.