Der Ansatz eines Product Managers beim Aufbau von Integrationen für SaaS-Software

Software as a Service (SaaS) ist für Kunden viel attraktiver geworden, da SaaS-Unternehmen die Idee annehmen, umfassende Integrationen mit anderen Plattformen anzubieten.

All dies bedeutet, dass offene APIs zu einem wichtigen Faktor für das Wachstum geworden sind, da eine stellare API die Integration in Ihren SaaS vereinfacht. Die einfache Authentifizierung und die Verwendung von REST-Hooks verringern die Barrieren für andere Webanwendungen, die Verbindungen zu Ihrer Webanwendung aufbauen und anbieten. Dies eröffnet die Möglichkeit, Kunden anzuziehen und zu binden.

Mailchimp zum Beispiel hat diese Strategie aggressiv genutzt und war bei der Integration der Konkurrenz wahrscheinlich überlegen. Integrationen zeigen auch die Tiefe und Breite eines SaaS-Produkts auf, die möglicherweise nicht sofort erkennbar sind. Dies gibt dem Benutzer einen zusätzlichen Anreiz, das Produkt zu öffnen und für einen längeren Zeitraum zu verwenden.

Während wir an einer Knowledge-Management-Lösung für individuelle Support- und Vertriebsteams gearbeitet haben, haben wir uns in mehrere Customer-Support-Desks und CRM integriert. Nachfolgend finden Sie einige unserer Erkenntnisse sowie Ansätze und Praktiken, die Produktmanager betrachten können, wenn sie über die Integration ihrer SaaS-Software nachdenken.

Integrationstypen

Grundsätzlich lässt sich Integration in zwei Kategorien einteilen:

Datenintegration: Diese Muster berücksichtigen die Anforderung, Daten zu synchronisieren, die sich in zwei oder mehr Systemen befinden, sodass beide Systeme immer aktuelle und aussagekräftige Daten enthalten. Die Datenintegration ist häufig die einfachste Art der Integration, die implementiert werden muss, erfordert jedoch geeignete Informationsmanagementtechniken, um die Lösung nachhaltig und kosteneffizient zu gestalten. Zu diesen Techniken gehören häufig Aspekte des Master Data Management (MDM), der Data Governance, des Mastering, der Deduplizierung, des Datenflussdesigns und anderer.

Prozessintegration: Die Muster in dieser Kategorie berücksichtigen die Notwendigkeit, dass ein Geschäftsprozess zwei oder mehr Anwendungen zur Erledigung seiner Aufgabe nutzt. Wenn Sie eine Lösung für diese Art der Integration implementieren, muss die auslösende Anwendung über Prozessgrenzen hinweg andere Anwendungen aufrufen. Normalerweise umfassen diese Muster auch Orchestrierung (bei der eine Anwendung der zentrale "Controller" ist) und Choreografie (bei Anwendungen, bei denen mehrere Teilnehmer sind und es keinen zentralen "Controller" gibt). Diese Integrationsarten können oft komplexe Anforderungen hinsichtlich Design, Tests und Ausnahmebehandlung erfordern. Solche Verbundanwendungen stellen in der Regel auch höhere Anforderungen an die zugrunde liegenden Systeme, da sie häufig Transaktionen mit langer Laufzeit und die Möglichkeit unterstützen, Berichte über den Prozessstatus zu erstellen und / oder zu verwalten.

Integrationspraktiken

Wir wissen es vielleicht nicht, aber Integrationen zu bauen ist relativ teuer, weil

  • Sie benötigen Zugriff auf das System, in das Sie integrieren (haben Sie für das Partnerprogramm eines dieser großen Anbieter bereits bezahlt?)
    • Sie müssen die API dieses Systems erlernen
    • Sie müssen die Integration selbst entwerfen, codieren und testen
    • Jedes Mal, wenn Sie oder der andere Anbieter eine Aktualisierung durchführen, müssen Sie Regressionstests durchführen. Da sich die Dinge auf beiden Seiten ändern, müssen Sie möglicherweise einige Änderungen vornehmen und erneut veröffentlichen. Im schlimmsten Fall müssen Sie Ihre Integration neu gestalten.
    • In der Tat können Integrationen die Roadmaps von Produkten oft entgleisen, daher ist es für Produktmanager unerlässlich, sie gut zu planen. Hier sind neun Überlegungen, die ich beim Verarbeiten von Integrationen als sehr nützlich erachten sollte.

      1. Gute Integrationen beginnen beim Kunden

      Integrieren Sie die Integration wie ein neues Feature. Finden Sie heraus, ob Ihre Kunden wirklich etwas brauchen und ob das Bauen tatsächlich die richtigen Kunden anzieht. Unabhängig davon, ob die Integrationsanforderung von Partnern oder Kunden stammt, müssen Sie zunächst mindestens zwei oder drei Kunden finden, die daran interessiert sind. Wenn Sie nicht leicht Kunden finden, die die neue Funktion verwenden, sollten Sie sich fragen, ob es eine gute Idee ist, sie zu erstellen.

      Es hat sich als besonders nützlich erwiesen, mit Kunden zu prüfen, welche anderen Softwaresysteme sie in den ersten Gesprächen verwenden, und sie dann in die Persona-Definition einzufügen. Integrationen, die mehrere aktuelle Kunden begeistern oder Ihnen helfen können, Geschäfte mit mehreren Interessenten abzuschließen, werden natürlich priorisiert.

      2. Priorisieren Sie langfristige Roadmaps vor schnellen Hacks

      Wenn Sie eine Integration erstellen, ist es eine Versuchung, den schnellsten Weg zu finden, um diese aus der Tür zu bekommen. Ich bin zwar der Meinung, dass der schnelle Versand im Allgemeinen die oberste Priorität hat, es ist jedoch wichtig zu wissen, dass zwei Unternehmen an einer Integration beteiligt sind und im Allgemeinen viele Koordinierungsstrafen. Wenn Ihre Integration auf einem System basiert, das bald abgeschrieben wird, ist es in der Regel eine gute Idee, zu warten, bis der Austausch ausgerollt und vollständig getestet ist. Ansonsten werden Sie die Integration aufbauen, die Benutzer dazu bringen, sie zu benutzen, und dann nur noch Probleme lösen, wenn die Integration unvermeidlich bricht.

      Ich habe die Erfahrung gemacht, dass die eigentliche Arbeit nach den ersten Integrationen beginnt. Während anfängliche Integrationen in Roadmaps und Engineering-Workloads berücksichtigt wurden, waren wir nicht realistisch, was nötig ist, um das Erreichte aufrecht zu erhalten. APIs ändern, verbessern sich und erfordern eine Anpassung. Und APIs verschwinden für Stunden, Stunden und für immer. Die technischen Schulden von API-Integrationen können entmutigend werden. Es ist wichtig, diese zu planen.

      3. Pflegen Sie eine gute Datenqualität für Outbound-Integrationen

      Denken Sie bei der Durchführung einer Outbound-Integration (einer Integration, die Daten an ein anderes System sendet) daran, dass sich Ihre Daten jetzt in zwei oder mehr Anwendungen gleichzeitig befinden. Wenn in der Quellanwendung fehlerhafte Daten oder zu viele Daten vorhanden waren, sind in der Zielanwendung jetzt fehlerhafte Daten vorhanden. Dies hat das Potenzial, ein erhebliches Datenhygieneproblem zu schaffen.

      Bei der Integration mit Salesforce haben wir den Fehler gemacht, falsch angenommen zu haben, dass das Importieren und Exportieren von Daten aus Salesforce dasselbe ist wie die Integration in Echtzeit. In der Tat liefert der Export von Dateien in Batches nur eine Momentaufnahme der Informationen zu einem bestimmten Zeitpunkt. Daher ist es wichtig zu verstehen, ob Ihre Integration eine Echtzeit- oder eine Batch-Integration ist. Unabhängig davon, wie oft Daten als Dateien importiert und exportiert werden, werden einige Anwendungen nicht mit Echtzeitänderungen synchronisiert. Wenn Sie diese Realität verstehen, können Sie sicherstellen, dass die Daten genau und konsistent sind.

      Eine Strategie, die für uns gut funktionierte, bestand darin, die Daten halbjährlich zu überprüfen, um sicherzustellen, dass sie so sauber und konsistent wie möglich sind. Bei der SaaS-Integration müssen Informationen von einer Anwendung zur anderen übertragen werden. Je sauberer Ihre Daten sind, desto einfacher wird der gesamte Prozess.

      4. Unterstützen Sie die großen Pläne Ihrer Benutzer

      Integrationen unterstützen und verbessern den Gesamtprozess Ihres Kunden. Sie sind wertvoll, weil sie Ihr Produkt in ein SaaS-Ökosystem einbetten. Durch die Integration Ihres Produkts in andere SaaS-Produkte wird Ihren Kunden mitgeteilt, dass Ihr Unternehmen die gesamte Benutzererfahrung verbessern möchte.

      Besseres Benutzererlebnis unterstützt ein verstärktes Engagement, das ein wichtiges Gegenmittel gegen Abwanderung darstellt. Fügen Sie Ihrem Produkt einen konkreten Mehrwert hinzu, indem Sie Integrationen hinzufügen - Sie bekämpfen die Abwanderung und unterstützen das Wachstum Ihres Unternehmens.

      5. Eine Stiftung aufbauen

      Wenn Sie mit dem Integrieren von Produkten in Ihr Produkt noch nicht vertraut sind, können Sie ohne eine geeignete Architektur mit dem Aufbau beginnen. Wenn Ihre ersten Integrationen einmalig sind, sind sie wahrscheinlich in den Hauptquellcode Ihres Produkts eingebettet. Sie benötigen eine Architekturschicht, die speziell auf Integrationen abzielt und die es Ihnen ermöglicht, Integrationen unabhängig von Ihrem Kernprodukt bereitzustellen. Zumindest bedeutet dies, dass Sie über eine API verfügen, die Ihre Daten und Funktionen verfügbar macht. Sie können Ihre Integration entweder direkt auf dieser API aufbauen oder über eine bestimmte Integrationsschicht verfügen, die zusätzliche Funktionen wie Caching, Zeitplanung von Datentransaktionen, Transformationsfunktionen usw. enthält.

      Wir haben dies auf die harte Tour gelernt, als wir anfangs mit der unerwarteten Hürde der Integration von Slack konfrontiert waren. Wir haben der Versuchung nachgegeben, benutzerdefinierten Code zu erstellen, der die Integration und Kommunikation mit einem Slack-Kanal ermöglicht. Durch die Implementierung dieser Ad-hoc-Lösung wurde unser Wachstumspotenzial eingeschränkt, da bei der Integration mit anderen Plattformen wie Salesforce und Zendesk immer mehr Code erforderlich war. Tatsächlich führte der benutzerdefinierte Code zu einer spröden Verbindung, die bei der Integration mit Salesforce leicht unterbrochen werden konnte. Aus diesem Grund war es nur eine Frage der Zeit, bis wir unseren benutzerdefinierten Code übertraten und alles zugunsten eines besser skalierbaren Systems herausnehmen mussten.

      6. Betrachten Sie Skalierung und Geschwindigkeit

      Bei jedem Datenaustausch zwischen Servern müssen Sie den Umfang der Daten und die Geschwindigkeit ihrer Verarbeitung berücksichtigen. Das Senden von 100 Datensätzen pro Stunde unterscheidet sich stark vom Senden von 10 Millionen. Wenn Ihr Partner über eine API verfügt, die jeweils 50 Ereignisse akzeptiert, und Sie 10 Millionen Ereignisse senden müssen, kann dies zu Problemen führen, es sei denn, diese API kann mit massiver Parallelität umgehen (oder die Daten müssen nicht lange ankommen ). Auf der anderen Seite müssen Sie nicht in der Lage sein, eine Million Ereignisse pro Sekunde von Ihrem Endpunkt zu erfassen, wenn die tatsächliche Last winzig sein wird.

      Eine von uns angenommene Designphilosophie war das Zwischenspeichern von Daten aus externen APIs, die möglicherweise in der Anwendung bereitgestellt werden müssen. Wir haben einen separaten Hintergrundprozess für die automatisierte Datenerfassung über die API erstellt und anschließend Anwendungen auf der resultierenden Datenbank erstellt. Dadurch wurde die Anwendung von Latenz- und Ratenlimitproblemen isoliert.

      7. Dokumentation

      Wenn Ihr Produkt mehrere Integrationen unterstützt, danken Sie sich selbst für die gute Dokumentation. Alle sind sich einig, dass eine gute Dokumentation wichtig ist, aber sie wird oft bis zum Ende der Liste geworfen.

      8. Verfolgen Sie Ihre API-Benutzer, um die Wirksamkeit der Integration zu messen

      Es ist wichtig, dass Sie sich hier nicht in der Korrelationsfalle versetzen. Wir werden wahrscheinlich feststellen, dass Benutzer mit Integrationen bessere Kunden sind. Dies bedeutet jedoch nicht, dass wir dasselbe Ergebnis erzielen, wenn wir Benutzer dazu bringen, Integrationen zu verbinden. Sie könnten jedoch nach ersten Anzeichen für ein Engagement suchen, z. B. mehr Nutzung in den ersten zwei Wochen als bei der üblichen Anmeldung, und versuchen, diese Möglichkeit zu nutzen, um den Wert Ihres Services zu steigern.

      Um die Effektivität Ihrer Integrationsstrategie beurteilen zu können, müssen Sie nur ein paar Dinge über Ihre Benutzer wissen:

      • Wer hat aufgerüstet / konvertiert
        • Wer hat herabgestuft
        • Wer hat eine Integration genutzt
        • In unserem Fall haben wir „integrierte Benutzer“ und „nicht integrierte Benutzer“ mit der In-App-Aktivität und wiederum mit der Freemium-Umwandlung in Verbindung gebracht. Diese Analyse ergab, dass der wahrscheinlichste Kunde unserer Versuche Benutzer waren, die frühzeitig eine Integration ermöglichten. Dies erwies sich als äußerst verlässliches und umsetzbares Kaufsignal.

          9. Integrationsoptionen

          Es gibt eine Handvoll Optionen, die Softwarefirmen nutzen können, wenn es um Gebäudeintegration geht. Historisch waren die drei Hauptoptionen:

          1. Sie können eine offene API für Ihr Produkt entwickeln, damit Ihre Kunden selbst Integrationen erstellen können. Einfach ausgedrückt: Ihre API reicht nicht aus. Das Hauptproblem bei diesen Optionen ist, dass Integrationen nur für die Entwickler Ihrer Kunden zugänglich sind und Sie höchstwahrscheinlich unter einer geringen Benutzerakzeptanz leiden.
            1. Senden Sie Ihre Kunden an Citizen Integrator-Tools (wie Zapier und IFTT), um deren Datenmapping-Anforderungen zu verwalten. Diese Tools scheinen zwar eine attraktive Option zu sein, zwingen Sie jedoch dazu, Ihre Kunden aus Ihrem Produkt herauszuschicken, was Ihre Benutzererfahrung einschränkt. Außerdem müssen Ihre Kunden einen zusätzlichen Preis zahlen, um Ihr Produkt in ihr App-Ökosystem zu integrieren.
            2. Erstellen Sie native Integrationen, damit sich die Integration als eine natürliche Erweiterung des Produkts anfühlt. Ich persönlich bevorzuge diesen Ansatz, da er Ihnen dabei hilft, die Fähigkeiten der Partnerplattform wirklich auszunutzen. Je nach Integrationsstufe oder nach der Gewissheit, ob Sie damit Dividenden abwerfen, möchten Sie möglicherweise einen dieser Ansätze nutzen, um Ihren Ansatz zu testen Integration.
            3. Fazit

              Obwohl Cloud Computing die Bereitstellung von Geschäftsanwendungen einfacher und kostengünstiger gestaltet hat, besteht die Notwendigkeit, Prozessabläufe zu vereinfachen, die von mehreren Anbietern über mehrere Plattformen hinweg erfolgen. Durch das Angebot von vorgefertigten Integrationen können Softwareunternehmen wettbewerbsfähig bleiben und ein tieferes Verständnis der Kundenbedürfnisse haben. Die Gebäudeintegration ist jedoch sehr schwierig. Die schiere Anzahl von Anwendungen, Plattformen und Services, die Sie möglicherweise integrieren müssen, wächst in einem unglaublich hohen Tempo, und Ihre Entwickler können nur schwer damit Schritt halten. Daher ist es wichtig, die richtigen Integrationsoptionen für Ihre Software zu wählen.