Agil dokumentierenAgil dokumentieren

204 members | 185 posts | Public Group

Mit cards+ wird inkrementelles Doku­men­tieren in einem agilen Software-Entwicklungsprozess zur leist­baren Auf­gabe. Die Doku­men­te werden prüfbar, die Qualität messbar.

Mit Interesse verfolge ich schon lange die Podcasts und Blog-Beiträge der INNOQ. Die Frage "Ist Domain-Driven Design überbewertet?" hat mich sofort interessiert, weil die Konzepte und Prinzipien von DDD sehr gut zu cards+ passen. Aber hören bzw. lesen sie selbst.

https://www.innoq.com/de/podcast/088-domain-driven-design-ueberbewertet/

https://www.innoq.com/en/blog/is-domain-driven-design-overrated

Der Einsatz von cards+ kann in einem Software-Entwicklungsprozess den Aufwand für die Erstellung und Wartung einer Produktdokumentation minimieren und die Qualität der Ergebnisse (inkl. Code, Tests, Spezifikationen) dauerhaft sichern.

cards+ steht nicht in Konkurrenz zu agilen Methoden wie XP, Scrum oder Kanban, sondern ergänzt sie optimal.

cards+ ist auf Neudeutsch "opinionated", also eine Methode mit eigener Meinung. Das bedeutet, dass mit den empfohlenen Werkzeugen (u.a. ein Wiki), der Struktur der Dokumentation und den dazu passenden Bausteinen automatisch ein bestimmtes Vorgehen verbunden ist. Und DDD war hier eine wichtige Inspiration.

Das Fazit aus dem Blog-Beitrag von INNOQ passt auch hier:

> Make DDD part of your tool set, but make sure you don’t stop there. There is a life beyond DDD.

cards+ harmoniert nach eigener Erfahrung ausgezeichnet mit DDD. Mit cards+ lässt sich DDD in jedes agile Software-Entwicklungsprojekt integrieren.

In den beiden letzten Beiträgen in diesem Forum habe ich versucht, Gründe zu finden, warum ein KMU eine individuelle Anwendung braucht. Die eigenen Stärken mithilfe einer auf die Bedürfnisse des KMU zugeschnittenen individuell entwickelten Software zu unterstützen kann in jeder Branche den Unterschied machen.

Was hindert also ein KMU, individuelle Anwendungen einzusetzen?

> Angst vor einer Kostenexplosion.

Die Leistungen der Cloud-Dienste haben ihren Preis. Die Kosten sind abhängig von den benötigten Ressourcen. Daten in der Cloud zu speichern kostet ebenfalls Geld. Cloud-Dienstleister bieten eine Vielzahl an Preis- und Nutzungsmodellen an, die den Zugang und die Nutzung von Cloud-Ressourcen auf unterschiedliche Weise berechnen. Ein Vergleich ist in vielen Fällen schwierig. Erfahrung fehlt.

>Fehlendes Wissen über die Möglichkeiten von Cloud-Technologien.

Die ersten Angebote für Online-Dienste wurden von Amazon im Jahr 2006 ins Leben gerufen. Cloud-basierte Anwendungen haben sich mittlerweile in der gesamten Wirtschaft durchgesetzt. Laut Bitkom nutzten drei von vier Unternehmen im Jahr 2019 Rechenleistungen aus der Cloud. Trotzdem fehlt häufig das Wissen über jene Cloud-Technologien, die über das Speichern von Kontakten, Bildern oder Dokumenten hinausgehen. Vielen Unternehmern ist nicht klar, wie einfach Cloud Computing und Cloud Storage mittlerweile genutzt werden kann.

> Vorbehalte wegen Kontrollverlust durch die Cloud-Technologien.

Kontrollverlust und Sicherheitsrisiken zählen zu den häufigsten Argumenten gegen den Einsatz von Cloud-Technologien. Datenschützer kritisieren die Anbieter von Cloud-Diensten. Bei Umfragen geben Unternehmer an, dass sie sich vor einem unberechtigten Zugriff auf sensible Unternehmensdaten fürchten. Der Brand eines Rechenzentrums 2021 hat gezeigt, dass auch die Cloud eine physische Grundlage hat. Gibt ein Unternehmen seine IT aus der Hand, so verliert es in bestimmtem Umfang auch die Steuerungsmöglichkeiten.

---

Cloud-Technologien haben schon längst Einzug gehalten in den KMU. Ungeplant. Beschäftigte nutzen Cloud Storage für private Zwecke, z.B. Dropbox, GMX oder die Angebote von Google, Microsoft oder Amazon. Sie kommunizieren mit WhatsApp, Facebook oder anderen Social-Media-Angeboten. Schnell passiert es, dass diese Dienste auch für berufliche Zwecke genutzt werden. Die Covid-19-bedingte Mobilarbeit hat diesen Trend noch verstärkt. Die Situation birgt jedoch große Risiken für Datenschutz und Informationssicherheit.

Cloud-Technologien sind eine Chance für ein KMU. Cloud Computing ist nicht bloß eine IT-Infrastruktur. Es ist ein flexibles Rechenzentrum – ortsunabhängig und ohne eigenes IT-Team nutzbar. Cloud Storage und Kommunikationskanäle werden vom Unternehmen bereitgestellt. Dadurch behält das Unternehmen die Kontrolle über seine Daten.

Cloud-Technologien einzusetzen erfordert spezielles Wissen und vor allem Erfahrung. Die Wahl des richtigen Preismodells ist entscheidend. Der vermeintliche Kostenvorteil ist schnell hinfällig, wenn die tatsächliche Nutzung nicht kontinuierlich überprüft wird. Daten müssen verschlüsselt werden. Ein solides Sicherungskonzept ist auch in der digitalen Welt erforderlich. Daten in der Cloud zu speichern spart Kosten, wenn ein KMU kein eigenes IT-Team mehr braucht. No Ops nennt sich das Konzept. Das Konzept basiert auf größtmöglicher Automatisierung bei der Installation der Software und kontinuierlicher Kontrolle aller Ressourcen der Anwendung im Betrieb.

Ein KMU kann sich Erfahrung von einem Partnerunternehmen holen. Dieser strategische Partner für die Software-Entwicklung muss auf die besonderen Bedingungen in einem KMU Rücksicht nehmen.

> Das Budget für die Software-Produktion ist begrenzt.

Einem KMU fehlt in der Regel der Spielraum für Experimente und Irrwege. Die Konsequenz ist, dass die Software-Produktion auf der Basis erprobter Software-Architekturen erfolgen muss.

> Die Software-Produktion ist agil.

Das Wort „agil“ in seiner heutigen Bedeutung wurde vor allem durch das Manifest für agile Software-Entwicklung geprägt. KMU-Software kann agil entwickelt werden. Enge Zusammenarbeit von Kunde und Entwickler sorgt für Zufriedenheit auf beiden Seiten.

> Die Software-Produktion ist inkrementell.

Agile Software-Entwicklung ist empi­risch, inkre­men­tell und itera­tiv. Durch Erfahrung und regelmäßige Beobachtung verbessern sich Kunde und Entwickler. Selbst­organi­siert. In kur­zen Zyk­len ent­wickeln sie kunden­wirk­same Inkre­mente, maxi­mal moti­viert durch gegenseitiges Feedback. Iteration, also das ständige Wiederholen von Tätigkeiten, macht Entwickler besser. In der Folge können sie schneller entwickeln — mit gleichbleibendem Anspruch an die Qualität der Software.

> Die Software ist vollständig dokumentiert.

Software-Produktion für ein KMU wird auf eine lange Zeit ausgerichtet. Dafür muss die Software in einem Umfang dokumentiert sein, der ausreicht, um langfristige Wartung zu gewährleisten. Eine Unterbrechung der Software-Produktion ist der Normalfall. Nur bei Bedarf wird sie neu gestartet. Die Dokumentation muss so gut sein, dass ein Entwickler sich in kurzer Zeit einarbeiten kann.

> Die Software gehört dem KMU.

Das Partnerunternehmen entwickelt die Software im Auftrag des KMU. Das KMU kann die Software lizenzfrei betreiben.

Das Gesamtkonzept esy lässt sich sehr gut mit agiler Software-Entwicklung kombinieren. Mit cards+ wird Dokumentation zur leistbaren Aufgabe. bootscs ist die Basis-Software, die inkrementell an die Bedürfnisse eines KMU angepasst werden kann. Zielgerichtet. Schnell. Mit hoher Qualität.

---

Gerne beantworte ich dazu auch Fragen in dieser Gruppe. Die Ungeduldigen können sich den Quelltext einer Beispielanwendung mit reduzierter Funktionalität sofort im Github-Repository

https://github.com/cardsplus/bootscs

anschauen.

KMU nutzen Standardsoftware in vielen Bereichen des Unternehmens. Das Spektrum der eingesetzten Software beginnt mit allseits bekannten Office-Produkten (z.B. von Microsoft) und endet mit komplexer Software für CRM (z.B. Salesforce), ERP (z.B. Sage) oder HR (z.B. Personio). Die Gründe für den Einsatz solcher Standardprodukte sind vielfältig. In einer digitalen Lösung sind viele Daten auf einen Klick verfügbar. Mit einem Terminkalender werden wichtige Termine zentral organisiert. In einer Datenbank werden Kontakte von Kunden und Lieferanten gepflegt und sicher aufbewahrt. Aufträge werden termingerecht abgewickelt und angemessen dokumentiert. Eine Leistungserfassung sorgt für schnelle und korrekte Abrechnung. In einer Zeiterfassung geben Beschäftigte ihre Arbeitszeiten selbst ein. Alle Funktionen einer Standardsoftware sind miteinander verknüpft. Über Schnittstellen werden Daten ausgetauscht.

Für diesen Beitrag gilt die Prämisse, dass der Einsatz von Standardsoftware wohl überlegt und für das KMU sinnvoll ist. Für meine späteren Überlegung gelten noch folgende weitere Prämissen.

> Standardsoftware wird teurer, je mehr Nutzer sie verwenden.

Mit dem Erfolg eines Unternehmens steigt in der Regel auch die Anzahl der Nutzer der Standardsoftware. Die Gebühr für die Nutzung unterliegt bei den meisten Herstellern einer Progression, d.h. je mehr Nutzer desto günstiger der Preis pro Nutzer. Bei Salesforce kostet CRM in der Cloud pro Monat für bis zu 10 Nutzer 25€. Ab dem 11. Nutzer sind es 75€. Will man das Produkt anpassen, dann liegt die Gebühr schon bei 150€. Möchte man auch noch Support haben, dann enden wir bei 300€. Die Angaben aus der Web-Seite der Herstellers sind ohne Gewähr.

Mit steigenden Nutzerzahlen steigen die absoluten Kosten. Sie steigen sogar enorm, wenn die Progression der Gebühren in groben Schritten erfolgt. Mehr Nutzer bedeutet außerdem, dass ein Ausfall der Anwendung spürbare finanzielle Schäden verursacht. Der Wunsch nach Support steigt. Und damit auch der Lizenzpreis.

> Standardsoftware wird teurer, je mehr individuelle Anpassungen gemacht werden.

Standardsoftware führt immer zu Kompromissen in der Organisation eines KMU. Individuelle Vorgänge oder Hierarchien lassen sich nicht oder nur unvollständig abbilden. Begriffe in der Software unterscheiden sich von Begriffen, die im Unternehmen verwendet werden. Je nach Hersteller gibt es mehr oder weniger Möglichkeiten, die Software an individuelle Bedürfnisse anzupassen. In der Regel ist so eine Anpassung mit zusätzlichen Kosten verbunden.

1. Die Software kann nur mit einer teureren Pro- oder Enterprise-Lizenz angepasst werden.

2. Die Software wird als kostenpflichtige Dienstleistung von einem Experten angepasst.

3. Die Software wird durch kostenpflichtige Programmierung individuell erweitert.

Punkt 1 ist oft Voraussetzung für die Punkte 2 und 3. Vor allem Punkt 3 führt zu einer großen Abhängigkeit des KMU vom Hersteller der Software. Und es besteht immer das Risiko, dass durch Änderungen in der Standardversion auch die individuelle Programmierung geändert werden muss. Das führt zu weiteren Kosten oder zum Verlust der individuellen Programmierung.

Standardsoftware mit Anpassungen verursacht also zusätzliche laufende Kosten. Mit den allgemein üblichen Abo-Modellen der Hersteller sind das laufende Kosten. Die Kosten steigen, je mehr eine Standardsoftware an individuelle Vorgaben angepasst wird.

> Standardprodukte bieten stabile Schnittstellen, die langfristig verfügbar sind.

Je weiter der digitale Wandel in einem KMU fortgeschritten ist, desto mehr Standardsoftware ist im Einsatz. Jede Standardsoftware muss in eine wachsende IT-Landschaft integriert werden. Standardsoftware bietet dafür Standardschnittstellen. Standardschnittstellen sind sehr häufig herstellerübergreifend als Industriestandard genormt. Auf jeden Fall sind Schnittstellen langfristig verfügbar und gut dokumentiert.

---

Nehmen wir an, ein KMU in der Logistik-Branche nutzt Office-Produkte von Microsoft und setzt auf Standardsoftware für die Buchhaltung und Leistungserfassung.

Das Standardprodukt für die Leistungserfassung ist umfangreich und kompliziert. Sie ist wichtig für die Bestimmung von Kapazitäten als Grundlage für die Auftragsplanung. Bevor ein Beschäftigter die Software nutzen kann, muss er geschult werden. Schulungsunterlagen des Herstellers liegen vor. Für die interne Schulung gibt es eine umfassende Excel-Checkliste, die vom Unternehmer selbst erstellt wurde, weil die Software zu viele Funktionen hat, die nicht genutzt werden. Die Checkliste beschreibt exakt, wie ein Auftrag erfasst wird und die erbrachten Leistungen dokumentiert werden. Der Unternehmer ist der einzige Experte für die Beschäftigten, wenn sie Rückfragen haben.

Die Beschäftigten erfassen ihre Arbeitszeit in Dienstplänen, die als Excel-Dateien vorliegen. Diese Dienstpläne werden einmal im Monat vom Unternehmer selbst oder einer Assistent*in in seinem Auftrag geprüft, ggfs. nach Rücksprache mit dem Beschäftigten korrigiert und in das System für die Leistungserfassung manuell übertragen. Die Excel-Dateien werden von den Führungskräften selbst gepflegt. Sie sind es auch, die Rückfragen der Beschäftigten beantworten. Schulungsunterlagen gibt es keine.

Das Standardprodukt für die Buchhaltung ist einfach. Es fehlt leider eine Integration mit der Leistungserfassung. Beim Abschluss eines Auftrages werden die Daten aus dem System für die Leistungserfassung vom Unternehmer selbst oder einer Assistent*in in seinem Auftrag manuell in das System für die Buchhaltung übernommen. Bei einem Auftrag für einen Neukunden werden vorher die Stammdaten für den neuen Kunden angelegt. Bevor ein Beschäftigter die Software nutzen kann, muss er geschult werden. Schulungsunterlagen des Herstellers liegen vor. Sie werden für die interne Schulung unverändert verwendet.

In diesem Szenario gibt es drei wesentliche Schwachstellen.

1. Das Wissen über den Einsatz der Software ist beschränkt auf wenige Personen. Die Schulungsunterlagen sind nicht ausreichend.

2. Dienstpläne werden in geteilten Excel-Dateien eingegeben und manuell in die Leistungserfassung übertragen. Excel-Dateien liegen in unterschiedlichen Versionen vor. Die manuelle Übertragung der Daten ist fehleranfällig.

3. Aufträge werden für die Abrechnung manuell aus dem System für Leistungserfassung in das System für die Buchhaltung übertragen. Die manuelle Übertragung der Daten ist fehleranfällig.

Alle drei Schwachstellen können durch eine individuelle Web-Anwendung gelöst werden.

Ad 1. Die Web-Anwendung zeigt Dienstpläne und Aufträge an. Sie unterscheidet Bearbeiter und Verwalter. Nur Verwalter sehen alle Daten. Die Web-Anwendung hat individuell gestaltete Ansichten für die Eingabe von Daten. Die Eingaben werden beschränkt. Die Regeln sind individuell für das Unternehmen. In den Ansichten werden Begriffe verwendet, wie sie im Unternehmen gelten. Hilfetexte und Ausfüllhilfen unterstützen die Nutzer der Web-Anwendung.

Ad 2. Die Web-Anwendung ersetzt die Excel-Dateien der Führungskräfte. Es gibt nur eine Version der Ansicht für die Eingabe. Die eingegebenen Daten werden nach einer Validierung über eine Schnittstelle in das System für die Leistungserfassung übertragen. Die Validierung ist individuell für das Unternehmen. Die Excel-Dateien werden als Bericht erstellt. Sie gelten aber als Kopien.

Ad 3. Wird ein Auftrag in System der Leistungserfassung abgeschlossen, dann werden die Daten zusätzlich über eine Schnittstelle auch an das System für die Buchhaltung übertragen. Ggfs. wird vorher ein Neukunde in den Stammdaten angelegt.

Mit der Web-Anwendung werden wichtige Vorgänge im Unternehmen individuell abgebildet. Die Qualität der Daten steigt, weil es keine fehleranfällige manuelle Übertragung von Daten gibt. Die Schulung für die Beschäftigten wird massiv vereinfacht. Die Ansichten sind maßgeschneidert und durch die Begriffe des Unternehmens für alle verständlich. Sie enthalten Hilfetexte und Ausfüllhilfen für die Eingaben.

Durch die Synchronisierung der Daten aus der Web-Anwendung über die Schnittstellen in die Systeme für die Leistungserfassung und Buchhaltung können Verwalter alle Funktionen der Standardsoftware nutzen. Nur Verwalter müssen besonders geschult werden. Sie können das volle Potential der Standardsoftware ausnutzen.

Die Web-Anwendung ist ein weiteres System in einer wachsenden IT-Landschaft eines KMU im digitalen Wandel. Sie stellt kein außergewöhnliches Risiko dar.

Die Web-Anwendung kostet Geld. Sie muss hergestellt werden. Sie hat laufende Kosten für den Betrieb und Wartung, aber keine Lizenzkosten.

Die Web-Anwendung nicht zu machen kostet auch Geld. Indirekt. Daten werden weiterhin manuell übertragen. Dabei passieren Fehler, die korrigiert werden. Das kostet Zeit. Zeit ist Geld. Manche Fehler werden nicht sofort gefunden. Falsche Daten führen zu fehlerhafter Preiskalkulation oder Kapazitätsplanung. Unzufriedene Kunden sind die Folge. Das kann finanzielle Schäden nach sich ziehen. Zumindest aber leidet der Ruf des Unternehmens. Es geht auch um die Frage, welchen Wert Qualität in einem Unternehmen hat.

Mit dem Gesamtkonzept esy können die Kosten für Herstellung und Wartung minimiert werden. bootscs ist die Basis-Software dazu, die den Betrieb der Web-Anwendung in der Cloud ermöglicht. Robust. Skalierbar. Mit Kostenkontrolle.

---

Gerne beantworte ich dazu auch Fragen in dieser Gruppe. Die Ungeduldigen können sich den Quelltext einer Beispielanwendung mit reduzierter Funktionalität sofort im Github-Repository

https://github.com/cardsplus/bootscs

anschauen.

Das Office-Programm Excel ist eine weit verbreitete Standardsoftware in Millionen von Unternehmen auf der ganzen Welt. KMU nutzen das Programm für vielfältige Zwecke: Auftragsverwaltung, Projektplanung, Einsatzplanung, Preiskalkulation, Finanzprognosen, Risikomanagement, Genehmigungsprozesse, u.v.m. Excel bietet mehr als Tabellenkalkulationen. Komplexe Berechnungen, umfangreiche Formulare und optisch ansprechende Diagramme sind nur einige Beispiele. Es braucht wenig Zeit, um eine Excel-Anwendung zu erstellen.

Der Nutzen von Excel steht außer Frage.

Die Excel-Insellösung kann sich schnell in eine Excel-Hölle verwandeln. Die Datei wird per E-Mail oder Chat geteilt. Sie liegt in unzähligen Versionen auf verschiedenen Arbeitsgeräten oder geteilten Ablagen im Netzwerk des Unternehmens oder in der Cloud. Es ist unklar, welcher Stand der letzte bzw. gültige ist. Eine gleichzeitige Bearbeitung einer Datei ist praktisch unmöglich. Eine konsequente Organisation kann dieses Problem lösen. Es erfordert aber große Disziplin bei den Nutzern.

Formeln bilden das Fundament einer Excel-Insellösung. Sie sind wichtiges Wissen. Die Ergebnisse der Formeln beeinflussen Vorgänge im Unternehmen (z.B. Dienstpläne) oder steuern finanzielle Transaktionen (z.B. Preiskalkulation). Eine Formel kann aber sehr leicht durch Copy & Paste unabsichtlich durch einen festen Wert überschrieben werden. Tritt ein Fehler auf, sind die Nutzer schnell überfordert. Sie übernehmen den Lösungsvorschlag, den Excel anbietet, ohne alle Zusammenhänge zu verstehen. Die Folge ist, dass die Excel-Insellösung nicht mehr wie geplant funktioniert.

> It’s all in JP Morgan’s 129 page report on the $6 billion trading loss. In an appendix on page 127, the report talks about how one London-based quant was working on a new VaR (Value at Risk) model for the Chief Investment Office. On top of not being tested correctly, the report states that the model suffered from some pretty standard Excel flaws. — businessinsider.com (2013)

Eine Recherche im Internet zeigt sehr schnell, dass Probleme mit Excel kein Einzelfall sind, z.B.

https://www.linkedin.com/pulse/7-biggest-excel-mistakes-all-time-andrew-hoag

https://blogs.oracle.com/smb/10-of-the-costliest-spreadsheet-boo-boos-in-history

Die Excel-Insellösung kann durch eine individuelle Web-Anwendung ersetzt werden.

Eine Web-Anwendung kann nicht unkontrolliert verteilt werden. Sie kann auf verschiedenen Arbeitsgeräten aufgerufen werden. Auf den Arbeitsgeräten muss nur ein geeigneter Web-Browser installiert sein. Verteilt wird nur der Link auf die Anwendung.

Eine Web-Anwendung steuert die Eingabe. In Formularen sorgt die Feldvalidierung dafür, dass Daten korrekt eingegeben werden. Es gibt keine Möglichkeit, eine Formel zu überschreiben oder zu ändern. Eine komplexe Eingabe wird gestaffelt. Die Daten werden thematisch gegliedert eingegeben, z.B. bei einem Auftrag zuerst die Daten des Aufraggebers, dann die geforderten Leistung und zum Schluss die Adresse für die Zustellung. Vor dem Abschluss eines Bearbeitungsvorganges werden die eingegebenen Daten unter Berücksichtigung von Abhängigkeiten validiert. Eine unvollständige Eingabe ist unmöglich. Damit vermeidet man nicht nur Fehler beim Umgang mit den Daten, sondern erhöht auch gleichzeitig den Komfort für die Nutzer.

Eine Web-Anwendung wird programmiert. Das bedeutet, dass es einen Entwicklungsprozess gibt. Der Quellcode der Anwendung wird versioniert, d.h. Änderungen sind immer nachvollziehbar. Die Änderungen werden geplant. Agile Methoden sorgen hier für hohe Qualität. In kleinen Schritten wird die Software geändert, getestet und dokumentiert. In kurzen Abständen kann die Software für die Nutzer bereitgestellt. Die Aktualisierung einer modernen Web-Anwendung, die in der Cloud betrieben wird, bedeutet keinen oder nur eine kurze Unterbrechung der Verfügbarkeit.

Eine Web-Anwendung kann skaliert werden Eine Excel-Datei ist keine Datenbank und lässt sich nicht skalieren. Die Web-Anwendung nutzt eine relationale Datenbank. Der Einsatz von Transaktionen, Caching oder Pooling sorgt für mehr Effizienz und Leistungsfähigkeit.

Eine Web-Anwendung erlaubt Mehrfachnutzung. Anders als eine Excel-Datei kann die Web-Anwendung von mehreren Nutzern gleichzeitig verwendet werden. Die gleichzeitige Änderung gleicher Daten wird spätestens beim Speichern in der Datenbank verhindert. Der Konflikt wird entweder automatisch nach festen Regeln gelöst oder dem Nutzer angezeigt.

Eine Web-Anwendung hat ein Berechtigungskonzept. Nutzer haben Rollen. Eine Web-Anwendung unterscheidet mindestens Verwalter und Bearbeiter. Nur Verwalter können kritische Funktionen aufrufen (z.B. externe Schnittstellen) oder Systemparameter ändern, welche die Funktionen der Web-Anwendung beeinflussen. Durch individuelle Programmierung gibt es hier keine Grenzen.

Eine Web-Anwendung ist gespeichertes Wissen. Datenstrukturen der Web-Anwendung beschreiben Eigenschaften wichtiger Daten. Verfahrensweisen im Umgang mit diesen Daten führen zu Algorithmen. Abläufe im Unternehmen beeinflussen die Gestaltung der Ansichten. Der Quelltext, ggfs. mit Kommentaren der Entwickler, ist darum wichtiges explizites Wissen über das Unternehmen.

Die Liste der Vorteile einer Web-Anwendung im Vergleich zu Excel ist lang. Die Argumente sprechen für eine Web-Anwendung. Es gibt aber auch einen Nachteil. Die Kosten. Sie entstehen durch die Herstellung der Software, den Betrieb der Web-Anwendung und die Wartung. Mit dem Gesamtkonzept esy können die Kosten kontrolliert werden. bootscs ist die Basis-Software dazu.

---

Gerne beantworte ich dazu auch Fragen in dieser Gruppe. Die Ungeduldigen können sich den Quelltext einer Beispielanwendung mit reduzierter Funktionalität sofort im Github-Repository

https://github.com/cardsplus/bootscs

anschauen.

KMU bilden das Rückgrat unserer Wirtschaft, sagt die österreichische Bundesministerin Dr. Margarete Schramböck. Dr. Harald Mahrer, Präsident der Wirtschaftskammer in Österreich, sagt, dass KMU rund sieben von zehn Arbeitsplätzen in Österreich sichern. KMU sind vom digitalen Wandel direkt betroffen. Digitale Technologien sind zum Schlüssel für wirtschaftlichen Erfolg geworden, nicht nur für große Unternehmen. Auch ein KMU sollte über Digitalisierung nachdenken.

Aber was bedeutet digitaler Wandel für ein KMU?

In meinem letzten Beitrag habe ich eine Geschichte von einem Unternehmer erzählt, der seit vielen Jahren eine individuelle Anwendung verwendet. Die Anwendung für die Leistungserfassung hat einen hohen Wert für den Unternehmer. Sie unterstützt optimal seine ganz spezielle Arbeitsweise bei der Planung, Durchführung und Abrechnung seiner Leistungen. Der Unternehmer ist erfolgreich. Die Anwendung ist Teil des Erfolges. Die Entwicklung des Marktes, neue Kundenbeziehungen oder gesetzliche Regelungen verändern auch dieses Unternehmen. Die Anwendung muss laufend an diese kontinuierlichen Veränderungen angepasst werden. Der digitale Weg ist ein Weg der kontinuierlichen Veränderung.

Andere Unternehmen setzen auf Standardsoftware für Leistungserfassung, Warenwirtschaft, Buchhaltung, Rechnungswesen, Zeiterfassung, u.s.w. Die Hersteller sind zahlreich, das Angebot ist riesig. Die beiden folgenden Beispiele markieren die Eckpunkte im Spektrum der Standardsoftware für KMU.

SevDesk (https://sevdesk.at) wird vom Hersteller als Software für Buchhaltung bezeichnet. Die Funktionen decken einen wichtigen Bereich in der Abwicklung von Leistungen in einem Unternehmen ab. Für andere Bereiche ist allerdings eine andere Anwendung notwendig. Das führt in vielen Unternehmen zu einem Flickenteppich von Software unterschiedlicher Hersteller. Jede Anwendung sieht anders aus, verhält sich anders. Ein direktes Zusammenspiel der Anwendungen ist in der Regel nicht möglich. Stammdaten müssen mehrfach eingegeben werden. Das birgt ein großes Risiko für Inkonsistenzen in den Daten. Beschäftigte benötigen Konten in allen Anwendungen. Eine Herausforderung für die Administration.

Helium5 (https://helium5.com) erfüllt nach Angaben des Herstellers alle Anforderungen an eine Software für Einkauf, Verkauf, Warenwirtschaft, Produktion, Zeiterfassung, Finanzbuchhaltung, Reklamationsverwaltung und für die Instandhaltung. Der Funktionsumfang ist riesig. Die Anwendung hat praktisch alle Funktionen, die ein kleines Unternehmen braucht. Sie kann viel mehr, als der Unternehmer tatsächlich braucht. In festen Grenzen ist eine Anpassung der Anwendung möglich. Das reicht vielen Unternehmern. In manchen Abläufen müssen sie aber ihre Arbeitsweise oder die ihrer Beschäftigten an die Vorgaben anpassen, die durch die Standardsoftware bestimmt werden.

Erfolgreiche Unternehmer gehen ihren eigenen Weg. Der Einsatz von Standardsoftware bedeutet für sie Kompromisse. Spezielle Abläufe im Unternehmen werden organisatorisch geregelt, ohne Unterstützung durch Software. Enagierte Beschäftigte schließen solche Lücken häufig mit individuellen Insellösungen. Dienstpläne sind ein typisches Beispiel. Führungskräfte planen den Dienst mit Excel-Dateien. Die Planung stellt sicher, dass die richtige Anzahl an Beschäftigten mit der richtigen Qualifikation zur richtigen Zeit am richtigen Ort im Einsatz sind. Der Dienstplan legt den Beginn und das Ende von Arbeitszeiten fest. Die Planung wird laufend an die aktuelle Situation angepasst, z.B. bei einem ungeplanten Ausfall von Personal. Die Beschäftigten melden die tatsächlichen Arbeitszeiten oder tragen sie selbst im Dienstplan ein. Einmal im Monat wird der Dienstplan verifiziert und die Ergebnisse in die Standardsoftware für Zeiterfassung eingetragen.

Ich vermute, die Lösungen in den kleinen Unternehmen sind so vielfältig wie die Angebote, die es am Markt für Standardsoftware gibt. Standardsoftware wird mit individuellen Insellösungen kombiniert. Standardsoftware zeichnet sich durch Qualität und Zuverlässigkeit aus. Sie ist angemessen dokumentiert. Es gibt Unterstützung bei der Installation oder bei Problemen. Sie wird gewartet, d.h. Fehler werden korrigiert und Lücken geschlossen. Eine individuelle Insellösung passt optimal zu den Arbeitsabläufen im Unternehmen. Sie wird sehr häufig von einer Person erfunden, die dadurch effizienter ihre Aufgaben erledigen kann. Die Lösung ist kaum dokumentiert. Nur ganz wenige Personen sind in der Lage, Fehler zu korrigieren oder Lücken zu schließen. Verlässt diese Person das Unternehmen, ist das sehr häufig das Ende für die Lösung.

Das ist ein Dilemma. Standardsoftware kann eine individuelle Insellösung nicht oder nur mit kostenpflichtiger Anpassung ersetzen. Der Austausch einer Standardsoftware durch eine andere, leistungsfähigere Standardsoftware bedeutet eine risikoreiche und teure Migration. Der Einsatz einer nicht dokumentierten individuellen Lösung stellt für ein kleines Unternehmen ebenfalls ein nicht zu unterschätzendes Risiko dar.

Der digitale Wandel ist eine Chance für ein KMU, individuelle Insellösungen in der gleichen Qualität und mit der selben Zuverlässigkeit wie Standardsoftware zu realisieren. Ziel ist nicht, Standardsoftware durch individuelle Anwendungen zu ersetzen. Leistbare, agil entwickelte und individuell gestaltete Anwendungen sollen Standardsoftware ergänzen. Und zwar als Ausdruck der Individualität des Unternehmens.

---

Gerne beantworte ich dazu auch Fragen in dieser Gruppe. Die Ungeduldigen können sich den Quelltext einer Beispielanwendung mit etwas reduzierter Funktionalität sofort im Github-Repository

https://github.com/cardsplus/bootscs

anschauen.

Die Methode CARDS+

Mit dem Ein­satz von cards+ ist eine agile Pro­jekt­organi­sation in der Lage, ziel­gerich­tet und itera­tiv eine Pro­dukt­doku­men­tation zu ent­wickeln. Ziel­gerich­tet bedeu­tet, dass die erstell­ten Doku­mente einen Wert für die Organi­sation haben. Mit dem Fort­schritt in der Ent­wick­lung der Soft­ware wächst auch die Pro­dukt­doku­men­tation, als inte­gra­ler Bestand­teil des Pro­dukt­inkre­men­tes. Doku­men­tieren wird zur leist­baren Auf­gabe des gesam­ten Teams. Die Doku­men­tation wird prüf­bar, die Quali­tät mess­bar.

Doku­men­tieren bleibt trotz­dem ein Reiz­wort. Es gibt die einen, die auf Doku­men­tation ver­zich­ten wollen. »Code und Test­pläne reichen!«, sagen sie. Andere wollen wieder­rum alles ganz genau auf­schrei­ben. »Das Wissen darf nicht ver­loren gehen!«, for­dern sie. In diesem Span­nungs­­­­feld bewegt sich cards+.

Durch Fluk­tuation oder durch Ver­änderun­gen im Unter­nehmen ent­steht ein regel­mäßiger Wech­sel in der Pro­jekt­organi­sation. Damit ver­bunden ist immer die Gefahr des Ver­lus­tes von Wissen. Der Ver­lust von Wissen ist gefähr­lich. Die Pro­dukt­vision geht ver­loren. Quali­tät und Pro­duk­tivi­tät sinkt. Anpassun­gen und Erweiterun­gen der Soft­ware werden schwieri­ger. Inter­essier­ten Par­teien ist nicht klar, was die Soft­ware bereits leis­tet. Ent­wick­ler sind weni­ger moti­viert, da sie in altem Code wüh­len müssen, um zu ver­ste­hen, wie die Soft­ware »tickt«. Ihre Inno­vations­kraft sinkt.