Fakturama Version 2

Pünktlich zu Weihnachten ist das Unfassbare geschehen – Fakturama 2 hat es endlich geschafft! Nach über 4 Jahren haben wir nun ein stabiles und nach wie vor auf allen gängigen Plattformen laufendes Programm für die Rechnungserstellung. Die außerordentlich lange Zeit für die Überarbeitung erklärt sich zum einen dadurch, dass die Programmierung nur von einem Entwickler in seiner Freizeit vorangetrieben wird. Zum anderen gab es diverse technische Hürden zu meistern, die einiges an Zeit gekostet haben.
Sicher werden bisherige Nutzer kaum Änderungen an der Oberfläche bemerken. Das liegt daran, dass zunächst nur „unter der Haube“ kräftig gewerkelt wurde. Die Oberfläche sollte soweit wie möglich der alten entsprechen, um den Umstieg nicht unnötig zu erschweren. Nach wie vor halte ich die Umsetzung der Oberfläche für sehr gelungen (das Lob geht hier an den ehemaligen Entwickler Gerd).
Hier nun einige der größten technischen Änderungen, die im Programm vorgenommen wurden:

  • Umstellung der Eclipse-Plattform von 3.7 auf Eclipse 4 (nativ, ohne Kompatibilitätslayer)
  • Ablösung der LibreOffice-Schnittstelle (LibreOffice-Vorlagen werden jetzt direkt ausgefüllt, nur zum Erzeugen der PDFs wird das Programm noch benötigt)
  • Austausch der Datenbank-Zugriffsschicht, sodass unterschiedliche Datenbanken eingesetzt werden können
  • Update der Datenbank-Tabellen über Liquibase
  • Währungs-Werte werden jetzt über JavaMoney abgebildet
  • Währung wird jetzt länderspezifisch eingestellt (man wählt z.B. als Währungsland „Schweiz“ aus und hat automatisch „SFr“ als Währung. Hier kann man übrigens jetzt auch die Barrundung auf 0,05 SFr einstellen.)
  • Umstellung diverser Oberflächen-Elemente auf moderne Widgets (z.B. Datum, Navigationsleiste, Übersichts- und Erfassungstabellen)
  • Verwendung von OSGi-Services für diverse Dienste (Logging, Preferences, eigene Services)
  • Vorbereitung für Multi-User-Betrieb (aktuell können schon mehrere Nutzer gleichzeitig das Programm aufrufen, es gibt aber noch keine Rechteverwaltung)
  • Umstellung der Handbuch-Erzeugung auf DocBook (damit können aus einer Quelle PDF, HTML und auch andere Formate erzeugt werden)

Die meisten dieser Änderungen sind für den Anwender nicht offenkundig (und vielleicht auch nicht unbedingt verständlich). Sie sind aber die Basis für eine Weiterentwicklung des Programmes, da die alte Plattform an bestimmten Stellen an ihre Grenzen kam. Daneben gibt es noch einige kleinere Änderungen, die hier aber den Rahmen sprengen würden. Ein möglichst problemloser Umstieg wurde durch den Einsatz eines Migrationstools ermöglicht. Dieses übernimmt die alten Daten und passt die auf die neue Datenstruktur an.

Mein ausdrücklicher Dank geht an dieser Stelle auch an die vielen Helfer, die zum Gelingen des Projektes mit beigetragen haben. Dazu zählen

  • Steffen, der sich um die ganze Kommunikation gekümmert hat und mir immer mal wieder einen kleinen Anschubser gegeben hat, wenn ich ihn gebraucht habe 🙂
  • Martin, der den Webauftritt betreut und sich um das graphische Zeugs kümmert,
  • Oliver, der sich unglaublich zäh mit der Vielzahl der Webconnectoren herumschlägt,
  • die vielen tollen Übersetzer, die sich hier freiwillig gemeldet haben und das Programm in ihre Sprache übersetzt haben (selbst ins Arabische!)
  • die vielen Beta-Tester, die Fehler gefunden haben, die mir selbst nicht aufgefallen waren. Danke für eure Zähigkeit! 🙂
  • und natürlich den vielen Leuten im Forum, die sich immer wieder die Zeit nehmen, Fragen ausführlich und verständlich zu beantworten.

Selbstverständlich bin ich mir bewusst, dass ich hier eine „0er“ Version ausliefere. Es werden sicherlich noch ein paar kleinere Fehler drin sein, die aber hoffentlich nicht zu größeren Ausfällen führen sollten. Aufgrund der intensiven Tests wird das aber voraussichtlich eher nicht auftreten. Allerdings gilt hier nach wie vor die EPL, d.h., die Software wird auf eigenes Risiko eingesetzt 🙂

Was steht als nächstes an?

In den nächsten Wochen werde ich (nach einer kurzen Verschnaufpause) erst mal nichts am Programmcode machen. Es gibt sehr viele Arbeiten an unserer Infrastruktur, die erledigt werden müssen und die ich schon sehr lange vor mir herschiebe. Dazu zählen unter anderem folgende Aufgaben:

  • die Aufarbeitung der Ticketliste (JIRA-Bugs), die ich gerne bereinigen und klassifizieren möchte
  • Planung der nächsten Features anhand der aktuellen Ticketliste
  • Überarbeitung der Web-Dokumentation (Confluence) mit FAQ-Liste und Contribution-Guide
  • Umstellung des Forums auf neue Software
  • Usability-Check durch einen UX-Experten (der kann beurteilen, ob eine Anwendung sich aus Nutzersicht sinnvoll verhält und „anfühlt“)
  • mehr News-Beiträge hier auf der Homepage, ggf. Erweiterung um zusätzliche Seiten

Jetzt bleibt mir nur noch, allen treuen bisherigen und auch zukünftigen Fakturama-Anwendern eine besinnliche Weihnachtszeit zu wünschen und einen guten Start ins neue Jahr.