Automatisierte Softwareentwicklung
PASS Software Factory
Individualsoftware 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“ auf Basis echter Wiederverwendung – unser Entwicklungsparadigma umfasst:
- Komponenten- und Framework-Repositories
- Berücksichtigung der aktuellen Technologien durch permanentes Trend-Scouting
- Einsatz modellbasierter Entwicklungsverfahren
Fünf Merkmale der PASS Software Factory
Wir unterstützen sowohl .NET als auch Java EE (JEE) und die auf diesen Standards basierenden Application Server. Wir integrieren häufig genutzte JEE-APIs unmittelbar in die Architektur. Aufgrund der Offenheit der Entwicklungstechnologien werden alle (auch nicht so häufig eingesetzten) APIs des JEE-Standards unterstützt.
Aus den vielfältigen Anforderungen verschiedener Projekte 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, u. a.
- Security-Komponente: Abbildung auch komplexer Organisationsstrukturen mit Rollen, fachlichen Berechtigungen, Applikations-Berechtigungen etc.
- Reporting-Komponente: Erzeugung flexibler Reports innerhalb der Anwendung
- Prozesssteuerung: Modellierung von Abläufen auf Basis von UML-/BPMN-Notation
- Vorgangssteuerungs-Komponente: Unterstützung eines Vorgangsmanagements (Inbox) mit konfigurierbaren Entscheidungsverläufen (Vier-Augen-Prinzip, Sechs-Augen-Prinzip, individuelle Workflows…)
- Regel-Engine: für die Modellierung von Regelausdrücken bspw. für Berechnungsformeln, Entscheidungsbäume etc.
- Data Integrator: Datenmapping auf die Datenstruktur des Zielsystems
Unsere Web- und Desktop-Anwendungsarchitekturen sind in zahlreichen Projekten und Produkten in Produktion und werden auch in Hochlastszenarien mit mehr als einer Million Transaktionen eingesetzt. Die Basisarchitektur 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 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, die Praxistauglichkeit vorausgesetzt, diese in unsere Technologien.
Nicht zuletzt aufgrund der weitgehenden Plattformunabhängigkeit von Java unterstützen wir unterschiedliche Betriebssysteme, Datenbanken, Application Server, etc.
Der effektive Einsatz von Modellen reduziert Entwicklungs- und Testaufwendungen, da durch den höheren Abstraktionsgrad der Modellebene die Komplexitäten einer Programmiersprache entfallen. 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 Glue Code. Die Anwendung bleibt ohne Generatoren vollständig wartbar.
Die modellbasierte Entwicklung ist für jede höhere Entwicklungs- und Skriptsprache möglich, also auch für andere Sprachen als Java oder .NET.
Für standardisierte Anforderungen oder ein evolutionäres Prototyping kann durch den PASS BaseApp-Ansatz die Effizienz noch weiter gesteigert 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 darunterliegenden Architektur, lediglich die Freiheitsgrade in der fachlichen Modellierung werden reduziert.
- Die Modellbasis bleibt identisch. So kann das Grundmodell anschließend auch für eine funktional uneingeschränkte Weiterentwicklung genutzt werden.