{"id":1820,"date":"2014-12-17T03:41:01","date_gmt":"2014-12-17T01:41:01","guid":{"rendered":"http:\/\/hasselba.ch\/blog\/?p=1820"},"modified":"2014-12-17T03:43:24","modified_gmt":"2014-12-17T01:43:24","slug":"domino-migration-der-fruehe-vogel-faengt-den-wurm","status":"publish","type":"post","link":"https:\/\/hasselba.ch\/blog\/?p=1820","title":{"rendered":"Domino-Migration: Der fr\u00fche Vogel f\u00e4ngt den Wurm"},"content":{"rendered":"<p>Wenn die Entscheidung erst einmal gefallen ist, dass mittel- oder langfristig die Domino-Infrastruktur aus dem Unternehmen verschwinden wird, l\u00e4sst die Investitionsbereitschaft der einzelnen Fachabteilungen in Domino-basierte Applikationen verst\u00e4ndlicher Weise sp\u00fcrbar nach. Aber auch aufkommende Ger\u00fcchte oder durchgef\u00fchrte Studien (auch wenn diese zu einem gegenteiligen Ergebnis kommen) k\u00f6nnen den Willen der IT- oder Gesch\u00e4ftsleitung nach einem Systemwechsel zu entsprechender Aussage verhelfen, und durch die aufkommende Ungewissheit zu dem gleichen Ergebniss f\u00fchren.<\/p>\n<p>Um dennoch zukunftssichere Applikationen zu entwickeln, bieten sich verschiedene Wege an, die sich (in Abh\u00e4ngigkeit zu der bestehenden und der zuk\u00fcnftigen Infrastruktur sowie der gew\u00fcnschten strategischen Ausrichtung) jedoch stark unterscheiden k\u00f6nnen. F\u00fcr jedes Unternehmen sind bestimmte Faktoren unterschiedlich zu bewerten, daher gibt es keinen &#8222;K\u00f6nigsweg&#8220;: Der zu beschreitende Weg ist immer individuell, und es m\u00fcssen h\u00f6chstwahrscheinlich ein paar Kompromisse eingegangen werden, um einen \u00dcbergang so ger\u00e4uschlos wie nur m\u00f6glich \u00fcber die B\u00fchne zu bringen.<\/p>\n<p>Der mit Abstand wichtigste Punkt ist, sich m\u00f6glichst fr\u00fch vom liebgewonnenen Domino zu verabschieden, ohne eine falsch angebrachte Sentimentalit\u00e4t. Weitere wichtige Punkte, die es meiner Erfahrung zu beleuchten gilt, sind<\/p>\n<ol>\n<li>die gew\u00fcnschte Form der Migration<\/li>\n<li>m\u00f6gliche Ziel-Plattformen<\/li>\n<li>zunk\u00fcnftige Datenhaltung<\/li>\n<li>die Authentifizierung der Anwender<\/li>\n<\/ol>\n<h2>Formen der Migration<\/h2>\n<p>Ist eine harte Migration gew\u00fcnscht, sind praktisch alle Entscheidungen bereits getroffen, und eine weiteres Auseinandersetzen mit anderen Szenarien er\u00fcbrigt sich: Sowohl Zielplatform als auch (Wunsch-)Termin stehen fest. Das Budget spielt dann wahrscheinlich auch keine Rolle, und ich w\u00fcnsche viel Gl\u00fcck und gutes gelingen.<\/p>\n<p>W\u00e4hlt man hingegen eine weiche oder integrative Migrationen, erh\u00f6ht sich der n\u00f6tige Spielraum deutlich, und die Chance einer erfolgreichen Umstellung steigt, denn der Zeitdruck und das damit einhergebrachte Risiko eines Fehlschlages wird durch die Politik der kleinen (aber feinen) Schritte drastisch verringert.<\/p>\n<h2>M\u00f6gliche Zielplattformen<\/h2>\n<p>In einem Microsoft-lastigen Unternehmen bietet sich nat\u00fcrlich der IIS als Webserver an, um Applikationen darauf zu hosten. Der IIS unterst\u00fczt neben den &#8222;Microsoft-eigenen&#8220; Sprachen wie .NET auch weitere wie z.B. Java und PHP. Selbst Node.js wird unterst\u00fczt.<\/p>\n<p>Hier w\u00e4re also ein Ansatzpunkt, neue Applikationen direkt auf dem IIS zu betreiben. Falls momentan noch kein IIS im Einsatz ist, bietet es sich an, eine PHP-Applikationen auf dem Domino zu hosten, und diese dann sp\u00e4ter auf den IIS zu verschieben. Als Alternative kann auch ein Apache HTTP Server oder ein Tomcat dienen, wenn IT diesen betreiben kann (und will). Gleiches gilt nat\u00fcrlich auch f\u00fcr Node.js. Letztlich muss dieser Punkt mit der Administration abgekl\u00e4rt werden.<\/p>\n<p>Zieht man Client-basierte Applikationen (Stichwort &#8222;Angular JS&#8220;) in Betracht, kann die Applikation sogar in die Cloud verlagert werden, denn die Daten bleiben im Unternehmen: Zwar l\u00e4dt der Browser die statischen Ressourcen aus der Cloud, doch werden die Daten vom Browser nur per REST-Schnittstelle im Unternehmensnetzwerk hin- und hergeschoben. Dadurch entfiele ein entsprechender administrativer Aufwand, die Applikation k\u00f6nnte auch von einem externen Anbieter problemlos betrieben werden (z.B. Bluemix).<\/p>\n<h2>Zuk\u00fcnftige Datenhaltung<\/h2>\n<p>Die Datenhaltung stellt wohl in bestimmten Stitautionen die gr\u00f6\u00dfte Herausforderung dar, insbesondere wenn auch alte Daten migriert werden m\u00fcssen. Gerade das Thema &#8222;Rich Text-Felder&#8220; kann Probleme bereiten, denn je nach Verwendung wird es schwierig, bestehende Daten\/Funktionalit\u00e4ten 1:1 zu \u00fcbernehmen. Auch einige eher selten genutzte Features auf Feldebene k\u00f6nnen eventuell nicht ohne erheblichen Aufwand abgebildet werden, doch muss man hier derweilen auch hinterfragen.<\/p>\n<p>In den meisten F\u00e4llen sollte eine Umstellung allerdings Reibungslos m\u00f6glich sein. Moderene Dokumentenbasierte Datenbanksysteme bieten einen ebenb\u00fcrtigen Funktionsumfang, meist sogar noch deutlich mehr. Dennoch sollte meiner Erfahrung nach dieser Part nicht untersch\u00e4tzt werden.<\/p>\n<h2>Authentifizierung<\/h2>\n<p>Eine wichtige Rolle stellt die Authentifizierung im Unternehmen dar: Wurde dies bisher vom Domino Server gehandelt, f\u00e4llt diese Option zuk\u00fcnftig weg. Aber auch hierf\u00fcr gibt es unterschiedliche Ans\u00e4tze, je nachdem, woher die Applikation Ihre Daten erh\u00e4lt und wohin diese Daten abgelegt werden.<\/p>\n<p>Wird der Domino Server nur zur Authenifizierung und nur einige Daten \u00fcber den User ben\u00f6tigt, existiert mit LDAP eine relativ simple L\u00f6sung des Problems, die auch einfach migriert werden kann.<\/p>\n<p>Sollen existierende Datenbanken angezapft werden, kann dieser Zugriff\u00a0im Usercontext durch eine Proxy-Funktionalit\u00e4t geschehen (durch das Abgreifen\/Durchschleifen des Domino Cookies). Eine sp\u00e4tere Umstellung kann dann f\u00fcr die Endapplikation transparent erfolgen, in dem letztlich der Code im Backend ge\u00e4ndert wird, ohne das es hier zu Einschr\u00e4kungen kommt.<\/p>\n<h2>Nutzer der Applikation<\/h2>\n<p>Ach, ein Thema habe ich bewusst aussen vor gelassen, dass aber ebenfalls eine gro\u00dfe Rolle spielt: Die Nutzer der Applikation. Man darf Sie nie vergessen, und man muss versuchen, auf sie einzugehen, aber leider ist das die gro\u00dfe Unbekannte, die praktisch unberechenbar ist: Es gibt Mitarbeiter, die sehr interessiert sind, und bei der Umstellung mitarbeiten. Gerade wenn die M\u00f6glichkeit daf\u00fcr genutzt wird, das eine odere andere hilfreiche Zusatzfeature zu implementieren, und so den Mitarbeitern eine entsprechende Motivation zu bieten, wird verl\u00e4uft eine Zusammenarbeit meist harmonisch und ertragreich. Letztlich sollte die Chance auf ein Redesign einer alten Applikation so gut wie m\u00f6glich genutzt werden.<\/p>\n<p>Aber man wird eventuell auch auf eine generelle Ablehnung sto\u00dfen, denn es war f\u00fcr die Mitarbeiter bisher m\u00f6glich, viele Probleme im Arbeitsalltag auf &#8222;das Sch..ss Notes&#8220; zu schieben. Diese Option entf\u00e4llt zuk\u00fcnftig &#8211; was manchem Mitarbeiter in Erkl\u00e4rungsnot bringen k\u00f6nnte, und daher wird gemauert ohne Ende. Auch k\u00f6nnte es vorkommen, das vorhandene Features, die noch nie funktioniert haben, \u00fcber Nacht zu Keyfeatures mutieren und deren &#8222;mangelnde Funktionalit\u00e4t&#8220; die ganze Migration ad absurdum f\u00fchren w\u00fcrden.<\/p>\n<p>Da der &#8222;menschliche Faktor&#8220; unberechenbar und damit unplanbar ist, kann (und sollte) er in der anf\u00e4nglichen Planun nicht n\u00e4her beachtet werden.<\/p>\n<h2>Fazit<\/h2>\n<p>Alles in allem l\u00f6sbare Punkte, auf die ich im Einzelnen in den n\u00e4chsten Tagen n\u00e4her eingehen m\u00f6chte. Es stehen noch Themen auf der Agenda, wie beispielsweise die Suche nach relevanten Applikationen, die migriert werden m\u00fcssen. Und nat\u00fcrlich sollte die eine oder andere Anekdote, die ich in den letzten Jahren gesammelt habe, nicht fehlen.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Wenn die Entscheidung erst einmal gefallen ist, dass mittel- oder langfristig die Domino-Infrastruktur aus dem Unternehmen verschwinden wird, l\u00e4sst die Investitionsbereitschaft der einzelnen Fachabteilungen in Domino-basierte Applikationen verst\u00e4ndlicher Weise sp\u00fcrbar nach. Aber auch aufkommende Ger\u00fcchte oder durchgef\u00fchrte Studien (auch wenn &hellip; <a href=\"https:\/\/hasselba.ch\/blog\/?p=1820\">Weiterlesen <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[59],"tags":[],"class_list":["post-1820","post","type-post","status-publish","format-standard","hentry","category-migration"],"_links":{"self":[{"href":"https:\/\/hasselba.ch\/blog\/index.php?rest_route=\/wp\/v2\/posts\/1820","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hasselba.ch\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hasselba.ch\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hasselba.ch\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hasselba.ch\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1820"}],"version-history":[{"count":11,"href":"https:\/\/hasselba.ch\/blog\/index.php?rest_route=\/wp\/v2\/posts\/1820\/revisions"}],"predecessor-version":[{"id":1842,"href":"https:\/\/hasselba.ch\/blog\/index.php?rest_route=\/wp\/v2\/posts\/1820\/revisions\/1842"}],"wp:attachment":[{"href":"https:\/\/hasselba.ch\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1820"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hasselba.ch\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1820"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hasselba.ch\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1820"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}