16
Use this title slide only with an image Large Scale Production Using Project Maps Youssef BENNANI Nov 13, 2016 Public

Large Scale Production DITA landscape @SAP

Embed Size (px)

Citation preview

Page 1: Large Scale Production DITA landscape @SAP

Large Scale Production Using Project Maps

Youssef BENNANINov 13, 2016

Public

Page 2: Large Scale Production DITA landscape @SAP

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Public 2Public

Agenda - DITA-OT Conference – Munich 2016

This presentation will show how SAP has integrated the DITA Open Toolkit to create a large-scale production infrastructure able to build 60 000+ outputs daily for SAP product documentation. This covers the end-to-end process from DITA CMS to delivery channels, using project maps as a key ingredient.

• Introduction : SAP environment• DITA Adoption and growth• DITA Process and Landscape overview

• DITA Production process @SAP• Project(*) production life cycle based on project map• DITA Open Toolkit integration into the production landscape• Peer linking across outputs as example of advanced feature• Infrastructure optimization to scale

(*) Project : documentation set for a product shipment

Page 3: Large Scale Production DITA landscape @SAP

3Public

Introduction : SAP environment

Page 4: Large Scale Production DITA landscape @SAP

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Public 4Public

DITA implementation @SAP

150 authorsFirst productsFirst 12 languagesFirst outputs based on DITA Open Toolkit

General decision to use DITA

CMS evaluation and selection

Initial implementation and migration

Migration and scaling

Evaluation and decision to broaden

H2 2011 Q1 2012 Q2 2012-2013 2015 2016

Continuous improvement and incremental growth

2014

300 authors100 products21 languages12k+ outputs (daily)

700+ authors300 products47 languages60k+ outputs (daily)

Page 5: Large Scale Production DITA landscape @SAP

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Public 5Public

GermanyIndia

United StatesCanada

ChinaIrelandFrance

BulgariaIsrael

HungaryBrazilJapan

PolandUnited Kingdom

UkraineSwitzerland

United Arab EmiratesNew Zealand

Czech RepublicFinland

Russian FederationPortugal

KoreaSlovakia

MexicoSwedenAustria

Romania

0 100 200 300 400 500 600503

136100

8561

3331

251815

986422222211111111

1000+ CMS users (registered, not necessarily all active)

Some statistics

3+Million DITA filesx2 increase in 2Y

3200+Projectsx2 increase Y2Y

50%Migrated contentx1.4 increase Y2Y

0

500

1,000

1,500

2,000

2,500

3,000

3,500CMS Content

(# k-DITA files)

# Brand new files

Page 6: Large Scale Production DITA landscape @SAP

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Public 6Public

Automated pushes through daily builds

Software builds

Daily

Authors• Co-create with developers• Review with stakeholders

Reviewers/contributors• Access latest doc content

• Fix/add information directly in the right place

Translators• View source content

• Preview translation Internal Preview server

Daily

Translation(SOLITT)Every 1h

DITA builds

• Content validation, technical checking, and translation of documentation begins early and is performed continuously• Final preparation before publication is reduced to minimum

Day-to-day process overview

Page 7: Large Scale Production DITA landscape @SAP

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Public 7Public

SAP DITA Landscape overview

Walldorf

Bangalore

VancouverParis

Ra´anana

Sofia

Shanghai

Palo Alto

RDP serversBuild serversOutput generator

TEXTML Server

DITA Production landscape

DITA Production cluster

Translation landscapeROT Data Center

Exchange DITA CMS/ ORBITT

ORBITTExchange server

• ~40 servers in central data center, operated by IT

• Central admin team• RDP access for users

around the world

Page 8: Large Scale Production DITA landscape @SAP

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Public 8Public

SAP DITA Landscape detailed view

TEXTML AuthoringConnection, Replication, Document Base, Configuration, DTD …

Back-end Infrastructure (DC, Storage, cluster, Servers, failover …)

RDP Infrastructure(DC, Storage, Servers, Remote access)

CMS Client / RDP environment

CMS back-end environment

Output Generator Server PNG creationCloning Scheduler

Web Author (Browser)

Web Author Server

Production plugins: Production center, Build dashboard, Project Map editor …

Build environment

Delta fetch

IXIASOFT extensions Acrolinx

Schematron

Oxygen Customizations

IXIASOFT DITA Eclipse

Oxygen editor

…DITA Open Toolkit

DITA OT customization

Antenna house

DITA Output toolset

TEXTML LocalizationTranslation, Build, Back-up …

Replication

Translation exchange Translation system

(Hourly)

Content

(Daily)Structure

Delivery channels

(Daily, On demand)Deliverables

Deliverables

Internal Previewe

Server

DITA Build system

& scheduling

Build Infrastructure (DC, Build servers, Logistic Servers)

SAP DITA Build Framework

SAP

Non-SAP

Page 9: Large Scale Production DITA landscape @SAP

9Public

DITA Production process

Page 10: Large Scale Production DITA landscape @SAP

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Public 10Public

Project setup/update(Self-service)

Build(Automated)

Publishing(Automated)

Review & validation

Project content (Authoring,

Localization)

IXIASOFT CMS / Oxygen XML editorProje

ct Map

DITA CMS

Doc lead

Project Map Editor

Build DashboardInternal Preview Server

Author

Project production lifecycle• The project map defines the configuration of project’s outputs and publishing

o The consistency and enablement of the project production lifecycle is defined in one place : project map o It’s a ticket free life-cycle : moving across the cycle is either self-service or automated

Page 11: Large Scale Production DITA landscape @SAP

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Public 11Public

Fetch source from CMSBased on project map

Drop zone server

TEXTML server

Build server

Delivery channel

Bootstrap step

Clean step

Fetch step

Import stepImport DITA OT & 3rd party binaries

Compile step

Export stepExport outputs and logs to dropzone

Export outputs to Delivery channel

DITA Output toolset (using DITA Open Toolkit)

• Build lifecycle uses highly performant production framework with parallel compilation• Project configuration information defined in project maps is:

o transformed into properties passed to DITA Open Toolkit for producing branded SAP outputs (with SAP customizations)o used for automated publishing to delivery channels (e.g. Nexus, UA Content Platform…)

Output 1 (html)

Output 2 (html)

Output n (pdf)

DITA build landscapeBuild step

Page 12: Large Scale Production DITA landscape @SAP

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Public 12Public

4 5 6 7 8 9 10 112016

010000200003000040000500006000070000

2323227651 27918 30786

3844742719

5747363913

Average daily #outputs

Output formats & their customizations

• Advanced rendering features e.g. datatable, interactive image maps• Conditional processing : profiling, filtering & flagging• Customized linking behaviors• Language support, including right to left

SAP DITA Open Toolkit Framework

DITA Open Toolkit 1.6 (migration to v2.3 in progress)DITA Open Toolkit

Exposed to

• Continuous improvements in DITA Output toolseto Output formats (20+) and their customizable properties (100+) are exposed to Doc Leads through Project Map Editoro Integration of Open source components where applicable for better user experienceo Toolset changes are pushed automatically to daily builds after passing acceptance tests Quality assurance to +60k daily outputs

Doc Lead

Project Map EditorBuild

(Automated)Pushed to

… | Jquery | dataTable | Pretify | Lunr | …Open source components (JavaScript)

DITA Output toolset enhancement cycle

… Customizable properties …

DITA Output toolset

SAP

Non-SAP

…Antenna House

Page 13: Large Scale Production DITA landscape @SAP

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Public 13Public

Project AOutput O1

Topic T1

Project BOutput O2

Topic T2

O2O linking

Depends

Outputs

Project source

Build configuration

OTK pre-processBy output

collectionBy output format

CompileBy output

Output metadata

O2O Linkning metadata

Compilepre-process (except metadata)

xslt tranformation

« Package »

O2O link resolution

• Enables linking between outputs of the same collection (output format e.g. html5) within the same project or in the project dependency tree

• Implemented in daily Build (compile step)

Output-to-output (O2O) linking within documentation set

Page 14: Large Scale Production DITA landscape @SAP

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Public 14Public

• New architecture to support project dependencies in the CMS (project map) and in the build process• New Document base split architecture (one document base for authoring, another for localization and production)

with replication process to insulate authoring work from the performance impact of translation and production • New Delta Fetch mechanism for faster build process• New optimized build process with Delta compilation (only impacted outputs are re-built and published)

TEXTML Production Server

PROD cluster

DITA build servers

DITA RDP servers

Translation Management system

ReplicationAuthoring docbase

Localizationdocbase

TRANS exchange store

Delta fetch

Export / ImportTranslation exchange

Container store Delta fetch

TEXTML Authoring Server

End-Users

Delta-compilation

Recent scaling activities (to accommodate growth)

Page 15: Large Scale Production DITA landscape @SAP

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Public 15Public

• Rely on leading industry solutions and Open Source technologies where applicable

• Large volume requires continuous optimization of the landscape

• It’s key to build an internal community of stakeholders and experts to foster innovation and internal support

• It’s important to have a regular upgrade strategy (e.g. DITA Open Toolkit) and engage with external community to take advantage of updates and recent enhancements

Key takeaways and learnings

Page 16: Large Scale Production DITA landscape @SAP

16Internal

Thank youContact information:

Youssef BennaniHead of Engineering Services France

Products & Innovation, Technology