Informatik Martin Jundt, Holger Ludolph, Peter K. Siebert 1. Auflage, September 2010 ISBN 978-3-86249-014-1 Eingangsklasse/ Jahrgangsstufe 1 Band 1 Berufliches Gymnasium Baden-Württemberg BS-BG-BW-INF1 Impressum ISBN 978-3-86249-014-1 Matchcode: BS-BG-BW-INF1 Autoren: Martin Jundt Studienrat und Fachlehrer für Mathematik und Wirtschaftsinformatik Holger Ludolph Studienrat und Fachlehrer für BWL/VWL und Datenverarbeitung Peter K. Siebert Studiendirektor und Fachlehrer für Informatik und Physik Produziert im HERDT-Digitaldruck 1. Auflage, 2010 HERDT-Verlag für Bildungsmedien GmbH Am Kümmerling 21-25 55294 Bodenheim Internet: www.herdt.com E-Mail: [email protected] © HERDT-Verlag für Bildungsmedien GmbH, Bodenheim Alle Rechte vorbehalten. Kein Teil des Werkes darf in irgendeiner Form (Druck, Fotokopie, Mikrofilm oder einem anderen Verfahren) ohne schriftliche Genehmigung des Verlags reproduziert oder unter Verwendung elektronischer Systeme verarbeitet, vervielfältigt oder verbreitet werden. Dieses Buch wurde mit großer Sorgfalt erstellt und geprüft. Trotzdem können Fehler nicht vollkommen ausgeschlossen werden. Verlag, Herausgeber und Autoren können für fehlerhafte Angaben und deren Folgen weder eine juristische Verantwortung noch irgendeine Haftung übernehmen. Wenn nicht explizit an anderer Stelle des Werkes aufgeführt, liegen die Copyrights an allen Screenshots beim HERDT-Verlag. Sollte es trotz intensiver Recherche nicht gelungen sein, alle weiteren Rechteinhaber der verwendeten Quellen und Abbildungen zu finden, bitten wir um kurze Nachricht an die Redaktion. Die in diesem Buch und in den abgebildeten bzw. zum Download angebotenen Dateien genannten Personen und Organisationen, Adress- und Telekommunikationsangaben, Bankverbindungen etc. sind frei erfunden. Eventuelle Übereinstimmungen oder Ähnlichkeiten sind unbeabsichtigt und rein zufällig. Die Bildungsmedien des HERDT-Verlags enthalten Verweise auf Webseiten Dritter. Diese Webseiten unterliegen der Haftung der jeweiligen Betreiber, wir haben keinerlei Einfluss auf die Gestaltung und die Inhalte dieser Webseiten. Bei der Bucherstellung haben wir die fremden Inhalte daraufhin überprüft, ob etwaige Rechtsverstöße bestehen. Zu diesem Zeitpunkt waren keine Rechtsverstöße ersichtlich. Wir werden bei Kenntnis von Rechtsverstößen jedoch umgehend die entsprechenden Internetadressen aus dem Buch entfernen. Die in den Bildungsmedien des HERDT-Verlags vorhandenen Internetadressen waren zum Zeitpunkt der Erstellung der jeweiligen Produkte gültig. Sollten Sie die Inhalte nicht mehr unter den angegebenen Adressen finden, sind diese eventuell inzwischen komplett aus dem Internet genommen worden oder unter einer neuen Adresse zu finden. Bildquellenverzeichnis Seite 7 LAN-Party, © iStock/Matej Michelizza © Holger Ludolph/Igel Seite 29 Zwei Frauen, © iStock/Alex Raths Seite 84-85 Seite 65 © Holger Ludolph/2 Mädchen Seite 95 Junk-Mail, © iStock/GeofferyHolman Seite 67 © Holger Ludolph/Whiteboard Seite 98 Impressum-Stempel, © iStock/Markus Imorde Seite 71 © Holger Ludolph/Junge Seite 104 © Fotolia/Pavel Losevsky Bild #5552901 Seite 75, 76, 77 Seite 77-79 Seite 82 © Holger Ludolph/Rosen © Holger Ludolph/Politsei Seite 78, 80, 81 2 Seite 82 © Holger Ludolph/Skipiste © Holger Ludolph/Kirche © Holger Ludolph/Fernsehturm Seite 109 friends camping, © iStock/Alija Seite 111 © Peter K. Siebert/Schema Realwelt Seite 153 Young Woman Doing Laundry, © iStock/Izuzek Seite 190, 192, 214 Waschmaschine, © iStock/grimgram © HERDT-Verlag Vorwort Dieses Schülerbuch „Informatik“ für die Eingangsklasse und Jahrgangsklasse 1 (Band 1) orientiert sich am Lehrplan für das berufliche Gymnasium der agrarwissenschaftlichen, ernährungswissenschaftlichen, sozialpädagogischen und wirtschaftlichen Richtung des Landes BadenWürttemberg (Stand 26.6.2008). Bei der Erstellung wurden die neuesten Empfehlungen der Handreichungen zum Lehrplan, herausgegeben vom Landesinstitut für Schulentwicklung, Stuttgart, berücksichtigt. Jedes Kapitel beginnt mit einer Einstiegssituation, die an die Erfahrungswelt der Schülerinnen und Schüler anknüpft und als Rahmenhandlung im Kapitel weitergeführt wird. Die Einstiegssituationen wurden zum Teil mithilfe der Storyboard-Technik mit Schülerinnen und Schülern zusammen entwickelt. Für das Erlernen der Inhalte werden handlungsorientierte Techniken eingesetzt, die die Inhalte und Methoden der Informatik anwendungsbezogen darstellen. Jedes Kapitel enthält Sachinformationen und darauf abgestimmte Handlungsaufträge, die einen tieferen Bezug zum Lerninhalt herstellen. Als weitere Elemente unterstützen „Merke“, „Hinweise“ und „Tipps“ die pädagogische Aufbereitung der Sachinformationen. Die Aufgaben am Ende eines Kapitels festigen und transferieren das Erlernte auf einfache und komplexere Aufgabenstellungen. Ein CD-Symbol in der Randspalte verweist auf Dateien für die Schülerhand, die im Lehrermedienpaket (siehe unten) hinterlegt sind. Zur besseren Lesbarkeit sind Verweise auf Menüpunkte oder -pfade in GROSSBuCHSTABEN dargestellt. Kursivschrift kennzeichnet die vom jeweiligen Programm vorgegebenen Bezeichnungen für Dialogfelder, Register, Schaltflächen sowie Datei- und Ordnernamen. Programmcodes und deren Bestandteile (Methoden, Attribute, etc.) werden in der Schriftart Courier New dargestellt. Wenn in den folgenden Texten lediglich die männliche Form (z. B. Schüler) verwendet wird, so dient dies einzig und allein der sprachlichen Vereinfachung. Das Schülerbuch wird ergänzt durch ein Lehrermedienpaket, das die Lösungen zu den Aufgaben im Schülerbuch sowie offene Dateien zur Bearbeitung der Handlungsaufträge für die Schülerhand enthält. Darüber hinaus werden profilbezogene Aufgabenstellungen für die wirtschaftliche Richtung des beruflichen Gymnasiums zum kostenlosen Download auf der Internetseite des HERDT-Verlages angeboten. Geben Sie auf der Webseite www.herdt.com in das obere Suchfeld den Suchbegriff Informatik ein und wählen Sie anschließend in der Trefferliste den Titel des Buches. Auf der nun angezeigten Webseite können Sie den Download über einen Klick auf die Schaltfläche Übungsdateien starten. Die Autoren bedanken sich beim HERDT-Verlag für die freundliche Betreuung und unterstützung beim Entstehen dieses Schülerbuchs. Ebenso gebührt allen Schülerinnen und Schülern für ihre konstruktive Zusammenarbeit unser herzlicher Dank. Offenburg/Freiburg/Stadecken-Elsheim, September 2010 Martin Jundt Holger Ludolph Peter K. Siebert © HERDT-Verlag 3 I Inhaltsverzeichnis 1 Grundlagen einfacher und verteilter Informatiksysteme .......................... 7 1.1 Arbeitsplatzrechner und Peripheriegeräte beurteilen ............................................................ 8 1.1.1 Komponenten der Hauptplatine eines Computersystems und deren Leistungsfähigkeit beschreiben .................................................................. 9 1.1.2 Externe Massenspeicher unterscheiden ..................................................................... 11 1.1.3 Bildschirmtechnologien einordnen ............................................................................ 12 1.1.4 Druckerarten unterscheiden ....................................................................................... 12 1.2 Software einordnen ................................................................................................................ 13 1.2.1 Funktion des BIOS beschreiben .................................................................................. 14 1.2.2 Aufgaben und Arten von Betriebssystemen kennen ................................................ 14 1.2.3 Anwendungsprogramme einteilen ............................................................................ 15 1.3 Ordner und Dateien verwalten .............................................................................................. 16 1.3.1 Mit der Benutzeroberfläche arbeiten ........................................................................ 16 1.3.2 Mit Fenstern (Windows) arbeiten ............................................................................... 16 1.3.3 Dateien und Ordner einrichten .................................................................................. 16 1.3.4 Verwaltungsaufgaben für Dateien und Ordner durchführen .................................. 18 1.4 Mit Computern kommunizieren ............................................................................................. 21 1.4.1 Netzwerkarten bestimmen ......................................................................................... 21 1.4.2 Netzwerkkarte verwenden ......................................................................................... 22 1.4.3 Übertragungsmedium beurteilen ............................................................................... 22 1.4.4 Kommunikation in Netzwerktopologien organisieren ............................................. 23 1.4.5 Ethernet-Netzwerktechnologie beschreiben ............................................................. 24 1.4.6 Netzwerkadressierung verstehen ............................................................................... 24 1.4.7 Das TCP/IP-Netzwerkprotokoll kennen ...................................................................... 25 1.4.8 Das Internet beschreiben ............................................................................................ 26 1.4.9 Wichtige Internetdienste kennen ............................................................................... 26 2 Tabellenkalkulation mit Microsoft Excel ................................................ 29 2.1 Grundlagen der Tabellenkalkulation ..................................................................................... 30 2.1.1 Die Grundstruktur eines Arbeitsblattes in der Tabellenkalkulation .......................................................................................... 30 2.1.2 Zellformatierungen anwenden .................................................................................. 31 2.1.3 Zellen verbinden .......................................................................................................... 32 2.1.4 Formeln eingeben ....................................................................................................... 34 2.1.5 Kopieren ....................................................................................................................... 34 2.1.6 Erstellen von absoluten und relativen Bezügen ........................................................ 35 2.1.7 Rahmenformatierungen erstellen .............................................................................. 36 2.1.8 Erstellen eines einfachen Diagramms ........................................................................ 36 2.1.9 Tabellen speichern ....................................................................................................... 38 2.2 Tabellengestaltung .................................................................................................................. 39 2.2.1 Bearbeiten der Zellausrichtung .................................................................................. 39 2.2.2 Formatieren der Spalten ............................................................................................. 40 2.2.3 Datumsformate bearbeiten ........................................................................................ 41 2.2.4 Benutzerdefinierte Zahlenformate anwenden ......................................................... 41 2.2.5 Druck vorbereiten und ausdrucken ............................................................................ 42 2.3 Anwendungen und Funktionen ............................................................................................. 43 2.3.1 Die WENN-Funktion sinnvoll nutzen .......................................................................... 44 2.3.2 Bedingte Formatierung einsetzen .............................................................................. 45 2.3.3 Summe, Mittelwert, Minimum und Maximum anwenden ....................................... 46 2.3.4 Den SVERWEIS einsetzen ............................................................................................ 47 2.3.5 Symbolische Adressierung bzw. Namen festlegen .................................................... 50 2.3.6 Zellen schützen ............................................................................................................ 51 4 © HERDT-Verlag I 2.4 Diagramme erstellen ............................................................................................................... 54 2.4.1 Balkendiagramme erstellen ........................................................................................ 54 2.4.2 Säulendiagramme erstellen ........................................................................................ 55 2.4.3 Liniendiagramme erstellen ......................................................................................... 56 2.4.4 Kreisdiagramme erstellen ........................................................................................... 57 2.5 Steuerelemente für Formulare erstellen ................................................................................ 57 2.5.1 Kontrollkästchen erstellen .......................................................................................... 58 2.5.2 Bildlaufleisten erstellen ............................................................................................... 58 2.5.3 Professionelle Steuerelemente anwenden ............................................................... 59 2.5.4 Listenfelder und Kombinationsfelder einsetzen ....................................................... 59 2.5.5 Den SVERWEIS in einem Listen- oder Kombinationsfeld einsetzen ....................................................................................... 60 2.5.6 Kontrollkästchen und Bildlaufleisten hinzufügen .................................................... 61 2.5.7 Die Bildlaufleiste anpassen ......................................................................................... 61 3 Mediengestaltung ................................................................................... 65 3.1 Eine Präsentation auswerten .................................................................................................. 66 3.1.1 Die Kopfstand-Methode: Störende Merkmale einer Präsentation erkennen ......... 67 3.1.2 Farben richtig einsetzen .............................................................................................. 68 3.1.3 Schriftarten richtig auswählen ................................................................................... 70 3.2 Eine Präsentation planen ........................................................................................................ 71 3.3 Multimediale Inhalte einbinden ............................................................................................. 72 3.3.1 Zwischen Vektor- und Pixelgrafiken unterscheiden .................................................. 73 3.3.2 Die wichtigsten Dateitypen kennen ........................................................................... 73 3.4 Digitale Bilder bearbeiten ....................................................................................................... 74 3.4.1 Arbeiten mit GIMP – die Benutzeroberfläche ........................................................... 74 3.4.2 Bilder zuschneiden ...................................................................................................... 75 3.4.3 Bilder neu einfärben ................................................................................................... 76 3.4.4 Den Bildausschnitt festlegen und die Größe anpassen ............................................. 77 3.4.5 Einen Bildausschnitt mithilfe von Pfaden festlegen .................................................. 78 3.4.6 Mit Ebenen arbeiten ................................................................................................... 79 3.4.7 Ein Objekt rotieren und Text als weitere Ebene hinzufügen ................................... 80 3.4.8 Filter verwenden .......................................................................................................... 81 3.4.9 Bilder ausrichten .......................................................................................................... 82 3.5 Eine Präsentation erstellen ..................................................................................................... 85 3.5.1 Das Drehbuch erarbeiten ............................................................................................ 86 3.5.2 Begrüßungsfolien gestalten ....................................................................................... 89 3.5.3 Texte und Folien animieren ........................................................................................ 90 3.6 Inhaltsfolien gestalten ............................................................................................................ 91 3.6.1 Ein Organigramm einfügen ........................................................................................ 91 3.6.2 Eine Tabelle einfügen .................................................................................................. 92 3.6.3 Ein Diagramm einfügen .............................................................................................. 93 3.6.4 Videos und Musik einfügen ........................................................................................ 94 4 Informatik und Gesellschaft .................................................................... 95 4.1 Daten sammeln ........................................................................................................................ 96 4.1.1 Bundesdatenschutzgesetz (BDSG) beachten ............................................................. 97 4.1.2 Telemediengesetz (TMG) berücksichtigen ................................................................. 98 4.1.3 urheberrechtgesetz (urhG) anwenden ...................................................................... 98 4.2 Daten sicher übertragen ......................................................................................................... 99 4.2.1 Das Internet anonym nutzen ...................................................................................... 99 4.2.2 Kryptografische Verfahren einsetzen ....................................................................... 100 4.2.3 Digitale Signaturen verwenden ................................................................................ 102 © HERDT-Verlag 5 I Inhaltsverzeichnis 4.2.4 Verschlüsselung im World Wide Web erkennen ...................................................... 103 4.2.5 Verschlüsselung von E-Mails durchführen ............................................................... 103 4.3 Daten vor Missbrauch schützen ............................................................................................ 104 4.3.1 Soziale Netzwerke sicher nutzen .............................................................................. 104 4.3.2 Sicherheitsrisiken beim Chat(ten) kennen .............................................................. 105 4.3.3 Schadprogramme abwehren ................................................................................... 105 4.3.4 Sich vor Phishing schützen ........................................................................................ 106 4.3.5 Cookies beurteilen ..................................................................................................... 106 4.3.6 Das WLAN richtig nutzen .......................................................................................... 107 4.3.7 Sichere Passwörter vergeben .................................................................................... 107 5 Relationale Datenbanken ...................................................................... 109 5.1 Die Realwelt in einem Datenbankmodell abbilden ............................................................ 110 5.2 Entitäten, Attribute und Beziehungen identifizieren ......................................................... 113 5.2.1 Entitäten und Beziehungen erkennen .................................................................... 114 5.2.2 Kardinalitätsverhältnis zu jedem Beziehungstyp festlegen .................................... 116 5.2.3 Attribute und Schlüsselattribute identifizieren und den Entitytypen zuordnen .. 119 5.3 Ein Datenbankmodell in ein relationales Datenbankschema überführen ........................ 124 5.3.1 Datenintegrität festlegen und Optimierung des Relationenmodells durchführen . 125 5.3.2 Ein Datenbanksystem wählen ................................................................................... 128 5.3.3 Datenbankserver MySQL installieren ....................................................................... 129 5.4 Tabellen erstellen und verwenden ....................................................................................... 131 5.4.1 Eine Datenbank erstellen .......................................................................................... 132 5.4.2 Tabellen erstellen ....................................................................................................... 133 5.4.3 Tabellen ändern ......................................................................................................... 136 5.4.4 Daten in Tabellen einfügen ...................................................................................... 138 5.4.5 Gespeicherte Daten ändern und löschen ................................................................. 139 5.4.6 Daten sichern und rücksichern ................................................................................. 141 5.4.7 Gespeicherte Daten ansehen .................................................................................... 142 5.4.8 Gespeicherte Daten löschen ..................................................................................... 146 5.5 OpenOffice Base zur Pflege der Daten nutzen ................................................................... 148 5.5.1 Formulare erstellen ................................................................................................... 148 5.5.2 Berichte erstellen ...................................................................................................... 149 6 Objektorientierte Systementwicklung ................................................. 153 6.1 Objektorientierte Analyse und Design ................................................................................ 154 6.1.1 Software entwickeln ................................................................................................ 154 6.1.2 Maschinen- und Hochsprache unterscheiden ......................................................... 155 6.1.3 Objektorientiert vorgehen ....................................................................................... 157 6.1.4 Grundbegriffe der Objektorientierung kennenlernen .......................................... 159 6.1.5 Mit uML modellieren ............................................................................................... 163 6.2 Objektorientierte Programmierung ..................................................................................... 172 6.2.1 Mit Eclipse programmieren ....................................................................................... 172 6.2.2 Deklarationen verstehen ........................................................................................... 174 6.2.3 Mit Attributwerten arbeiten .................................................................................... 177 6.2.4 Klassendiagramme übersetzen ................................................................................. 184 6.2.5 Objekte erzeugen ...................................................................................................... 188 6.2.6 Get- und Set-Methoden benutzen ........................................................................... 193 6.3 Methoden mit Kontrollstrukturen ....................................................................................... 204 6.3.1 Boolesche Variablen verstehen ................................................................................. 204 6.3.2 Im Programm verzweigen ......................................................................................... 206 6.3.3 Etwas mehrfach ausführen ....................................................................................... 210 6 © HERDT-Verlag 5 Relationale Datenbanken Einstiegssituation Wie jedes Jahr leiten Martin, Lukas und Aljona ein Zeltlager für ihre Jugendorganisation. Martin hat eine Idee: „Diesmal soll alles anders werden. Wir werden keine Kärtchen mehr für die Daten der Kinder, Betreuer und Gruppen nehmen, sondern alle Informationen digital in einer Datenbank erfassen.“ „Damit können wir im Zeltlager die Gruppen leichter einteilen und den Einsatz der Betreuer besser koordinieren“, pflichtet ihm Aljona bei. Lukas hingegen zögert: „Und wie habt ihr euch das vorgestellt? Wie sollen wir das bewerkstelligen?“ „Das ist kein Problem“, beruhigt ihn Aljona, „Martin und ich haben am beruflichen Gymnasium das Thema Datenbanken gehabt, da müsste etwas hängen geblieben sein. Eine kleine, feine Datenbank für das Zeltlager sollte dabei locker rauskommen.“ Martin erklärt: „Zuerst müssen wir den Ablauf des Zeltlagers von der Anmeldung bis zur Abfahrt genau durchgehen, damit wir alles so gut wie möglich in der Datenbank darstellen können“. Lukas versteht langsam: „O. k., das klingt logisch. Fangen wir mit der Anmeldung an: Die Kinder melden sich zusammen mit den Eltern für das Zeltlager an. Bei der Anmeldung notieren wir Daten zu jedem Kind und zu einem Elternteil. Weil es ja öfter vorkommt, dass Eltern gleich mehrere Kinder ins Zeltlager schicken, gibt es für jedes Kind eine Anmeldung – wenn auch mit den gleichen Eltern-Informationen.“ „Es geht aber doch schneller, wenn wir die Eltern getrennt von den Kindern erfassen, damit wir die gleichen Daten nicht doppelt und dreifach erfassen“, schlägt Aljona vor. „Das stimmt. Und als Nächstes müssen wir dann die Betreuer erfassen“, fährt Martin fort, „wir könnten sie mit einer eindeutigen Betreuernummer versehen, z. B. MS-10, MS für Martin Sonntag und die 10 für das Jahr, und zusammen mit ihrer Funktion im Lager und dem Vor- und Nachnamen abspeichern.“ „Wenn wir dann alles erfasst haben, Elternteil, Kind und Betreuer, dann können wir doch die Teams und Gruppen zusammenstellen?“, nimmt Lukas 5 Relationale Datenbanken den Faden auf. „Richtig“, bestätigt Aljona, „wir bilden die Teams für Spiele und Sport und die, die für die Organisation von Materialien und Transporten verantwortlich sind. Die jeweiligen Teams werden aus unseren Betreuern zusammengestellt. Jedes Team erhält eine Teamnummer, z. B. SPLT1 für das erste Spielteam, und einen Teamnamen.“ „Und danach ordnen wir die Kinder den einzelnen Gruppen zu. Wobei jede Gruppe mit einer Gruppennummer, z. B. GR1M für die erste Mädchengruppe, einem Gruppennamen und der entsprechenden Zeltnummer abgespeichert wird“, ergänzt Martin. Lukas überlegt: „Was ich noch nicht verstehe: Wie können wir die Teams den Gruppen zuordnen?“ „Ich glaube, es wird Zeit, dass wir unseren Entwurf für die Datenbank zu Papier bringen, sonst verlieren wir die Übersicht“, schlägt Martin vor. „Aber noch einmal zu den Zelten: Weil wir sie von anderen Organisationen ausleihen, müssen wir die auch erfassen. Auch die Größe der Zelte, also die Anzahl der Kinder, die hineinpassen.“ „Bis zum Zeltlager dauert es nicht mehr lange, wir können anfangen“, ruft Lukas. „Yes, we can“, antworten die beiden anderen im Chor. Handlungsaufträge 1 Recherchieren Sie in Gruppen und zeigen Sie anhand von Beispielen, wo Daten- banken heute Anwendung finden. Präsentieren Sie Ihre Ergebnisse in der Klasse. 2 Sie haben bereits mit einem Tabellenkalkulationsprogramm gearbeitet und wissen, dass Informationen auch in einer Tabellenkalkulation gespeichert werden können. Warum also eine Datenbank? Recherchieren Sie und finden Sie Unterschiede zwischen der Verwendung einer ­Tabellenkalkulation und einer Datenbank und stellen Sie das Für und Wider auf ­einem Flipchart vor. 5.1 Die Realwelt in einem Datenbankmodell abbilden Datenbanken sind aus unserer Gesellschaft nicht mehr wegzudenken. Ob bei der Reservierung eines Fluges, der Anmeldung in einer Stadt oder Gemeinde oder der Abbuchung eines Betrages von einem Bankkonto: Immer sind Datenbanksysteme beteiligt. Dabei verstehen wir unter einer Datenbank eine integrierte Ansammlung von Daten, die allen Benutzern als „gemeinsame Basis“ aktueller Informationen dient. Diese gemeinsame Basis setzt bei der Entwicklung einer Datenbank folgende Anforderungen voraus: 110 Redundanzfreiheit Keine Information, kein Datenwert darf in der Datenbank mehrfach gespeichert sein. Die Daten werden zentral gespeichert und nicht auf unterschiedlichen Rechnern verwaltet und gepflegt. Unabhängigkeit Die Daten sind unabhängig von der Anwendung zu speichern. Es gibt keine Abhängigkeit der Daten zu einem bestimmten Programm. Das Ändern von Hard- und Software, z. B. Wechseln des Betriebssystems, verursacht keine Anpassungsschwierigkeiten. © HERDT-Verlag DieRealweltineinemDatenbankmodellabbilden Datenintegrität Die Daten sind in ihrer Struktur einheitlich und müssen fehlerfrei erfasst sein, sodass sie den gewünschten Informationsgehalt widerspruchfrei angeben. Mehrbenutzerbetrieb Jeder Benutzer bzw. jedes Anwenderprogramm soll mit der Datenbank arbeiten können, d. h., Zugriffskontrollen und Sperrmechanismen gewährleisten den korrekten Datenbestand. Datenschutz Dazu zählen der Ausschluss unautorisierter Zugriffe und die Gewährleistung der Datensicherheit, wie die Wiederherstellung von Daten nach Systemfehlern. Ziel bei der Entwicklung einer Datenbank ist es, einen Ausschnitt der Realwelt, auch als Miniwelt bezeichnet, möglichst genau in einem Datenbankmodell abzubilden. In dieser Miniwelt existiert z. B. eine Vielzahl von Objekten wie Personen, unternehmungen, Produkte oder Dienstleistungen, die in unterschiedlichen Beziehungen zueinander stehen, z. B. werden Produkte verkauft und produziert. Die Daten über diese Objekte und Aktivitäten müssen unabhängig von dem Datenbankmodell gespeichert werden. Die Trennung der verschiedenen Beschreibungsebenen einer Datenbank ist mithilfe des Drei-Ebenen-Konzepts möglich, welches in der nachfolgenden Abbildung dargestellt ist. In diesem Konzept ist die physische Datenunabhängigkeit (Datenspeicherung) von der konzeptionellen Datenunabhängigkeit (Datenbankmodell) und den Datenbankoperationen gegeben, sodass bei Änderungen auf einer Ebene die nächsthöhere nicht geändert werden muss. Die drei Ebenen werden im Folgenden noch einmal erläutert: Konzeptionelle Ebene In dieser Ebene werden sämtliche Daten- und deren Beziehungsstrukturen zueinander definiert. Zu ihr gehört das Datenbankmodell, welches sich nur wenig ändert und für die Verständigung zwischen Entwickler und Anwender, wie auch für die umsetzung der Datenbank, gleichermaßen geeignet ist. © HERDT-Verlag 111 5 Relationale Datenbanken Externe Ebene In dieser Ebene werden für die Benutzer und die Anwendungen die individuellen Datensichten beschrieben. Darüber hinaus werden Zugriffsrechte und Bedingungen für eine fehlerfreie Dateneingabe festgelegt. Interne Ebene In dieser Ebene werden die physische Anordnung der Daten und die Zugriffsstrukturen auf den Speichermedien festgelegt, also die Art und Weise, wie die Daten auf externen Speichern abgelegt sind. Merke Einer Datenbank liegen genau definierte Beschreibungen für Daten- und Beziehungsstrukturen sowie Verarbeitungsschritte (Operationen) zugrunde, die man auch als Datenbankmodell bezeichnet. Die Verwaltung, Speicherung und Bereitstellung der Daten an mehrere Benutzer ist nur mithilfe einer Verwaltungssoftware möglich, die auch als Datenbankmanagementsystem (DBMS) bezeichnet wird. Datenbank und Datenbankmanagementsystem bilden zusammen das Datenbanksystem. Als wichtigste Datenbankmodelle sind zu nennen das hierarchische Datenbankmodell, das Netzwerkdatenbankmodell, das relationale Datenbankmodell und das objektorientierte Datenbankmodell. Die nachfolgenden Ausführungen beziehen sich ausschließlich auf das relationale Datenbankmodell. Handlungsauftrag Erstellen Sie in Gruppenarbeit einen kurzen geschichtlichen Überblick über die Datenbankentwicklungen in der EDV. Präsentieren Sie Ihre Ergebnisse in einer Mindmap. Lukas wirkt nach anfänglichem Enthusiasmus ein wenig verzweifelt: „Ich verstehe, dass z. B. Christine Adler und ihre Mutter Susanne Adler als Objekte beschrieben werden können und beide stehen auch in Beziehung zueinander, aber wie können wir das Ganze dann in eine Datenbank umsetzen?“ „Da hilft nur eine strikte Orientierung an den vier Entwurfsphasen, wie wir sie im Unterricht kennengelernt haben“, erklärt Martin. Der Entwurf einer Datenbank kann in vier Phasen eingeteilt werden: 112 Anforderungsanalyse und -spezifikation Diese Phase orientiert sich an den von den beteiligten Benutzergruppen gegebenen Informationen und deren fachlichen Zusammenhängen. © HERDT-Verlag Entitäten,AttributeundBeziehungenidentifizieren Konzeptioneller Entwurf Diese Phase entwickelt für die identifizierten Objekte und deren Beziehungen ein Datenbankmodell. Logischer Entwurf In dieser Phase geschieht die umsetzung des konzeptionellen Entwurfs in ein relationales Datenbankschema. Physischer Entwurf Diese Phase steht für die Implementierung des relationalen Datenbankschemas in ein gewähltes Datenbankmanagementsystem. Aufgaben 1 Warum werden Datenbanken eingesetzt und welche Arten von Datenbanken kennen Sie? 2 Was versteht man unter Redundanz bei einer Datenbank? Erläutern Sie dies anhand eines Beispiels. 3 Warum ist bei Datenbanken heutzutage ein Mehrbenutzerbetrieb gefordert? 4 Erklären Sie das Ziel des Drei-Ebenen-Konzeptes. 5 Was wird in einem Datenbankmodell beschrieben bzw. dargestellt? 6 Welches sind die Aufgaben eines Datenbankmanagementsystems? 7 Oft werden die Begriffe Datenbank, Datenbanksystem und Datenbankmanagementsystem synonym verwendet. Erklären Sie die einzelnen Begriffe und zeigen Sie die unterschiedliche Bedeutung. 8 In der Phase der Anforderungsanalyse und -spezifikation müssen die Daten ermittelt werden. Nennen Sie Beispiele, welche Materialien, Methoden oder Hilfsmittel zu einer Anforderungsermittlung gehören. 5.2 Entitäten, Attribute und Beziehungen identifizieren Aljona, Lukas und Martin tragen alle Informationen zusammen: die alten Karteikarten, Hinweise auf die Organisationen, die Zelte verleihen, den Anmeldebogen für das Zeltlager usw. Damit sind für die Ermittlung der Daten alle Anforderungen bekannt. In einem Brainstorming spielen sie den Ablauf des Zeltlagers durch und machen sich Notizen, um keine Einzelheit oder Aktivität zu vergessen. Die erste Entwurfsphase hat begonnen … Die ermittelten Anforderungen werden nun analysiert, um daraus ein systemunabhängiges Datenbankmodell zu entwerfen. Der nachfolgende Datenbankentwurf orientiert sich an dem von Peter Pin-Shan Chen 1976 entwickelten Entity-Relationship-Modell (ER-Modell). Beim ERModell werden die zu verwaltenden Daten in Objekte und Beziehungen zwischen diesen Objekten aufgeteilt. Ein hilfreiches Kommunikationsmittel in den Entwurfsphasen ist die grafische Darstellung eines ER-Modells, wie sie in den folgenden Kapiteln aufgezeigt wird. © HERDT-Verlag 113 5 RelationaleDatenbanken 5.2.1 Entitäten und Beziehungen erkennen Zu Beginn der zweiten Phase, dem konzeptionellen Entwurf, müssen alle Objekte, die in dem Projekt Zeltlager auftreten, identifiziert werden. In unserer Einstiegssituation hat Lukas bereits erkannt, dass die angemeldeten Kinder und ihre Eltern als Objekte identifiziert werden können. Objekte werden in der relationalen Datenbanktheorie auch als Entitäten (Entities) bezeichnet. Merke Eine Entität (Entity) ist ein konkretes, individuell identifizierbares Objekt aus der realen oder fiktiven Welt wie z. B. eine spezifische Person oder Firma, ein konkreter Gegenstand oder ein Ereignis, für das Informationen gespeichert werden. Beispiele für Objekte sind: Individuen: Person Heinrich Müller, Firma GehtganzGut, Kunde Maria Meyer Konkreter Gegenstand: Raum A-308, Abteilung Lohn&Gehalt, Wohnort Berlin Ereignis: Buchung, Mahnung, Vermietung Abstraktes: unterricht, Zahlungsart, Tagesplan Eine Entität ist immer Mitglied einer Gruppe, dem Entitytyp, auch als Entitätenmenge bezeichnet. So sind z. B. die Schülerin Christine Adler und der Schüler Christopher Jäger konkrete individuell identifizierbare Objekte, über die Informationen abgespeichert werden. Da sie aber die gleichen Eigenschaften haben, gehören sie zur Gruppe der Schüler. Man kann auch sagen, sie sind vom Entitytyp Schüler. Welche Objekte so wichtig sind, dass sie in das Datenbankmodell aufgenommen werden sollen, muss sich an den funktionellen und informatorischen Zusammenhängen der zu speichernden Daten orientieren. Folgende Schritte führen zum Erkennen von Entitäten und deren Zugehörigkeit zu Entitytypen für die Datenbank Zeltlager: X Markieren Sie für die Identifizierung der Entitäten (Objekte) und deren Entitytypen (Gruppen) zunächst alle Substantive aus der Einstiegssituation durch einem unterstrich. […] Daten der Kinder, Betreuer und Gruppen nehmen […] Fangen wir mit der Anmeldung an: Die Kinder melden sich zusammen mit den Eltern für das Zeltlager an. Bei der Anmeldung notieren wir Daten zu jedem Kind und zu einem Elternteil. Weil es ja öfter vorkommt, dass Eltern gleich mehrere Kinder ins Zeltlager schicken, […] Und als Nächstes müssen wir dann die Betreuer erfassen“, fährt Martin fort, „wir könnten sie mit einer eindeutigen Betreuernummer versehen, z. B. MS-10, MS für Martin Sonntag und die 10 für das Jahr, und zusammen mit ihrer Funktion im Lager und dem Vor- und Nachnamen abspeichern.“ „Wenn wir dann alles erfasst haben, Elternteil, Kind und Betreuer, dann können wir doch die Teams und Gruppen zusammenstellen?“ […] Die jeweiligen Teams werden aus unseren Betreuern zusammengestellt. Jedes Team erhält eine Teamnummer, z. B. SPLT1 für das erste Spielteam, und einen Teamnamen.“ 114 © HERDT-Verlag Entitäten,AttributeundBeziehungenidentifizieren „Und danach ordnen wir die Kinder den einzelnen Gruppen zu. Wobei jede Gruppe mit einer Gruppennummer, z. B. GR1M für die erste Mädchengruppe, einem Gruppennamen und der entsprechenden Zeltnummer abgespeichert wird […] „Aber noch einmal zu den Zelten: Weil wir sie von anderen Organisationen ausleihen, müssen wir die auch erfassen. Auch die Größe der Zelte, also die Anzahl der Kinder, die hineinpassen.“ […] X Fassen Sie in einem zweiten Schritt die Entitäten mit unterschiedlichen Bezeichnungen, aber gleicher Bedeutung, die nicht anderen Entitätsmengen zugeordnet werden können, zu einem Entitytyp zusammen. Nicht berücksichtigt werden Substantive, die für die Datenbank irrelevant sind. So z. B. die Substantive Zeltlager, Anmeldung, Informationen, Erfassung oder Angaben, da sie für die Festlegung eines Entitytyps keine Rolle spielen. X Legen Sie gleichzeitig eine Liste an, die jene Bezeichnungen erfasst, die mit dem Entitytyp zusammenhängen und über die Daten abgespeichert werden. Eine Liste also, die über die Eigenschaft eines Entitytyps etwas aussagt. Unterschiedliche Objektbezeichnungen, die nicht anderen Objektgruppen zugeordnet werden (→ Entitytyp) Bezeichnungen, die mit dem Entitytyp zusammenhängen Kinder, Kind → Kind Betreuer, Betreuern → Betreuer Betreuernummer, Funktion, Vorname, Nachname Gruppen, Gruppe → Gruppe Gruppennummer, Gruppenname, Zeltnummer Elternteil, Eltern → Eltern Teams, Team → Team Teamnummer, Teamname Zelten, Zelte, Zelt → Zelt Zeltnummer, Organisation, Anzahl Der Entitytyp, also die Menge der Entitäten, wird in der grafischen Darstellung des ER-Modells, dem ER-Diagramm, als Rechteck dargestellt. Verwenden Sie für die Bezeichnung des Entitytyps ein Substantiv. Für die Datenbank Zeltlager ergeben sich die nachfolgenden Entitytypen: X Kind Betreuer Gruppe Eltern Team Zeit Legen Sie nun die Beziehungstypen fest. Darunter versteht man die möglichen Beziehungen (Relationship) zwischen zwei Entitytypen. Die Beziehungstypen werden meist durch Verben beschrieben und sollen in Beziehungsrichtung einen vollständigen Satz ergeben. Sie kennzeichnen, dass Entitäten des einen Entitytpys mit Entitäten eines anderen Entitytyps in Beziehung stehen. Für unsere Datenbank Zeltlager lassen sich folgende Beziehungstypen beschreiben: © HERDT-Verlag 115 5 RelationaleDatenbanken Beziehungstyp Erklärung Eltern gehört zu Kind Ein Elternteil gehört zu einem Kind oder zu mehreren Kindern. Gruppe besteht aus Kind Eine Gruppe besteht aus mehreren Kindern. Team besteht aus Betreuer Ein Team besteht aus einem oder mehreren Betreuern. Team betreuen Gruppe Mehrere Teams betreuen mehrere Gruppen. Zelt gehört zu Gruppe Ein Zelt gehört zu einer Gruppe. Im ER-Diagramm werden Beziehungstypen in Form von Rauten dargestellt. Für das Datenbankmodell Zeltlager ergibt sich folgendes ER-Diagramm mit der grafischen Darstellung von Entity- und Beziehungstypen: Gruppe betreuen Team besteht aus Datenbankmodell Zeltlager besteht aus Betreuer Kind gehört zu gehört zu Zelt Eltern 5.2.2 Kardinalitätsverhältnis zu jedem Beziehungstyp festlegen Aus dem ER-Diagramm lässt sich noch nicht ablesen, wie groß die Anzahl der Entitäten eines Entitytyps ist, der mit Entitäten eines anderen Entitytyps in Beziehung steht. Die Anzahl der Entitäten, die in Beziehung gesetzt werden können, drückt man durch das Kardinalitätsverhältnis aus. Merke Das Kardinalitätsverhältnis besagt, wie viele Entitäten eines Entitytyps mit wie vielen Entitäten eines anderen Entitytyps in Beziehung treten müssen bzw. können. Zur Darstellung der Kardinalitäten werden die Ziffern 1, im Sinne von 0 oder 1, und die Buchstaben N und M, im Sinne von 0 oder 1 bis ∞ (unendlich viele), verwendet. 116 © HERDT-Verlag Entitäten,AttributeundBeziehungenidentifizieren Folgende unterscheidungen sind für Beziehungstypen möglich: 1:1-Beziehung Dieser Beziehungstyp entsteht, wenn zu einer Entität eines Entitytyps A genau eine Beziehung zu einer Entität eines Entitytyps B zugeordnet ist und umgekehrt. Das Datenbankmodell Zeltlager enthält die 1:1-Beziehung: Zelt gehört zu Gruppe. Man liest die grafische Notation des nachfolgenden ER-Diagramms wie folgt: „Einer Entität von Zelt gehört genau eine Beziehung zu einer Entität von Gruppe und umgekehrt gehört zu einer Entität von Gruppe genau eine Beziehung zu einer Entität von Zelt.“ Zelt 1 gehört zu Gruppe 1:N-Beziehung Dieser Beziehungstyp entsteht, wenn einer Entität eines Entitytyps A eine oder mehrere Beziehungen zu Entitäten eines Entitytyps B zugeordnet sind. umgekehrt gibt es für jede Entität des Entitytyps B nur eine Beziehung zu einer Entität des Entitytyps A. Der Wert N in 1:N steht für „mehrere“. Das Datenbankmodell Zeltlager enthält z. B. die 1:N-Beziehung: Eltern gehört zu Kind. Man liest die grafische Notation des nachfolgenden ER-Diagramms wie folgt: „Zu einer Entität von Eltern gehören eine oder mehrere Beziehungen zu Entitäten von Kind. umgekehrt gibt es aber nur eine Beziehung einer Entität von Kind zu einer Entität von Eltern.“ Eltern 1 1 N gehört zu Kind M:N-Beziehung Dieser Beziehungstyp entsteht, wenn zu mehreren Entitäten eines Entitytyps A mehrere Beziehungen zu Entitäten eines Entitytyps B bestehen und umgekehrt. Die Werte N und M in N:M stehen jeweils für „mehrere“. Das Datenbankmodell Zeltlager enthält die M:NBeziehung: Team betreuen Gruppe. Man liest die grafische Notation des nachfolgenden ER-Diagramms wie folgt: „Eine oder mehrere Entitäten von Team besitzen eine oder mehrere Beziehungen zu Entitäten von Gruppe und umgekehrt bestehen zu ein oder mehreren Entitäten von Gruppe, ein oder mehrere Beziehungen zu Team.“ Team M N betreuen Gruppe In relationalen Datenbanken lässt sich dieser Beziehungstyp nicht umsetzen, da eine eindeutige Zuordnung nicht möglich ist. Zur Auflösung dieser Beziehung wird eine Beziehungsentität eingeführt, welche die M:N-Beziehung in eine 1:N-Beziehung und N:1-Beziehung auflöst. Team 1 © HERDT-Verlag ist zugeteilt N Tagesplan N bekommt 1 Gruppe 117