Projekt myTimetable - Hochschule für Technik und Wirtschaft Dresden

Werbung
Projekt „stplan2“
Projektbericht (Entwicklungsstufe 1)
Medieninformatik 03/043/02
Hochschule für Technik und Wirtschaft
Friedrich-List-Platz 1
01069 Dresden
Projektgruppe:
Katy Schmitt
Nadine Sander
Ulrich Keitel
Daniel Hallmann
Semester:
SS 06
Vorlesung:
Projektmanagement
Projektbeginn:
13.03.06
Projektende:
15.08.06
17472/[email protected]
17470/[email protected]
17448/[email protected]
17442/[email protected]
Projektbericht: „stplan2“
Inhaltsverzeichnis
1 Konzeption…………………………………………………………………………………………... 4
1.1
1.2
1.3
1.4
1.5
1.6
1.7
Vorwort……………………………………………………………………………………………………………………….... 4
Aufgabenstellung…………………………………………………………………………………………………………… 4
Firmenprofil…………………………………………………………………………………………………………………….4
Adresse………………………………………………………………………………………………………………………….. 4
Ausgangssituation und Problembeschreibung……………………………………………………………… 5
Zielsetzung des Projekts………………………………………………………………………………………………. 5
Zielpublikum………………………………………………………………………………………………………………….. 6
2 Anforderungen……………………………………………………………..………………………. 6
2.1 allgemeine Anforderungen……………………………………………………………………………………………. 6
2.2 primäre Anforderungen………………………………………………………………………………………………….6
2.3 Browserkompatibilität……………………………………………………………………………………………….… .7
2.4 Globale Designmerkmale……………………………………………………………………………………………….7
2.5 Verwendete Technologien……………………………………………………………………………………..……… 7
2.6 Zeitlicher Rahmen…………………………………………………………………………………………………………. 7
2.7 Rechtliche Rahmenbedingungen…………………………………………………………………………………… 7
2.8 Hosting…………………………………………………………………………………………………………………………… 7
2.9 Technologische Anforderungen……………………………………………………………………………………..8
2.10 Bandbreitenabschätzung……………………………………………………………………………………………..8
2.11 Schnittstellendefinition/Stundenplanimport………………………………………………………………. 8
3 Orientierungsphase………………………………………………………………………………..8
3.1 Recherche des thematischen Umfelds…………………………………………………………………………. 8
3.2 Analyse von Konkurrenzprodukten………………………………………………………………………………. 8
3.3 Material sichten……………………………………………………………………………………………………………… 8
3.4 Hauptinhalte………………………………………………………………………………………………………………….. 9
3.5 Gliederung der Inhalte………………………………………………………………………………………………….. 9
3.6 Aufbereitung der Inhalte………………………………………………………………………………………………. 9
3.7 Navigationskonzept………………………………………………………………………………………………………10
3.8 Flowchart zum Programminhalt………………………………………………………………………….…….. 10
3.9 Flowchart zur Art der Interaktion………………………………………………………………………………. 11
3.10 Eingesetzte Medien…………………………………………………………………………………………….……. 11
3.11 Aufgabenverteilung…………………………………………………………………………………………………… 11
3.12 Zeitplan……………………………………………………………………………………………………………………… 12
3.13 Meilensteine………………………………………………………………………………………………………………. 12
3.14 Detaillierte Aufgabenverteilung/Zeitplan/Meilensteine…………………………………………….13
3.15 Allgemeine Machbarkeitsanalyse……………………………………………………………………………… 15
3.16 Technische Machbarkeitsanalyse………………………………………………………………….…………. 15
4 Detaillierte Planungsphase…………………………………………………………………… 15
4.1
4.2
4.3
4.4
Liste aller einzusetzenden Medienelemente………………………………………………………………. 15
Detaillierte Interaktionsspezifikation…………………………………………………………….………….. 15
Prototypische Umsetzung der Schlüsselszenen…………………………………………………………. 16
Screen Design……………………………………………………………………………………………………………… 16
2
Projektbericht: „stplan2“
4.5 Screenentwürfe…………………………………………………………………………………………………………… 17
4.6 Navigation……………………………………………………………………………………………………………………. 20
4.7 Testphase……………………………………………………………………………………………………………………. 20
4.8 Beschreibung der Endversion……………………………………………………………………………………… 20
4.9 Stundenplaner-Assistent………………………………………………………………………………….………… 21
4.10 Datenbank…………………………………………………………………………………………………………………. 22
4.11 Datenbankentwurf……………………………………………………………………………………………………..22
5 Schnittstellendefinition: (Backend)..…………………………………………………………………….. 24
5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
5.9
Daten-Import bei „stplan2…………………………………………………………………………………………. 24
Format der Textdatei………………………………………………………………………………………………….. 24
Importvorgang……………………………………………………………………………………………………………. 27
Datenbank-Backup……………………………………………………………………………………………………… 28
Ablauf: DB_BackUp…………………………………………………………………………………………………….. 28
Restore der Datenbank………………………………………………………………………………………………. 29
Hinweise zur Konsistenz……………………………………………………………………………………………… 29
Beispiel für einen semantischen Fehler……………………………………………………………………… 29
Achtung Fehlerquellen………………………………………………………………………………………………… 30
6 Schnittstellendefinition: (Frontend)………………………………………………………. 30
7 Session Handling………………………………………………………………………………….31
8 Protokolle…………………………………………………………………………………………… 31
9 Meetings…………………………………………………………………………………………….. 32
10 ToDoListe für Projekt „stplan2“ Entwicklungsstufe 2…………………………….. 33
10.1 Nachbesserungen……………………………………………………………………………………………………… 33
10.2 Neue Funktionalitäten………………………………………………………………………………………………. 33
11 Bilanz………………………………………………………………………………………………. 34
11.1
11.2
11.3
11.4
11.5
11.6
11.7
Allgemein…………………………………………………………………………………………………………………… 34
Eigenbilanz………………………………………………………………………………………………………………… 34
Diagramme……………………………………………………………………………………………………………….. 35
Vergleich Soll/Ist………………………………………………………………………………………………………. 36
Problemfelder……………………………………………………………………………………………………………. 37
Verbesserungen………………………………………………………………………………………………………… 37
Probleme und Verzögerungen …………………………………………………………………………………. 38
12 Änderungsklausel……………………………………………………………………………… 39
13 Glossar…………………………………………………………………………………………..… 40
13.1 Abkürzungen……………………………………………………………………………………………………………… 40
13.2 Quellenverzeichnis……………………………………………………………………………………………………. 40
14 Selbständigkeitserklärung…………………………………………………………..……... 41
3
Projektbericht: „stplan2“
1 Konzeption
1.1 Vorwort
Die Ausbildung zum Dipl. Medieninformatiker, an der Fachhochschule für Technik und
Wirtschaft Dresden, beinhaltet im sechsten Semester eine praxisorientierte
Ausbildungsergänzung, welche unter dem Namen Projektmanagement geführt wird.
Zentrales Anliegen hierbei ist, die Realisierung eines größeren Projektes mit
Hauptaugenmerk auf Teamarbeit um eine unverzichtbare Grundlage für das spätere
Berufsleben zu schaffen.
Die Gruppe „stplan2“ wurde im Zuge dieses Studienabschnittes damit beauftragt, ein
Webinterface zur persönlichen Gestaltung eines Stundenplans zu entwickeln. Bei der
Umsetzung diese Projektes sollen alle in der Praxis üblichen und in Fachkreisen
anerkannten Arbeitsschritte, zur Entwicklung eine Multimedia Projekts, nachempfunden
bzw. umgesetzt werden. Die Ihnen hier vorliegende Abhandlung stellt das so genannte
Pflichtenheft dar, welches die zentrale Basis für die Realisierung eines Projektes bildet.
1.2 Aufgabenstellung
Im Rahmen der Lehrveranstaltung: „Projektmanagement“ bei Frau Prof. Strippgen
möchten wir, eine Gruppe von 4 Studenten, eine Neuentwicklung des Onlinestundenplans
durchführen.
Ansprechpartner: Daniel Hallmann ([email protected])
1.3 Firmenprofil (Auftraggeber)
Die Hochschule für Technik und Wirtschaft Dresden ist eine renommierte
Bildungseinrichtung des Freistaates Sachsen, an der zur Zeit ca. 5000 Studenten
verschiedener Fachrichtungen eine Ausbildung absolvieren. Oberstes Anliegen dieser
altehrwürdigen Schule ist es, das hohe Niveau der Ausbildung zu halten und nach
Möglichkeit noch zu steigern. Um diese ehrgeizige Ziel zu erreichen, ist ein ständiges
Schritthalten mit dem Fortschritt unverzichtbar. Dies äußert sich besonders in der Suche
nach Verbesserungen den Studenten das Studienleben leichter zu gestalten.
1.4 Adresse
Hochschule für Technik und Wirtschaft
Friedrich-List-Platz 1
01069 Dresden
4
Projektbericht: „stplan2“
1.5 Ausgangssituation und Problembeschreibung
Viele kennen und nutzen den Onlinestundenplan der HTW Dresden. Seit dieser Zeit hat
sich die Technik weiterentwickelt und Wünsche zur Verbesserung wurden genannt. Diese
müssten umgesetzt und als Update eingespielt werden.
Die bisherige Anwendung stürzt bei unsachgemäßer Bedienung sehr schnell ab und ist
somit nicht als Onlineapplikation einsetzbar. Sicherheitsprobleme machen die Applikation
sowie den Server angreifbar.
Aufgrund der unstabilen Softwarearchitektur muss die Anwendung neu entwickelt werden.
Für Import der Studentendaten werden Kürzel genutzt, welche von der Erstellerin des
Stundenplans (Frau Neumann) vergeben werden.
Bei der ersten Version der Anwendung wurden keine speziellen Regeln für diese
Veränderung der Abkürzungen und somit ein umfangreiches Update nach sich ziehen.
Hier muss ein Modell an Regeln entworfen werden, das zum einen so viel wie möglich
Freiheiten für Frau Neumann lässt, als auch die halbjährlichen Anpassungen der
Anwendung verhindert(evtl. kann hier der Parser und das Regelwerk logisch getrennt
werden und somit ein einfaches Hinzufügen und Entfernen der Regeln ermöglicht)
In der ersten Version der Applikation wurde davon ausgegangen, dass 95% der Nutzer mit
dem Internet Explorer diese Anwendung nutzen werden und die HTML-Ausgaben wurde
dafür optimiert.
Dies ist heute nicht mehr „State of the Art“ und muss dringend verbessert werden.
Ausgaben an den Client müssen Standardkonform nach Regeln des w3c erfolgen und
Funktionen der Rahmenanwendung(Internet Explorer, Firefox) sollten so wenig wie
möglich genutzt werden, damit der Onlinestundenplaner auch in Zukunft funktionstüchtig
und universell einsetzbar ist.
Weiterhin liegt eine Vielzahl von kleinen Verbesserungswünschen der Studenten vor. Diese
müssten Evaluiert und evtl. mit eingearbeitet werden.
Im Zuge des zurzeit sehr oft verwendeten Begriffs WEB2.0 kommt es weiterhin auch
immer wieder zu Anfragen zur Personalisierung von Anwendungen. Hier müsste überprüft
werden, ob es nötig ist, diese Webanwendung zur personalisieren und wenn nötig muss
eine Lösung gefunden werden, mit welchem dies Personalisierung umzusetzen ist.
1.6 Zielsetzung des Projekts
Unter Beibehaltung vorhandener Funktionalität und Erweiterungen, entwickeln einer
benutzerspezifischen Stundenplanauskunft für alle Studenten der HTW über gestaffelte
Abfrage per Internet.
Nach einem erfolgreichen Daten-Import soll mit Hilfe von verschiedenen DatenbankAbfragen und Formatierungsoptionen eine korrekte und persönliche Anzeige aller
gewählten Fächer jederzeit über das Medium: Internet erfolgen können. Dafür wird eine
enge Zusammenarbeit mit der Stundenplanverantwortlichen der HTW Dresden angestrebt,
um effizient auf vorhandenes Wissen aufbauen zu können.
5
Projektbericht: „stplan2“
Die Internetseite ist benutzerfreundlich zu gestalten und soll über eine einfache Bedienung
verfügen. Eine Schulung bzw. Einweisung der Angestellten welche die Seite später
verwalten werden, ist in jedem Fall durchzuführen.
1.7 Zielpublikum
Entwicklungsstufe 1
-
HTW- Studenten
Einlesen der aktuellen Stundenplandaten über ein Backend durch die
Stundenplanverantwortliche der HTW
Student  öffentliche Stundenplanauskunft
Stundenplanverantwortliche/Administrator  Datenimport
Entwicklungsstufe 2
-
Profil- Stundenplanspeicherung von Studenten und Professoren über gesichertes
Login
Stundenplanverantwortliche/Administrator  Datenpflege und Verwaltung
siehe Pkt. 10
Professoren  geschützte Stundenplanauskunft
Student  Profilspeicherung
2 Anforderungen
2.1 allgemeine Anforderungen
Die Internetseite muss die folgenden allgemeinen Anforderungen erfüllen:
-
übersichtlicher Aufbau der Bedienoberflächen
Bedienerfreundlichkeit durch übersichtliche Menüführung
leichte Bedienung und Erlernbarkeit durch komplexe und einfache Hilfe auf der
Internetseite
schneller Datenzugriff
Lauffähigkeit und Kompatibilität auf dem vom Auftraggeber bereitgestellten EDVSystem
moderne, zukunftsfähige und ausbaubare Onlinelösung
Erweiterungsfähigkeit
Einhaltung des vorgegebenen Zeitrahmens
2.2 primäre Anforderungen

nicht die im Haus vorhandene Stundenplan-Software ersetzen.
6
Projektbericht: „stplan2“


nicht die Arbeit der Stundenplanverantwortlichen ersetzen, lediglich könnte
diese modifiziert werden.
keine Änderungen an den Stundenplandaten ermöglichen, da Änderungen wie
gehabt über die Stundenplanverantwortliche zu organisieren sind.
2.3 Browserkompatibilität
Ausgaben an den Client müssen Standardkonform nach den Regeln des w3c erfolgen und
Funktionen der Rahmenanwendung (Internet Explorer, Firefox) sollten so wenig wie
möglich genutzt werden.
2.4 Globale Designmerkmale
Als ein öffentlicher Service der HTW Dresden hat der Stundenplaner-Assistent besondere
Design – und Layout Anforderungen zu erfüllen.
Die Designumsetzung erfolgt in Abstimmung mit dem neuem CI/CD (Corporate
Identity/Corporate Design) der HTW.
2.5 Verwendete Technologien



HTML, JavaScript
PHP, Apache-Webserver, SQL(MySQL)
UML, CSS
2.6 Zeitlicher Rahmen
Im Rahmen der Projektveranstaltung Projektmanagement währen des Sommersemesters
2006 fertig das Projektteam die Entwicklungsstufe 1 an. Die Entwicklungsstufe 2 beginnt
im WS06/07.
2.7 Rechtliche Rahmenbedingungen
Anzeige von Informationen nur im Umfang der im öffentlichen Aushang befindlichen
Stundenpläne(z.B. kein öffentlicher Stundenplan von Professoren)
2.8 Hosting
Seitens des HTW- Rechenzentrums muss eine Integration in das HTW- Netzwerk sowie
eine Erreichbarkeit sichergestellt werden.
7
Projektbericht: „stplan2“
2.9 Technologische Anforderungen
Apache- Web-Server mit PHP- Modul / SQL-Datenbank mit Vollzugriff
Webspace min. 20 MB
2.10 Bandbreitenabschätzung
max. 5000 Zugriffe innerhalb von 4 Wochen (Semesterbeginn)
pro Zugriff ungefähr 3Min. und 200 kByte Transfervolumen
zu beachten: Rechenzeit bei PDF- Generierung
2.11 Schnittstellendefinition/Stundenplanimport (siehe Pkt. 5)
Festlegung auf zu verwendendes Datenformat in Abstimmung mit der Verantwortlichen
Frau Neuman für Stundenpläne.
Durchführung des Importprozesses durch Stundenplanverantwortliche (einmalig pro
Semester bzw. bei Änderungen)
3. Orientierungsphase
3.1 Recherche des thematischen Umfelds
In der aktuellen Version des Stundenplaners tauchte im Laufe der Anwendung immer
wieder bestimmte Fehlverhalten auf. Da der Stundenplan sehr gut von Studenten und
Professoren angenommen worden ist und auch weiterhin hohes Interesse besteht erfolgt
eine Neuentwicklung und Korrektur von Fehlern.
3.2 Analyse von Konkurrenzprodukten
Engagierte Studenten brachten den herkömmlichen Listenstundenplan in eine
übersichtlichere Form und stellten sie im Internet zum download zur Verfügung. Es
handelte sich dabei nur um vereinzelte Stundenpläne die oft nicht den persönlichen
Wünschen entsprachen.
Ein download des Listenstundenplans ist auf der Studentenratseite der HTW möglich. Aber
auch hier ist keine individuelle Zusammenstellung der Lehrveranstaltungen möglich.
3.3 Material sichten
Als Grundlage dient:
-
stplaner Version1.0
Stundenplan-Download auf der Studentenratsseite der HTW
8
Projektbericht: „stplan2“
3.4 Hauptinhalte
Relaunch und Neuentwicklung des bestehenden Stundenplaner Assistenten unter
Berücksichtung von gemachten Erfahrungen bei der Erstentwicklung. Des weiteren steht
ein Sammeln von Erkenntnissen im Bereich Projektmanagement von umfangreichen
Entwicklungen ebenfalls im Vordergrund.
3.5 Gliederung der Inhalte
Im Zuge von Erfahrungen zeigt sich eine Einteilung in Entwicklungsstufen für sinnvoll. In
der Entwicklungsstufe 1 werden somit diese Grundfunktionalitäten entwickelt.
-
-
-
Administrator-Bereich:
o Stundenplandaten-Import im Textdatei-Format
Stundenplan-Assistent:
o Erstellung und Anzeige des persönlichen Stundenplanes
o Übersichtliche Darstellung in Tabellen- und Listenform (einschl.
Druckversion)
o umfangreiches Hilfemodul
Individuelles, grafisches Design des persönlichen Stundenplans
o Auswahl verschiedener Schrift- und Hintergrundfarben
o Formatierung der Schrift
Generierung von PDF- Dateien
Individuelle Zusammenstellung eines Stundenplans:
o Auswahl von Pflicht- und wahlobligatorischen Fächern
In der Entwicklungsstufe 2 werden noch folgende Ergänzungen hinzugefügt:
-
Gesicherter Login- Bereich für schnellen Zugriff auf personalisierten Stundenplan
Realisierung von zusätzlichen Ausgabeformaten (Excel, XML, ..)
Fachbereichs- und Jahrgangsübergreifende Auswahl
erweitertes Backend für Fr. Neumann
Die Entwicklung der Funktionalitäten erfolgt in enger Zusammenarbeit mit den
Stundenplanverantwortlichen der Fachbereiche, um alles Wissen in das Projekt mit
einfließen zu lassen.
3.6 Aufbereitung der Inhalte
Die Aufbereitung der Inhalte geschieht in enger Zusammenarbeit des Projektteams.
Zusätzlich erfolgt eine Auswertung der gesammelten Inhalte während des wöchentlichen
Meetings.
9
Projektbericht: „stplan2“
3.7 Navigationskonzept
Entwicklungsstufe 2
Entwicklungsstufe 1
3.8 Flowchart zum Programminhalt
10
Projektbericht: „stplan2“
3.9 Flowchart zur Art der Interaktion Entwicklungsstufe 1/2
3.10 Eingesetzte Medien
In den zu bearbeiteten Projektphasen nutzte die Projektgruppe verschiedene
Kommunikationskanäle. Hauptsächlich waren für die Entscheidung bestimmte Kriterien
wichtig. Es musste eine ständige Verfügbarkeit gewährleistet sein. Daher kamen folgende
Medien zum Einsatz:
-
Internet
Email
Telefon
3.11 Aufgabenverteilung
Während der Projektkonzeption und Analyse hat sich eine dreier Teilung in
-
Entwicklungsteam: Backend
Entwicklungsteam: Frontend
Projektleitung
als zweckmäßig herausgestellt.
11
Projektbericht: „stplan2“
Die folgende Aufzählung zeigt die detaillierte Aufgabenverteilung der Projektmitglieder:
Nadine Sander (Dokumentation)




Ablaufplan
Navigationskonzept
Dokumentation
Datenbankentwurf und Konzeption
Katy Schmitt (Frontend)



CSS
Layout eventl. mit Storyboard (Pkt. 3 Detal.Planungsph. PM Script v. Prof.
Strippgen)
Prototype
Uli Keitel(Backend)




Datenbankentwurf
Schnittstellen zur Datenbank
Datenkatalog
Importfilestruktur
Daniel Hallmann(Dokumentation- Projektleitung)




Pflichtenheft/Meilensteine
Grobkonzept/Anforderungsdefinition
Spezifikation
Dokumentation
Nico Lange(Ansprechpartner)

Kommunikation mit RZ
3.12 Zeitplan
Der vorkalkulierte Zeitaufwand für das Projekt stplan2 beträgt zwei Studiensemester.
Wobei die erste Entwicklungsphase voraussichtlich bis zum 15.08.06 abgeschlossen wird.
3.13 Meilensteine
-
Grobkonzept
Orientierungsphase
Detaillierte Planungsphase
19.04.06 (Montag) KW 16
02.05.06 (Dienstag) KW 18
09.05.06 (Dienstag) KW 19
Entwicklungsstufe 1
-
Arbeitsverteilung:
Fertigstellung Prototyp
Fertigstellung Entwicklungsstufe 1:
Test/Optimierung/Debugging:
10.05.06
17.05.06
20.09.06
05.10.06
12
(Mittwoch)
(Mittwoch)
(Dienstag)
(Montag)
KW
KW
KW
KW
19
20
40
28
Projektbericht: „stplan2“
-
Freischaltung Zwischenprodukt:
Fertigstellung Projektdokumentation
(Projektbericht)
09.10.06 (Montag)
09.10.06 (Montag)
Entwicklungsstufe 2
-
Arbeitsverteilung:
Fertigstellung Prototyp
Fertigstellung Entwicklungsstufe 1:
Test/Optimierung/Debugging:
Feischaltung Zwischenprodukt:
Fertigstellung Dokumentation:
Fertigstellung Projektbericht:
7.Sem
7.Sem
7.Sem
7.Sem
7.Sem
7.Sem
7.Sem
WS 06/07
WS 06/07
WS 06/07
WS 06/07
WS 06/07
WS 06/07
WS 06/07
3.14 Detaillierte Aufgabenverteilung/Zeitplan/Meilensteine
Legende:
PT
UK
NS
KS
SW
DH
-
Projektteam
Ulrich Keitel
Nadine Sander
Katy Schmitt
Stefan Werner
Daniel Hallmann
KW
Bea
Prog.
HTML-Script
MT
S/A
S/P
S/A g
S/P g
Z
Zg
-
Kalenderwoche
Bearbeiter
Programmierung
HTML- Scripting
Manntage
Stunden Arbeit
Stunden Planung
Stunden Arbeit gesamt
Stunden Planung gesamt
Zeit (Kw – Kalenderwoche)
Zeit gesamt (Kw – Kalenderwoche)
A
Ag
- Aufgaben
- Aufgaben gesamt
P
B
F
D
DB
PR
H
T
XJE
-
Projektleitung
Backend
Fontend
Design
Datenbank
Programmierung
HTML-Script
Text
XML- JavaScript- Entwickler
13
KW 41
KW 41
Projektbericht: „stplan2“
Nr.
Phase
Beschreibung
Ergebnisse
Z
Z
13
13
Bea
S/A
S/P
S/A
g
1
Vorbereitende
Vorbereitung
Überblick über die
Arbeiten
Aufgabe und
Aufgabe
S/P
g
PT
20
A
g
25
Sachverhalt
A
g
P(5)
P(5)
B(10)
B(10)
F(5)
F(10)
P(2)
P(4)
B(2)
B(4)
P(1)
P(1)
B(1)
B(1)
P(2)
P(2)
B(2)
B(2)
F(2)
F(2)
P(4)
P(9)
B(3)
B(4)
F(3)
F(5)
Besprechen
2
Vorbereitende
Umfeld schaffen
Arbeiten
Kennen lernen der
14
14
Verantwortlichen
UK
4
4
4
DH
(Fr. Niehues Dez.)
(Hr. Schreiber RZ)
(Fr. Neumann)
3
Vorbereitende
Projektseite
Arbeiten
Projektübersicht
14
14
und Anlaufstelle
UK
2
2
DH
RZ
4
5
Beratung
Konzeption I
Vorbereitung und
Konzeptansatz im
KickOff
Team
Umsetzung des
Aufgabenverteilung
15
16
15
16
PT
6
PT
6
10
18
KickOff
6
7
8
Konzeption II
Konzeption III
Produktion I
Korrektur und
Design-Entwurf zur
P(10)
P(10)
Ergänzung
Abnahme
17
B(35)
B(64)
Datenbankentwurf
F(20)
F(20)
P(4)
P(4)
B(4)
B(4)
F(4)
F(4)
D (15)
D (15)
20
22
65
Abschluss der
Konzeption
Konzeptionsphase
Umsetzung des
Grafisches
Layouts und
Interface zum
H(10)
H(10)
Templates (für
Anwender
T(10)
T(10)
PR(60)
PR(60)
DB(80)
DB(110)
24
PT
94
Abnahme der
21
23
PT
KS
12
35
12
35
Frontend und
Backend)
9
10
Produktion II
Produktion III
Datenbank aufbauen
Konsistente
und Einleseroutine
Datenbank
22
NS
des Importscripts
Umgebung
SW
schreiben
herstellen
Programmierung der
Frontend-
Frontendbestandteile
bedienbarkeit
25
30
39
UK
UK
140
170
H(25)
H(25)
KS
80
160
PHP(40)
PHP(120)
NS
XJE(15)
XJE(15)
F(20)
F(20)
B(20)
B(20)
P(24)
P(24)
P(40)
P(40)
DH
11
Testing
Qualitätssicherung
Testen von
28
39
PT
40
40
Backend und
Frontendmodulen
und der
Gesamtanwendung
12
13
Abnahme
Dokumentation
Ausarbeitung
Releasefähigkeit
Anpassungen
herstellen
Anwender-
Erstellung und
dokumentation
Ergänzung
31
40
UK
24
24
DH
33
40
SW
NS
(auch Hilfe)
DH
14
40
40
Projektbericht: „stplan2“
14
15
Übergabe des
Installation auf
Systems
Zielsystem und
Inbetriebnahme
Betreuung
Fertigstellung
Laufende
Hilfestellung
Projektbetreuung
Beratung
33
40
UK
18
F(6)
F(6)
KS
B(6)
B(6)
DH
P(6)
P(6)
50
P(50)
P(50)
233
546
702
68,25 
87,75 
69 MT
88 MT
DH
18
50
359
187
469
Total
3.15 Allgemeine Machbarkeitsanalyse
Während der Entwicklung sind folgende Fragen eindeutig zu klären.
-
PHP- Sicherheitseinstellungen
Nutzung von Cookies
Nutzung von Javascript
Browserunterstützung
Datenbankeinstellungen
3.16 Technische Machbarkeitsanalyse
Die Entwicklung des Stundenplaner-Assistenten scheint nach unseren Einschätzungen mit
Software und den technischen Voraussetzungen des Rechenzentrums ohne größere
Probleme möglich zu sein.
4 Detaillierte Planungsphase
4.1 Liste aller einzusetzenden Medienelemente
Die HTW- Dresden unterliegt bestimmten Auflagen in Bezug auf das Auftreten nach außen.
Im Stundenplaner als Service der Hochschule wird daher komplett auf multimediale
Elemente wie Grafiken und Sound verzichtet. Die Entwicklung geschieht in Anlehnung an
das bestehende Projekt myTimetable V 1.0.
4.2 Detaillierte Interaktionsspezifikation
Als Interaktionsmedium und Abfrage der benötigten Daten stehen dem Benutzer
Navigations- Eingabeelement wie:
-
Eingabefelder
Drop- Down Menüs
Checkboxen
Radio-Buttons
zur Verfügung.
15
Projektbericht: „stplan2“
Eine Bestätigung und Weitergabe der Eingabewerte erfolgt über das drücken des WeiterButtons. Ein Zurückkehren erfolgt durch drücken des Zurück- Buttons.
4.3 Prototypische Umsetzung der Schlüsselszenen
Das Projektteam wird während der Entwicklungsphasen zum Testen und besseren
Verständnis Prototypen erstellen die mit dem Auftraggeber besprochen werden Sollten sich
Veränderungen ergeben besteht die Möglichkeit, darauf schnell und unkompliziert zu
reagieren.
4.4 ScreenDesign
Als Weiterentwicklung des bestehenden Stundenplaner- Assistenten und dessen
Integration als Service der HTW- Dresden unterliegt auch der neue Stundenplaner den
Anforderungen an das CI (Corporate Identity)/ CD (Corporate Design) der Hochschule. Die
Einhaltung spielt dabei für das Brand Awareness eine entscheidende Rolle.
Die Informationen an den Nutzer werden in einer strukturierten und überschaubaren Form
präsentiert. Es erfolgt eine Bildschirmoptimierung von 1024*768. Ebenfalls wird durch
eine relative Positionierung die komplette Darstellung der Bildschirminhalte auch für
geringere Auflösungen bis 800*600 unterstützt. Die Aufteilung und Anordnung der Inhalte
erfolgt in Zusammenarbeit mit dem Auftraggeber und dem Entwicklerteam. Als
Technologie für die Umsetzung sieht das Entwicklerteam eine Kombination aus PHP, TPL,
HTML sowie CSS vor.
Für den textuellen Inhalt wird eine Schriftart und Schriftgröße gewählt, die auf jedem
Rechner installiert ist. Zur Anwendung könnte eine Verdana bzw. Arial in 10pt bzw. 12pt
kommen. Je nach Fokus werden an bestimmten Stellen auffällige Hervorhebungen
(Fettschrift, Kursivschrift) zur Abgrenzung von Inhalten vorgenommen.
Die Auswahl der besten Designentwürfe unterliegend dem Auftraggeber in Abstimmung
mit dem Frontend-Team.
16
Projektbericht: „stplan2“
4.5 Screenentwürfe
Indexseite (Einstieg)
Fächerauswahl
17
Projektbericht: „stplan2“
Listenansicht
Formatierung
18
Projektbericht: „stplan2“
Vorschau
19
Projektbericht: „stplan2“
4.6 Navigation
Das Frontend-Navigationskonzept bezieht folgende Gesichtspunkte ein:
-
linearer Navigationsabfolge
o Ausnahme einiger parallel angeordneter Abfolgen
Aufruf der Startseite von allen Seiten aus
Vorwärts-/Rückwärts-Buttons
Fokussierung der Eingabefelder
Hilfe-Buttons mit direkter Verlinkung zur Problemlösung
Im Backend-Navigationskonzept sollen folgende Charakteristika berücksichtigt werden:
-
Übersichtlicher Aufbau
Einlesebereich für das Importscript
4.7 Testphase
Während der Entwicklung werden von jedem Entwickler in seinem Bereich Tests
durchgeführt, dadurch können Fehler frühzeitig entdeckt und eliminiert werden.
Zusätzlich wird in der Testphase ein BugReport im Stundenplaner-Assistenten integriert.
Der Nutzer kann neben der aufgetretenen Fehlermeldung auch Verbesserungsvorschläge
per Mail einreichen.
Die Testläufe beinhalten folgende Überprüfung:
-
Funktionalität
Navigationskonzept
Richtigkeit der Daten
Layout/Design
Bedienungsfreundlichkeit
4.8 Beschreibung der Endversion
In der Endversion ist es möglich einen spezifizierten Datenimport durch die
Stundenplanverantwortliche der Hochschule durchzuführen. Dazu wird aus einer Textdatei,
die alle Stundenplan-Daten enthält, eine auf mySQL basierende Datenbank gefüllt. Alle
Abfragen und Speicherungen erfolgen gemäß der spezifizierten Schnittstellen über die
Datenbank und ein update der Stundenplandaten ist jederzeit durchführbar.
In der ersten Entwicklungsstufe steht dem Nutzer auf der Startseite folgende Option zur
Verfügung:
-
Auswahl der Eingabemöglichkeit für den persönlichen Stundenplan
20
Projektbericht: „stplan2“
4.9 Stundenplaner- Assistent
Nach dem Start des Stundenplaner-Assistenten bekommt der Nutzer eine Drop- Down Box
angezeigt, in dem er das Immatrikulationsjahr einstellen kann. Je nach eingestelltem Jahr
erscheint eine eventl. unterschiedliche Anzahl von Studiengängen in einer zweiten DropDown Box. Im Zuge der Auswahl eines Studiengangs erscheint eine dritte Box für die
Studiengangsgruppe. Hat der Nutzer die Gruppe gewählt erscheint jetzt zusätzlich eine
Box für den Abschlusstyp und nach dessen Auswahl eine letzte Box mit der
Vertiefungsrichtung.
Aus dieser Auswahl ergibt sich ein eindeutiger Schlüssel, der alle jeweils zu dieser
Kombination passenden Fächer auf der nächsten Seite zur Auswahl anzeigt.
Auswählbare Fächergruppen können sein:
-
Pflichtfächer
Wahlobligatorische Fächer
Fakultative Fächer
besondere Fächer
Hat der Nutzer mittels Checkboxen eine Auswahl durchgeführt erscheint bei klicken auf
Weiter eine Übersicht, in der alle Fächer nach bestimmten Optionen wie z.B. Zeit, Name
oder Art der Lehrveranstaltung sortiert werden können. Ebenfalls kann hier auf extra mit
grau gekennzeichnete Doppelbelegungen durch Checkboxen reagiert werden. Für die
Formatierung der Vorlesung/Praktika stehen dem Nutzer folgende Formatierungsoptionen
zur Verfügung:
-
Fett
Kursiv
Schriftfarbe
Hintergrundfarbe
Als Abschluss stehen dem Nutzer auf der darauf folgenden Seite die Optionen:
-
Drucken des persönlich erstellten Stundenplans
Generierung einer PDF- Datei
zur Auswahl.
In der zweiten Entwicklungsstufe erscheint auf der Startseite zusätzlich die auswählbare
Option:
-
Einloggen zum Abrufen eines bereits erstellten Stundenplans
Auf eine detailliert Beschreibung der Funktionen wird an dieser Stelle auf die zweite
Entwicklungsstufe verwiesen.
21
Projektbericht: „stplan2“
4.10 Datenbank
Für die Speicherung der Stundenplandaten, dient eine MySQL Datenbank. Diese beinhaltet
neben den statischen Tabellen für die Eingabemasken, auch die dynamischen Tabellen die
über das Importscript gefüllt werden.
Zudem wird die Funktionalität eines Backups (Versionierung) der Stundenplandaten
implementiert. Die dafür entsprechend notwendigen Tabellen befinden sich ebenfalls in der
Datenbank.
Für die Entwicklungsstufe 2 wird eine Profil bzw. Login Funktionalität im StundenplanerAssistenten umgesetzt. Eine Abspeicherung der Daten erfolgt ebenfalls in der Datenbank.
4.11 Datenbankentwurf
Seite 1
22
Projektbericht: „stplan2“
Seite 2
Seite 3
23
Projektbericht: „stplan2“
5 Schnittstellendefinition: (Backend)
5.1 Daten-Import bei „stplan2“
Der Import der Stundenplan-Daten in die Datenbank des „stplan2“- Systems wird über
eine Textdatei im Administrations-Bereich des Stundenplaner-Tools der HTW realisiert.
5.2 Format der Textdatei
Die zu importierende Textdatei muss immer den gesamten Inhalt der Stundendatenbank,
also alle Stunden aller Studiengänge aller Fachbereiche, enthalten!
Die Textdatei muss ANSI- codiert gespeichert werden (Microsoft Windows) und wie folgt
strukturiert sein:
1. Zeile:
-Beschreibung der Importdatei (z.B.: „Wintersemester 2005/2006“)
-maximale Länge von 60 Zeichen einhalten
2.+3. Zeile:
-leer
4. Zeile:
-Überschriftenzeile, wird ignoriert
Inhaltszeilen:
-eine Zeile je Stunde
-10 Spalten (Beschreibung siehe unten), durch Tabulator getrennt
letzte Zeile:
-zweispaltig, getrennt durch Semikolon:
-maximale Länge von 60 Zeichen einhalten
-1. Spalte wird ignoriert
-2. Spalte enthält Erstellungsdatum der Datei im Format tt/mm/jj
-> function processFirst3Lines($myFile)
Die Spalten der Inhaltszeilen müssen folgende Daten in folgender Struktur beinhalten:
1.Schritt separieren nach Tab
Neu ist jetzt, dass im der Spalte des Unterrichtstyps(V,Ü Pr) für jede Stunde in Klammern
ein Zusatz für den Kurstyp angegeben sein muss. :
(p) = Pflichtstunde , (w) = Wahlfach, (f) = fakultative Stunde, (p+w) = Pflichtstunde+
Wahlfach, (p+f) = Pflichtstunde+ Wahlfach, und
(w+f) = Wahlfach+fakultative Stunde.
Dadurch können 90% der Stunden eindeutig zugeordnet werden.
File: ~ stplan2\www\bin\lib\class\import\ class_file_import.php
Class FileImport
function separate_by_Tab($myFile)
Tab
Tab
Tab
Tab Tab
Tab Tab
Tab
Tab
EST Üw7/WB+WW
Entscheidungs- und Spieltheorie (w.o.)
Ü(w)
Donnerstag 1.Wo 15:00 16:30 S 232
Ortmanns
03/071/01;03/071/02;03/072/01;
EST Vw7/WB+WW
Entscheidungs- und Spieltheorie (w.o.)
V(w)
Mittwoch
1.Wo 09:20 10:50 S 408a
Ortmanns
03/071/01;03/071/02;03/072/01;03/072/02
ProdL V7/WB-PLG
Fallstudien Produktionslogistik (SSP)
V(p)
Mittwoch
2.Wo 09:20 10:50 S 317
Holfeld/Kögler 03/071/01;03/071/02
EIWW Vw7/WB
Europäische Integration und Weltwirtschaft (w.o.)
V(w)
Montag
wö
Wienen
PIM Üw7/WB2+f(KT)
Projekt- und Innovationsmanagement (w.o.+fak.)
Ü(w+f) Donnerstag wö
24
15:00 16:30 S 414a
16:50 18:20 S 231;Z 623 Hartmann
03/071/01;03/071/02
03/023/ONF;03/023/TBD;
Projektbericht: „stplan2“
PIM Üw7/WB1+f(ET+AT) Projekt- und Innovationsmanagement (w.o.+fak.)
Ü(w+f) Freitag
PIM Vw7/WB2+f(KT)
V(w+f) Donnerstag 1.Wo 15:00 16:30 S 231;Z 623 Hartmann
03/023/ONF;03/023/TBD;
V(w+f) Mittwoch
03/021/EAS;03/021/EE;
Projekt- und Innovationsmanagement (w.o.+fak.)
PIM Vw7/WB1+f(ET+AT) Projekt- und Innovationsmanagement (w.o.+fak.)
1.Wo 09:20 10:50 S 231;Z 623 Hartmann
wö
03/021/EAS;03/021/EE;
11:10 12:40 S 320;Z 623 Hartmann
MÖB Üw7/WB
Management öffentlicher Betriebe (w.o.) - mit 3/IB-B (E3) Ü(w)
Dienstag
1.Wo 11:10 14:40 S 317
Brändle
03/071/01;03/071/02
MÖB Vw7/WB
Management öffentlicher Betriebe (w.o.) - mit 3/IB-B (E3) V(w)
Montag
1.Wo 13:10 16:30 S 408a
Brändle
03/071/01;03/071/02
VerkInfra Vw7/BB-VT
Verkehrsinfrastrukrur (w.o.)
Dienstag
2.Wo 15:00 16:30 S 310
Schneider,J.
03/011/VT
V(w)
Durch die erste Separation erhält man ein Array mit den einzelnen Blöcken die dann weiter
zerlegt werden.
2. Schritt separieren nach besonderen Separatoren
Array-Element
Tab
1
0
Space
Tab
2
( ) und +
Tab
3
Tab
4
()
Tab
5
Tab Tab Tab Tab
6
7
8
9
()
/
;
Beispiel:
TChUS 6(MC-UT) 4(WW;w) V Technische Chemie des Umweltschutzes + (w.o.) V(p+w) Mittwoch wö(ab13.KW) 09:20 10:50 Z 308; Z 308 Dietrich/Eckart 03/054/UT;04/072/01;04/072/02
Class FileImport
function separateElement_short_cut($element)
Array-Element 0
Stundenkurzbezeichnung
TChUS 6(MC-UT) 4(WW;w) V
 Array-Element 0 = TChUS
nur data[0] wird weiter verwendet, der Rest wird weggelassen
Space separieren
TChUS
6(MC-UT)
4(WW;w)
V
Class FileImport
function separateElement_name($element)
Array-Element 1
Stundenlangbezeichnung
z.B.:
Wirtschaftsmathematik
Repetitorium (fak.)
Multimedia-Technologien + (w.o.)
Wasser/Abwasser (w.o.+SSP)
Wirtschaftsmathematik
Repetitorium
Multimedia-Technologien
Wasser/Abwasser
Split nach “(“ -> array
data[0]= name x …
data[1]=w.o) -> füge ( hinzu ->
(w.o.)
trim data[0] und schneide
gegebenenfalls noch
+ weg.
return data[0] = Langbezeichnung
25
falls ja nimm alles von
( bis und schneide
dann Rest weg evtl. in
DB mit übernehmen?
Projektbericht: „stplan2“
Class FileImport
function separateElement_type($element)
Array-Element 2
V(p)
V(w)
V (f)
V(p+w)
V(w+f)
Block
Array-Element 3
Montag –Freitag
Veranstaltungstyp
Split nach “(“ ->array
data[0]=V
data[1]= p+f) ->schneide ) weg ->
p+f
Bei der Bezeichnung „Block“ wird „b“
eingetragen
return data
Wochentag
Element so übernehmen wie es ist
Keine weiter Separation
Class FileImport
function separateElement_turnus($element)
Array-Element 4
Wochentag
1.Wo
2.Wo
wö
wö(ab13.KW)
4wö(ab13.KW)
13/17/20/25.KW
wö(ab13.KW)
Nach Muster 1.Wo oder 2.Wo oder wö
suchen
Danach separieren und den Rest in
Feld „Zeitraum“ in DB mit
übernehmen
-> split nach (data[0]=1.Wo
data[1]= ab13.KW)-> (ab13.KW)
return data
Class FileImport
function formatTime($time)
Array-Element 5
9:20
Array-Element 6
10:50
Anfangszeit
Uhrzeit so übernehmen umformen in
SQL-Format nötig + :00
Endzeit
Uhrzeit so übernehmen umformen in
SQL-Format nötig + :00
Class FileImport
function separateElement_room($element)
Array-Element 7
Z 308; Z 308
Anfangszeit
Räume müssen nicht separiert
werden
so übernehmen - da eh keine Zuordnung
möglich
Class FileImport
function separateElement_teacher($element)
Array-Element 8
Hübner/Trautmann
Dozenten
Array-Element 9
Studiengruppen
Dozenten über / separieren
1.
04/051/K;04/052/01;04/052/62;04/052/73
Studiengruppen über ;
separieren
26
Projektbericht: „stplan2“
2.
Array-Element 0 = 04/051/K
Array-Element 1 = 04/052/01
Array-Element 2 = 04/052/62
Array-Element 3 = 04/052/71
3. -> Array-Element 0 = 04/051/K
Array-Element 0 = 04
Array-Element 1 = 052
Array-Element 2 = K
oder 01 – 03 …
oder 61 – 63 …
oder 71 – 73
Elemente über /
separieren
04 = ImmatrikulationsJahr
052 = Studiengang
K
= Vertiefung
01 = Gruppe normal
-> Diplom
61 = Gruppe
-> Bachelor
71 = Gruppe
-> Master
Dies wird erst ab nächster Version 1.2,
in der die Gruppen automatisch
eingelesen werden
Hierfür ist schon function
extractGroupID($group,$format)
vorgesehen
5.3 Importvorgang
Die Textdatei wird zeilenweise verarbeitet. Wird während der Verarbeitung einer Zeile eine
Abweichung zu o.g. Definition festgestellt, wird eine Warnung angezeigt und der Import
eventuell abgebrochen. Diese Warnung enthält Informationen über den aufgetretenen
Fehler und die aktuelle Zeilennummer innerhalb der Textdatei.
In der Regel ist der Import nach Auftreten einer solchen Warnung nicht erfolgreich! Die
Textdatei sollte korrigiert und erneut importiert werden.
Ablauf:
File_Import in der Datei ~ stplan2\www\admin\file_import.php und der Klasse
stplan2\www\bin\lib\class\import\ class_file_import.php:
Nach dem drücken des Buttons „import“ wird zunächst geprüft, ob überhaupt ein
Dateiname angegeben wurde oder die Datei im richtigen Format (.txt) vorliegt und ob die
Datei richtig an den Server übertragen wurde. Ist dies der Fall wird noch der temporäre
Dateiname auf dem Server geprüft.
Daraufhin wird eine Kopie der Datei in das Verzeichnis ~stplan2\www\backup\importfiles\angelegt und der Einlesevorgang beginnt.
Zunächst werden die Tabellen `stunden`, `stunden-gruppen`, `stunden-dozenten` und
`stundenzeiten` geleert. Im Anschluss wird die temporäre Datei zum lesen geöffnet und
die ersten 3 Zeilen werden übersprungen.
In der 4. Zeile beginnt die eigentliche zerlege Arbeit; zuerst wird der String nach Tabs
separiert. Dabei erhält man ein Array mit den einzelnen Abschnitten, welche dann nach
Bedarf noch weiter separiert werden. Siehe vorangegangene Seiten.
Hauptbestandteil ist das Array ($dataset_array1), in dem die aufbereiteten Werte schon in
der Reihenfolge vorliegen, wie sie dann in die Datenbank eingetragen werden. Dieses
Array wird in die Tabelle `stunden` eingetragen. Hierbei werden die Anfangs- und
Endzeiten der Stunde mit den Standart -Werten in die Tabelle `stundenzeiten` verglichen,
wird hierbei ein Treffer erzielt wird nur die ID zurückgegeben, befindet sich diese
Zeitkombination nicht in der Tabelle, wird diese als neuer Datensatz angelegt und dessen
neue ID zurückgegeben. In diesem Abschnitt wird auch die Stundendauer in Minuten
berechnet. Ist das Array ($dataset_array1) gefüllt, wird es als erstes in die Datenbank
geschrieben um die `std_id` zu bekommen, die für Verknüpfung mit den andern Tabellen
benötigt wird.
27
Projektbericht: „stplan2“
Das Array $dataset_array2 stellt die Verbindung zw. Stunden_id und den einzelnen KursGruppen her und wird zusammen mit der `std_id` in die Tabelle `stunden-gruppen`
eingetragen. Das Array $dataset_array3 stellt die Verbindung zw. der `std_id` und der
`Dozenten_id` her und wird auch wieder zusammen mit der `std_id` in die Tabelle
`stunden-dozenten` eingetragen.
Die ganze Einleseroutine wird sowohl auf dem Bildschirm angezeigt und auch in einer
Logdatei ~stplan2\www\backup\LogFiles\ mit protokolliert, damit man Fehler besser
nach verfolgen kann. Treten schwerwiegende Fehler auf; werden diese noch einmal
separat am Ende des Einlesevorgangs ausgegeben damit, der User ein Feedback
bekommt, ob der Import erfolgreich durchgeführt worden ist.
5.4 Datenbank- Backup
Wenn beim Import keine Fehler aufgetreten sind, wird gleich im Anschluss von den neuen
Daten ein Backup erstellt, damit die aktuelle Version gesichert ist. Dies geschieht mit der
Klasse ~stplan2\www\bin\lib\class\import\ class_db_backup.php.
Da wir aus technischen und rechte Gründen kein Backup mit dem System-Befehl
mysqldump.exe erstellen konnten und ebenfalls nicht dynamisch Ordner erstellen konnten,
haben wir ein anderes Verfahren zum sichern der Datenbank entwickeln müssen.
Damit sich auf dem Server nicht unzählige Backups stapeln, wurde in unserer Version eine
rotierende Backup- Verwaltung für 10 Backup- Versionen umgesetzt. Hierfür befinden sich
im Verzeichnis ~ stplan2\www\backup\DB_Backup\ backup_1 -> backup_10 zehn Backupordner, in die nach und nach geschrieben wird. Parallel dazu gibt es in der Datenbank eine
Tabelle `backup_info` in der die Version, der Pfad und das Erstellungsdatum gespeichert
werden. Anhand des letzten Ersthellungsdatums wird die ID des Datensatzes ermittelt,
welche zugleich die Nummer des aktuellen Backup-Ordners ist. In diesen Ordnern befinden
sich Textdateien mit den Namen der gesicherten Tabellen. Die Dateien selbst, enthalten
den schon vorbereiteten VALUE- Teil des späteren SQL-INSERT-Statements z.B.:
(1 ,'Diplom' ,'0' );. Die SQL –Statements zum Wiederherstellen der Tabellenstruktur
befinden sich in der Datei ~stplan2\www\bin\include\ backup_structure.php.
Darin befinden sich 3 Arrays mit den assoziativen Name der zugehörigen Tabelle z.B.:
$db_drop['abschluss'] = "DROP TABLE IF EXISTS `abschluss`;";
$db_structure['abschluss'] = "CREATE TABLE IF NOT EXISTS `abschluss` (
`abschluss_id` int(5) NOT NULL default '0',
`abschluss_typ` varchar(255) collate latin1_general_ci NOT NULL default '',
`gruppen_key` varchar(5) collate latin1_general_ci default NULL,
PRIMARY KEY (`abschluss_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;";
$insert_state['abschluss'] = "INSERT INTO `abschluss` (`abschluss_id`, `abschluss_typ`,
`gruppen_key`) VALUES ";
mit den vorbereiteten SQL –Statements zum Wiederherstellen der Datenbank.
!!!! Da diese Werte statisch in der Programmstruktur hinterlegt sind, ist es sehr
wichtig, dass Änderungen an den Tabellenstrukturen ebenfalls in dieser Datei
aktualisiert werden, sonst werden Tabellen bei einem Restore nicht mehr richtig
hergestellt und der Stundenplaner kann nicht weiter genutzt werden.
5.5 Ablauf: DB_BackUp
Zunächst wird das nächste/neue Backup-Verzeichnis ermittelt und die Tabelle
`bakup_info` mit den neuen Werten aktualisiert.
28
Projektbericht: „stplan2“
Als nächsten Schritt wird ein Array mit allen Tabellennamen der Datenbank angelegt und
mit den Indexen der $db_structure['abschluss'] verglichen, ob diese Tabellen auch in der
Datenbank existieren. Dann startet für jede Tabelle das Erstellen der Backup-Datei.
Es wird sich von jeder Tabelle der gesamte Inhalt geholt, die Anzahl und Typ der Felder
ermittelt und ein vorformatierter String in die Datei geschrieben ( (1 ,'Diplom' ,'0' ); ).
Sind alle Tabellen durchlaufen ist das Backup fertig.
5.6 Restore der Datenbank
Das Wiederherstellen der Datenbank geschieht in umgekehrter Richtung wie das Erstellen
des Backups. Der User wählt eine Backup-Version aus.
Aus der Datenbank wird das entsprechende Verzeichnis ermittelt und vergleicht, ob die
Backup-Dateien auch mit den Namen der Tabellen in der Datenbank übereinstimmen.
Daraufhin wird zunächst die Tabelle über den Drop- Befehl des $db_drop['abschluss'] –
Arrays gelöscht und durch das $db_structure['abschluss'] –Array wieder neu erstellt.
Anschließend wird die entsprechende Text-Datei in dem ausgewählten Ordner geöffnet und
zeilenweise ausgelesen. Die ausgelesene Zeile wird mit dem Befehl des Arrays verknüpft
und ausgeführt, bis die Tabelle wieder komplett wiederhergestellt wurde. Beim
Wiederherstellen werden dem User alle Aktionen in einem Textarea angezeigt. Treten
dabei Fehler auf, werden diese noch einmal gesondert am Ende ausgegeben.
5.7 Hinweise zur Konsistenz
Vom Importprozess können nur syntaktische Fehler (z.B. fehlender Tabulator oder leere
Zellen) aber kaum semantische Fehler (z.B. falscher Zeitraum, falscher LV-Name) erkannt
werden. Daher ist die Konsistenz (inhaltliche Richtigkeit und Widerspruchsfreiheit) der
Textdatei manuell zu prüfen!
Die neue Version ist von der Schreibweise her ziemlich fehlertolerant, da sie nicht jedes
Zeichen separiert, dennoch sollte die Grobunterteilung (siehe oben) eingehalten werden,
um eine reibungslosen Import und richtige Werte garantieren zu könne. Hierbei sollte
besonders bei der Spalte mit dem Vorlesungstyp und dem Kurztyp darauf geachtet
werden, dass das vereinbarte Format eingehalten wird.
Diese Varianten sind möglich oder Kombinationen aus diesen:
V(p) , V(w), V(f), V(p+w), V(w+f)
Ü(p) , Ü(w), Ü(f), Ü(p+w), Ü(w+f)
Pr(p) , Pr (w), Pr (f), Pr (p+w), Pr (w+f)
Block
Unbedingt muss der Kurs-Typ in Klammern nach dem Stunden-Typ stehen damit
die Stunde eindeutig einer Kategorie zugeordnet werden kann!!!!!
Beispiele für fehlende Widerspruchsfreiheit:
- gleiche LV haben unterschiedliche LV-Bezeichnungen
- gleiche Dozenten haben ungleiche Namen
- ein in der Textdatei verwendeter Fachbereich ist noch nicht administriert worden
5.8 Beispiel für einen semantischen Fehler:
statt „(w.o.)“ enthält die Bezeichnung „(w.o)“ statt „20:00“ wurde als „02:00“ eingetragen
auch besonders bei der Schreibweise der Dozenten nicht Fischer,J und/oder Fischer,J.
mehrere Dozenten wurden nicht mit „/“ abgetrennt
29
Projektbericht: „stplan2“
5.9 Achtung Fehlerquellen!!! Stand 13.09.06:
Kurstyp Kombination V(p+w) nicht eindeutig aufgelöst:
Zum bisherigen Zeitpunkt ist das Backend für Frau Neumann zum Administrieren der
statischen Werte noch nicht fertig. Deshalb kann die Kurstyp Kombination V(p+w) nicht
eindeutig aufgelöst werden. (für welchen Kurs ist die Stunde Pflicht und für welchen ist
wahlobligatorisch) Später soll dann über eine Abfrage auf die Tabelle `pflichtfaecher`
getestet werden, ob für die Gruppe X der Kurs Pflicht ist oder nicht. Dann kann die
Kombination (p+w) zu (p) und (w) konvertiert werden.
Das liegt aber momentan daran, dass wir bei der hierfür benötigten Abfrage auf die
Tabelle `pflichtfaecher` kein 100%ig zuverlässiges Ergebnis bekommen, weil die
Fächerbezeichnungen nicht richtig geschrieben sind oder nicht zu geordnet werden
können. Das kann nur Frau Neumann sauber und richtig verwalten. Die
Administrationsoberfläche wird Bestandteil der Ausbaustufe II.
6 Schnittstellendefinition: (Frontend)
Das Frontend des Online Stundenplaners, beruht auf der Template Engine Smarty. Hierbei
werden die logischen sowie die grafischen Bestandteile auf unterschiedliche Dateien
abgebildet. Im Rendering (Parsen) durch die Smarty Engine werden diese wieder zu einer
HTML Seite zusammengefügt.
Das Frontend teilt sich in 5 Abfrage Schritte ein.
Schritt 1:
Das index Script bietet dem User (siehe Pkt. 4.5 Indexseite (Einstieg)) eine
übersichtliche Möglichkeit, zum einen über die direkte Eingabe des Gruppen Schlüssels
(z.B. 03/021/01) und zum anderen über die Select- Auswahl eine Anfrage an das System
zu stellen.
Nach dem Aufrufen der index- Seite bekommt der Nutzer eine eindeutige Session ID
zugewiesen die neben der Browserkennung und einem Zeitstempel in die Datenbank
übernommen werden.
Das Abschließen der Eingabe bestätigt der User durch den Weiter- Button. Dabei werden
die eingegebenen Daten ebenfalls in die Datenbank geschrieben.
Schritt 2:
Das detail Script zeigt eine separierte Auswahl (siehe Pkt. 4.5 Fächerauswahl) an
möglichen Pflicht-, Wahl-, Fakultativ-, Sonderlehrveranstaltungen hierbei sind die
Pflichtstunden vorselektiert. Über Checkboxen bietet die Seite die Möglichkeit eine
persönliche Zusammenstellung zu treffen. Durch klicken auf den Weiter- Button werden
die ausgewählten Lehrveranstaltungen ebenfalls in die Session übernommen.
30
Projektbericht: „stplan2“
Schritt 3:
Das liste Script bereitet die Lehrveranstaltungen als Listen Ansicht auf (siehe Pkt. 4.5
Listenansicht). Es zeigt sortiert nach dem Wochentag und dem Begin alle Stunden die von
Professoren, eingeschränkt durch die detail Auswahl und die Gruppen ID, gegeben werden.
Vorselektiert sind alle Stunden und über die alle abwählen Checkbox kann die Auswahl für
alle Lehrveranstaltungen aufgehoben werden
Schritt 4:
Das deko Script verschafft dem User die Möglichkeit, über Drop-Down Boxen eine
persönliche Formatierung des Stundenplaners vorzunehmen (siehe Pkt. 4.5 Formatierung).
Als Optionen stehen die Fälle der Schriftenformatierung z.B. Kursiv od. Fett und der
Hintergrund- bzw. der Schriftfarbe zur Auswahl. Das kann jeweils für Pflicht-, Wahlund(oder) Fakultativlehrveranstaltungen vorgenommen werden.
Schritt 5:
Das vorschau Script zeigt die übersichtliche Tabellendarstellung des persönlichen
Stundenplans (siehe Pkt. 4.5 Vorschau). Neben der Darstellung bietet es die Auswahl, die
vorliegende Seite direkt zu drucken bzw. über den pdf- Button ein PDF – File zu
generieren, das ebenfalls ausgedruckt werden kann. Über den Start- Button gelangt man
zur Ausgangsseite (index.php)
7 Session Handling
Zum Halten der benötigen Request Daten kommt ein Session Konzept zum Einsatz. Die
Daten werden dafür in das vorgesehene Session Array geschrieben und an anderer Stelle
abgerufen bzw. aktualisiert. Dadurch ist es notwendig, dass im Browser des Nutzers
Cookies und JavaScript aktiviert sind.
8 Protokolle
In folgenden Bereichen wurden Protokolle angefertigt:
-
Meetings mit dem Auftraggeber
Meetings im Bereich des Projektteams
Größere Entwicklungsschritte
Die Protokolle wurden neben der Eigenüberprüfung zu folgenden wichtigen Punkten
erarbeitet:
-
Ergebnisse der Projektarbeit
Entscheidungen im Projektteam
Aussagen des Auftraggebers
31
Projektbericht: „stplan2“
9 Meetings (Auszug)
Meeting: 20.04.06
- neuen Account für Testzwecke im RZ beantragen
- Besprechung mit Uli und Stefan um 11.00 Uhr
Meeting: 26.04.06
- Zugriff von außerhalb auf den Server über (sftp,ssh)
- Entwicklungsumgebung für Testzwecke einrichten
- PHP – Funktionsumfang im RZ nachfragen
- MySQL – phpmyadmin installieren
- Transfervolumen beantragen
Meeting: 02.05.06
- Nadine
- Ablaufplan
- Navigationskonzept
- Dokumentation
- Katy
- CSS Entwurf
- Templates
- Layout
- Prototype
- Uli
- Datenbank Entwurf
- Schnittstellen
- Datenkatalog
- Importfile Struktur
- Stefan
- Regelwerk mit Uli/Fr. Neumann entwickeln
- Hilfe
- Feedback/BugReport erstellen
- Nico
- Kommunikation mit RZ
- Daniel
- Pflichtenheft/Meilensteine
- Grobkonzept
- Spezifikation
- Dokumentation
Meeting: 16.05.06
- weitere Fächerauswahl kommt in die Entwicklungsstufe 2
- CSS Formatierung
- Kalender mit geraden bzw. ungeraden Wochen anzeigen
- passwd für phpmyadmin erstellen
Meeting: 31.05.06
- Besprechung der db Struktur
- Vergleich Entwurf von Nico und Uli
- Probl. Schwerpkt. und Vertiefungen
32
Projektbericht: „stplan2“
- Können Fächer auch im Fachbereich ausgewählt werden? (Stand Entwickl.stufe 2)
Meeting: 13.06.06
- Fr. Prof. Strippgen für Admin fragen
- CSS index.php
- Layout/ Algorithmus für Stundenplaner besprechen
10 ToDoListe für Projekt „stplan2“ Entwicklungsstufe 2
10.1 Nachbesserung:
Ort/Bereich
Frontend
Backend/Import
Frontend
Backend/Backup
Backend/Administration
Bugreport
Frontend/Hilfe
Frontend
Beschreibung
Integrieren der Info Mouseover von Uli +
Infotexte für die folgenden Seiten
Typ/Bemerkung
Status
Daniel will sich darum noch
kümmern - ist bis jetzt noch
nicht erfolgt
Wenn Frau Neuman die Tabelle „pflichtfaecher“ Ist bereits implementiert,
richtig eingepflegt hat, kann die Extraktion des aber auskommentiert, da
Stundentyps erweitert werden, damit der
die Daten in der Tabelle
Stundentyp „p+w“ auch dynamisch
nicht 100%ig richtig sind.
auseinander genommen werden kann und über Voraussetzung:
eine Abfrage auf die Tabelle „pflichtfaecher“
Frau Neumann muss die
richtig zugeordnet werden kann.
Pflichtfächer richtig
eingetragen haben.
Dynamische Versionsbezeichung
Idee
In der momentanen Version wird nur geprüft,
Muss nicht notwendiger
ob die Tabellennamen aus der Datei
weise sein. – vor finaler
„backup_structure.php“ auch wirklich in der
Übergabe die Strukturdaten
Datenbank vorkommen.
in der
Befinden sich mehr Tabellen in der DB als in
„backup_structure.php“ evtl.
„backup_structure.php“ angegeben, werden
aktualisieren.
diese nicht mit gesichert, weil sie auch nicht in
der Datei „backup_structure.php“ enthalten
sind.
Für die Version 1.0 wurden die Tabellen
wichtig
„dozenten“, „gruppen“ per Hand eingepflegt.
Muss unbedingt gemacht
Das kann in den Folgejahren zu
werden
Inkonsistenten/Fehlern führen, deshalb
->macht Uli
müssen die beiden Tabellen von Jahr zu Jahr
neu aktualisiert werden. Dafür kann man eine
Funktion schreiben und das in den AdminBereich integrieren. Siehe -> Neu
Funktionalitäten
Bis jetzt werden die Fehler-Notizen nur in die
Idee?
Tabelle `bugreport` eingetragen.
Daher ist es wichtig, dass der Admin
regelmäßig diese Tabelle überprüft.
Es wäre möglich, neue Benachrichtigungen per
E-Mail an den Admin zu schicken.
Die Texte in der Hilfe müssen überarbeitet und
angepasst werden.
Auch auf den Folgeseiten nach der „index“
müssen die Links mit den Sprungankern
angepasst bzw. eingefügt werden.
Evtl. anpassen des css für die Printausgabe
10.2 Neue Funktionalitäten:
Ort/Bereich
Frontend
Beschreibung
Unterstützung mehrer Sprachen
Backend/Administration
Backendtool zum Verwalten der
Datenbankinhalte für die DropDown-Boxen
Anzeige und Verwaltung der Tabellen zum
33
Typ/Bemerkung
Idee ist ansatzweise
schon vorbereitet
wichtig
Status
Projektbericht: „stplan2“
Verwalten der statischen Inhalte für:
Tabelle `abschluss` -> Anzeige, Einfügen,
Ändern, Löschen
Tabelle `pflichtfaecher` -> Anzeige, Einfügen,
Ändern, Löschen
Tabelle `studiengang` -> Anzeige, Einfügen,
Ändern, Löschen
Tabelle `studienrichtung` -> Anzeige, Einfügen,
Ändern, Löschen
Tabelle `stundenzeiten` -> Anzeige, Einfügen,
Ändern, Löschen
Tabelle `vertiefung-schwerpunkte` -> Anzeige,
Einfügen, Ändern, Löschen
wichtig
wichtig
Tabelle `gruppen` -> Anzeige, Einfügen, Ändern,
Löschen -> manuell
+ Option zum autom. aktualisieren per Funktion
und über eine helper-tabelle
Tabelle `dozenten` -> Anzeige, Einfügen,
Ändern, Löschen -> manuell
+ Option zum autom. aktualisieren per Funktion
und über eine helper-tabelle
Tabelle `bureport` -> löschen, export
Backend/Administration
Es wird bei jedem Import und Restore eine
ErrorLogDatei erstellt.
Damit es nicht zu viele werden, könnte man eine
Warnung ausgeben, sobald eine bestimmte
Anzahl überschritten ist und den User auffordern
den Ordner zu leeren.
-> automatisch löschen geht nicht, da uns dazu
die Rechte fehlen
Idee?
11 Bilanz
11.1 Allgemein
Der Stundenplaner – Assistent wurde zur vollen Zufriedenheit des Auftraggebers
rechtzeitig zum Beginn des Wintersemester06/07 fertig gestellt. Dabei wurden die
Termine der zu Beginn festgesetzten Meilensteine soweit eingehalten.
11.2 Eigenbilanz
Neben den bei der Entwicklung des Stundenplaner-Assistenten gesammelten Erfahrungen
konnte unser Projektteam vor allem nützliche Erkenntnisse im Bereich: Projektmanagement gewinnen.
Anhand der nachfolgenden Übersichten kann das Interesse an einem persönlichen und
individuellen Stundenplan in anschaulicher Tabellenform nachgewiesen werden.
34
Projektbericht: „stplan2“
11.3 Diagramme
(Zugriffe gemessen in der Zeit vom 06.10 – 09.10.06)
Anzahl
Zugriffe
872
880
870
860
850
840
830
820
810
800
790
780
Anzahl
813
Gruppen ID Eingabe
Select Eingabe
Name
Zugriffe über Gruppen ID Eingabe und Select Auswahl (Balkendiagramm)
Zugriffe gesamt
48%
Select
52%
Zugriffe über Gruppen ID Eingabe und Select Auswahl (Kreisdiagramm)
35
Free
Projektbericht: „stplan2“
Zugriffe über Gruppen ID Eingabe (Auszug)
12
10
Anzahl
8
6
Anzahl
4
2
03
/0
1
03 1/v
t
/0
13
03 /0
2
/
03 02 1
/e
/0
23 e
/O
03 NF
/0
3
03 1/0
/0 1
41
03 /02
/0
4
03 2/0
/0 2
4
03 3/0
/0
2
52
03 /Kf
z
/0
54
/B
03
C
/0
6
03 1/B
/0
71
03 /02
/0
7
04 2/0
/0 2
13
04 /02
/0
5
04 4/0
/0 2
62
/0
2
0
Gruppen ID
Zugriffe über Gruppen ID Eingabe (Auszug)
120
100
80
60
40
20
0
Anzahl
Allgemeiner
Architektur
Bauingenieurwes
Betriebswirtschaf
Chemieingenieu
Computer/Elektrotechnik/El
Fahrzeugtechnik
Gartenbau
Informatik
International
Kartographie
Kommunikations
Landespflege
Medieninformatik
Produktionstech
Vermessungswe
Wirtschaftsinfor
Wirtschaftsingen
Anzahl
Zugriffe über Select Auswahl
Name
Zugriffe über Select Auswahl
11.4 Vergleich Soll/Ist
Zu Begin entschied sich das Team den zu realisierenden Stundenplaner in zwei
Entwicklungsstufen zu unterteilen. Die dabei eingeplanten Features wurden soweit
umgesetzt. Während der Umsetzung in beiden Entwicklungsstufen implementierte das
Projektteam weitere, vorher nicht eingeplante Features, die für eine erfolgreiche
Realisierung der Projektarbeit für elementar wichtig betrachtet wurden.
36
Projektbericht: „stplan2“
Im Folgenden werden die beiden Entwicklungsstufen gegenübergestellt, wobei die SollWerte aus der Orientierungsphase (siehe Pkt. 3.5) herangezogen wurden:
Soll - Entwicklungsstufe 1:
-
Administrations-Bereich
Einfache Importschnittstelle für Stundenplandaten
Stundenplaner-Assistent zur Abfrage und Anzeige des Stundenplanes.
Individuelle Zusammenstellung eines Stundenplans:
o Auswahl von Pflicht- und wahlobligatorischen Fächern
Ist - Entwicklungsstufe 1:
-
-
Passwort geschützter Administrations-Bereich mit:
o Einfachem Stundenplandaten-Import im Textdatei-Format einschließlich
Option zur Wiederherstellung von Versionen
Stundenplaner-Assistent:
o Zusammenstellung des persönlichen Stundenplans aus:
 Pflicht- und wahlobligatorischen Fächern
 Block und spezielle Fächer
o Optionale Darstellung in Tabellen- und Listenform
Umfangreiche Hilfestellung im Administrations-Bereich und Stundenplaner-Assistent
optimales Navigationskonzept
Session Handling und Speicherung der Daten
11.5 Problemfelder
Fehler wurden frühzeitig erkannt und behoben. Trotzdem können folgende, teilweise nicht
beeinflussbare Problemfelder aufgezählt werden.
-
Keine optimale Darstellung des Designs und Layouts in unterschiedlichen
Auflösungen
Schreibfehler in der Importdatei führen zu einer inkorrekten Anzeige der
Lehrveranstaltungen im Frontend des Stundenplaners
Eine Auflösung und die eindeutige Zuordnung für Lehrveranstaltungen die zum
einen Pflichtveranstaltungen und zum anderen Wahlobligatorische Veranstaltungen
sind, können nach dem momentanen Projektstand nicht durchgeführt werden.
Eventl. Verschiebung der Lehrveranstaltungen in der PDF- Tabellenansicht führen
auf die Funktionalität der PDF- Klasse zurück.
11.6 Verbesserungen
Als die wichtigsten Verbesserungen für weitere, vergleichbare Projekte können für die
Zukunft festgehalten werden:
-
Ausführlichere Anforderungsanalyse, damit die zu entwickelnden Features sowie
der damit anfallende Zeitaufwand vorab besser abgeschätzt werden kann.
-
Zeitnahere Dokumentation der jeweiligen Projektabschnitte zur besseren
Eigenkontrolle
-
Ausführlichere Abstimmung mit dem Auftraggeber und den verantwortlichen
Personen für rechtzeitige Klärung von den Entwicklungsprozess entscheidend
beeinflussenden Faktoren (z.B. Definition des Importvorgangs und Kürzeldefinition)
37
Projektbericht: „stplan2“
-
Rechtzeitige Festlegung der benötigten Spezifikationen für ein problemfreie
Entwicklung (z.B. optimierende Auflösung, Einbindung in die HTW- Homepage)
-
Ausbau der Kommunikation unter den Projektmitgliedern mit Hilfe von Meetings in
kürzeren Zeitintervallen.
11.7 Probleme und Verzögerungen
Die Planungsphase gestaltete sich insofern als sehr schwierig, da wir uns als
Außenstehende erst einmal in die komplexe Verknüpfung und Kombination der
verschieden Studiengänge einarbeiten mussten und uns unser Ansprechpartner in
entscheidenden Fragen nur wage Angaben machen konnte und teilweise aus technischen
Gründen nur sehr zögerlich auf unsere Lösungsvorschläge eingegangen ist.
Eine der Vorgaben war zwar völlige Flexibilität beim DatenImport für die Zukunft zu
schaffen, aber durch die Unsicherheitskomponente Mensch im Verarbeitungsprozess war
es uns nicht möglich eine 100%ig Sicherheit diesbezüglich zu erreichen.
Ein weiterer Grund für Verzögerungen war auch die langwierige Testphase für das
Erstellen des Datenbank- Backups, welches sich aufgrund sehr eingeschränkter
Zugriffsrechte, sowohl des Servers als auch der Datenbank, als sehr schwierig und
aufwendig herausstellte. Selbst bei Nachfragen bei den zuständigen Stellen, erhielten wir
nur selten konstruktive Informationen.
Der Ausfall eines Teammitgliedes, das eigentlich nur damit betraut war, die Tabellen für
die statischen Werte vollständig und richtig zu füllen, hat uns um ca. 2 Wochen
zurückgeworfen; da man sich auf einander gegenseitig verlassen hat und diese Daten
entscheidend sind, um das System überhaupt zum Laufen zubekommen. Denn als die
konkrete Umsetzung beginnen sollte, waren die Daten teilweise nicht mal bis zur Hälfte
eingepflegt. Deshalb musste ein anderes Teammitglied diese Arbeit mit übernehmen und
sich völlig neu in die Problematik, der Stundenbezeichnungen und Fächerkombinationen
einarbeiten.
Da sich während der Arbeiten sowohl, bei der Planung als auch bei der Umsetzung immer
wieder neue Probleme mit den Fächerkombinationen ergaben, mussten wir oft den zuvor
besprochenen Weg verlassen und immer wieder neue Ansätze finden, was zur Folge hatte,
dass oft Zeit in Arbeiten gesteckt wurde, die sich im Verlauf jedoch als nutzlos erwiesen.
Zusätzlich wirkte sich besonders die dezentrale Arbeit und oft mangelnde Kommunikation
bzw. Verfügbarkeit der einzelnen Teammitglieder, negativ auf eine effektive und zügige
Bearbeitung des Projektes aus.
38
Projektbericht: „stplan2“
12 Änderungsklausel
Wir behalten uns das Recht vor, diesen Projektbericht zu aktualisieren, wenn dies
zwingend erforderlich ist.
Dieses soll in Absprache mit dem Auftragsgeber erfolgen.
39
Projektbericht: „stplan2“
13 Glossar
13.1 Abkürzungen
CD
CI
CSS
HTML
HTW
KW
PDF
PHP
-
RZ
SQL
SS
stplaner
UML
V
web
Corporate Design
Corporate Identity
Cascading Style Sheets
Hyper Text Markup Language
Hochschule für Technik und Wirtschaft Dresden
Kalenderwoche
Portable Document Format
(rekursives Akronym für „PHP: Hypertext Preprocessor“, ursprünglich
„Personal Home Page Tools“)
- Rechenzentrum
- Structured Query Language
- Sommersemester
– Stundenplaner
- Unified Modeling Language
- Version
- (aus dem Englischen web, Gewebe)
XML
- Extensible Markup Language
XSLT
- Abkürzung für XSL->Extensible Stylesheet Language
13.2 Quellenverzeichnis
1. http//www.google.de
2. http://de.wikipedia.org
40
Projektbericht: „stplan2“
14 Selbständigkeitserklärung
Hiermit bestätigen die Mitglieder der Projektgruppe stplan2, dass der vorliegende Teil der
Projektarbeit, von uns persönlich und ohne fremde Hilfe angefertigt wurde.
……………………...
……………………...
……………………...
Daniel Hallmann
Projektleiter
Katy Schmitt
Nadine Sander
Dresden, 11.10.2006
41
……………………...
Ulrich Keitel
Herunterladen