dita and agile are made for each other - draft · dita and agile are made for each other ......

40
DITA and Agile are Made for Each Other Keith Schengili-Roberts DITA Information Architect, IXIASOFT

Upload: duongtram

Post on 07-Jul-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

DITA and Agile are

Made for Each Other

Keith Schengili-Roberts

DITA Information Architect, IXIASOFT

Agenda

• Introduction

• Documentation Management

� History / Beginnings

�Waterfall vs. Agile

� Flavors of Agile

• DITA and Agile

� Popularity and growth of DITA

� How DITA Helps Technical Writers Working in an Agile

Environment

� “Semi-Agile”

� Specific examples / Case studies

• Q/A

Who’s This Guy?

• Keith Schengili-Roberts

What I do:

• DITA evangelist

• Liaison with OASIS; on DITA

Adoption and Technical

Committees

• Industry researcher

• Also lecturer on Information

Architecture at the University of

Toronto

• Have 10+ Years of experience with

DITA XML

Am Also “DITAWriter”

• Industry blog started ~5 years

ago

• Just over 185,000 hits

• Have regularly updated info on

DITA Conferences, DITA

Books, Companies Using DITA,

DITA CMSes, DITA Editors,

other DITA Tools, and DITA

Consulting Firms

• News and views on DITA use

• Also features interviews with

those making a difference in the

world of DITA

Another Thing People Might Not Know About Me…

• I have always had an interest

in Management studies and

hold a Masters in Public

Administration (MPA)

� Have been exposed to many

management trends over the

years, and teach Lean

techniques in my IA course

� Am particularly interested in

effective management of

documentation groups

Beginning of Technical Writing

• There has always been a

need to instruct people on

how to do practical things,

including:

� Ancient Egyptian medical and mathematical texts

� Certain Ancient Greek philosophical works

� Roman engineering texts

� Medieval instructional publications

• In English, the first instruction manual is widely considered to be Chaucer’s “A Treatise on the Astrolabe”

Technical Writing as a Cottage Industry

• Technical writing as we know it

started in early 20th century

� Ford Model T manual (1919) is a

good example of this

� Joseph Chapline wrote first

computer manual for BINAC

(1949)

• Was often done by a single

person, often a SME

• They tended to idiosyncratic

and often one-offs

• You didn’t need to “manage” a

single person writing content

Technical Writing and DTP

• Growth of technical writing developed

(primarily) alongside growth of software

industry

• Desktop Publication Programs made it

possible to writers to create documents

� Also opened up possibilities for

collaboration

• Initial attempts were awkward, often

involved sneaker-net (passing a floppy disc

with content to another writer)

� Basically one isolated writer handing

content over to another

Waterfall Management and Technical Writing

• The waterfall model also began in the

software development realm, first

described in detail in early 1970s

• Sequential design process, starting

with analysis and ending with

maintenance (updates)

• Technical writing typically fell between

Coding and Testing phases, well after

Requirements and Design phases

� “Just document what’s there (or will be there.”

Problems with Waterfall Management

• Waterfall-based software projects were prone to failure

� In 1995 DoD found that of $35.7 billion spent by the organization on software, only 2 percent of the software was usable as delivered, and that 75% was either never used or was cancelled prior to delivery.

• Waterfall does not deal with changing/adapting to customer needs gracefully

The Need for Documentation Management

• As volume of content

grew, collaborative

documentation practices

became a necessity

� No longer

one writer=one

document, but

many writers=one

document

• Getting writers to

collaborate has been

described as being akin to

“cat herding”

Focus on Managing Documentation Processes

• As documentation

teams grew, was a real

need to coordinate tech

writing projects

• DITA is arguably the

natural evolution of

need for many writers to

work and reuse content

• [TBD]

Development of Agile

• Agile Manifesto written in 2001, advocated:

� Releasing early and often

� Build code daily, iterate on changes

quickly

� Embed skilled teams

• Many “flavors” of Agile have been

developed since then, but the basic tenants

still hold true

• For technical writers this meant:

�Work more closely with developers

� Provide early feedback on product

� Constant change/iterations of content

Many “Flavors” of Agile

• There are many different

techniques and

approaches that are Agile

or allied with Agile

• They include (but are not

limited to):

� Scrum

� Kanban

� eXtreme Programming (XP)

� Lean

Scrum and Kanban

Scrum:

• Focuses on emerging requirements and responding quickly to change

• Includes daily meetings held by Scrum Master, plan Sprints for work to be done in a short timeframe

• Review what team members have done, what they will do and whether there are impediments to progress

Kanban:

• Card-based “Just in Time” methodology originally used by manufacturers (Toyota)

• Kanban team focuses on work in progress; when done, pulls next card from top of backlog

• A goal is to optimize start to finish cycle time, teams make themselves and their work more efficient

Standup Scrum Meeting

Kanban Board

eXtreme Programming and Lean

eXtreme Programming (XP):

• Activities: coding, testing, listening, designing

• Assume simplicity, embrace change, rapid feedback

• multiple short development cycles, emphasis on feedback on code (unit tests) and customer (acceptance tests); this includes documentation

Lean:

• Seeks to eliminate things that do not add value to customer (“muda”, a type of waste)

• Continuous improvement, short iteration cycles, deliver as fast as possible

DITA + Agile = A Great Partnership!

DITA Agile

Topic-based approach Incremental development; can update

topics as required; self-contained

Task topics User stories; content is focused

squarely on what user needs to do

Individual topics can be counted; in a

CMS workflow can be measured

Need to track development progress;

easy to demonstrate progress

Best practice of minimalism Document only what needs to be

documented; Keep It Straight and

Simple (KISS) and Keep It Light (KIL);

Reduces waste

Reuse improves content consistency Continuous feedback from developers

and users

Iterative publication to multiple formats

on demand

No holdup for incremental product

releases

Agile Implications for Documentation

Processes

• Content creators have to work more closely with developers

• Documentation may support broader communication, such as between teams, customers, audit process, etc.

• Work cycles are faster, feedback more critical

• Efficient documentation tools make things easier (single sourcing, structured content, CMS)

What This Means in Practice for Tech Doc Teams

• Work more closely with developers

� Tech writer assigned to work with one or more

development teams; does regular reports on progress

(Scrum with Stand-up meetings, Kanban priorities, etc.)

• Provide early feedback on product

� Through active use of product tech writers often become

advocate for users; helps define realistic user stories

• Constant change/iterations of content

� Incremental releases, and a change of focus from

“document everything” to “document only what the user

needs”

ISO Standard for Agile Documentation

• ISO/IEC/IEEE 26515:2011-

12 is an ISO standard

describing how to develop

user documentation in an

Agile environment

• Neatly outlines everything

you need to know about

Agile + documentation

• Dates to 2012, and there is

currently a drive to update it

Similarities Between Agile and DITA Sectors

• Though not a direct correspondence, there is significant

cross-over between DITA- and Agile-using firms

DITA is Clearly Popular Among Agile Teams

• DITA is the most popular form of structured content used

by Agile teams (data from LinkedIn):

0

10

20

30

40

50

60

DITA XML + Agile vs.DITA XML Alone

DocBook + Agile vs.DocBook Alone

SGML + Agile vs.SGML Alone

S1000D + Agile vs.S1000D Alone

FrameMaker + Agile vs.FrameMaker Alone

Overall Percentage of Users with Agile Experience per Specification/Tool

• Content reuse: “write once,

use many”

� No need to re-write what

already exists

� Content consistency

� Single-sourcing is built in

Agile and Content Reuse in DITA

“[DITA] handles the reuse of small information chunks brilliantly. My

engineers reused functions and objects constantly as they developed new

features. I found it invaluable to be able to conref (reuse by reference)

previously written tables, sections, paragraphs, procedure steps, etc..

During that last long night at the end of sprint I was never too proud to

reuse available writing.”

– Stan Doherty

A DITA Advantage: Separation of Form and Content

• Time is spent writing rather

than formatting

� Separating content from

formatting saves considerable

time

In an informal survey done on a team of technical writers using

popular DTP software, roughly half of their time was spent

formatting content. That time can now instead be put towards

writing more Agile content in a structured XML environment

Tech Writers Become Part of Feedback Loop

• Tight integration of tech writers

with development team opens

possibilities for early feedback

on product development

“The goal of technical

communicators is not to explain

confusing product features, but to

prevent them.” – Tim Grantham,

2008

Separate Content Management from Authoring

• Ideally IA / Manager are

several iterations ahead and

planning out topics to be

authored

�Map with topics created,

writers “fill in the blanks”

� Helps to emphasize that

writers need to be embedded

with development + QA

Only Document What is Necessary

• Not only based on feedback from developers, but

also from users

• When possible, track online usage from published

docs, and prioritize user-favored content

� One interesting result: UI-related content “how to” style

content is reduced and UX is improved by writer

feedback, ensuring UI is more usable

User Stories and DITA Tasks

• Scrum-based Agile often

calls upon User Stories to

craft development

• Often take form of various

procedures that users will

want to accomplish; this fits

DITA’s topic types nicely

“DITA allows correlating user stories to specific procedures

much easier than other less granular formats. This can be

utilized in some pretty creative ways to apply principals of

continuous integration, and testing to documentation.”

- Casey Jordan

User Stories and DITA Tasks (cont.)

• Agile Best Practice for

writing tasks:

� Instead of writing a concept to

be followed by a task,

encapsulate that concept as

the context for a task instead

� Depending on scenario,

describe expected outcomes

for individual steps/conclusion

� Use concept topics to link

between tasks

Concept

Task

Task

Context

Short Descriptions Direct Users to Content

• Writing short description for

DITA topics is already

considered a best practice

� Arguably more so for Agile-

based content, as it provides a

means of progressive

disclosure as to the relevancy

of content to users

� Can be similar in intent to a

user story: “User x can do y

based on z”

DITA 1.3 Troubleshooting and Agile

• DITA 1.3 adds troubleshooting

as a new topic type

• Designed to provide specific

solutions to scenarios that are

likely to arise, and how to solve

them

• Will be welcomed by Agile

writers who are looking for a

trouble-shooting option for user

stories and where a task may

not be an appropriate solution

“The troubleshooting pattern

of condition > cause >

remedy is essentially a

scenario.”

- Bob Thomas

DITA Topic Granularity and Measurability

• DITA’s topic-based approach

also makes it easy to measure

content

� Within a CMS it is also possible to track how “done” topics within a map are

• DTP-based docs much harder

to track due to lack of this level

of granularity

“Our project managers could track progress of

documentation deliverables within our DITA-based

CMS on a daily basis.”

- Jason Owen

Feedback is Part of Agile

• Documentation feedback is

a developer requirement

under Agile

• Using DITA, turnaround of

topic-based review with

SMEs much reduced

� SMEs can provide

feedback in a more timely

manner

“Developers would review topics on the spot in the Agile

team room. Agile also left no room for procrastination, so

this was an easy way for them to check this off their own

task list.” - Jason Owen

Common Problems Encountered by Tech Doc Teams

Problem #1: Agile will not solve

understaffed tech doc teams

Symptoms:

• Writers cannot attend stand-

up meetings due to scheduling

conflicts

• Writers perennially falling

behind on assigned topics to

write

A good Agile process manager will recognize the problem

and either throttle back work or bolster effort for new hires

Common Problems Encountered by Tech Doc Teams

Problem #2: Need to make

documentation “glue” for publications

� Applies to cases where a full

manual is expected

� High-level introductory or

conceptual material not typically

accounted for in a sprint

� There’s still a need to answer the

“why would you use this?” type of

question

Solution is to recognize this need up front, and allow for it in

the overall documentation plan

An Example of How DITA Can Enable Agile

Lean methodology employed at AMD; early on localization was a focus:

• Under old toolchain could only localize software (with 1 month cadence) once every 6 months

• Using DTP-based processes, it was costly, slow and process did not allow for feedback

DITA + CMS made localizing on a monthly cadence possible

• Demonstrated considerable costs savings

• Localization staff could focus on quality and provide developers with feedback

Localization Process Pre-Lean:

Localization Process After-Lean + DITA + CMS:

DITA + Agile Case Study #1

• Client in semiconductor industry

� Prior to move to DITA, used traditional Waterfall method

� A “doc build” with their DTP program could take as long as a day; longer if it crashed

� DITA opened up possibility of moving tech docs to a more Agile approach

• Results:

� Considerable time saved by no longer dealing with formatting issues

� Topic-based review process has greater uptake with SMEs than “here’s a whole finished manual for you to read”

� Can now do daily “publication builds” of their content; early access given to tier 1 clients

DITA + Agile Case Study #2

• Client in Software sector

� Writers were already embedded in software development teams, but existing DTP tools meant they were always trying to catch up

� Lack of granularity meant that DTP-produced documents were hard to track

• Results:

� DITA + CMS means that writers now have the time to both create content and to participate fully in the Agile process

� Per topic progress reports now possible; now a regular part of scrum meetings, and can even be done on-the-fly on request

Some Parting Thoughts

“DITA did not directly enable or guarantee

effective documentation in an Agile/SCRUM

environment, but it sure saved my bacon in

supporting multiple scrum teams with variant

definitions of done.”

- Stan Doherty

“Agile development goes hand in hand with

topic writing, and I think this is why it’s a

perfect match for DITA. I love working in

Agile! It makes my life as a writer much,

much easier.”

- Nathalie Laroche

Q/A