PASS Software Factory

Individual-Software zum Preis von Standardsoftware

Der Einsatz der PASS-Entwicklungstechniken reduziert Aufwendungen und Kosten sowohl in der Neuentwicklung als auch in der Weiterentwicklung von Lösungen – bei Beibehaltung der vollen Flexibilität und Erfüllung des Prinzips der offenen Systeme. Die PASS Entwicklungstechniken sind eine konsequente Implementierung des Grundsatzes „Individualsoftware zum Preis von Standardsoftware“.


Fünf Merkmale der PASS Software Factory


Unterstützung von Industriestandards

Wir unterstützen auf der Java-Plattform den JEE-Standard und damit auch die auf diesem Standard basierenden Application Server. Wir integrieren besonders häufig genutzte JEE-APIs unmittelbar in die Architektur. Aufgrund der Offenheit der Entwicklungstechnologien können auch alle weiteren und nicht so häufig eingesetzten APIs des JEE-Standards unterstützt werden. Zudem haben wir die Factory auch schon im .NET C#-Umfeld einsetzen können.

Einsatz wieder verwendbarer Komponenten

Aus den vielfältigen Anforderungen aus verschiedenen Projekten und Branchen haben wir Standard-Komponenten entwickelt, die als Bibliothek in die Anwendungsarchitektur einfließen. Dadurch reduzieren sich Entwicklungszeiten und Testaufwendungen, da die Komponenten als abgeschlossene Einheit schon in anderen Produktionssystemen verwendet werden. Hierzu zählen u.a.

  • die Security-Komponente: Unterstützung von Organisationsstrukturen mit Rollen, fachlichen Berechtigungen, Abbildung auf Applikations-Berechtigungen, etc.
  • Reporting-Komponente: Erzeugung flexibler Reports innerhalb der Anwendung
  • Prozesssteuerung: Modellierung von Abläufen auf Basis von UML-/BPMN-Notation und
  • die Vorgangssteuerungs-Komponente: Unterstützung eines Vorgangsmanagements (Inbox) mit konfigurierbaren Entscheidungsverläufen (direkte Entscheidung, Vier-Augen-Prinzip, …)
  • etc.

Leistungsstarke und flexible Basisarchitektur

Unsere Web- und Desktop-Anwendungsarchitektur ist branchenübergreifend in Produktion und wird vielfach auch in Cluster-Szenarien eingesetzt. Die Architektur unterstützt aufgrund des zustandslosen Designs einen hohen Durchsatz. Die konsequente Schichtentrennung zwischen Dialogpräsentation, -verarbeitung, Businesslogik und Daten(bank)zugriffen fördert die Wartbarkeit und unterstützt auch das Prinzip service-basierter Architekturen.

Unsere Basisarchitektur entspricht den Best Practices in der Technologieentwicklung: wir sichten in R&D permanent Neuerungen, Trends und Innovationen und integrieren diese, die Praxistauglichkeit vorausgesetzt, in unsere Architekturen.

Nicht zuletzt aufgrund der weitgehenden Plattformunabhängigkeit von Java unterstützen wir heute unterschiedliche Betriebssysteme, Datenbanken, Application Server, etc.

Modellbasierte Entwicklung

Der effektive Einsatz von Modellen reduziert Entwicklungs- und Testaufwendungen, da durch den höheren Abstraktionsgrad der Modellebene Komplexitäten einer Programmiersprache entfallen. Insbesondere Aufgaben für die Verarbeitung von Oberflächendaten oder der Datenfluss zu Datenbanken oder Schnittstellen eignen sich besonders für einen modellbasierten Ansatz. Durch die vollständige Wartbarkeit der für die Softwareerzeugung verwendeten Templates entsteht kein GlueCode. Die Anwendung bleibt ohne Generatoren vollständig wartbar, bspw. auch für die Integration des jeweiligen StyleGuide pro Kunde.

Die modellbasierte Entwicklung ist für jede höhere Entwicklungs- und Skriptsprache möglich, also auch für andere Sprachen als Java oder .NET.

Skalierbarkeit der Entwicklungstechnologien

Für fachlich einfache Anforderungen oder auch für ein evolutionäres/architekturkonformes Prototyping können die fachlichen Freiheitsgrade zugunsten einer noch höheren Entwicklungseffizienz durch Verzicht auf Codierung eingeschränkt werden. So können Menüs modelliert, Dialoge und Unterdialoge aus Datenentitäten erzeugt oder aus verknüpften Entitäten generiert werden. Wesentliche Vorteile dieses Ansatzes sind:

  • Keine Einschränkung in den technischen Merkmalen der unterliegenden Architektur, lediglich die Freiheitsgrade in der fachlichen Modellierung werden reduziert.
  • Die Modellbasis bleibt identisch. So kann das über den Base-App-Ansatz erzeugte Grundmodell anschließend auch für eine funktional nicht eingeschränkte Weiterentwicklung genutzt werden.