Unsere Services

Von der Konzeption bis zum Live-Betrieb.

Entwicklung

Wie wir bei der Entwicklung vorgehen?

Unser Entwicklungsprozess gliedert sich je nach Lösung in zwei Bereiche: die Front-End- und die Back-End-Entwicklung.

Front-End Entwicklung
Unter Front-End verstehen wir den Teil der Lösung, die der Nutzer sieht. Also die auf den Clients (Desktops, Tablets, Smartphones, etc.) dargestellte grafische Nutzeroberfläche sowie alle Interaktionen, die auf dieser Nutzeroberfläche stattfinden.

Bei der Entwicklung geht es vor allem darum, die aus dem Styleguide und dem Feinkonzept hervorgehenden Vorgaben pixelgenau umzusetzen und für eine browserübergreifende einheitliche Darstellung zu sorgen. Die von uns für die Front-End-Entwicklung eingesetzten Technologien sind vor allem HTML5, CSS, JavaScript. Wenn die zu entwickelnde Software auch auf mobilen Ausgabegeräten wie Smartphones, Tablets o.ä. eingesetzt werden soll, erfolgt der Aufbau von Beginn an nach den Regeln eines Responsive Designs. Bei Apps entwicklen wir sowohl nativ für iOS und Android, als auch hybrid via HTML5 und Frameworks wie Sencha, jQuery Mobile etc.

Back-End-Entwicklung
Unter Back-End verstehen wir die auf dem Server laufende Anwendung. Vereinfacht dargestellt führt der Webserver Programme aus, um dem Nutzer im Front-End beispielsweise einen bestimmten Datenbestand anzuzeigen oder umgekehrt, Front-End-Eingaben des Nutzers im Back-End zu bearbeiten, speichern etc.

Da der Erfolg einer Software zu einem großen Teil von der Leistungsfähigkeit, Stabilität und Sicherheit der Prozess- und Datenverarbeitung im Back-End  abhängt, steht an oberster Stelle ein intelligenter, vorausschauender Entwurf der Back-End-Architektur. In diesem werden im Rahmen einer technischen Spezifikation u.a. Architektur, eingesetzte Technologien, Coding-Richtlinien, Datenmodell und Schnittstellen definiert. Diese stellen dann die Grundlage für die darauf folgende Phase der System-, Anwendungs- und Datenbankprogrammierung dar.

Von uns bei der Back-End-Entwicklung eingesetzte Technologien sind u.a.

    • Java EE (Servlets, JSP, Web Services)
    • Web- und Application-Server (Apache Tomcat)
    • Frameworks (Spring MVC, Spring Security, Quartz, Ehcache, Hibernate)
    • Datenbanken (SQL, Oracle)
    • Sprachen (Java, PHP)
    • Betriebssysteme (Unix/Linux, Windows)

Agile Entwicklungsmethoden
Je nach Projekt, Aufgabenstellung und Vorgaben entwickeln wir auch nach den Methoden der Agilen Softwareentwicklung. Diese zeichnen sich dadurch aus, dass – im Gegensatz zur klassischen Vorgehensweise – die umzusetzende Lösung in der (technischen) Spezifikation nicht bereits in allen Einzelheiten genau geplant und dann in einem einzigen langen Durchgang entwickelt wird, sondern kurze Planungsphasen sich mit kurzen Entwicklungsphasen abwechseln.

Die häufigen Rückkopplungsprozesse und zyklische, iterative Vorgehensweise können dabei für ein besonders effektives und schnelles Vorankommen hilfreich sein. Gleichzeitig ist es bei diesem Vorgehen möglich, dem Kunden sehr frühzeitig eine Basisversion vorzuführen und damit auch schnell und flexibel auf Änderungsanforderungen einzugehen, die sich durch die Rückkopplungsprozesse ergeben.