Wir legen Wert auf

Langlebige Software

Einige der von uns betreuten Websites sind fast genau so alt wie die webfactory – weil sie ihren Zweck immer noch erfüllen. Warum uns langlebige Lösungen wichtig sind und wie wir sie erreichen.

Unsere drei Hauptzutaten für langlebige Softwarelösungen:

Langweilige Technik

Zum Beispiel setzen wir auf PHP, so wie drei Viertel aller Websites weltweit. PHP ist nicht besonders abgefahren oder neu, sondern eine ausgereifte Programmiersprache, für die es immer Unterstützung geben wird. Die spannende Herausforderung sehen wir in Ihrem individuellen Projekt – nicht in der eingesetzten Technik.

Stabiles Team

Ein großer Teil des Wissens über Ihr Projekt steckt in den Köpfen der Entwickler. Deshalb bieten wir unseren Mitarbeitern beste Bedingungen, damit sie für Ihr Projekt lange verfügbar bleiben. Mit Erfolg: Über die Hälfte unseres Teams ist über 10 Jahre bei uns.

Hohe Qualität

Die hohe Qualität unserer Lösungen hat für uns oberste Priorität – nicht nur in den Bereichen, die von außen sichtbar sind, sondern gerade auch dort, wo es um die Verständlichkeit des Quellcodes für zukünftige Entwickler geht. Das ermöglicht eine langfristige Wartung und Weiterentwicklung.

Eine Website oder Webanwendung ist im Gegensatz zu anderen Publikationen nicht nur ein gestaltetes Medium, sondern ein Softwareprodukt, in dem umfangreiches Wissen über die fachlichen Hintergründe gekapselt ist und das hohe Investitionen erfordert. Damit dieses Wissen nicht verloren geht, sondern dauerhaft genutzt werden kann, legen wir großen Wert auf langlebige Systeme.

Beispiel für eine Website, die sich über viele Jahre weiterentwickelt hat

krankenkassen.de

Krankenkassen.de ist ein unabhängiges Informationsportal der Berliner Agentur Euro-Informationen, auf dem sie die Leistungen von über 70 gesetzlichen Krankenkassen vergleicht und in Form von verbraucherfreundlichen Texten journalistisch aufarbeitet.

Wir betreuen die Website bereits seit 2002. Sie war damals ein anzeigenfinanziertes Informationsangebot über die gesetzliche Krankenversicherung. Bereits früh bot die Website auch eine Informationsdatenbank, die von den Krankenkassen selbst gepflegt werden konnte.

2015 wechselte der Fokus auf den Vergleich verschiedener Krankenkassen, sowohl was Beiträge als auch was Leistungen angeht.

Seit 2018 können die Nutzer von Krankenkassen.de außerdem von einem digitalen Wechselservice Gebrauch machen, der über folgende Funktionen verfügt:

  • Automatische Übertragung von Eingaben aus Web-Formularen in PDF-Aufnahmeanträge für Krankenkassen
  • Seit 2020 Möglichkeit der elektronischen Unterschrift und der direkten Übermittlung von Wechselanträgen an Krankenkassen via API-Anbindung

2022 ermöglichten wir es Krankenkassen.de zudem, vollständig auf Cookies und Tracking durch Werbepartner zu verzichten. Damit kann die Website ohne Cookie-Consent betrieben werden.

Unsere Maßnahmen für langlebige Softwarelösungen im Einzelnen:

Trennung von Content, Funktionalität und Design

Das Corporate Design vieler Organisationen entwickelt sich deutlich schneller und häufiger weiter als die zugrundeliegenden Daten und Prozesse. Bei der Entwicklung achten wir daher darauf, dass sich das Design unabhängig von den zugrundeliegenden Daten und der Funktionalität ändern lässt.

Beschränkung der genutzten Technologien

Softwareentwickler erfinden gerne neue Dinge. Entsprechend gibt es jedes Jahr neue Trends, Techniken und Frameworks, die versprechen, alles besser zu machen als ihre Vorgänger. Eine unbedachte Integration von immer neuen Technologien in ein Produkt bedeutet aber, dass dessen Komplexität mit der Zeit alleine durch die Zahl der verwendeten Technologien steigt und es damit immer schwerer weiterzuentwickeln wird. Es bedeutet auch, dass Entwickler, die dieses Produkt pflegen sollen, immer mehr Technologien beherrschen müssen. Darunter leidet die Expertise in jeder einzelnen genutzten Technologie.

Wir achten daher bei der Auswahl unseres Technologie-Portfolios sehr genau darauf, welchen Nutzen die Technologien für unsere Kunden bringen und welche Kosten dadurch langfristig entstehen. Wir versuchen, die Zahl unterschiedlicher Sprachen und Technologien auf ein Minimum zu reduzieren und erreichen damit langfristige Wartbarkeit und Investitionssicherheit.

Dan McKinley hat das in seinem Essay "Choose Boring Technology" auf den Punkt gebracht.

Für uns bedeutet das konkret:

  • Wir nutzen seit 1997 Linux, PHP, MySQL und Apache (den sogenannten "LAMP-Stack") als technische Kernplattform für alle unsere Produkte.
  • Wir entwickeln unsere Anwendungen nahezu ausschließlich als klassische, serverseitig gerenderte Seiten, die ggf. um interaktive Funktionalitäten erweitert werden.
  • Wir haben uns 2011 dazu entschieden, das Symfony-Framework als Erweiterung von PHP zur Basis für alle neu entwickelten Produkte zu machen (mehr dazu) und für ältere Produkte einen Weg geschaffen, Symfony nachträglich zu integrieren. Bis heute sind wir von dieser Wahl überzeugt.
  • Wir haben 1998 unser eigenes Content-Management-System wfDynamic entwickelt und nutzen es bis heute in nahezu allen Produkten als Lösung für die Pflege der Inhalte.
  • Jedes unsere Produkte lässt sich mit demselben Befehl ( phlough install) auf jedem Server oder Entwickler-Notebook installieren, auf Wunsch mit einer lokalen Datenbank mit Demo-Daten ( phlough project:setup-db). Das bedeutet, alte Produkte lassen sich genauso leicht pflegen wie neue.
  • Alle Produkte werden in der selben Hosting-Umgebung betrieben und automatisch deployed.

Stabiles Team

Wir geben uns große Mühe, ein attraktiver Arbeitgeber für unser gesamtes Team zu sein und zu bleiben. Neben einer wertschätzenden Teamkultur erreichen wir das durch Begrenzung der Arbeitszeiten, regelmäßige Gehaltserhöhungen, unbegrenzte Fortbildungsangebote und nicht zuletzt durch eine offene, vertrauensvolle Zusammenarbeit mit unseren Kunden. Denn neben der langlebigen Codebasis ist das implizite Wissen, das jedes Teammitglied über die von ihm mitentwickelten Projekte besitzt, eine wichtige Ressource für erfolgreiche Weiterentwicklung.

Durch die einheitliche technische Plattform aller Produkte ist es zudem jedem Teammitglied mit relativ geringem Einarbeitungsaufwand möglich, jedes Produkt weiterzuentwickeln. Wir achten auf einen regelmäßigen Wechsel, sodass das Wissen über die Produkte im Team verteilt wird.

Hohe Qualität und regelmäßige Updates

Wie legen großen Wert auf ein hohes Qualitätsniveau der von uns entwickelten Websites und Webanwendungen und nehmen uns immer Zeit, Schwächen, die uns auffallen, zu verbessern. Hohe Qualität bedeutet unter anderem gute Verständlichkeit des Codes, z. B. durch wohlüberlegte Namen für Variablen und Komponenten (Klassen) – und die gute Verständlichkeit zahlt sich sowohl bei der Einarbeitung neuer Kollegen in ein Produkt aus, also auch, wenn das ursprüngliche Entwickler nach längerer Zeit zu dem Produkt zurückkehrt.

Die von uns entwickelten Anwendungen bringen wir auch regelmäßig auf den neuesten Versionsstand von Symfony und integrieren unsere aktuellsten "Best Practice"-Ansätze. Auch dies trägt zu einer guten Wartbarkeit und Weiterentwickelbarkeit bei.

Automatisierte Tests

Für die Funktionalitäten, die wir in einem Produkt entwickeln, binden wir auch automatisierte Testroutinen ein, die bei jeder Änderung am Quellcode prüfen, dass alles noch so funktioniert wie beabsichtigt. Das ermöglicht uns, auch nach langer Zeit größere Änderungen am Code vorzunehmen, da wir die Gewissheit haben, dass wir merken würden, wenn Fehler entstehen. Mehr dazu auch auf unserer Informationsseite zu Agiler Softwareentwicklung.

Wir fühlen uns verantwortlich

Individuelle Softwareentwicklung erfordert hohe Investitionen. Es ist unser höchstes Ziel, diese Investitionen möglichst nutzenstiftend einzusetzen. Daher beraten wir unsere Kunden intensiv, bevor wir ein großes Projekt starten, und suchen nach möglichen Alternativen. Zugleich fühlen wir uns dauerhaft für jedes von uns entwickelte Produkt verantwortlich. Auch ohne Wartungs- oder Betreuungsvertrag können unsere Kunden sich jederzeit an uns wenden, wenn sie ein Problem mit ihrer Website feststellen oder sie weiterentwickeln möchten. Eine hohe Zahl von uns betreuter Systeme hat sich bereits mehr als 15 Jahre im Produktivbetrieb bewährt und wird laufend weiterentwickelt und aktualisiert.

Digitale Erfolgsgeschichten

Folgende unserer Websites und Webanwendungen haben schon ein besonders langes Leben:

Sprechen Sie uns an

Brauchen Sie Unterstützung bei der Umsetzung einer neuen Website oder suchen Sie nach einer Agentur, die Ihre bestehende Symfony-Anwendung weiterentwickelt? Dann sprechen Sie uns gerne an!