Software Entwicklung

Unser Leistungsspektrum

Wir bieten Ihnen unsere Hilfe für den vollständigen Lebenszyklus einer individuellen Software-Entwicklung an. Das umfasst

  • Analyse und Konzeption
  • Entwicklung
  • Installation und Migration
  • Wartung, Pflege und Support
  • Ablösung durch Folgeprodukte – auch wenn das in der Vergangenheit nur selten gefragt war.

Diese Arbeiten erfolgen in möglichst enger Zusammenarbeit mit dem Kunden; Teilbereiche können dabei auch vollständig durch den Kunden in Eigenverantwortung umgesetzt werden. So haben wir bereits öfters Projekte erfolgreich aufgesetzt, bei denen Mitarbeiter des Kunden in die Programmierung der Software einbezogen wurden, sodass die spätere Pflege kostengünstig im eigenen Haus realisiert werden konnte.

Auch bei großen Firmen kommt es immer wieder vor, dass Eigenentwicklungen maßgeblich von nur einer Person betrieben werden. Das betrifft in der Regel Programme, welche ursprünglich „mal eben“ als Provisorien erstellt wurden, aber seit vielen Jahren oder sogar Jahrzehnten im Einsatz sind und dabei auch noch stetig erweitert wurden. Scheidet der Entwickler später aus dem Unternehmen aus, fehlt die Kompetenz, um das System an geänderte Anforderungen anpassen zu können. Verschärft wird das dann, wenn auch noch aus heutiger Sicht veraltete Programmiersprachen und -systeme eingesetzt wurden; hier findet man kaum adäquaten Ersatz.

Natürlich kann nicht jedes System gerettet werden – aber ein Versuch kann sich lohnen!

Technologien

Wir sind offen für neue Herausforderungen, aber natürlich haben wir auch unsere Kernkompetenzen. Diese umfassen insbesondere

  • Makros für Office-Anwendungen in gängigen Skriptsprachen
  • Windows-Anwendungen, insbesondere über .Net-Framework
  • Serverdiensten, Webservices etc.
  • Webanwendungen; auf Wunsch auch inklusive Hosting

Bevor wir jetzt jede Menge Sprachen und Technologien aufzählen, werfen Sie doch einfach einen Blick auf unsere aktuellen Projekte.

Worauf wir Wert legen

Uns ist immer wieder Software begegnet, die zwar gut entwickelt wurde, aber bei weitem nicht den Bedürfnissen des Kunden entsprach. Daher hat für uns oberste Priorität den Kundenbedarf nicht nur zu kennen sondern auch zu verstehen. Mit der Frage „Was möchte der Kunde?“ kommt bei uns auch die Frage „Warum will er das überhaupt?“.

Erst, wenn die Fragen nach dem „Warum“ und dem „Was“ geklärt sind, stellt sich die Frage nach dem „Wie“ – also, welche Technologien sind sinnvoll, welche Programmiersprache, Tools, Software von Drittanbietern etc. soll verwendet werden.

Als kleines Unternehmen können wir die Frage der Technologien sehr viel flexibler beantworten als unsere großen Konkurrenten, die an die im eigenen Haus vorgegebenen Richtlinien gebunden sind. Eine große Softwarefirma kann nur funktionieren, wenn einheitliche Tools zum Einsatz kommen. Solche Richtlinien haben wir nicht und können uns auch hier zu 100 Prozent auf die Bedürfnisse des Kunden einstellen.

Ein kleines Beispiel aus der Praxis: Zu Beginn unserer Geschäftstätigkeit waren wir an einem Projekt beteiligt, in dem es um die Verwaltung von Restschuldversicherungspolicen bei einem Versicherer ging. Ausführendes Unternehmen war einer der großen deutschen Softwarehersteller (100+ Mitarbeiter). Für die Leser, die mit der RSV nicht vertraut sind: die Verwaltung ist relativ einfach. Die Bank, welche die Versicherung im Rahmen ihrer Kredite vertreibt, meldet regelmäßig die neuen Verträge dem Versicherer. Eine Zusammenführung zum Beispiel der Kundendaten mit dem Gesamtbestand des Versicherers erfolgt dabei nicht; Kontakt zur versicherten Person entsteht erst im Leistungsfall. Entsprechend einfach ließe sich das Datenmodell wählen, das ERM (Entitäten-Relationen-Modell) hätte locker auf einer DIN-A4-Seite Platz gefunden. Trotzdem wählte der Hersteller das „Standard-ERM für Versicherer“, ein vielseitiger Moloch, obwohl hiervon nicht mal 10% verwendet wurden. Eine Entscheidung, die mit einem entsprechend hohen Entwicklungsaufwand verbunden war, von der späteren Wartung und Pflege ganz zu schweigen.

Auch wenn wir das Rad nicht ständig neu erfinden, der Einsatz von Software von Drittanbietern birgt Risiken, die zuvor abgewägt werden müssen: Ein Projekt kann scheitern, wenn ein kleines Tool, welches bei Entwicklung und Tests reibungslos funktioniert, im Praxisbetrieb versagt und der Lieferant nicht kurzfristig nachbessert. So setzen wir Tools nur dann ein, wenn eine Eigenentwicklung aus wirtschaftlichen Gründen nicht möglich ist und wenn wir dem Lieferanten vertrauen. Unter Entwicklung von Software verstehen wir nicht das Zusammenstöpseln von fertigen Komponenten zu einem mehr oder weniger stabilen Ganzen sondern eine durchgehende Programmierung in der jeweils geeigneten Hochsprache – fast schon „handwerklich“.

Nach Entwicklung, Installation und Migration ist die Arbeit für uns nicht abgeschlossen. Wir betreuen unsere Programme gerne über diesen Zeitpunkt hinaus, einschließlich Support für den Enduser. Gerade bei Programmen, die an einen großen, inhomogenen Nutzerkreis verteilt werden sollen, ist die kompetente Unterstützung bei Problemen wichtig – und wer könnte diese besser leisten als der Entwickler selbst?