Zum Hauptinhalt springen

Software

nach Maß

Maßgeschneiderte Softwareentwicklung

für Ihre Geschäftsprozesse

Wir sind erfahren in der branchen- und unternehmensspezifischen Entwicklung von Softwarelösungen, mit denen Kunden einen hohen Mehrwert für ihre Geschäftsprozesse gewinnen. Wir beraten Sie umfassend, entwickeln und implementieren Lösungen und unterstützen Sie mit bedarfsgerechten Schulungen und Support.


Verfahrenslösungen

die wir seit vielen Jahren anwenden

Workflowsysteme

Unternehmensweite Prozesse werden computerunterstützt gesteuert, Anwendungskomponenten prozessorientiert integriert, Mitarbeiter ablaufbezogen unterstützt und der Verlauf der Prozesse überwacht sowie durchgehend dokumentiert: Zuwächse an Effizienz und Flexibilität sind das Ergebnis.

Strategisches und operatives Datenmanagement 

Das Planen, Gestalten, Überwachen und Steuern von Informationen und die Kommunikation im Unternehmen zur Erreichung der strategischen und operativen Unternehmensziele erfordert spezifische Lösungen.

ETL-Prozessmanagement

Wer macht was, wann, wie und womit? Zentrale Fragen des Prozessmanagements, das sich mit der Identifikation, Gestaltung, Dokumentation, Implementierung, Steuerung und Verbesserung von Geschäftsprozessen befasst.

Was bedeutet ETL?
ETL (Extraction, Transformation + Loading) ist ein Prozess, bei dem Daten aus mehreren, ggf. unterschiedlich strukturierten Datenquellen in einer Zieldatenbank vereinigt werden. Ob Dateiaustausch, Webservice oder SOP: Das vom ITZ Rostock entwickelte ETL-Prozessmanagement-Framework ist der Rahmen für zuverlässige Steuerung und sorgfältige Überwachung und Protokollierung von Datenabgleichprozessen.

Produktmanagement 

IT-Lösungen für das Produktmanagement sind für alle Unternehmen von Bedeutung, die in einer sich verändernden Umwelt Tätigkeiten systematisieren wollen, die mit der Auswahl, Weiterentwicklung und Vermarktung von Produkten zusammenhängen.

Instrumente zur Marktbeobachtung 

Mit zunehmendem Wettbewerbsdruck wächst die Bedeutung von Instrumenten zur Marktbeobachtung. Seinen Kunden zum richtigen Zeitpunkt auf dem richtigen Wege die passenden Produkte und Leistungen anbieten zu können, entscheidet mit über den Markterfolg

Vertrags- und Dokumentenmanagement 

Die datenbankgestützte Verwaltung elektronischer Dokumente sorgt neben vielen anderen Qualitätsvorteilen dafür, dass Dokumente auch nach langer Zeit problemlos wieder aufgefunden werden können.

Mobile Unternehmenslösungen 

Mobile Lösungen erlauben rund um die Uhr und an jedem Ort den sicheren Zugriff auf Ihre Geschäftsinformationen. Viele wichtige Entscheidungen und kurzfristige Aufgabenstellungen dulden keinen Aufschub: Wir schaffen individuelle Lösungen und die passende Infrastruktur für mobile Anwendungen, auf die über alle aktuellen Endgeräte zugegriffen werden kann.


Agiler Projektablauf

Komplexität beherrschbar machen

Software ist von Natur aus komplex. Wenngleich am Anfang einer Entwicklung klar ist, welches Ziel grundsätzlich erreicht werden soll, erschließen sich viele Details erst im fortschreitenden Entwicklungsprozess.
Die klassische Wasserfall-Methode ist zu starr, um der Dynamik realer Software-Entwicklungsprojekte zu genügen.
Neben der Komplexität stellt sich in der Praxis oft auch heraus, dass die Anforderungen an die zu entwickelnde Lösung im Detail doch nicht so klar sind, wie man anfänglich glaubte. Zudem wäre oft eine Möglichkeit zum Ausprobieren wünschenswert, um eine Anforderung klarer formulieren zu können oder sich für eine von mehreren Lösungsmöglichkeiten zu entscheiden.

Was hat ein Wasserfall mit Softwareentwicklung zu tun?

Mit Wasserfall- oder Kaskadenmethode wird der Ablauf eines Entwicklungsprojektes beschrieben, bei dem alle Schritte nacheinander erfolgen und aufeinander aufbauen. Also der klassische Weg: Erst wird alles exakt geplant und dann wird dieser Plan genauso exakt umgesetzt.


Flexibilität durch Agilität

Mit einer agilen Vorgehensweise kann der Entwicklungsprozess flexibilisiert werden. Planung und Entwicklung bauen nicht aufeinander auf, sondern werden ineinander verschränkt.

Dabei besteht das Ziel, möglichst frühzeitig prototypenhaft Ergebnisse (Previews) zu produzieren, die vom Auftraggeber und von den Entwicklern gleichermaßen getestet, bewertet und verbessert werden können und auf die zunehmend solider ein nächster Planungs- und Entwicklungszyklus aufbaut.

So können Anforderungen genau dann exakt formuliert werden, wenn alle Rahmenbedingungen wirklich klar sind. Ändern sich Anforderungen, kann vergleichsweise leicht darauf eingegangen werden. Alternativen können prototypenhaft aufgebaut und ausprobiert werden. Das Risiko von Fehl- oder Falsch-Entwicklungen wird drastisch reduziert. Alle Projektbeteiligten können in den Planungs-, Entwicklungs- und Abnahmeprozess frühzeitig eingebunden werden.

Problematisch: Klassische Werkverträge

Diese agile Vorgehensweise kollidiert jedoch oft mit klassischen Vertragskonstruktionen. In einem Werksvertrag sind die Leistungen vor Vertragsdurchführung exakt und abnehmbar zu bestimmen und zu kalkulieren. Bei einer agilen Projektdurchführung gibt es vorab zwar eine Grobplanung, aber eben kein exaktes Pflichtenheft, da die Anforderungen per Definition erst schrittweise zur Projektlaufzeit entwickelt werden.

SCRUM - ein bewährter agiler Projektrahmen

Die Wasserfall-Methode bietet klassisches, planvolles Vorgehen. Wie kann bei agilem Vorgehen dennoch Planbarkeit und damit auch Vertragssicherheit erreicht werden? Dafür haben sich verschiedene Methodenrahmen entwickelt. Der wichtigste agile Methodenrahmen, den auch wir vom ITZ verfolgen, ist SCRUM. In diesem Rahmen werden für einen Entwicklungsprozess genaue Rollen und Abläufe definiert. Im Mittelpunkt der Methode stehen die Sprints – einzelne, in sich abgeschlossene (Teil-)Entwicklungszyklen oder auch Miniprojekte auf der Grundlage eines ausschließlich genau für diesen Sprint definierten Satzes von Anforderungen. Aus einem abgeschlossenen Sprint werden die Anforderungen für den nächsten Sprint abgeleitet.

Aber nicht nur in der eigentlichen Entwicklung, sondern auch bei Betrieb, Wartung und Weiterentwicklung hat sich der agile Ansatz bewährt. Das agile Vorgehen wird vom Entwicklungsbereich (Dev) in den Betriebsbereich (Ops) verlängert (DevOps).

Welche Vorteile entstehen dadurch für unsere Kunden?

Die direkte Kommunikation der Entwickler mit Kompetenzträgern verbessert das Verständnis für Anforderungen und Lösungsoptionen. Die durch die Sprints gegebenen kurzen Release-Zyklen ermöglichen eine kontinuierliche Verbesserung des entstehenden Endproduktes und eine schnelle Beseitigung von Problemen. Eventuelle Engpässe auf Seite des Auftraggebers (Anforderungsanalyse, Konzeption, Dokumentation, Test, Betrieb) können kurzfristig und unkompliziert vom SCRUM-Team abgefedert werden. Durch Einbindung des Teams in alle DevOps-Prozesse wird eine bestmögliche Wartung erreicht.

Die Zusammenarbeit, Kommunikation und Dokumentation erfolgt mit Unterstützung leistungsfähiger Tools, wie das Wiki-System Confluence oder die Aufgaben- und Ticketverwaltung Jira.

Wie sichern wir Kundenzufriedenheit?

Das Prinzip der agilen Methode besteht vor allem darin, frühzeitig Prototypen auszuliefern und diese immer weiter zu entwickeln. Durch nächtliche Auslieferung auf ein Preview-System, auf welches Sie als Kunde Vollzugriff haben, können Sie den Entwicklungsfortschritt jederzeit prüfen, das System testen und Änderungswünsche einbringen. Mit automatisierten Tests stellen wir gleichzeitig eine weitgehende, formale Korrektheit des produzierten Codes sicher.

Wie beziehen wir unsere Kunden ein?

Sie sind Bestandteil des SCRUM-Teams! Täglich wird ein so genannter "Daily Scrum" per Telefonkonferenz angehalten. Darüber hinaus findet eine bedarfsorientierte, kurzfristige, direkte Kommunikation über verschiedene Kanäle, wie etwa Mattermost, E-Mail, Telko, Skype oder WebEx statt.

Es besteht die Möglichkeit, auf Wunsch auf dem GIT Repository des Kunden zu arbeiten.

Welche Kontrolle, Einflussnahme und Mitsprache gewähren wir unseren Kunden?

Sie erhalten Zugriff auf das GIT Repository, Jira und Confluence der Entwickler. Die Sprint Planings, Retrospektiven, Refinements, Reviews erfolgen gemeinsam, ebenso wie Sicherung der Code-Qualität, das Testing, Reporting und die Dokumentation. Dazu legen wir Ihnen regelmäßig Ergebnisse vor, zu:

  • Code-Qualität
  • Abdeckung mit automatisierten Tests
  • Ergebnisse von automatisierten GUI Tests
  • Last- und Performance-Testergebnissen mit JMeter

Übrigens, auch wenn sich der vereinbarte Projekt- und Vertragsrahmen mit dem Kunden eher an der Wasserfall-Methode orientiert, "übersetzen" wir dies intern in einen agilen Projektrahmen.


Klassischer Projektablauf

Von der Analyse bis zur Lösung

Der Projektablauf zur Entwicklung individueller Softwarelösungen umfasst die Anforderungsanalyse und Sicherheitskonzeption, den Systementwurf, die Implementierung, die Qualitätssicherung, eine System- und Anwenderdokumentation sowie Wartung, Pflege und Support und ggf. die bedarfsgerechte Weiterentwicklung.

Schritt für Schritt

Das von uns favorisierte Prozessmodell für die Spezifikation und Entwicklung individueller Softwarelösungen ist das V-Modell. Es verbindet den Spezifikations- und Entwicklungsprozess mit spezifischen Testphasen zur fortlaufenden Qualitätssicherung.

Analyse der Projektanforderungen

Ein erfolgreicher Projektverlauf setzt die Ermittlung und Verwaltung von Anforderungen voraus. Durch eine konkrete und präzise Darstellung dessen, was gewünscht wird, kann ein reibungsloser Projektverlauf realisiert werden.

Benutzte Methoden und Werkzeuge zur Anforderungsanalyse

    Sicherheitskonzeption

    Komponenten der IT-Infrastruktur sind anfällig gegenüber vielen Arten von Bedrohungen. Besondere Risiken birgt der Missbrauch von Systemen durch interne und externe Benutzer, was zum Verlust, zur Beschädigung oder zur Veröffentlichung von Daten führen kann. Zugleich muss die Gewährleistung einer möglichst hohen Verfügbarkeit Bestandteil der Sicherheitskonzeption sein. All diese Probleme gilt es bereits im Systementwurf zu berücksichtigen, um während der Implementierung geeignete Sicherheitsmaßnahmen zu integrieren.

    Bestandteile der Sicherheitskonzeption

    • Bedrohungsanalysen
    • Risikomanagement

    Systementwurf

    Ausgehend von Ergebnissen der Anforderungsanalyse und den Infrastruktur-Rahmenbedingungen wird die Software- und Systemarchitektur der zu erstellenden Anwendung entworfen. Für die Beschreibung der Systemarchitektur findet das standardisierte Gerüst des ARC42-Templates Verwendung. Mit der Systemarchitektur liegt eine statische Beschreibung des Zielsystems vor.

    Die über die Architektur hinausgehenden Entwurfsschritte werden in Form eines IT-Konzeptes zusammengefasst. Dort werden die Anforderungen in Form von Fachklassenmodell, Anwendungsfalldiagrammen, ER-Datenmodell und der grafischen wie auch funktionalen Beschreibung der Bedienoberfläche spezifiziert.

    Benutzte Methoden und Werkzeuge zum Systementwurf

    • Visual Paradigm
    • Power Designer

    Implementierung

    Mit der Implementierung erfolgt die Umsetzung der gemeinsam festgelegten Strukturen unter Berücksichtigung von Rahmenbedingungen, Regeln und Zielvorgaben. Dabei kann eine Vielzahl von Werkzeugen und Technologien zum Einsatz kommen.

    Werkzeuge

    • Eclipse
    • Borland JBuilder
    • Netbeans
    • MS Visual Studio .NET
    • Oracle Forms/Reports
    • Vi

    Plattformen

    • J2EE
    • BEA Weblogic AS 8,9 Oracle AS 10,11
    • JBoss Application Server
    • MS IIS
    • Android, Symbian, BlackBerry, iOS

    Technologien

    • Java / J2EE
    • SOA
    • EJB
    • JSP
    • ASP
    • PHP
    • JSF (Java Server Faces)+ PrimeFaces
    • Hibernate
    • Webservices
    • Matrixcodegenerierung und -analyse
    • Datenbank-Reporting
    • Oracle Reports
    • Crystal Reports
    • BIRT (Business Intelligence and Reporting Tools)

    Sicherheit

    • JSSE
    • JCE
    • SSL

    Datenbanken

    • Analyse + ER-Modellierung
    • Administration
    • Optimierung
    • ORACLE RDBMS
    • MSSQL
    • MySQL

    Qualitätssicherung

    Die Entwicklung von Software ist ein komplexer, arbeitsteiliger Prozess. Hohe Qualität kann dann sichergestellt werden, wenn – wie bei uns üblich – die Qualitätssicherung immanenter Bestandteil des Gesamtprozesses der Entwicklung ist. Hauptsächliches Instrument der Qualitätssicherung ist eine konsequent testgetriebene Entwicklung.

    Maßnahmen der Qualitätssicherung

    • Automatisierte Unit-Tests
    • Code mit guter Wartbarkeit und hoher Güte durch Einsatz von Checkstyle, PMD, FindBugs, Fortify, Classycle
    • Firmeninterne Kodier-Richtlinien für einheitlichen wartbaren Code
    • Webservice-Tests mittels soapUI

    System- und Anwenderdokumentation

    Basis der System-Dokumentation sind die aus dem ARC42 Templates gewonnene, strukturierte Systembeschreibung und das IT-Konzept. Ergänzt werden diese durch eine automatisch mit Hilfe von Javadoc, Natural Docs oder anderen Software-Dokumentationswerkzeugen aus den Quellcodes generierte Code-Dokumentation sowie einem Einrichtungs- und Betriebshandbuch.

    Klar strukturierte und leicht verständliche Anwendungshandbücher sichern den effektiven Einsatz der entwickelten Software beim Kunden.

    Wartung, Pflege und Support

    Der Freigabe und erfolgreichen Einführung einer ITZ-Softwareentwicklung folgt Ihre Entscheidung, ob weiterhin Aufgaben der Wartung, Pflege oder des Supports durch uns realisiert werden sollen. Unsere Leistungen umfassen die Weiterentwicklung der Lösung, die Lokalisierung und Behebung von neuen Problemen sowie Änderungs- und Erweiterungsmaßnahmen.


    Eingesetzte Technologien

    Um die Effektivität und Effizienz Ihrer Softwareentwicklung zu gewährleisten, verwenden wir Technologien und Methoden, die unternehmens- und lösungsspezifisch ausgewählt werden sowie aktuellen Anforderungen entsprechen.

    Java und Oracle

    Java ermöglicht eine plattformunabhängige Programmierung, das heißt, Java-Applikationen laufen ohne weitere Anpassungen auf verschiedenen Rechnerarchitekturen und Betriebssystemen. Zur Java-Entwicklungsumgebung gehört eine Vielzahl von Komponenten, die eine methodisch moderne, effektive, gut getestete und dokumentierte Softwareentwicklung ermöglichen. Durch leistungsfähige Klassen- und Komponentenbibliotheken sowie Werkzeuge für die Gestaltung der Benutzeroberflächen können Entwickler auf standardisierte Lösungsmuster zurückgreifen.

    Mit Hilfe der MiddleWare-Komponenten Oracle Application Server, Oracle WebLogic, JBOSS AS lassen sich unternehmensweite, auf modulare Komponenten verteilte, mehrschichtige Anwendungen entwickeln, die besonders gut skalierbar sind.

    Die Datenverwaltung erfolgt vornehmlich mit Hilfe der Datenbankmanagementsystem-Software von Oracle, die sowohl relationale Daten als auch objektrelationale Daten speichern und verwalten kann.

    .Net: Software-Plattform

    Diese Software-Plattform von Microsoft dient der Entwicklung und Ausführung von Applikationen, die vorrangig unter Windows laufen. Aber auch webbasierte Lösungen lassen sich mit .NET entwickeln. .Net bietet zahlreiche Lösungen für Standardaufgaben an, womit eine hohe Effizienz der Softwareentwicklung sichergestellt wird. Wichtiger Bestandteil des .NET-Frameworks ist sein integriertes Sicherheitssystem.

    Mobile: Aktuelle Applikationen

    Mobile Applikationen werden modernen Geschäftsprozessen gerecht. Wir entwickeln Software für mobile Geräte für alle gängigen Smartphone-Betriebssysteme: Symbian, Android, iOS, BlackBerry und Windows Mobile.

    Testautomatisierung 

    Je komplexer eine individuell entwickelte Softwarelösung wird, desto mehr stellt sich die Frage, wie sichergestellt werden kann, dass das Verhalten der Lösung tatsächlich und nachweisbar den Anforderungen an das System entspricht.

    Individualprogramme unterliegen prinzipbedingt einer hohen Änderungsdynamik, da sie in der Regel individuelle Geschäftsprozesse abbilden.

    Aufgrund der inneren Komplexität des Programmcodes haben Entwickler selten die gesamte Reichweite ihrer Änderungen am Programmcode im Blick. So können Seiteneffekte auftreten, durch die sich Abweichungen vom geforderten Verhalten einschleichen.

    Die Lösung, diesen Problemen zu begegnen, liegt darin, die eigentliche Programmentwicklung durch automatisierte Tests zu begleiten. Zu jeder Programmfunktion und jeder Programmverzweigung wird parallel Programmcode geschrieben, der den eigentlichen Funktionscode testet. Solch ein Test beschreibt einen Sollzustand, den das zu testende Programmfragment liefern soll: Von einer Funktion, die die Summe zweier Zahlen liefert, wird man erwarten, dass sie bei Eingabe von 2 und 2 das Ergebnis 4 liefert.

    Diese Tests bauen aufeinander auf und werden untereinander verkettet. Vor jeder Auslieferung einer Programmänderung werden alle Tests abgearbeitet und somit alle definierten Ist- und Soll-Zustände automatisiert verglichen.

    Wenngleich der Entwicklungsaufwand zunächst etwas höher wird, wenn man parallel zum eigentlichen  Programmcode auch Tests programmiert, amortisiert sich dieser Mehraufwand schnell durch eine höhere Codequalität und risikoärmere Pfleg- und Erweiterbarkeit des Programmcodes.


    Ist Testautomatisierung erst einmal gewünscht, stellt sich die Frage wie sich diese umsetzen lässt.

    Die global eingesetzte Programmiersprache Nummer 1 Java bietet eine hervorragende Grundlage hierfür. (Quelle: https://www.tiobe.com/tiobe-index/)

    Entwicklern stehen die aktuellsten Frameworks und Tools namhafter Organisationen wie z. B. Oracle und Apache und die Erfahrungen einer weltweit agierenden Community zur Verfügung.

    Ein spezieller XML-Dialekt erlaubt zusätzlich auch Nicht-Entwicklern den Ablauf automatisierbarer Tests zu verstehen. Das ist besonders wichtig, da es sich bei den formulierten Testbedingungen meist um Geschäftsregeln eines durch die zu programmierende Software abgebildeten Geschäftsprozesses handelt, die die Spezialisten für den Geschäftsprozess am besten kennen.

    Für die Erstellung, Verwaltung und Durchführung automatisierbarer Tests können sich Softwarenentwickler auf die Robustheit weltweit eingesetzter und langjährig bewährter Werkzeuge verlassen.
    So haben sich im Umfeld von Java Frameworks zum Aufbau automatischer Tests wie JUnit und Selenium bewährt. Diese werden durch Werkzeuge ergänzt, die das Zusammenführen verschiedener Module zu einem Gesamtprogramm unterstützen, die so genannte Build-Automation- und Continuous-Integration-Werkzeuge. Die beiden bekanntesten Werkzeuge dafür im Java-Umfeld sind Maven und Jenkins.
    Diese Tools bieten zudem eine ausgezeichnete Unterstützung für die Auswertung von Teststats.

    Aufbauend auf diese Werkzeuge und langjährige Projekterfahrung ist im ITZ ein firmeneigenes Testframework entstanden. Das hilft uns, automatisierbare Tests schnell und unkompliziert umzusetzen.
    Die Gliederung von Testszenarien in Testschritte und Aktionen hilft die Benutzung von Browsern abzubilden.
    Dadurch sind wir in der Lage auf Kundenwünsche zu reagieren und schnell individuelle Lösungen zu schaffen.



    Fallstudien zur Softwareentwicklung

    Am Beispiel einiger durch die ITZ Rostock GmbH realisierter Software-Projekte wird gezeigt, wie Individuallösungen Wertschöpfungsprozesse optimieren und effektivieren konnten. Dieser Effizienzgewinn ging oft mit einer Verbesserung der Servicequalität einher.

    Auslastungsoptimierung durch besseres Preismanagement 

    Smartphone-App als Ersatz für teure Spezialhardware 

    Vereinheitlichung und Effektivierung der Generierung von DataMatrix-Codes 

    Technologiewechsel ermöglicht höhere Marktdurchdringung 

    Datendrehscheibe erhöht Transparenz in Prozessabläufen 

    Smartphone-App als Ersatz für teure Spezialhardware 

    Durch den Einsatz einer Smartphone-App zum Lesen von DataMatrix-Codes statt der dafür üblicherweise eingesetzten Spezial-Lesegeräte konnten folgende Effekte erreicht werden:

    • Kostenersparnis durch Einsatz eines preiswerten Massenprodukts
    • Bessere Überwachung von Produktionsprozessen
    • Verbesserung der Servicequalität, da relevante Informationen
      sofort vor Ort in der Prozesskette verfügbar sind
    • Verringerung von Ausfallzeiten

    Aufgabenstellung

    Ein Logistikkonzern benutzt für die Kennzeichnung der Transportgüter DataMatrix-Codes. Diese Codes werden für die Lenkung der Warenströme benutzt. Da auch Geschäftspartner diese Codes auf das Transportgut aufbringen dürfen und in zunehmendem Maße Probleme mit inhaltlich fehlerhaften oder falsch codierten Matrixcodes auftraten, musste ein Werkzeug zur Qualitätssicherung und Fehlerdiagnose für diese zur Leistungserbringung relevanten Merkmale geschaffen werden.

    Projektverlauf

    Barcode-Analyse über Symbian-Smartphones

    Da die Mitarbeiter des Konzerns bereits über Symbian-Smartphones verfügten, wurde der Entschluss gefasst, diese Geräte für die Fehler- und Inhaltsanalyse der Barcodes zu nutzen. Zudem war es unbedingt erforderlich, auch beschädigte oder fehlerhaft codierte DataMatrix-Codes zu analysieren, um die Ursachen zu ergründen, warum diese Codes auf marktüblichen Scannern nicht lesbar sind.

    Architekturentwicklung für rechenintensive Bildanalyse

    Da die erweiterte Funktionalität zur Bildanalyse sehr rechenintensiv ist, wurde eine Architektur entwickelt, in der das mobile Gerät das Bild des Matrixcodes erfasst, die Bilddaten zur Interpretation an einen Webservice übergibt und die Ergebnisse der Bildanalyse an das mobile Gerät zurückgeliefert werden.

    Ergebnisse

    Die geschaffene Lösung bietet im Fehlerfall Diagnosen zu allen Phasen der Dekodierung des DataMatrix-Bildes (Schwellwertermittlung, Regionenfindung, Kantensuche, Bitmusterlesung und Red-Solomon-Dekodierung).

    Darüber hinaus kann der Inhalt jedes erfolgreich gelesenen DataMatrix-Codes auf Protokollebene als Folge von ISO-16022-Operationen analysiert werden. Neben der Qualitätssicherung in Systemen, die DataMatrix-Codes erstellen, ist der Zugriff auf diese Protokollebene ein wichtiges Werkzeug bei der Eingrenzung von Leseproblemen.

    Über die Ausgabe des Codeinhaltes in ASCII- oder Hexcodefolge hinaus hat das Analyseprogramm Zugriff auf die Metadaten zum Inhalt der verwendeten Matrixcodes. Dadurch kann der Code in die einzelnen Felder zerlegt und entsprechend des Datentyps für die tabellarische Darstellung aufbereitet werden.

    Zahlenfolgen, die Referenzen auf Informationen in anderen Systemen darstellen, werden in der finalen Aufbereitungsstufe dazu benutzt, um referenzierte Kunden-, Produkt- und Vertragsinformationen zusätzlich auf dem mobilen Gerät anzuzeigen.

    Auslastungsoptimierung durch besseres Preismanagement

    Durch eine Vereinheitlichung der zuvor vielfältigen und nicht zueinander passfähigen Preis- und Produktinformationssysteme eines internationalen Logistikunternehmens konnten folgende Effekte erreicht werden:

    • Vereinheitlichung der Produktbasis im Konzern
    • Einfachere Preisermittlung
    • Mehr Preistransparenz für den Kunden
    • Optionale Bereitstellung besonderer Preiskonditionen,
      wie z. B. von Staffelpreisen
    • Auslastungsoptimierung durch besseres Preismanagement
    • Aufwandsminimierung, da manuelle Abstimmungen entfallen

    Aufgabenstellung

    Ein internationales Logistikunternehmen setzte für unterschiedliche Sparten individuelle Preis- und Produktinformationssysteme ein. Die Geschäftsobjekte und die Methoden der Preisfindung waren in den einzelnen Sparten sehr unterschiedlich ausgeprägt. Die Zuständigkeiten und Kompetenzen für einzelne Produkte sind innerhalb des Konzerns weit gestreut.

    Dieser Zustand sollte durch Einführung eines einheitlichen Produktinformationssystems verbessert werden. Das neue System musste sämtliche Produktinformationen zusammenfassen und so die zentrale Informations-, Überwachungs- und Beauskunftungsplattform für Produkte des Konzerns werden.

    Projektverlauf

    Während der Vorbereitung des Projektes wurde festgestellt, dass eine hinreichend genaue Projektplanung und Aufwandsabschätzung mit den vorhandenen Informationen zu den Daten und Prozessen innerhalb der Altsysteme unmöglich war.

    Prozess- und Datenanalyse für mehr Klarheit bei Zielvorgaben

    Daraufhin führte die ITZ Rostock GmbH eine Prozess- und Datenanalyse durch. Die Modellierung konnte trotz weit gestreuter Kompetenzen auf Kundenseite dank unserer Erfahrungen im Produkt- und Logistikbereich sehr zeitnah fertig gestellt werden. Für die Altsysteme und das Neusystem wurden Fachklassenmodelle erstellt. Die angestrebten unternehmenseinheitlichen Prozesse zur Produktverwaltung wurden als Anwendungsfall-Diagramm aufbereitet.

    Die Analyseergebnisse ermöglichten es allen zuständigen Parteien des Kunden, die Anforderungen an das Neusystem zu präzisieren und zu bestätigen.

    Mitgestaltung im Systemkonzept: Frühzeitige Einbindung der Anwender

    In der anschließenden Entwurfsphase wurden zeitgleich die Softwarearchitektur nach ARC42, das IT-Konzept und ein Klick-Dummy realisiert. Der Klick-Dummy half IT-fernen Projektbeteiligten dabei, sich die angestrebte Umsetzung zu erschließen und sich in die Ausgestaltung der Umsetzung einzubringen. Die Zwischenstände der erstellten Dokumente wurden dem Kunden regelmäßig präsentiert, um ihm so gute Mitgestaltungs- und Kontrollmöglichkeiten zu bieten.

    ETL-Komponente sorgt für flexible Datenextraktion aus heterogenen Systemkomponenten

    Das Neusystem sollte über eine flexible ETL-Komponente verfügen, um Anpassungen an bestehende Schnittstellen und die Einbindung neuer Informationsquellen ohne Änderungen an der Programmierung des Systems zu ermöglichen. Dafür wurde ein frei parametrierbarer Extraktor geschaffen, der Webservice-Informationsquellen unterstützt. Außerdem fand eine frei parametrierbare Anbindung dieses Extraktors an die SOA des Kunden statt.

    Die der Extraktion nachgelagerte Transformation der Quelldaten wurde ebenfalls frei parametrierbar gestaltet. Die Parametrierung von Extraktions-, Transformations- und Ladeprozess erfolgt über eine Browserapplikation.

    Sämtliche Prozesse des Ladesystems laufen in der geschaffenen Lösung autark, bei Unregelmäßigkeiten werden die zuständigen Akteure per Mail benachrichtigt. Ladeoperationen können zyklisch oder vom Quellsystem getriggert ausgeführt werden. Nutzer des Systems werden auf Wunsch per Mail oder Webservice über Änderungen an den für sie sichtbaren Produkten informiert.

    Browserbasierte Anwenderschnittstelle ermöglicht Zugang auch für Mandanten des Kunden

    Für die Inspektion und Modifikation des Datenbestandes wie auch für die fachliche und technische Administration wurde eine Webanwendung mittels JavaServer Faces realisiert. Die Produktdaten selbst werden in einer Oracle-11-Datenbank vorgehalten.

    Über einen HTTPS- und USERNAME-tokengesicherten Webservice können Mandanten des Logistikunternehmens auf ihre mandantenspezifischen Produkt- und Preisinformationen zugreifen. Als Ausführungsumgebung für Webservice und -anwendung wurde ein JBoss Enterprise Server gewählt, da sich dieser optimal in die IT-Landschaft des Kunden eingliedern ließ.

    Minimierung des Pflegeaufwandes durch umfassende Dokumentation und Service-Tool

    Um den Aufwand für Logistikkunden, welche den Beauskunftungs-Webservice an ihre IT anbinden möchten, zu minimieren, wurden neben der Servicebeschreibung ein Entwickler-How-To und ein übersichtlicher Serviceclient entwickelt, dessen Programmquellen den Servicenehmern übergeben werden.

    Ergebnisse

    Das Projekt wurde einschließlich fachlicher und betrieblicher Abnahme, Paketierung und Aktivierung sämtlicher Schnittstellen und Aufnahme des Produktivbetriebes innerhalb von sechs Monaten termin- und budgetgerecht realisiert.

    Technologiewechsel ermöglicht höhere Marktdurchdringung 

    Durch den Wechsel zu einer leistungsfähigeren Systemlösung konnten folgende Effekte erreicht werden:

    • Ausweitung der Kundenbasis auf das Hundertfache
    • Verbesserung der Servicequalität gegenüber den Kunden
    • Steigerung der internen Effizienz
    • Verbesserung der Daten- und Transaktionssicherheit

    Aufgabenstellung

    Ein bundesweit agierendes Unternehmen überlässt seinen Kunden Geräte zur Nutzung. Die Informationen über Nutzungsverträge, Kundendaten und darüber, welcher Kunde welches Gerät wie intensiv nutzt, wurden in einer MS-Access-Datenbanklösung verwaltet.

    Infolge eines rasant wachsenden Kundenstammes, verbunden mit einer immer größeren Nachfrage nach Geräten, stieß die beim Kunden vorhandene MS-Access-Anwendung an ihre Leistungsgrenzen. Zudem genügte sie nicht mehr den Anforderungen nach sicheren Transaktionen, bundesweitem Datenbankzugriff, Authentifizierung, Protokollierung und Reporting.

    Projektverlauf

    Geschäftsprozessanalyse sorgt für optimiertes Datenmodell

    Um eine auch auf lange Sicht beständige und skalierbare Lösung zu schaffen, wurde die Datenhaltung auf ein Oracle-Datenbanksystem migriert. Mittels Power Designer wurde das Datenbankmodell so überarbeitet, dass es der zweiten Normalform genügte.

    Neben dem Reverse Engineering der Access-Lösung floss das Ergebnis einer Geschäftsprozessanalyse in die Datenmodellierung ein, denn nur, wenn sich das Datenmodell im Einklang mit der Unternehmenswirklichkeit befindet, können Geschäftsprozesse dort reibungslos abgebildet werden.

    Hohe Verfügbarkeit durch spezielle Monitoring-Anwendung

    Für den Abgleich des Datenbestandes mit diversen Umsystemen wurden Massendatenschnittstellen geschaffen, welche einen automatischen Datenabgleich durchführen.

    Zur Überwachung der Schnittstellenaktivitäten entstand eine Monitoring-Anwendung, welche die Nachverfolgung jedes einzelnen Schnittstellenvorganges ermöglicht und im Störungsfall eine schnelle Fehlerdiagnose gewährleistet. Der Schnittstellenbetrieb wurde dahingehend optimiert, dass alle ressourcenintensiven Lade- und Verdichtungsprozesse außerhalb der Produktiv- und Wartungsfenster stattfinden.

    Anwender erhalten intuitive Benutzeroberfläche

    Zur Datenabfrage und -erfassung wurde eine Windows-GUI geschaffen. Besonderes Augenmerk wurde auf intuitive Bedienbarkeit und Schutz vor Bedienfehlern gelegt, da ein Teil des Anwenderkreises häufigen Personalwechseln unterliegt.

    Ergebnisse

    Mit der von der ITZ Rostock GmbH aus Datenbanksystem, Schnittstellensystem und Bedienoberfläche geschaffenen Lösung konnte unser Kunde seinen Gerätebestand in den folgenden Jahren um einen Faktor größer als 100 steigern.

    Die dabei notwendigen Wartungsarbeiten beschränkten sich auf die Anpassung an veränderte Geschäftsprozesse und supportbedingte Versionswechsel des Datenbanksystems. Dem System werden mittlerweile täglich mehrere Millionen Datensätze mit Nutzungsinformationen zu den überlassenen Geräten hinzugefügt.

    Die Verfügbarkeit der Anwendung ist eine der besten in der gesamten Systemlandschaft des Kunden, obwohl keine spezielle Hochverfügbarkeitshardware eingesetzt wurde. Dies dürfte unter anderem an dem von der ITZ Rostock GmbH verfolgten Prinzip des „Simple Designs“ liegen.

    Dieses Prinzip aus dem „Extreme Programming“ (XP) hat zum Ziel, die Systemarchitektur (bei Erfüllung aller Kundenanforderungen) so einfach wie möglich zu gestalten. Projektleitung und Teile der Umsetzung lagen in der Hand des Auftraggebers.


    Postmatrix-Generierung

    Eines unserer Spezialgebiete ist das qualitätsgesicherte Erstellen von Datamatrixcodes für maschinenlesbare Frankiervermerke der Deutschen Post AG.

    Sowohl die normgerechte Generierung der Codes gemäß DIN 16022 als auch die frankierartspezifische Codierung der Dateninhalte haben wir mehrfach in Softwareprodukten implementiert.

    Für Nutzer der Frankierart RESPONSEPLUS ANTWORT stellen wir diese Funktionalität als JAVA-Bibliothek zur Integration in Ihre eigene Anwendung bereit. (Lizenzgebühr 149 € zzgl. MwSt)  

    Die Entwicklerdokumentation liefert Ihnen die erforderlichen Informationen, wie Sie die Bibliothek in Ihre Anwendung einbinden.

    Gerne unterstützen wir Sie auch bei der Implementierung von Softwarelösungen zur Erstellung von RESPONSEPLUS Antwort Sendungen in Ihren Projekten.