Neuentwicklung und Betrieb

„Viele Wege führen nach Rom“ 

– ein überaus passendes Sprichwort, wenn es um die Neuentwicklung von Software geht. Ausgehend von einer “grünen Wiese” eine effektive und funktionierende Software hervorzubringen, ist gerade aufgrund der Fülle an Lösungswegen und beständiger Entscheidungspfade ein kompliziertes Unterfangen. Die Herausforderung und Kunst ist nun, den optimalen Weg zum Ziel und zur Zufriedenheit des Kunden zu finden und dabei die steinigen und unwegsamen Pfade gerade nicht zu begehen und auch nicht in einer Sackgasse zu enden. Dafür benötigt es belastbares Wissen, eine gehörige Portion Erfahrung und die Kunst, auch unter widrigen Umständen, die jeweilig beste Entscheidung treffen zu können.

Der “Riecher” für den richtigen Weg 

Über viele Jahre hinweg haben wir bei ARS in unzähligen Softwareentwicklungsprojekten dieses Wissen und diese Erfahrung aufbauen können und im beständigen Wissensaustausch und in Reflexionsschritten veredelt. Unsere Kunden profitieren nun von diesem fachlichen und technischen Wissensschatz, wie wir Neuentwicklungen angehen müssen, um nicht nur schnell und effizient ans Ziel zu gelangen, sondern auch eine möglichst langlebige, erweiterbare und leicht wartbare Software zu erschaffen. Ein dazu hochprofessionelles Vorgehen umfaßt nicht nur die Softwareentwicklung an sich, sondern auch die Integration hochprofessioneller Kompetenz in den Disziplinen der Softwarearchitektur und Qualitätssicherung. 

Kompetenz und Erfahrung für Ihr Business

Damit uns das gelingen kann, halten wir uns vom Start weg an die Grundprinzipien sauberer und handwerklich solider Softwareentwicklung. Dazu gehört neben der Verwendung von Versionskontrollsystemen, Continuous Integration Servern, statischen Codeanalyse-Tools, professionellen Entwicklungsumgebungen sowie Werkzeugen für Code Reviews auch die Einhaltung fundamentaler Prinzipien unserer Branche – „Clean Code“ und „Clean Architecture“ sind für uns Begriffe, die wir leidenschaftlich mit Leben füllen – und das bereits vor der ersten Zeile Quelltext. 

Darüber hinaus stellen wir uns zusammen mit unseren Kunden stets die Fragen, welche uns über den gemeinsamen Weg führen:

  • Welche Use Cases werden mit der Software abgedeckt?  

  • Wer sind die Nutzer der Software und wie viele sind das?    

  • Mit welchen Funktionen wäre den Nutzern bereits in den ersten Versionen („Minimum Viable Product“, MVP) geholfen?  

  • An welchen Stellen wird sich die Software in den kommenden Monaten und Jahren stärker und wo weniger stark verändern und welche Architektur eignet sich hierfür besonders? 

  • Auf welche Sicherheitsaspekte muss von Anfang an geachtet und in Architekturüberlegungen aufgenommen werden?

Wer profitiert von uns?  

Mit diesen Erfolgsrezepten gepaart mit unserer fast 30-jährigen Erfahrung können wir auf unzählige erfolgreiche Softwareentwicklungsprojekte in diversen Branchen aus dem privatwirtschaftlichen und behördlichen Bereich blicken. Viele dieser Projekte sind hochkritisch und wurden von externen Stellen hinsichtlich ihrer Skalierbarkeit und Sicherheitsrelevanz erfolgreich abgenommen. Es verwundert somit nicht, wenn wir unzählige Kunden mit unserer Expertise in folgenden Technologienschwerpunkten und -ökosystemen mehr als zufriedenstellen konnten: J(ava/akarta)EE inkl. diverser Applikationsserver, Spring, Spring Boot, Docker/Kubernetes, OpenShift, Microservices, Webservices, Node.js, TypeScript-basierte Webapplikationsframeworks: Angular, Vue.js,, …), CI/CD, Atlassian Tools, ...

Der Weg bleibt ein Ziel 

Neben diesen und vielen weiteren Fragen rücken wir einen weiteren Aspekt zu Beginn der Reise ganz besonders in den Fokus: den Betrieb der Software. Es nützt wenig, wenn die Software zwar sauber und zügig entwickelt wurde, aber nicht zum Termin live gehen kann, weil operationale Aspekte nicht ausreichend und gleich zu Beginn gewürdigt wurden. Parallel zur Entwicklung einer ersten Version unterstützen wir deshalb unsere Kunden beratend und/oder Hands-on mit unserer langjährigen Erfahrung zum Softwarebetrieb beim Aufbau, Pflege und Aktualisierung der richtigen Infrastruktur – sodass schon beim ersten Schritt der Weg frei ist für ein langes und lebendiges Softwareleben.