3. I.1 Was lerne ich überhaupt und wofür?
- Eine Datenbank entwickeln
- Daten anders verwalten als bisher
- private Daten nutzen
- geschäftliche Daten organisieren
- für den Eigengebrauch
- oder für einen Kunden
Jan Rüdiger
Start in die erste Datenbank
FileMaker Konferenz
2013 Salzburg
4. I.2 Das Ziel ist Daten erfolgreich in einer Datenbank zu verwalten
das bedeutet:
- System skalierbar planen
- System wartbar planen
- System wiederverwendbar planen
- System verständlich, pragmatisch und robust planen
- System dokumentieren
- Developer-Guidelines festlegen und einhalten
Jan Rüdiger
Start in die erste Datenbank
FileMaker Konferenz
2013 Salzburg
5. I.3 Systematik Schritt für Schritt planen und anwenden
- Sich vor dem Programmieren Gedanken machen
- Beim Start folgende Ziele im Auge behalten:
Die Datenbank sollte so aufgebaut sein, dass:
- ich auf geänderte Bedürfnisse des Kunden
leicht reagieren kann (Skalierbarkeit)
- jemand anderes (und ich selbst) meinen Code möglichst leicht
verstehen kann (Wartbarkeit)
- das ich so programmiere, dass funktionierede Teile, Bereiche und Skripts,
möglichst wiederverwendet werden können. (Wiederverwendbarkeit)
Jan Rüdiger
Start in die erste Datenbank
FileMaker Konferenz
2013 Salzburg
6. II.1 Adressdatenbank als NEGATIV-Beispiel
Wie wird eine Adresse angelegt?
- Alle Felder in einer Tabelle?
- Felder für Strasse, PLZ, Land, Ort , etc.
evtl für eine zweite Adresse Strasse2, PLZ2, Ort2....
- Der für Telefonnummer, evtl. Telefonnummer2,
Mobil, Fax, eMail_privat, eMail_geschäftlich...
- oder doch lieber statt einzelner Felder für alles gleich mehrere Tabellen
anlegen
- Mehrere Tabellen, nur um eine Adresse zu verwalten?
- Reicht es nicht z.B. bei Bedarf ein Feld Telefonnummer3 anzulegen?
Jan Rüdiger
Start in die erste Datenbank
FileMaker Konferenz
2013 Salzburg
7. II.2 Adressdatenbank als NEGATIV-Beispiel
Hier ist bereits alles realisiert,
was die Lösung später
schwerfällig und schließlich
unbrauchbar machen wird:
-keine Konsistenz bei Bennenungen
(Terminologie)
-Deutsche Umlaute, Leerzeichen
und mathematisch relevante Zeichen.
-Mehrere Felder wie Telefon-Nummer,
um sich wiederholende Information
des selben Typs zu speichern.
- Kein Primär-Schlüssel
- Kein Creation-Timestamp
Jan Rüdiger
Start in die erste Datenbank
FileMaker Konferenz
2013 Salzburg
8. II.3 Adressdatenbank als NEGATIV-Beispiel
Vorname
Name
Land
Postleitzahl
Straße
Telefon Nummer / 1
Stadt
23334
Jan Rüdiger
Start in die erste Datenbank
FileMaker Konferenz
2013 Salzburg
9. II.3 Adressdatenbank als NEGATIV-Beispiel
Vorname
Name
Land
Postleitzahl
Straße
Telefon Nummer / 1
Stadt
23334
Telefon-Nummer 2
Jan Rüdiger
Start in die erste Datenbank
FileMaker Konferenz
2013 Salzburg
10. II.3 Adressdatenbank als NEGATIV-Beispiel
Vorname
Name
Land
Postleitzahl
Straße
Telefon Nummer / 1
23334
Stadt
Telefon Nummer 3
Telefon-Nummer 2
Straße 2
PLZ 2
Land 2
Ort 2
Jan Rüdiger
Start in die erste Datenbank
FileMaker Konferenz
2013 Salzburg
11. II.3 Adressdatenbank als NEGATIV-Beispiel
Drucken
Vorname
Name
Land
Postleitzahl
Straße
Stadt
Super-Geheim-Telefonnummer Achtung !!!
Telefon Nummer / 1
23334
Telefon Nummer 3
Telefon-Nummer 2
Straße 2
PLZ 2
Land 2
Ort 2
Jan Rüdiger
Start in die erste Datenbank
FileMaker Konferenz
2013 Salzburg
12. II.4 Adressdatenbank als NEGATIV-Beispiel
Drucken
Vorname
Name
Land
Postleitzahl
Straße
Stadt
Super-Geheim-Telefonnummer Achtung !!!
Privato
23334
privat
Spezial-Option
Straße 2
PLZ 2
zurück
Jan Rüdiger
Start in die erste Datenbank
Land 2 / Spezial
Ort 2
FileMaker Konferenz
2013 Salzburg
13. nur an Weihnachten
Druck
Seite 2
Druck
Seite 1
II.4 Adressdatenbank als NEGATIV-Beispiel
Info
Telefon wahl
Bemerkungen
Druck
Seite 3
Drucken
Keine Nummer
Vorname
Name
Land
Postleitzahl
Stadt
Straße
Super-Geheim-Telefonnummer Achtung !!!
Privato
23334
privat
Spezial-Option
Straße 2
PLZ 2
zurück
Jan Rüdiger
Start in die erste Datenbank
Land 2 / Spezial
Nur
Marlene !
Ort 2
FileMaker Konferenz
2013 Salzburg
14. nur an Weihnachten
Druck
Seite 2
Druck
Seite 1
II.4 Adressdatenbank als NEGATIV-Beispiel
Info
Telefon wahl
Bemerkungen
Druck
Seite 3
Drucken
Keine Nummer
Vorname
Name
Name
Land
Postleitzahl
Straße
Stadt
Straße
Super-Geheim-Telefonnummer Achtung !!!
Privato
23334
privat
Spezial-Option
Straße 2
PLZ 2
zurück
Jan Rüdiger
Start in die erste Datenbank
Land 2 / Spezial
Nur
Marlene !
Ort 2
FileMaker Konferenz
2013 Salzburg
15. nur an Weihnachten
Druck
Seite 1
Mehrsprachige Variante !!!
Druck
Seite 2
II.4 Adressdatenbank als NEGATIV-Beispiel
Info
Telefon wahl
Bemerkungen
Keine Nummer
Druck
Seite 3
Drucken
druckbefehl direkt auf Button
Vorname
Name
Name
Land
Postleitzahl
Straße
Stadt
Straße
Super-Geheim-Telefonnummer Achtung !!!
Privato
23334
privat
Spezial-Option
Straße 2
PLZ 2
zurück
Jan Rüdiger
Start in die erste Datenbank
Land 2 / Spezial
Nur
Marlene !
Ort 2
FileMaker Konferenz
2013 Salzburg
16. II.5 Die Folgen
- Schnittstellen-Probleme für Web, SQL usw.
(Deutsche Umlaute, Leerzeichen in Bezeichnern, Mathematisch relevante Zeichen in
Bezeichnern.
- Schwer erweiterbar, wenn z.B. noch mehr Kommunikations-Verbindungen
hinzukommen.
- Spagetthi-Code
- Auf Dauer kaum noch wartbar. Kann kaum
durch einen anderen Programmierer nachvollzogen
werden.
- Änderungen sind - abgesehen von Erweiterungen auf Dauer kaum noch möglich, ohne hohen Zeitaufwand
und den Risiken neue Fehler zu produzieren
Vor allem zwingt die Struktur bei Änderungen erneut zu "basteln"
Jan Rüdiger
Start in die erste Datenbank
FileMaker Konferenz
2013 Salzburg
17. II.6 Noch mehr Folgen
- Änderungen von Wertelisten haben Fehler in der Suche zur Folge.
- Eigeneingaben durch Anwender in Felder mit Wertelisten haben ebenfalls
Fehler bei der Suche oder beim Reporting zur Folge.
- Erweiterung der Mehrsprachigkeit kaum möglich.
- vorgesehene Änderung von Wertelisten kaum möglich.
- Bei Änderungen von Kleinigkeiten wie der
Formel für Telefon-Auswahl muss eine Formel angepasst
werden.
- Informationen aus Wiederholfeldern auswerten
und für Schnittstellen aufbereiten schwer möglich.
- und.... und .... und....
Jan Rüdiger
Start in die erste Datenbank
FileMaker Konferenz
2013 Salzburg
18. II.7 Fazit
- eine solche Programmierung oder Vorgehensweise bedeutet:
- der Kunde verliert in den Entwickler das Vertrauen und wechselt
- der Kunder verliert in FileMaker das Vertrauen
"geht nicht", "das kann FileMaker nicht", "FileMaker funktioniert nicht richtig",
"FileMaker rechnet falsch"
Langfristig:
-> Der Kunde geht für FileMaker-Entwickler verloren als auch für FileMaker
selbst
Jan Rüdiger
Start in die erste Datenbank
FileMaker Konferenz
2013 Salzburg
19. Wir vergessen das Gesehene und Gehörte und
beginnen von neuem.
Jan Rüdiger
Start in die erste Datenbank
FileMaker Konferenz
2013 Salzburg
20. III.1 Adressdatenbank als POSITIV-Beispiel
- Bedürfnisse und Eigenarten des Kunden und seines
Business erfassen.
- Vorgehensweise mit dem Kunden vereinbaren:
z.B. "Evolutionäres Prototyping"
- Datenbank skizzieren
- Grundsätzliche Fragen klären
- Ersten Entwurf anfertigen / Dummy und mit Kunden besprechen
- Weitere Arbeitsschritte, die sich jeweils wiederholen:
(Abschnitt entwicklen, mit Kunden abstimmen)
Jan Rüdiger
Start in die erste Datenbank
FileMaker Konferenz
2013 Salzburg
21. III.2 Adressdatenbank als POSITIV-Beispiel
- Für den Kunde steht im Vordergrund:
- eine solide, performante und leicht bedienbare
Datenbank zu erhalten, die seine Geschäftsprozesse
so gut wie möglich wieder gibt oder ihm sogar hilft, diese zu optimieren.
- was der Kunde NICHT benötigt, sind "Fancy Features"
Jan Rüdiger
Start in die erste Datenbank
FileMaker Konferenz
2013 Salzburg
22. III.3 Fancy Features in FileMaker stehen im Hintergrund
zunächst nicht wichtig für den Kunden ist z.B.:
- Farbeffekte auf Buttons wenn die Maus
darübergleitet und der Button geklickt wird.
- Ein- und Ausblenden von Objekten.
- Viele Warhnhinweise und Signalfarben auf dem Layout
- Möglichst viele Informationen auf einem Layout
zusammenquetschen ("Cockpit")
- Grafiken, Bilder, Fotos und sonstige Deko-Elemente.
- unsinnige / unwesentliche Dinge wie Wettervorhersage im Web-Viewer etc.
- Ansteuern der Kaffee-Maschine via FileMaker
- Luftschlangenwerfer via FileMaker steuern
Jan Rüdiger
Start in die erste Datenbank
FileMaker Konferenz
2013 Salzburg
23. III.4 Die Datenbank anlegen
- Wie wird eine Adresse angelegt?
- Alle Felder in einer Tabelle?
- Felder für Strasse, PLZ, Land, Ort , etc.
evtl für eine zweite Adresse Strasse2, PLZ2, Ort2 .... ??
- Felder für Telefonnummer, evtl. Telefonnummer2,
Mobil, Fax, eMail_privat, eMail_geschäftlich..., evtl Telefonnummer3.... ??
- Wieder so beginnen?
! Solche Grundüberlegungen und - Entscheidungen haben gewaltige
Konsequenzen für die spätere Entwicklung des Programms
Jan Rüdiger
Start in die erste Datenbank
FileMaker Konferenz
2013 Salzburg
24. III.5 Adressdatenbank als POSITIV-Beispiel
Anrede
Herr
Bemerkungen
Titel
NameVorname
Name
Hans
Mustermann
Jan Rüdiger
Start in die erste Datenbank
FileMaker Konferenz
2013 Salzburg
25. III.6 Adressdatenbank als POSITIV-Beispiel
Anrede
Herr
Bemerkungen
Titel
NameVorname
Name
Hans
Mustermann
Art
Adressen
Urlaub
Strasse
Musterweg 2
Strasse 2
PLZ
99999
Ort
Ulm
Land
D
privat
Jan Rüdiger
Start in die erste Datenbank
FileMaker Konferenz
2013 Salzburg
26. III.7 Adressdatenbank als POSITIV-Beispiel
Anrede
Herr
Bemerkungen
Titel
NameVorname
Name
Hans
Mustermann
Art
Adressen
Urlaub
Strasse
Musterweg 2
Strasse 2
PLZ
99999
Ort
Land
Ulm
D
privat
Art
Kommunikation
Office Telefon
Jan Rüdiger
Start in die erste Datenbank
Kom-Verbindung
1212 03533
Bemerkungen
ist schwer zu erreichen
FileMaker Konferenz
2013 Salzburg
27. III.8 Adressdatenbank als POSITIV-Beispiel
NEU
Anrede
SUCHEN
ALLE
Herr
LISTE
X
DRUCK
per Skript
Bemerkungen
Titel
NameVorname
Name
Hans
Mustermann
Art
Adressen
Urlaub
Strasse
Musterweg 2
Strasse 2
PLZ
99999
Ort
Land
Ulm
D
privat
Art
Kommunikation
Office Telefon
Jan Rüdiger
Start in die erste Datenbank
Kom-Verbindung
1212 03533
Bemerkungen
ist schwer zu erreichen
FileMaker Konferenz
2013 Salzburg
28. III.9 Adressdatenbank als POSITIV-Beispiel
NEU
Anrede
SUCHEN
ALLE
Herr
LISTE
X
DRUCK
Bemerkungen
Titel
NameVorname
Name
Hans
Mustermann
Art
Adressen
Urlaub
Strasse
Musterweg 2
Strasse 2
PLZ
99999
Ort
Land
Ulm
D
privat
Art
Kommunikation
Office Telefon
Jan Rüdiger
Start in die erste Datenbank
Kom-Verbindung
1212 03533
Bemerkungen
ist schwer zu erreichen
FileMaker Konferenz
2013 Salzburg
29. Danke für´s Zuhören
Jan Rüdiger
Start in die erste Datenbank
FileMaker Konferenz
2013 Salzburg