Dieser Leitfaden vereinfacht den Prozess der Erstellung eines benutzerdefinierten CRM und deckt alle Phasen von der Idee bis zur Einführung ab. Er bietet praktische Einblicke, bewährte Verfahren und häufige Fehler, um Ihnen bei der Erstellung eines CRM zu helfen, das zu Ihrem Unternehmen passt. Er ist sowohl für technische Neulinge als auch für erfahrene Entwickler nützlich.
Warum sollten wir AppMaster für unser CRM verwenden und nicht andere Produkte?
- Möglichkeit der vollständigen Anpassung
- Keine Skalierungsbeschränkungen
- Erstellung von allem an einem Ort (Datenbank, Backend, Web- und mobile Anwendungen)
- Möglichkeit der Integration mit beliebigen externen Diensten
Erstellen Sie Ihr individuelles CRM
Entwickeln Sie ein benutzerdefiniertes Customer Relationship Management (CRM)-System, indem Sie die unten empfohlenen Schritte befolgen.
Schritt 1: Entwurf des Datenmodells
Das Verfahren beginnt traditionell mit der Erstellung von Datenmodellen, die ein Verständnis der Entitäten, die im Customer Relationship Management (CRM)-System verwendet werden sollen, ihrer jeweiligen Attribute und ihrer Beziehungen untereinander voraussetzen.
Diese Modelle, die auch als Entitäten bezeichnet werden, können zahlreiche Möglichkeiten wie Unternehmen, Kontakte, Leads und Aufgaben umfassen. Jedes Modell wird durch einen eindeutigen Satz von Feldern definiert. Ein Unternehmensmodell kann beispielsweise Felder wie den Namen des Unternehmens, die Geschäftsart und den Standort umfassen.
Jedes Feld ist durch einen bestimmten Typ gekennzeichnet, der die Art der Daten bestimmt, die es enthalten kann. So eignet sich beispielsweise der Datentyp "String" für ein Titelfeld, das eine beliebige Zeichenfolge enthalten kann. Ein Beschreibungstyp "Text" ermöglicht das Einfügen von umfangreichem Text, der möglicherweise in Absätze unterteilt ist. Ein Typ "Integer" könnte die Anzahl der Mitarbeiter darstellen, während ein Typ "DateTime" Datums- und Zeitangaben für bestimmte Ereignisse enthalten könnte.
Modelle können miteinander verknüpft werden, was die Auswahl des Beziehungstyps erfordert. So können beispielsweise Mitarbeiter mit bestimmten Aufgaben verknüpft werden, was eine vorausschauende Betrachtung der Aufgabenorganisation erfordert.
Es kann sein, dass jede Aufgabe nur einem bestimmten Ausführenden zugewiesen ist, während jeder Mitarbeiter mehrere gleichzeitige Aufgaben haben kann. In diesem Szenario würde eine Eins-zu-Viele-Beziehung zwischen ihnen hergestellt werden. Andere mögliche Beziehungstypen sind one-to-one und many-to-many.
Vertiefendes Wissen und Hilfe bei der Verwendung des Datenbankeditors finden Sie in der Appmaster University Course Library.
Schritt 2: Einrichten von endpoints für Datenmodelle
Der folgende Schritt besteht darin, die Funktionalität für diese Modelle einzurichten. Es ist eine vernünftige Annahme, dass sich die Datenbank an einem bestimmten Ort auf dem Server befinden sollte, wobei die Benutzer die Möglichkeit haben, sich von jedem beliebigen Ort aus über ihren PC oder ihr Mobiltelefon zu verbinden. Um den Austausch von Anfragen und die Datenübertragung zu erleichtern, werden Routen eingesetzt - das sind Netzadressen, an die Anfragen gesendet werden können.
Außerdem gibt es endpoints, die Zugangspunkte zu einer Route über eine bestimmte Methode sind. Auf eine Aufgabenroute kann beispielsweise durch Eingabe der Aufgabenkennung zugegriffen werden, allerdings unter Verwendung verschiedener Methoden (also unterschiedlicher endpoints) - Delete (zum Löschen der Aufgabe), Get (zum Abrufen von Informationen über die Aufgabe), Patch (um Änderungen an der Aufgabe vorzunehmen, z. B. um ihren Status zu ändern).
Für jedes der Datenmodelle kann die Basis endpoints automatisch beim Start erstellt werden. Diese endpoints können sofort verwendet werden, sie können angepasst werden (z. B. durch Änderung der Zugriffsrechte, damit nur bestimmte Benutzerrollen neue Aufgaben erstellen können), oder es können benutzerdefinierte endpoints zusammen mit der zugehörigen Verarbeitungslogik formuliert werden. Eine ausführliche Anleitung zur Arbeit mit Endpunkten finden Sie unter dem Link.
Schritt 3: Сreate Benutzeroberfläche
Der nächste Schritt besteht darin, eine Schnittstelle zu erstellen, mit der der Benutzer interagieren kann. Da es endpoints gibt, könnte man sie natürlich sofort nutzen, indem man die erforderlichen Anfragen sendet. Der direkte Umgang mit ihnen im Befehlszeilenmodus ist jedoch äußerst umständlich.
Es ist logisch, eine Webanwendung für die Bedienung zu entwickeln. AppMaster ermöglicht es Ihnen, die Zügel bei der Gestaltung der Benutzeroberfläche in die Hand zu nehmen und wesentliche Elemente wie Schaltflächen, Beschriftungen und Tabellen zu integrieren, wobei Sie auch deren Ästhetik und Platzierung anpassen können.
Am einfachsten ist es, den Prozess mit Komponenten zu beginnen, die die Befüllung der Datenbank mit relevanten Daten erleichtern. Zum Beispiel die Eingabe einer Liste von Firmen, Mitarbeitern und deren Kontaktinformationen.
Denken Sie daran, dass die bloße Einführung eines Elements noch nicht ausreicht, um es sofort nutzbar zu machen. Jedes Element muss mit einer spezifischen operativen Logik versehen werden, die seine genaue Funktion und die Art und Weise seiner Ausführung festlegt. Um zum Beispiel einen Datensatz in der Datenbank zu registrieren, müssen entsprechende Eingabekomponenten hinzugefügt werden (die mit den Feldtypen des Datenmodells übereinstimmen).
Für die Eingabe von Kontaktdaten könnten dies z.B. Felder für Vorname, Nachname, Telefonnummer, E-Mail, Geburtsdatum, berufliche Position usw. sein. Eine Schaltfläche, die die ausgefüllten Informationen zusammenstellt und an die Datenbank überträgt, ist ebenfalls erforderlich. Diese Schaltfläche muss mit einer operativen Logik (Geschäftsprozess oder Workflow) konfiguriert werden, die die notwendigen Schritte für eine optimale Funktion beschreibt.
Zum Beispiel:
- Wechseln des Erscheinungsbildes in den Ladezustand
- Konsistentes Auslesen der eingegebenen Daten aus jedem Feld.
- Bilden Sie ein Kontaktmodell und tragen Sie die im vorherigen Schritt gesammelten Daten ein.
- Senden Sie das fertige Modell mit einer POST-Anfrage an die endpoint, um einen neuen Kontakt zu erstellen.
- Entfernen Sie den Download-Status von der Schaltfläche
- Verarbeiten Sie das Ergebnis der Anfrage und ermitteln Sie den Status der Ausführung.
- Prüfen Sie, ob die Anfrage erfolgreich war oder nicht.
- Im Falle von Anfragefehlern eine entsprechende Benachrichtigung mit Informationen über den Fehler anzeigen
- Im Falle erfolgreicher Aktionen, aktualisieren Sie die Daten in der Übersichtstabelle der Kontakte.
Zusätzliche Ressourcen:
- Beschreibung, wie man Daten zur Datenbank hinzufügt
- Wie man Datenbankdaten in einer Tabelle anzeigt
- Wie kann man Daten ändern oder löschen
Schritt 4: Geschäftsprozesse erstellen
Dann können Sie beginnen, komplexere Geschäftsprozesse zu erstellen, die es Ihnen ermöglichen, bestimmte Daten zu erstellen oder zu empfangen und zusätzliche Arbeitslogik hinzuzufügen. Ein einfaches Beispiel: Wenn Sie eine Aufgabe erstellen, geben Sie automatisch ihren Status an, prüfen Sie die Frist für die Erledigung und berechnen Sie die genaue Zeit, zu der sie erledigt werden soll.
Gleichzeitig kann die Logik der Arbeit komplex sein und je nach Algorithmus verschiedene Handlungsoptionen beinhalten. Wenn beispielsweise eine Aufgabe für einen bestimmten Benutzer erstellt wird, ist zu prüfen, ob überhaupt ein Recht auf eine solche Aktion besteht. Außerdem ist die Anzahl der anderen Aufgaben zu zählen, die diesem Benutzer bereits zugewiesen sind, und wenn es mehr als 10 aktive Aufgaben gibt, ist die Aufgabe automatisch dem am wenigsten beschäftigten Mitarbeiter in einer ähnlichen Position in einem Unternehmen zuzuweisen. Leitfaden zur Erstellung von Geschäftsprozessen.
Schritt 5: Verknüpfung und Integration mit externen Diensten
Es ist sehr wahrscheinlich, dass das Customer Relationship Management (CRM) nicht isoliert arbeiten kann, sondern eine Interaktion mit externen Diensten oder Hilfsfunktionalitäten erfordert. Die bequemste Methode, diese Elemente einzubinden, ist die Nutzung eines Marktplatzes von Modulen.
Nehmen wir zum Beispiel das Szenario einer Aufgabenerstellung, die den Versand einer E-Mail mit relevanten Informationen an den Benutzer erfordert. Dies könnte mit dem benutzerdefinierten Simple Mail Transfer Protocol (SMTP)-Modul effektiv durchgeführt werden.
Alternativ könnte eine Nachricht über den Telegram-Messenger unter Verwendung des Telegram-Moduls weitergeleitet werden. Man kann auch die Arbeit mit Bildern rationalisieren, indem man ihr Format und ihre Größe mit dem Bildmodul automatisch ändert. Jedes Modul ist in der Lage, seine eigenen Datenmodelle, Geschäftsprozesse und Blöcke zu erweitern, um deren Nutzung zu erleichtern.
Unter dem folgenden Link finden Sie eine Demonstration der Modulverwendung: Beispiel für die Modulverwendung
Es sei darauf hingewiesen, dass das Fehlen eines speziellen Moduls für einen bestimmten externen Dienst nicht ausschließt, dass dieser genutzt werden kann. Die Erstellung einer Integration mit einem beliebigen externen Dienst ist durch die Verwendung von Abschnitten für externe API-Anforderungen oder Blöcken für HTTP-Anforderungen möglich.
Nachstehend finden Sie Links, die den Prozess der Integration mit externen Diensten und die Verwendung der externen API-Anfrage veranschaulichen:
Wie viel wird es mich kosten, ein eigenes CRM auf AppMaster zu erstellen?
Für eine umfassende CRM-Lösung ist in der Regel ein Business-Abonnement erforderlich, während eine einfachere Version für ein Startup ausreichen kann.
Wenn Sie sich dafür entscheiden, die Entwicklung selbst in die Hand zu nehmen, können Sie dies kostenlos tun. Alternativ haben Sie die Möglichkeit, Professional Services in Anspruch zu nehmen.
Wie viel Zeit benötige ich, um ein CRM mit AppMaster zu entwickeln?
Die Antwort hängt von der Komplexität des CRM ab. Welche Entitäten gibt es, wie viele sind es, wie sind sie miteinander verbunden und welche Art von Arbeitslogik ist erforderlich. Im Allgemeinen kann etwas Einfaches auf MVP-Niveau in 20-30 Stunden erledigt werden. Eine grundlegende Arbeitsversion - etwa 200 Stunden. Für komplexe Projekte kann natürlich viel mehr Zeit benötigt werden.
Welche Dienste sind in der Lage, sich mit dem von AppMaster erstellten CRM zu verbinden und zu integrieren?
- Telegramm
- Slack
- Stripe
- Anmeldung bei Apple
- Zoom
- Anmeldung bei Google
- Krypto
- LinkedIn
- Facebook
- Google-Blätter
- Youtube Spieler
- Strichcode-Scanner
- Google Übersetzen
- Diskord
- Google OAuth 2.0
- Offene KI
- Mail Chimp
- und viele andere
Kann ich meine CRM-Anwendung skalieren? AppMaster
Es sei gleich zu Beginn darauf hingewiesen, dass die Anwendung selbst in der einfachsten Version in Bezug auf die Anzahl der Benutzer nicht begrenzt ist. Dennoch kann es natürlich sein, dass Sie bei Ihren anfänglichen Abonnementoptionen auf Leistungs- oder Datenbankgrößenbeschränkungen stoßen. Dieses Problem wird gelöst, indem Sie Ihre eigenen Server verwenden, anstatt sie in der AppMaster Cloud zu hosten.
Beim Business-Abo erhalten Sie ein Container-Image mit der Anwendung oder ihren Binärdateien, beim Enterprise-Abo sogar den vollständigen Quellcode der Anwendung und die Möglichkeit, verteilte Server mit einem Load Balancer zu verwenden, wodurch Fragen zu Skalierungsbeschränkungen vollständig ausgeräumt werden.
Kann ich jemanden mit der Erstellung meines CRM beauftragen?
Für eine garantierte Qualitätsleistung können Sie die Dienste von Professional Services in Anspruch nehmen. Wenn Sie eine kostengünstigere Option benötigen, können Sie die Dienste von Freiberuflern in Anspruch nehmen oder sich an die zertifizierten Partner von AppMaster wenden.
Wie AppMaster Ihr CRM technisch aufbaut
AppMaster AppMaster ist ein leistungsfähiges Tool, das den Prozess der CRM-Erstellung vereinfacht und beschleunigt, indem es die technischen Aspekte auf rationale Weise behandelt. Der Prozess kann in die folgenden Phasen unterteilt werden:
- Spezifikation: Der Benutzer erstellt CRM-Spezifikationen, indem er Datenschemata, Geschäftsprozessschemata, endpoints, Variablen, UI-Elemente und Auslöser in AppMaster Studio eingibt. Diese Eingaben dienen als Blaupause für die zukünftige CRM-Anwendung und werden als Dokumentation gespeichert.
- Code-Generierung: Nach einem Klick auf die Schaltfläche "Veröffentlichen" verarbeitet und standardisiert AppMaster die bereitgestellten Spezifikationen. Anschließend wird der Quellcode für die CRM-Anwendung in verschiedenen Sprachen generiert, z. B. Go für das Backend, Vue 3 für das Frontend, Swift für iOS-Apps und Kotlin für Android-Apps. AppMaster nutzt die Parallelverarbeitung und die außergewöhnliche Leistung, um den Code mit einer beeindruckenden Geschwindigkeit von über 22.000 Zeilen pro Sekunde zu generieren.
- Kompilieren: Sobald die Codegenerierung abgeschlossen ist, kompiliert AppMaster die CRM-Anwendung, wobei der Schwerpunkt auf der Backend-Kompilierung und der Bündelung von Webanwendungen liegt. Dieser Schritt dauert nur ein paar Sekunden länger.
- Testen: Vor der Bereitstellung führt AppMaster eine gründliche Testphase durch, um die Funktionalität der CRM-Anwendung sicherzustellen und mögliche Probleme zu identifizieren.
- Paketierung und Speicherung: Die Backend-Anwendungen werden zur Isolierung in Docker-Container verpackt und dann in eine spezielle Docker-Registry innerhalb der Plattform hochgeladen. Diese Container werden bis zur Bereitstellung zwischengespeichert. In ähnlicher Weise werden Webanwendungspakete in Zip-Archive komprimiert und in ein Artefakt-Repository für Hosting- oder Bereitstellungszwecke hochgeladen.
- Bereitstellung: In der letzten Phase wird das eigene CRM auf den Zielservern bereitgestellt und für die Benutzer zugänglich gemacht.
Durch die Nutzung der Plattform AppMaster wird der Prozess der App-Erstellung erheblich verbessert, da der Zeit- und Arbeitsaufwand für die manuelle Kodierung, Kompilierung, Prüfung, Verpackung und Bereitstellung reduziert wird. Der gesamte Prozess kann in nur 20 Sekunden abgeschlossen werden, was zu einer höheren Gesamteffizienz bei der CRM-Entwicklung beiträgt.