1 Grundlagenwissen (Theorie) 1.1 Hardware 1.1.1 [P] Auch wenn heutzutage der Hardwaremarkt mit einer Flut von neuen Begriffen und ständig verbesserten Produkten überschwemmt wird, sind revolutionäre Entwicklungen auf diesem Gebiet ausgeblieben. Mittels einer digitalen Mindmap ist das Thema Hardware grob zu strukturieren. Diese Mindmap ist im Ordner [aufgabe1] im HTML-Format zu speichern. Welche Neuentwicklungen gibt es im Bereich der externen Datenspeicherung? Welche Konsequenzen hat das für die Datensicherung? Kann es 100%-ige Datensicherheit geben? Welche Hardware-Schnittstellen gibt es? Zähle auf und gib eine Kurzbeschreibung Im Jahre 1990 kostete eine 500 MB-Platte noch ca. 9000 ÖS. Heute bekommt man eine 180 GB Festplatte um 100 €. Um welchen Faktor ist der externe Speicher in diesen 15 Jahren billiger geworden? Das Binärprinzip in Form von 2-er Potenzen spiegelt sich in vielen Maßzahlen, die die Leistung von Hardwareteilen beschreiben, wider. Zähle Beispiele auf! 1.1.2 1.1.3 1.1.4 1.1.5 1.2 Das Neumannsche Konzept und Software 1.2.1. Was sind die Kernaussagen dieses nach wie vor gültigen Neumannschen Konzepts, wenn es um das Wirkprinzip von Computern geht? Was sind die grundlegenden Aufgaben eines Betriebssystems? Was gehört zum Kern eines Betriebssystems? Welche bekannten File-Systeme gibt es und in welchem Zusammenhang steht das File-System zum Betriebssystem? Was macht den Unterschied zwischen Daten und Programmen aus? Das Betriebssystem Windows kennt eine Vielfalt an Dateierweiterungen (file extensions). Führe einige wesentliche Dateitypen an und ordne sie den entsprechenden Programmen zu. Welche Rolle spielen in diesem Zusammenhang unter Windows sogenannte DLL-Dateien und Treiberdateien? Graphische Oberflächen bieten den Komfort, dass bei Klick auf ein Dokument das entsprechende Programm geöffnet wird. Wo ist diese Information bei Windows-Systemen gespeichert? Software wird nicht nur geschrieben, um Menschen Freude zu bereiten. Viren, Würmer und Trojaner und SpamMails sind äußerst lästige "Landplagen". Skizziere kurz, um welche Art von Software es sich dabei handelt 1.2.2 1.2.3. 1.2.4. 1.2.5. 1.3. Netzwerke War es in den achtziger Jahren noch gerechtfertigt, vom PC, also vom "persönlichen" Computer zu sprechen, kann davon heutzutage eigentlich nicht mehr die Rede sein. Die Mehrzahl der PCs ist vernetzt, sei es weltweit über das Internet bzw. in Betrieben und im privaten Bereich über lokale Netzwerke. 1.3.1. Das Internet ist die am weitesten verbreitete Form eines weltweiten Netzwerkes und baut auf dem OSISchichtenmodell auf. Beschreibe den im Internet auf 4 Schichten reduzierten Protokollstack. Beschreibe den Aufbau einer gültigen IP-Adresse. In unserer Schule haben die Computer die Adressen 192.168.1.x Wie lautet die Netzadresse? Wieviele Computer können in diesem Netz maximal adressiert werden? IP-Adressen können beliebig vergeben werden. Wie kann gewährleistet werden, dass der Computer nach dem Einschalten immer die gleiche IP-Adresse aufweist? Das Internet ist ein Kommunikationsmedium und E-Mailing dessen verbreitetste Ausprägung. Auf welche grundsätzlich zwei verschiedenen Arten kann E-Mailing realisiert werden? Skizziere den Ablauf einer E-Mail-Kommunikation und welche Protokolle werden dabei verwendet? Gibt es außer dem E-Mailing auch andere Möglichkeiten der Kommunikation im Internet? Auf einem Internet-Server laufen im Normalfall mehrere Prozesse, die verschiedene internetbezogene Dienste anbieten. Welche können das sein? Nicht wenige Haushalte besitzen zumindest 2 PCs. Welche organisatorischen, hardware- und softwaremäßigen Schritte sind notwendig, um wenigstens einen PC an das Internet zu schließen. Welche Möglichkeiten gibt es, zwei oder mehrere Computer zu verbinden und welche hardware- und softwaremäßigen Voraussetzungen müssen dafür geschaffen werden? 1.3.2. 1.3.3. 1.3.4. 1.3.5. 2 Algorithmen, Programmierung, Simulation und Kalkulation 2.1 Lotterie [P] 2.1.1 Analysiere und dokumentiere das im Anhang A gegebene, und auf der Datendiskette im Ordner [aufgabe2] gespeicherte HTML-File im Hinblick auf die verwendeten HTML-Tags, Datentypen, Ereignissteuerung und Objektorientierung. Von der Javascript-Funktion "zahlenziehen()", die "6 aus 45" realisiert, ist ein Struktogramm anzufertigen. 2.1.2 2.1.3 2.1.4 Diese Funktionalität ist mittels einer in VBA formulierten Prozedur in Excel zu übertragen. Dabei kann der gleiche Algorithmus oder ein verbesserter verwendet werden. Die Ausgabe der 6 verschiedenen Zahlen eines Tipps soll in 6 horizontal aneindanderliegenden Zellen erfolgen. Erzeuge 1000 zufällige Lottotipps für eine fiktive Tippgemeinschaft und berechne deren Ausbeute (= Statistik über 0-er. 1-er, 2-er, 3-er, ....) in Form einer tabellarischen und Diagramm-Darstellung mit Prozentanteilen. Als Gewinnzahlen sind jene der letzten reellen Lotto-Ziehung zu berücksichtigen. 2.2 Texterkennung [P] Wie können sich Würmer im Internet so schnell verbreiten? Indem sie E-Mail Adressen auf dem Wirtsrechner aufspüren. Und diese liegen meistens in unverschlüsselten Textdateien vor. 2.2.1 Öffne die Textdatei emails.txt (siehe auch Anhang B), die auf der Datendiskette im Ordner [aufgabe2] gespeichert ist, suche alle E-Mail Adressen, kopiere und speichere diese - untereinander angeordnet - in einer Datei emailadressen.txt . Kopiere weiters die Fachbegriffe aus der Datei emails.txt und erkläre diese in der Ergebnisdatei emailadressen.txt Was lässt sich aus der E-Mail-Textdatei noch herauslesen? Der böse Wurm sucht automatisch nach den E-Mail-Adressen. Beschreibe textuell einen möglichen Algorithmus, wie er dabei vorgeht. Schreibe eine Excel-VBA Funktion, die Anzahl der E-Mail-Adressen ( = Anzahl der Klammeraffen) eines mehrzeiligen Textfeldes ausgibt. Weiters ist in ein Algorithmus in eine VBA-Prozedur umzusetzen, der die vorkommenden E-Mail-Adressen sucht und in einer Listbox ausgibt. (Umsetzung von 2.2.2) . 2.2.2 2.2.3 2.2.4 3 Datenmodellierung Landtagswahlen 3.1 Online-Landtagswahlen sind noch Zukunftsmusik, aber eine Realisierung darf zumindest angedacht werden. Dazu bedarf es eines guten Datenbankentwurfes. Es ist davon auszugehen, dass die Datenbank zentral auf einem Server liegt und alle relevanten Daten speichert. Die Clients dienen nur der Dateneingabe. In Kärnten gibt es 4 Wahlkreise, in denen unterschiedlich viele Parteien kandidieren. Jeder Wahlkreis besteht aus politischen Bezirken und diese wiederum aus Gemeinden. Aus diesen Vorbedingungen ist ein relationales Datenbankmodell unter Zuhilfenahme eines ER-Diagrammes mit den notwendigen Tabellen(strukturen) und Beziehungen zu entwerfen. 3.2 3.2.1 3.2.2 3.2.3 Folgende Abfragen (Queries) sind mittels SQL an diese Datenbank zu stellen: Wieviele Parteien kandidieren in den einzelnen Wahlkreisen? Wieviele Stimmen wurden insgesamt abgegeben? Wie ist die Wahl insgesamt ausgegangen – Wieviele Stimmen fallen auf alle Parteien? 3.3 [P] Für die praktische Realisierung einer Online-Wahl bieten sich – wie im elektronischen Zahlungsverkehr für die Authentifizierung sogenannte Transaktionsnummern (TANs) an. Wie sieht ein möglicher Algorithmus für die Erzeugung von n zufälligen TANs aus, wenn nur 6-stellige Buchstabenkombinationen zugelassen werden? Setze diesen Algorithmus in Excel-VBA programmiersprachlich um. Die entsprechende Datei ist im Ordner [aufgabe3] unter tan.xls zu speichern 3.4 Was sind aus deiner Sicht die Vorteile und Nachteile einer Online-Wahl? Wie schätzt du die Chancen auf Realisierung einer Online-Wahl ein? 4 Standardsoftware [P] Auf der Angabediskette befinden sich im Ordner [aufgabe4] die beiden CSV-Dateien page_log.csv und user.csv. (siehe Anhang C). Die erste Datei page_log.csv ist eine Log-Datei, die die Druckaktivitäten von zwei Druckern aufzeichnet. Eine Datenzeile, in der die Druckerbezeichnung, die Benutzerkurzbezeichnung, das Datum, die Uhrzeit und der Computer, von dem aus gedruckt wurde, steht, repräsentiert den Druck einer Seite. In der Refeferenzdatei user.csv findet man die Zuordnung Benutzerkurzbezeichnung zu vollständigem Namen sowie zur Klasse. 4.1 Besteht zwischen den beiden - in einer 1:N - Beziehung stehenden Tabellen - eine referentielle Integrität? Wenn nicht, ist diese durch eine entsprechende Ergänzung der Tabelle user herzustellen. Hinweis: Es existiert mindestens ein User, der gedruckt hat, aber in der zugeordneten user-Tabelle nicht aufscheint. Was versteht man unter einem Schlüssel im Allgemeinen und Primär- und Fremdschlüsseln im Speziellen. 4.2 Ausgehend von diesen Rohdaten ist der Systemadministrator – der für die Druckkosten verantwortlich ist – an Auswertungen interessiert. Für die folgenden Auswertungen ist die Werkzeugwahl - ob Tabellenkalkulation oder Datenbanksoftware - offen. Wieviele Seiten wurden jeweils auf den zwei Druckern gedruckt? Erstelle eine Top-Ten Liste, die jene BenutzerInnen ausgibt, die am meisten gedruckt haben. Von welchen 5 Computern aus wurde am meisten gedruckt? An welchen 10 Tagen wurde am meisten gedruckt? 4.2.1 4.2.2 4.2.3. 4.2.4. 4.3 Die Ergebnisse der Auswertungen sind graphisch in adäquaten und optisch ansprechenen Diagrammen darzustellen. Diese Diagramme sind annähernd gleich groß als Dateien diag1.gif - diag4.gif im Ordner [aufgabe4] zu speichern. Diese 4 Diagramme sind mittels Powerpoint auf 4 Folien mit einer Kurzbeschreibung zu präsentieren. Speichere diese Datei unter dem Namen drucken.ppt im Ordner [aufgabe4]. 4.4 Für jene BenutzerInnen, die mehr als 100 Seiten gedruckt haben, soll ein Serienbrief produziert werden.. Die Vorlage für dieses dieses Dokument ist auf der Datendiskette im Ordner [aufgabe4] unter serienbriefvorlage.doc gespeichert. In diesem Serienbrief soll der Seitenkopf die Grafik kopf.gif (Ordner [aufgabe4]) beinhalten. Der Serienbrief ist unter druckkosten.doc zu speichern. 4.5 Eine Dokumentation über die Vorgangsweise bei der Lösung der Aufgaben 4.1 – 4.4 ist in einem Dokument mit dem Namen loesungsskizze.doc im Ordner [aufgabe4] zu speichern. 5 Webdesign, Webprogrammierung und Grafik 5.1 Bildbearbeitung [P] 5.1.1 5.1.2 Was ist das RGB-Farbmodell und wie wird es in HTML realisiert? Die drei Grafiken bild1.tif, bild2.tif, bild3.tif sind in das jpg-Format so zu transformieren, dass jedes Bild bild1.jpg, bild2.jpg, bild3.jpg max. 30 kB Speicher belegt. (Speicherung im Ordner [aufgabe5]) Von diesen 3 Bildern ist eine Collage anzufertigen, die als Kopf einer Homepage dienen soll. Diese Collage soll eine Breite von 800 px und eine Höhe von 80 px aufweisen. 5.1.3 5.2 Clientseitige Javascript- und serverseitige PHP-Programmierung [P] 5.2.1 Auf der Diskette gibt es eine Vorlagen-Datei mit einer vorgegebenen Tabellenstruktur (template.htm). In dieser Seite ist im Kopfbereich die Collage einzufügen. Diese Templates sollen Vorlage für die aus 3 HTMLSeiten bestehende Website sein. 5.2.2 Die Startseite index.htm soll im rechten Hauptteil ein Zufallsbild (eines von den 3 gegebenen) anzeigen. 5.2.3 Auf der 2. Seite mit dem Namen seite2.htm sollen die Fragen zum Grundlagenwissen angezeigt werden. Dazu sollen mit dem Konzept von CSS (cascading stylesheets) – Hauptüberschrift, Kapitelüberschrift, Normaltext – definiert und angewendet werden. 5.2.4 Auf der 3. Seite (seite3.htm) soll ein einfaches textbasiertes Gästebuch den Besucher entzücken. Als Vorlage soll das Beispielscript im Anhang D dienen. Die serverseitigen Scriptteile sind so anzupassen, dass statt in eine Datenbank in eine Textdatei geschrieben wird und zeilenweise aus dieser Textdatei ausgelesen wird.