Beiträge

Wir beleuchten die Usability von Webanwendungen im kreITiv-Blog

Grundlagen für Usability von Webanwendungen

Webanwendungen oder Web-Apps sind Softwaresysteme, die auf den Standards und Technologien des WWW beruhen. Sie stellen Ressourcen bereit, die über den Browser als einziges User-Interface verwendet werden können.

Warum überhaupt Usability?

Webanwendungen gewinnen zunehmend an Bedeutung und ihre Nutzung ist in den vergangenen Jahren kontinuierlich angestiegen. Dies begründet einen erhöhten Wettbewerbsdruck im Markt der Web-Apps. Eine schlechte Usability führt somit bei gleichem Funktionsumfang der Anwendung zu einem Wettbewerbsnachteil.

Unabhängig davon, ob “normale” Webseite oder ausgereifte Webanwendung: Die erste Verbindung zum Nutzer entsteht über die grafische Benutzeroberfläche. Der Nutzer erlebt die Usability des Produktes Webanwendung stets unmittelbar während des Arbeitens und entwickelt dadurch seine Entscheidung über eine weitere Benutzung. Das kann zum Problem werden, da eine Vergleichbarkeit zu anderen Wettbewerbern im Internet besonders ausgeprägt ist.

Weiterhin weisen Nutzer ein hohes Maß an Ungeduld auf. Daher muss eine Benutzerfreundlichkeit sichergestellt werden, die dem User in kurzer Zeit den komfortablen Umgang mit der Seite erlaubt.

Usability entwickeln über Seitengestaltung und Navigation

Diese Punkte führen dazu, dass Usability einen hohen Stellenwert im Umfeld des Webdesigns einnimmt. Eine Vielzahl an Ansätzen kann helfen, Usability sicherzustellen. Dazu zählen unter anderem die Seitengestaltung und die Navigation.

1. Die Seitengestaltung ist Grundlage der Usability.

Der Aufbau soll den Interessen der Nutzer entsprechen und die Durchführung typischer Aufgaben unterstützen. Es gilt horizontale Bildläufe zu vermeiden. Bei vertikalen Bildläufen sollten Navigationselemente jederzeit sichtbar sein. Grundsätzlich empfiehlt es sich, den Erwartungen des Nutzers zu entsprechen. Dabei spielt der Aufbau eine elementare Rolle. Sehr verbreitet sind hierarchische Strukturen. Diese sind insbesondere zur Darstellung komplexer Inhalte geeignet. Nutzer sind damit vertraut und finden sich schnell zurecht.

Lineare Informationsstrukturen eignen sich vorrangig bei Sachverhalten, die tatsächlich einem linearen Muster folgen. Gitterstrukturen werden eingesetzt, um abhängige Elemente miteinander in Beziehung zu setzen. Netztopologien werden für komplexe Systeme eingesetzt. Das Suchen auf solchen vernetzten Seiten gestaltet sich mitunter schwierig, da der Aufbau selten einer nachvollziehbaren Logik folgt.

2. Die Navigation innerhalb einer Webanwendung stellt den zweiten wichtigen Faktor der Usability dar.

Jede Bewegung innerhalb einer Webanwendung wird als Navigation bezeichnet. Fühlt sich ein Nutzer desorientiert, kann das der ausschlaggebende Grund für den Misserfolg der Anwendung darstellen. Auch bei der Einrichtung und Präsentation der Bewegungsmöglichkeiten sind daher die Nutzererwartungen einzubeziehen und die Anwender zu führen.

Nutzerfreundliche Webanwendungen bzw. Web-Apps von kreITiv

Wir von kreITiv bieten unseren Kunden maßgeschneiderte Webanwendungen mit hoher Usability, denn wir kennen die Anforderungen. Wenn Sie auf der Suche nach einem kompetenten Ansprechpartner in Sachen Webentwicklung sind, stehen Ihnen die Experten der kreITiv gern mit Rat und Tat zur Seite.

Laravel vs. WordPress - Duell des Webdesigns

Laravel vs. WordPress – Duell des Webdesigns

Zur Entwicklung von Webseiten gibt es grundlegend drei verschiedene Ansätze: die Nutzung eines Content Management Systems (CMS), eines (PHP)-Frameworks oder einer kompletten Eigenentwicklung. Mit den allgemeinen Vor- und Nachteilen dieser Auswahl haben wir uns bereits befasst.

Für Dienstleister, die regelmäßig Webseiten erstellen, sind Eigenentwicklungen für die alltägliche Arbeit schon aus Zeitgründen keine wirkliche Alternative. Dieser Blogartikel soll daher beleuchten, welche Kriterien für ein CMS wie WordPress oder Drupal beziehungsweise für ein Framework wie Laravel oder Symfony sprechen.

1. Welche Funktionen soll die Anwendung bieten?

Welchen Entwicklungsansatz man wählt, wird maßgeblich durch das Ziel, also die Webseite, die am Ende entstehen soll, beeinflusst. Viele Seiten sind rein Content-basiert – zum Beispiel Blogs oder Nachrichtenseiten. Für sie funktioniert WordPress in der Regel besser, da es alle für das normale Content Management nötigen Features wie Kategorien oder eine Bildergalerie enthält. Mit Laravel müssten viele dieser Features erst nachgebildet werden.

Andere Seiten basieren stärker auf der Interaktion mit dem Besucher. Registrierungssysteme, Up- und Downloads von Dateien, Profilverwaltung etc. – die Möglichkeiten sind hier umfangreich. Seiten dieser Art sind effektiver mit Frameworks zu entwickeln. Zwar kann mithilfe von Plugins auch WordPress eine Menge dieser Funktionalitäten leisten, daraus ergibt sich aber auch eine Abhängigkeit vom Funktionsumfang und der künftigen Weiterentwicklung dieser Plugins. Gerade bei längeren Projekten ist das eher unerwünscht.

2. Welche Gimmicks kann ich nutzen?

Zeit ist Geld – das gilt auch für Webentwickler. Dank Plugins, Zusatzcontent oder der Wiederbenutzung von Ansätzen aus anderen Projekten können oft umständliche Arbeitsschritte eingespart werden. Das Entscheidungskriterium hier: Welche Plattform bietet das, was ich benötige und für welches System gibt es die Erweiterungen, die mir Arbeit abnehmen? Das kann genauso ein WordPress-Plugin sein wie ein Laravel Package.

Allgemein sind Frameworks aber sicherer (nicht Open Source), schneller und besser individualisierbar – aber eben auch aufwändiger.

3. Was möchte der Kunde?

Die meisten Projekte haben drei Stellschrauben: Qualität, Geschwindigkeit und Preis. WordPress eignet sich gut für Projekte, die eher klein und statisch sind, denn für diese liefert es das passende Werkzeug gleich mit.

Mit Frameworks wie Laravel dagegen können vergleichsweise komplexere Anforderungen realisiert werden. Sinnvoll ist das vor allem dann, wenn das Projekt langlebig ist oder eventuell zu einem späteren Zeitpunkt erweitert werden soll. Das dauert jedoch entsprechend länger, wodurch in der Regel auch das Projekt teurer wird.

Hier muss letztlich der Kunde abwägen, was seine Ansprüche in puncto Sicherheit, Geschwindigkeit, Individualisierbarkeit oder eben auch Preis sind.

Laravel vs. WordPress: Wer hat die Nase vorn?

Ein eindeutig besserer Entwicklungsansatz ist keine der Alternativen. Je nach Art des Projektes können beide Möglichkeiten sinnvoll sein. Im Duell der Webentwicklung steht es also unentschieden, wobei beide Varianten ihre Nische haben – CMS für kleinere Projekte und Frameworks für komplexere langlebige Anwendungen.

Wir von kreITiv bieten unseren Kunden sowohl Lösungen mit Frameworks, als auch per CMS an oder programmieren und designen auf Wunsch komplett selbst. Wenn Sie auf der Suche nach einem kompetenten Ansprechpartner in Sachen Webentwicklung sind, stehen Ihnen die Experten der kreITiv gern mit Rat und Tat zur Seite. Melden Sie sich noch heute.

Im Eigenbau, per Framework oder CMS zur eigenen Webseite

DIY, CMS oder Framework – Drei Wege zur eigenen Webseite

Das Internet ist heute allgegenwertig. Wenn man etwas sucht, schaut man zuerst dort. Deshalb ist es umso wichtiger für Unternehmen und Privatpersonen dort vertreten und auffindbar zu sein, um die eigenen Produkte und Dienstleistungen anzubieten – eine Webseite muss her.

Deren Erstellung wirft direkt die erste Frage auf. Programmiert man alles selber, nutzt man ein Content Management System (CMS) oder setzt man auf ein (PHP-) Framework? Jede dieser Methoden hat ihre Vor- und Nachteile, welche hier beleuchtet werden sollen.

1. Do it Yourself – Eine Webseite im Eigenbau

Ohne sich in fremde Software einarbeiten zu müssen, kann man eine Webseite komplett selbst programmieren und designen. Im Gegensatz zu den beiden folgenden Methoden muss man sich hier nicht mit anderen Dateien und fremdem Quellcode auseinandersetzen. Der größte Vorteil ist hier aber auch direkt der größte Nachteil. Für viele Anwendungsfälle gibt es bereits Lösungen, die in vorhandener Software implementiert ist, beim DIY jedoch komplett neu geschrieben werden müssen. Dafür kann man jegliche Funktionalität seinen eigenen Bedürfnissen anpassen.

Das Model „Do It Yourself“ eignet sich für kleinere Webseiten, welche größtenteils statisch sind, d. h. ihr Inhalt sich gar nicht bis selten ändert. Ein Nachteil dieser Methode ist, dass u. U. schnell Fehler und Sicherheitslücken ihren Weg in den Quellcode finden, die Funktionen der Webseite außer Kraft setzen oder diese sogar angreifbar für Hacker macht.

Möchte man seinen Inhalt aber stetig erweitern und andere Funktionen zur Verfügung stellen, wie z. B. eine Bildergalerie, Benutzerkommentare oder Anbindungen an soziale Netzwerke, empfiehlt sich eher der Einsatz eines CMS.

2. Content Management Systeme – WordPress, Joomla und Co.

Die beliebteste Basis von Internetseiten sind Content Management Systeme. Neben Marktführer WordPress seien noch Joomla, Drupal und Redaxo erwähnt; darüber hinaus gibt es jedoch noch unzählige andere Anbieter.

Ein CMS dient, wie der Name schon sagt, dem Verwalten von Inhalten. Programmierkenntnisse sind für den schnellen Einstieg nicht von Nöten. Viele grundlegenden Funktionalitäten sind in den meisten CMS bereits oder lassen sich über Plugins nachinstallieren. Auch fertige Designs bzw. Templates sind verfügbar und leicht durch den Nutzer anpassbar. Allerdings ist auch der große Vorteil wieder ein Nachteil. Content Management Systeme sind beliebt, intuitiv und einfach. Das macht sie beliebt für Hacker, die Sicherheitslücken in den Systemen und Plugins ausnutzen, um eigenen Schadcode auf die Webseite zu schleusen (mit Sicherungsmaßnahmen für WordPress haben wir uns hier im Blog bereits befasst).

CMS kurz erklärt:

Sie sehen gerade einen Platzhalterinhalt von YouTube. Um auf den eigentlichen Inhalt zuzugreifen, klicken Sie auf die Schaltfläche unten. Bitte beachten Sie, dass dabei Daten an Drittanbieter weitergegeben werden.

Mehr Informationen

Benötigt man mehr Freiheiten bei der Erstellung einer Webseite, möchte aber eben nicht alles selbst programmieren, kommt man zum Einsatz eines Frameworks.

3. (PHP) Framework

Ein Framework, sei es für PHP (z. B. Symfony, Zend, Laravel), Javascript (jQuery, Prototype) oder eine andere Programmiersprache, bildet den Rahmen für eine Webseitenentwicklung. Es bringt bereits viele Funktionen mit, die das Arbeiten mit Datenbanken, Dateien oder externen Schnittstellen erleichtern. Das Selberprogrammieren dieser Features entfällt somit.

Dennoch muss die Webseite an sich komplett selbst programmiert werden, da das Framework wie gesagt nur Rahmenfunktionen zur Verfügung stellt. Zudem muss sich in den Quellcode und die Funktionsweise des Frameworks eingearbeitet werden. Ist diese Hürde aber genommen, erleichtert das Framework die Programmierung ungemein. Außerdem sind wichtige Sicherheitsfeatures bereits implementiert, und da das Framework nicht die Webseite an sich widerspiegelt, macht es nicht so leicht angreifbar für Hacker wie ein CMS.

Zusammenfassend lässt sich kein Gewinner dieser Gegenüberstellung ermitteln. Jede Möglichkeit hat ihre Vor- und Nachteile und je nach Anforderungen und Versiertheit muss sich für eine Methode entschieden werden.

Wir von der kreITiv bieten unseren Kunden im Rahmen der webbasierten Softwareentwicklung alle drei Optionen an und stehen stets als starker, kompetenter Partner an Ihrer Seite. Zögern Sie nicht und melden Sie sich noch heute mit Ihrem persönlichen Anliegen über unser Kontaktformular.

Schutz vor Hackern, Bots und Spammern dank 10 WordPress Regeln

WordPress mit 10 einfachen Schritten sicher verwenden

Das im Jahr 2003 erschienene Blogsystem WordPress erfreut sich immer größer werdender Beliebtheit unter den Betreibern von Internetseiten. Während bis 2010 der Markt unter den Content Management Systemen noch relativ gleichmäßig aufgeteilt war, verschiebt sich das Bild seitdem immer mehr in Richtung des hochflexiblen und einfach zu bedienenden WordPress. Aktuell liegt der Anteil der auf WordPress basierenden Internetseiten laut CMScrawler.com bei weltweit 36%, während die früheren Platzhirsche Typo3 und Joomla zusammen nur noch auf einen Marktanteil von knapp 30% kommen.

WordPress und die Hacker – Mit der Bekanntheit kommt die Gefahr

Diese positive Entwicklung birgt leider auch einen entscheidenden Nachteil: Verbreitet sich ein System flächendeckend und kann sogar Konkurrenten verdrängen, so steigt es auch in der Beliebtheit bei potentiellen Hackern. Genau aus diesem Grund sollte immer auch das Thema Sicherheit bei der Verwendung von WordPress Beachtung finden.

Im Folgenden möchten wir Ihnen in zehn Punkten die elementarsten Schritte zur Erhöhung der Sicherheit für auf WordPress basierende Internetseiten näherbringen.

Zehn Faustregeln, die die Sicherheit eines WordPress Systems erhöhen

Bereits bei der Installation eines WordPress Systems gibt es einige wichtige Aspekte zu beachten. Als erstes wird der Anwender nach dem Namen der anzulegenden Datenbank gefragt. Dieser Name sollte mit Bedacht gewählt werden. Grundsätzlich sollte der Datenbankname nicht so schnell zu erraten sein; eine schlechte Wahl wäre zum Beispiel Ihr Firmenname oder gar Ihr Nachname.

Im Anschluss daran muss der Nutzername des Administrators gewählt werden. Wird dieser bei der Installation nicht geändert, so heißt der Administratorzugang immer „admin“. Genau darauf spekulieren Angreifer, welche sich bspw. über einen Brute-Force-Angriff Zutritt zum System verschaffen wollen. Dieser Grundsatz gilt natürlich nicht nur für die Wahl des Administratorzugangs, sondern für alle Benutzer eines WordPress Systems. Natürlich sollte man im Zuge dessen auch die Wahl der Passwörter genau überdenken. Je komplizierter das Passwort, desto größer wird der Aufwand, es zu erraten. Dieser Ansatz gilt ebenso für die Wahl des Datenbank-Präfixes, welches direkt nach dem Administratorzugang eingegeben werden kann.

Regel 1 – Datenbanknamen und Präfixe, sowie Benutzernamen und Passwörter mit Bedacht wählen, Benutzerpasswörter regelmäßig ändern.

Im Anschluss an diesen Schritt sollten die in der Konfigurationsdatei hinterlegten „Authentication Unique Keys and Salts“ eingetragen werden. Je komplexer diese Schlüssel gewählt werden, desto sicher sind zum Beispiel die in den Cookies abgelegten Daten.

Regel 2 – „Authentication Unique Keys and Salts“ eintragen, um die Sicherheit von Sessiondaten zu erhöhen.

In zehn Schritten zu mehr Sicherheit im WordPressDie Installation von WordPress ist damit abgeschlossen und kann nun weiter angepasst werden. Jedoch möchten wir an dieser Stelle noch einmal grundsätzlich Bezug auf die Serverkonfiguration nehmen. Ein gut konzipiertes WordPress System allein reicht heutzutage nicht aus, um Sicherheit zu gewährleisten, da auch die Konfiguration von Webservern Sicherheitslücken aufweisen kann.

Damit sind im Speziellen folgende Punkte gemeint: Dateiberechtigungen und FTP-Zugänge, Erreichbarkeit der Datenbanken von außen, Sperren von nicht benötigten Ports. All diese Schritte sollten Beachtung finden, da Sie sonst die Sicherheit Ihrer Internetseite mit einer unzureichenden Serverkonfiguration unterminieren würden.

Regel 3 – Serverkonfiguration prüfen und gegebenenfalls anpassen.

Im Anschluss daran sollte das Template ausgewählt oder auch ggf. nachinstalliert werden. Ist dieser Schritt abgeschlossen, kann die WordPress-Installation mit Inhalten gefüllt werden. Alle weiteren sicherheitsrelevanten Maßnahmen sind recht einfach erklärt.

Verwenden Sie für Ihr WordPress-System im Zweifel keine Plugins von Drittanbietern. WordPress selbst gilt als sehr sicheres System; in der Praxis zeigt sich jedoch oft folgendes Problem. Wird die Funktionalität einer WordPress-Seite mit Plugins erweitert bzw. weisen die verwendeten Plugins sicherheitstechnische Schwachstellen auf, so können Angreifer die verwendeten Plugins auslesen und genau diese Schwachstellen für einen Angriff nutzen.

Regel 4 – Verwenden Sie für Ihr WordPress-System keine Plugins von Drittanbietern.

Wurde auch dieser Aspekt beachtet, sollte sich der Anwender mit der Thematik automatischer Backups beschäftigen. In diesem Bereich gibt es unzählige Erweiterungen für WordPress. Es empfiehlt sich aus den eben beschriebenen Gründen die Verwendung offizieller Plugins. Backups sind sehr wichtig; sollte es einem Angreifer trotz aller Vorsichtsmaßnahmen gelingen, in das System einzudringen, so kann eventuell entstandener Schaden mittels Backup recht schnell wieder behoben werden.

Regel 5 – Führen Sie regelmäßig automatische oder händische Backups Ihrer Internetseite durch.

Sicherheitskopien in Form von Backups sind auch für den nächsten, wichtigen Punkt Voraussetzung. Da WordPress selbst einer stetigen Weiterentwickelung unterliegt, hat dies zur Folge, dass es in regelmäßigen Abständen Updates für das Grundsystem selbst gibt. Diese sind für die Wahrung der Sicherheit am wichtigsten. Werden Schwachstellen von den Entwicklern erkannt, so werden diese in der Regel mit genau solchen Aktualisierungen behoben. Bevor diese Updates durchgeführt werden, sollten Sie unbedingt ein Backup Ihrer Internetseite erstellen und im Anschluss alle Plugins deaktivieren. Danach kann der eigentliche Updateprozess durchgeführt werden.

Regel 6 – Führen Sie regelmäßige Updates durch.

Ein weiterer Schritt zur Erhöhung der Sicherheit ist die Verwendung sogenannter Sicherheitsplugins für WordPress selbst. Mittels solcher Plugins ist es auch für technisch weniger versierte Anwender ohne Probleme möglich, potentielle Sicherheitslücken zu erkennen. Es empfiehlt sich also unbedingt, ein solches Plugin zu nutzen und regelmäßig auszuführen. In der Praxis haben sich Plugins wie Wordfence oder auch All In One WP Security & Firewall bewährt, diese können wir Ihnen aus zahlreichen praktischen Erfahrungen heraus empfehlen.

Regel 7 – Verwenden Sie Sicherheitsplugins für Ihre WordPress Installation.

Auch der Zugang zum Backend kann mittels einer htaccess-Datei auf zum Beispiel eine Auswahl von IP-Adressen begrenzt werden. Diese Beschränkung der Erreichbarkeit des Backends ist für viele Internetseiten sicherlich eine gute Wahl. Einige Betreiber von WordPress-Seiten limitieren darüber hinaus auch die Anzahl der fehlerhaften Logins. Diese Funktionalität kann bspw. über die zuvor genannten Sicherheitsplugins leicht realisiert werden.
Regelmäßigen backuppen, zeitnahes updaten und keine Plugins von Drittanbietern

Regel 8 – Backend-Erreichbarkeit und fehlerhafte Loginversuche begrenzen.

Eine weitere Möglichkeit potentiellen Angreifern das Eindringen in ein System zu erschweren, ist das Ausblenden von WordPress-spezifischen Informationen. Damit ist nicht nur die verwendete WordPress-Version selbst gemeint, sondern auch verwendete Plugins und Templates.

Das Konzept nennt sich „Security by Obscurity“, meint also um Sicherheit durch Unklarheit, und hat das Ziel, dem Angreifer keine konkreten Informationen mehr zum verwendeten WordPress selbst aus dem Quelltext herauslesen zu lassen. Genau dieser Schritt ist oftmals das erste, was ein Angreifer durchführt. Um ein System zu knacken, muss ein Außenstehender genau wissen, welches System mit welchen Erweiterungen genutzt wird. Auch diese Funktionalität kann mittels zuvor genannter Sicherheitsplugins umgesetzt werden.

Regel 9 – WordPress-spezifische Informationen aus dem Quelltext entfernen.

Ein weiteres in der Praxis bekanntes Problem ist das Thema Spam. Dieser tritt heute nicht mehr nur in Form von E-Mails auf, sondern findet durch massenhafte Kommentare und Anfragen auch auf Internetseiten statt. Um diesem Problem Herr zu werden, empfiehlt sich die Verwendung eines Anti-Spam-Plugins. Diese fügen in der Regel Captcha-Abfragen in Formulare ein, sodass ein automatisierter Spamangriff nicht mehr möglich ist.

Regel 10 – Spam-Angriffen frühzeitig durch Verwendung von Anti-Spam-Plugins vorbeugen.

Sind alle diese Regeln beachtet worden, kann man davon ausgehen, dass die prinzipielle Sicherheit einer Internetseite gewährleistet werden kann. Realistisch betrachtet gilt jedoch auch dann die Maßgabe: „Kein System ist wirklich zu einhundert Prozent sicher“. Dies gilt natürlich auch für WordPress. Der Unterschied liegt jedoch im Detail. Präsentiert man Angreifern alle benötigten Informationen auf einem Silbertablett, um sich letztlich leichter angreifbarer zu machen, oder möchte ich genau dies verhindern?