WP/PWP/EPUB4 Implementation Plans and Testing · 2017-06-22 · WP/PWP/EPUB4 Implementation Plans...
Transcript of WP/PWP/EPUB4 Implementation Plans and Testing · 2017-06-22 · WP/PWP/EPUB4 Implementation Plans...
Implementa)on-ReadingSystems• Readiumhasimplementedalmostallof3.0.1andpiecesof3.1
• FullyintendtosupportEPUB4,PWPandWP–whatevertheyendupbeingJ
• ReadiumhasalreadytakentheiniGaGvewithReadium-2toexplorewhatmightbebeyondanEPUBreadingsystem
• Note:R2isNOTareplacementforR1• R2isinsteadanevoluGonfromR1,withamoreplaMorm-specificandmodulardesign
• It’snotcomplete,butgreatprogressisbeingmadeReadium Foundation, 2017
Implementa)on-ReadingSystems• Readium-2isbeingdevelopedforserverdeployment,naGvemobileappsandthedesktop(whereitiswrappedinElectron)
• ItistobeexpectedthatothermajorreadingsystemswillalsoprovideimplementaGons,e.g.• VitalSource• Google• LibraryforAll• andmanyothers...
• ItwillbeinteresGngtoseehowotherReadingSystemsapproachthearchitectureandimplementaGon
Readium Foundation, 2017
Implementa)on-Authoring• ThishasproventobeEPUB’sAchillesheel• AuthoringEPUB2isfairlyeasy–therearemanytoolsoutthere–someofthemgood
• EPUB3ismuchharder• TherearefewtoolsouttherethatexportrealEPUB3(notjustEPUB2withEPUB3tags)
• Noneofthemsupportallofit• LiYleornosupportforJavaScriptorMediaOverlays
• WPandEPUB4mightbeworse• Howcanthatbeaddressed?
Readium Foundation, 2017
TestParameters• Majordichotomy
• ArewetesGngcontentitself?• OrarewetesGngtherenderingofcontent?• Orboth?• Whatistheexitcriteriaforeach?
• Whoexecutesthetests?• IndependentorganizaGon?• Self-interestedparGes?(i.e.implementers)
• DisseminaGonoftheresults• Publicorprivate?• Website,database,web-service?
Readium Foundation, 2017
Tes)ngReadingSystems-Goals• WhatarethegoalsofourtesGng?
• AdherencetothespecificaGon• CompletenessoftheimplementaGon• InteroperabilitybetweenimplementaGons• Quality(detecGngbugs)• Performance
• Memory• Speed• Reliability
• Accessibility• FailurecondiGons• StresscondiGons• RegressiontesGng
Readium Foundation, 2017
Tes)ngReadingSystems-Methods• EPUBTestSuite
• Usefulbutdoesn’tcovercomplexreal-worldproblems• MorefortesGngcompletenessandprovidingayardsGckforexitcriteria
• AutomatedTests• Difficulttocreate,hardtomaintain• Requiresdedicatedmanpower• Can’ttestsomeaspects(e.g.accessibility)
• UnitTestsandConGnuousBuilds• VeryimportanttoReadingSystems• VeryRS-specific
Readium Foundation, 2017
Tes)ng-ReadingSystems–– TestSuite• EPUBTestSuiteShortcomings
• Doesn’tcoverallof3.0.1andliYle(none?)of3.1• Manytestsareoftheunderlyingbrowserengine• TestsofJS,SVG,WebGLorinteracGvityareverylimited• NoperformancetesGng• NostresstesGng(size,complexity)• Nofailurecases(e.g.malformedorillegalmarkup)• LimitedandhardtoassesstestsofFXL• LimitedandhardtoassesstestsofCJK,Arabic,Hebrew• Notestsofotherscriptsandlanguages• NolocalizaGon(allEnglish)• And,ofcourse,newspecsfromEPUB4/WP
Readium Foundation, 2017
Tes)ngAuthoring-Goals• AdherencetothespecificaGon
• PassesEPUBCheck(orsimilar)• Fidelity
• Ofthecontent(author/editorintent)• Acrossdifferentdevices
• Quality(detecGngerrors)• Performance
• Memory• Speed
• Accessibility• BestpracGcescheck
Readium Foundation, 2017
Tes)ngAuthoring-Methods• EPUBCheckorsimilar
• Simplesanitycheck,usefulbutonlyastart• AutomatedTests
• DifficultinpracGce?• ManualTesGng
• Labor-intensivebutnecessary• Largenumberofdevicesandusagescomplicatesit
• Workflows• Publishingworkflowsvarywidelyacrosspublishers• TesGngtendstobeveryspecifictotheworkflow
• BestPracGcesTool
Readium Foundation, 2017
Tes)ngAuthoring–– BestPrac4ces• Thisnotspecificallyaspecitem,butitisclearneed• Needisforatoolthatflags
• Useofillegalordeprecatedmarkup• Inefficientmarkup• Inefficientcontent(e.g.oversizeimages)• Incompleteorincorrectmetadata• Includingfontfileswithinsufficientrights• PoorlystructuredEPUBs(toomanyortoofewspineitems,etc.)
• Etc.• Ideally,suchatoolcouldbeusedeitherinteracGvelyorinbatchmode
Readium Foundation, 2017
ExitCriteria––ReadingSystems• Typically,theW3Crequires:
• 2independent,interoperableimplementaGonsofeachfeature• Detailedtest-plan• Accessibility,Privacy,i18nandSecurityassessmentsandplans
• Giventhecomplexnatureoftheuse-casesandimplementaGonswhichusingmicroservicearchitectures,itcouldbechallengingtodecidewhata“completefeature”isandisitcomplete
• Simplecases,yes,butallthoseedgecases...• Thisemphasizestheneedforaclearsetoftestcases• WhatconsGtutes“done”:
• Performance?Ifafeatureisdog-slow,isitcomplete?• Bugs?Howbaddoesabughavetobetorejectafeature?
Readium Foundation, 2017
ExitCriteria-Authoring• Typically,theW3Crequires2implementaGonsthat
consumethecontent• Shouldthatbebroadenedtoauthoringthecontent?• IDPFdidn’thavesucharequirementandithasproved(IMO)aproblem,cf.lackofauthoringtools
• OTOH,EPUB4/PWP/WPmaybesuchacomplexbeastandtheuse-casesequallycomplexthatdefiningsuchcriteriamaybeachallenge
• Wecancoverthesimplecases,butwhataboutallthoseedgecases?
• Butprobablyworththinkingabout-atleastasathought-experiment
• Again,abest-pracGcesguidewouldbeexcellent
Readium Foundation, 2017
Tes)ngAmbassador––ReadingSystems• GiventhepotenGalcomplexityofthespecandthefactthatatleastoneoftheimplementers(Readium)isopen-source(read:herdingcatsinthedark),itwillbeverychallenging
• OTOH,evenintheseearlydays,enGGessuchasEDRLabandFeedbooksarededicaGngsignificantresourcestotheeffort
• ValidaGngtheinteroperability,giventhecomplexityofthespecandtheuse/workflows,willbechallenging
• TheroleoftheambassadorwillprobablybeacombinaGonofcoach,cheerleaderandcriGc
Readium Foundation, 2017
Tes)ngAmbassador-Authoring• Similarly,validaGngtheinteroperabilitygiventhepotenGalcomplexityofthespecandtheuse/workflowswillbechallenging
• TherewillalsobeaperceptualissueinthatasauthoringofEPUB3issGlldifficultandpoorlysupported,convincingpublisherstosupportanew,morecomplexspecwillbehard
• Itmaybealmostimpossibleunlesswemandateauthoringsupport
• ButthatisachickenandeggsituaGon• WithoutRSsupport,howcanpublisherscommit?• Withoutauthoringsupport,howcanRScommit?
Readium Foundation, 2017