Kvalita dat Jaroslav Král Michal Žemlička Katedra SW inženýrství MFF UK Co je kvalita, ISO 8402 * Characteristics of an entity as a whole that give the capability to satisfy explicit and implicit needs: -- Quality of an entity is a subjective concept dependent on requirements that the user of the entity requests in an implicit or explicit manner. -- Quality is a multidimensional concept tied to various characteristics. Co je kvalita * Již zde cítíme jistý rozpor. -- Kvalita dat může být příliš vázána na jednu aplikaci (ale někdy jinak nelze -- pojišťovny potřebují větší soubory) -- Chceme, nějaký atribut kvality (charakteristika, dimense) byl použitelný obecně (jako např. rozptyl) * O tomto problému se vedou ostré diskuse, viz např. projekt SQuaRE v ISO (ISO 2500xx jako náhrada ISO 9126) Atributy kvality Snažíme se o takové atributy kvality, které -- mají význam pokud možno pro řadu různých aplikací pracujících s danými daty, -- nejsou pokud možno přímo vázány na potřeby určité konkrétní aplikace (nejsou vstupem či parametrem algoritmů této aplikace). Hlavní zdroje * mitiq.mit.edu, hlavní pracoviště na MIT * www.Data.QualityAct.US, -- US zákon. Stanovuje závazná pravidla pro měření kvality dat ve státní správě * www.iqconference.org * Leo Pipino, Yang W. Lee, Richard Y. Wang: Data quality assessment. Communications of the ACM 45(4): 211-218 (2002), lze získat přes portál ACM Nejaktivnější pracoviště: MIT * Information Quality at MIT -- MIT Information Quality (MITIQ) Program -- MIT Total Data Quality Management Program -- IQ Conferences Hlavní problémy * Není jasný rozdíl mezi data quality a information quality. My proto budeme mluvit i o kvalitě informací -- Tendence chápat jako rozdílné problémy. To může být důležité pro sémantický web. * Není dost zkušeností, co za míru kvality dat a informací považovat, jak to měřit a jak používat (spojování dat z různých zdrojů) * Nutnost stanovit míry kvality legislativně, nekvalitní data mohou vést ke ztrátám, i životů Výzkum kvality dat a informací Příklady sekcí z IQConference 2004, koná se každý rok, letos po desáté Sekce na IQ Conference 2004 * WEB/INTERNET QUALITY * Session Chair: Craig Fisher, Marist College * Website Quality Assessment Criteria * Analyzing Information Quality In Virtual Service Networks With Qualitative Interview Data * Web Design vs. Web Quality Sekce na IQ Conference 2004 IQ RESEARCH FRONTIER Session Chair: Jennifer Long, University of Toronto Simulations of the Relationship Between an Information System's Input Accuracy and Its Output Accuracy Metadata Quality For Federated Collections Logical Interdependence of Some Attributes of Data/Information Quality Sekce na IQ Conference 2004 COST BASED CASES Session Chair: Latif Hakim, University of Southern Queensland, Australia Beyond Business Process Reengineering Using the Data Quality Scorecard as a Negotiation Strategy Data Mining, Dirty Data, and Costs Co lze vysledovat * Kvalita dat a informací je drahá záležitost * Nutnost zohledňovat architekturu systému * Samozřejmě úzká vazba mezi kvalitou dat a informací * Při pohledu na celý program konference je nápadný poměrně malý počet výsledků pro servisně orientované systémy (a tedy možná i pro sémantický web). Proč se problém kvality dat (a informací) stává rozhodující * Bez vyřešení problému, jak data ukládat, vyhledávat a prezentovat, nemělo dříve řešení otázky kvality dat smysl. * Prvé aplikace databází se převážně týkaly operativy, jako je účetnictví nebo skladové hospodářství. Tam bylo z podstaty věci a zavedenými postupy zajištěno, že data musela být správná -- kvalitní, jinak byla nepoužitelná. * U nás jsme to trochu podcenili Data se uplatňují ve státní správě i managementu * Je nutné zajistit nejen ochranu dat, ale také jejich kvalitu a zavést procedury jak jednat, není-li kvalita dat ideální * Dat je mnoho a jsou na webu nutně všelijaká, přesto ale nejsou bezcenná -- Někdy obsahuje krátký drb více informace než dlouhatánská zpráva Proč se problém kvality dat stává rozhodující 2 * Nebyl dostatečně rozvinut pojmový aparát umožňující specifikovat různé aspekty a dimenze kvality dat. -- Jak uvidíme, není v tomto směru dnes, přes značný pokrok, dosud dostatečně jasno a je nutný další výzkum a také hodnocení praktických případů zaměřený na kvalitu informací závisejících na daných datech. Proč se problém kvality dat stává rozhodující 3 * Chyběly -- metody a způsoby zápisu atributů kvality dat do metadat (např. RDF) a -- vědomí důsledků statistických vlastností a jiných metrik kvality datových souborů pro aplikace využívající data určité kvality Kvalita dat, věcné problémy * V managementu se musí používat data, která nejsou zcela spolehlivá a relevantní * Podpora managementu se stává hlavním úkolem informatiky. * Ukládání a využívání dat operativy je už do značné míry vyřešeným úkolem (neplatí pro zábavu a web) Formáty metrik * Příslušnost ke třídě (například výskyt určitého znaku, třeba čísla tramvaje) * Fuzzy (dobrý, lepší, nejlepší) -- prvek uspořádané množiny, pro níž je jedinou přípustnou operací operace porovnání. * Intervalové (například teplota). * Číselné -- jsou povoleny všechny aritmetické operace. Příkladem je rozsah souboru nebo jeho průměrná hodnota. Metriky kvality dat jsou většinou fuzzy nebo číselné.Fuzzy metriky jsou subjektivní Řízení kvality dat (informací) * Rozhodnutí o metrikách a procesech jejich měření (assessment) a nápravných opatřeních (control) * Sběr a zlepšování jejich kvality (data cleaning) * Odvozené procesy pro informace založené na zpracování daných dat * Rozhodnutí o modernizaci nebo zrušení používaných metrik a postupů jejich měření Obor se rychle vyvíjí * Není shoda o tom, jak metriky třídit Subjektivní a objektivní metriky * Objektivní metriky jsou metriky které lze vždy znovu vypočítat z dat, kterých se týkají. * Jsou to často statistické charakteristiky datového souboru (rozsah souboru, průměr, rozptyl, výběrové momenty, např. aa[i]x[i]^3, korelace, atd.). Objektivní metriky jsou obvykle číselné. * Objektivní metriky kvality dat odpovídají externím metrikám kvality softwaru ve smyslu ISO 9126-1 (např. délka programu) Subjektivní a objektivní metriky Subjektivní metriky jsou metriky hodnotící způsob, jakým data vznikla, případně kvalitu zdroje dat. Subjektivní jsou metriky hodnotící důvěryhodnost dat, stupeň jejich utajení, dostupnost, atd. Subjektivní metriky odpovídají metrikám interním (in process metrics, např. doba řešení, pracnost) podle ISO 9126 Subjektivní a objektivní metriky Hranice mezi subjektivními a objektivními metrikami není striktní. -- Pokud máme dostatečně rozsáhlý soubor, můžeme jeho střední hodnotu a směrodatnou odchylku vypočítat a uložit do metadat. -- V opačném případě musíme použít kvalifikovaný odhad, tj. postupovat jako v případě subjektivních metrik. Fakt, že se takto postupovalo, by měl být zaznamenán Subjektivní metriky * Přívlastek 'subjektivní` má v případě metrik kvality dat jisté oprávnění, poněvadž tyto metriky většinou nevznikají měřením prostřednictvím nějakého technického procesu, ale je de facto subjektivním hodnocením vlastností dat experty založenou na zkušenostech a nikoliv na měření v běžném slova smyslu. * Pro zkvalitnění dat je i v tomto případě nutno specifikovat proces "měření", mnohdy zákonem. Často s použitím komplikovaných dotazníků Objektivní metriky, data cleaning * Mezi objektivní metriky patří takové vlastnosti, které lze vypočítat z dat samotných.Tyto metriky se často používají při zlepšování kvality dat. * "Zlepšováním" či čistěním dat (data cleaning) se míní takové operace jako odstranění okrajových dat, doplňování dat do časových řad, atd. Měření subjektivních metrik, quality assesment Proces zjišťování subjektivních metrik je nutno standardizovat. To je většinou zajišťováno předpisy (mnohdy na úrovni zákona), které specifikují atributy (dimenze) kvality dat, a postupy, které je nutno při sběru dat a při jejich "čištění" dodržovat. Příkladem je NRS State Data Quality Standards Checklist http://www.doe.mass.edu/acls/smartt/NRSchecklist.pdf Čištění dat * Okrajová data (chyby měření). Jde o postup, kdy se ze souboru vylučují data, která jsou zjevně nesprávná: úmyslně změněná, chybně zanesená (překlepy). * Chybějící data. V tomto případě se do souboru doplní chybějící data, aby bylo možno soubor rozumně zobrazovat (například časové řady) a přitom nedošlo k chybným výsledkům (k významným změnám charakteristik daného souboru). * Vyloučení duplicitních dat * Sjednocení formátů * A další Operace nad daty * Parciální replikace. Pokud se data používají pouze pro statistické analýzy (a to je při podpoře managementu obvyklé), lze často soubory dat replikovat pouze částečně (aniž dojde k závažnější chybě). Úspory mohou být dramatické. * Sjednocování metrik obecně.Je to vážný problém pro databáze a jde o velmi podceňovaný problém u sémantického webu * Existuje na to poměrně rozvinutá teorie a postupy, které se používají především při dolování dat. Problém je, že nevíme, co je nejlepší. Musíme čekat na zkušenosti Nejčastěji používané atributy kvality dat Relevantnost (Relevance) -- míra, do jaké míry data splňují účel, pro který jsou používána. Přesnost (Accuracy) -- jak přesná jsou používaná data (např. směrodatná odchylka). Kupodivu se neuvažují posunutá data Včasnost (Timeliness) -- za jakou dobu lze data aktualizovat. Nejčastěji používané atributy kvality dat Dostupnost (Accessibility) -- jak jsou již existující data dostupná. Porovnatelnost (Comparablity) -- metrika hodnotící možnost porovnávat, ale také spojovat data z různých zdrojů. Koherence (Coherence) -- metrika vyjadřuje, do jaké míry byla data vytvořena podle z hlediska výsledku stejných pravidel. Úplnost (Completeness) -- metrika udávající jaká část potenciálních dat je zachycena v databázi, Další metriky Pro účely statistik, např. FAO, se specifikují další metriky, např. relevance se odvozuje od počtu positivních ohlasů, počtu odkazů v publikacích a hodnocení (rate) dostupných statistik * Kromě výše uvedených metrik se často vyhodnocují další metriky z následující tabulky. Kvalita dat, hlavně v e-governmentu Problémy s kvalitou dat při dolování dat a na webu * Jak stanovovat míry kvality, dat jestliže -- Daná míra má pro různé zdroje různé hodnoty -- Daná míra je i různě vyhodnocována (jiné procedury vyhodnocování) -- Daná míra se na některých zdrojích vůbec nevyhodnocuje -- Je pro nás lepší soubor s milionem údajů a rozptylem 2 nebo soubor s 100 údaji a rozptylem 1? Má smysl tyto soubory spojit? Problémy s kvalitou dat při dolování dat a na webu * Tento problém se různě řeší v datových skladech. Na webu asi závisí na tom, s čím se smíříme a jaké zkušenosti získáme * Asi budeme muset často rezignovat na požadavek, aby zdroje byly transparentní (nemuseli jsme se o ně zajímat) Kvalita informací * Někdy se ztotožňuje s kvalitou dat * Není na to jednotný názor. Převažuje názor, že se má kvalita informací chápat jako samostatný problém, který není totožný s kvalitou dat i když s ním úzce souvisí Kvalita informací * Objevuje se tendence k chápání informací jako produktů s dobou života (podobně jako SW systém) -- Vize, proč se sbírá a vyhodnocuje -- Konkretizace funkcí a vlastností, -- Implementace procesů a funkcí pro hodnocení a řízení kvality -- Používání včetně sledování kvality, vylepšování a modifikace -- Zrušení nebo reinženýring Kvalita dat a formulace požadavků na informační systémy * To, co můžeme uskutečnit je limitováno kvalitou dat více, než jsme ochotni připustit. * Příklady: -- Prostředky pro řízení projektů -- Řízení výrobních procesů Kvalita dat a formulace požadavků * Metoda kritické cesty, MSProject * Řešitelé podprojektů zadávají doby řešení podle pravidla "to už by muselo být hodně smůly, abych to nestihl" (nikdo nezadá medián, to by v polovině případů nestihl a byly by postihy) * Zadává horní hranici konfidenčního intervalu. Čili se zvažuje přesnost dat. * Přesto se projekt obvykle nestihne Důvody skluzů * Řešitelé následující etapy nemohou začít řešit úkol dříve (skončí-li předchůdce dříve), než bylo plánováno, neboť musí dokončit jiné úkoly. * Řešitelé navazující etapy mají na řešení více času než čekali, a proto se zpočátku úkolu příliš nevěnují (efekt líného studenta). Důvody skluzů Většina projektů je omezována nějakým zdrojem Z, o který soutěží více etap. Případné špičky zátěže zdroje Z se řeší tak, že zdroj pracuje střídavě na více úkolech současně (všichni vedoucí etap, kteří Z potřebují, chtějí, aby už proboha začal pracovat na jejich úkolu). Výsledkem je, že se řešení všech projektů opozdí (efekt multitaskingu). Důvody skluzů * Je-li někdo hotov dříve, zatluče to, protože hrozí, že příště mu vnutí kratší doby řešení (efekt zpevňování norem) * Nestihne-li, nedá se nic dělat Kritický řetězec -- doba řešení je součtem nezávislých n.v. * Doba řešení T klasické metody kritické cesty * T ^3 S (t[i]+3 s[i]) * Doba řešení pro kritický řetězec bude většinou Přípojné buffery Řešení * Formálněji (obr. 1) můžeme volit * NP = SQRT(R1^2+R2^2+ ....+Rk^2), * kde Ri jsou rezervy jednotlivých činností na kritické cestě. Řešení, kritický řetězec * Kritický řetěz funguje jen když jsou řešitelé ochotni odhalit reservy a neskrývat, že jsou hotovi dříve, než se plánovalo. * Odměny za dodržení termínu (za zkrácení není další bonus, vedlo by to opět k licitování) * Termín se odvozuje z očekávané doby řešení * Navíc má každá činnost odhad doby, když jdou věci špatně (horní hranice konfidenčního intervalu) * Termín pro celý projekt se určuje jako odhad horní hranice konfidenčního intervalu jeho řešení Řešení, kritický řetězec * Každý začne pracovat hned, jak je jeho předchůdce hotov. To ale znamená, že je nutné nějak vyloučit efekt multitaskingu, To se řeší tak, že se dané činnosti postupně stále přesněji oznamuje, kdy bude třeba začít pracovat na daném projektu (činnost je tedy spravována jako autonomní služba). (Zpřesňování dat) * Práce se odevzdává v okamžiku, kdy je hotova. Její začátek se ale postupně zpřesňuje * Důsledek: Dosti často se daří, aby práce trvala přibližně tak dlouho, jako kdyby byly její kroky zcela nezávislé Problém chybějících a pomalu aktualizovaných dat * Rozvrhování na úrovni podniku nemůže mít všechna data v dobré kvalitě -- Cena sběru, některá data se nesbírají -- Jsou nedostupná (taktilní, zkušenostní) -- Nedostatečně přesná * Rozvrh musí být pomalý (pracnost, interakce s lidmi) a nepřesný v důsledku nekvality dat -- použít úložiště dat (nutné i pokud chceme dát managementu možnost uplatnit své znalosti a intuici při řízení) Neinteraktivní komunikace Spolupráce plánovacích algoritmů s provozem vyžaduje inteligenci při přenosu požadavků Řízení na buffery Pozorování * Některé akce musí být dávkové (trvají příliš dlouho). -- Složitost algoritmů, -- Nutnost spoluúčasti lidí nebo procesů reálného světa * Není jasné, zda chápeme důsledky toho, že se jedná o procesy zasahující do reálného světa Pozorování V našem příkladě jsou třeba zásahy dispečera především v těchto případech -- Nečekané/vzácné události - nevyplatí se je zahrnovat do rozvrhování (Vonásek je lempl, Pepa se včera ztřískal, dodavatel to nestihl) -- Kvalita dat * Nedostupná, neznámá, nepřesná (mají velký rozptyl) * Zřídka potřebná (nevyplatí se sbírat) -- Potřeba využít inteligenci lidí jako součásti procesů Problémy s kvalitou dat pro řízeni * Relevantnost a včasnost závisí na frekvenci zjišťování nebo na tom, jak je časově náročné data vytvořit (např. data rozvrhu) * Kvalita dat může implikovat vytvoření datového úložiště v SOA, aby management mohl ovlivňovat chod systému * ?? Zohledňuje to UML? Problémy s kvalitou dat pro řízeni * Kvalita dat může implikovat filosofii řešení -- Kritická cesta a kritický řetězec * Kvalitu je nutno měřit či odhadovat * Kvalitu dat můžeme zlepšovat -- Okrajová data -- Chybějící data pro parametry, pro regresi -- Opakovaná data -- Rozsah dat Závěry * Metriky kvality je žádoucí až nezbytné zahrnout do metadat * Není zatím jasné, jak při dolování dat a agregátních charakteristikách postupovat při hodnocení kvality souborů dat proměnnou kvalitou. To je zvláště kritické u sémantického webu Závěry 2 * Kvalita dat se stává klíčovou částí návrhu IS a architektury SW systémů. Může např. znamenat částečný návrat k datovým úložištím. ?UML? * Může podstatně ovlivnit použitelnost sématického webu. * Srozumitelnost a deklarativnost dat na rozhraních je klíčovou podmínkou použitelnosti business procesů. A co pak objektová orientace? Závěr 3 Pokud můžeme soudit, je využití metrik kvality dat a informací zatím v dosti zárodečném stavu i přes poměrně dlouhodobý výzkum Pravidla hry podrobněji * Především změníme způsob plánování prací. Nebudeme stanovovat, kdy se přesně na jednotlivých etapách začne pracovat a kdy práce skončí. Místo toho se stanoví, jak dlouho bude asi řešení etapy trvat (např. odhad střední doby práce nebo mediánu, často se volí polovina odhadu H horní hranice konfidenčního intervalu), a kdy se asi na ní bude moci začít pracovat. Pravidla hry podrobněji * Práce na etapě se zahájí co nejdříve od okamžiku, kdy je to možné práci zahájit. Aby tomu bylo možné vyhovět, je postupně zpřesňován odhad okamžiku, kdy bude možné začít na etapě pracovat. K tomu je nutné mít průběžné informace o stavu řešení předcházejících etap. Zkušenost ukazuje, že tento postup skutečně umožňuje, aby řešitelé zorganizovali práci tak, aby mohli začít na projektu pracovat hned, jak je to možné. Pravidla hry podrobněji * Od okamžiku zahájení prací se pracuje pouze na úkolech spojených s řešením etapy a pracuje se s maximální intenzitou (to vylučuje efekt líného studenta a multitaskingu). * Řešitelé dostatečně často předem hlásí, kdy asi budou hotovi a práci odevzdávají hned, jak jsou hotovi (to je nutné pro bod 1). Pravidla hry podrobněji * Těmto požadavkům lze vyhovět jen tehdy, kdy budou řešitelé ochotni pracovat naplno a odhalovat své rezervy. Musí být proto zainteresováni na úspěchu řešení projektu a musí mít také jistotu, že se proti nim nepoužije procedura zpevňování norem. Pravidla hry podrobněji * Vedení projektu musí naopak chápat, že jsou termíny kruté a že se často nesplní. Z nesplnění termínu by neměly být zpravidla vyvozovány žádné postihy. Všichni by měli mít prospěch ze zkrácení doby řešení a z prémií za včasné dokončeni projektu. Podstatnou roli tedy hrají psychologie a sociální aspekty fungování týmu. To je u IS standardní situace. * Je dobré provádět analýzu dat, kdy a jak je kdo hotov s cílem odhalit lenochy Kritický řetězec -- doba řešení je součtem nezávislých n.v. * Doba řešení T klasické metody kritické cesty * T ^3 S (t[i]+3 s[i]) * Doba řešení pro kritický řetězec bude většinou Přípojné buffery Přípojné buffery Práce s přípojnými buffery * Předpokládejme, že návaznost činností v projektu tvoří více lineárních úseků, které se postupně spojují. V tom případě najdeme kritickou cestu. Připojíme za ní nárazník projektu jehož velikost je dána rezervami činností na kritické cestě. Činnosti mimo kritickou cesto zobrazíme jako větve stromu (obr. KC2). Aby činnosti mimo kritickou cestu a projekt se dal lépe řídit je žádoucí doplnit nárazníky délky vypočtené výše uvedeným způsobem pro každou postranní větev. Tyto nárazníky nazveme přípojné nárazníky * Při řízení projektu se sledují pro každou větev výše uvedeným způsobem přípojné nárazníky a nárazník projektu. Pokud přípojný nárazník nestačí (je vyčerpán) zkrátí se i nárazník projektu. Soutěž o zdroj X * Klasická metoda kritické cesty nedostatečně zvažuje případ, kdy je nějaká činnost X prováděna na více větvích, nebo dokonce ve více projektech (příkladem mohou být kontrolní nebo dokumentační činnosti). Řešení tohoto problému je poměrně komplikované, dobře pracuje následující přiblížení. Soutěž o zdroj X * a) Činnosti X se považují za činnosti na kritické cestě a proto přispívají standardním způsobem ke zvětšení projektového nárazníku (tato cesta se nazývá kritický řetěz). * b) Před každou činností X se vytváří přípojný nárazník. * c) Pro činnost X je možné vytvořit frontu prací obsluhovanou v závislosti na termínech navazujících etap v projektu. * d) Pokud je X úzké místo celé firmy (do značné míry určují výkon firmy) dostávají přednost požadavky těch projektů, pro které má zlomek (výnos projektu)/(doba vytížení X) maximální hodnotu. * Komplikovanější řešení používá i plánování kritického zdroje (podle teorie omezení bývá jen jeden). Hodnocení * Mnohé nedořešeno (obecné acyklické grafy) * Osvědčuje se podle dostupných zpráv * Chtělo by to asi lepší statistické zpracování obecnějších případů Hodnocení * Krásný příklad, jak řešení závisí na kvalitě dat a také na tom, že i pak je řešení závislé na na dobrých vztazích v podniku, jeho kultuře a morálce. * Považuji-li lidi za onuce, nemohu čekat dobré výsledky * Psychologický kapitál může být zatraceně významný * Dobrý vztah k lidem není věc dobročinnosti ale chladného kalkulu