Business-Prozesse direkt in Microsoft Teams integrieren
Vor ca. 2 Wochen haben wir mit dieser Reihe gestartet und beschreiben, wie es möglich ist Microsoft Teams über eine reine Kommunikationsplattform hinaus zu verwenden. Dies geschieht durch die Entwicklung eigener Microsoft Teams Apps, die somit perfekt auf die Business-Prozesse Ihres Unternehmens zugeschnitten sind.
In diesem Teil der Reihe möchten wir auf eine spezielle Art von Microsoft Teams Apps eingehen und beschreiben wie und vor allem warum man eine sogenannte Microsoft Teams Tab-App entwickeln sollte und was hierbei zu beachten ist.
Microsoft Teams Tab-Apps, auch Registerkartenanwendungen genannt, sind vor allem deshalb relevant, da es möglich ist, eine komplette Webapplikation in Teams zu integrieren und so den Nutzer*innen ein gewohntes Umfeld zu bieten. Somit können Business-Prozesse direkt in Teams integriert und die Nutzer*innen einfach an diese herangeführt werden.
Microsoft Teams Tab-Apps
Die App-Art "Microsoft Teams Tab" stellt eine von insgesamt 3 Teams App Hauptarten dar. Sie ist die umfangreichste und auch am größten losgelöste App-Art in Microsoft Teams. Sie kann eigenständig in Microsoft Teams agieren, in dem Sie als separate App mit eigenen Tabs in Teams integriert wird. Hierbei muss kein Bezug auf ein Team oder einen Chat bestehen.
Microsoft hat die Tab-Apps nochmals in 2 Unterkategorien unterschieden. Diese teilen sich wie folgt auf.
Persönlich
Persönliche Tabs sind, ebenso wie persönlich zugeordnete Bots, Teil einer persönlichen Anwendung und sind auf einen einzelnen Nutzer beschränkt. Der gesamte Kontext dieser Applikation bezieht sich im konkreten Fall auf den eingeloggten Nutzer. Diese Tab-Apps können an die linke Seite von Microsoft Teams angeheftet werden und von dort aus aufgerufen werden.
Über persönliche Apps kann Nutzer*innen Zugriff auf Prozesse gewährt werden, die nicht in Zusammenhang mit einem konkreten Team stehen. Hierbei sind Applikationen wie Zeiterfassung, Erfassung der Krankentage oder ähnliche Applikationen denkbar.
Persönlich heißt hierbei nicht, dass diese Daten auf den eigenen Rechner beschränkt sind. Im Gegenteil, Persönliche Apps werden meist an andere Systeme angebunden, welche die Daten der App entgegennehmen und entsprechend anderen Nutzern zur Verfügung stellen.
Gruppen oder Kanal
Gruppen und Kanal Tab-Apps sind im Vergleich zu persönlichen Tab-Apps auf einen Kontext im Team oder eines Kanals zugeschnitten. Diese liefern Inhalte an Kanäle und Gruppenchats, was die Schaffung von Kooperationsräumen in speziell für den Anwendungsfall zugeschnittenen Umgebungen ermöglicht.
Ein gutes Beispiel hierfür ist z.B. die Planner-App von Microsoft, die als Gruppen-App in ein Team integriert werden kann und so gemeinsam, die Aufgaben des Teams verwaltet werden können.
Architektur
Da eine Microsoft Teams App und vor allem Tab-Apps nicht ohne externe Informationen und Daten auskommen, muss eine Tab-App an einen entsprechenden Datenservice angebunden werden. Hierfür gibt es verschiedene Möglichkeiten. Je nach Komplexität der Business Prozesse und der Individualität der Applikation kann die Anbindung an bestehende Microsoft Dienste wie z.B. die Graph API reichen, um entsprechende Daten abzurufen und darzustellen. Falls es aber komplizierter und individueller wird, muss die Applikation meist an ein entsprechend für den Anwendungsfall eigenentwickeltes Backend angebunden werden.
Bei den meisten Applikationen entwickelt sich eine Dreiecks Beziehung zwischen der Teams-Applikation, einem individuellen Backend und bestehenden Microsoft Diensten. Beispiele wären hierfür z.B. die Authentifizierung der App über ein Azure Active Directory abzuwickeln und diese Authentifizierung auch für Anfragen an das entsprechende Backend aus der Teams-Applikation zu verwenden. Eine High Level Architektur hierfür ist im folgenden Bild dargestellt.
Entwicklungsmöglichkeiten
Um Microsoft Teams Tab-Apps zu entwickeln, setzt Microsoft im Wesentlichen auf zwei Ökosysteme. Das erste Ökosysteme kommt vollständig aus dem Hause Microsoft und unterstütz die Entwicklung von Teams-Apps in Visual Studio mit Hilfe von sogenannten Blazor Applikationen. Hierbei wird vollständig auf das von Microsoft entwickelte Framework Blazor gesetzt und somit ist man in einem Ökosystem von Microsoft.
Als zweite Variante ist es möglich, diese Applikationen mit Hilfe von Visual Studio Code (auch Microsoft) und dem bereits weit verbreiteten Framework React zu entwickeln. Hierbei setzt man auf eine bereits langjährig bestehende Lösung in der Frontendwelt.
Möglichkeiten und Chancen
Unserer Meinung nach bringen vor allem Microsoft Teams Tab-Apps einen großen Mehrwert für die Nutzer*innen und Unternehmen. Mit Tab-Apps ist es einfach, bestehende Applikationen in Microsoft Teams zu integrieren und so einen Zugangspunkt für Mitarbeiter*innen zu schaffen, aus dem Sie alle Ihre Prozesse bedienen und steuern können.
Durch die Nutzung der bestehenden Authentifizierung von Microsoft Teams und der Möglichkeit die Applikationen so über einen SSO zu schützen, entfällt das Erinnern an eine Vielzahl von verschiedenen Nutzernamen und Passwörtern. Einmal eingeloggt und Zugriff auf alle Applikationen. Das ist nicht nur Wunschdenken, sondern mit Microsoft Teams Tab-Apps möglich.
Dadurch kann die Komplexität gesenkt, die Effizienz von Mitarbeitern gesteigert und somit die Kosten für einzelne Prozesse reduziert werden.
Unser Fazit
Nach unseren bisherigen Erfahrungen bringen die Teams-Plattform und die damit verbundenen Teams Tab-Apps ein enormes Potential mit sich. Alle Prozesse eines Unternehmens in nur einem Tool abbilden zu können, könnte die Arbeitswelt, wie wir sie heute kennen, komplett verändern.
Leider ist die Dokumentation und vor allem die Referenzen zu Microsoft Teams Apps momentan noch sehr dürftig und auch die Unterstützung des hauseigenen Frameworks von Blazor im Gegensatz zu React noch etwas holprig. Wenn Microsoft hier nachbessert, ist die Microsoft Teams App Entwicklung aber ein absolutes Muss für jedes Unternehmen!