22
Paul Taylor, Solution Architect October 29, 2014 DECOUPLED ARCHITECTUREAND MVC

DECOUPLED ARCHITECTUREAND MVC

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Paul Taylor, Solution Architect October 29, 2014

D E C O U P L E D A R C H I T E C T U R E A N D M V C

CMS Publishing Architectures

Decoupled Architecture and MVC Agenda

DECOUPLED ARCHITECTURE AND MVC - AGENDA

ASP.NET MVC Deployment Architecture

Resources

Your Feedback

DEMO: ASP.NET MVC Deployment with CrownPeak

2

CMS Publishing Architectures

CONFIDENTIAL

CMS PUBLISHING ARCHITECTUREIMPORTING / EXPORTING DATA

Any Platform

Anywhere…AnyIntegration

Any Device

4

CONFIDENTIAL

CMS PUBLISHING ARCHITECTUREDECOUPLED

ARCHITECTURE AND MVC

Delivery

Dynamic Services

Core Content Management

Template-Managed I/O

Policies and Standards

Input Processing

Search Management

Targeting and PersonalizationRepository

(content, security, workflow)

EndUser

System

Content DeliveryContent Management

Output Generation

5

CONFIDENTIAL

CMS PUBLISHING ARCHITECTUREDECOUPLED

ARCHITECTURE AND MVC

Core Content Management

Template-Managed I/O

Policies and Standards

Input Processing

Repository(content, security, workflow)

Content DeliveryContent Management

Output Generation

Delivery

CrownPeak-Hosted Platform

Customer-Hosted Platform

Third-Party Service

6

CONFIDENTIAL

CMS PUBLISHING ARCHITECTUREDECOUPLED

ARCHITECTURE AND MVC

Core Content Management

Template-Managed I/O

Policies and Standards

Input Processing

Repository(content, security, workflow)

Content DeliveryContent Management

Output Generation

Delivery

Java EE (JSP)

.Net (ASP)

PHP

XML

CSV

JSON

7

CONFIDENTIAL

MVC DeploymentArchitecture

CONFIDENTIAL

WHAT IS MVC?MVC

DEPLOYMENT ARCHITECTURE

“Model-view-controller (MVC) is a software architectural pattern for implementing user interfaces”

Divides an application into three interconnected parts, abstracting responsibility into each

The Controller sends commands to the model to update its stateThe Model notifies its associated Views and Controllers where there has been a change in stateThe View requests information from the model to generate output to the user

http://en.wikipedia.org/wiki/Model–view–controller

9

CONFIDENTIAL

MVC AND CROWNPEAK?

In terms of the CrownPeak CMS, an MVC deployment is no different to anything else

We still publish files, from templates, onto a publishing target

MVC DEPLOYMENT

ARCHITECTURE

10

CONFIDENTIAL

MVC AND CROWNPEAK?

CompromiseMVC separates Model, View & ControllerThe CMS doesn’t understand the MVC concept, and so can’t separate Model from View to enable CMS preview

Traditionalists won’t like the breakdown of rulesAccommodate some compromises to work with a CMS tool

It’s not all change…Still work with Global Layouts, Views, Partial Views, ViewBag, ViewData & RAZR syntax!There are no requirements for custom code to be deployed on the Delivery Server

MVC DEPLOYMENT

ARCHITECTURE

11

CONFIDENTIAL

MVC AND CROWNPEAK?MVC

DEPLOYMENT ARCHITECTURE

Models

Controllers

Layout(s)

View(s)

ASP.NET MVC Application

Configuration

Developer Maintained Code

Model(s)

Controller(s)

Configuration (routes)

CrownPeak CMSLayouts

Views / Partial Views

Developer Maintained Code

CrownPeak CMSPreview

12

CONFIDENTIAL

Demo: ASP.NET MVC

Deployment with CrownPeak

CONFIDENTIAL

DEMODECOUPLED

ARCHITECTURE AND MVC

Deploy site as an ASP.NET MVC Application from within the CrownPeak CMSBuild site structure & templates in the CMS to facilitate the deployment of Views into the custom ASP.NET MVC projectConfigure custom publishing rules

Build a custom ASP.NET MVC project in C# to handle Models & Controllers

ASP.NET MVC Application

/bin, /Views,/Global.asax,/Web.configDeveloper

Maintained CodeVisual Studio

(Models, Controllers, Routes)

CrownPeak CMSOutput Template Files

(Layouts, Views, Partial Views)

Microsoft IIS Server

14

CONFIDENTIAL

Resources

CONFIDENTIAL

RESOURCESPlaybooks – Available on CrownPeak Connect

https://connect.crownpeak.com/developers_and_partners/solutions/solutions_reference_guides/documents/design-patterns-best-practices/playbooks/crownpeakplaybookmvcimplementationspdf

Best Practicehttps://connect.crownpeak.com/developers_and_partners/solutions/solutions_reference_guides/documents/design-patterns-best-practices/best_practices/crownpeakmvcreferencearchitecturepdf

Discussionhttps://connect.crownpeak.com/developers_and_partners/forums/solutions_and_extensions

SEARCH G2 -INTRODUCTION

16

Before we go…

Your Feedback

Product Management

Community Feedback Developers

Customer Success

We want your feedback!We are here to hear your ideas and requests.

PARTNER SUMMIT - FEEDBACK

18

MEET THE TEAM

MAKE

SUGGESTIONS

ASK QUESTIONS

Partners and Developers

Access to Customer Success and Product Teams

PARTNER SUMMIT - FEEDBACK

20

FEEDBACK?

Partners and Developers

PARTNER SUMMIT - FEEDBACK

21

CrownPeak + Web Experience Management