{"id":101,"date":"2016-09-13T10:01:56","date_gmt":"2016-09-13T08:01:56","guid":{"rendered":"http:\/\/www.robert-kofler.at\/?p=101"},"modified":"2016-09-19T14:08:37","modified_gmt":"2016-09-19T12:08:37","slug":"datenqualitaet","status":"publish","type":"post","link":"https:\/\/www.robert-kofler.at\/Blog\/2016\/09\/13\/datenqualitaet\/","title":{"rendered":"Gedanken zu Datenqualit\u00e4t"},"content":{"rendered":"<p>Oft ist es notwendig Daten von einem bestehenden System in ein neues System zu \u00fcberf\u00fchren &#8211; schlie\u00dflich will man mit dem neuen System ja auch auf bisherige Daten zur\u00fcckgreifen k\u00f6nnen. \u00a0Daf\u00fcr m\u00fcssen Daten oft extrahiert, transformiert, eventuell erg\u00e4nzt und bereinigt werden und obendrein muss das Ergebnis einer solchen\u00a0Migration auch noch gepr\u00fcft werden. Der Aufwand hierf\u00fcr sollte nicht untersch\u00e4tzt werden, und noch weniger sollten die Auswirkungen untersch\u00e4tzt werden, wenn die Datenqualit\u00e4t &#8222;nicht stimmt&#8220;.<\/p>\n<p><!--more--><\/p>\n<p>Zun\u00e4chst einmal sollte der Begriff Qualit\u00e4t gekl\u00e4rt werden. Qualit\u00e4t beschreibt die Eigenschaften eines Objekts. Ein Objekt kann auch ein virtuelles sein, wie eben Daten. Um Qualit\u00e4t beschreiben und damit bemessen zu k\u00f6nnen braucht es Metriken. Um die Qualit\u00e4t bewerten zu k\u00f6nnen, braucht es Toleranzen.<\/p>\n<p>Betrachten wir das anhand eines praktischen Beispiels: Ein Seil wird\u00a0mit der Metrik der L\u00e4nge (in einer passenden Einheit wie zum Beispiel Zentimeter) beschrieben. Nehmen wir an unser Ziel ist es, ein Seil\u00a0mit einer L\u00e4nge von f\u00fcnf Metern zu bekommen. Wir k\u00f6nnen also eine L\u00e4nge von 500 cm nutzen um diese Eigenschaft zu beschreiben. So weit, so klar. Doch wenn jetzt von einem langen St\u00fcck Seil unser kleines St\u00fcck abgeschnitten wird &#8211; wie lang darf oder muss es sein, damit wir es noch als &#8222;in Ordnung&#8220;, also f\u00fcr unsere Zwecke passend, akzeptieren? Es ist einfach unm\u00f6glich exakt 500 cm abzuschneiden. Hier kommen Toleranzen ins Spiel.\u00a0In unserem Beispiel wollen wir, dass das Seil mindestens 500 cm lang ist. Dies stellt unsere untere Grenze dar &#8211; k\u00fcrzer darf es nicht sein. F\u00fcr unsere \u00a0Zwecke, darf es aber gerne etwas l\u00e4nger sein. Da wir unser Seil pro\u00a0Zentimeter bezahlen, wollen wir nat\u00fcrlich nicht mehr\u00a0bezahlen als n\u00f6tig. Aber gute 5 cm mehr k\u00f6nnen wir verschmerzen. Unser Seil darf also l\u00e4ngstens 505 cm lang sein um f\u00fcr unsere Zwecke passend zu sein. Das ist unsere obere Grenze. \u00a0Die beiden L\u00e4ngen 500 cm und 505 cm stellen nun jene\u00a0Grenzen dar,\u00a0zwischen denen die L\u00e4nge des Seils f\u00fcr uns akzeptabel ist.<\/p>\n<blockquote><p>&#8222;Toleranz ist ein Ma\u00df f\u00fcr Akzeptanz der Abweichung von einem Zielwert. Akzeptanz setzt das Einhalten von Grenzen voraus. Toleranz ist nicht das Ignorieren von Grenzen. &#8222;<\/p><\/blockquote>\n<p>Mit dieser Toleranz ist nun hinreichend definiert, dass ein Seil, das mindestens 500 cm und h\u00f6chstens\u00a0505 cm lang ist, f\u00fcr uns ein akzeptables Ma\u00df aufweist. Je enger diese Toleranz gesetzt ist, desto schwerer ist es, sie einzuhalten &#8211; also den Zielwert zu erreichen. Es ist erheblich schwerer ein Seil abzuschneiden, dass mindestens 500 cm lang ist, aber h\u00f6chstens 500,5 cm&#8230;<\/p>\n<p>Auch wenn dieses Beispiel relativ simpel war, zeigt es deutlich worauf man achten sollte \u00a0wenn man von Qualit\u00e4t spricht:<\/p>\n<ul>\n<li>Nicht jeder versteht unter Qualit\u00e4t dasselbe,<\/li>\n<li>Qualit\u00e4t beschreibt die Eigenschaften eines Objekts,<\/li>\n<li>Toleranzen erm\u00f6glichen Akzeptanz,<\/li>\n<li>ohne Grenzen gibt es keine Toleranz.<\/li>\n<\/ul>\n<p>Auch bei Projekten, bei denen Daten migriert\u00a0werden, tritt das Problem auf, dass eine bestimmte Qualit\u00e4t eingehalten werden muss. Es macht sich bezahlt, bereits von Anfang an die Grenzen f\u00fcr eine tolerierbare Qualit\u00e4t abzustecken. Daf\u00fcr m\u00fcssen geeignete Metriken und akzeptable Grenzen gew\u00e4hlt werden.<\/p>\n<p>Geeignete Metriken k\u00f6nnen zum Beispiel einfache Pr\u00fcfsummen sein. Befinden sich im Altsystem zum Beispiel 500.000 Datens\u00e4tze, dann m\u00fcssten auch im neuen System 500.000 Datens\u00e4tze verf\u00fcgbar sein. Schon\u00a0mit dieser Ma\u00dfnahme kann schnell gepr\u00fcft werden, ob zu wenige Datens\u00e4tze migriert wurden, oder gar Duplikate erzeugt wurden und damit zus\u00e4tzliche (falsche) Datens\u00e4tze generiert wurden. Je nachdem um welche Art von Daten es sich handelt reicht es vielleicht aus wenn mindestens 90% der Datens\u00e4tze\u00a0migriert werden.<\/p>\n<p>Es\u00a0k\u00f6nnte aber auch vorkommen, dass die ersten 250.000 Datens\u00e4tze zweimal migriert wurden. Hier hilft eine einfache Pr\u00fcfsumme nicht mehr. Auch kann die zeitliche Abfolge der Daten von Relevanz sein. Neue Daten sind vielleicht wichtiger als alte. Oder die Integrit\u00e4t einzelner Datens\u00e4tze ist durch die Migration nicht mehr gegeben. Hier gibt es viele m\u00f6gliche Fehlerquellen. Bei manchen Daten spielt die Qualit\u00e4t eine untergeordnete Rolle. So sind\u00a0zum Beispiel f\u00fcr den Projekterfolg, bei der Migration der Daten eines ERP Systems, die Daten \u00fcber gefahrene Kilometer der\u00a0Autos eines\u00a0Fuhrparks eines Unternehmens vielleicht nicht so ausschlaggebend, wie eine korrekte \u00dcbernahme der Lohnh\u00f6hen der Mitarbeiter des Unternehmens.<\/p>\n<p>Je h\u00f6her die Anforderungen an die Qualit\u00e4t sind, desto mehr macht es sich bezahlt, bereits im Vorfeld geeignete Metriken und dazu passende Grenzen zu definieren.\u00a0Da hierdurch die Akzeptanz der Daten, und damit der Projekterfolg, erheblich bestimmt wird, macht es sich durchaus bezahlt bereits am Beginn des Projekts Metriken und Toleranzen als Akzeptanzkriterien f\u00fcr die Projektabnahme zu definieren.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Oft ist es notwendig Daten von einem bestehenden System in ein neues System zu \u00fcberf\u00fchren &#8211; schlie\u00dflich will man mit dem neuen System ja auch auf bisherige Daten zur\u00fcckgreifen k\u00f6nnen. \u00a0Daf\u00fcr m\u00fcssen Daten oft extrahiert, transformiert, eventuell erg\u00e4nzt und bereinigt werden und obendrein muss das Ergebnis einer solchen\u00a0Migration auch noch gepr\u00fcft werden. Der Aufwand hierf\u00fcr &hellip; <a href=\"https:\/\/www.robert-kofler.at\/Blog\/2016\/09\/13\/datenqualitaet\/\" class=\"more-link\"><span class=\"screen-reader-text\">\u201eGedanken zu Datenqualit\u00e4t\u201c <\/span>weiterlesen<\/a><\/p>\n","protected":false},"author":1,"featured_media":111,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1,27],"tags":[25,26,23],"class_list":["post-101","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-allgemein","category-projektmanagement","tag-projektmanagement","tag-qualitaet","tag-risiko"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.robert-kofler.at\/Blog\/wp-json\/wp\/v2\/posts\/101","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.robert-kofler.at\/Blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.robert-kofler.at\/Blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.robert-kofler.at\/Blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.robert-kofler.at\/Blog\/wp-json\/wp\/v2\/comments?post=101"}],"version-history":[{"count":10,"href":"https:\/\/www.robert-kofler.at\/Blog\/wp-json\/wp\/v2\/posts\/101\/revisions"}],"predecessor-version":[{"id":115,"href":"https:\/\/www.robert-kofler.at\/Blog\/wp-json\/wp\/v2\/posts\/101\/revisions\/115"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.robert-kofler.at\/Blog\/wp-json\/wp\/v2\/media\/111"}],"wp:attachment":[{"href":"https:\/\/www.robert-kofler.at\/Blog\/wp-json\/wp\/v2\/media?parent=101"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.robert-kofler.at\/Blog\/wp-json\/wp\/v2\/categories?post=101"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.robert-kofler.at\/Blog\/wp-json\/wp\/v2\/tags?post=101"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}