Documentum Veteran on Building Cloud-Native Content Services
Digital transformation happening at lightning speed is driving technology providers to deliver solutions faster than ever and before everyone else. However, digital transformation also involves different thinking, innovation, and a modification in developing new technology solutions. No wonder why there isn’t a day that goes by anymore without hearing of a new approach or a new technology coming out. Mobile, predictive analytics, cloud, collaborative technologies, microservices architecture and headless CMS approach to name a few.
If we narrow down the digital transformation spectrum to content management system technologies, building those new groundbreaking solutions on the current Enterprise Content Management System (ECMS) platforms is hard and slowing developers down. With this in mind, wouldn’t it be great if developers could build their own cloud-native, scale-out headless content services using the exact same components as the Enterprise Content Management (ECM) vendors such as Documentum and OpenText, without the hassle? More importantly, what would you say if I told you that it is possible to develop Content Services faster than ever before that can run anywhere; on-premise or in the Cloud, do not lock you in to a specific Cloud vendor and can scale well beyond traditional platforms, all with next to zero downtime?
To make all of this happen, Paul Warren, ex-Documentum Engineer and CTO of Dell EMC's Dojo & Cloud Platform Team, and his team are working on a new Spring project that adds content management constructs to the Spring framework allowing devs to roll out their own cloud-native Content Services. He claims, by adopting Spring Content to build their new Content Services, they can build faster than before and immediately go cloud-native, use cloud-native process like Test-driven development (TDD) and CI/CD (continuous integration (CI) and continuous delivery/deployment (CD) ) and use new cloud-native components like NoSQL databases, S3 and Elasticsearch. As a result, this will give developers Content Services, quicker and more iteratively that will scale well beyond those that have come before.
Knowing Paul came from Documentum where he spent 15 years all in Engineering on products like WDK, Webtop (and Portlets), Composer and XCP, I wanted to pick his brain on the problem his team is trying to solve with this unique project as well as the most efficient ways of building Content Services through adopting Spring Content.
Before diving into Paul Warren’s great talking points, in order to make more sense of the interview, first, I’d like to give some brief background information on some terminology used. Cloud Foundry (CF) is an open-source platform-as-a-service (PaaS) but, unlike other PaaS solutions, by building on top of CF, developers are not locked into CF. They can later decide to run the cloud locally on their own datacenter, or on some other Cloud Foundry provider. Spring is a development framework in Java. It's not the only way to consume CF, but speaking from experience, Paul Warren believes, there is a unique value proposition in combining the Cloud Foundry and Spring teams, and in the interview below, he elaborates on that. Some ECM engineers also believe that Cloud Foundry can power all of the next-generation content management capabilities such as process automation, collaboration, metadata management, document capture, automated classification, and indexing. Now that we are more familiar with these two concepts, it's time to move onto the exclusive CMS-Connected interview with Paul Warren:
Can you tell our audience a little about the problem you are trying to solve with this new Spring project?
Warren: I am a 15 year veteran of Documentum. All spent in R&D. Especially towards the end of my tenure I watched them struggle to build solutions on their original SQL/file-based Documentum platform. In both NGIS and LEAP I also saw them try to develop new platforms but they weren't really Cloud-Native in any real or meaningful way and I saw them struggle to write solutions on top of those new platforms too. I was struck by the fact that if Documentum engineers were struggling to build solutions on top of their own platforms, what must their Customers be going through? So essentially this is the problem we are trying to solve with Spring Content. Make it really easy to build Content-based applications and services.
What’s unique about what you are doing with Spring Content to help others build Content Services?
Warren: Great question. Around the same time as I was watching Documentum struggle another part of the EMC Federation, VMWARE, purchased Spring, a Java-based development framework. Under this new leadership, Spring frankly did an inspired job of re-tooling their framework to be Cloud-Native. In doing so they beat Oracle's Java EE to become the framework that Enterprise Developers use to build their applications and services for on-premise and for the Cloud. Developers use it because it is open source, they can build against traditional or Cloud-Native components like NoSQL or Object Storage and most importantly it makes them really, really productive.
However, it was missing constructs for doing even basic Content Management functionality. So by adding these constructs the unique value proposition of Spring Content is that it allows you to build Content Applications and Content Services using 100% open source libraries, so no vendor lock-in. You can use true Cloud-Native components that allow you to scale your solution way beyond traditional ECMS platforms and operate them with no downtime. You can get very productive indeed. You can build a fully-functioning Content Service with renditions and full-text search with just two Java classes and interfaces! Not only that, you can develop this using modern agile techniques. Spring Content-based Content Services can be fully test-driven and delivered directly to the Customer through automated pipelines. Put together this gives you the ability to innovate faster by getting solutions in front of the Customer quicker and iterating those solutions based on their feedback. This is the essence of modern software development. If you can't do this, you will face an existential threat and, as we all know, the older ECMS lack all of these benefits.
How important is the collaboration between the Cloud Foundry and Spring teams?
What would one miss out on, if they don’t build Content Services with Spring Content?
Warren: I don't think many people realize how fast the speed of innovation is accelerating so who knows what is just around the corner too. The interesting vector here is that if you stick with your existing ECM vendor you'll have to wait for the next release to see these new technologies emerge in their platforms. That may take years. If they ever add them all. By adopting Spring Content to build your Content Services you will get to use these new technologies almost as soon as we do. Think about it. We are continuously delivering new versions of Spring and Spring Content with great backward compatibility, with extremely high levels of quality. All backed by a huge community of Developers. Moving forward, if you are not building Content Services with Spring Content sooner or later you will be left behind.
In the ECM space, what trends do you see on the horizon or where do you think we will see the most innovation in the coming months?
Warren: I see two big trends on the horizon; Artificial intelligence/Machine Learning (AI/ML) and Blockchain/Smart Contracts.
Using AI/ML to better understand the content of documents and what documents are most important to the user will lead to much more accurate and productive search capabilities and therefore the ability to get the right document to the right person at the right time. We are already seeing the beginnings of this happen in industries like legal where efforts are underway to use ML to automate fact-finding which up until now has been done by humans.
On the other hand, I believe Blockchain and Smart Contracts will play a crucial role in automating contract handling across many industries and of course, these contracts are always document-heavy processes and therefore Content Management will play a crucial role here too.
According to Gartner, content services applications will replace traditional enterprise content management suites in a quarter of large enterprises by 2020. What drives this shift, as Paul Warren pointed out, is the demand for faster, more agile, and cost-effective solutions. To me, content services are reinventing the value proposition around the ECM solutions in a way.
Gone are the days of utilizing traditional ECM as today, technology buyers want to explore the ways of integrating content services and process services into different experiences and more bespoke solutions that people are building. Today, we are living in a world of the information explosion so if your ECM vendor struggles to keep up with the need for rapid innovation and nimble cloud-based deployment, why not take the matter into your own hands and build your solution, especially when there is a new approach that allows developers to write their own cloud-native Content Services significantly quickly and easily? That way, you would not only save time and money but also lower risk and make your technical team more productive by spending more time on programming beneficial features, instead of wasting time on process issues.