Was kostet die Entwicklung einer Webanwendung?

Webanwendungen erfreuen sich immer größerer Beliebtheit und lösen native Applikationen nach und nach ab. Aber was sind Webanwendungen eigentlich, wie funktionieren diese und was kostet die Entwicklung einer Webapplikation? Dieser Artikel beschäftigt sich mit der Beantwortung dieser Fragen und soll einen Überblick über Webanwendungen, ihre Funktionsweise und entstehende Entwicklungskosten geben.

Was ist eine Webanwendung?

Webanwendungen oder auch Webapplikationen (Web Apps) sind Anwendungsprogramme, bei der die Darstellung ausschließlich im Webbrowser stattfindet.

Im Vergleich zu traditionellen Desktopanwendungen oder nativen Apps findet die Datenverarbeitung und -speicherung auf zentralen Webservern statt und lediglich die Ergebnisse der Datenverarbeitung werden auf dem Gerät des Nutzers angezeigt.

Durch die Nutzung der modernen Browser können Applikationen auf allen Plattformen laufen und sind vom Endgerät unabhängig, d.h. die Anwendung funktioniert auf Desktop Computer, Tablet oder Smartphone genau gleich. Auch funktionieren die Anwendungen unabhängig vom genutzten Betriebssystem, so dass Windows, MacOS oder Android genutzt werden kann.

Die Entwicklung von Webanwendungen ist oft einfacher und damit günstiger als die von nativen Anwendungen. Es fallen außerdem kaum Kosten für Updates und keine Kosten für Installationen an, da Webanwendungen nicht erst installiert werden müssen, sondern Out-of-the-Box auf Smartphones und Computern funktionieren.

Beispiel: Die Anwendung Doctolib ist eine klassische Webanwendung. Sie dient Ärzten und Patienten Termine anzubieten und zu buchen. Ärzte haben eine komplexe Ansicht, welche ihnen erlaubt verfügbare Zeiträume einzustellen und ihre Dienstleistungen anzubieten. Patienten können über eine vereinfachte Ansicht nach Ärzten mit freien Terminen suchen.

Was kostet eine Webanwendung?

Verschiedene Kostenfaktoren beeinflussen die Kosten für die Entwicklung einer Webanwendung. Wir unterscheiden zwischen sichtbaren und versteckten Kostenfaktoren.

Sichtbare Kostenfaktoren ergeben sich aus den funktionalen Anforderungen, die an die Applikation gestellt werden. Versteckte Kostenfaktoren können durch Projektanforderungen nicht abgebildet werden und sind meist unvorhergesehen und menschengemacht.

Sichtbare Kostenfaktoren

Technische Anforderungen können in ihrer Art und in Form der entstehenden Kosten enorm variieren und lassen sich nur schwer generalisiert zusammenfassen. Wir haben die häufigsten Kostentreiber identifiziert und stellen sie hier vor.

Verwaltete Objektarten

Die verschiedenen Objektarten (Entitäten), die von der Webanwendung verwaltet werden, bilden den Kern der Geschäftslogik der Anwendung. Diese Objektarten stehen in der Regel in Beziehung zueinander und werden von den Nutzern der Webanwendung verwaltet.

Beispiel: In der Anwendung Doctolib sind Objektarten so etwas wie Termine oder Ärzte.
Die verwalteten Objektarten können in ihrer Komplexität und der Anzahl ihrer Beziehungen stark variieren. Pro verwaltete Objektart entstehen so normalerweise Kosten zwischen 2.500€ und 4.000€.

Benutzerverwaltung

Zugriffe auf Webanwendungen müssen häufig verwaltet werden. Im Normalfall gibt es Endnutzer und Administratoren. Endnutzer haben Zugriff einen Teil der Funktionen und Daten, wohingegen Administratoren einen weitaus umfassenderen Zugriff haben. Wie viele Funktionen eine Benutzerverwaltung beinhaltet (Quantität) und wie komplex das Rechtemanagement gestaltet werden soll (Qualität) beeinflusst den genauen Preis sehr stark. Einflussfaktoren dabei sind, ob sich Nutzer selbst registrieren können, ob es eine Single-Sign-On Funktion (SSO) gibt oder ob es eine Multi-Faktor-Authentifizierung gibt (MFA).

Je nach Quantität und Qualität der Anforderungen belaufen sich die Kosten für eine Benutzerverwaltung normalerweise auf zwischen 2.500€ und 20.000€.

(Daten-)Integrationen

Unter Datenintegrationen versteht man gemeinhin Import und Export von Daten um sie in unterschiedlichen Systemen synchron zu halten. In einer Anwendung für Terminbuchungen ist ein Beispiel für eine Datenintegration die Übertragung externer Kalendereinträge in ein System, wie beispielsweise Outlook.

Der Programmieraufwand zum Anschluss an individuelle Interfaces kann enorm variieren. Der Aufwand ist neben der Art der Schnittstelle auch abhängig von genutzter Programmiersprache sowie Umfang und Art der Daten. Als Daumenregel können 3.500€ für einfache Import- und Exportfunktionen angenommen werden.

Bezahlfunktionen:

Viele Webanwendungen monetarisieren sich durch ein Bezahlmodell. Dieses kann in seiner Form und Komplexität sehr unterschiedlich aussehen.

Beispielsweise kann eine Variante ein Freemium-Modell sein, bei dem die meisten Funktionen kostenlos nutzbar sind, einige praktische Zusatzfunktionen jedoch eine Bezahlung erfordern. Eine Kostenorientierung für ein solches Modell sind 7.500€.

Ein anderes typisches Modell für Software-as-a-Service-Produkte ist eine Unterteilung in drei bis vier Preisstufen, wobei jede weitere Stufe mehr Funktionen erlaubt und mehr kostet. Für ein Modell wie dieses belaufen sich die Kosten in der Regel auf weit mehr als 10.000€.

UX- und UI-Design:

UX- und UI-Design bieten eine große Spannweite für Kosten bei der Entwicklung einer Webapplikation. Die angestrebte Zielgruppe ist entscheidend für den Aufwand und damit auch für die Kosten des Designs.

Erklärung:
UX = User Experience, z.dt. Nutzererlebnis
UI = User Interface, z.dt. Nutzeroberfläche

Auf der niedrigen Seite des Kostenspektrums befinden sich Anwendungen, die nur für firmeninterne Geschäftsprozesse genutzt werden und deren Nutzer ausschließlich aus Experten bestehen. Diese Anwendungen zeigen zumeist geschäftsrelevante Daten an und müssen effizient benutzbar sein. Ein originelles Design steht in diesem Fall im Hintergrund und spielt deswegen kaum in die Kosten hinein.
Auf der hohen Seite des Kostenspektrums befinden sich Webanwendungen für Konsumenten. Diese bilden eine weitaus anspruchsvollere Zielgruppe im Bezug auf Benutzbarkeit und Design, jedoch ist Effizienz nicht ganz so wichtig. Aufgrund des größeren Design-Aufwands sind die Kosten für das Erstellen eines Design-Konzepts erwartungsgemäß höher.

Deployment

Deployment ist die Verteilung beziehungsweise Bereitstellung von Software. Die Software muss im Fall von Webapplikationen nicht auf Nutzergeräten installiert werden und Deploymentkosten werden daher oft unterschätzt.

Beim Deployment müssen Server eingerichtet, Ausfallsicherung gewährleistet sowie Backups und Wiederherstellungen konfiguriert werden. Daher, machen Kosten für Deployment normalerweise einen niedrigen zweistelligen Prozentsatz der Projektkosten aus.

Versteckte Kostenfaktoren

Änderungswünsche

Während der Entwicklung kommt es häufig vor, dass sich die Erwartungen und Ansprüche, die an die Anwendung gestellt werden, ändern. Die Änderungen reichen von kleinen Anpassungen des Designs bis hin zu weitreichenden Neukonzeptionen der Funktionsweise einer Webanwendung.

Änderungswünsche sind ganz natürlich und kaum ein Projekt wird ganz ohne sie fertiggestellt. Dennoch sollte die Zahl der Änderungen gering gehalten werden, da diese für explodierende Kosten sorgen können. Durch den Einbau von Änderungen wird der eigentliche Entwicklungsablauf unterbrochen und bereits geleistete Arbeit muss angepasst oder neu durchgeführt werden und der Aufwand ist deswegen nur schwer vorhersehbar. Diese Unvorhersehbarkeit sorgt dafür, dass Mehrkosten entstehen können, die sogar die ursprünglichen Entwicklungskosten übersteigen können.

Unerfüllte Voraussetzungen

Unerfüllte Voraussetzungen wünscht sich keiner und können einfach verhindert werden. Dabei handelt es sich um Zuarbeiten, die für eine reibungslose Entwicklung notwendig sind, wie beispielsweise fehlende Zugänge, Daten oder Designs. Wenn Voraussetzungen nicht erfüllt sind, wird die Entwicklung deutlich erschwert oder die Entwicklungsarbeit gar unterbrochen. Die dadurch entstehenden Kosten können schnell einen signifikanten Teil der Gesamtkosten ausmachen.

Bei einer geplanten Entwicklungsdauer von 10 Wochen bedeutet eine Verzögerung von einer Woche gut und gern Mehrkosten von mindestens 10%.

Versteckte Kosten gering halten: Versteckte Kosten gering zu halten ist von großem Interesse für alle Stakeholder bei der Entwicklung einer Anwendung.

Bevor die eigentliche Entwicklung beginnt müssen Anforderungen klar herausgearbeitet werden. Kunde und Dienstleister sollten die Anforderungen in einem gemeinsam erarbeiteten Entwicklungskonzept zusammengefasst festhalten. In kurzen Feedbackschleifen kann dieses Konzept verfeinert werden, um spätere Änderungen während der Entwicklung zu vermeiden.

Während der Entwicklung ist es wichtig, dass alle Beteiligten jederzeit einen Einblick in den aktuellen Entwicklungsstand haben. Durch regelmäßiges Feedback und transparentes Erwartungsmanagement kann eine gemeinsame Vision für die finale Webanwendung entstehen.

Durch genaue Einblicke und eine gemeinsame Vision, ist es allen Stakeholdern jederzeit möglich Probleme zu identifizieren und aus dem Weg zu räumen.

Wie funktioniert eine Webanwendung?

Webanwendungen folgen einer Client-Server-Architektur. Client und Server haben hierbei vollständig getrennte Aufgabenbereiche.

Client

Der Client ist zuständig für die Dateneingabe und -darstellung.

Die Client-Anwendung läuft als unabhängige Anwendung im Webbrowser des Nutzers. Es werden in der Regel die Webtechnologien HTML (für die Anzeige von Inhalten), CSS (für das Design) und JavaScript (für die Interaktivität der Webanwendung) genutzt.

Daten werden über das Übertragungsprotokoll HTTP an den Webserver gesendet und von diesem empfangen.

Server

Der (Web-)Server ist zuständig für die Datenverarbeitung und -speicherung.
Dieser ist typischerweise ein virtueller Server in der Cloud, es kann sich aber auch um einen physischen Computer handeln. Die Server-Anwendung besteht aus der Software, die Daten sendet und empfängt, Datenbanken, Dateisystemen und gegebenenfalls andere Services, die für den vollen Funktionsumfang notwendig sind.

Unterschiede zu Websites

Auf den ersten Blick wirken Webanwendungen zunächst einmal wie Websites und die Unterschiede sind in der Tat fließend. Die Gemeinsamkeiten liegen darin, dass Daten mit HTTP übertragen werden, der Webbrowser für die Ansicht genutzt wird und die Navigation über URLs erfolgt.

Die Unterschiede liegen zumeist darin, dass Webanwendungen ein gewisses Maß an Interaktivität bieten und sich nicht nur auf die Anzeige von Informationen beschränken. Webanwendungen ermöglichen den Nutzern Vorgänge anzustoßen, Daten einzugeben und Daten abzurufen.

Vor- und Nachteile von Webanwendungen

Vorteile

Entwicklungskosten

Der wichtigste Punkt für die Entwicklung einer Applikation sind meist die Kosten. Webanwendungen laufen automatisch bereits auf verschiedenen Plattformen und Betriebssystemen, da der Webbrowser die gemeinsame Grundlage darstellt. Durch die gemeinsame Grundlage müssen nicht unterschiedliche Anwendungen für verschiedene Betriebssysteme konzipiert, designed und implementiert werden.

In jedem Fall spart man durch die Wahl einer Webanwendung mindestens 20% der Kosten im Vergleich zu nativen Anwendungen. Je nach Anwendungsbereich, Zielgruppe und unterstützten Plattformen können bis zu 70% der Kosten eingespart werden.

Entwicklungszeit und Wartungsaufwand

Der Aufwand ist der primäre Kostentreiber bei der Entwicklung. Daher verhält der Aufwand sich auch nahezu proportional zu den Entwicklungskosten, wodurch diese 20-70% geringer ausfallen als bei der Entwicklung nativer Anwendungen. Die Kosteneinsparung besteht auch nach der Implementierung der Software. Der Wartungsaufwand ist vergleichsweise gering, wodurch das Risiko für hohe Kosten stark minimiert wird.

Der Fakt, dass es sich um eine Webanwendung handelt sorgt außerdem dafür, dass Kunden den Entwicklungsfortschritt online verfolgen können und somit viel schneller und gezielter Feedback geben können. Durch diese kurzen und schnellen Kommunikationswege verkürzt sich die Entwicklungszeit drastisch.

Installation und Updates:

Eine Installation ist für Client-Geräte nicht erforderlich, da Webanwendungen über den Browser abgerufen werden können. Nach der Veröffentlichung ist die Applikation sofort online verfügbar. Es ist kein Listing in einem App-Store notwendig und es müssen keine Installer verwaltet werden.

Bei Updates auf eine neue Softwareversion reicht ein zentrales Update der Webanwendung und es fallen keine Kosten für die Updates einzelner Geräte an.

Zusätzlich wird die Nutzerverwaltung vereinfacht, indem der Nutzerzugriff jederzeit zentral in der Anwendung flexibel verwaltet werden kann.

Plattformunabhängigkeit

Webanwendungen sind nahezu unabhängig von der Plattform, auf der sie laufen. Sie funktionieren auf allen Betriebssystemen und auf einem Desktop-Computer, Tablett oder Smartphone. Datenverarbeitung wird zentral auf einem Server vorgenommen und die Webapplikationen sind dadurch nicht auf einfache Operationen beschränkt.

Nachteile

Performance

Durch die eingeschränkte Leistung von Software im Browser sind Webanwendungen in ihrer Leistung limitiert. Aufwändige Funktionen, die viel Arbeitsspeicher oder Rechenleistung benötigen, können nicht auf dem Nutzergerät durchgeführt werden. Dieser Nachteil kann jedoch dadurch ausgeglichen werden, dass die meisten Operationen asynchron vom Server der Anwendung ausgeführt werden können und der Client lediglich Ergebnisse darstellen muss.

Online-Zugriff

Webanwendungen erfordern während der Benutzung eine stetige Internet-Verbindung, da die Daten nicht lokal, sondern serverseitig verarbeitet und gespeichert werden. Dieser Online-Zugriff ist heutzutage in den allermeisten Anwendungsfällen gewährleistet.

Unterschiedliche Darstellung

Webanwendungen werden nicht gezielt für eine Plattform entwickelt. Die Systeme, auf denen sie ausgeführt werden, sind extrem unterschiedlich in ihrer Machart und den Voraussetzungen, die sie bieten. Daher kann es bei Webanwendungen häufiger dazu führen, dass sie auf unterschiedlichen Betriebssystemen (z.B. Windows und MacOS) oder in unterschiedlichen Browsern (z.B. Chrome und Firefox) verschieden angezeigt werden. Häufig können Designer diese Unterschiede schon im Voraus absehen und in Designentscheidungen einfließen lassen.

Fazit

  • ✅ 20-70% niedrigere Entwicklungskosten

  • ✅ 20-70% kürzere Entwicklungszeit

  • ✅ Einfache Installation und Wartung

  • ✅ Plattformunabhängigkeit


  • ❌ Niedrigere Performance

  • ❌ Online-Zugriff notwendig

  • ❌ Unterschiedliche Darstellung

Webanwendungen sind in ihrer Entwicklung deutlich günstiger und zeitsparender als die Entwicklung nativer Applikationen. Außerdem stehen Webapplikationen ihren nativen Geschwistern in kaum einem Anwendungsfall in etwas nach.

Eine verringerte Performance und die Notwendigkeit einer stetigen Internetverbindung stellen für die meisten Anwendungsbereiche keinen Nachteil dar und die Vorteile überwiegen meist. Somit können viele Anwendungen problemlos als Webanwendung umgesetzt werden.

Haben Sie eine konkrete Projektidee?

Buchen Sie sich direkt einen kostenlosen Beratungstermin und beginnen Sie Ihr Softwareprojekt jetzt!

Haben Sie eine konkrete Projektidee?

Buchen Sie sich direkt einen kostenlosen Beratungstermin und beginnen Sie Ihr Softwareprojekt jetzt!

Haben Sie eine konkrete Projektidee?

Buchen Sie sich direkt einen kostenlosen Beratungstermin und beginnen Sie Ihr Softwareprojekt jetzt!

Haben Sie eine konkrete Projektidee?

Buchen Sie sich direkt einen kostenlosen Beratungstermin und beginnen Sie Ihr Softwareprojekt jetzt!

© Copyright 2024, All Rights Reserved by Canida

© Copyright 2024, All Rights Reserved by Canida

© Copyright 2024, All Rights Reserved by Canida

© Copyright 2024, All Rights Reserved by Canida