Software-Anforderungen

In diesem Thread können wir Anforderungen an die zu entwickelnde Software sammeln und diskutieren.

Ich fange mal mit ein paar Dingen an, die mir spontan einfallen:

  • (1) Sicherer Umgang mit Privatsphäre/ sensiblen Daten: Die Daten der Benutzer, die in die Software eingespeist werden sollen, sind in hohem Maße sensibel. Das gilt besonders für persönliche Bedürfnisse und in gewissem Maß auch für private Mittel.
  • (2) Integration vieler verschiedenartiger Datenquellen: Viele Daten, die die Software verwenden möchte, sind bereits vorhanden. Sie müssen daher in geeigneter Form zusammengeführt werden. Das sind insbesondere „Wissen“ in Form von Taxonomien/ Ontologien und Mittel (beispielsweise aus Commons Booking Instanzen). Möglicherweise tun sich auch noch Datenquellen für Tätigkeitsmuster auf.
  • (3) Außerordentlich gute Benutzbarkeit: Die Software richtet sich an alle Menschen, insbesondere auch solche, die nicht unbedingt technik-affin sind.
  • (4) Langfristig gute Wartbarkeit: Bei Erfolg rechnen wir mit einer langen Lebensdauer der Software, daher sollte sie leicht an aktuelle Entwicklungen angepasst und weiterentwickelt werden können.
  • (5) Überwindung der ersten Schwelle: Die Funktionsfähigkeit der Software basiert auf dem Vorhandensein möglichst vieler Daten. Das ist zu Anfang nicht der Fall. Eine wesentliche Herausforderung besteht daher darin, diese erste Zeit überwinden zu können.
  • (6) Verwendung moderner Matching-Technologien: Die Zusammenführung der verschiedenen Datenquellen muss möglichst sinnvoll sein, damit die Software tatsächlich ein hilfreiches Werkzeug ist.
  • (7) Entwickler_innen anziehen: Keine Software ohne Menschen, die sie entwickeln. Sowohl die zugrunde liegenden Technologien als auch die Gestaltung der Software muss für neue Entwickler interessant sein.
  • (8) Zeithorizont: Früher Prototyp: Unsere Mittel sind sehr begrenzt. Daher muss schon zu einem frühen Zeitpunkt (beispielsweise einige Monate nach Beginn der Entwicklung) ein funktionsfähiger Prototyp sichtbar sein.
  • (9) Freie Software: Die Software wird gewissermaßen das erste gesellschaftliche Mittel in dem System sein, welches mit ihrer Hilfe entsteht. Daher muss sie an jeder Stelle die Prinzipien Freier Software erfüllen.
  • (10) Internationalisierung (i18n):
    1. Die Benutzeroberfläche muss mehrsprachig verfügbar sein.
    2. Die Inhalte der Benutzer können (müssen?) mehrsprachig verfügbar sein.
    3. Produktionsketten müssen über Sprachgrenzen hinweg aufgebaut werden können.

Zu (3): Zum gegenwärtigen Zeitpunkt dürfte eine Smartphone-App das geeignete Instrument sein, um viele Menschen einbeziehen zu können.

Zu (4): Ich würde eine Software bei so einer Anforderung immer in kleine Teile zerlegen (modularisieren, siehe Software-Komponenten). Siehe auch die Unix-Philosophie.

Fügt gerne hinzu, was euch einfällt oder kommentiert meine Gedanken.

Ich habe zu Punkt 8 einen Einwand: Wichtig ist meines Erachtens, dass wir früh einen Klick-Dummy haben, den man fürs Crowdfunding, für User-Befragungen und allgemein für Präsentationszwecke nutzen kann. Wirklich funktionieren muss es meines Erachtens noch nicht…

Zu Punkt 3: Von Apps im klassischen Sinne (für iOS oder Android) wurde mir abgeraten und fänd ich nicht sinnvoll. Was wir brauchen, ist eine Web-App, die schön auf mobilen Geräten dargestellt wird. Eigentlich ist das einfach eine Webseit, die merkt, mit welcher Bildschirmdiagonale sie dargestellt werden soll.

Im Gespräch mit einem Freund gestern Abend kam noch ein Punkt heraus, den ich wesentlich finde und ich hoffe, er gehört hierher:

Es werden nie alle Leute, die sich gegenseitig unterstützen wollen, die Software für ununterbrochenes Commoning auch nutzen - und die Software (zumindest die Desktop-Variante) sollte die Möglichkeit bieten, solche Leute zu integrieren. Das heißt: Ich wähle entsprechende Filter aus und kann mir dann automatisch ein pdf erstellen lassen, auf welchem angeben ist, was es gerade hier im Umkreis zu tun gibt und welche Mittel benötigt werden. Alles dann natürlich Sachen, für die auf Softwareebene keine Leute/Mittel gefunden werden. Und das pdf kann ausgedruckt und z.B. mit Kontaktdaten vor die eigene Tür gehängt werden. Und entweder die Leute rufen dann die entsprechende Person an und klären, wie sie beitragen können und/oder auf dem Ausdruck ist ein QR-Code, der auf eine Seite verweist, auf der (ohne Anmeldung) alles wichtige nochmal aufgeschlüsselt ist. Das wäre eine niedrigschwellige Variante, damit auch Leute ohne die App sich in das ununterbrochene Commoning integrieren können und es wäre eine Möglichkeit, wie wir dann Leute (ohne Werbung etc.) zur Software führen können.

Passt das hier rein? Ich würde das () Analoge Schnittstellen zur Integration ohne Software anbieten o.ä. nennen.

Coole Idee, macht die Programmierung aber sicher nicht weniger aufwändig… :wink: Aber wäre sehr wünschenswert!

Also, ich verstehe durchaus das Unbehagen, dass ja nicht alle Menschen die SW nutzen werden und es ist auch absolut begrüßenswert, niederschwelligen Zutritt oder Möglichkeiten für (indirekte) Einladungen zu integrieren.

Aber so richtig Sorge bereitet mir persönlich das nicht, denn für vor allem größere Commons wie eine Fabrik genügt es ja fast, wenn nur einige Wenige die SW nutzen, um das Commons mit der Allgemeinheit zu verbinden: Ermöglichungen der Welt anbieten und Bedarfe an andere Commons melden. Vielleicht vergleichbar mit dem heutigem Vertrieb und Einkauf?! Sämtliche anderen internen Vorgänge könnten genauso gut komplett offline und außerhalb der SW-Struktur laufen und damit können selbst Menschen, die nicht mal lesen können, sich problemfrei in das Commoning integrieren…