Upload
joe-gollner
View
475
Download
1
Embed Size (px)
DESCRIPTION
This is an older presentation (from 2007) that somehow did not make it up onto Slideshare. I have gone through it and made a series of modifications in part to bring it up to date. It turned out that its core theme remains as valid (IMHO) as it was five years ago. Essentially, this presentation was intended to be a corrective to a common habit of viewing XML standards as either unchanging religious artifacts that must be obeyed without question, or as solutions that will somehow solve each and every problem a given organization might be facing.
Citation preview
Joe Gollner
Gnostyx Research Inc.
www.gollner.ca
@joegollner
An Implementer’s Guide
to XML Standards
An Implementer’s Guide to XML Standards
• Some Initial Case Studies
• Thinking about Standards • Fundamentals
• Evaluating Standards
• Implementing Standards
• Hazards
• The XML Firmament • The Expanding Universe
• A Tale of Two Standards • S1000D
• DITA
• FUSION
Case 1: Faux Standardization
• Legal Sector (1999 – 2001)
• Requirement:
Digital Evidence Interchange
amongst courts and case
participants
• Potential References:
LegalXML initiative
• Discovery:
• Standards barely emergent
• Focused on small problems
• Untested in implementations
• Heavily influenced by a
small group of tool vendors
Case 2: Standardization by Edict
• Energy Sector (1993 – 2003)
• Requirement:
Interchange protocol for
proposals, interventions & cases
• Regulatory Agencies
Developed & mandated an
interchange standard together
with associated process &
applications
• Result:
Unusable protocol, unintelligible
process & unstable applications Complete failure of initiative
Case 3: Standards in Action: A Success Story
Standardization enabling
efficient global trade
Thinking about Standards
• The Truth about Standards
“The wonderful thing about standards
is that there are so many of them to choose from”
Rear Admiral Grace Murray Hopper
(Amazing Grace) US Navy
• She was one of the first Programmers (Harvard Mark I)
• She is credited with writing the first program compiler
• She found a moth in a relay in the Mark II calculator and hence
passed the term “bug” into computing terminology
• Important Point
• Grace Hopper was focused on accomplishing things
• Standards were something chosen – as a means to an end
What do we mean by “Standard”?
• The word “Standard”
• Descends from Middle English for
“a flag raised on a pole as a rallying point”
• Shortening of “estendart” from
Old French for “extend”
• Common Uses
• an agreed level of quality or attainment
• something used as a measure, norm or
model in comparative evaluations
• principles of conduct informed by notions of
honor and decency
• accepted as normal or average
• not special or exceptional Source: OED
The Objective of Standards
• Interoperability enabling • Opportunity Realization
• Risk Minimization
• Cost Reduction
• Relevant Domains • Information Interchange
• Process Coordination
• Application Alignment
• Standards Lifecycle • Emergence
• Maturity
• Retirement
Evaluating Standards
• Independence • From parochial interests, proprietary claims, external influences
• Formality • Of creation, validation, approval & modification process
• Stability • Of standard over time & the backward compatibility of changes
• Completeness • Sufficiency for declared scope as well as availability of
useful documentation & reference implementations
• Adoption • Extent of support amongst tool vendors, authorities & users
• Practicality • The extent to which all, or parts, of the standard can be deployed
Evaluating Standards: Case 1
• Scenario • International
standard
• Esoteric
• Small stakeholder
community
• Mature
• Disuse
leading to
retirement
• Strategy • Harvest knowledge
& tools to reuse with
newer standards
SGML
Evaluating Standards: Case 2
• Scenario • Web
recommendation
• Enabling capability
• Solid stakeholder
community
• Emergent
• Adoption
leading to
maturity
• Strategy • Participate
• Plan for adoption
XML
Evaluating Standards: Case 3
• Scenario • Industry
specification
• Broad scope
• Specialized
stakeholder
community
• Continuously
emergent
• Strategy • Implement where
necessary
• Address risk areas
S1000D
Evaluating Standards: Case 4
• Scenario • Cross-industry
standard
• Addressing
widespread issues
• Broad stakeholder
community
• Mature
• Further capabilities
emerging
• Strategy • Plan for adoption
• Consider for use in
variety of areas
DITA
Selecting Standards
• Considerations
• Suitability
• Feasibility
• Criticality
• Adaptability
• Malleability
• Intended Benefits
• Knowledge Acquisition
• Project Acceleration
• Uniqueness Avoidance
• Industry Alignment
• Stakeholder Diversification
Implementing Standards
• Standards
• Incorporated into solutions
• Deliberately
• Methodically
• Included under
configuration management
• Version changes handled
in the same way as
product version changes
• Evaluation & testing
• Dependency monitoring
• Assessment of
alternatives
Hazards: The Standards Wars
• Standards are like sausages
• If you love them, don’t watch
them being made…
• One reason formality
is important
• Standardization is a key
competitive battleground
• Why adoption is important
• Broad adoption is a sign
• The competition is over
• The focus of competitive forces
has moved elsewhere
Hazards: Mistakes & Warning Signs
• Common Mistake: Confusing Standards for Solutions • Believing standards alone will solve problems
• Stretching standards to address all solution requirements
• Fixating on the reference implementations
• Focusing more on standards than on actual solutions
• Hoping that standardization will eliminate change
• Hoping standards will erase responsibility
• Warning Signs: Excessive complexity & change • Sprawling scope covering several domains
• Continual emergence of changes especially
• Non-backwards compatible changes
• Changes driven by narrow application demands
• Appearance of hyper-specialized products
The Amazing & Expanding XML Universe
Still an area of
activity although
commercial focus
has moved on
A Tale of Two Standards
• Projects will often
implement an array of
standards • Different technology venues
• Different functional requirements
• Different stakeholder communities
• Sometimes standards
supplement each other • S1000D
• DITA
• Others…
A Tale of Two Cities
as illustrated by Ralph Bruce
S1000D – Modernizing Equipment Information
• Purpose • S1000D is an international specification for
the procurement and production of
technical publications
• Key Goals • Cost saving on information generation
• Avoidance of duplications
• Cheaper deliverable publications
• Standard format for data exchange
to exploit future developments
• Enhanced inter-operability
2.3
1.7
3.0
1.8
2.1 2.0
1.9
2.2
…4.0
The Context of S1000D
• Technical Scope • Provide a global standard for the encoding, storage, exchange and
delivery of the technical information required to produce, operate and
support complex equipment systems
• Business Scope • Facilitate the effective digitization and streamlining of the information
supply chains associated with equipment systems that are being
increasingly developed through multi-lateral efforts
• Both the benefits and the challenges are great • The breadth of scope alone poses the substantial challenge of
incorporating an almost infinite array of specialized demands
Implementation Challenges with S1000D
• Challenges include • Tailoring specification to reflect project requirements
• Establishing & maintaining the required application suite
• Managing the impact on people & processes
• Adapting to change
• Reflecting project requirements
• Reflecting the evolution of the standard
• The question is whether there are techniques that
can be leveraged to address these challenges?
• More specifically, is there a standard that has made
addressing these challenges its overriding purpose?
• The answer to both these questions is “Yes”
The Tao of DITA: Specialization
Topic
Task ReferenceConcept
Specialization
Base
Elements
highlight programming software UI
new semantics specialization
Do
ma
ins
Ap
plic
atio
ns
Type Hierarchy
Default
Behaviour
Core Behaviour
Specializations
Specific
Overrides
Maps
Emerged within IBM as a means to manage application costs in the face of continually
evolving requirements. Experiences in other industries corroborated the value of
specialization as an essential response to these pressures.
Darwin Information
Typing Architecture
Using DITA to Implement S1000D?
• DITA can be leveraged as a tool
• To define and tailor precisely specialized information types that help authors produce the required content
• Adaptations can be made to handle unique equipment requirements
• Adaptations can be made to handle legacy or parallel requirements that are not addressed in S1000D (nor should be)
• Application architecture can be streamlined while also improving the precision & value of the content
The Solution Takes Precedence
• One suggestion has been to
integrate S1000D and DITA
One standard to rule them all
• This would be a
dubious undertaking
• The two standards embody two different,
but complementary, bodies of knowledge
• In any one solution, many standards will play a role:
• S1000D, DITA, ATA, XML, XSLT, XSL FO, WSDL,…
Top Ten Secrets for Implementation Success
• Don’t underestimate your content or your business
• Don’t underestimate the power of good automation
• Chose an appropriate tool set and validate your choices
• Don’t invest in expensive technology too early
• Carefully plan and execute migration activities
• Take a “customer service” focus in delivering tangible
benefits (new products / services) from your investments
• Be demanding of your suppliers (expect quality)
• Engage your stakeholders and “take control” of the solution
• Leverage standards, don’t be enslaved by them
• Be an active part of the community as a way to learn and as
a way to share what you have learned
Conclusions about Standards
• What do we take away from all this?
• Standards • are agreements formed by communities
• are intended to facilitate interoperability
• can be applied to information, technology and practices
• should result in improved quality and cost-effectiveness
• What does this really mean? • standards are primarily important to collaborating enterprises
• standards help avoid unnecessary effort and expense
• standards enable constructive competition
• standards must enable & not obstruct improvement & innovation
An Implementer’s Guide to XML Standards
• FUSION (1993) • Focused
• Use of
• Standards for
• Integrating
• Organizations and
• Networks
• A sensible posture • Places the Solution on top
• Deploys standards
• To achieve solution goals
• To realize the intrinsic potential manifest in good standards