ARTICLES
Art, Society, Media & Design

Articles

Oliver Weiss Design

S E A R C H


template_webdesign template line
template computer
Tutorials

Photoshop-Lexikon
deutsch / englisch

Photoshop Glossary

Coverillustration im Stile
von "The New Yorker"

Step-by-Step Photoshop Tutorial

Illustration auf alt getrimmt
Step-by-Step Photoshop Tutorial

Oans, zwoa, Pop-Art!
Macwelt
Tutorial on
Oktoberfest Poster Design

Wie zeichnet man
einen Comicstrip?

Step-by-Step Photoshop Tutorial

Zweifarbendruck
Step-by-Step Photoshop Tutorial
template line
template computer
Art & Society

Der Taktgeber
Film Composer John Ottman

Der Aufräumer
Mafia Lawyer Dead at 95

Charlie Brown lives
Peanuts Creator Charles M. Schulz

Entwicklung der politischen
Parteien in Deutschland

Evolution of German Parties since 1848

Fahren ohne Auto
Dumb Laws from Around the World

FAQ zur Online-Bewerbung
How to File Job Applications Online

Die Muminmutter
Tove Jansson, Writer & Artist

Муми-мама
Туве Янссон

Muminmutter forever
Tove Jansson ist gestorben

Moominmamma Forever
Tove Jansson has Died

9-11 - One Year After
Comments by Ed Koch et al.

9-11 - ein Jahr später
Kommentare von Ed Koch et al.

A Smile is a Smile is a Smiley
The Signet's Inventor is Dead

Räuber und Gedärm
Tomi Ungerer at 70

Die Wellenreiterin
Elisabeth Mann Borgese Dead at 83

Wein zur Prohibition
Lawyer Hiram Mendow Dies Aged 107
template line
template internet
Business

Ein New Yorker verirrt sich
nicht nach Solingen

Interview with a Lawyer & Journalist

Kanzleien helfen Kanzleien
Legal Community in 9-11 Aftermath

PR for Law Firms
Getting Exposure in the Media

PR für Kanzleien
Die gewünschte Publicity bekommen

Wagner ist digital
Customer Service 2000 D.C.

Wer abmahnt, hat
nicht immer recht

Interview on Cease and Desist Letters

Ein wunderbarer
Spätsommertag

Interview on 9-11
template line
template computer
Technology

Allein in New York
Laptop Trouble with Windows ME

Bitte nicht automatisch!
Translation Software Tested

Druck machen
Ink Jet Printer vs. Laser Printer

Faxen und mehr
Faxing Machines Inside Out

Fraktaler Darwinismus
Interview with Gerd Binnig

Now you're Talking!
Speech Analysis Methods

Patent Watch (I)
Method of Excercising a Cat

Patent Watch (II)
Of Cats and Horses

Patent Watch (III)
Hugging Hula Hoop

Patent Watch (IV)
It’s a Bird, a Squirrel, a Patent!


PC für Anfänger
How do Computers Really Work?

PC-Glossar
Tiny Computer Glossary

Die Sprachverarbeiter
Automatic Speech Recognition

Test: Bilddatenbanken
Review: Cumulus, Portfolio, iView
template line
template tech stuff
Web Technology

Alles mit System
Content Management for Lawyers

Die Anwaltssuche 
Lawyers Search Engine

Die Datenmacher
Databased Law Firm Websites

Die Datenmaschinen
Web Content Management Systems

Digitales Publishing
Document Management with PDF 

Internet-Zugang einrichten
Internet Dial-up Access Step by Step

Internet in New York
Free Internet Providers in NYC

Mit leichter Verspätung
It has Taken 5 Years to Register a URL

Maßgeschneidert
Content Management for Publishers 

Meta-Tags
Spreading the News

Suchen und Finden im Netz
Push Services

Web-Wissen
Web World Glossary
template line
template_webdesign
Web Design

Der Arzt im Web
Web Design for Doctors

Anwalts-Marketing-Preis
für Haarmann Hemmelrath

First Prize for Legal Web Site

Auf einen Blick
Corporate Design for Lawyers

Die Design-Strategie
Corporate Web Design

Dynamische Anwaltssuche
Hasche Eschenlohr's Legal Web Site

En un coup d'oeil
L’image de l’entreprise sur Internet

Gelb und blau
Haarmann Hemmelrath's Web Site

In der Welt zuhause
Web Design for Lawyers

In Szene gesetzt
Web Sites for Law Firms

Der virtuelle Anwalt
First Steps Towards a Lawyer's Website

Wie aus einem Guß
Corporate Design for Accountants

 

ARTICLES > Die Datenmacher


Web Technology:

Intelligente Websites mit Datenbanken

Die Datenmacher
||| Tom Henne & Oliver Weiss

In der Gründerzeit des Internets bestanden Websites aus ausschließlich statischen Internet-Seiten. Zeitgemäße Websites basieren dagegen oft auf Datenbanken, die „dynamischen" Inhalt generieren – der Benutzer befindet sich „im Dialog" mit der Website. Auch Kanzleien können von dieser Technologie profitieren. Was genau ist technisch möglich? Und wie packt man ein solches Projekt an?
Intelligent Web Sites with Databases: While databases may not be among the simpler things in life, they sure can save you a lot of trouble. This article sets out to motivate you to implement a database for your corporate web site. 

 


 
Aus:
NJW-CoR Computerreport (C.H. Beck Verlag, Februar 2000)

>DOWNLOAD PDF

>WEBDESIGN: Meine Website für die Großkanzlei Hasche Eschenlohr Peltzer Riesenkampff Fischötter.

>WEBSITE-ENTWICKLUNG: Weitere Website-Projekte für Kanzleien und Verlage.

>WEBDESIGN: Mehr zu Kanzlei-Websites in meinem Beitrag "In der Welt zuhause".

>CONTENT MANAGEMENT: Content-Management-Systeme für Websites.

B
eliebter Anlaufpunkt im Internet sind Suchmaschinen wie Google, mit deren Hilfe man im ansonsten chaotischen Internet gezielt bestimmte Informationen findet: Man startet eine Suchabfrage, woraufhin die Suchmaschine eine Treffer-Liste mit Internet-Seiten zurückgibt, die dem Suchbegriff am besten entsprechen.

Das Besondere daran ist, dass hier keine statischen Dokumente übertragen, sondern „on-demand" dynamisch Ergebnisseiten aus den Daten einer Datenbank erzeugt werden. „Statische" Seiten sind auf der Festplatte des Providerrechners unveränderlich gespeichert, wohingegen „dynamische" Seiten immer aktuell aufbereitet werden.

Gibt man etwa bei der Website der Deutschen Bahn Abfahrt- und Zielbahnhof der geplanten Reise ein, erhält man eine dynamisch aus einer laufend aktualisierten Datenbank generierte Ergebnisseite mit entsprechenden Reisevorschlägen. Auf ähnliche Weise kann man sich Börsenkurse aus dem Internet holen oder das aktuelle Wetter für eine bestimmte Stadt nachschlagen.

Auch für Anwaltskanzleien gibt es viele lohnenswerte Anwendungen für dynamische Websites, die ihre Inhalte aus Internet-Datenbanken beziehen.

Beispielsweise kann der Mandantenservice verbessert werden, indem man auf der Kanzlei-Website eine Suchfunktion nach Anwälten einbaut, die eine Datenbank nach Suchkriterien wie ausgeübten Tätigkeitsfeldern oder Sprachkenntnissen recherchiert (vgl. unser Beispiel der Sozietät Hasche Eschenlohr Peltzer Riesenkampff Fischötter).

Die ausgegebenen Informationen sind dann immer aktuell: Ändert sich eine Adresse oder tritt ein neuer Anwalt der Kanzlei bei, wird der entsprechend angepasste Datenbank-Inhalt sofort auch dem Internet-Benutzer zugänglich.

Das Konzept der datenbankgestützten Websites kann dabei auch sehr viel Arbeit sparen helfen: Wo früher pro Anwalt eine Referenz-Seite programmiert werden musste, genügt jetzt eine einzige Seite für alle Anwälte – die jeweils passenden Inhalte werden einfach aus der Datenbank eingefügt.

Weitere Beispiele sind etwa Literaturdatenbanken mit Gesetzestexten und Urteilen. Im kanzleiinternen Bereich können eine Terminplanung oder ein Informationssystem für Mitarbeiter bestimmte Arbeitsabläufe erleichtern.

Das Datenbankmodell: Das Datenbankmodell: Die Suchanfrage per Browser landet erstmal beim Webserver. Der sieht, dass hier „dynamische" Antwortseiten gefordert sind und gibt die Anfrage über eine der gebräuchlichen Webserver-Schnittstellen (CGI, ISAPI usw.) an den Web-Applikationsserver weiter, der seinerseits den über Schnittstellen wie ODBC oder JDBC angesprochen Datenbank-Server bemüht. Das Abfrageergebnis geht denselben Weg zurück – und voilà.
Keine Angst vor Datenbanken

Die erwähnten Beispiele bauen ohne Ausnahme auf bestimmtem Fachwissen wie z.B. der Kenntnis der Mitarbeiterdaten auf. Datenbanken wie Microsoft Access speichern das „Wissen", also die jeweiligen Daten, in Tabellen.

Je nachdem, wo ein Anwalt  arbeitet, wird seinem Eintrag in der Anwälte-
Tabelle ein Eintrag in der Standorte-
Tabelle zugeordnet.

Bei einer Anwaltsdatenbank gibt es z.B. eine Tabelle, die alle Namen und Titel umfasst; weitere Tabellen verzeichnen etwa Tätigkeitsgebiete, Sprachkenntnisse oder Standorte. Je nachdem, wo ein Anwalt arbeitet, wird seinem Eintrag in der Anwälte-Tabelle ein Eintrag in der Standorte-Tabelle zugeordnet. Datenbanken bestehen also aus Tabellen und Zuordnungen. 

Was schafft die Verbindung zwischen der Datenbank im Hintergrund und dem Internet-Browser beim Interessenten? Bevor die Daten beim Benutzer ankommen, durchlaufen sie erst zwei weitere „Schleusen": den „Webserver" und den „Web-Applikationsserver". Webserver sind der Motor jeder Website.

Will ein Internet-Benutzer eine Seite laden, schickt dessen Browser eine Anfrage an den Webserver. Dieser lädt die (statische) Seite von der Festplatte des Providercomputers und schickt sie dem Benutzer zurück. Man darf sich solche Server nicht als Hardware vorstellen – ein Server ist ein Softwareprogramm, das auf dem Providerrechner installiert ist.

 

Einmal hin und retour

Was genau passiert nun, wenn ein Benutzer den Button „Suche abschicken" auf der Website drückt, und wo spielt die Datenbank dabei eine Rolle? – Gibt der Benutzer in dem Suchformular eine Anfrage ein und schickt sie ab, kommt eine Art Domino-Effekt ins Rollen: Zunächst wird die Anfrage vom Browser an den Webserver, dann von da an den Web-Applikationsserver und zu guter Letzt an die Datenbank weitergereicht.

Jeder Baustein trägt seinen Teil zur Verarbeitung der Anfrage bei. Schließlich gehen die Ergebnisse den gleichen Weg zurück zum Browser des Benutzers. Auf dem Rückweg kriegen die Daten dabei vom Web-Applikationsserver noch ein hübsches Design verpasst, d.h. sie werden in einer vom Webdesigner gestalteten Internet-Musterseite verpackt.

Damit die Vielzahl der beteiligten Bausteine reibungslos zusammenarbeitet, muss der Website-Planer ganz besonders darauf achten, dass die einzelnen Module auch richtig zueinander passen. Im Gegensatz zu den etablierten Webservern sind Web-Applikationsserver eine ziemlich neue Technologie, die in den letzten Jahren unter Hochdruck weiterentwickelt worden ist. Sie sind die Schlüsselkomponente für interaktive Internet-Projekte.

Der Domino-Effekt: Schritt für Schritt: Suchanfragen werden vom Web-Browser (beim Internet-User) bis zum Datenbankserver (beim Website-
Betreiber) durchgereicht und verarbeitet. Die Suchergebnisse gehen den gleichen Weg zurück. Angezeigt wird eine dynamisch erzeugte Ergebnisseite.

Wenn beispielsweise eine Liste aller Anwälte auf der Kanzlei-Website ausgegeben werden soll, holt der Applikationsserver alle Anwaltsdaten aus der Datenbank und verpackt sie in ein Internet-Dokument mit vorgegebenem Design.

Leider sind datenbankgestützte Websites durch die Vielzahl der beteiligten Bausteine schwierig in der Handhabung.

Wenn der Benutzer z.B. die Kanzleibroschüre anfordert, sorgt der Applikationsserver dafür, dass vom Benutzer die notwendigen Daten wie Name, Anschrift usw. aufgenommen werden können.

Außerdem leitet er die Bestellung auch gleich per E-Mail an den zuständigen Sachbearbeiter weiter. Man kann den Applikationsserver also als einen Koordinator sehen, dem die Ablaufanweisungen für die Interaktion mit Benutzern einprogrammiert werden.

Leider sind datenbankgestützte Websites durch die Vielzahl der beteiligten Bausteine wie Datenbank, Applikationsserver und Webserver ganz schön komplex und entsprechend schwierig in der Handhabung. Dieser Beitrag gibt nur einen Überblick darüber, was machbar ist und wie man an so eine Geschichte herangehen kann; für konkrete Projekte sollte man sich an Spezialisten wenden.

 

Dynamisch und schlau

Ein entscheidender Vorteil von dynamischen datenbankgestützten Internet-Angeboten gegenüber statischen Websites ist die Möglichkeit, eine programmierte Ablaufsteuerung einzubauen. Sie ermöglicht es, flexibel auf die Datenbankinhalte zuzugreifen.

Komplexe E-Commerce-Systeme etwa eignen sich nur für solche Projekte, bei denen Anweisungen im Stile von „lege Artikel A in den Warenkorb und zeige dann den Warenkorb an" beschrieben werden können. Solche Ablaufanweisungen werden meist in einer einfachen Programmiersprache festgelegt.

Dabei hat sich das Einfügen von zusätzlichen „Tags" (speziellen Befehlen) in die schon vorhandenen HTML-Seiten als bestes, weil einfachstes, Konzept herauskristallisiert. Das folgende Beispiel zeigt, wie eine Fallunterscheidung in die HTML-Seite eingebaut wird:

<% Name = Server.getVariable(Name)
IF Name="Gates" THEN
%>
Hello, Bill, how nice...
<% ELSE %>
Hello, Mr. <%= Name %>
<% ENDIF %>

Dieses kleine Programm kann direkt in eine „ASP"-Seite („Active Server Pages", s. weiter unten) eingebunden werden und begrüßt den Microsoft-CEO mit „Hello, Bill". Codesegmente werden durch die Tags „<%" und „%>" begrenzt.

Web-Applikations-server haben sich schnell wie kaum eine andere Softwaregattung entwickelt.

Obwohl das beschriebene Prinzip der Informationsverarbeitung in Internet-Datenbanken für fast alle erhältlichen Systeme dasselbe ist, ist mittlerweile ein regelrechter Glaubenskrieg um die beste Strategie ausgebrochen.

Web-Applikationsserver haben sich schnell wie kaum eine andere Softwaregattung entwickelt, und im Wettstreit der Softwareschmieden zeichnet sich nach wie vor kein Gewinner ab.

Die Evolution der Internet-Datenbanken hat vor ein paar Jahren mit „CGI" („Common Gateway Interface") angefangen und ist über immer ausgefeiltere Schnittstellen bei den heutigen Applikationsservern und E-Commerce-Systemen angelangt.

Immer noch versuchen die einzelnen Hersteller, durch besonders innovative Konzepte Marktanteile zu erobern. Es zeichnen sich mehrere Trends ab, zum Beispiel hin zu integrierten Systemen, bei denen für die Datenbank ein Applikationsserver-Aufsatz gestrickt oder ein Webserver gleich zusammen mit einem Applikationsserver als ein kompaktes Modul ausgeliefert wird.

 

Wie Sand am Meer

Web-Applikationsserver gibt es viele, und noch hat sich kein Ansatz marktbeherrschend durchsetzen können. Faktoren wie Zukunftssicherheit, Performanz, Sicherheit und Flexibilität sind die K.o.-Kriterien. Im folgenden wollen wir Ihnen wichtige Vertreter vorstellen; die Aufzählung ließe sich um mindestens ein Dutzend weiterer Applikationsserver ergänzen.

Der Arbeitssparer: Mit Microsoft Visual InterDev kann man aktive Internet-Seiten in ASP ("Active Server Pages") relativ bequem programmieren. Komplexe Websites werden von InterDev aus direkt auf dem Webserver verwaltet.

Hier ein vergrößerter Ausschnitt:

Microsoft Visual Interdev 6.0
Microsoft hat mit Visual InterDev (s.Screenshot links) eine Entwicklungsumgebung für seine „Active Server Pages" (ASP) auf den Markt gebracht. InterDev bietet einen komfortablen Editor zum Bearbeiten der Seiten und umfangreiche Website-Management-
Funktionen. Das Programmiersystem ASP ist nicht auf eine bestimmte Programmiersprache fixiert, sondern gibt lediglich die Richtlinien für das Einbinden von VBScript, JavaScript oder ähnlichen Sprachen vor. Kritikpunkte sind die gewöhnungsbedürftige komplizierte Entwicklungsumgebung und die zu starke Auslegung auf Microsoft Internet Information Server als Webserver. Dennoch ist InterDev das momentan vermutlich ausgereifteste Werkzeug.

Allaire Cold Fusion 4.0
Im Gegensatz zu Visual InterDev läuft Cold Fusion auf vielen Webservern unterschiedlicher Hersteller und ist kompatibel zu den gängigen Betriebssystemen wie Microsoft Windows, Sun Solaris oder Linux. Programmierung und Datenbankzugriff erfolgen mittels einer eigenen Sprache („CFML – Cold Fusion Markup Language").

Cold Fusion fällt vor allem durch seinen Funktionsumfang und die einfache Bedienbarkeit positiv auf, bietet aber für große Websites nur eingeschränkte Skalierbarkeit und Sicherheitsmechanismen.

Oracle8i und Oracle Application Server
Von Oracle gibt es zwei Systeme für Web-Programmierung: Oracle8i und den Oracle Application Server. Oracle8i ist eine Datenbank, die speziell auf die Anforderungen des Internets zugeschnitten wurde, also beispielsweise das Speichern von Grafiken und Java-Programmen. Ein Webserver ist bereits integriert. Für die Programmierung sind kleine Java-Programme vorgesehen, sogenannte „Java-Servlets".

Während Oracle8i alle nötigen Komponenten für den Betrieb einer Website schon selbst mitbringt, versucht es der Oracle Application Server mit der entgegengesetzten Strategie: Er liefert selbst nur das Nötigste, lässt sich dafür aber in vielfältige Umgebungen nahtlos einzufügen. Eine Vielzahl von Webservern und Betriebssystemen wird unterstützt.

IBM WebSphere Application Server
WebSphere ähnelt dem Oracle Application Server in der Funktionsweise. Eine Besonderheit ist aber der von IBM verfolgte vielversprechende Ansatz namens „Java Server Pages" (JSP), der an ASP angelehnt ist und den Vorteil bietet, dass eine Website komplett in Java (ohne Einsatz anderer Programmiersprachen) programmiert werden kann. Zusammen mit dem mitgelieferten leistungsfähigen IBM-Webserver bildet WebSphere eine runde Lösung für datenbankgestützte Sites.

PHP
PHP ist der einzige kostenlos verfügbare Web-Applikationsserver, der in der Oberliga der hier diskutierten professionellen Anwendungen mitspielen kann. Zusammen mit Linux, dem Apache-Webserver und der „MySQL"-Datenbank bildet PHP ein komplett kostenloses Web-Publishing-System namens „LAMP". LAMP ist bei Linux oft schon dabei (z.B. auf der S.u.S.E.-Installations-CD) und ist teilweise sogar deutlich einfacher zu bedienen als die Software der kommerziellen Konkurrenten. Die Komponenten haben sich vielfach bewährt und kommen auch in sehr großen Websites erfolgreich zum Einsatz. Leider fehlt bei PHP eine komfortable Entwicklungsumgebung.

 

Worauf man achten sollte

Das Angebot an Software-Tools für Internet-
Datenbankanbindungen präsentiert sich in verwirrender Vielfalt. Zusammen mit dem verantwortlichen Programmierer muss man sehr genau abwägen, welchem System man den Vorzug gibt. Es kann hilfreich sein, sich im Vorfeld einer Entscheidung erst einmal die folgenden Fragen zu stellen:

  • Wird wirklich ein Web-Applikationsserver und somit individuelle Programmierung benötigt oder erfüllt ein fertiges System die Anforderungen besser? Fertige Software-Lösungen sind vor allem für den Bereich E-Commerce (Internet-Shops) erhältlich.

  • Wer soll die Internet-Datenbank letztendlich bedienen und pflegen? Erfolgt die Wartung nebenbei durch Personal mit eigentlich anderen Zuständigkeiten oder durch speziell geschulte Fachkräfte (Kosten!)? Die Komplexität von datenbankgestützten Websites erfordert leider immer noch sehr detailliertes Wissen.

  • In welche bestehenden betriebswirtschaftlichen Umgebungen soll die Internet-Datenbank integriert werden? Oft bietet sich eine Anbindung an schon bestehende Datenbanken, etwa Mitarbeiterdatenbanken an.

  • Wo soll der Webserver samt Internet-Datenbank schließlich laufen? In der eigenen Firma oder bei einem Provider? Der Provider kann die technische Wartung der Software übernehmen und dabei sicherlich mehr Erfahrung als die kanzleiinternen Mitarbeiter einbringen. Andererseits schränkt diese Lösung die Flexibilität ein, da u.U. jede Änderung eine Absprache erfordert.

  • Ist der gewählte Applikationsserver genügend flexibel, um auch in Zukunft alle Erfordernisse zu erfüllen? Wie gut sind Bedienbarkeit und Leistungsfähigkeit der Schnittstellen?

Mit diesen teilweise recht haarigen Fragen sollte man sich am besten an eine Firma wenden, die professionelle Internet-Programmierung anbietet. Große Unternehmen wie IBM oder Oracle können damit dienen, aber auch kleinere Newcomer.

Anbieter von Internet-Programmierung findet man über die gelben Seiten („Internet", „EDV") oder über Anzeigen in Internet-Fachzeitschriften. Die Hersteller von Applikationsservern bieten ihre Services natürlich auch auf ihren Websites an. [2000]

Mit Tom Henne zusammen wurde die recherchierbare Anwalts-Datenbank in Access für die Sozietäts-Website Hasche Eschenlohr Peltzer Riesenkampff Fischötter in ASP (Active Server Pages) realisiert, die in diesem Beitrag auch beschrieben wird.

(c) 1989–2008 Oliver Weiss Design Up! 
 Design / Illustration / Art Sale / Multimedia / Journalism / Contact
 
 Bestseller
350,000+ Copies Sold!
Random House Book Cover
Design for Nonfiction
Bestseller
>more | >more books


My Oktoberfest Poster
>more
Official Oktoberfest Design 2008

POPULAR TAGS

Tom Buhrow Walter Rothschild Year of Mathematics Shantaram Globalisierung Richard David Precht Oktoberfest

CONTACT ME!

Oliver Weiss
Germany
Fon +49-86 41-14 65
info@oweiss.com
www.oweiss.com
IMAGES FOR LICENSING:
The Oliver Weiss Image Stock Archive
Take me to the image archive!
>Click here!
Search my online stock archive from 6,000 illustrations!
Animals
Architecture
Art
Books
Business
Children
Communication
Education
Environment
Family
Food
Fun
Horoscopes
Legal
Lifestyle
Marketing
Media
Medical
Music
Nature
Office
People
Politics
Psychology
Religion
Science
Seasons
Sports
Symbols
Travel