Software-Dokumentation meets Semantic Document Repository Das neue Fachkonzept und seine Werkzeugunterstützung durch SHORE Holger Braulik & Dr. Andreas Hörmann, Anwendungsentwicklung/Architektur | JBFOne 2009
Ziel dieses Vortrags Sie verstehen, weshalb ein umfassender Software- Dokumentationsansatz wichtig ist Sie haben eine Vorstellung davon, was wesentliche Bestandteile von Fachkonzept-Neu sind Sie kennen die entsprechende Werkzeug- Unterstützung der FIDUCIA in Form von SHORE
Agenda Teil 1 » Software-Dokumentation mit Fachkonzept-Neu | Holger Braulik Anforderungen an Software-Dokumentation Das Konzept hinter dem neuen Fachkonzept Einige Beispiele Status und Planung
Software-Industrialisierung stellt hohe Anforderungen an die Dokumentation Industrialisierung der Software-Entwicklung Dynamik An der Auftragslage orientierte dynamische Zuordnung von Mitarbeitern zu Themen Spezialisierung Anforderungsmanagement, Entwicklungsplanung, Architekturentscheidungen Projektdurchführung, Qualitätsmaßnahmen Test Center, Technische Redaktion, Application Management Effizienz Die Gesamteffizienz muss ständig verbessert werden Anforderungen an die Dokumentation Verständlichkeit Dokumentation muss einheitlich, einfach, möglichst selbsterklärend sein Passgenauigkeit Jede Zielgruppe muss passgenau nur das minimal Notwendige bekommen Nachhaltigkeit Dokumentation muss durchgängig fortgeschrieben werden und von Jedem einfach auffindbar sein
Anforderungen an die Dokumentation Inhaltlicher Bezugsrahmen Zugleich stellen neue Paradigmen wie BPM und SOA Anforderungen an ein Dokumentationskonzept BPM & SOA Prozessorientierung Im Fokus sind Geschäftsprozesse und deren IT-Unterstützung, nicht Anwendungen Serviceorientierung Im Fokus ist die ganzheitliche Optimierung, nicht Anwendungen und deren Verknüpfung über Schnittstellen Anforderungen an die Dokumentation Metamodell Alle Dokumente müssen einem Metamodell und einer Methode folgen, die konsequent von Geschäftsprozessen zu wieder verwendbaren Services führt Inhaltlicher Bezugsrahmen Ein übergeordneter inhaltlicher Bezugsrahmen muss vorhanden sein. Einzeldokumente müssen darin eingeordnet werden
Agenda Teil 1 » Software-Dokumentation mit Fachkonzept-Neu | Holger Braulik Anforderungen an Software-Dokumentation Das Konzept hinter dem neuen Fachkonzept Einige Beispiele Status und Planung
Anforderungen an Fachkonzept-Neu Einheitlichkeit Einheitliche Form und Verwendung Unabhängig von Projektgröße, Inhalt, Standortkultur, Plattform, etc. Verständlichkeit Schnelle Einarbeitung neuer Projektmitarbeiter und Außenstehender Application Management, Tester, Technische Redakteure, Reviewer, … Zielgruppen- orientierung & Modularisierung Verschiedene Blickwinkel (Produktmanager, Entwickler, …) Projektsicht und dauerhaft fortzuschreibende Dokumentation Fachlichkeit unabhängig von Design oder technischer Plattform beschreiben Nachhaltigkeit & Wertigkeit Nachhaltige Dokumentation über das Bestehen von Projekten hinweg Vermittlung von Anwendungs- und Kontext-bezogenem Wissen Zentrale Ablage und universaler Zugriff Architektur & Methodenkongruenz Auf Prozessunterstützung und Usability ausgerichtet Anwendungsfälle als Dreh- und Angelpunkt Fachlich motiviertes Komponenten- und Service-Design
Benutzerschnittstelle Klare Modellebenen sind Voraussetzung für die Nachvollziehbarkeit und Zielgruppenorientierung von Dokumentation Auftrag- geber Geschäfts- sicht Geschäftskontext Geschäftskontext- Information Geschäfts- prozess Fachl Tester UI- Manager Systemsicht Fachliche Sicht Produkt- entwickler System-Außensicht Fachlicher Begriff Fachliche Regel Anwendungs- fall Technische Redaktion Fachlicher Architekt Benutzerschnittstelle Fachliche Meldung Lösungsebene: Wie (genau umgesetzt)? Außenschnittstelle Software- Entwickler Anwendungsfall- Realisierung System-Innensicht Kontext-Ebene: Warum (eigentlich so umgesetzt)? Tech-nischer Architekt Fachlicher Service Fachliche Komponente Fachklassen- modell Technische Sicht Technische Systemsicht JBF- Service HOST- TX ETL
Projekt- und nachhaltige Sichten werden über Bausteine erzielt agree-Dokumentation Geschäfts- prozess Geschäfts- kontext Projekt-einordnung Anwendungs- fall Fachliche Regeln Fachliche Domäne Fachliche Begriffe Querschnitts- themen System-Außen- Schnittstelle Benutzer- schnittstelle Fachliche Meldungen Migrations- konzept Fachlicher Service Fachliche Komponente
Template Projekt-Einordnung Zurück zum Überblick
Template Anwendungsfall Zurück zum Überblick
Template Fachlicher Service
Bausteine werden zu spezifischen Reports zusammengesetzt Fachkonzept Außensicht Fachkonzept Außensicht Projekteinordnung Projekteinordnung Je Fachliche Domäne Je Fachliche Domäne Geschäftsprozesse Geschäftsprozesse Geschäftskontextinformationen Geschäftskontextinformationen Anwendungsfälle Anwendungsfälle Benutzerschnittstellen Benutzerschnittstellen agree Außenschnittstellen agree Außenschnittstellen Fachkonzept Innensicht Fachliche Begriffe Fachliche Begriffe Je Fachliche Domäne Fachliche Regeln Fachliche Regeln Realisierte Anwendungsfälle Fachliche Meldungen Fachliche Meldungen Fachliche Komponenten Migrationskonzept Migrationskonzept Fachliche Services Querschnittskonzepte Querschnittskonzepte Auftrag- geber Fachl. Tester UI- Manager Technische Redaktion Produkt- entwickler Fachlicher Architekt Software- Entwickler Techn. Architekt
Agenda Teil 1 » Software-Dokumentation mit Fachkonzept-Neu | Holger Braulik Anforderungen an Software-Dokumentation Das Konzept hinter dem neuen Fachkonzept Beispiele Status und Planung
Überblick SEPA SEPA Rulebooks SEPA- Überweisung SEPA- Lastschrift ÜW via BAP einreichen LS via BAP einreichen ÜW via eBk einreichen Aufträge des Clearers verarbeiten LS via eBk einreichen Aufträge an Clearer übermitteln ÜW via HBCI einreichen LS via EBICS einreichen ÜW via SB einreichen Einer LS widersprechen ZV-Aufträge freigeben buche verarbeite Kunden- auftrag gib Auftrag frei verarbeite Clearer- auftrag liefere zu übermittelnde Aufträge prüfe lege an versende Aufräge Konto Auslöser- Verarbeitung Beteiligten- Verarbeitung Refusals ZV-Ausgang
Ausschnitt Konditionsbaustein Zinsanpassungs- klausel Zinsgleitklausel Produkt-Management Vertragsüberwachung Produkt anlegen Produkt ändern Produkt- anlage/änderung freigeben Konditions- komponente anlegen Konditionen auf Gesetzeskonformität überwachen Konditions- Komponente ändern Konditions- komponente verknüpfen über Konditionsänderungen informieren Konditions- komponente löschen lege Produkt an ändere Produkt prüfe Konditionen liefere Änderungen erzeuge Mitteilungen liefere Produkte liefere Änderungen Produkt Vertrag KIM
Überblick Geschäftsvorfall-Management Infos aus dem AK Ordnungs- mäßigkeitsfragen Geschäftsprozesse administrieren „Beliebiger“ Geschäftsprozess GV-Vorlage bearbeiten GV-Vorlage anlegen „Beliebiger“ Anwendungs- fall sub: GV-Vorlagen anzeigen GV anlegen Bericht manuell ausführen GV bearbeiten Bericht automatisch ausführen Bericht definieren sub: Vorgang anlegen sub: GV weiterleiten lege Bericht an führe Bericht aus liefere GV- Vorlagen lege GV- Vorlage an ändere GV- Vorlage lege GV an ändere GV lege Vorgang an IDA GVM Vorgang GV- Vorlage GV
Dokumente aus dem Projekt Konditionsbaustein
Anwendungsfall: Geschäftsvorfall anlegen
Agenda Teil 1 » Software-Dokumentation mit Fachkonzept-Neu | Holger Braulik Anforderungen an Software-Dokumentation Das Konzept hinter dem neuen Fachkonzept Beispiele Status und Planung
Status und Planung 2008 2009 2010 Pilotprojekte KOB 1a KOB 1b GVM 2 3 4 1 2 3 4 1 2 3 4 Pilotprojekte KOB 1a KOB 1b GVM 2 Depot A VPS Agentur Evaluierung Weitere Tool- Unterstützung POC Umsetzung
Agenda Teil 2 » Werkzeugunterstützung durch SHORE | Dr. Andreas Hörmann Anforderungen an eine Werkzeugunterstützung Betrachtete Lösungsalternativen Semantic Document Repository (SDR) SHORE (Semantic Hypertext Object REpository)
Treiber für eine Werkzeugunterstützung Ein Erfolgsfaktor für den Breiteneinsatz von „Fachkonzept-Neu“ ist die einfache Aggregation der Dokumentationsbausteine zu umfassenderen Sichten Wesentliche Aspekte sind dabei die … Erzeugung von Request- oder projektspezifischen Dokumenten aus den tangierten Bausteinen, die als Ganzes publizierbar und offline lesbar sind Zentrale, produktübergreifende und komfortable Navigation entlang den logischen Ebenen und Fachgebieten Autoren und Leser benötigen hierfür eine geeignete Werkzeugunterstützung, die gebrauchstauglich ist Vermeidung von Mehraufwand bei der Dokumentenerstellung Möglichst Weiterverwendung von bestehenden Editoren (Microsoft Word etc.) Akzeptanz von Werkzeug und seinen Ergebnistypen bei den Nutzern
Agenda Teil 2 » Werkzeugunterstützung durch SHORE | Dr. Andreas Hörmann Anforderungen an eine Werkzeugunterstützung Betrachtete Lösungsalternativen Semantic Document Repository (SDR) SHORE (Semantic Hypertext Object REpository)
Betrachtete Lösungsalternativen /1 Redaktionssystem für technische Dokumentation ➨ TCToolbox von Ovidius Umfassende Lösung für Erstellen, Verwalten und Publizieren von Textinhalten Hat Bausteinkonzept inklusive Templates und Aggregationsmechanismen Erfordert SGML/XML-fähige Editoren (Adobe FrameMaker etc.) zur Texterfassung Bewertung: Sehr mächtig, jedoch komplex in der Bedienung und teuer System für Anforderungsmanagement ➨ Rational Requisite Pro von IBM Werkzeug zur Extraktion, Verknüpfung und Verwaltung von Textinhalten Nutzt Microsoft Word zum Erfassen und Auszeichnen von Textpassagen Benötigt (externe) Generatoren zum Erzeugen von übergreifenden Dokumenten Bewertung: Fachfremder Einsatz, keine wirkliche Abdeckung der Anforderungen
Betrachtete Lösungsalternativen /2 Individuallösung auf Basis von Microsoft Word plus Verwaltungsapplikation Maßgeschneiderte Neuentwicklung auf Basis von CIB-Produkten Textinhalte werden mit Word erstellt und in einem zentralen Repository abgelegt Ein darauf basierendes Verwaltungssystem ermöglicht Navigation und Publizieren Bewertung: Gute Abdeckung der Anforderungen, aber erst noch zu implementieren Semantic Document Repository (SDR) ➨ SHORE von Capgemini sd&m Textinhalte werden analysiert und enthaltene Passagen semantisch ausgezeichnet Als Ergebnis entsteht ein Inhaltsmodell in einem zentralen Repository Abfragen auf dem Inhaltsmodell ermöglichen Navigation und Publizieren Bewertung:
Bewertung der Lösungsalternativen
Agenda Teil 2 » Werkzeugunterstützung durch SHORE | Dr. Andreas Hörmann Anforderungen an eine Werkzeugunterstützung Betrachtete Lösungsalternativen Semantic Document Repository (SDR) SHORE (Semantic Hypertext Object REpository)
Semantic Document Repository (SDR) Ein Semantic Document Repository (SDR) ist … eine Ergebnisdatenbank für Dokumente mit einem frei definierbaren Metamodell, die Abschnitten in den Dokumenten eine Bedeutung gemäß dem Modell zuordnet, definierte Beziehungen zwischen diesen Abschnitten auflöst, daraus ein semantisches Netz mit Rückverweisen in die Quelldokumente aufbaut, dadurch die Generierung von spezifischen Sichten auf die Quellen erlaubt Quell-Dokument Abschnitt Bedeutung hat enthält Textinhalte definiert in Ergebnisdatenbank Metamodell Generierung Sichten Ziel- Dokument steuert Hypertext Report steuert Analyse Semantisches Netz
Beispiel eines semantischen Netzes /1 AF „Konditionskomponente ändern“ AF „Konditionskomponente verknüpfen“ AF „Zwischengespeicherte Produktanlage weiterbearbeiten“ AF „Produkt-Zins/Preis anlegen“ AF „Konditionskomponente anlegen“ AF „Produkt anlegen“ verweist auf Pro Anwendungsfall (AF) existiert ein eigenes Dokument (➨ Vorgabe „Fachkonzept-Neu“) Die AF-Beschreibung ist ein Kapitel (Abschnitt) innerhalb des Dokuments Innerhalb einer AF-Beschreibung wird textuell auf weitere AF verwiesen
Beispiel eines semantischen Netzes /2 AF „Konditionskomponente ändern“ AF „Konditionskomponente verknüpfen“ AF „Zwischengespeicherte Produktanlage weiterbearbeiten“ AF „Produkt-Zins/Preis anlegen“ AF „Konditionskomponente anlegen“ AF „Produkt anlegen“ verwendet Pro Anwendungsfall (AF) existiert ein eigenes Dokument (➨ Vorgabe „Fachkonzept-Neu“) Die AF-Beschreibung ist ein Kapitel (Abschnitt) innerhalb des Dokuments Innerhalb einer AF-Beschreibung wird textuell auf weitere AF verwiesen
Beispiel für Generierung einer Sicht (hier: Report) AF „Konditionskomponente ändern“ AF „Konditionskomponente verknüpfen“ AF „Zwischengespeicherte Produktanlage weiterbearbeiten“ AF „Produkt-Zins/Preis anlegen“ AF „Konditionskomponente anlegen“ AF „Produkt anlegen“ verwendet Pro Anwendungsfall (AF) existiert ein eigenes Dokument (➨ Vorgabe „Fachkonzept-Neu“) Die AF-Beschreibung ist ein Kapitel (Abschnitt) innerhalb des Dokuments Innerhalb einer AF-Beschreibung wird textuell auf weitere AF verwiesen
Umsetzung eines SDR mit SHORE SHORE (= Semantic Hypertext Object REpository) ist … ein SDR, das als internes Projekt von Capgemini sd&m entwickelt wurde, typischerweise für das Reverse-Engineering von Systemen eingesetzt wird, sich in > 35 Projekten (BayernLB, DaimlerCrysler, Dresdner Bank etc.) bewährt hat, teilweise von Kunden übernommen und weiterentwickelt wird, seit 2001 als Open-Source freigegeben ist („www.OpenSHORE.org“)
Agenda Teil 2 » Werkzeugunterstützung durch SHORE | Dr. Andreas Hörmann Anforderungen an eine Werkzeugunterstützung Betrachtete Lösungsalternativen Semantic Document Repository (SDR) SHORE (Semantic Hypertext Object REpository)
Prinzipielle Funktionsweise von SHORE /1 Quelldokumente *.*
Prinzipielle Funktionsweise von SHORE /2 Quelldokumente *.* Abschnitte mit Bedeutung SHORE-Parser XML ➨ Analyse
Prinzipielle Funktionsweise von SHORE /3 Quelldokumente *.* Abschnitte mit Bedeutung SHORE-Parser XML SHORE-Repository Semantisches Netz ➨ Analyse verwendet beschreibt ruft liest definiert
Prinzipielle Funktionsweise von SHORE /4 Quelldokumente *.* Abschnitte mit Bedeutung SHORE-Parser XML SHORE-Repository SHORE-Queries Semantisches Netz ➨ Generierung ➨ Analyse verwendet definiert beschreibt ruft liest
Modell-Ebenen von SHORE fest defined in to from DocumentType SHORE Metamodell ObjectType RelationshipType defined in from to Metamodell für „Fachkonzept-Neu“ Anwendungsfall ObjectType DocumentType Fachlicher Service realisiert durch RelationshipType verweist auf … … definieren Bauanleitung für semantisches Netz Modell aus Projekt „Konditionsbaustein“
Modell-Ebenen von SHORE Konkretes Metamodell für „Fachkonzept-Neu“ (Auszug) fest defined in to from DocumentType SHORE Metamodell ObjectType RelationshipType defined in from to Metamodell für „Fachkonzept-Neu“ Anwendungsfall ObjectType DocumentType Fachlicher Service realisiert durch RelationshipType verweist auf … … definieren Bauanleitung für semantisches Netz Modell aus Projekt „Konditionsbausteine“
Einsatz von SHORE für Fachkonzept-Neu Microsoft Word Dokumentationsbaustein aus Fachkonzept-Neu Entwicklerarbeitsplatz Browser/ Explorer Request- bzw. projektspezifischer Report Subversion-Client Subversion-Server Subversion-Repository Versionsmanagement … SHORE-Server SHORE-Repository Subversion-Client Semantic Document Repository Semantisches Netz für Dokumentationsbausteine
Prinzipieller Workflow beim Einsatz von SHORE /1 Editieren Dokumentationsbaustein aus Fachkonzept-Neu Aktivitäten des Anwenders Aktivitäten des Anwenders: Editieren Erstellen eines Dokumentationsbausteins auf Basis der vorgegebenen Templates und Konventionen von Fachkonzept-Neu Speichern des Dokuments im Microsoft Office XML-Format* Check-in der Datei in das zugehörige Subversion Repository * = WordprocessingML, Word 2003 XML
Prinzipieller Workflow beim Einsatz von SHORE /1 Editieren Dokumentationsbaustein aus Fachkonzept-Neu Aktivitäten des Anwenders Aktivitäten des Anwenders: Editieren Erstellen eines Dokumentationsbausteins auf Basis der vorgegebenen Templates und Konventionen von Fachkonzept-Neu Speichern des Dokuments im Microsoft Office XML-Format* Check-in der Datei in das zugehörige Subversion Repository * = WordprocessingML, Word 2003 XML
Prinzipieller Workflow beim Einsatz von SHORE /2 Editieren Dokumentationsbaustein aus Fachkonzept-Neu Analyse Aktivitäten des Anwenders Aufgaben von SHORE SHORE Repository mit semantischem Netz Per Trigger-Mechanismus wird ein SHORE Update-Prozess gestartet nach Subversion-Commit, zeitgesteuert, abhängig vom Dokumentenstatus … Aufgaben von SHORE: Analyse Check-out des geänderten Dokumentationsbausteins aus Subversion Repository Analyse seines Textinhalts entsprechend dem vorgegebenen Metamodell Aktualisierung des Datenbestands im SHORE Repository (= semantisches Netz)
Prinzipieller Workflow beim Einsatz von SHORE /3 Prüfen Editieren Dokumentationsbaustein aus Fachkonzept-Neu Analyse Aktivitäten des Anwenders Aufgaben von SHORE SHORE Repository mit semantischem Netz Aktivitäten des Anwenders: Prüfen Kontrolle der Analyse durch Sichtung der SHORE Protokolldateien und Ansicht der Ergebnisse im Web-GUI Bei Bedarf: Inhaltliche Korrektur des Dokumentationsbausteins und erneutes Triggern des SHORE Update-Prozesses
Prinzipieller Workflow beim Einsatz von SHORE /3 Prüfen Editieren Dokumentationsbaustein aus Fachkonzept-Neu Analyse Aktivitäten des Anwenders Aufgaben von SHORE SHORE Repository mit semantischem Netz Aktivitäten des Anwenders: Prüfen Kontrolle der Analyse durch Sichtung der SHORE Protokolldateien und Ansicht der Ergebnisse im Web-GUI Bei Bedarf: Inhaltliche Korrektur des Dokumentationsbausteins und erneutes Triggern des SHORE Update-Prozesses
Prinzipieller Workflow beim Einsatz von SHORE /4 Prüfen Editieren Dokumentationsbaustein aus Fachkonzept-Neu Analyse Generierung Aktivitäten des Anwenders Aufgaben von SHORE Request- bzw. projektspezifischer Report SHORE Repository mit semantischem Netz Per Trigger-Mechanismus wird ein SHORE Generierungsprozess gestartet nach Analyse, zeitgesteuert, explizit durch Anwender angestoßen … Aufgaben von SHORE: Generierung Erzeugen des request- oder projektspezifischen Reports Bereitstellen des Dokuments im Microsoft Office XML-Format* in einem definierten Ablagebereich * = WordprocessingML, Word 2003 XML
Prinzipieller Workflow beim Einsatz von SHORE /5 Prüfen Editieren Dokumentationsbaustein aus Fachkonzept-Neu Analyse Generierung Aktivitäten des Anwenders Aufgaben von SHORE Request- bzw. projektspezifischer Report SHORE Repository mit semantischem Netz Aktivitäten des Anwenders: Prüfen Kontrolle der Generierung durch Sichtung der SHORE Protokolldateien und Ansicht des erzeugten Report-Dokumentes Bei Bedarf: Inhaltliche Korrektur der beteiligten Dokumentationsbausteine und erneutes Triggern des SHORE Update-Prozesses
Prinzipieller Workflow beim Einsatz von SHORE /5 Prüfen Editieren Dokumentationsbaustein aus Fachkonzept-Neu Analyse Generierung Aktivitäten des Anwenders Aufgaben von SHORE Request- bzw. projektspezifischer Report SHORE Repository mit semantischem Netz Aktivitäten des Anwenders: Prüfen Kontrolle der Generierung durch Sichtung der SHORE Protokolldateien und Ansicht des erzeugten Report-Dokumentes Bei Bedarf: Inhaltliche Korrektur der beteiligten Dokumentationsbausteine und erneutes Triggern des SHORE Update-Prozesses
Prinzipieller Workflow beim Einsatz von SHORE /6 Prüfen Editieren Freigeben Dokumentationsbaustein aus Fachkonzept-Neu Analyse Generierung Aktivitäten des Anwenders Aufgaben von SHORE Request- bzw. projektspezifischer Report SHORE Repository mit semantischem Netz Aktivitäten des Anwenders: Freigeben Publikation des generierten Report-Dokumentes an die Leser Bei Bedarf: Revisionssichere Ablage als Entwicklungs- oder Projektergebnis
Vorteile des Einsatzes von SHORE Umfassende Unterstützung der Konzepte von „Fachkonzept-Neu“ Semantische Analyse und Verlinkung von Dokumentationsbausteinen Erzeugen von zielgruppenspezifischen Gesamtdokumenten Nutzung des bisherigen Entwickler-Arbeitsplatzes „as is“ ohne zusätzliche Software-Installation mit dem etablierten Editor für die Dokumentenerstellung (Microsoft Word) mit dem eingespielten Vorgehen zur Dokumentenablage (Subversion-Repository) Vereinheitlichung der Projektdokumentation durch „geprüfte“ Verwendung von Vorlagen und Namenskonventionen Voraussetzung für automatisierte Analyse der Quelldokumente Benefit der automatisierten Erzeugung von zielgruppenspezifischen Reports Erwartete Senkung der Projektaufwände durch Standardisierung und Automatisierung des Dokumentationsprozesses Methodik von Fachkonzept-Neu steht im Vordergrund, „tool follows function“
Zusammenfassung Die Industrialisierung der Software-Entwicklung stellt höchste Ansprüche an die Qualität der Software-Dokumentation Mit „Fachkonzept-Neu“ führt die FIDUCIA die erste Stufe eines umfassenden, Baustein-orientierten Dokumentationskonzeptes ein Ein „Semantic Document Repository“ (SDR) bietet die ideale Unterstützung für dieses Vorhaben Das Werkzeug „SHORE“ (= Semantic Hypertext Object REpository) ist die konkrete Umsetzung eines SDR in der FIDUCIA
Fragen? – Diskussion? Holger Braulik Anwendungsentwicklung └ Architektur └ Fachliche Enterprise Architektur holger.braulik@fiducia.de +49 721 4004 4648 Dr. Andreas Hörmann Anwendungsentwicklung └ Architektur └ Software Engineering andreas.hoermann@fiducia.de +49 721 4004 2057
Ihr IT-Partner Vielen Dank