---
title: Sprint 3
description: Abgabe von Team 2 im Sprint 3
lang: de
---
# Sprint 3
[toc]
## Integrationsszenario im Kontext vom Discountern
Es gibt eine kleine Discounter-Kette, welche in England sowie auch in Deutschland Filialen hat.Aktuell hat die Kette in jedem Land ein eigenes und unabhängiges IT-System, doch sollen nun beide Systeme in ein Zielmodell föderiert werden. Die Zielsprache soll Deutsch sein, weil die Führungsebene das so entschieden hat.
## Quizfragen [^q1]
1. Warum ist die Konsistenz von Identifikatoren wie Primärschlüsseln entscheidend für eine erfolgreiche Datenintegration?
2. Warum ist es entscheidend, vor der Datenintegration eine umfassende Datenbereinigung durchzuführen?
3. Wieso können semantische Unterschiede zwischen Datenquellen zu schwerwiegenden Problemen bei der Integration führen?
<div style="page-break-after: always;"></div>
## Quellmodelle
### Deutschland

<div style="page-break-after: always;"></div>
### England

<div style="page-break-after: always;"></div>
### Quellmodell 1: England
#### Address.csv [^address.csv]
```csv
id;street;city;country;postalCode
1;Worchester St;London;England;W1
2;Baker St;New Hampshire;England;W1
3;Flower St;London;England;W1
4;Smith St;Manchester;England;M1
5;Main St;Liverpool;England;L1
6;Oak St;Birmingham;England;B1
7;Pine St;London;England;W1
8;Elm St;Birmingham;England;W1
9;Maple St;Liverpool;England;W1
10;Cedar St;Manchester;England;M1
11;Birch St;London;England;W1
12;Ash St;Birmingham;England;B1
13;Willow St;Liverpool;England;L1
14;Cherry St;Manchester;England;M1
15;Hazel St;London;England;W1
16;Walnut St;Birmingham;England;B1
17;Chestnut St;Liverpool;England;L1
18;Pine St;Manchester;England;M1
19;Elm St;London;England;W1
20;Maple St;Birmingham;England;B1
```
<div style="page-break-after: always;"></div>
#### Employee.csv [^employee.csv]
```csv
id;name;position;email;hire_date;department;phone_number
1;John Doe;CEO;john-doe@store.com;2019-01-01;1;123456789
2;Jane Doe;CTO;jane-doe@store.com;2019-01-01;1;123456789
3;Alice Smith;CFO;alice-smith@store.com;2019-01-01;1;123456789
4;Bob Johnson;CIO;bob-johnson@store.com;2019-01-01;1;123456789
5;Charlie Brown;COO;charlie-brown@store.com;2019-01-01;1;123456789
6;David White;CDO;david-white@store.com;2019-01-01;1;123456789
7;Eve Black;CMO;eve-black@store.com;2019-01-01;1;123456789
8;Frank Green;CLO;frank-green@store.com;2019-01-01;1;123456789
9;Grace Grey;CBO;grace-grey@store.com;2019-01-01;1;123456789
10;Hank Blue;CPO;hank-blue@store.com;2019-01-01;1;123456789
```
<div style="page-break-after: always;"></div>
#### Product.csv [^product.csv]
```csv
id;name;price;category;quantity
1;Apple;0.5;Fruit;10
2;Banana;0.3;Fruit;5
3;Carrot;0.2;Vegetable;20
4;Potato;0.1;Vegetable;50
5;Milk;1;Dairy;10
6;Cheese;2;Dairy;5
7;Bread;0.5;Bakery;10
8;Cake;3;Bakery;5
9;Water;0.2;Drinks;20
10;Juice;1;Drinks;10
```
<div style="page-break-after: always;"></div>
#### Store.csv [^store.csv]
```csv
id;name;address_id;supplier_id
1;John;11;1
2;Jane;12;2
3;Jack;13;3
4;Jill;14;4
5;Jenny;15;5
6;Jim;16;6
7;Jill;17;7
8;Jill;18;8
9;Jill;19;9
10;Jill;20;10
```
<div style="page-break-after: always;"></div>
#### StoreProduct.csv [^storeproduct.csv]
```csv
id;product_id;store_id
1;1;1
2;2;1
3;3;1
4;2;2
5;3;2
6;5;3
7;6;3
8;7;3
9;8;4
10;9;4
11;1;5
12;1;6
13;2;6
14;3;7
15;4;8
16;5;8
17;6;9
18;7;10
```
<div style="page-break-after: always;"></div>
#### Supplier.csv [^supplier.csv]
```csv
id;name;contact_mail;phone;address_id
1;Global Sup;info@global.com;+123456789;1
2;Local Sup;;+987654321;2
3;Fix;info@fix.uk;+123456789;3
4;Foxtrot;support@foxtrot.net;+987654321;4
5;Echo;;+123456789;5
6;Delta;;+987654321;6
7;Charlie;;+123456789;7
8;Bravo;;+987654321;8
9;Alpha;;+123456789;9
10;Zulu;;+987654321;10
```
<div style="page-break-after: always;"></div>
### Quellmodell 2: Deutschland
#### Filialen.json [^filialen.json]
```json
[
{
"filialID": 1,
"standort": "Hamburg",
"oeffnungszeiten": "Mo-Sa 8-18 Uhr",
"manager": {
"mitarbeiterID": 12,
"name": "Max Schmidt",
"position": "Filialleiter",
"mitarbeiterSeit": "01.01.2004",
"gehalt": 3434.0,
"email": "max.schmidt@filiale.de"
},
"mitarbeiter": [
{
"mitarbeiterID": 143,
"name": "Erika Stuss",
"position": "Kasse",
"mitarbeiterSeit": "01.01.2014",
"gehalt": 3050.0,
"email": "erika.stuss@filiale.de"
},
{
"mitarbeiterID": 65,
"name": "Hans Glück",
"position": "Lager",
"mitarbeiterSeit": "01.01.2011",
"gehalt": 3050.0,
"email": "hans.glück@filiale.de"
}
],
"produktVorOrt": [
{
"id": 1,
"bestand": 100,
"produktID": 235
},
{
"id": 2,
"bestand": 200,
"produktID": 236
}
]
},
```
```json
{
"filialID": 2,
"standort": "Berlin",
"oeffnungszeiten": "Mo-Sa 8-23 Uhr",
"manager": {
"mitarbeiterID": 22,
"name": "Bill Smith",
"position": "Filialleiter",
"mitarbeiterSeit": "01.01.2011",
"gehalt": 6000.0,
"email": "bill.smith@filiale.de"
},
"mitarbeiter": [
{
"mitarbeiterID": 92,
"name": "Franziska Mayer",
"position": "Kasse",
"mitarbeiterSeit": "01.01.2012",
"gehalt": 3400.0,
"email": "franziska.mayer@filiale.de"
},
{
"mitarbeiterID": 982,
"name": "Franziskus Müller",
"position": "Allround",
"mitarbeiterSeit": "01.01.2010",
"gehalt": 4300.0,
"email": "franziskus.müller@filiale.de"
}
],
"produktVorOrt": [
{
"id": 4,
"bestand": 65,
"produktID": 237
},
{
"id": 5,
"bestand": 37,
"produktID": 238
},
{
"id": 6,
"bestand": 133,
"produktID": 239
}
]
},
{
"filialID": 3,
"standort": "München",
"oeffnungszeiten": "Mo-Sa 9-20 Uhr",
"manager": {
"mitarbeiterID": 912,
"name": "Sabine Huber",
"position": "Filialleiter",
"mitarbeiterSeit": "01.01.2008",
"gehalt": 5000.0,
"email": "sabine.huber@filiale.de"
},
"mitarbeiter": [
{
"mitarbeiterID": 655,
"name": "Andreas Bauer",
"position": "Kasse",
"mitarbeiterSeit": "01.01.2015",
"gehalt": 3200.0,
"email": "andreas.bauer@filiale.de"
},
{
"mitarbeiterID": 42,
"name": "Karin Fischer",
"position": "Regale auffüllen",
"mitarbeiterSeit": "01.01.2016",
"gehalt": 3000.0,
"email": "karin.fischer@filiale.de"
}
],
"produktVorOrt": [
{
"id": 7,
"bestand": 69,
"produktID": 237
},
{
"id": 8,
"bestand": 20,
"produktID": 239
},
{
"id": 9,
"bestand": 304,
"produktID": 242
}
]
},
{
"filialID": 4,
"standort": "Köln",
"oeffnungszeiten": "Mo-Sa 7-22 Uhr",
"manager": {
"mitarbeiterID": 41,
"name": "Anna Müller",
"position": "Filialleiter",
"mitarbeiterSeit": "01.01.2005",
"gehalt": 5500.0,
"email": "anna.müller@filiale.de"
},
"mitarbeiter": [
{
"mitarbeiterID": 32,
"name": "Peter Schmitz",
"position": "Kasse",
"mitarbeiterSeit": "01.01.2013",
"gehalt": 3300.0,
"email": "peter.schmitz@filiale.de"
},
{
"mitarbeiterID": 761,
"name": "Lisa Klein",
"position": "Lager",
"mitarbeiterSeit": "01.01.2012",
"gehalt": 3100.0,
"email": "lisa.klein@filiale.de"
}
],
"produktVorOrt": [
{
"id": 10,
"bestand": 214,
"produktID": 240
},
{
"id": 11,
"bestand": 128,
"produktID": 241
},
{
"id": 12,
"bestand": 74,
"produktID": 235
}
]
},
{
"filialID": 5,
"standort": "Frankfurt",
"oeffnungszeiten": "Mo-Sa 9-19 Uhr",
"manager": {
"mitarbeiterID": 541,
"name": "Thomas Wagner",
"position": "Filialleiter",
"mitarbeiterSeit": "01.01.2007",
"gehalt": 4800.0,
"email": "thomas.wagner@filiale.de"
},
"mitarbeiter": [
{
"mitarbeiterID": 76,
"name": "Julia Becker",
"position": "Kasse",
"mitarbeiterSeit": "01.01.2014",
"gehalt": 3100.0,
"email": "julia.becker@filiale.de"
},
{
"mitarbeiterID": 71,
"name": "Stefan Richter",
"position": "Lager",
"mitarbeiterSeit": "01.01.2013",
"gehalt": 3200.0,
"email": "stefan.richter@filiale.de"
}
],
"produktVorOrt": [
{
"id": 13,
"bestand": 47,
"produktID": 236
},
{
"id": 14,
"bestand": 18,
"produktID": 242
},
{
"id": 15,
"bestand": 99,
"produktID": 240
}
]
},
{
"filialID": 6,
"standort": "Düsseldorf",
"oeffnungszeiten": "Mo-Sa 8-21 Uhr",
"manager": {
"mitarbeiterID": 857,
"name": "Sophie Schmidt",
"position": "Filialleiter",
"mitarbeiterSeit": "01.01.2009",
"gehalt": 5200.0,
"email": "sophie.schmidt@filiale.de"
},
"mitarbeiter": [
{
"mitarbeiterID": 31,
"name": "Markus Hoffmann",
"position": "Kasse",
"mitarbeiterSeit": "01.01.2016",
"gehalt": 3400.0,
"email": "markus.hoffmann@filiale.de"
},
{
"mitarbeiterID": 829,
"name": "Sarah Müller",
"position": "Regale auffüllen",
"mitarbeiterSeit": "01.01.2017",
"gehalt": 3100.0,
"email": "sarah.müller@filiale.de"
}
],
"produktVorOrt": [
{
"id": 16,
"bestand": 32,
"produktID": 238
},
{
"id": 17,
"bestand": 98,
"produktID": 244
},
{
"id": 18,
"bestand": 77,
"produktID": 237
}
]
},
{
"filialID": 7,
"standort": "Stuttgart",
"oeffnungszeiten": "Mo-Sa 8-20 Uhr",
"manager": {
"mitarbeiterID": 658,
"name": "Michaela Weber",
"position": "Filialleiter",
"mitarbeiterSeit": "01.01.2010",
"gehalt": 4900.0,
"email": "michaela.weber@filiale.de"
},
"mitarbeiter": [
{
"mitarbeiterID": 918,
"name": "Jan Schneider",
"position": "Kasse",
"mitarbeiterSeit": "01.01.2015",
"gehalt": 3300.0,
"email": "jan.schneider@filiale.de"
},
{
"mitarbeiterID": 612,
"name": "Laura Zimmermann",
"position": "Lager",
"mitarbeiterSeit": "01.01.2014",
"gehalt": 3200.0,
"email": "laura.zimmermann@filiale.de"
}
],
"produktVorOrt": [
{
"id": 19,
"bestand": 87,
"produktID": 241
},
{
"id": 20,
"bestand": 90,
"produktID": 235
},
{
"id": 21,
"bestand": 190,
"produktID": 245
}
]
},
{
"filialID": 8,
"standort": "Leipzig",
"oeffnungszeiten": "Mo-Sa 9-18 Uhr",
"manager": {
"mitarbeiterID": 2,
"name": "Maximilian Lehmann",
"position": "Filialleiter",
"mitarbeiterSeit": "01.01.2013",
"gehalt": 4700.0,
"email": "maximilian.lehmann@filiale.de"
},
"mitarbeiter": [
{
"mitarbeiterID": 3,
"name": "Anja Wagner",
"position": "Kasse",
"mitarbeiterSeit": "01.01.2017",
"gehalt": 3200.0,
"email": "anja.wagner@filiale.de"
},
{
"mitarbeiterID": 4,
"name": "David Richter",
"position": "Regale auffüllen",
"mitarbeiterSeit": "01.01.2018",
"gehalt": 3100.0,
"email": "david.richter@filiale.de"
}
],
"produktVorOrt": [
{
"id": 22,
"bestand": 56,
"produktID": 238
},
{
"id": 23,
"bestand": 44,
"produktID": 243
},
{
"id": 24,
"bestand": 321,
"produktID": 241
}
]
},
{
"filialID": 9,
"standort": "Hannover",
"oeffnungszeiten": "Mo-Sa 8-18 Uhr",
"manager": {
"mitarbeiterID": 666,
"name": "Nina Schmidt",
"position": "Filialleiter",
"mitarbeiterSeit": "01.01.2010",
"gehalt": 4900.0,
"email": "nina.schmidt@filiale.de"
},
"mitarbeiter": [
{
"mitarbeiterID": 711,
"name": "Andreas Weber",
"position": "Kasse",
"mitarbeiterSeit": "01.01.2012",
"gehalt": 3300.0,
"email": "andreas.weber@filiale.de"
},
{
"mitarbeiterID": 152,
"name": "Sandra Müller",
"position": "Lager",
"mitarbeiterSeit": "01.01.2015",
"gehalt": 3200.0,
"email": "sandra.müller@filiale.de"
},
{
"mitarbeiterID": 591,
"name": "Max Mustermann",
"position": "Regale auffüllen",
"mitarbeiterSeit": "01.01.2014",
"gehalt": 3100.0,
"email": "max.mustermann@filiale.de"
}
],
"produktVorOrt": [
{
"id": 25,
"bestand": 12,
"produktID": 239
},
{
"id": 26,
"bestand": 40,
"produktID": 238
},
{
"id": 27,
"bestand": 144,
"produktID": 240
}
]
},
{
"filialID": 10,
"standort": "Münster",
"oeffnungszeiten": "Mo-Sa 9-21 Uhr",
"manager": {
"mitarbeiterID": 918,
"name": "Julia Becker",
"position": "Filialleiter",
"mitarbeiterSeit": "01.01.2008",
"gehalt": 5100.0,
"email": "julia.becker@filiale.de"
},
"mitarbeiter": [
{
"mitarbeiterID": 236,
"name": "Michaela Fischer",
"position": "Kasse",
"mitarbeiterSeit": "01.01.2011",
"gehalt": 3400.0,
"email": "michaela.fischer@filiale.de"
}
],
"produktVorOrt": [
{
"id": 28,
"bestand": 330,
"produktID": 239
},
{
"id": 29,
"bestand": 230,
"produktID": 235
},
{
"id": 30,
"bestand": 34,
"produktID": 242
}
]
}
]
```
<div style="page-break-after: always;"></div>
#### Produkte.json [^produkte.json]
```json
[
{
"produktID": 235,
"name": "Milch",
"kategorie": "Lebensmittel",
"preis": 1.2,
"steuersatz": {
"steuersatzID": 1,
"kategorie": "Lebensmittel",
"steuersatz": 19.0
}
},
{
"produktID": 236,
"name": "Brot",
"kategorie": "Lebensmittel",
"preis": 2.5,
"steuersatz": {
"steuersatzID": 1,
"kategorie": "Lebensmittel",
"steuersatz": 19.0
}
},
{
"produktID": 237,
"name": "Käse",
"kategorie": "Lebensmittel",
"preis": 3.5,
"steuersatz": {
"steuersatzID": 1,
"kategorie": "Lebensmittel",
"steuersatz": 19.0
}
},
{
"produktID": 238,
"name": "Butter",
"kategorie": "Lebensmittel",
"preis": 1.5,
"steuersatz": {
"steuersatzID": 1,
"kategorie": "Lebensmittel",
"steuersatz": 19.0
}
},
```
```json
{
"produktID": 239,
"name": "Wurst",
"kategorie": "Lebensmittel",
"preis": 2.0,
"steuersatz": {
"steuersatzID": 1,
"kategorie": "Lebensmittel",
"steuersatz": 19.0
}
},
{
"produktID": 240,
"name": "Toilettenpapier",
"kategorie": "Hygiene",
"preis": 4.0,
"steuersatz": {
"steuersatzID": 2,
"kategorie": "Hygiene",
"steuersatz": 7.0
}
},
{
"produktID": 241,
"name": "Seife",
"kategorie": "Hygiene",
"preis": 1.5,
"steuersatz": {
"steuersatzID": 2,
"kategorie": "Hygiene",
"steuersatz": 7.0
}
},
{
"produktID": 242,
"name": "Shampoo",
"kategorie": "Hygiene",
"preis": 3.0,
"steuersatz": {
"steuersatzID": 2,
"kategorie": "Hygiene",
"steuersatz": 7.0
}
},
{
"produktID": 243,
"name": "Duschgel",
"kategorie": "Hygiene",
"preis": 2.5,
"steuersatz": {
"steuersatzID": 2,
"kategorie": "Hygiene",
"steuersatz": 7.0
}
},
{
"produktID": 244,
"name": "Zahnpasta",
"kategorie": "Hygiene",
"preis": 2.0,
"steuersatz": {
"steuersatzID": 2,
"kategorie": "Hygiene",
"steuersatz": 7.0
}
}
]
```
[^filialen.json]: GitHub Copilot
[^produkte.json]: GitHub Copilot
[^address.csv]: GitHub Copilot
[^employee.csv]: GitHub Copilot
[^product.csv]: GitHub Copilot
[^store.csv]: GitHub Copilot
[^storeproduct.csv]: GitHub Copilot
[^supplier.csv]: GitHub Copilot
[^q1]: ChatGPT 4: Denk dir bitte 6 interessante Fragen zum Thema Datenintegration aus.