Bug

Ein Bug ist ein Fehler bzw. eine Fehlfunktion innerhalb eines technischen Systems, z. B. einer Computer-Software. Spricht man im Zusammenhang von Webseiten oder Software von Bugs, meint man damit in der Regel eine Fehlfunktion innerhalb des Quellcodes. Ein Bug führt fast immer dazu, dass eine bestimmte Funktion nicht korrekt oder sogar gar nicht ausgeführt werden kann. In der Praxis werden Bugs häufig erst während der Anwendung der Software festgestellt. Als Anwender hat man dann die Möglichkeit, z. B. über eine Support Hotline oder auch per Mail, den Bug zu melden. Ein Entwickler bzw. ein Entwicklerteam kann dann, dank der entsprechenden Meldung, den Bug fixen, also den Fehler beheben.

Als der Fehler zum Bug wurde

Das Wort „Bug“ kommt aus dem Englischen und kann mit „Insekt“ oder „Käfer“ ins Deutsche übersetzt werden. Die Verwendung des Begriffs „Bug“ synonym für Fehler in Computersystemen wurde erstmals erwähnt, als im Herbst des Jahres 1945 eine Motte in einem Schalter eines Computers eine Fehlfunktion hervorrief. Anschließend wurde die Motte in ein Logbuch geklebt. Der dazugehörige Eintrag führte dazu, dass man von diesem Zeitpunkt an, für Fehler im Computersystemen synonym das Wort „Bug“ verwendet.

Welche verschiedenen Arten von Bugs gibt es?

Es gibt zahlreiche Arten von Bugs. Die Tatsache, dass ein Quellcode manchmal einen Fehler aufweist, ist wenig verwunderlich, wenn man bedenkt, aus wie vielen Zeilen ein Quellcode bestehen kann. Bei sehr umfangreicher und komplexer Software kann ein Quellcode schon mal mehrere Millionen Zeilen betragen. Somit sind Fehler, gerade auch weil der Quellcode von Menschen geschrieben wird, vorprogrammiert. Ein Das ist auch der Grund dafür, warum Software häufig vor dem eigentlichen Start schon von bestimmten, meist ausgewählten Nutzern getestet werden kann.

Der Softwarehersteller möchte, dass die Software bezogen auf die Funktionalität im täglichen Gebrauch getestet wird und falls Verbesserungsvorschläge vorhanden sein sollten, diese an den Hersteller weitergeleitet werden.

Damit Fehler bei der Programm- bzw. Softwareentwicklung im Vorfeld schon bestmöglich verhindert werden können, sollte der Planung ein konkretes Konzept unterliegen. Damit auch im Nachhinein das Auffinden eines Fehlers noch möglich ist, also möglich ohne größere Aufwände zu betreiben, sollte bei der Programmentwicklung auf eine gute Dokumentation geachtet werden. Der Vorteil einer sauberen Dokumentation ist, dass man feststellen kann, zu welchem Zeitpunkt oder bei welchem Entwicklungsschritt der entsprechende Fehler erstmals aufgetreten ist.

Früher, zu Zeiten wo das Internet noch nicht verfügbar war, stellten Software-Bugs speziell die Anwender noch vor größere Herausforderungen. Heute werden Software-Hersteller meistens zeitnah durch deren Anwender über Bugs in der Software informiert, oder die Software-Hersteller stellen diese sogar eigenständig fest. Ist ein Bug erst einmal bekannt, wird dieser in der Regel zeitnah gefixt und kann mit Hilfe eines Software-Updates meistens schnell gefixt werden.

Zwischen den folgenden Fehlern kann unterscheiden werden

Syntaxfehler: Jede Programmiersprache verwendet unterschiedliche Zeichen die bestimmten Regeln unterliegen. Werden die reservierten Zeichen an falscher Stelle verwendet, führt dies zu einem Syntaxfehler. Zu den reservierten Zeichen können, je nach Programmiersprache, Zeichen wie Anführungsstriche, Klammern etc. gehören.

Lexikalische Fehler: Ein lexikalischer Fehler besteht dann, wenn bestimmte Wörter bzw. Befehle, die bei jeder Programmiersprache unterschiedlich sind (oder sein können), nicht korrekt geschrieben wurden. Schon kleinste Abweichungen, z. B. bei Groß- und Kleinschreibung, können dazu führen, dass ein Programmablauf abgebrochen wird.

Semantischer Fehler: Werden die in der Programmiersprache festgelegten Paramater falsch definiert, führt dies in der Folge zu einem semantischen Fehler. Auch wenn die syntaktische Anweisung richtig ist, kann dies zu falschen Ergebnissen oder einem Programmabbruch führen. Der Grund ist, dass trotz syntaktisch korrekter Anweisung eine fehlerhafte Funktion vorliegen kann.

Laufzeitfehler: Der Unterschied des Laufzeitfehlers ist im Vergleich zu den vorhergenannten Fehlern, dass dieser erst bei der eigentlichen Ausführung des Programms auftreten kann. Das kann dann der Fall sein, wenn dieser Fehler beispielsweise während der Entwicklungsphase nicht erkannt wurde. Ein Laufzeitfehler kann zu einem Programmabsturz oder dazu führen, dass keine weiteren Eingaben mehr getätigt werden können. Umgangssprachlich spricht man in diesem Zusammenhang vom „einfrieren“ des Programms.

Bugs aus Sicht der Suchmaschinenoptimierung

Bugs, also das Vorhandensein von Fehlern im Quellcode, sind aus Sicht der Suchmaschinenoptimierer zu verhindern. Wenn beispielsweise der Webseitencrawler von Google (Googlebot) eine Webseite crawlt, bewertet er mit Hilfe eines bestimmten Algorithmus diese Webseite. Ist der Quellcode fehlerhaft, muss man als Webseitenbetreiber damit rechnen, dass Google die entsprechende Webseite eher negativ bewertet. Sind z. B. zwei Webseiten inhaltlich sehr ähnlich, aber im Quellcode der einen Webseite befinden sich deutlich mehr Bugs als im Quellcode der anderen Webseiten, kann dies der ausschlaggebende Grund dafür sein, weshalb die fehlerhaftere Webseite ein schlechteres Ranking erzielt als die andere Webseite.

PageRangers bietet mit dem Modul „Optimierung“ ein ideales Tool, um die OnPage-Faktoren einer Webseite auf bestimmte Bugs zu überprüfen. Häufig finden sich dort Bugs, über die man sich als Webmaster nicht im Klaren war. Bekommt man Bugs angezeigt, kann man diese beheben und entsprechend beheben. Wurden Fehler behoben, kann z. B. auch die Usability und die damit häufig verbundene Verweildauer gesteigert werden. Auch das sind aus der Sicht von Google positive Signale, die nicht unterschätzt werden sollten.

Die logische Folge ist, dass eine optimierte Webseite durch Google in der Regel positiv bewertet wird und somit auch eine Verbesserung der Rankings erzielt werden kann.

API

API ist die Kurzform von Application Programming Interface. Zu deutsch wird API als Programmierschnittstelle oder als Schnittstelle zur Anwendungsprogrammierung bezeichnet. Umgangssprachlich oder kurz spricht man

Weiterlesen >>

Google Trends

Bei Google Trends handelt es sich um ein Analysetool, mit dem der Nutzer sehen kann, wie häufig bestimmte Keywords oder Keyword-Phrasen in einem bestimmten Zeitraum

Weiterlesen >>

CDN

Unter CDN (Die Abkürzung steht für “Content Delivery Network”) versteht man einen Zusammenschluss von Servern, die die Daten in Abhängigkeit des Standortes des Antragstellers, zur

Weiterlesen >>

Sedo

Sedo ist ein Unternehmen mit Sitz in Köln und handelt als Tochtergesellschaft der United Internet AG im Internet mit Domains bzw. Webadressen. Unter der gleichnamigen Domain

Weiterlesen >>

Cache

Cache (dt. Übersetzung: Versteck) bezeichnet in Bezug auf Webseiten einen Zwischenspeicher. Ist eine Seite caching-fähig, kann die Suchmaschine oder der Browser Daten aus diesem Zwischenspeicher

Weiterlesen >>

Click-Through-Rate

Die Click-Through-Rate (deutsch: Klickrate), häufig auch mit CTR abgekürzt, ist eine häufig verwendete Kennzahl im Online-Marketing und wird in Prozent angegeben. Die Click-Through-Rate (CTR) stellt

Weiterlesen >>