large scale production using project maps...o output formats (20+) and their customizable properties...

17
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Public Use this title slide only with an image Large Scale Production Using Project Maps Youssef BENNANI Nov 13, 2016 Public

Upload: others

Post on 26-Apr-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Large Scale Production Using Project Maps...o Output formats (20+) and their customizable properties (100+) are exposed to Doc Leads through Project Map Editor o Integration of Open

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

Use this title slide only with an image

Large Scale Production Using Project Maps

Youssef BENNANINov 13, 2016

Public

Page 2: Large Scale Production Using Project Maps...o Output formats (20+) and their customizable properties (100+) are exposed to Doc Leads through Project Map Editor o Integration of Open

© 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 Using Project Maps...o Output formats (20+) and their customizable properties (100+) are exposed to Doc Leads through Project Map Editor o Integration of Open

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

Introduction : SAP environment

Page 4: Large Scale Production Using Project Maps...o Output formats (20+) and their customizable properties (100+) are exposed to Doc Leads through Project Map Editor o Integration of Open

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

DITA implementation @SAP

150 authors

First products

First 12 languages

First 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 authors

100 products

21 languages

12k+ outputs (daily)

700+ authors

300 products

47 languages

60k+ outputs (daily)

Page 5: Large Scale Production Using Project Maps...o Output formats (20+) and their customizable properties (100+) are exposed to Doc Leads through Project Map Editor o Integration of Open

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

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

2

4

6

8

10

12

CMS Content(# k-DITA files)

Page 6: Large Scale Production Using Project Maps...o Output formats (20+) and their customizable properties (100+) are exposed to Doc Leads through Project Map Editor o Integration of Open

© 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 placeTranslators

• View source content

• Preview translationInternal 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 Using Project Maps...o Output formats (20+) and their customizable properties (100+) are exposed to Doc Leads through Project Map Editor o Integration of Open

© 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 servers

Build serversOutput generatorTEXTML 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 Using Project Maps...o Output formats (20+) and their customizable properties (100+) are exposed to Doc Leads through Project Map Editor o Integration of Open

© 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 Using Project Maps...o Output formats (20+) and their customizable properties (100+) are exposed to Doc Leads through Project Map Editor o Integration of Open

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

DITA Production process

Page 10: Large Scale Production Using Project Maps...o Output formats (20+) and their customizable properties (100+) are exposed to Doc Leads through Project Map Editor o Integration of Open

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

Project content (Authoring, Localization)

IXIASOFT CMS / Oxygen XML editorProject Map

DITA CMS

Doc lead

Project Map Editor

Build Dashboard

Internal Preview Server

Author

Project production lifecycle

• The project map defines the configuration of project’s outputs and publishingo 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 Using Project Maps...o Output formats (20+) and their customizable properties (100+) are exposed to Doc Leads through Project Map Editor o Integration of Open

© 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 Using Project Maps...o Output formats (20+) and their customizable properties (100+) are exposed to Doc Leads through Project Map Editor o Integration of Open

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

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 Using Project Maps...o Output formats (20+) and their customizable properties (100+) are exposed to Doc Leads through Project Map Editor o Integration of Open

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

Project A

Output O1

Topic T1

Project B

Output O2

Topic T2

O2O linking

Depends

Outputs

Project source

Build configuration

OTK pre-processBy output

collectionBy output format

Compile

By output

Output metadata

O2O Linkning metadata

Compile

pre-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 Using Project Maps...o Output formats (20+) and their customizable properties (100+) are exposed to Doc Leads through Project Map Editor o Integration of Open

© 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 / Import

Translation exchange

Container store Delta fetch

TEXTML Authoring Server

End-Users

Delta-compilation

Recent scaling activities (to accommodate growth)

Page 15: Large Scale Production Using Project Maps...o Output formats (20+) and their customizable properties (100+) are exposed to Doc Leads through Project Map Editor o Integration of Open

© 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 Using Project Maps...o Output formats (20+) and their customizable properties (100+) are exposed to Doc Leads through Project Map Editor o Integration of Open

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

Thank you

Contact information:

Youssef Bennani

Head of Engineering Services France

Products & Innovation, Technology

Page 17: Large Scale Production Using Project Maps...o Output formats (20+) and their customizable properties (100+) are exposed to Doc Leads through Project Map Editor o Integration of Open

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

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

No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP SE or an SAP affiliate company.

SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP SE (or an SAP affiliate company) in Germany and other countries. Please see http://global12.sap.com/corporate-en/legal/copyright/index.epx for additional trademark information and notices.

Some software products marketed by SAP SE and its distributors contain proprietary software components of other software vendors.

National product specifications may vary.

These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or warranty of any kind, and SAP SE or its affiliated companies shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP SE or SAP affiliate company products and services are those that are set forth in the express warranty statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional warranty.

In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or any related presentation, or to develop or release any functionality mentioned therein. This document, or any related presentation, and SAP SE’s or its affiliated companies’ strategy and possible future developments, products, and/or platform directions and functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time for any reason without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or functionality. All forward-looking statements are subject to various risks and uncertainties that could cause actual results to differ materially from expectations. Readers are cautioned not to place undue reliance on these forward-looking statements, which speak only as of their dates, and they should not be relied upon in making purchasing decisions.