Die Suchfunktion in modernen Software-Lösungen

Aus Winfwiki

Wechseln zu: Navigation, Suche

Fallstudienarbeit

Hochschule: Hochschule für Oekonomie & Management
Standort: Düsseldorf
Studiengang: Bachelor Wirtschaftsinformatik
Veranstaltung: Fallstudie / Wissenschaftliches Arbeiten
Betreuer: Prof._Dr._Uwe_Kern
Typ: Fallstudienarbeit
Themengebiet: GUI Design
Autor(en): Lukas Koschitzki, Alexander Laws
Studienzeitmodell: Abendstudium
Semesterbezeichnung: WS10
Studiensemester: 4
Bearbeitungsstatus: Bearbeitung abgeschlossen
Prüfungstermin:
Abgabetermin:


Inhaltsverzeichnis


1 Abkürzungsverzeichnis

AbkürzungBedeutung
CRMCustomer Relationship Management
ERPEnterprise Resource Planning
MP3MPEG Audio Layer III (Verfahren um Audiodaten zu komprimieren)
WWWWorld Wide Web

2 Abbildungsverzeichnis

Abb.-Nr.Abbildung
1Binärbaum
2Funktionsweise Metasuchmaschinen
3Aufbau des ID3 Tags Version 1
4Ergebnisvorschau MelZoo.com
5Visualisierung geographischer Aspekte
6Visualisierung zeitlicher Aspekte
7Tag Cloud
8Startseite von Google
9Autovervollständigung von Google
10Google Advanced Search
11Google Bildersuche
12Suche eines Artikels über Direkteingabe
13Suche eines Artikels mit Autovervollständigung
14Suche eines Artikels über Detailsuche
15Darstellung von hierarchischen Strukturen
16Auswahlhilfe bei einem Datum

3 Tabellenverzeichnis

Tabelle Nr.Quelle
1Anzahl Vergleiche in Abhängigkeit von der Anzahl an Elemente
2Thesaurusnorm DIN 1463-1
3Soundex Zuordnung Ziffer zu repräsentativen Buchstaben
4Mögliche Kopplung der tolerierten Levenshtein Distance mit der Länge der Zeichenkette
5Erläuterung der Boolschen Operatoren anhand eines Beispiels

4 Einleitung

Informationen und Daten werden heutzutage computergestützt verarbeitet und gespeichert. Die zugrunde liegende Datenmenge kann dabei so groß werden, dass es unmöglich ist, die gewünschten Daten mit manuellen Verfahren zu ermitteln. Neben dem Datenvolumen ergibt sich die Notwendigkeit einer Suchfunktion auch dadurch, dass neben Texten weitere unterschiedliche Inhalte (z.B. Bilder und Musik) digitalisiert werden. So wird es immer wichtiger, dass die Anwendung eine computergestützte Suche anbieten, um ein effizientes Arbeiten mit der Software zu ermöglichen. Diese Suchfunktion muss jedoch auch auf Grund der Menge den jeweiligen Anforderungen optimiert werden, um die Suche schnell durchführen zu können.

Ein Suchvorgang lässt sich dabei in drei Schritte aufteilen:

  1. Der Benutzer gibt seine Suchkriterien ein und führt die Suche aus
  2. Anhand eines Suchverfahrens wird der Datenbestand mit den Suchkriterien verglichen
  3. Das Resultat wird dem Benutzer angezeigt, so dass dieser damit weiterarbeiten kann

Aus dem beschrieben Suchvorgang lassen sich für die Suchfunktion drei große Themenbereiche klassifizieren, die in der nachfolgenden Arbeit anhand der Fragestellung erläutert werden:

  • Informationsbereitstellung: Wie müssen Informationen oder Daten intern verarbeitet/ gespeichert werden, damit eine effiziente Suche nach dem Inhalt möglich ist?
  • Informationsermittlung: Wie kann der Nutzer seine Suche durchführen um sein Ergebnis schnell und präzise zu finden?
  • Informationsdarstellung: Wie lassen sich die Suchergebnisse optisch am besten aufbereiten?

Abschließend wird anhand von zwei bekannten Fallbeispielen die Suchfunktion in der Praxis aufgezeigt und analysiert. Als erstes Beispiel dient die Internet Suchmaschine "Google", die die Suche nach Inhalten im Webumfeld erleichtert. Danach werden die speziellen Suchanforderungen in einer ERP / CRM Lösung beispielhaft dargestellt. Solche Software kommt in fast jedem Unternehmen zum Einsatz.

5 Informationsbereitstellung

Bei der Informationsbereitstellung geht es darum, die Daten so aufzubereiten, dass sie anschließend mit Hilfe eines Suchverfahrens leicht ermittelt werden können. Ziel ist es eine Struktur aufzubauen, die eine Suche in kurzer Zeit (wenige Sekunden) ermöglicht.
Die Wissenschaft, die sich mit dem Bereitstellen und Suchen von Informationen beschäftigt, wird Information Retrieval genannt. Im Information Retrieval "werden in der Fachinformation alle Verfahren zusammengefasst, die mit der Aufbereitung, Speicherung und Wiedergewinnung (Recherche) von Wissen (Texte, Fakten) zu tun haben."[1].

5.1 Indexierung

Angelehnt an die DIN 31623-1 definiert Nohr die Indexierung als "die Gesamtheit der Methoden und Verfahren sowie deren Anwendung, die zur Zuordnung von Metainformationen zu Dokumenten mit dem Ziel der Inhaltserschließung und der gezielten Wiederauffindung."[2] Die Metainformationen werden oft Deskriptoren bezeichnet. Diese können entweder Schlagworte oder Stichwörter sein, welche so gewählt werden sollten, dass sie etwas über den Inhalt des Dokumentes wiedergeben. Stichwörter werden aus dem Dokument selber entnommen, während Schlagworte in Relation zum Inhalt des Dokumentes stehen, aber nicht im Dokument vorkommen.[1]


Ziel der Indexierung ist es also, für Dokumente aussagekräftiger Schlagworte zu finden, um anschließend diese wieder leichter aufzufinden. Dies kann anhand eines Beispiels leichter erläutert werden. Nehmen wir als Dokument das Buch "Java ist eine Insel" von Christian Ullenboom. Das Buch behandelt Themen der Java Programmierung und hat inhaltlich wenig mit der Insel Java zu tun. Deshalb würden die Deskriptoren eher auf den technischen Askept zielen. Neben den Autorennamen würden sich also folgende Deskriptoren anbieten: "Computer", "Programmierung", "Java.


Die verschiedenen Verfahren zur Indexierung werden in drei Hauptkategorien unterteilt[3]:

  • intellektuell: die Dokumente werden inhaltlich intellektuell (manuell) analysiert um diesen die entsprechenden Deskriptoren zuteilen zu können.
  • computerunterstützt: mit Zuhilfenahme eines Computers werden die vom Computer vorgeschlagenen Deskriptoren durch einen Anwender dem Dokument zugewiesen. Der Anwender kann die Vorschläge übernehmen, verwerfen oder überarbeiten. Da die Deskriptoren vom Computer ermittelt werden, die endgültige Indexierung aber noch vom Anwender aktiv bestätigt werden muss, spricht man hier auch von einer semiautomatischen Indexierung.
  • automatisch: der Computer führt die Ermittlung der Deskriptoren automatisch durch und ordnet sie den Dokumenten zu.

Während intellektuelle Verfahren mit einem höheren Aufwand und höheren Kosten einhergehen, bieten diese meistens in Abhängigkeit von der Fähigkeit des menschlichen Indexers eine höhere Qualität. Die Qualität der automatischen Indexierung ist stark von den Stichwörtern im Quelltext abhängig. Gerade bei Textinterpretationen (Beispiel: Die überschrift "Kamps backt kleine Brötchen" als Methapher für einen Umsatzeinbruch) haben automatische Verfahren ihre Schwächen[4].

Zusätzlich muss unterschieden werden, ob eine terminologische Kontrolle während der Indexierung stattfindet. Durch diese zusätzliche Eigenschaft werden folgende Fehler berücksichtigt[5]:

  • Homonyme: gleiche Wörter, die unterschiedliche Bedeutungen aufweisen. Beispiel: Java (Insel und Programmiersprache)
  • Synonyme: unterschiedliche Wörter, die die gleiche Bedeutung haben. Beispiel: Samstag und Sonnabend
  • Kompositazerlegung: fälschliche Zerlegung eines Wortes in mehrere Wörter. Beispiel: 'Informationswissenschaft' in 'Information' und 'Wissenschaft'


5.1.1 Probleme

Werden Texte automatisch indexiert, gibt es durch die automatische Verarbeitung mehrere Probleme, die durch die Spracheigenschaften entstehen können. Es eignen sich selten die Wörter aus dem Dokument um diese als Indexterme zu nutzen. Daher wird der Textinhalt für die Indexierung aufbereitet.


Um Wörter nicht nur als eine Aneinanderreihung von Zeichen zu sehen, und diese nur als Zeichen bei der Suche zu vergleichen, werden die Begriffe semantisch ausgewertet. Dies umgeht die Problematik bei der Suche nach einem Begriff ohne den Numerus (Singular/Plural) bei Nomen oder die Konjugation bei Verben zu berücksichtigen[6]. Ein Beispiel wäre die Suche nach "die Fische schwammen". Durch eine Grundformreduktion werden die Wörter in ihre grammatikalische Grundform zurückgeführt. Das Wort "Fische" wird das Substantiv in die Form Nominativ Singular, also "Fisch", und das Verb "schwammen" in den Infinitiv "schwimmen" reduziert. Zusätzlich kann eine Stammformreduktion durchgeführt werden. Diese Formen der Informationsreduktion wird als Stemming oder Lemmatisierung bezeichnet und sorgt dafür, dass die Suche nach "Fisch" und "Fische" die gleichen Ergebnisse liefert, da diese vom Informationsgehalt gleich sind.

Bei einer Volltextindexierung besteht häufig das Problem, dass ein Text oft aus Wörtern besteht, die zwar des öfteren vorkommen, die aber als Indexbegriff für die Suche nicht hilfreich sind. Dazu gehören hauptsächlich folgende Wortarten:

  • Artikel: der, die, das, ein, eine, eines
  • Präpositionen: in, unter, auf
  • Pronomen: ich, du, er, sie, es
  • Adverben: hier, dort, da

Diese Stoppwörter werden bei der Indexierung oft gefiltert, weil diese für sich allein nicht sinntragend sind[7].

5.1.2 Datenstrukturen

Für einen effektiven Zugriff auf die indizierten Daten, muss es passende Datenstrukturen geben, die diesen Index abbilden. Dabei handelt es sich um eine Ansammlung von Zeigern, die auf die eigentlichen Daten verweisen.

Der Grad der Optimierung der Suche durch den Index wird durch die jeweilige Laufzeit der Suche nach einem Begriff definiert. Weitere Faktoren wie der Speicherbedarf oder das Verhalten bei Änderungen der Menge der Suchbegriffe werden für diese Betrachtungsweise nicht herangezogen.

Für die Betrachtung der Laufzeit hat sich die O-Notation durchgesetzt, die eine Aussage über das Wachstum der Laufzeit in Abhängigkeit zu der zugrunde liegenden Daten macht.[8] Sei n die Anzahl der zu suchenden Einträge, dann bedeutet eine Laufzeit von O(n), dass für die Suche nach einem Begriff n Vergleiche durchgeführt werden müssen. Gleichzeitig bedeutet eine Verdoppelung der Einträge ebenfalls eine Verdoppelung der Laufzeit. Diese Laufzeit wird als linear bezeichnet.

Unsortierte Reihen
Unsortierte Reihen sind keine indizierten Datenstrukturen und werden für einen Vergleich der Laufzeit herangezogen. Bei unsortierten Reihen müssen alle Elemente sequenziell miteinander verglichen werden, so dass im worst-case Szenario, also der Laufzeit mit den schlechtesten Voraussetzungen, bei n Elementen n Vergleiche durchgeführt werden müssen.[9] Eine leichte Optimierung kann durch eine Vorsortierung der Reihe erreicht werden, so dass die Suche an der Stelle, ab der die Ordnungsbegriffe größer sind als der Suchbegriff, abgebrochen werden kann.

Abbildung 1: Binärbaum; Quelle: www.wikipedia.de
Abbildung 1: Binärbaum; Quelle: www.wikipedia.de

Binärbäume
Indizes werden oft als Bäume dargestellt. Für eine Suche sind Binärbäume sehr effektiv (daher auch oft der Name Binärer Suchbaum), setzen aber voraus, dass die Daten bereits sortiert sind.

Ein Binärer Baum zeichnet sich durch folgende Eigenschaften aus:[10]

  • besteht auf Knoten und Kanten
  • Knoten kann Kante zu max. 2 Nachfolgern (Kindern) haben
  • Knoten, auf den kein anderer Knoten zeigt (kein Elternknoten haben), heißt Wurzel
  • Knoten, der auf keine weiteren Knoten zeigt (keine Kinder haben), heißen Blätter
  • Knoten, die weder Wurzel, noch Blatt sind, nennt man Innerer Knoten
  • Höhe des Baumes ist die höchste Anzahl an Schritten von der Wurzel zum Blatt

Da vorausgesetzt wurde, dass die Daten im Baum sortiert sind, sind zudem die Werte links vom aktuellen Knoten alle kleiner, und die Werte rechts vom aktuellen Knoten größer als der aktuelle Knoten (Vgl. Abbildung Binärbaum). Für eine optimale Nutzung sollte der Baum perfekt sein.

Eine Definition für einen perfekten Binärbaum lautet:

"Ein vollständiger Baum ist ein Baum, in dem jeder Knoten entweder keinen oder genau zwei Nachfolger hat. Ein perfekter Binärbaum ist ein vollständiger Binärbaum, in dem alle Blätter auf ein und derselben Ebene liegen. Die Anzahl der Knoten eines perfekten Binärbaums beträgt 2k - 1 für k = Höhe + 1."[10]

Beim Suchvorgang wird der Suchbegriff mit dem Knoteninhalt verglichen. Angefangen wird bei der Wurzel. Entspricht der Knoteninhalt dem Suchbegriff, ist die Suche abgeschlossen. Ist der Suchbegriff kleiner als der Knoteninhalt, wird im linken Teilbaum weitergesucht, ansonsten im rechten Teilbaum. Die Suche ist abgeschlossen, wenn der Suchbegriff gefunden wurde, oder es keine weiteren Kanten zu anderen Knoten am aktuellen Knoten gibt. Die maximale Anzahl an Vergleichen, um einen Begriff in Baum zu finden, entspricht somit der Höhe des Baumes. Aus der obigen Definition heraus ergeben sich aus der Umkehrfunktion für die Suche bei k Elementen log2(k) Vergleiche. Dies entspricht also einer logarithmischen Laufzeit von O(n) = log2(n).

Zusammenfassung
Um die Steigerung der Effizienz bei der Suche durch eine geeignete Datenstruktur zu demonstrieren, soll abschließend eine Tabelle die Laufzeiten der unterschiedlichen Strukturen dargestellt werden. Es werden die maximalen Vergleiche ausgewiesen, die für eine Suche benötigt werden.

Anzahl Elemente Unsortierte Reihe Sortierter Binärbaum
1 1 1
10 10 3
100 100 7
1000 1000 10
10000 10000 13
100000 100000 17
1000000 1000000 20
Tabelle 1: Anzahl Vergleiche in Abhängigkeit von der Anzahl an Elemente

Wie zu erkennen ist, ergeben sich bei der binären Suche mit steigender Anzahl an Suchelementen, erhebliche Effizienzsteigerungen. Dies lässt sich an einem Beispiel besser verdeutlichen: Die Suche in einer Menge von 1000000 Einträgen verringert sich um den Faktor 50000. Angenommen die binäre Suche würde in dieser Größenordnung 10 ms dauern, dann würde die lineare Suche 500 Sekunden dauern um alle Einträge zu durchsuchen.

5.2 Suchmaschinen

Im Zeitalter des Internets, in dem fast 300 Millionen Homepages zugänglich sind[11], die wiederum aus mehreren Webseiten bestehen, sind neue Methoden erforderlich, um diesen Inhalt zu durchsuchen und zugänglich zu machen. Bei dieser Datenmenge, und jeden Tag kommen neuen Informationen hinzu (z.B. Tagesnachrichten), kann eine Erfassung der Daten nur maschinengestützt erfolgen. Eine Suchmaschine wird dabei in drei Komponenten unterteilt[12]:

  1. Crawler: der Crawler (auch Spider, Bot, Robot genannt) ist für das Ermitteln und Sammeln des neuen Inhalts zuständig. Sogenannte Hyperlinks, also Verweise auf andere Webseiten, dienen dem Crawler als Orientierungspunkt um auf neuen Inhalt zu stoßen.
  2. Indexer: der Indexer verarbeitet die gesammelten Daten. Dieser führt die Indexierung des Dateninhalts durch und erstellt einen Index um bei der anschließenden Suche nach einem bestimmten Indexbegriff auf die entsprechende Seite verweisen zu können.
  3. Abfragemodul: das Abfragemodul dient dem Endanwender zur Eingabe der Suchanfrage und Darstellung des Suchergebnisses
Abbildung 2: Funktionsweise Metasuchmaschinen. Quelle: http://de.wikipedia.org/wiki/Metasuchmaschine
Abbildung 2: Funktionsweise Metasuchmaschinen. Quelle: http://de.wikipedia.org/wiki/Metasuchmaschine

Auf Grund der Tatsache, dass es keine Suchmaschine gibt, die den Inhalt des gesamten Internets indexiert vorliegen hat[13], gibt es als spezielle Form der Suchmaschinen die Metasuchmaschinen. Diese haben keinen eigenen indexierten Datenbenstand, sondern schicken die Anfrage an mehrere andere Suchmaschinen und listen das Ergebnis aller Treffer auf. Dieser Prozess wird in der Grafik dargestellt.

Da das Ergebnis schnell unübersichtlich werden kann, wird die Treffermenge meistens noch überarbeitet, bevor diese an den Anfrager bereitgestellt wird. Von der Internet Society wurden 1998 sieben Kriterien für eine Metasuchmaschine definiert, von denen mindestens 6 zutreffen müssen [14]

  • Parallele Suche: die einzelnen Suchmaschinen werden parallel angesprochen und nicht wie in sogenannten All-in-One Formularen nacheinander verarbeitet
  • Ergebnis-Merging: Das Ergebnis muss zusammenführt und in einem einheitlichen Format darstellen werden
  • Dublettenbeseitigung: doppelte Einträge werden erkannt und beseitigt
  • Logische Operatoren: es stehen mindestens die logischen Operatoren 'AND' und 'OR' zur Verfügung und werden an die Suchmaschinen weitergegeben
  • kein Informationsverlust: werden von der Suchmaschine zusätzliche Informationen angeboten (z.B. eine Kurzbeschreibung), muss eine Weitergabe sichergestellt sein
  • Search Engine Hiding: Spezielle technische Funktionsweisen der verwendeten Suchmaschine dürfen keine Rolle spielen
  • Vollständige Suche: es werden alle Treffer einer Suchmaschine verarbeitet, bis keine weiteren Treffer mehr geliefert werden

Grundsätzlich stehen alle Online Suchmaschinen vor ähnlichen Problemen. Diese lassen sich wie folgt einordnen[15]:

  • Große Datenmenge: Die Datenmenge im Internet ist sehr groß und wächst täglich rasant an, so dass die Suchmaschinen mit der Indexierung der Informationen nicht hinterherkommen. Zusätzlich ist die Indexierung des sogenannten Deep Webs nicht möglich, weil der Inhalt zum Beispiel kennwortgeschützt oder erst durch Akzeptieren von Nutzungsbedingungen zugänglich ist.
  • Aktualität: Für die Suchmaschinen Betreiber stellt sich oft die Frage, wie oft eine Webseite indexiert werden muss. Es gibt Seiten, die sich selten ändern, da sie statischen Inhalt z.B. über ein Sachgebiet zur Verfügung stellen. Als Gegenbeispiel ändern sich Nachrichtenseiten teilweise im Minutentakt.
  • Verständnis: Der Suchende hat oft Probleme der Suchmaschine seine Suchanfrage zu formulieren. So unterscheidet der Suchende oft nicht zwischen der Singular- und Pluralform eines Begriffs, was für die Suchmaschinen ein großer Unterschied ist.
  • Spam: Durch sogenanntes Suchmaschinen Spamming versuchen Seitenbetreiber die Algorithmen der Suchmaschinen so auszunutzen, dass ihre Seite im Ranking einen besseren Platz einnimmt. Dadurch sind die Suchmaschinenbetreiber gezwungen ihren Algorithmus anzupassen und die Suchanfrage liefert nicht das erwartete Ergebnis.
  • Rechtsfragen: Im WWW sind die Seiten weltweit zugänglich. In unterschiedlichen Ländern herrschen andere Rechtslagen, so dass die Suchmaschinenbetreiber die Rechtslage des jeweiligen Landes berücksichtigen müssen.

5.3 Metadaten

Als Metadaten werden Zusatzinformationen über bestimmte Daten ("Daten über Daten") bezeichnet. Eine gültige Definition für Metadaten stammt von Tim Berners-Lee, dem Erfinder des WWW und Direktors des W3 Konsortiums (W3C):

"Metadaten sind maschinenlesbare Informationen über elektronische Ressourcen oder andere Dinge."[16]

Metadaten sind besonders bei Daten, die nicht über Textinhalt dargestellt werden, wichtig, da es die einzige Möglichkeit ist diese anhand der Meta Informationen zu suchen. Dies trifft insbesondere auf akustische und visuelle Daten in Form von Bildern oder Musik zu. Aber auch für textuelle Daten gibt es zahlreiche Beispiele, wie Metadaten genutzt werden können. So werden Bücher bei der Katalogisierung oft über die Metadaten wie z.B. Autor, Buchtitel, Erscheinungsjahr, Verlag, etc. kategorisiert.


Für den effektiven Einsatz von Metadaten sollte es für die Definition und Anwendung einen Standard geben. Erst ein einheitliches Vorgehen ermöglicht eine effiziente Nutzung der Metadaten. Für die Definition von Büchern in einer Bibliothek wird z.B. die "Metadaten-Initiative Deutscher Bibliotheken" (META-LIB)[17] verwendet.


Die Nutzung von Metadaten im Audiobereich wird anhand des ID3 Tags[18] erläutert. Es handelt sich dabei um Zusatzinformation um eine Audiodatei im MP3 Format näher zu beschreiben. Die Suche nach Audiodaten bevor es das ID3 Tag gab beschränkte sich über die Dateinamen, sowie die Verzeichnisstruktur, in der die Daten abgelegt wurden. Dies setzt eine Pflege der Dateinamen voraus, wobei dieser alle relevanten Informationen, nach denen man suchen möchte, beinhaltet. Möchte man z.B. die Suche auf den Künstler und den Titel durchführen, so muss die Datei in Namen den Künstlernamen, sowie den Namen des Titels beinhalten. Beispiel: KUENSTER - TITLE.MP3
Die Problematik einer solchen Vorgehensweise birgt mehrere Probleme:

  • die Datennamen können durch die Informationen lang und unübersichtlich werden
  • Länge Dateinamen ist durch das Betriebssystem eingeschränkt
  • Sonderzeichen werden von den meisten Betriebssystem nicht akzeptiert oder fehlinterpretiert


Abbildung 3: Aufbau des ID3 Tags Version 1; Quelle: Meinel (2009) S. 240
Abbildung 3: Aufbau des ID3 Tags Version 1; Quelle: Meinel (2009) S. 240

Diese Probleme werden durch den Einsatz des ID3 Tags beseitig. Diese Metadaten wurden in der ersten Version ans Ende der Datei angefügt, da man befürchtete, ältere Abspielgeräte könnten mit den zusätzlichen Daten Schwierigkeiten haben, wenn diese die Daten als Audiodaten interpretieren würden. Der Aufbau des ID3 Tags sieht einen festen 128 Byte Block am Ende der Datei vor. Erkannt wird dieser Bereich an den Startinformationen "TAG" in den ersten drei Bytes. Anschließend stehen jeweils 30 Zeichen für die Information über den Titel, den Künstler, den Namen des Albums, sowie eines individuellen Kommentars zur Verfügung. Vier Bytes werden für das Erscheinungsjahr, sowie ein Byte um das Lied einer Musikgenre einzuordnen, reserviert. Die Kodierung des Genres wurde fest vereinbart und kann anhand einer festgelegten Liste[19] umgesetzt werden.

Durch diese Metadaten konnten Abspielgeräte diese Informationen während des Abspielens anzeigen, aber auch für die Suche nach bestimmten Liedern erweist sich das ID3 Tag als hilfreich. In der Version 2 des ID3 Tags ist die Beschränkung auf 30 Zeichen aufgehoben und es können längere und zusätzliche Informationen, nach denen gesucht werden kann, aber auch die detailliertere Angaben (z.B. Coverbild des Albums), angegeben werden.

5.4 Thesaurus

Die gefundenen Deskriptoren der Indexierung stehen nach einer automatischen Indexierung für sich. Das heißt, es gibt zuerst keine Beziehung zwischen Begriffen. Es fehlt also eine Erfassung des semantischen Umfeldes der Begriffe. Dies geschieht mit Hilfe von Thesauri, welche ein kontrolliertes Vokabular aufweisen, das die Begriffe zuerst hierarchisch darstellen, und diese mit Relationen zueinander verknüpft[20]. Dabei unterscheidet man zwischen folgenden Relationen:

  1. Äquivalenzrelation: gleichwertige Begriffe werden in Beziehung gesetzt
  2. Hierarchierelation: es werden Über- und Unterordnungen zwischen den Begriffen erstellt
  3. Assoziationsrelation: weder eine hierarchische noch eine äquivalente Relation zwischen Begriffen

Durch die Relationsbildung zwischen den Begriffen wird ein semantisches Netz aufgebaut. Mit Hilfe dieses Netzes können andere Begriffe zueinander in Beziehung gesetzt werden und bei der Suche berücksichtigt werden. Erst durch diesen Wortschatz ist es für Suchmaschinen möglich die Suchanfrage semantisch auszuwerten und entsprechende Treffer zu erzeugen.

Die Darstellung der Relationsarten in einem Thesaurus ist vom Deutschen Institut für Normierung in der DIN 1463-1 definiert:

Kürzel Bezeichnung
BF Benutzt für
BS Benutze Synonym
OB Oberbegriff
UB Unterbegriff
VB Verwandter Begriff
SB Spitzenbegriff
Tabelle 2: Thesaurusnorm DIN 1463-1. Quelle: Wikipedia.de (2011)

6 Informationsermittlung

Die Ermittlung der Information kann unterschiedlich erfolgen. Es werden mehrere gängige Verfahren und Techniken erläutert, die für eine Suchanfrage genutzt werden können.

6.1 Fuzzy Suche / Phonetische Suche

Wenn bei der Suche nach Zeichenketten das Wissen über die richtige Schreibweise eines Begriffs fehlt, kommt oft die Fuzzy Suche zum Einsatz. Sie erlaubt es Begriffe zu finden, die dem gesuchten Wort ähneln. Dies ist besonders hilfreich bei der Suche nach schwierigen Fachbegriffen oder Namen. Gerade bei Namen besteht oft die Problematik, dass diese phonetisch gleich (gleich klingen) sind und die exakte Schreibweise nicht bekannt ist. Aber auch Suchbegriffe mit Rechtschreibfehler führen durch die hohe Fehlertoleranz mit einer großen Wahrscheinlichkeit zu einem Ergebnis. Durch die nicht exakte Suche nach dem Suchbegriff wird die Methode auch unscharfe Suche genannt.

Bei der Fuzzy Suche unterscheidet man zwischen den Phonetischen und Distanzverfahren. Die Phonetischen Verfahren versuchen den sprachlichen Klang zu berücksichtigen. Ein patentiertes phonetisches Verfahren ist SOUNDEX, welches aus einem Begriff einen vierstelligen Code, bestehend aus einem Buchstaben (Similarity Key) und drei folgenden Zahlen (Transkriptionsvarianten) besteht, generiert. Dabei sollen gleichklingende Wörter den gleichen Code generieren[21]. Ursprünglich diente das Verfahren zur Indexierung englischer Familiennamen mit unterschiedlicher Schreibweise (z.B. 'Meyer' und 'Maier'). Die Codierung der Buchstaben erfolgt anhand einer definierten Zuordnung:

Ziffer Repräsentative Buchstaben
0 A, E, I, O, U, Y, H, W
1 B, F, P, V
2 C, G, J, K, Q, S, X, Z
3 D, T
4 L
5 M, N
6 R
Tabelle 3: Soundex Zuordnung Ziffer zu repräsentativen Buchstaben. Quelle: Sound-ex.de


Das Verfahren erfolgt dabei in vier Schritten[22]:

  1. Alle Zeichen nach dem Startsymbol werden entsprechend ihrem Code ersetzt
  2. Wiederholungen von Ziffern werden eliminiert
  3. Alle Zeichen mit Code 0 werden eliminiert
  4. Die ersten vier Zeichen des Ergebnisses sind der Code

Das die Codierung nicht genug Ziffern, wird es mit Nullen aufgefüllt. Die Vorgehensweise des Verfahrens wird anhand des Wortes "Wissenschaft" beispielhaft aufgezeigt:


W I S S E N S C H A F T
W 0 2 2 0 5 2 2 0 0 1 3
W 2 5 2 1 3

Der Soundex Code für den Begriff "Wissenschaft" ergibt also "W252". Gleichklingende Wörter sollen anhand des gleichen Code erkannt werden. Jedoch hat das Verfahren mehrere Nachteile, die ein genaues Suchergebnis erschweren[23]:

  1. Das Soundex Verfahren spezialisiert sich auf angelsächsische Nachnamen
  2. Der Anfangsbuchstabe ist für den Soundex Code entscheidend. So würden z.B. die Namen 'Kristian' und 'Christian' nicht zum gleichen Ergebnis führen, da sie einen anderen Similarity Key aufweisen.
  3. Tippfehler/Zeichendreher werden nicht erkannt und führen somit zu unterschiedlichen Codes


Einen anderen Weg gehen die Distanzverfahren. So wird beim Levenshtein-Verfahren eine Zahl (Distanz) errechnet, die ausdrückt, wie ähnlich die Begriffe zu einander sind. Die Distanz drückt die minimale Anzahl der Einfüge, Löschen und Ersetz Operationen aus, um das Suchwort in das Vergleichswort zu überführen[24]. Je niedriger die Distanz zwischen zwei Begriffen, desto wahrscheinlicher ist es, dass diese Wörter sich ähneln. Die Funktionsweise zur Berechnung der Distanz wird anhand eines Beispiels mit den Begriffen 'Klasse' und 'Masse' erläutert:

  • Klasse
  • Mlasse (Ersetzen des Buchstaben K in M)
  • Masse (Löschen des Buchstaben l)

Die Distanz zwischen den Begriffen 'Klasse' und 'Masse' beträgt also 2. Bei einer niedrigen Distanz ist der Zusammenhang zwischen den beiden Begriffen größer, als bei Begriffen mit einer hohen Distanz. Identische Begriffe haben dementsprechend eine Distanz von 0. Je größer die Distanz zwischen zwei Begriffen sein darf, desto höher ist die Trefferquote, was aber auch zu einer sinkenden Präzision führt[25]. Gerade bei kurzen Begriffen erhöht sich die Trefferquote, weil bereits kleinere Distanzen zu unterschiedlichen Wörtern führen. Deshalb wird oft die Zeichenlänge des Begriffes an die maximal mögliche Distanz gekoppelt, um noch als Suchtreffer zu gelten:

Anzahl der Zeichen Tolerierte Levenshtein Distance
1-4 0
5-8 1
9-12 2
>12 3
Tabelle 4: Mögliche Kopplung der tolerierten Levenshtein Distance mit der Länge der Zeichenkette. Quelle: Lisbach (2010) S. 79


Das Verfahren eignet sich gerade bei der Sucheingabe durch die Berechnung der Distanz zwischen zwei Begriffen, um kleine Abweichungen z.B. bei Tippfehlern zu erkennen. Dadurch, dass die Distanz jedes mal für die Betrachtung neu berechnet werden muss, sind diese Verfahren jedoch viel rechenintensiver.

6.2 Boolesches Retrievel

Die Suche über ein Retrievelsystem, dass auf den Grundlagen der Booleschen Logik basiert, unterstützt die Suche mit den booleschen Operatoren. Anhand der definierten Suchanfrage mit zur Hilfenahme der booleschen Operatoren wird ein Ergebnis anhand der exakten Übereinstimmung mit der Suchanfrage ausgewertet. Das heißt, es gibt nur zwei Zustände. Entweder stimmt die Suchanfrage mit dem Treffer überein (true) oder nicht (false). Einen Teiltreffer oder einen Treffer mit geringerer Relevanz gibt es somit beim Booleschen Retrievel nicht[26].

Als boolesche Operatoren werden hauptsächlich die drei fundamentalen Funktionen 'AND', 'OR', 'NOT' angeboten. Die nachfolgende Tabelle gibt einen Überblick über die Funktionsweise der Operatoren.

Operator Beschreibung Beispiel
AND Der 'AND' Operator verknüpft die beiden Aussagen (Konjunktion) und ist dann wahr, wenn beide Bedingungen zutreffen. JAVA AND INSEL Die Suche liefert ein Ergebnis, wenn beide Begriffe gefunden werden.
OR Der 'OR' Operator verknüpft die beiden Aussagen (Disjunktion) und ist dann wahr, wenn mindestens eine der beiden Bedingungen zutreffen. JAVA OR INSEL Die Suche liefert ein Ergebnis, wenn entweder der Begriff 'JAVA' oder 'INSEL' oder beide Begriffe gefunden werden.
NOT Der 'NOT' Operator negiert die nachfolgende Aussage (Negation). NOT JAVA Die Suche liefert alle Ergebnisse, in denen das Wort 'JAVA' nicht vorkommt
Tabelle 5: Erläuterung der Booleschen Operatoren anhand eines Beispiels


Weitere Operatoren wie z.B. 'XOR' können zusätzlich angeboten werden. Dies ist aber nicht zwingend erforderlich, da alle weiteren Operatoren auf die drei Basisoperatoren zurückgeführt werden können. So kann die Anfrage "A XOR B" (entweder A oder B) in die Funktion "(A AND NOT B) OR (NOT A AND B)" umgewandelt werden. Komplexe Anfragen können durch das Umklammern von Teilanfragen übersichtlicher gestaltet werden.

Manche Rerievelsystem bieten zusätzliche Hilfen bei der Suche an[27]. So wird manchmal die Nutzung von Abstandsoperatoren angeboten, um mitzuteilen, dass das Ergebnis erst relevant ist, wenn die gesuchten Begriffe in einer bestimmten Nähe zu einander auftreten. Die Suche kann auch durch Trunkierung und Maskierung in Form von Wildcards, oft auch Jokerzeichen genannt, verallgemeinert werden. So teilt man dem Retrievelsystem durch Sonderzeichen wie '*', '?' oder '#' mit, dass an dieser Stelle beliebige Zeichen stellvertretend stehen könnten. Beispiel: Die Suche nach "Fern*" würde unter anderem die Begriffe "Fernseher", "Fernglas" sowie "Fernschreiber" beinhalten.

Der Vorteil von booleschen Retrievelsystemen besteht in der exakten Übereinstimmung des Ergebnisses zur Suchanfrage. Je nach gesuchtem Inhalt kann dies die Ergebnismenge exakt herausfiltern. Gleichzeitig ist dieser Sachverhalt auch ein großer Nachteil. Denn es werden viele Treffer raus gefiltert, wenn bereits eine Bedingung in der Abfrage nicht zutrifft[26]. So wird ein Treffer mit 99 Prozent Übereinstimmung mit der Suchanfrage auf Grund der booleschen Logik genau so behandelt wie ein Ergebnis ohne Übereinstimmung. Zusätzlich findet kein Ranking der Suchergebnisse, sowie eine Überprüfung der Relevanz der gesuchten Begriffe, statt. Gerade das Fehlen der Relevanzprüfung führt dazu, dass bereits das einmalige Vorkommen des Suchbegriffs, egal in welchem Kontext, zu einem Treffer führt. Zusätzlich muss berücksichtigt werden, dass für normale Nutzer ohne Kenntnis über die boolesche Logik diese Art der Suche nicht geeignet ist.

6.3 Reguläre Ausdrücke

Reguläre Ausdrücke sind eine technische Umsetzung um Pattern Matching, also ein Musterabgleich eines Begriffes, durchzuführen. Es wird also anhand eines Textmusters, welches in einer speziellen Notation vorliegen muss, nach Übereinstimmungen in einem Text gesucht[28].

Anhand von gültigen, vordefinierten Zeichenklassen und entsprechenden Quantoren muss das Textmuster im Text vorkommen. Es wird hier nicht weiter auf alle einzelnen Funktionen eingegangen, sondern anhand eines Beispiels, welches die Suche nach gültigen Internetadressen in einem Text durchsucht, kurz erläutert. Der reguläre Ausdruck für das Beispiel lautet[29]:

\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b

Die Adresse muss mit einem Leerzeichen (\b) beginnen und enden. Dazwischen werden vier Bereiche gesucht, die aus Zahlen (\d), die ein bis drei Zeichen ({1,3}) lang sind. Für die Begrenzung auf Ziffern wird die vordefinierte Klasse '\d' (Digits) genutzt.

Dieses Beispiel zeigt zum einen wie mächtig die Suche innerhalb von Texten mit Hilfe von regulären Ausdrucken sein kann, aber auch, wie dass der Anwender ein hohes technisches Verständnis von der Syntax haben muss, um die Technik anzuwenden.

6.4 Data Mining

Auch Wissensgewinnung- oder Knowledge Discovery-Verfahren genannt, extrahieren aus Datensammlungen Regelmäßigkeiten bzw. explizite Regeln, die geeignet sind, Menschen und Maschinen bei Entscheidungen zu unterstützen. Sie wird häufig in Unternehmen verwendet, in der Forschung und bei der Kriminalitätsaufklärung. Ziel des Data Mining ist es, Entscheidungsprozesse dadurch zu verbessern, dass Muster in großen Datensammlungen erkannt und genutzt werden. Den Supermärkten geht es beispielsweise zumeist darum ein umfangreiches Wissen über viele Personen anzuhäufen, um damit gezielter Produkte an den Man zu bringen. Musteranalysen von einzelnen Personen werden bei der Verbrechensbekämpfung eher eingesetzt.

Die Datenbestände werden nach Regelmäßigkeiten, Mustern und Strukturen, Abweichungen jeglicher Art von Beziehungen und gegenseitigen Beeinflussungen untersucht. Als Beispiel ist hier Amazon.com zu nennen, hier wird das Data Mining zur Kundensegmentierung verwendet. Um Relationen zwischen verschiedenen Kunden und deren Interessen herzustellen, um personalisiertere Werbung kreieren zu können. Es gibt verschiedene Arten von Data Mining, abhängig von den Informationen die vorliegen und denen die gesucht werden.

Prädiktive Modellierung
Prädiktive Modellierung wird verwendet, wenn ein Wert zu einem bestimmten Zielattribut bestimmt werden soll für denen es bereits Beispielattribute mit einem Wert angelegt wurden sind. Beispiel hierfür wäre eine Einstufung, die eine Reihe von Daten, die in bereits vordefinierten Gruppen sind nach Mustern durchsucht und diese Differenzierungen aufnimmt. Dadurch ist es möglich weitere Daten automatisiert zu klassifizieren und diese der richtigen Gruppe zu zuteilen.[30]

Deskriptive Modellierung
Das Clustering teilt die Daten auch in Gruppen auf. Hierbei sind die richtigen Gruppen aber nicht im Voraus bekannt. Die Muster die bei der Analyse auftauchen werden für die Bestimmung der richtigen Gruppe verwendet.[30] Anders als die prädiktive Modellierung werden die Ergebnisse durch empirische Mittel errechnet. Beispielsweise kostete die Milch gestern € 1 pro Liter, letzten Monat € 0.95 und so weiter. Aufgrund dieser Daten errechnet der Algorithmus das die Milch nächsten Monat € 1.05 kostet wird.[31]

Pattern Mining
Pattern Mining konzentriert sich auf die Identifizierung von Regeln, die bestimmte Muster in den Datensätzen aufweisen. Die Effizienz der Mustererkennung entfaltet sich erst bei großen Datenbeständen. Von größtem Interesse für Marketing und Forschung ist die Entdeckung einer unerwarteten Assoziationen in den zu untersuchenden Datenbeständen.

Anomalieerkennung
Anomalieerkennung ist das Gegenteil von Clustering, hierbei sollen ungewöhnliche Daten gefunden werden die nicht zu den bestehenden Mustern passen. Die Anomalieerkennung konzentriert sich auf das normale Verhalten um daraus Rückschlüsse schließen zu können die dann wiederum ungewöhnlich sind.

7 Informationsdarstellung

7.1 Darstellung der Treffermenge

Heutige Suchmaschinen können noch nicht die exakte Lösung zu komplexen Suchanfragen aufgrund der gegebenenfalls zu relativen oder kontextbezogenen Begriffen anbieten. Deshalb gibt es verschiedene Möglichkeiten die den Benutzer helfen sollen seine gewünschte Lösung zu finden. Die am bekanntesten Anzeige der Treffer erfolgt durch eine sortierte Link-Liste. Die Reihenfolge wird durch die Rankingalgorithmen der jeweiligen Suchmaschinen errechnet. Die Ergebnisliste beinhaltet mindestens die URL, den Dokumententitel, die Anzahl der Treffer und wie lange die Suchmaschine gebraucht hat. Als bekannteste und meistgenutzte Suchmaschine in Deutschland wird die von Google Inc - Google Web Search verwendet. Darüber hinaus ist es möglich sich die Daten in visualisierter Form zu begutachten. Die Daten nach Typen zu spezifizieren, so das nur bestimmte Dokumententypen gesucht werden.[32]

Ergebnisvorschau
Eine Ergebnisvorschau zeigt zusätzlich zu den Standardinformationen einen kleinen Ausschnitt an. Das kann wie bei MelZoo, welches eine Metasuchmaschine ist, so aussehen, dass das Ergebnisfenster in zwei Bereiche unterteilt ist. In der linken Seite die gewohnte Link-Liste und auf der rechten Seite eine Vorschau des ausgewählten Treffers. Der Vorteil hierbei ist, das direkt ersichtlich wird, ob das gewünschte Dokument die gesuchten Informationen beinhaltet.
Google Vorschau bietet auch einen grafischen Überblick über ein Suchergebnis, dabei werden auf der Vorschauseite auch die relevantesten Abschnitte hervorgehoben. Dazu muss bei den Suchergebnissen auf die Lupe geklickt werden, dadurch erscheint auf der rechten Seite ein visueller Überblick.

Abbildung 4: Ergebnisvorschau MelZoo.com
Abbildung 4: Ergebnisvorschau MelZoo.com


Clustering
Beim Clustering werden die ermittelten Ergebnismengen in unterschiedlich groben Kategorien unterteilt. Dadurch wird dem Nutzer die Selektion der für ihn relevanten Trefferbereiche erleichtert. Die Cluster werden anhand verschiedener Ansätze berechnet und dargestellt, wobei die Dokumente meist als Icons (Kreise, Rechtecke, Kugeln) erscheinen. Die räumliche Nähe soll dabei ihre inhaltliche Ähnlichkeit vermitteln.

Darstellung/Nachweis von Relationen
Die Visualisierungsstruktur hierbei ist assoziativ statt hierarchisch. Beispielsweise bietet die Metasuchmaschine Tianamo, zur Zeit aber nur in einer Beta-Version verfügbar, die Ergebnisse in einer 3D-Landkarte an. Die dreidimensionale Darstellungsform mit Erhebungen und Vertiefungen ermöglichen so leichter zu erkennen welche Treffer für den Suchenden relevant sind. Umso näher zwei Erhebungen aneinander sind, umso größer ist ihre Ähnlichkeit zueinander. Durch Positionierung des Mauscursors wird die Relevanzbewertung der Suche verändert und somit auch die Ergebnisliste.

Visualisierung geographischer Aspekte

Abbildung 5: Visualisierung geographischer Aspekte maps.google.com
Abbildung 5: Visualisierung geographischer Aspekte maps.google.com

Bei der Visualisierung geographischer Aspekte handelt es sich um die Verlinkung von Artikeln, Webseiten, Geschäften, Restaurants, Videos, Fotos und vielem mehr zu einer Landkarte. Wie Beispielsweise bei Google - Google Maps. Auf dem Bild wurde einmal nach “fom düsseldorf” gesucht. Als Ergebnis wird der Standort auf der Karte angezeigt und alle relevanten Informationen direkt mit Bild zu dem Suchergebnis angezeigt.

Visualisierung zeitlicher Aspekte

Abbildung 6: Visualisierung zeitlicher Aspekte newstimeline.googlelabs.com
Abbildung 6: Visualisierung zeitlicher Aspekte newstimeline.googlelabs.com

Gerade bei Nachrichten kann es durchaus relevant sein die Suchergebnisse in einem Zeitstrahl darzustellen. Google bietet hierfür die “Google - news timeline” newstimeline.googlelabs.com an, zur Zeit befindet die sich noch in der Entwicklung. Die Ergebnisse werden in einer Wochenansicht präsentiert. Es ist möglich den Zeitrahmen für die Suche anzupassen, sowie das Datum auszuwählen.

Visualisierung kollaborativer Komponenten

Abbildung 7: Tag Cloud www.flickr.com
Abbildung 7: Tag Cloud www.flickr.com

Eine Tag Cloud, auf deutsch Schlagwortwolke, ist eine graphische Aufbereitung von Begriffen. Die Begriffe werden meistens alphabetische angeordnet und durch unterschiedliche Schriftgrößen der einzelnen Begriffe entsteht der Effekt einer Wolke. Dabei entscheidet die Relevanz oder die Häufigkeit des Begriffes über die Schriftgröße. Je wichtiger ein Begriff ist, desto größer wird er im Verhältnis zu den anderen Begriffen dargestellt.[33]Tag Clouds kommen hauptsächlich Online in Web 2.0 Anwendungen zum Tragen.
Ziel einer Tag Cloud ist es zum einen dem Benutzer die Suche, sowie in vielen Fällen die Navigation durch direktes Anklicken in der Anwendung, zu erleichtern.
Die Tags, die ausgewiesen werden, können unterschiedlich ermittelt werden. So können z.B. unter www.flickr.com die hoch geladenen Bilder vom Benutzer selber mit den Tags versehen, um die Suche nach dem Bild zu erleichtern. Das Bild kann dann anhand einer oder mehrere dieser Tags gesucht werden. Beispiel: Lädt man ein Bild von einen Hund hoch, würden sich folgende Tags anbieten: "Hund, Natur, Tier". Nun kann das Bild über einen oder mehrere dieser Tags gesucht werden. Je mehr Tags eingegeben werden, und die Suche somit präzisiert wird, desto genauer wird das Ergebnis sein. Das Problem besteht hierbei, dass die Suche genau die entsprechenden Tags aufweisen musst. So kann man sich vorstellen, dass jemand sein Bild mit dem Tag Hund versehen hat, die Suche nach Hunde dieses Bild jedoch nicht berücksichtigen würde.
Eine weitere Möglichkeit als Quelle für die Tags können automatisierte Indexe herangezogen werden. Es gibt Algorithmen, die eine Webseite auswerten. Primär werden Überschriften für die Tag Ermittlung herangezogen, welche an bestimmten HTML Tags wie z.B. <h1> erkennbar sind.

Visualisierung bei Ergebnismengenvergleich
Dabei sollen die Ergebnismengen von mehreren Suchmaschinen visuell gegenübergestellt werden. Dadurch lässt sich ermitteln, wie stark sich Treffermengen und auch das Ranking bei den verschiedenen angebundenen Suchmaschinen unterscheiden und welche Treffer bei eine Suchanfrage als Schnittmenge von mehreren Suchmaschinen ermittelt wurden.[34]

7.2 Suchanfrageunterstützung

Autovervollständigung

Das ist eine Funktion, die die Eingabe schon während des Tippens sinnvoll ergänzt. Bei Eingabe eines Begriffes auf der Google Websuche-Seite werden durch den Google-Algorithmus eine automatische Vervollständigung der Suchanfrage angeboten, die dem aktuellem Suchbegriff ähnelt. [35]

Echtzeitsuche
Hierbei werden schon die Suchergebnisse während des Tippens angezeigt. Google Instant berechnet dazu die wahrscheinlichste Fortsetzung der bereits eingetippten Zeichen und liefert zu dieser Prognose in Echtzeit Ergebnisse. Alle vorgeschlagenen Begriffe wurden vorher schon von anderen Google-Nutzern gesucht. Die ausgewählten Begriffe werden algorithmisch anhand von objektiven Faktoren, ohne das ein menschliches Eingreifen geschieht, berechnet. [36][37]

Visualisierung
Mit Hilfe von Visualisierungen soll dem Benutzer bei der Suchanfrageformulierung zusätzlich geholfen werden. Dabei werden zum einen zur eingegebenen Suchanfrage weitere passende Begriffe vorgeschlagen, darunter Synonyme, Ober- oder Unterbegriffe oder Übersetzungen. Bei der Anpassung der Suchanfrage kommen die Booleschen Verknüpfungen zu tragen, indem die Operatoren durch einfaches Drag- & Drop, anklicken oder Mouse-Over Funktionalitäten einzelne Begriffsvorschläge als Erweiterung oder Ausschluss in die Suchanfrage einbinden. [32]

8 Fallbeispiele

8.1 Google

Einer der weltbekanntesten Suchmaschinen für das Internet kommt von der Firma Google Inc. mit ihrem gleichnamigen Suchdienst Google. Das Ziel von Google besteht darin, die auf der Welt vorhandenen Informationen zu organisieren und allgemein zugänglich und nutzbar zu machen.[38]

Startseite von Google
Startseite von Google
Egal was sie suchen, ob es eine Kartenansicht ist, Nachrichten oder Bilder, all das bietet Google an. Man beginnt meistens auf der Startseite von Google. Dort befindet sich zentriert die Eingabemaske, die mit einer Autocompletion-Funktion ausgestattet ist. Das heißt das während man Beispielsweise "FOM Düssel" eintippt, in einer Drop-Down-Liste schon "FOM Düsseldorf" als Autocompletion angeboten bekommt. Mit der "Enter"-Taste können Sie die Vervollständigung übernehmen, durch die Pfeiltasten einer der anderen vorgeschlagenen Begriffe auswählen, zudem können Sie das auch alles mit der Maus erledigen. Oder wenn davon noch nichts richtig war, ihre Suchanfrage weiter formulieren.
Autovervollständigung von Google
Autovervollständigung von Google
Bei Google beginnt eine Echtzeitsuche die Ergebnisliste, schon während des Tippens, dynamisch zusammenzustellen. Die Reihenfolge der Ergebnisse erfolgt durch den PageRank Algorithmus von Google. Die Ergebnislisten-Seiten können sie wahlweise mit der Maus oder über die Tastatur navigieren. Klicken Sie auf die Lupe das bei den Aktionsfeldern für das jeweilige Ergebnis erscheint, wird ein kleines Vorschaufenster der Seite angezeigt. Das soll den Nutzer dabei unterstützen schneller an seine Lösung zu kommen. Bei Google kommt auch die Fuzzy-Suche zu tragen; obwohl bei einem Suchbegriff ein Rechtschreibfehler vorhanden ist, erkennt Google das und schlägt das richtige Wort vor (Meinten Sie..).


Google Advanced Search
Google Advanced Search

Es wird noch zusätzlich eine Detailsuche angeboten. Dabei kann der Benutzer über boolesche Operatoren seine Suche noch verfeinern. Den Dateityp auswählen, den Zeitraum angeben und die Anzahl der Treffer verändern. Das sogenannte Paging, also die Anzahl der Treffer auf einer Seite, ist sehr nützlich, denn ansonsten hätte man eine Informationsflut die nicht zu bewältigen wäre zumal auch das der Laden der Seite sehr lange dauern würde. Für "FOM Düssel" gibt es beispielsweise 1.620.000 Treffer. Deshalb ist es möglich die Anzahl der Treffer pro Seite zu definieren. Alle Ergebnisse die nicht mehr auf die erste Seite passen werden auf einer weiteren Seite dargestellt.

Google Bildersuche
Google Bildersuche

Google bietet zudem noch eine Reihe von alternativen Visualisierungen an, darunter befinden sich noch einige im experimentalen Modus so wie beispielsweise Google Newstimeline. Es ist auch möglich direkt nach Bildern, Videos, Nachrichten, Büchern und vielem mehr zu suchen. Dadurch passt sich das Design der Ergebnisliste auch an. So werden die Ergebnisse beispielsweise bei der Bildersuche als Thumbnails angezeigt.


8.2 CRM / ERP Software

In jedem größeren Unternehmen kommen ERP Systeme zum Einsatz. Es handelt sich hierbei um eine zentrale Anwendung im Unternehmen, die alle wesentlichen Funktionen der Administration, Disposition und Führung in einem Unternehmen unterstützt[39]. Zusätzlich werden die Geschäftsprozesse aus betriebswirtschaftlicher Sicht informationstechnisch unterstützt. Zur besseren Planung, Steuerung und Kontrolle eines Unternehmens liefert das System immer aktuelle Informationen auf Basis der erfassten und verarbeiteten Daten[40]. Dieser Aspekt verdeutlicht, wie wichtig die Suchfunktion in einem ERP System ist. Diese muss für den Endanwender so konzipiert sein, dass dieser die gesuchten Informationen leicht wiederfindet. Welche Mechanismen für eine Erleichterung der Suche genutzt werden können, werden anhand einer eigen entwickelten Firmenlösung demonstriert, welche sich aber in jeder anderen ERP Lösung wiederfinden lassen.

Die einzelnen Dialoge sind in einem ERP System in Frameworks (z.B. Beschaffung, Logistik, Vertrieb) mit entsprechenden Dialogen aufgeteilt. Jede fachliche Entität (z.B. Artikel oder Kunde) wird in einem eigenen Dialog dargestellt. Dort sind alle relevanten Stammdaten mit den angelegten Sichten aufgelistet. Die Sichten erlauben es neben den allgemeinen Stammdaten wie Artikelnummer und -bezeichnung zusätzliche relevante Informationen für bestimmte Bereiche (z.B Einkauf, Vertrieb) anzulegen.

Abbildung 8: Suche eines Artikels über Direkteingabe; Quelle: eigener Screenshot
Abbildung 8: Suche eines Artikels über Direkteingabe; Quelle: eigener Screenshot
Zentral erfolgt die Suche in der Anwendung über ein Feld, welches die Entität eindeutig kennzeichnet. In unserem Fallbeispiel ist es die bei dem Artikel die Artikelnummer. Eine Suche kann direkt über die Eingabe der vollständigen Artikelnummer ins entsprechende Suchfeld eingegeben und bestätigt werden.
Abbildung 9: Suche eines Artikels mit Autovervollständigung; Quelle: eigener Screenshot
Abbildung 9: Suche eines Artikels mit Autovervollständigung; Quelle: eigener Screenshot
Zusätzlich gibt es oft zusätzliche Unterstützung in Form der Autovervollständigung. Diese muss in ERP Systemen anders als z.B. bei Google manuell durch eine besondere Tastenkombination (z.B. Alt + Pfeiltaste Runter) angestoßen werden. Anschließend wird die bisher eingegebene Artikelnummer durch eine Trunkierung (hier '330007*') nach zutreffenden Artikeln durchsucht und das Ergebnis in einem Vorschaufenster ausgewiesen. Neben der gesuchten Nummer werden in der Vorschau zusätzliche Informationen wie hier die Artikelbezeichnung angezeigt, damit der Benutzer zur Artikelnummer den passenden Artikel zuordnen kann.

Durch eine Wahl über die Tastatur oder Maus kann dann anschließend der gesuchte Artikel geladen werden. Diese direkte Art der Suche nach einem Artikel bietet sich an, wenn man bei oft verwendete Artikel, deren Artikelnummern bekannt sind, sucht. Dies ist aber gerade bei vielen Artikeln nicht der Fall, so dass eine Detailsuche angeboten werden muss.


Abbildung 10: Suche eines Artikels über Detailsuche; Quelle: eigene Screenshot
Abbildung 10: Suche eines Artikels über Detailsuche; Quelle: eigene Screenshot
Die Detailsuche kann an der Seite innerhalb des Dialogs geöffnet werden oder über ein zusätzliches Suchfenster wie in der Abbildung dargestellt.

Hier können mehrere Suchkriterien eingeben, die über den Artikel bekannt sind, eingegeben werden. Dabei wird deutlich, dass ERP Systeme auf Grund der Tatsache, dass mit Fakten gearbeitet wird, oft das Boolesches Retrievel bei der Suche nutzen. Das heißt, dass die Suchanfrage exakt auf einen Artikel passt und dieser mit im Ergebnis ausgewiesen wird, oder selbst bei einer Nichtübereinstimmung bereits nicht zutrifft.

Im unteren Bereich der Suchmaske wird das Ergebnis in Form der Artikelnummer samt der sprechenden Artikelbezeichnung ausgewiesen. Daneben kann durch eine Vorsortierung (hier anhand des Codes) bestimmt werden, welche Kriterien in welcher Reihenfolge berücksichtigt werden müssen. Zusätzlich wird der Benutzer über seine durchgeführte Suchanfrage mit Detailinformationen wie die Anzahl der Treffer informiert.

Meistens wird die Suchanfrage auf eine bestimmte Anzahl an Treffern (z.B. 100 Treffer) limitiert. Dies ermöglicht eine schnellere und übersichtlichere Darstellung des Ergebnisses und zusätzlich ist die Anfrage oft präzise genug, so dass die Trefferzahl überschaubar ist. Falls das Ergebnis doch mehr Treffer aufweist, als dargestellt wird, kann eine Paging Funktion angeboten werden. Mit Hilfe dieser kann der Benutzer sich durch die Trefferliste blockweise (z.B. je Block 100 Treffer) durcharbeiten.

Der Benutzer kann anschließend aus der Ergebnismenge den gesuchten Artikel in die Hauptanwendung übernehmen, um sich die Detailinformationen zum Artikel über alle Sichten anzuschauen.



Neben der Funktionsweise für die Hauptsuche unterstützen ERP Systeme den Benutzer oft mit weiteren Funktionalitäten, um die Suche nach den nötigen Informationen zu erleichtern.

Darstellungsformen

Abbildung 11: Darstellung von hierarchischen Strukturen; Quelle: eigene Screenshot
Abbildung 11: Darstellung von hierarchischen Strukturen; Quelle: eigene Screenshot
Nicht immer ist die Auswahl aus einer tabellarische Form die geeignete Wahl. Gerade hierarchische Strukturen wie die Artikelstruktur können viel leichter über einen Baum, der jeweils die Unterkategorien ausweist, dargestellt und ausgewählt werden.
Abbildung 12: Auswahlhilfe bei einem Datum; Quelle: eigene Screenshot
Abbildung 12: Auswahlhilfe bei einem Datum; Quelle: eigene Screenshot

Auch in anderen Fällen, in denen für die Auswahlmenge fest steht und die Anzahl minimal ist (z.B. die Teileart des Artikels). So lohnt es sich für die Suche Komponenten zu nutzen, die bereits die Treffer in einer Liste zur Auswahl bereithalten, statt über den Teileartcode die Teileart zu suchen. Geeignet sich dafür die sogenannten Comboboxen.

Für die Eingabe eines Datums werden oft fertige Kalender eingesetzt. Der Benutzer muss das Datum nicht mühsam eintippen, sondern kann direkt über die Wahl des gewünschten Tages das Datum selektieren.


Eingabemöglichkeiten

In vielen Anwendungen möchte man die Suche nicht nur nach einem Artikel durchführen, sondern mehrere Artikel selektieren. Als Beispiel könnte man sich alle Verkaufsvorgänge zu bestimmten Artikeln vorstellen. Eine Suche der Verkaufsvorgänge für jeden Artikel einzeln durchzuführen wäre nicht sonderlich komfortabel. Deshalb besteht oft die Möglichkeit die Sucheingabe über bestimmte Eingabemuster durchzuführen. Diese erlauben es mehrere konkrete Artikel durch ein Trennzeichen (z.B. Komma) anzugeben, eine wage Formulierung mit Hilfe des Zeichens zur Trunkierung oder Bereiche anzugeben. Eine Kombination aus allen ist ebenfalls möglich. So selektiert das nachfolgende Beispiel den Artikel '330007000', alle Artikel die mit '301' beginnen, sowie die Artikel im Bereich '350000000' bis '370000000':

330007000, 301*, 350000000-370000000

Auch für die Eingabe des Datums muss nicht immer ein konkreter Tag eingegeben werden. Oft besteht aus unternehmerischer Sicht die Notwendigkeit die Auswahl für einen bestimmten Bereich durchzuführen. So steht in einigen ERP System die Nutzen vordefinierter Eingabemuster für die Datumswahl zur Verfügung: Möchte man sich die Verkaufsvorgänge des ersten Quartals im letzten Geschäftsjahr anschauen, so könnten man das z.B. durch die Eingabe Q12010 erreichen.

Allgemein lässt sich zusammenfassen, dass die Möglichkeiten der Eingabemuster je nach ERP System unterschiedlich sind.

Dialogverknüpfung

Für die leichtere Navigation zwischen den einzelnen Dialogen werden Dialogverknüpfungen eingesetzt. So ist es oft möglich im Dialog der Verkaufsvorgänge auf einen Artikel zu klicken und diesen direkt im Artikeldialog anzeigen zu lassen. Dadurch erspart sich der Benutzer die unnötige Suche nach dem Artikel anhand der Artikelnummer und muss den Dialog nicht vorher selber starten.

9 Fazit

Die Suchfunktion ist und bleibt für Anwendungen eine nötige Funktion. Der Bedarf an sinnvollen Lösungen wird sogar auf Grund der steigenden Informationsflut durch das Internet steigen. Daher wird der Erfolg der Betreiber von Suchmaschinen sich daran messen können, wie sehr das Ergebnis mit der Suchanfrage des Benutzers korreliert.

Die Umsetzung der Suchmöglichkeit muss dabei dem Kontext bezogen sinnvoll eingesetzt werden: So ist eine technische Suche über reguläre Ausdrücke im EDV Bereich teilweise interessanter, da die Suchanfrage präzise formuliert werden kann. Bei unternehmensspezifischen Anwendungen geht es ebenfalls um eine genaue Filterung von Daten, so dass das Suchergebnis exakt mit der Suchanfrage übereinstimmt. So soll die Suche nach einem bestimmten Artikel innerhalb der Verkaufsvorgänge nur die Absätze des einen Artikels suchen. Dabei muss die Suchfunktion einfach zu bedienen sein und nicht durch technische Details den Benutzer einschränken. Während es auf der anderen Seite gerade im Onlinebereich oft wage Formulierung der Suchanfrage existieren. Diese soll für den Benutzer ebenfalls ein sinnvolles Suchergebnis aufzeigen, jedoch toleranter in der Auswertung sein. Je präziser die Suchmaschine die Suchanfrage auswerten kann, desto näher liegt das Ergebnis an dem was den Benutzer interessieren könnte.

Ein entscheidender Faktor für jede Art von Suchanfrage ist die Schnelligkeit. Es wird erwartet, dass das Ergebnis in unmittelbarer Nähe ausgewertet wird. Längere Wartezeiten werden vom Benutzer selten akzeptiert. Daher werden in Zukunft auch immer mehr Anforderungen an geeignete technische Strukturen gestellt, die zum einen mit immer mehr Informationen zurecht kommen müssen, aber kaum Abstriche in der Geschwindigkeit machen.

10 Einzelnachweise

  1. 1,0 1,1 Vgl. Luckhardt (2001)
  2. Nohr (2003) S. 24
  3. Vgl. Nohr (2003) S. 28
  4. Vgl. Stock (2003) S. 97
  5. Vgl. Stock (2006) S. 97
  6. Vgl. Ferber (2003) S. 40
  7. Vgl. Ferber (2003) S. 36
  8. Vgl. Güting (2004) S. 15
  9. Vgl. Heun (2003) S. 120
  10. 10,0 10,1 Vgl. Pomberger (2008) S. 163f
  11. Vgl. Netcraft.de (2011)
  12. Vgl. iYotta (2010)
  13. Vgl. Ceyp (2008) S. 26
  14. Vgl. ISOC (1998)
  15. Vgl. Koch (2007) S. 36 f.
  16. Vgl. W3C (1997)
  17. Vgl. Deutsche Nationale Bibliothek (2009)
  18. Vgl. ID3 (2009)
  19. Vgl. ID3 (1999)
  20. Vgl. Ullrich (2004) S. 4
  21. Vgl. Sound-ex.de
  22. Vgl. Lisbach (2010) S. 83f
  23. Vgl. Lisbach (2010) S. 85
  24. Vgl. Merkl (2003) S. 93f
  25. Vgl. Lisbach (2010) S. 14
  26. 26,0 26,1 Vgl. Koch (2007) S. 40
  27. Vgl. Augenstein(1998)
  28. Vgl. Friedl S. 1
  29. Vgl. regular-expressions.info
  30. 30,0 30,1 Vgl. Ferber (2003)
  31. Vgl. Cequity (2010)
  32. 32,0 32,1 Vgl. SPRINT (2011)
  33. Vgl. Karlbach (2008) S. 69
  34. Vgl. Lewandowski
  35. Vgl. Google
  36. Vgl. Mayer
  37. Vgl. Krishnan
  38. Google Unternehmensinformation
  39. Vgl. Stahlknecht (2005) S. 326f
  40. Vgl. Görtz (2007) S.5f

11 Literatur- und Quellenverzeichnis

Augenstein (1998) Augenstein, Michaela - Suchmaschinen und Recherchestrategien im Internet/World Wide Web (http://www.tekom.de/index_neu.jsp?url=/servlet/ControllerGUI?action=voll&id=846 (28.02.2011)
Ceyp (2008) Ceyp, Michael; von Bischopinck, Yvonne - Suchmaschinen-Marketing: Konzepte, Umsetzung und Controlling für SEO und SEM, 2. Auflage; Springer Verlag, Berlin 2008
Deutsche Nationale Bibliothek (2009) Gömpel, Renate; META-LIB (METADATEN-INITIATIVE DEUTSCHER BIBLIOTHEKEN) http://www.d-nb.de/wir/projekte/metalib.htm (21.12.2010)
Ferber (2003) Ferber, Reginald - Information Retrieval, Suchmodelle und Data-Mining-Verfahren für Textsammlungen und das Web, dpunkt Verlag, Heidelberg 2003
Friedl (2008) Friedl, Jeffrey E.F. - Reguläre Ausdrücke, 3. Auflage, O'Reilly Verlag, Köln 2008
Google (2011) Google - Unternehmensprofil - http://www.google.de/intl/de/corporate/ (06.03.2011)
Google (2011) Google - Features: Autocomplete - http://www.google.com/support/websearch/bin/answer.py?answer=106230 (06.03.2011)
Görtz (2007) Görtz, Marcus; Hesseler, Martin - Basiswissen ERP-Systeme: Auswahl, Einführung& Einsatz betriebswirtschaftlicher Standardsoftware, W3l GmbH Verlag, Herdecke 2007
Güting (2004) Güting, Ralf Hartmut; Dieker, Stefan - Datenstrukturen und Algorithmen 3. Auflage, Vieweg + Teubner Verlag, Wiesbaden 2004
Heun (2003) Heun, Volker - Grundlage Algorithmen. Einführung in den Entwurf und die Analyse effiziente Algorithmen, 2. Auflage, Vieweg + eubner Verlag, Wiesbaden 2003
ISOC (1998) Sander-Beuermann, Wolfgang; Schomburg, Mario; ISOC.org (Internet Society) - Internet Information Retrieval: The Further Development of Meta-Search Engine Technology http://www.isoc.org/inet98/proceedings/1c/1c_2.htm (25.02.2011)
iYotta (2010) Schwerd, Udo - Funktionsweise der Suchmaschinen - http://www.iyotta.de/index.php/geld-verdienen-im-internet/seo/324-funktionsweise-suchmaschinen.html (26.02.2011)
Kalbach (2008) Karlbach, James - Handbuch der Webnavigation; O'Reilly Verlag Köln, 2008
Krishnan (2009) Krishnan, Raj - Unmittelbare Ergebnisse noch schneller: Google Vorschau - http://google-produkt-kompass.blogspot.com/2010/11/unmittelbare-ergebnisse-noch-schneller.html (26.02.2011)
Koch (2007) Koch, Daniel - Suchmaschinen-Optimierung (Website Marketing für Entwickler), Addison-Wesley Verlag, München 2007
Lewandowski (2009) Lewandowski, Dirk - Handbuch Internet-Suchmaschinen; Heidelberg, Akademische Verlagsgesellschaft, 2008
Lisbach (2010) Lisbach, Bertrand - Linguistisches Identity Matching: Paradigmenwechsel in der Suche und im Abgleich von Personendaten, Vieweg+Teuber Verlag, Wiesbachen 2010
Luckhardt (2001) Luckhardt, Heinz-Dirk - Information Retrieval, http://is.uni-sb.de/studium/handbuch/exkurs_ir.html (21.12.2010)
Mayer (2010) Mayer, Marissa - Google Instant: Schneller, als ihr tippen könnt, http://google-produkt-kompass.blogspot.com/2010/09/google-instant-schneller-als-ihr-tippen.html?ctx=DEblog09112010b (26.02.2011)
Merkl (2003) Merkl, Rainer; Waack, Stefan - Bioinformatik interaktiv: Algorithmen und Praxis, Wiley-VCH Verlag, Weinheim 2003
Netcraft.de (2011) Netcraft - http://news.netcraft.com/ (01.03.2011)
Nohr (2003) Nohr, Holger - Grundlagen der automatischen Indexierung, Logos Verlag, Berlin 2003
ID3 (1999) ID3 tag version 2.3.0, M. Nillson 03.02.1999 http://www.id3.org/id3v2.3.0 (20.12.2010)
ID3 (2009) ID3 Tag, Dan O'Neill 20.11.2010 http://www.id3.org/Home (20.10.2010)
Warner (2007) Warner, Daniel - Advanced SQL: SQL für Praxis und Studium, Franzis Verlag, Poing 2007
Meinel (2009) Meinel, Christopher; Sack, Harald - Digitale Kommunikation: Vernetzen, Multimedia, Sicherheit. x-media press / publishing, Trier 2009
Pomberger (2008) Pomberger, Gustav; Dobler, Heinz - Algorithmen und Datenstrukturen: Eine systematische Einführung in die Programmierung, Pearson Education , München 2008
regular-expressions.info Goyvaerts, Jan - Regular Expressions (http://www.regular-expressions.info) (06.03.2011)
Sound-ex.de Fischer, Heide - www.sound-ex.de (20.02.2011)
SPRINT (2011) SPRINT – Schweizer Portal für die Recherche im Internet - http://sprint.informationswissenschaft.ch (09.03.2011)
Stahlknecht (2005) Stahlknecht, Peter; Hasenkamp, Ulrich - Einführung in die Wirtschaftsinformatik, 11. Auflage, Springer Verlag, Berlin 2005
Ullrich (2004) Ullrich, Mike; Maier, Andreas; Angele, Prof. Dr. Jürgen - Taxonomie, Thesaurus, Topic Map, Ontologie – ein Vergleich V1.4 http://www.kmi.tugraz.at/vo-gwm-2006/wp-content/uploads/2007/01/literatur/ontologien/Taxonomie%20Thesaurus%20Topic%20Map%20Ontologie%20-%20ein%20Vergleich.pdf (05.03.2011)
W3C (1997) World Wide Web Consortium, Tim Berners-Lee: Axioms of Web Architecture: Metadata http://www.w3.org/DesignIssues/Metadata (20.12.2010)
Wikipedia.de (2011) o.V. Wikipedia: Thesaurus, o.O. 2011, http://de.wikipedia.org/wiki/Thesaurus (10.03.2011)
Persönliche Werkzeuge