SlideShare a Scribd company logo
1 of 59
Tricode BV
De Schutterij 12 -18
3905 PL Veenendaal
The Netherlands
tel: 0318 - 559210
fax: 0318 - 650909
www.tricode.nl
info@tricode.nl
SaaS + CMS: Tricode’s technical roadtrip
Ronald Kerstens and Gerton ten Ham
Agenda
1. Tricode introduction
2. Road to a Tricode SaaS
3. Tricode SAAS project
4. Lessons learned..during the roadtrip
1. Needs versus solutions
5. Questions & Answers
Tricode
• Founded in 1999
• Based in
• Veenendaal, Netherlands (NL)
• Skopje, Macedonia (MK)
• 2014: 55 employees
• 35 in NL
• 20 in MK
• 20+ customers in NL, BE, UK
“We support organizations in creating and maintaining
an online presence by use of several content
management, customer experience and e-commerce
technologies.
We boost online conversion rates by delivery of know-
how, projects and services to our customers”.
4
Tricode
Tricode
Tricode
Road to Magnolia CMS
2011
• Tricode becomes AEM
CXM implementation
partner
2012
• Search for Java CMS
supplement to AEM:
Magnolia CMS
2013
• First Magnolia CMS project :
BplusC library website
Road to Tricode SAAS
2014- Q1
• BplusC Magnolia 5 solution released
• Brainstorming Tricode SAAS product vision
2014- Q2
• Start of Tricode SAAS development project
• Alpha release 1.0 of SAAS
2014-Q3
• Continuation of Tricode SAAS development project
• Release 1.0 of Tricode SAAS
2014-Q4
• Release 1.1 of Tricode SAAS
Road to Tricode SAAS
Features of a Tricode cloud WCM service:
1. Hosted CMS solution
2. Managed hosting & CMS support services
3. Automated CMS & website provisioning
4. Customer WCM self service
5. Additional/optional WCM & eCommerce features
6. Product based release management
7. Multiple product editions
Tricode Cloud WCM
Powered by Magnolia CMS and Konakart
Tricode SAAS project
• SAAS alpha development project
– In scope:
• Customer WCM self service
• Product based release management
• Additional/optional WCM & eCommerce features
• Multiple product editions
– Out of scope:
• Automated Website/CMS provisioning
• Hosted CMS solution (done by hosting partner)
• Managed hosting & CMS support services
2014- Q2
• Start of SAAS
development project
• Alpha release 1.0 of SAAS
2014-Q3
• Continuation of SAAS
development project
• Release 1.0 of SAAS
Tricode Cloud WCM
Powered by Magnolia CMS and Konakart
Tricode SAAS project
Business needs Implementation
Customer self service
Simplified Magnolia CMS configuration
• Mobile first and easy styling/branding tooling
• Standardized user authorization model
• WAAS Admin app
• Preconfigured middleware and data storage software
Product release management
Simplified release deployment
• Continuous Integration & delivery pipeline
• Single .WAR file = simplified deployments
• Standardized hosting environments
Additional/optional WCM & eCommerce features
More end user product features
• Simple blog & news content centric apps
• eCommerce storefront components and admin app
Multiple product editions
Targeting web marketing and ecommerce customers
• Basic Cloud WCM edition
• High Availability Cloud WCM & eCommerce edition
Project Goal
Not a CMS development
platform, but an end user
CMS & commerce
product solution
technical perspective
Summary of requirements
• Product release management
• Multiple product editions
• Customer self service / pre-configuration
• Additional features
Product release management
Build and Deploy
Simplified release deployment
Implementation need:
• Simple Magnolia CMS deployment with
a product war file
A classic read
Building Magnolia
At first…
• Manually specifying which module
version must be used for the Magnolia
bundle of choice
Evolved in…
• Importing one dependency for the
Magnolia bundle of choice
<dependency>
<groupId>info.magnolia.bundle</groupId>
<artifactId>magnolia-bundle-parent</artifactId>
<version>5.2.5</version>
<type>pom</type>
<scope>import</scope>
</dependency>
A classic read cont'd
magnolia.properties
-Dmagnolia.repository.data=/usr/var
Simplified release deployment
Implementation needs:
• Pipeline to build a tested single war file
• Create a new release of the artifact, archive
old versions
• Automated deployment of the artifact
Jenkins: Build cycle
Jenkins: Release
Automate deployment
• Start a wiki page and write down all steps that are needed to
perform the deployment.
Automate deployment
• Do several deployments by the instructions.
– If something is missing – add it. If something is wrong –
fix it.
• After a while write scripts and start using them
instead.
• Use Jenkins to start the scripts for you.
Customer self service
Middleware (pre-)configuration
Simplified release deployment
Implementation needs:
• Easy to deploy and upgrade middleware software
and data storage system
• High Availability and high performance hosting
environment
• Secure connections and secure data storage
Deployment models
Basic
High
Availability
Deployment diagram
Secure connections
• Author environment:
– https://<client>-adm.tricode-cms.nl
• Public site:
– https://<client>.tricode-cms.nl
– http(s)://www.example.com
SSL redirect in Apache
How do we know when to redirect a
public page to https?
Using Apache rewrite rules
RewriteCond %{REQUEST_URI} ^/login [OR]
RewriteCond %{REQUEST_URI} ^/register [OR]
RewriteCond %{REQUEST_URI} ^/my-account
RewriteRule ^/(.*) https://www.example.com/$1 [R=301,L]
In Magnolia…
when
changed to…
Apache has to change…
RewriteCond %{REQUEST_URI} ^/login [OR]
RewriteCond %{REQUEST_URI} ^/register [OR]
RewriteCond %{REQUEST_URI} ^/my-account
RewriteRule ^/(.*) https://www.example.com/$1 [R=301,L]
Magnolia SSL enabling
Customer self service
Magnolia (pre-)configuration
Simplified Magnolia CMS configuration
Implementation needs:
• Superuser account not accessible to SAAS
subscribers!
• Customer self service requires simple user
authorization model: customer only wants
to add users in user groups.
Magnolia pre-configuration
• Using custom installation tasks
1. Change superuser account
@Override
protected List<Task> getExtraInstallTasks(InstallContext installContext){
final List<Task> tasks = new ArrayList<Task>();
tasks.addAll(super.getExtraInstallTasks(installContext));
tasks.add(new ChangePasswordTask("/system/superuser", SYSTEM_SUPERUSER_PWD));
return tasks;
}
• Security app bootstrap files
– Standard users, groups and roles
User authorisation
Additional features
Templates and Themes
Implementation needs:
• Mobile first
• Easy styling/branding of website by customer
• Use of market leading web frontend development
framework for layouts
Simplified Magnolia CMS configuration
Foundation Templating Kit
• Why Foundation CSS framework?
– Full responsive -> Mobile first
– Standardized markup: Easy override of standard layout
– Backed by a company and large user community
– Time for an alternative next to STK?
Responsive custom theme
Change a theme
Turning this
into
Additional features
Modules and Apps
More end user product features
Implementation needs:
• Magnolia CMS easy and secure application
configuration
• Integration of standard Magnolia CMS modules in
Foundation Templating Kit
• Website Blog integration
• Website e-Commerce integration
Easy and secure configuration
VS.
Standard Form module
• Standard module extended with Foundation based templates
Forms validation
• Foundation Abide: HTML5 form validation
Standard Imaging module
• Generators: small, medium and large
• Foundation interchange plugin loading responsive images
Blog module
• Website integrated blog
e-Commerce module
• Based on Konakart Community Edition
• Uses Konakart SOAP interface (loosely coupled)
• Freemarker based components:
– Login/register/my-account
– Product catalog
– Basket
– Basic checkout
• SOAP integrated Konakart Admin App for Magnolia 5.3
Konakart Admin App
Konakart page components
Magnolia AdminCentral
Conclusion
Delivering Tricode Cloud WCM =
Not only hosting and provisioning implementation
but includes
Development of an enhanced end user CMS
product solution
Follow us:
tricode.nl
facebook.com/tricode
linkedin.com/company/tricode
slideshare.net/tricode
twitter.com/tricode

More Related Content

What's hot

Escaping the yellow bubble - rewriting Domino using MongoDb and Angular
Escaping the yellow bubble - rewriting Domino using MongoDb and AngularEscaping the yellow bubble - rewriting Domino using MongoDb and Angular
Escaping the yellow bubble - rewriting Domino using MongoDb and AngularMark Leusink
 
20090425mysqlslides 12593434194072-phpapp02
20090425mysqlslides 12593434194072-phpapp0220090425mysqlslides 12593434194072-phpapp02
20090425mysqlslides 12593434194072-phpapp02Vinamra Mittal
 
What's New in PowerCLI 5.0
What's New in PowerCLI 5.0What's New in PowerCLI 5.0
What's New in PowerCLI 5.0jonathanmedd
 
Applying WAI-ARIA to open-source CMS widgets - practical application and resu...
Applying WAI-ARIA to open-source CMS widgets - practical application and resu...Applying WAI-ARIA to open-source CMS widgets - practical application and resu...
Applying WAI-ARIA to open-source CMS widgets - practical application and resu...AEGIS-ACCESSIBLE Projects
 
Rt camp..........a company overview
Rt camp..........a company overviewRt camp..........a company overview
Rt camp..........a company overviewsimplypari18
 
Whats new in ws2016 Hyper-V with Aidan Finn
Whats new in ws2016 Hyper-V with Aidan FinnWhats new in ws2016 Hyper-V with Aidan Finn
Whats new in ws2016 Hyper-V with Aidan FinnJohn Moran
 
ICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJS
ICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJSICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJS
ICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJSMark Leusink
 
VMworld 2013: PowerCLI What’s New? Administrating with the CLI Was Never Easier
VMworld 2013: PowerCLI What’s New? Administrating with the CLI Was Never Easier VMworld 2013: PowerCLI What’s New? Administrating with the CLI Was Never Easier
VMworld 2013: PowerCLI What’s New? Administrating with the CLI Was Never Easier VMworld
 
CDP.pl - tech case study by Divante
CDP.pl - tech case study by DivanteCDP.pl - tech case study by Divante
CDP.pl - tech case study by DivanteDivante
 
Windows Server 2008 Hyper-V
Windows Server 2008 Hyper-VWindows Server 2008 Hyper-V
Windows Server 2008 Hyper-VJames Price
 
Process Improvement in Distributed Software Development Using Eclipse with Me...
Process Improvement in Distributed Software Development Using Eclipse with Me...Process Improvement in Distributed Software Development Using Eclipse with Me...
Process Improvement in Distributed Software Development Using Eclipse with Me...Intland Software GmbH
 
Unboxing HCL Notes/Domino v12!
Unboxing HCL Notes/Domino v12!Unboxing HCL Notes/Domino v12!
Unboxing HCL Notes/Domino v12!panagenda
 
The future of web development write once, run everywhere with angular js an...
The future of web development   write once, run everywhere with angular js an...The future of web development   write once, run everywhere with angular js an...
The future of web development write once, run everywhere with angular js an...Mark Leusink
 
Innovations in Sencha Tooling and Framework
Innovations in Sencha Tooling and FrameworkInnovations in Sencha Tooling and Framework
Innovations in Sencha Tooling and FrameworkSandeep Adwankar
 

What's hot (17)

Escaping the yellow bubble - rewriting Domino using MongoDb and Angular
Escaping the yellow bubble - rewriting Domino using MongoDb and AngularEscaping the yellow bubble - rewriting Domino using MongoDb and Angular
Escaping the yellow bubble - rewriting Domino using MongoDb and Angular
 
20090425mysqlslides 12593434194072-phpapp02
20090425mysqlslides 12593434194072-phpapp0220090425mysqlslides 12593434194072-phpapp02
20090425mysqlslides 12593434194072-phpapp02
 
CDNs para el SharePoint Framework (SPFx)
CDNs para el SharePoint Framework (SPFx)CDNs para el SharePoint Framework (SPFx)
CDNs para el SharePoint Framework (SPFx)
 
What's New in PowerCLI 5.0
What's New in PowerCLI 5.0What's New in PowerCLI 5.0
What's New in PowerCLI 5.0
 
Manageability Enhancements of SQL Server 2012
Manageability Enhancements of SQL Server 2012Manageability Enhancements of SQL Server 2012
Manageability Enhancements of SQL Server 2012
 
Applying WAI-ARIA to open-source CMS widgets - practical application and resu...
Applying WAI-ARIA to open-source CMS widgets - practical application and resu...Applying WAI-ARIA to open-source CMS widgets - practical application and resu...
Applying WAI-ARIA to open-source CMS widgets - practical application and resu...
 
Rt camp..........a company overview
Rt camp..........a company overviewRt camp..........a company overview
Rt camp..........a company overview
 
20410B_01
20410B_0120410B_01
20410B_01
 
Whats new in ws2016 Hyper-V with Aidan Finn
Whats new in ws2016 Hyper-V with Aidan FinnWhats new in ws2016 Hyper-V with Aidan Finn
Whats new in ws2016 Hyper-V with Aidan Finn
 
ICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJS
ICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJSICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJS
ICON UK 2016: Modernizing an IBM Notes applicaton using with AngularJS
 
VMworld 2013: PowerCLI What’s New? Administrating with the CLI Was Never Easier
VMworld 2013: PowerCLI What’s New? Administrating with the CLI Was Never Easier VMworld 2013: PowerCLI What’s New? Administrating with the CLI Was Never Easier
VMworld 2013: PowerCLI What’s New? Administrating with the CLI Was Never Easier
 
CDP.pl - tech case study by Divante
CDP.pl - tech case study by DivanteCDP.pl - tech case study by Divante
CDP.pl - tech case study by Divante
 
Windows Server 2008 Hyper-V
Windows Server 2008 Hyper-VWindows Server 2008 Hyper-V
Windows Server 2008 Hyper-V
 
Process Improvement in Distributed Software Development Using Eclipse with Me...
Process Improvement in Distributed Software Development Using Eclipse with Me...Process Improvement in Distributed Software Development Using Eclipse with Me...
Process Improvement in Distributed Software Development Using Eclipse with Me...
 
Unboxing HCL Notes/Domino v12!
Unboxing HCL Notes/Domino v12!Unboxing HCL Notes/Domino v12!
Unboxing HCL Notes/Domino v12!
 
The future of web development write once, run everywhere with angular js an...
The future of web development   write once, run everywhere with angular js an...The future of web development   write once, run everywhere with angular js an...
The future of web development write once, run everywhere with angular js an...
 
Innovations in Sencha Tooling and Framework
Innovations in Sencha Tooling and FrameworkInnovations in Sencha Tooling and Framework
Innovations in Sencha Tooling and Framework
 

Similar to Magnolia conference 2014: Tricode, Technical road to Tricode SAAS, powered by Magnolia CMS

Out With the Old, in With the Open-source: Brainshark's Complete CMS Migration
Out With the Old, in With the Open-source: Brainshark's Complete CMS MigrationOut With the Old, in With the Open-source: Brainshark's Complete CMS Migration
Out With the Old, in With the Open-source: Brainshark's Complete CMS MigrationAcquia
 
Brendon Foxen (Channel 4) - Speeding up Software Delivery at Channel 4
Brendon Foxen (Channel 4) - Speeding up Software Delivery at Channel 4Brendon Foxen (Channel 4) - Speeding up Software Delivery at Channel 4
Brendon Foxen (Channel 4) - Speeding up Software Delivery at Channel 4Outlyer
 
Migration to oracle fusion middleware 11g Key point of success
Migration to oracle fusion middleware 11g Key point of successMigration to oracle fusion middleware 11g Key point of success
Migration to oracle fusion middleware 11g Key point of successDeniz Seçilir
 
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...VMware Tanzu
 
System Center Configuration Manager-The Most Popular System Center Component
System Center Configuration Manager-The Most Popular System Center Component System Center Configuration Manager-The Most Popular System Center Component
System Center Configuration Manager-The Most Popular System Center Component C/D/H Technology Consultants
 
What Is Your PLM Challenge - Manage configurable products and maintain produc...
What Is Your PLM Challenge - Manage configurable products and maintain produc...What Is Your PLM Challenge - Manage configurable products and maintain produc...
What Is Your PLM Challenge - Manage configurable products and maintain produc...Dawn Collins
 
How to install IBM Connections in a Coffe Break
How to install IBM Connections in a Coffe BreakHow to install IBM Connections in a Coffe Break
How to install IBM Connections in a Coffe BreakAndrea Fontana
 
Cincom Smalltalk Roadmap 2010
Cincom Smalltalk Roadmap 2010Cincom Smalltalk Roadmap 2010
Cincom Smalltalk Roadmap 2010ESUG
 
Serverless brewbox
Serverless   brewboxServerless   brewbox
Serverless brewboxLino Telera
 
e-Suap Inista 2014 (International Symposium on INnovation in Intelligent SysT...
e-Suap Inista 2014 (International Symposium on INnovation in Intelligent SysT...e-Suap Inista 2014 (International Symposium on INnovation in Intelligent SysT...
e-Suap Inista 2014 (International Symposium on INnovation in Intelligent SysT...Sabino Labarile
 
Datasheet weblogicpluginforrd
Datasheet weblogicpluginforrdDatasheet weblogicpluginforrd
Datasheet weblogicpluginforrdMidVision
 
Cloud Service Providers-unit5 university
Cloud Service Providers-unit5 universityCloud Service Providers-unit5 university
Cloud Service Providers-unit5 universitymoeincanada007
 
Tampere Docker meetup - Happy 5th Birthday Docker
Tampere Docker meetup - Happy 5th Birthday DockerTampere Docker meetup - Happy 5th Birthday Docker
Tampere Docker meetup - Happy 5th Birthday DockerSakari Hoisko
 
Azure DevOps Tasks.pptx
 Azure DevOps Tasks.pptx Azure DevOps Tasks.pptx
Azure DevOps Tasks.pptxPrasanthOneness
 
Cloud as a Service: A Powerful New Cloud Management Platform
Cloud as a Service: A Powerful New Cloud Management PlatformCloud as a Service: A Powerful New Cloud Management Platform
Cloud as a Service: A Powerful New Cloud Management PlatformBMC Software
 
TransitioningToMicroServonDocker_MS
TransitioningToMicroServonDocker_MSTransitioningToMicroServonDocker_MS
TransitioningToMicroServonDocker_MSLana Kalashnyk
 
NIC - Windows Azure Pack - Level 300
NIC - Windows Azure Pack - Level 300NIC - Windows Azure Pack - Level 300
NIC - Windows Azure Pack - Level 300Kristian Nese
 

Similar to Magnolia conference 2014: Tricode, Technical road to Tricode SAAS, powered by Magnolia CMS (20)

Out With the Old, in With the Open-source: Brainshark's Complete CMS Migration
Out With the Old, in With the Open-source: Brainshark's Complete CMS MigrationOut With the Old, in With the Open-source: Brainshark's Complete CMS Migration
Out With the Old, in With the Open-source: Brainshark's Complete CMS Migration
 
Brendon Foxen (Channel 4) - Speeding up Software Delivery at Channel 4
Brendon Foxen (Channel 4) - Speeding up Software Delivery at Channel 4Brendon Foxen (Channel 4) - Speeding up Software Delivery at Channel 4
Brendon Foxen (Channel 4) - Speeding up Software Delivery at Channel 4
 
Migration to oracle fusion middleware 11g Key point of success
Migration to oracle fusion middleware 11g Key point of successMigration to oracle fusion middleware 11g Key point of success
Migration to oracle fusion middleware 11g Key point of success
 
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
 
System center seminar presentation
System center seminar presentationSystem center seminar presentation
System center seminar presentation
 
System Center Configuration Manager-The Most Popular System Center Component
System Center Configuration Manager-The Most Popular System Center Component System Center Configuration Manager-The Most Popular System Center Component
System Center Configuration Manager-The Most Popular System Center Component
 
What Is Your PLM Challenge - Manage configurable products and maintain produc...
What Is Your PLM Challenge - Manage configurable products and maintain produc...What Is Your PLM Challenge - Manage configurable products and maintain produc...
What Is Your PLM Challenge - Manage configurable products and maintain produc...
 
How to install IBM Connections in a Coffe Break
How to install IBM Connections in a Coffe BreakHow to install IBM Connections in a Coffe Break
How to install IBM Connections in a Coffe Break
 
Cincom Smalltalk Roadmap 2010
Cincom Smalltalk Roadmap 2010Cincom Smalltalk Roadmap 2010
Cincom Smalltalk Roadmap 2010
 
Serverless brewbox
Serverless   brewboxServerless   brewbox
Serverless brewbox
 
e-Suap Inista 2014 (International Symposium on INnovation in Intelligent SysT...
e-Suap Inista 2014 (International Symposium on INnovation in Intelligent SysT...e-Suap Inista 2014 (International Symposium on INnovation in Intelligent SysT...
e-Suap Inista 2014 (International Symposium on INnovation in Intelligent SysT...
 
E suap - INISTA 2014
E suap - INISTA 2014E suap - INISTA 2014
E suap - INISTA 2014
 
Datasheet weblogicpluginforrd
Datasheet weblogicpluginforrdDatasheet weblogicpluginforrd
Datasheet weblogicpluginforrd
 
Cloud Service Providers-unit5 university
Cloud Service Providers-unit5 universityCloud Service Providers-unit5 university
Cloud Service Providers-unit5 university
 
Tampere Docker meetup - Happy 5th Birthday Docker
Tampere Docker meetup - Happy 5th Birthday DockerTampere Docker meetup - Happy 5th Birthday Docker
Tampere Docker meetup - Happy 5th Birthday Docker
 
Azure DevOps Tasks.pptx
 Azure DevOps Tasks.pptx Azure DevOps Tasks.pptx
Azure DevOps Tasks.pptx
 
Cloud as a Service: A Powerful New Cloud Management Platform
Cloud as a Service: A Powerful New Cloud Management PlatformCloud as a Service: A Powerful New Cloud Management Platform
Cloud as a Service: A Powerful New Cloud Management Platform
 
TransitioningToMicroServonDocker_MS
TransitioningToMicroServonDocker_MSTransitioningToMicroServonDocker_MS
TransitioningToMicroServonDocker_MS
 
NIC - Windows Azure Pack - Level 300
NIC - Windows Azure Pack - Level 300NIC - Windows Azure Pack - Level 300
NIC - Windows Azure Pack - Level 300
 
The Best of MMS 2013
The Best of MMS 2013The Best of MMS 2013
The Best of MMS 2013
 

More from Tricode (part of Dept)

The Top Benefits of Magnolia CMS’s Inspirational Open Suite Ideology
The Top Benefits of Magnolia CMS’s Inspirational Open Suite IdeologyThe Top Benefits of Magnolia CMS’s Inspirational Open Suite Ideology
The Top Benefits of Magnolia CMS’s Inspirational Open Suite IdeologyTricode (part of Dept)
 
Mobile Sensor Networks based on Smartphone devices and Web Services
Mobile Sensor Networks based on Smartphone devices and Web ServicesMobile Sensor Networks based on Smartphone devices and Web Services
Mobile Sensor Networks based on Smartphone devices and Web ServicesTricode (part of Dept)
 
Keeping Your Clients Happy and Your Management Even Happier
Keeping Your Clients Happy and Your Management Even Happier Keeping Your Clients Happy and Your Management Even Happier
Keeping Your Clients Happy and Your Management Even Happier Tricode (part of Dept)
 
Porn, the leading influencer of Technology
Porn, the leading influencer of Technology Porn, the leading influencer of Technology
Porn, the leading influencer of Technology Tricode (part of Dept)
 
De 4 belangrijkste risicofactoren van het nearshoring proces
De 4 belangrijkste risicofactoren van het nearshoring procesDe 4 belangrijkste risicofactoren van het nearshoring proces
De 4 belangrijkste risicofactoren van het nearshoring procesTricode (part of Dept)
 
Internet Addiction (Social Media Edition)
Internet Addiction (Social Media Edition)Internet Addiction (Social Media Edition)
Internet Addiction (Social Media Edition)Tricode (part of Dept)
 
Kids Can Code - an interactive IT workshop
Kids Can Code - an interactive IT workshopKids Can Code - an interactive IT workshop
Kids Can Code - an interactive IT workshopTricode (part of Dept)
 
How Technology is Affecting Society - STM 6
How Technology is Affecting Society - STM 6How Technology is Affecting Society - STM 6
How Technology is Affecting Society - STM 6Tricode (part of Dept)
 
Monolithic to Microservices Architecture - STM 6
Monolithic to Microservices Architecture - STM 6Monolithic to Microservices Architecture - STM 6
Monolithic to Microservices Architecture - STM 6Tricode (part of Dept)
 
AEM Digital Assets Management - What's new in 6.2?
AEM Digital Assets Management - What's new in 6.2?AEM Digital Assets Management - What's new in 6.2?
AEM Digital Assets Management - What's new in 6.2?Tricode (part of Dept)
 
10 nearshoring it trends om in 2016 te volgen
10 nearshoring it trends om in 2016 te volgen 10 nearshoring it trends om in 2016 te volgen
10 nearshoring it trends om in 2016 te volgen Tricode (part of Dept)
 
Why you should use Adobe Experience Manager Mobile
Why you should use Adobe Experience Manager Mobile Why you should use Adobe Experience Manager Mobile
Why you should use Adobe Experience Manager Mobile Tricode (part of Dept)
 
Introducing: Tricode's Software Factory
Introducing: Tricode's Software FactoryIntroducing: Tricode's Software Factory
Introducing: Tricode's Software FactoryTricode (part of Dept)
 

More from Tricode (part of Dept) (20)

The Top Benefits of Magnolia CMS’s Inspirational Open Suite Ideology
The Top Benefits of Magnolia CMS’s Inspirational Open Suite IdeologyThe Top Benefits of Magnolia CMS’s Inspirational Open Suite Ideology
The Top Benefits of Magnolia CMS’s Inspirational Open Suite Ideology
 
Agile QA 2017: A New Hope
Agile QA 2017: A New HopeAgile QA 2017: A New Hope
Agile QA 2017: A New Hope
 
Mobile Sensor Networks based on Smartphone devices and Web Services
Mobile Sensor Networks based on Smartphone devices and Web ServicesMobile Sensor Networks based on Smartphone devices and Web Services
Mobile Sensor Networks based on Smartphone devices and Web Services
 
Keeping Your Clients Happy and Your Management Even Happier
Keeping Your Clients Happy and Your Management Even Happier Keeping Your Clients Happy and Your Management Even Happier
Keeping Your Clients Happy and Your Management Even Happier
 
Intro to JHipster
Intro to JHipster Intro to JHipster
Intro to JHipster
 
Porn, the leading influencer of Technology
Porn, the leading influencer of Technology Porn, the leading influencer of Technology
Porn, the leading influencer of Technology
 
De 4 belangrijkste risicofactoren van het nearshoring proces
De 4 belangrijkste risicofactoren van het nearshoring procesDe 4 belangrijkste risicofactoren van het nearshoring proces
De 4 belangrijkste risicofactoren van het nearshoring proces
 
Internet Addiction (Social Media Edition)
Internet Addiction (Social Media Edition)Internet Addiction (Social Media Edition)
Internet Addiction (Social Media Edition)
 
Kids Can Code - an interactive IT workshop
Kids Can Code - an interactive IT workshopKids Can Code - an interactive IT workshop
Kids Can Code - an interactive IT workshop
 
RESTful API - Best Practices
RESTful API - Best PracticesRESTful API - Best Practices
RESTful API - Best Practices
 
Deep Learning - STM 6
Deep Learning - STM 6Deep Learning - STM 6
Deep Learning - STM 6
 
How Technology is Affecting Society - STM 6
How Technology is Affecting Society - STM 6How Technology is Affecting Society - STM 6
How Technology is Affecting Society - STM 6
 
Monolithic to Microservices Architecture - STM 6
Monolithic to Microservices Architecture - STM 6Monolithic to Microservices Architecture - STM 6
Monolithic to Microservices Architecture - STM 6
 
Customers speak on Magnolia CMS
Customers speak on Magnolia CMSCustomers speak on Magnolia CMS
Customers speak on Magnolia CMS
 
Quality Nearshoring met Tricode
Quality Nearshoring met TricodeQuality Nearshoring met Tricode
Quality Nearshoring met Tricode
 
AEM Digital Assets Management - What's new in 6.2?
AEM Digital Assets Management - What's new in 6.2?AEM Digital Assets Management - What's new in 6.2?
AEM Digital Assets Management - What's new in 6.2?
 
10 nearshoring it trends om in 2016 te volgen
10 nearshoring it trends om in 2016 te volgen 10 nearshoring it trends om in 2016 te volgen
10 nearshoring it trends om in 2016 te volgen
 
Tricode & Magnolia
Tricode & MagnoliaTricode & Magnolia
Tricode & Magnolia
 
Why you should use Adobe Experience Manager Mobile
Why you should use Adobe Experience Manager Mobile Why you should use Adobe Experience Manager Mobile
Why you should use Adobe Experience Manager Mobile
 
Introducing: Tricode's Software Factory
Introducing: Tricode's Software FactoryIntroducing: Tricode's Software Factory
Introducing: Tricode's Software Factory
 

Recently uploaded

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 

Recently uploaded (20)

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 

Magnolia conference 2014: Tricode, Technical road to Tricode SAAS, powered by Magnolia CMS

  • 1. Tricode BV De Schutterij 12 -18 3905 PL Veenendaal The Netherlands tel: 0318 - 559210 fax: 0318 - 650909 www.tricode.nl info@tricode.nl SaaS + CMS: Tricode’s technical roadtrip Ronald Kerstens and Gerton ten Ham
  • 2. Agenda 1. Tricode introduction 2. Road to a Tricode SaaS 3. Tricode SAAS project 4. Lessons learned..during the roadtrip 1. Needs versus solutions 5. Questions & Answers
  • 3. Tricode • Founded in 1999 • Based in • Veenendaal, Netherlands (NL) • Skopje, Macedonia (MK) • 2014: 55 employees • 35 in NL • 20 in MK • 20+ customers in NL, BE, UK
  • 4. “We support organizations in creating and maintaining an online presence by use of several content management, customer experience and e-commerce technologies. We boost online conversion rates by delivery of know- how, projects and services to our customers”. 4 Tricode
  • 7. Road to Magnolia CMS 2011 • Tricode becomes AEM CXM implementation partner 2012 • Search for Java CMS supplement to AEM: Magnolia CMS 2013 • First Magnolia CMS project : BplusC library website
  • 8. Road to Tricode SAAS 2014- Q1 • BplusC Magnolia 5 solution released • Brainstorming Tricode SAAS product vision 2014- Q2 • Start of Tricode SAAS development project • Alpha release 1.0 of SAAS 2014-Q3 • Continuation of Tricode SAAS development project • Release 1.0 of Tricode SAAS 2014-Q4 • Release 1.1 of Tricode SAAS
  • 9. Road to Tricode SAAS Features of a Tricode cloud WCM service: 1. Hosted CMS solution 2. Managed hosting & CMS support services 3. Automated CMS & website provisioning 4. Customer WCM self service 5. Additional/optional WCM & eCommerce features 6. Product based release management 7. Multiple product editions Tricode Cloud WCM Powered by Magnolia CMS and Konakart
  • 10. Tricode SAAS project • SAAS alpha development project – In scope: • Customer WCM self service • Product based release management • Additional/optional WCM & eCommerce features • Multiple product editions – Out of scope: • Automated Website/CMS provisioning • Hosted CMS solution (done by hosting partner) • Managed hosting & CMS support services 2014- Q2 • Start of SAAS development project • Alpha release 1.0 of SAAS 2014-Q3 • Continuation of SAAS development project • Release 1.0 of SAAS Tricode Cloud WCM Powered by Magnolia CMS and Konakart
  • 11. Tricode SAAS project Business needs Implementation Customer self service Simplified Magnolia CMS configuration • Mobile first and easy styling/branding tooling • Standardized user authorization model • WAAS Admin app • Preconfigured middleware and data storage software Product release management Simplified release deployment • Continuous Integration & delivery pipeline • Single .WAR file = simplified deployments • Standardized hosting environments Additional/optional WCM & eCommerce features More end user product features • Simple blog & news content centric apps • eCommerce storefront components and admin app Multiple product editions Targeting web marketing and ecommerce customers • Basic Cloud WCM edition • High Availability Cloud WCM & eCommerce edition
  • 12. Project Goal Not a CMS development platform, but an end user CMS & commerce product solution
  • 14. Summary of requirements • Product release management • Multiple product editions • Customer self service / pre-configuration • Additional features
  • 16. Simplified release deployment Implementation need: • Simple Magnolia CMS deployment with a product war file
  • 18. Building Magnolia At first… • Manually specifying which module version must be used for the Magnolia bundle of choice Evolved in… • Importing one dependency for the Magnolia bundle of choice <dependency> <groupId>info.magnolia.bundle</groupId> <artifactId>magnolia-bundle-parent</artifactId> <version>5.2.5</version> <type>pom</type> <scope>import</scope> </dependency>
  • 19. A classic read cont'd
  • 21. Simplified release deployment Implementation needs: • Pipeline to build a tested single war file • Create a new release of the artifact, archive old versions • Automated deployment of the artifact
  • 24. Automate deployment • Start a wiki page and write down all steps that are needed to perform the deployment.
  • 25. Automate deployment • Do several deployments by the instructions. – If something is missing – add it. If something is wrong – fix it. • After a while write scripts and start using them instead. • Use Jenkins to start the scripts for you.
  • 26. Customer self service Middleware (pre-)configuration
  • 27. Simplified release deployment Implementation needs: • Easy to deploy and upgrade middleware software and data storage system • High Availability and high performance hosting environment • Secure connections and secure data storage
  • 30. Secure connections • Author environment: – https://<client>-adm.tricode-cms.nl • Public site: – https://<client>.tricode-cms.nl – http(s)://www.example.com
  • 31. SSL redirect in Apache How do we know when to redirect a public page to https?
  • 32. Using Apache rewrite rules RewriteCond %{REQUEST_URI} ^/login [OR] RewriteCond %{REQUEST_URI} ^/register [OR] RewriteCond %{REQUEST_URI} ^/my-account RewriteRule ^/(.*) https://www.example.com/$1 [R=301,L]
  • 34. Apache has to change… RewriteCond %{REQUEST_URI} ^/login [OR] RewriteCond %{REQUEST_URI} ^/register [OR] RewriteCond %{REQUEST_URI} ^/my-account RewriteRule ^/(.*) https://www.example.com/$1 [R=301,L]
  • 36. Customer self service Magnolia (pre-)configuration
  • 37. Simplified Magnolia CMS configuration Implementation needs: • Superuser account not accessible to SAAS subscribers! • Customer self service requires simple user authorization model: customer only wants to add users in user groups.
  • 38. Magnolia pre-configuration • Using custom installation tasks 1. Change superuser account @Override protected List<Task> getExtraInstallTasks(InstallContext installContext){ final List<Task> tasks = new ArrayList<Task>(); tasks.addAll(super.getExtraInstallTasks(installContext)); tasks.add(new ChangePasswordTask("/system/superuser", SYSTEM_SUPERUSER_PWD)); return tasks; } • Security app bootstrap files – Standard users, groups and roles
  • 41. Implementation needs: • Mobile first • Easy styling/branding of website by customer • Use of market leading web frontend development framework for layouts Simplified Magnolia CMS configuration
  • 42. Foundation Templating Kit • Why Foundation CSS framework? – Full responsive -> Mobile first – Standardized markup: Easy override of standard layout – Backed by a company and large user community – Time for an alternative next to STK?
  • 47. More end user product features Implementation needs: • Magnolia CMS easy and secure application configuration • Integration of standard Magnolia CMS modules in Foundation Templating Kit • Website Blog integration • Website e-Commerce integration
  • 48. Easy and secure configuration VS.
  • 49. Standard Form module • Standard module extended with Foundation based templates
  • 50. Forms validation • Foundation Abide: HTML5 form validation
  • 51. Standard Imaging module • Generators: small, medium and large • Foundation interchange plugin loading responsive images
  • 52. Blog module • Website integrated blog
  • 53. e-Commerce module • Based on Konakart Community Edition • Uses Konakart SOAP interface (loosely coupled) • Freemarker based components: – Login/register/my-account – Product catalog – Basket – Basic checkout • SOAP integrated Konakart Admin App for Magnolia 5.3
  • 57. Conclusion Delivering Tricode Cloud WCM = Not only hosting and provisioning implementation but includes Development of an enhanced end user CMS product solution
  • 58.