Start - Development SourceForge.net Logo

Systemkonzept der MiNBank

Der Anwender sieht zuerst immer nur die Oberfläche und die Probleme kommen dann bei anderen System oft später bei Erweiterungen und Änderungen, weil das System dann intern immer chaotischer wird und auseinander fällt.

Ein professionell designtes Sytem unterscheidet sich anfangs von einem hobbymäßig gebasteltem System vor allem dadurch, dass ein durchdachtes Systemdesign dahinter steht - was sich an der Oberfläche anfangs kaum bemerkbar macht. Im Fall von MiNBank steht das MiNSoft-Konzept dahinter. Das Konzept wurde in einem Team von mehreren Systemdesignern entwickelt, die über mehrere Jahrzehnte professioneller Erfahrung im Software-Engineering verfügen.

Der ursprüngliche Initiator des MiNBank-Systems, Mario Boller-Olfert(RL)/Marinos Rumpakis(VL, Republik Dionysos) verpflichtet sich, auch in Zukunft ein gutes Systemdesign und innovative Funktionalität zu gewährleisten. Da jedoch die Entwicklung eines solchen für die Mikronationen sehr wichtigen und sehr komplexen Systems nicht nur von einem einzelnen Entwickler und dessen Launen abhängig sein darf, wurde das Projekt als Open Source Software unter der sehr offenen BSD-Lizenz (offener als GNU) öffentlich in SourceForge.net als minbank zur Verfügung gestellt. Jeder kann diese Software nehmen und sie beliebig verändern und weitergeben, aber auch die Entwicklung in SourceForge mit gestalten.

Die Ziele des professionellen MiNSoft-Designs sind:

  1. Trennung von Oberfläche und Funktionalität
  2. Unabhängigkeit vom Datenbanksystem
  3. Mehrsprachenfähigkeit
  4. Leichte Änderbarkeit
  5. Sicherheit gegen Hacker
  6. Anbieten von sicheren externen Schnittstellen
  7. Offenheit für Erweiterungen
  8. Lauffähigkeit auf normalen Webservern
  9. Dezentraler Betrieb
  10. Offene Schnittstelle nach außen

Moderne Software wird als übereinanderliegende Schichten (englisch: Tier) konzipiert, man bezeichnet dies als Multi-Tier-Architektur. Im Fall von MiNSoft sind dies:

  1. Oberfläche
  2. Business-Object-Interface
  3. Funktionalität als Business Objects
  4. Plattform
  5. Datenbank

Im folgenden werden die Schichten und Ihre Auswirkung auf das System näher erläutert:

  1. Durch die Trennung der Oberfläche von den Business-Objects ist es möglich die Oberfläche auszutauschen und so Oberflächen in verschiedenen Desigs und in verschiedenen Sprachen zu erstellen und gleichzeitig zu verwenden. Es wurde bereits ein Java-Applet zur einfachen Nutzunbg in Webshops eingesetzt. (Wird bald bei Sourceforge zur Verfügung gestellt). Die bestehende Standard-Oberfläche (ui_std) ist gut durch eine CSS-Datei und durch Fuß- und Kopf-Dateien anpassbar.
  2. Das Business-Object-Interface ist ebenfalls austauschbar. Zur Zeit werden zwei Interfaces angeboten. Für interne Aufrufe wird ein sehr schnelles lokales Interface (li) mit direkten Aufrufen verwendet. Das XML-RPC-Interface (ri) erlaubt es über ein sicheres http-Interface von außen zuzugreifen, zum Beispiel (wie schon getestet) von einem Java-Applet oder von einem anderen System (ein anderes MiNSoft-System oder ein Fremdsystem) aus.
  3. Die Business-Objects ermöglichen ein stabiles System, weil einerseits klar definierte Schnittstellen für den Aufruf vorhanden sind und zweitens hier die Systemsicherheit gegen unberechtigte Aufrufe integriert ist. Wenn die Business- Objekte gut getestet sind, ist die Funktionalität auch bei Ändern der Oberfläche weiterhin stabil.
  4. Die Plattform bietet verschiedene Dienste an. Das sind Werkzeuge für die Unterstützung verschiedener Sprachen zum Beispiel für Fehlertexte. Außerdem gibt es eine Datenbank-Schnittstelle, durch die es möglich sein sollte, auf verschiedene Datenbanken zuzugreifen.
  5. Alle änderbaren Daten werden in einer relationalen SQL-Datenbank gespeichert. Zur Zeit ist das System nur mit MySQL getestet, aber auch andere wie z.B. ProgreSQL sollten möglich sein.

Hiermit sollten Sie nun die Möglichkeit haben, sich zwischen einen unsicheren "geheimen" Hobbysystem mit Problemen in der Zukunft und dem professionell designten offenen MiNSoft-System zu entscheiden.

Die Firma MiNSoft AG in der Republik Dionysos wird sich an der Weiterentwicklung beteiligen und außerdem Services wie Schulungen, Hotline und professionelle Unterstützung bei Hosting und Betrieb des Systems anbieten. Natürlich sind auch andere Anbieter in diesem Markt willkommen.


© Mario Boller-Olfert 2005