Software- und Datenbankentwicklung
In der Umsetzung von individueller Software und komplexen Datenbanken können wir auf langjährige Erfahrung zurückblicken. Mit unserer Expertise aus den Bereichen Webportale, automatisierte Produktionsworkflows, Vereinsverwaltungen, Datenbanken und Datenweitergabe bzw. -migration setzen wir unterschiedliche Individual-Lösungen um, u.a.
Web-Atlas und GIS-Systeme
- Archivierungs- und Dokumentationssysteme
- Knowledge Management Tools
- Verwaltungssoftware inklusive Administration, Organisation und Kommunikation
- Schulverwaltungs-Software
- Benutzer-, Mitglieder- und Beitragsverwaltung
- Online-Reservierungen
- Adress- und Terminplanung
- Komplexe Webauftritte mit Schnittstellen zu diversen vor- und nachgelagerten Tools
Open Source Komponenten
Die individuell umgesetzten und entwickelten Lösungen basieren auf Open Source. Bevorzugt setzen wir dabei folgende Komponenten ein: Linux, Python, Java, PostgreSQL, Django und Django-CMS, Apache Lucene und Solr, LibreOffice etc. Import- und Exportfunktionalitäten werden beispielsweise mit gängigen und freien Standards wie CSV, REST oder JSON umgesetzt und ermöglichen die Integration von und zu weiteren Systemen.
Die tatsächlich eingesetzten Komponenten und Frameworks wählen wir im Zuge der Konzepterstellung in enger Abstimmung mit unseren Kunden und deren Anforderungen an das System aus.
Referenz-Projekte
Archivierungs- und Dokumentationssystem
ArcDoc: in Python entwickelt, durch ein in Django implementiertes Webportal ergänzt; Schwerpunkte: Dokumentenimport, Ablage der Dokumente im Filesystem, Indizierung der Dokumente inklusive Metadaten und Schlagworte, Suchfunktion auch über eingegliederte Seiten, Anbindung verschiedener Plugins
Verwaltungssoftware
- Gemeinwohl-Ökonomie: Administrations-, Organisations- und Kommunikationsplattform für dezentrale,
selbstständig agierende Organisationseinheiten (Energiefelder, Nationaleinrichtungen und Dachverband); Schwerpunkte: Benutzerverwaltung, umfangreiche Suchfunktionalität, Erfassung von Stammdaten, Generierung von personalisierten Dokumenten
Schulverwaltungssoftware WSDB: web-basierendes Schulverwaltungs-Tool mit Schüler-, Lehrer- und Elternverwaltung, erleichtert Handhabung wiederkehrender Aufgaben in der Schulorganisation, reduziert Verwaltungs- und Administrations-Aufwand; Open Source Projekt
- Nachhaltigkeitskompass: Betriebe, Händler etc. können ihr Unternehmen und ihre Produkte in Bezug auf deren Nachhaltigkeit bewerten; umgesetzt mit Django und PostgreSQL; Schwerpunkte: Administration (Produkttypen, Branchen, Kriterien), Gewichtung von Kriterien
Adress- und Terminplanung mit der XDB: Terminplanung, Management von Adressdaten, Verwaltung zugehöriger Informationen, Aufruf über den Browser
Produktionsunterstützung
- SNOGG.ME - Produziere deine eigene CD: Verkaufsplattform für Musik-Alben, Einzelstückproduktion, bietet u.a. Musik-Upload, Designer zum Erstellen von Cover, Booklet etc., Urheberrechtsassistent, Facebook-Plugin
Software-unterstützte Gutscheinproduktion: Verwechslungs- und fehlerfreie Konfektionierung; Schwerpunkte: Protokollierung Produktionsablauf, Auslösen der Bestellung über Web-Schnittstelle, Zwischenlagerung produzierter Artikel, Adressmanagement
Online-Reservierung
Moviemento und City-Kino: Schwerpunkte: Programm für einzelne Vorführtage, Auswahl Sitzplätze anhand des Saalplanes, Zugriff auf Reservierungsdaten in Echtzeit, Export von Statistiken und Analysen
Veranstaltungs-Reservierung bei GfK OÖ: Anmeldung für Veranstaltungen über die Webseite, automatische E-Mail-Bestätigung
Entwicklungs-Beispiel
Indizierung und Suche
Eine volltext-indizierte Suche, die auch Dokumente, Kategorien und Stichwörter etc. einbezieht, ist in vielen Fällen wünschenswert. Dazu verwenden wir gängige Open Source Indizierungskomponenten, zum Beispiel Apache Lucene. Zusätzliche verfügbare Erweiterungen wie z.B. Apache Solr werden eingesetzt, um Abfragen über Webbrowser, REST API und Batch/Shell Skript zu ermöglichen. Die Metadaten der Suchergebnisse werden angezeigt, editiert und die gefundenen Dokumente können eingesehen werden.
Benutzerverwaltung / LDAP-Anbindung
Die Benutzerverwaltung berücksichtigt unterschiedliche Benutzerrollen (z.B. Autor, Moderator, Adminstrator). Je nach Berechtigung kann ein Benutzer ein Dokument/Objekt anlegen, bearbeiten oder löschen, Rechte dafür vergeben etc. Eine Anbindung der Benutzerverwaltung an vorhandene Systeme der Kunden (z.B. LDAP) ist vorgesehen.
Suchergebnisse und Benutzerverwaltung sind aufeinander abgestimmt, sodass nur Ergebnisse angezeigt werden, für welche die entsprechenden Benutzer auch die Berechtigungen haben.
Entwicklungs-Tools
In der Entwicklung setzen wir auf v.a. Open Source Technologien, u.a. auf:
Python: universelle, üblicherweise interpretierte höhere Programmiersprache; unterstützt mehrere Programmierparadigmen (z. B.objektorientierte, aspektorientierte und funktionale Programmierung), bietet eine dynamische Typisierung
Java: Sammlung von Spezifikationen (Programmiersprache Java, Java Development Kit, Java Runtime Environment), plattformunabhängig
PostgreSQL: freies und objektrelationales Datenbankmanagement-System; unterstützt erweiterbare Datentypen, Operatoren, Funktionen und Aggregate; lauffähig auf den gängigsten Betriebssystemen, u.a. Linux, UNIX und Windows
Django und Django-CMS: in Python geschriebenes quelloffenes Web Application Framework; Merkmale: u.a. integrierter objektrelationaler Mapper für die Datenbanksysteme MySQL, Oracle, PostgreSQL und SQLite, Anbindung an weitere Datenbanksysteme, automatisch generierte, produktionstaugliche Administrationsoberfläche, Templatesprache mit Vererbungsunterstützung, Modul für Geoinformationssysteme, Authentifizierungssystem
Apache Lucene und Solr: Programmbibliothek zur Volltextsuche; Solr ist ein in Lucene enthaltenes Servlet und kommuniziert über das Hypertext Transfer Protocol
LibreOffice: Office-Paket mit Programmen zur Textverarbeitung, Tabellenkalkulation, Präsentation und zum Erstellen von Zeichnungen, Datenbankmanagementsystem und Formeleditor