You are on page 1of 18

Drupal 8

Architecture
Solutions
Architecture Options Explained
for Business Stakeholders
Lately, Headless Drupal has been a hot This white paper explores the different architecture
topic for discussion, while remaining
just one of many approaches to building approaches available to Drupal 8 users and
a Drupal 8 site. Drupal can fill several offers guidance for businesses deciding what kind of
different roles in your technology stack,
from taking on the front-end, simply acting architecture best supports their goals.
as a back-end, or everything in between.

1. Overview 4. Drupal as a Content Repository


In our first section, we give a brief overview of how content In this section, we explore how Drupal can be used as a content
management systems have trended toward more diverse repository. This architecture type is best for centralizing control of
architectural solutions. We also discuss how Drupal 8 opens everything from content production to configuration management.
the door to more flexible architecture types than ever before.
5. Decoupled (Headless) Drupal
2. Drupal as an End-to-End Framework Now that Drupal 8 has arrived, it is much easier to decouple
Drupal was designed to operate as a complete content Drupal from independent design systems. In this section, we
management system in itself. What kinds of organizations discuss the implications of a headless architecture approach.
should consider this approach, the simplest of the bunch?
Plus - why wouldnt you want to use Drupal this way? 6. Wrapping It Up
Finally, we provide insights to help you decide what Drupal
3. Drupal as a Content Aggregator architecture solution to choose. After reading this white paper,
Next, we review Drupal as a content aggregator. In you will emerge with a better understanding of the ideal use
this model, Drupal is used to pull content together case for each approach, how to intermix aspects of various
from various sources. We explain the types of approaches, which external systems play nicely with Drupal, and
organizations that benefit most from this model. the architectural improvements brought about by Drupal 8.

2
OVERVIEW
THE CHANGING DIGITAL LANDSCAPE
The web is changing rapidly in profound ways that
content management systems (CMS) must be built Omnichannel
to address. Specifically, the web is now: Content is disaggregated from code and is
optimized for each channel of distribution.
Mobile
Content and interface design must be formatted with Cloud
mobile as common denominator of digital experience. Software, hardware, and content are distributed,
ubiquitous, and increasingly commoditized.
Data-centric
Data as both a primary objective and a by-product are Commercial
collected, stored, analyzed and business decisions and Everything is monetized from subscriptions,
models are optimized based upon those insights. to shopping, to advertising and data.

Geocentric International
Location awareness and optimization provide more Global and cultural barriers are transcended and disproportionate
personalized and targeted offerings to users. growth goes to the developing and most populous locations.

3
OVERVIEW

THE EVOLVING CONTENT


MANAGEMENT SYSTEM THE HEADLESS DRUPAL TREND
Drupal has evolved from a software tool for editing websites Headless Drupal (or Decoupled Drupal) is the trendiest
to a framework that supports and enforces the standards, variant of Drupal architectural solutions. With headless Drupal,
interfaces, and best practices for development. Even at its most a website visitor will not interact with Drupal directly. Instead,
basic, Drupal 8 includes features like RESTful APIs, mobile-first the visitor will see pages created with Javascript frameworks
design, commerce and CRM integration, and omni-channel (like Angular.js, React.js, or Ember), rather than a traditional
content distribution. And it works natively in a multi-lingual Drupal theme. Drupal still serves as an interface for editors to
and localized world with distributed cloud infrastructure. enter content, but its primary use is as a store for content.

The evolution of Drupal shows that content management (OSTraining offers a great beginners
systems are no longer for just one purpose or audience. breakdown of Headless Drupal.)
Drupal can be tailored to support a variety of use cases,
and this flexibility has allowed for more creativity in how
Drupal can fit into overall content management frameworks
(aka how all systems are architected to work together).

4
OVERVIEW

But headless Drupal is just the beginning. Drupal 8s decoupled


architecture is one of the biggest and most significant
changes from previous versions of Drupal, and as a result, it
is important for decision-makers to obtain a more thorough
understanding of their expanding architectural options.
Far from being an abstract technical
In this white paper, we will give a detailed breakdown of decision, choosing a Drupal architecture
four of the most common Drupal architecture solutions:
the end-to-end framework, the content aggregator,
type has real business implications and
the content repository, and decoupled Drupal. You will should be rooted in long-term goals.
learn how to evaluate each type in light of your business
objectives, gaining a more complete understanding of the
pros and cons of each in specific use cases. Enjoy!

5
DRUPAL AS AN END-TO-END FRAMEWORK

Lets start with the basics: Drupal as an end-to-end framework or,


if youd prefer, the be-all and end-all of your web presence. This
is essentially Drupals default state, and by far the most straight-
forward architectural solution you can implement with Drupal.

In many cases, simple (yet powerful)


is exactly whats called for.

On its own, Drupal is a very complete content management


system, including features which allow you not only to THEMEING USERS
control, manipulate, theme, and display content, but also
to manage users and permissions. All this can be done
without needing to integrate with external systems.

PERMISSIONS CONTENT

6
DRUPAL AS AN END-TO-END FRAMEWORK

START FRESH WITH DRUPAL WHY NOT?


Many organizations suffer from a buildup of legacy Of course, sometimes it is impossible to completely jettison
systems too complicated to be useful and too costly legacy systems -- especially the proprietary systems you rely
to maintain. These organizations may benefit from on for statistics and data feeds. Many legacy systems evolve
wiping the slate clean, and using Drupal as an end-to- and grow over time, and the scope of replacing an entire
end framework is a relatively easy way to do that. legacy suite with a single Drupal instance could be staggering.
Purely end-to-end Drupal is not the best option if you only
If youre starting fresh, a basic Drupal architecture gives you want Drupal to manage some -- but not all -- of your site.
the opportunity to focus on your content strategy. Take the
time to meet with every person involved in the content process If youre trying to expand your content distribution mechanisms,
-- from developers to themers to editors -- and find out what you might consider adding Drupal to your stack but not replacing
functionality they need to produce content more effectively. all other systems -- an option we will cover in the next section.
Get beyond what is assumed in the current system and really
aim to re-imagine the overall workflow. Then tailor your In addition, remember that implementing Drupal will impact
Drupal implementation towards that digital transformation. how your staff interacts with your technology systems. If
your organization has used the same non-Drupal CMS for 10
(Read Tips and Tricks for Designing the Best Content years, they are probably used to working in a certain way.
Publishing Workflow on the Phase2 blog.) Replacing that and implementing an entire end-to-end system
from scratch will not be a 1:1 translation in functionality.
Make sure you prepare your team for the transition.

7
DRUPAL AS A CONTENT AGGREGATOR
When Drupal is used as a content aggregator, it is primarily
a tool for pooling data together from other sources. In this
instance, the term data applies to any type of consumable
content, including text, images, videos, news wires, statistics,
and more. Using both push and pull mechanisms, Drupal
consumes content. Then Drupal acts as the centralized
place to assemble content, organize it, and send it out.

DRUPALS PUSH AND PULL


How does Drupal acquire all this data? Some organizations opt
to pull for content, a technique in which Drupal is constantly
searching for relevant information through APIs. Drupal 8 is an
even more powerful content puller than previous versions
of Drupal: the introduction of RESTful web services directly
in core allows Drupal to consume exposed information or
services without the need to install contributed modules.

Another alternative is to push content into Drupal using an


ingestion service, which allows you to obtain and import data
into the CMS. This is an extremely useful way to control what
content you end up with. You can pre-select very specific (March
Madness free throw statistics) or sensitive (employees salary

8
DRUPAL AS A CONTENT AGGREGATOR

data) information to be fed into your content aggregator, making thousands of assets, creating a natural flow of content
it easier to sort and re-distribute publicly or privately. for editors to review, curate, and publish quickly. This
saves editors from having to go looking for content
Of course, it is possible to utilize both push and pull methods. manually; instead, they have it at their fingertips.
Either way, try to automate as much of the process as
possible. Drupal (and in particular, Drupal 8) is a powerful Most media organizations have more than one output
ingestion engine it knows how to do the work for you. stream; they publish multiple websites targeting different
demographics, promote content on social media platforms, and

WHY MEDIA ORGANIZATIONS even get some content printed (yes on paper!). Automated
tagging systems allows Drupal to do more than simply
LOVE DRUPAL aggregate information, but organize and categorize it.
Media organizations like Time Inc., Thomson Reuters, and
Turner Broadcasting need a platform capable of handling
hundreds of thousands of media, news stories, and content
produced around the world. Drupal, with its careful balance
of automation and editor control, is an effective tool for Drupal 8s omni-channel capabilities
providing the right combination of power and customization.
The editorial experience can be tailored to suit a variety of
enable organizations to create a unified
needs, and Drupal 8 makes this easier than ever before. experience across all their touchpoints.
Drupal works well with content syndication tools like
MediaConnect and Outbrain to receive and process

9
DRUPAL AS A CONTENT AGGREGATOR

WHY NOT?
Even when content is being aggregated automatically, preparing
it for publication still demands a certain level of work. You may
need to make manual adjustments to ensure content is placed,
tagged, and styled correctly. To ingest a high volume of content,
you may still need an editorial team capable of handling it.

Furthermore, if content is created external to the CMS and then


imported (or some is created internally and some externally), it can
become difficult to enforce consistency. Ingesting data from other
sources, while convenient for generating content quickly in the 24-
hour news cycle, means relinquishing some control. Quality, tone,
and subject matter can easily become fragmented. The greater
the fragmentation, the more work will fall to your editorial team.

Organizations that prefer a more centralized model (or manage


a lower volume of content) should consider using Drupal as a
content repository, the solution covered in the next section.

10
DRUPAL AS A CONTENT REPOSITORY

Like the aggregation model, Drupal as a content repository


involves the syndication of content to other systems.
Whats different is the extent to which everything from
content to configuration management is centralized.

Instead of acting as the middleman


- pulling content in, pushing it
out - Drupal is the starting point,
the base camp, and the command
center of your content ecosystem.

MOBILE APPLICATIONS MULTI-SITE PLATFORMS SOCIAL MEDIA

11
DRUPAL AS A CONTENT REPOSITORY

VARIATION 1: CREATE AND DISTRIBUTE VARIATION 2: CENTRALIZE


In this variation, Drupal is not just where content is aggregated,
but where it is created. In fact, the entire content workflow
CONFIGURATION, DECENTRALIZE CONTENT
You can also use Drupal to centralize configuration management.
(writing, reviewing, editing) often happens within Drupal.
Configurations are settings that impact the structure and
This establishes a level of control impossible in the previous
functionality of the site. If your company has one site, this isnt a
model, ensuring completeness and consistency.
major issue -- but if you have more than one site, configuration
management is crucial for performance and stability.
What distinguishes this solution from Drupal as an end-to-end
framework are the mechanisms of distribution. Despite the fact
The Configuration Management Initiative (CMI) in Drupal 8
that content creation and storage is centralized, distribution
facilitates easy saving and porting configuration changes from one
happens via external platforms. Drupal does not act as the
environment to another, improving the process and increasing
public-facing website; instead, content is pushed out to feed
stability in huge ways. Modules now store their configuration
mobile applications, multiple websites, or social media platforms.
settings in YAML files, creating a core standard applied to all
modules. This creates flexibility for enterprise configurations.
This approach supports a franchised model of content
management. It allows magazines like Skirt! to produce content
(Read Configuration Management in Drupal 8 on our blog.)
for a single issue, but insert slight variations depending on
readers geographic location, device type, or a number of other
Essentially, Drupal 8 allows you to reliably manage sub-sites from
indicators. It gives management the ability to both customize
a central location even if you allow those sub-sites to produce
and centralize content -- it all comes from the same editorial
their own content. Its a perfect set-up for governments like San
team, but theres enough flexibility for some variety across sites.
Mateo County, which supports over 20 department sites, each

12
DRUPAL AS A CONTENT REPOSITORY

with different needs, tools, and functionality requirements.


Similarly, the Georgia Technology Authority provides state
agencies with IT infrastructure and network services, but content
creation is handled at the agency-level. Both San Mateo County
and the state of Georgia built multi-site Drupal architectures to
enforce visual consistency and configuration management, but
still allow each agency site to customize features and content.

WHY NOT?
The content repository architecture solution is best for enterprise
multi-site platforms. If your web presence consists of a single
site, a simpler solution will make your life far less complicated.
Remember the golden rule in web development: keep it simple.

13
DECOUPLED (HEADLESS) DRUPAL
Our last approach -- Decoupled Drupal -- describes how
Drupal supports your front-end (the public-facing part of
your site directly accessible to the user). This approach
can intermix with the content aggregator and repository
approaches. In this instance, Drupal powers the sites
back-end (the systems that support the public-facing
site), while the decoupled portion is layered on top.

(Read Front-End Architecture for Design Systems


by Phase2 developer Micah Godbolt.)

DESIGN SYSTEMS AND DRUPAL


Design systems include all the templates, theming logic,
CSS, and JavaScript that give a website its look and feel.
In earlier versions of Drupal, the CMS was responsible
for creating the markup -- a clunky arrangement that
prevented designers and front-end developers from
properly implementing a modern design system.

In later version of Drupal (particularly Drupal 7), many


in the community began to explore decoupled or
partially decoupled variations of Drupal, in which the
design system was created and maintained outside

14
DECOUPLED (HEADLESS) DRUPAL

the CMS. Even before Drupal 8, the headless approach had


been steadily gaining in popularity over recent years.

Major improvements in Drupal 8 made the front-end/back-


end separation more distinct and intuitive, facilitating the
use of external design systems. In this approach, Drupal
is only responsible for gathering data (via the content
aggregation or repository methods), passing that data to
an external design system, and handing over control of the
markup to that system. In a partially decoupled system,
the rendered markup is then returned to Drupal, which is
responsible for delivering the markup to the end user.

In essence, Drupal 8 is the realized vision of the Headless Drupal


concept. It successfully empowers front-end developers and
designers to escape Drupals cumbersome PHP templates
and incorporate more robust systems like Pattern Lab.

(Read Your Front-End Methodology is All of Them:


Atomic Design and Pattern Lab on our blog.)

15
HOW SHOULD YOU BUILD IN DRUPAL 8?
Your Drupal architecture decision should be governed
Decoupled Drupal
by your specific needs and objectives. But the choice
Best for crafting a new visual experience. Use Drupal in conjunction
doesnt need to be intimidating! Individual cases
with other front-end frameworks to enhance design.
vary, but generally the following rules apply:
Ideal use case: Storytelling sites like Teach for America

End-to-End Framework
Other things to keep in mind when evaluating
Best for keeping it simple! Use Drupal to replace costly,
how Drupal 8 can help include:
complicated legacy systems for single websites.
How is your story told?
Ideal use case: Websites like Memorial Sloan Kettering
Where does all of your content or data come from?
What aging content management systems
Aggregator
can be completely replaced?
Best for supporting large volumes of content. Use Drupal to
Can you do everything you currently do in Drupal 8, or should it
push or pull content in, then store, theme, and re-distribute it.
integrate with other systems that you cant afford to deprecate?
Ideal use case: Media sites like the Associated Press
What volume of content can your editorial team handle?
What external design systems/tools are your
Repository
front-end developers proficient using?
Best for centralizing control of enterprise platforms.
How many sites are on your platform, and how
Use Drupal to store content and/or configuration,
do you handle configuration management?
later pushed out to multiple sites.
What channels do you use to publish content? If you publish to
Ideal use case: Government sites like the state of North Carolina
multiple channels, how do you customize content by channel?

16
HOW SHOULD YOU BUILD IN DRUPAL 8?

ABOUT PHASE2
Phase2 has implemented enterprise platforms using Phase2, a recognized leader in open technology, designs
every imaginable architecture model. Weve worked with and builds some of the most trusted websites in the world.
numerous clients to forge digital strategies and use Drupal Organizations like the United Nations, Major League Soccer,
to build the architecture best suited to their goals. and Red Hat rely on Phase2s technical expertise to craft
robust digital solutions and collaboration systems. Founded
in 2001, Phase2 is headquartered in Alexandria, VA, and
has offices in New York, San Francisco, and Portland.

No matter the set-up, we are Have questions about Drupal 8? Contact us today!
dedicated to helping our clients
mitigate risk and achieve the largest
possible return on investment.

17
FURTHER RESOURCES

PHASE2 RESOURCES: OTHER RESOURCES:


Phase2s Drupal 8 Resource Center What is Headless Drupal? - OSTraining
Drupal 8 for Enterprise: Your Definitive The future of decoupled Drupal - Dries Buytaert
Guide to Drupal 8 (white paper) Web services in Drupal 8 core - Acquia
Navigate the Drupal 8 Decision (March webinar) Drupal 8 Theming Revamped - SitePoint
The Future for Drupal and Open Source Content Management What is a Front-End Architect? - Elyse Holladay
The Pros and Cons of Headless Drupal 10 New Features in Drupal 8 Core - Acquia
Drupal Is Not Your Website (A Primer) Object-Oriented Programming - SearchSOA
Configuration Management in Drupal 8 Atomic Design - Brad Frost
Three Reasons to Consider Drupal 8 Now
Omni-Channel Content Strategy in Drupal 8
Tips and Tricks for Designing the Best
Content Publishing Workflow
Transitioning to Drupal 8 Templates with Twig
Pattern Lab: Taking Our Workflow from
a Linear to Parallel Process
Your Front-End Methodology is All of Them:
Atomic Design and Pattern Lab
Front-End Architecture for Design Systems

18

You might also like