+49 (0) 211 90 32 94 - 0 info@rising-systems.de

Wir entwickeln Software

… und das schon seit über 20 Jahren für verschiedene Anwendungen. Webbasierte Lösungen, Serveranwendungen, Mobile Apps und vieles mehr. Software ist, anders als Hardware, eigentlich nie fertig und braucht meist regelmäßig Wartung und Updates um Funktionalität und Sicherheit zu gewährleisten. Selbstverständlich übernehmen wir das auf Ihren Wunsch – und begleiten Sie durch den gesamten Produktlebenszyklus.

Unsere interdisziplinären Teams, sprechen mehrere Sprachen: die der Maschinen und die Ihrer Kunden, die wir nötigenfalls erlernen. Wie ein komplexes Gebäude brauchen auch Software-Projekte Zeit und Planung. Wir begleiten Sie, mit Ihrer Idee, von der Innovation, der Erstellung des Geschäftsmodells und der Businesspläne über die Softwareentwicklung, Design, Usability und mehr … bis zur ständigen Verbesserung und Weiterentwicklung Ihres Produktes.

Nicht immer braucht es ein ganzes oder sogar mehrere Teams — wir unterstützen Sie auch bei schnellen Änderungen mit nur einer Person und innerhalb weniger Stunden oder Tage.

Vereinbaren Sie einfach einen unverbindlichen und kostenfreien Beratungstermin. Wir freuen uns auf Sie!

Welche Programmiersprachen sprechen wir?

Die Antwort ist ganz einfach: Die Sprache, die für Ihr Projekt die richtige ist. Wir setzen für Ihr Vorhaben nicht eine Programmiersprache oder Technologie ein, nur weil wir diese besonders gerne mögen. Jedes Projekt hat andere Anforderungen und darauf kommt es an. Zusammen versuchen wir, die möglichst beste Lösung zu finden.

Wir sind es gewohnt ständig neue Sprachen, Technologien oder Frameworks (kennen) zu lernen.

Das liest sich vielleicht sehr anstrengend, aber tatsächlich häufen sich die Fälle und es sind am Ende dann doch gar nicht so viele verschiedene Sprachen. Wenn es mal ganz exotisch ist und wir es für unwirtschaftlich halten, wenn wir das Projekt übernehmen, dann sagen wir Ihnen das. Das kann dann passieren, wenn wir eine Entwicklung übernehmen sollen und diese in einer nicht mehr sehr verbreiteten und veralteten Sprache geschrieben wurde. Das passiert aber selten.

Viele bei rising systems waren auch vorher in anderen Unternehmen beschäftigt und haben dort verschiedene Sprachen kennengelernt. Daher ist unser Fundus sehr reichhaltig. Lassen Sie sich überraschen.

Beispiele

Java & Java EE, C, C++, C#,  Python, Ruby, Objective-C, R, .NET, VBA, GWT,  Prolog, Modula II, Pascal, Shellscripting (bash, ksh, csh, awk, Perl)

Node.JS, Angular, React, Vue.js, JavaScript, TypeScript, php

SQL,  NoSQL, PLSQL, GraphQL

Swift (iOS), Kotlin/Java (Android), React Native/NativeScript (cross Platform)

 

Wie läuft üblicherweise so ein Projekt ab?

Initialer Workshop

Häufig beginnen wir ein Entwicklungsprojekt mit einem Workshop, der zum Ziel hat bei allen Projektbeteiligten ein gemeinsames Verständnis zu erreichen und Folgendes herauszuarbeiten:

  • Vision des Produktes
  • Geschäftsmodell
  • (Proto-) Personas
  • Minimal Viable Product (MVP)
  • Backlog: Epics, User Stories und Tests
  • Release Planung

Referenzsprint

Die meisten Projekte werden agil durchgeführt. Die gesamte Entwicklung wird in sogenannte Sprints eingeteilt — kurze Etappen an deren Ende immer ein benutzbares Stück Software steht. Dieses Ergebnis ist maßgeblich, denn nur so kann Feedback entstehen und von Anfang an in die Entwicklung einfließen.

Außerdem ermitteln wir über den ersten Sprint (Referenzsprint) die Entwicklungskapazitäten, die bei jedem Team und jedem Projekt anders sind. Diese helfen uns die Release Planung zu managen.

Was ist dieses “agil” eigentlich?

Ein agile Durchführung ist ein empirisches Vorgehen, dass für die Entwicklung komplexer Projekte gedacht ist. 

Ein üblicher Gegensatz dazu ist das “Big Design Up Front”. Hier schreibt man lange Anforderungsdokumente, die alle Elemente der Software enthalten sollen und beginnt dann häufig mit bestimmten Grundarbeiten, wie das Datenmodell der gesamten gedachten Anwendung zu entwickeln. Das macht man zu einem Zeitpunkt, zu dem man am wenigsten über das Produkt weiß und das Projekt das größte Risiko hat. Echte Ergebnisse sieht man erst nach vielen kostspieligen Schritten, nur um dann zu erkennen, das es noch viele Änderungen braucht (die dann auch um kostenintensiver sind, je mehr schon passiert ist).

Ein agiles Vorgehen plant auch “alles”, aber nur sehr grob und immer nur die wirklich planbaren nächsten Elemente genauer. Das Produkt wird in kleinen Schritten (zwischen einer und vier Wochen) entwickelt und am Ende steht jeweils ein Stück benutzbarer Software, die inspiziert und getestet werden kann. Sie ist Ausgangslage für die neue Planung. So werden wichtige Erkenntnisse von Anfang an gewonnen und die Software mit jedem Schritt verbessert.

Das ist aber nur ein Beispiel vieler Vorteile, die wir Ihnen gerne im Detail vorstellen. Allerdings macht es nicht immer Sinn agil vorzugehen. Wir helfen Ihnen das richtige Modell für Ihre Herausforderung auszuwählen.

Iterative Entwicklung

Nach dem Referenzsprint folgen weitere Sprints. Die Anzahl der Sprints wird durch viele Faktoren bestimmt. Beispielsweise kann es sein, dass ein festes Budget vereinbart ist oder ein fixes Releasedatum festgehalten wurde.

Mit jedem Sprint wird die Software umfangreicher und wird wieder und wieder überarbeitet. Jede unterwegs gewonnene Erkenntnis wird sofort umgesetzt und fließt in das Projekt ein.

Usability und User Experience (kurz: UX)

Unserer Meinung nach handelt es sich hierbei um ein wesentliches Thema, das von Anfang an in einem Projekt berücksichtigt werden muss. Über verschiedene Testverfahren, die gerade anfangs möglichst unaufwendig sein sollten, werden Annahmen verifiziert. Beispielsweise ob die Zielgruppe tatsächlich etwas für eine bestimmte Funktion zahlen würde oder ob die Annahme richtig ist, dass sich Kunden lieber von einem virtuellen Dienst statt einem persönlichen Berater im Erstgespräch aufklären lassen möchte.

Weil wir benutzerzentrierte Software für wesentlich halten, haben wir alle bei uns im Team in Usability-Methoden trainiert und entsprechende Expertinnen und Experten an Bord.

Releases

Zu einem bestimmbaren Zeitpunkt wird die Software dann veröffentlicht, was man ein Release nennt. Oft passiert das anfangs an eine geschlossene Benutzergruppe, um Tests in größerem Umfang durchzuführen und möglichst viele Fehler vor einem öffentlichen Release zu finden. Das kann auch in verschiedenen Stufen passieren. Gerne beraten wir Sie auch hierzu.

Wartung und Weiterentwicklung

Wenn beispielsweise im Betrieb Fehler entdeckt werden oder entstehen oder Benutzer Unterstützung bei der Verwendung brauchen, dann können wir Sie weiter unterstützen.

Auch bei der Weiterentwicklung des Produktes und der Evolution des Geschäftsmodells — wir stehen an Ihrer Seite, mit Rat und Tat.

Wann macht eine agile Entwicklung Sinn?

Die meisten Entwicklungsprojekte sind heute sogenannte “agile Projekte”, die das Scrum Framework nutzen. Aber ob eine agile Entwicklung Sinn macht oder nicht, kann nicht pauschal beantwortet werden. Es kommt auf die tatsächlichen Bedingungen und Anforderungen des Projektes an.

Bevor wir ein Vorhaben beginnen, schauen wir deshalb genau hin und beraten Sie hinsichtlich der Vorgehensweise. Maßgebliche Faktoren für eine solche Beurteilung sind die Größen der Gewissheit bezüglich der Anforderungen und Lösungsräume.

 

Wir haben

Scrum Master

%

Anteil der agilen Projekte

%

in Scrum ausgebildet

Beispielprojekte

Sprechen wir über Ihr Vorhaben

Nutzen Sie die Gelegenheit uns völlig unverbindlich kennenzulernen und verschaffen Sie sich direkt vor Ort einen Eindruck. Gerne rufen wir Sie zurück und vereinbaren mit Ihnen Ihren Wunschtermin.

Dürfen wir Sie bei Ihrem Vorhaben unterstützen, haben Sie eine Frage oder eine Anmerkung?

 

rising systems AG
Benrather Schloßallee 99
40597 Düsseldorf
Deutschland

+49 (0) 211 / 90 32 94 - 0
info@rising-systems.de
www.rising-systems.de