odf interoperability: the price of success · a powerful pattern the standard contains the...
TRANSCRIPT
![Page 1: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/1.jpg)
ODF Interoperability:The Price of Success
Robert WeirSoftware ArchitectIBM Software [email protected]://www.robweir.com/blog
![Page 2: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/2.jpg)
What is Interoperability?
“Interoperability means the ability of information and communication technology (ICT) systems and of the business processes they support to exchange data and to enable the sharing of information and knowledge.”
IDABC's “European Interoperability Framework”http://ec.europa.eu/idabc/servlets/Doc?id=19529
![Page 3: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/3.jpg)
Legos – the intuitive example
Interoperable since 1958.
0.002mm tolerances.
![Page 4: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/4.jpg)
Many ODF ImplementationsOpenOffice
Google Docs
KOffice
AbiWord
MS Office
Notes 8
SEPT Mobile Office
With N editors, there are N*(N-1) interoperability paths: 2, 6,12, 20, 30, 42, 56, 72,90
![Page 5: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/5.jpg)
0 2 4 6 8 10
02
04
06
08
0
number of applications
inte
rch
an
ge
po
ssib
ilitie
s
![Page 6: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/6.jpg)
And don't forget the non-editors
Before:
Now:
Paper
Web
Web Service Database
Search EngineA single documentcan easily be touched by a dozen different applications from different vendors during its lifetime.
The ultimate destination of your document is unknown to you and likely unknowable.
![Page 7: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/7.jpg)
The Interoperability Tax
Web
Web Service Database
Search Engine
= processing step with loss caused by poor interoperability
Losses may be:
●Fidelity●Data●Performance●User frustration●Reputation●Opportunity
![Page 8: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/8.jpg)
Perfect Interoperability is Easy*
* But expensive
Cost per transaction
Leve
l of f
idel
ity
Automation
Manual rework
total_cost =
%automatic*cost_automatic+
%manual*cost_manual
Redo whatever automation fails to handle
![Page 9: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/9.jpg)
The Goal
* But expensive
Cost per transaction
Leve
l of f
idel
ity
Starting Point
Manual reworkAutomation
Improve the level of interoperability within the ecosystem
![Page 10: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/10.jpg)
A range of available editors
Visual Specificity
Stru
ctur
e
emacs
wiki editor
HTML editor
Photoshop
Illustrator
OpenOffice
![Page 11: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/11.jpg)
And a range of formats
Visual Specificity
Stru
ctur
e
Plain Text
HTML
ODF
JPEG
DITA/DocBook
![Page 12: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/12.jpg)
And in terms of control...
Control of the Receiver
Con
trol o
f the
Aut
hor
HTMLODF
JPEG
DITA/DocBook
User-to-User fidelityis high here
interoperability with business processes is high here
Modern WYSIWYG Editorsare caught in the middle
![Page 13: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/13.jpg)
So what do you emphasize?
● Modern word processor has evolved into a multi-paradigm tool that supports different styles of use:– Highly structured data oriented use– Ad-hoc, visually-oriented layout
● Users have expectations that OpenOffice is suited for both uses. Until the last person who ever used a typewriter is dead, this will continue.
![Page 14: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/14.jpg)
Traditional Trade-offs
1.Visual Richness of authoring environment2.Power3.Ability to say anything4.Pixel Perfection5.High Fidelity
1.Accessibility2.Universality3.Ability of everyone to understand4.Structure5.Semantic richness
Not a Law of Nature, but a tendency. The glory goes to thosewho can solve both problems at once.
![Page 15: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/15.jpg)
A Good Design Principle
Vigorous writing is concise. A sentence should contain no unneces-sary words, a paragraph no unnecessary sentences, for the same reason that a drawing should have no unnecessary lines and a ma-chine no unnecessary parts. This requires not that the writer make all his sentences short, or that he avoid all detail and treat his sub-jects only in outline, but that every word tell.
--William Strunk Jr. in The Elements of Style
![Page 16: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/16.jpg)
Things that cause problems
● Application issues– Implementation defects– Functional subsets– Functional supersets (extensions)
● Standard issues– Specification errors– Undefined behaviors– Implementation-defined behaviors
![Page 17: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/17.jpg)
The Conundrum
ODFStandard
OpenOfficeKOffice
Google Docs & Spreadsheets
What is the effective overlap?
![Page 18: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/18.jpg)
Solution Patterns● Standards-development
– Multi-vendor, multi-stakeholder participation– Expert review– Implementation concurrent with standards development
● Standards– Detailed conformance clauses– Deep schemas, allowing deep validation– Reference implementations
● Post-standardization activities– Translation of standard– Development of conformance assessment/certification– Multiple implementations
![Page 19: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/19.jpg)
A powerful pattern
Standard
Reference Implementation
Test Suite
![Page 20: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/20.jpg)
A powerful pattern● The standard contains the definition of a
conformant document– (but the standard may have errors or ambiguities)
● The test suite exercises and validates each feature of the standard– (but the test suite may have errors or omissions)
● The reference implementation is written to the standard, and tested with the test suite– (but the implementation may have errors or missing
functionality)
![Page 21: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/21.jpg)
Checks and Balances
● A test case fails. What is the cause?– An error in the application?– Is it an error in the test suite?– An error in the standard?
● Identify the cause of the failure● Fix● Continue until you have a complete test suite and a
reference implementation that passes all of the test cases.
![Page 22: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/22.jpg)
A Reference Implementation● Should implement 100% of the standard, including
all optional requirements.● It should be the first one, or one of the first
applications to implement any new feature in the standard.
● For any implementation-defined behaviors, it should document how it behaves.
● Although it may extend the standard, it should have a mode of operation where it is strictly conformant.
● Let's work to make OpenOffice.org be the full reference implementation for ODF!
![Page 23: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/23.jpg)
A Test Suite: A rough estimate
● ~ 700 page ODF specification● ~ 5 testable statements per page● ~ 4 test cases per statement to test limits, positive
and negative test cases, etc.
● So, on the order of 10,000 test cases, or 2 PY of effort.
![Page 24: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/24.jpg)
That takes care of OpenOffce● But what about everyone else?
● Having a single ODF Reference Implementation, by itself, doesn't really solve the interoperability problem.
● But by having a good standard, a good test suite, and a good reference implementation, we allow other implementations to benefit as well.
● Think of it as a “public health” issue. We are only healthy if we ensure that others can be healthy as well, otherwise the system falls apart.
![Page 25: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/25.jpg)
This can help move us from...OpenOffice
Google Docs
KOffice
AbiWord
MS Office
Notes 8
SEPT Mobile Office
With N editors, there are N*(N-1) interoperability tests
![Page 26: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/26.jpg)
...to this
OpenOffice
Google Docs
KOffice
AbiWord
MS Office
Lotus Notes
SEPT Mobile Office
StandardTest Suite
RI
With N editors, there are N interoperability tests
![Page 27: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/27.jpg)
Things that foster interoperability● In applications:
– use of interoperable data formats
– a strictly conforming mode of operation
– guidance to the user on how to use the product in an interoperable way
– inclusion of document templates and defaults that encourage interoperability
– allowing validation of documents
● In data formats– clean separation of
content, attributes, behavior and metadata
– reuse of existing, established standards
– thorough review– standardization
![Page 28: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/28.jpg)
Things that foster interoperability● In organizations:
– adoption of a single standard document format
– adoption of applications with proven conformance to that document standard
– training of users on how to create interoperable documents
● In users:– capture information at
the highest level possible
– adding metadata– providing annotations
for accessibility– using named styles
![Page 29: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/29.jpg)
Progress in Interoperability
● Test Suites● Validators● Translators
![Page 30: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/30.jpg)
ODF Test Suite
http://develop.opendocumentfellowship.org/testsuite/
![Page 31: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/31.jpg)
ODF Validator
http://opendocumentfellowship.org/validator
![Page 32: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/32.jpg)
ODF Add-in for Word
http://odf-converter.source-forge.net/
![Page 33: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/33.jpg)
ODF Plug-in for MS Office
http://www.sun.com/software/star/openoffice/
![Page 34: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/34.jpg)
ODF Interoperability Camp
![Page 35: ODF Interoperability: The Price of Success · A powerful pattern The standard contains the definition of a conformant document – (but the standard may have errors or ambiguities)](https://reader034.vdocuments.net/reader034/viewer/2022042419/5f36420343b36c335d3d1689/html5/thumbnails/35.jpg)