190 likes | 282 Vues
Conflicting design goals when modeling standards. Dr. Brigitte Mathiak. Economics of standardization. Data model A. Total cost = (Size of data model in fields + number of fields to map * estimated number of data integrations )* 500$ Or : C no standard = s + s external *i.
E N D
Conflicting design goalswhenmodelingstandards Dr. Brigitte Mathiak
Economics ofstandardization Data model A Total cost= (Size ofdatamodel in fields + numberoffieldstomap* estimatednumberofdataintegrations)* 500$ Or: Cnostandard= s + sexternal*i Individual mappingcostsroughly 500 $ per fieldtobemapped (domainexperts, parser, mappinglogic, …)This isaboutasmuchasprogrammingit in thefirstplace. Data model B
Economics ofstandardization Data model A Standard All thisisnowfree Data model B
Economics ofstandardization This coststhe same Data model A Standard All thisisnowfree Data model B
The catch This coststhe same Cstandard = 3*(s+sstandard_unused) + sremainder*i Data model A Standard This costs extra forboth Data model B Programmingagainst a standardcostsroughlythreetimesasmuch. Communications of the ACM, Vol. 55 No. 3, Pages 52-53
Formulae Cstandard = 3*(s+sstandard_unused) + sremainder*i Cnostandard= s + sexternal*i Shouldbelow Cstandard- Cnostandard= 2*s + 3*sstandard_unused- (sexternal-sremainder)*i Fazit: The standardshould fit myexternaldata just so Shouldbe high Fazit 2: i shouldbe larger than 3
Data exchangestandard Precision anddetaillevel Computer understandable Computer readable Human understandable
Data modelimplementation Flexibilityrequiredofthestandard/ coststoimplementit Requirements (on average) Explicit model underspecified Optimization, denormalization
Data quality Curveexpectedfromstandardization Numberoffieldsanddetaillevel
Standard Model Less expensive (noneedforparser) Standard Model/Framework Data model A Standard Core Data model B Relativelycheaptransformation
Best practice: GML (ISO 19136)Core model Object Geometry coords Feature Point LineString Placemark Disclaimer: This is an excerptfrom an excerptwithsomeconfusionaddedfrom different versions
Howdoes a Road looklike? Object Much text on whatcoordsmean in generalandthiscontextspecificallywith a lotof additional links tootherstandardsandvocabularies, bestpractices, includingformulaeforcalculatingdistances, projections, compression, etc. Geometry coords Feature • Too rare tobe an explicit partofthestandard, insteaditisdefined in a user-made XML Schema • Verifiable • Can beusedtodefineinput • Encouragesdocumentationof individual changes Point LineString Placemark Lots ofniftysemanticdescriptionsofgeneral, re-usableassociations, whichyoumayuseinsteadofthegeneralpurposeones, but do not haveto centerLineOfowns=„true“ Road Disclaimer: This is an excerptfrom an excerpt, …
Howdoesthisapplyto DDI? • More strictnessforthecoreentities (less OR) • Syntacticalframeworkwith lots ofabstraction, meanttogive additional informationtohumans • Designatedareasforextension (both individual andcommunityeffort)
Communication Quality Assurance Implementation Data structure Flexible for producers, rigid for consumers Flexible to catch all corner cases Rigid but extendable Interoperabilitywithstandards To avoid duplication Only standards that meet the quality criteria Defined use of foreign standards Structuredness Keep it simple Detailed with mandatory elements Detailed and flexible Technical requirements XML as wide spread standard, no need for an API PDF reader API! Usability Easy to use and understand optimized for domain experts optimized for developers Semantic precision Tolerance needed Extremely important, especially on higher levels Important to avoid losses between process steps, mainly in detailed information Involved institutions Heterogeneous Homogeneous, usually inside one institution It depends
Communication Quality Assurance Process Support XML Schema/RDF PDF documentation/Scripts Java API Simple UML model
Communication (QA level 0) Quality Assurance Process Support (QA level 1) XML Schema/RDF PDF documentation/Scripts Java API <StudyUnit id=„abcd“> <Title>my</Title> <Description> a little text for describing the study </Description> … </StudyUnit> QA level 1 A studymust have a meaningful title (Title) and description (Description). It should be documented in english and the study language. … Class StudyUnit createNew(String id) setTitle(String title) getTitle() setDescription(…) getDescription() checkQA(String level) … verification annotation representation StudyUnit Title Description … transformation implementation Simple UML model
Howdoesgeneralextensibilitywork? Object Geometry coords Feature Point LineString This mayincludeotherstandards, e.g. Dublin Core Placemark This mayincludedatayouhave in thedatamodel, whichis not covered in the ExtendedData Disclaimer: This is an excerptfrom an excerpt, … Any XML <with an externalschema> Typed Data<with a document-definedschema> Untyped Key/Value pairs