Schritt 1 von 8
Google Drive Ordnerstruktur anlegen
Das System benötigt eine definierte Ordnerstruktur in Google Drive. Alle generierten PDF-Reports werden automatisch in den Reports-Ordner abgelegt. Halten Sie die Ordner-IDs bereit — sie werden in der Konfiguration benötigt.
Hauptordner anlegen
Gehen Sie zu drive.google.com → klicken Sie auf Neu → Ordner. Benennen Sie den Ordner: modernize.today Assessment
Unterordner für Reports erstellen
Öffnen Sie den soeben erstellten Ordner. Erstellen Sie darin einen neuen Unterordner: Reports
Ordner-ID des Reports-Ordners notieren
Öffnen Sie den Reports-Ordner. Kopieren Sie aus der Browser-Adressleiste die ID am Ende der URL. Die URL sieht so aus:
https://drive.google.com/drive/folders/1aBcDeFgHiJkLmNoPqRsTuVwXyZ123456
↑
Diese ID kopieren und notierenOrdner-ID sichern
Die Ordner-ID des Reports-Ordners wird in Schritt 6 in den Tab Konfiguration des Sheets eingetragen (ZelleB16). Notieren Sie sie jetzt.Schritt 2 von 8
Report-Template als Google Doc hochladen
Das Word-Dokument modernize_report_template.docx muss als Google Doc konvertiert werden. Apps Script arbeitet mit Google Docs — nicht mit .docx-Dateien direkt. Die Konvertierung erfolgt automatisch beim Upload.
Template in den Hauptordner hochladen
Öffnen Sie den Ordner modernize.today Assessment in Drive. Ziehen Sie die Datei modernize_report_template.docx in den Ordner oder klicken Sie Neu → Datei hochladen.
Als Google Doc öffnen (Konvertierung)
Doppelklicken Sie auf die hochgeladene Datei. Drive fragt, ob sie als Google Doc geöffnet werden soll — bestätigen Sie mit „Als Google Docs öffnen". Damit entsteht eine native Google Docs-Version.
Wichtig: Platzhalter prüfen
Scrollen Sie nach der Konvertierung durch das Dokument und vergewissern Sie sich, dass die{{PLATZHALTER}} korrekt dargestellt werden. Formatierungsprobleme aus der .docx-Konvertierung können dazu führen, dass ein Platzhalter aufgeteilt wird (z.B. {{APP und _NAME}} in separaten Runs). Solche müssen manuell zusammengefügt werden.Dokument-ID des Google Docs notieren
Öffnen Sie das konvertierte Google Doc. Kopieren Sie die ID aus der URL:
https://docs.google.com/document/d/1xYzAbCdEfGhIjKlMnOpQrStUvWx789/edit
↑
Diese ID notieren → wird in Schritt 6 benötigtSchritt 3 von 8
Google Sheet aus XLSX-Template importieren
Das vorbereitete Excel-Template enthält 4 Tabs mit vorkonfigurierten Formeln, Gewichtungen und Spaltenstrukturen. Der Import als Google Sheet bewahrt alle Formeln.
XLSX in den Hauptordner hochladen
Laden Sie modernize_sheet_template.xlsx in den Ordner modernize.today Assessment hoch (identisch wie beim Docs-Template).
Als Google Sheet öffnen
Doppelklicken Sie auf die Datei → „Als Google Tabellen öffnen". Das Sheet wird konvertiert und enthält anschließend alle 4 Tabs mit funktionierenden Formeln.
Die 4 Tabs im Sheet:
| Tab-Name | Inhalt | Wird befüllt durch |
|---|---|---|
| Konfiguration | Gewichtungen, Schwellenwerte, IDs | Manuell (Schritt 6) |
| Formularantworten 1 | Rohdaten aus dem Google Formular | Automatisch (Google Forms) |
| Scoring | Berechnete Scores, Ampelstatus, Report-Links | Automatisch (Apps Script) |
| Portfolio | Aggregierte Übersicht aller Assessments | Automatisch (Apps Script) |
Sheet-ID notieren
Die Sheet-ID aus der URL benötigen Sie, wenn Sie das Formular später verknüpfen. Die ID steht in der URL zwischen /spreadsheets/d/ und /edit.
Schritt 4 von 8
Google Formular anlegen und mit Sheet verknüpfen
Das Formular erfasst alle Eingaben über 10 Dimensionen mit je 4–6 Fragen auf einer 1–5 Skala. Es muss mit dem Google Sheet verknüpft werden, damit Apps Script die Formularantworten verarbeiten kann.
Neues Google Formular erstellen
Gehen Sie zu forms.google.com → Leer. Titel: Applikations-Assessment — modernize.today. Beschreibung: Beantworten Sie alle Fragen auf einer Skala von 1 (niedrig) bis 5 (hoch).
Mit Google Sheet verknüpfen
Im Formular-Editor: Tab Antworten → Klicken Sie das grüne Tabellensymbol (Antworten in Tabellen erfassen) → Vorhandene Tabelle auswählen → Das zuvor importierte Sheet wählen → Tab Formularantworten 1 bestätigen.
Reihenfolge der Fragen ist kritisch
Apps Script liest die Formularantworten über den Index der Spalten. Die Reihenfolge der Fragen im Formular muss exakt der untenstehenden Vorgabe entsprechen. Erstellen Sie alle Felder in der angegebenen Reihenfolge.Alle Formularfelder anlegen
Erstellen Sie die folgenden Sektionen und Fragen im Formular. Jede Sektion ist eine eigene Seite im Formular (nutzen Sie „Abschnitt hinzufügen").
- F01 Name der Applikation Kurztext
- F02 Ansprechpartner / Assessor (Name) Kurztext
- F03 E-Mail-Adresse für Report-Zustellung Kurztext (E-Mail-Format)
- F04 Unternehmen / Organisation Kurztext
- F05 Kurze Beschreibung der Kernfunktion der Applikation Langtext
10 Bewertungsdimensionen (je eine Seite im Formular):
Fragetyp für Bewertungsfragen
Alle Bewertungsfragen (D1–D9) verwenden den Typ „Lineare Skala" mit Bereich 1–5. Beschriften Sie den Pol 1 mit „Niedrig / Nicht vorhanden" und Pol 5 mit „Hoch / Vollständig". Aktivieren Sie „Pflichtfrage" für alle Bewertungsfragen.- D1.1Wie aktuell ist die verwendete Technologiebasis (Frameworks, Laufzeitumgebungen, Programmiersprachen)?Skala 1–5
- D1.2In welchem Ausmaß ist automatisiertes Testen (Unit-, Integrations-, Regressionstests) implementiert?Skala 1–5
- D1.3Wie verständlich und dokumentiert ist die Codebasis für neue Entwickler?Skala 1–5
- D1.4Wie modular ist die Architektur (Grad der Entkopplung von Komponenten)?Skala 1–5
- D1.5Bekannte technische Schulden und deren geschätzter Aufwand zur BehebungLangtext (optional)
- D2.1Wie viele Nutzer oder Geschäftsprozesse sind direkt von dieser Applikation abhängig?Skala 1–5
- D2.2Welche Auswirkungen hätte ein Ausfall der Applikation auf den Geschäftsbetrieb?Skala 1–5
- D2.3Wie hoch ist der strategische Stellenwert der Applikation für das Unternehmen?Skala 1–5
- D2.4Schlüsselprozesse, die die Applikation unterstützt (Freitext)Langtext (optional)
modernize_stufe2_implementierung.md.Schritt 5 von 8
Apps Script einfügen und Trigger einrichten
Das Apps Script bildet das Herzstück der Automatisierung. Es wird direkt im Google Sheet als Container-gebundenes Script hinterlegt und per Trigger bei jeder neuen Formularantwort gestartet.
Apps Script Editor öffnen
Öffnen Sie das Google Sheet → Menü Erweiterungen → Apps Script. Ein neuer Browser-Tab mit dem Script-Editor öffnet sich.
Bestehenden Code ersetzen
Markieren Sie den gesamten bestehenden Code im Editor (Strg+A / Cmd+A) und löschen Sie ihn. Öffnen Sie die Datei modernize_apps_script.gs in einem Texteditor, markieren Sie alles und kopieren Sie den gesamten Inhalt in den Apps Script Editor.
Script speichern
Speichern Sie mit Strg+S / Cmd+S oder über das Disketten-Symbol. Benennen Sie das Projekt auf Nachfrage: modernize.today Assessment Engine.
Trigger einrichten (Funktion triggerEinrichten ausführen)
Wählen Sie in der Funktionsauswahl (Dropdown oben in der Toolbar) die Funktion triggerEinrichten aus. Klicken Sie auf ▶ Ausführen. Das Script richtet automatisch den onFormSubmit-Trigger ein.
// Erwartete Ausgabe in der Konsole: Bestehende Trigger gelöscht: 0 Trigger 'onFormSubmit' erfolgreich eingerichtet. Trigger-ID: AbCdEfGhIjKl...
Berechtigungen erteilen
Beim ersten Ausführen fragt Google nach Berechtigungen. Klicken Sie auf „Zugriff genehmigen" → wählen Sie Ihr Google-Konto → „Erweitert" → „modernize.today Assessment Engine (unsicher)" → „Zulassen". Diese Meldung erscheint, weil das Script nicht von Google verifiziert ist — das ist für eigene Scripts normal.Trigger-Einrichtung verifizieren
Gehen Sie zu Trigger (Uhr-Symbol in der linken Sidebar). Sie sollten jetzt einen Trigger sehen:
Funktion: onFormSubmit Ereignis: Beim Absenden des Formulars Quelle: Aus Tabelle Status: Aktiviert
Schritt 6 von 8
Konfiguration-Tab im Sheet ausfüllen
Der Tab Konfiguration ist die zentrale Steuerzentrale des Systems. Hier werden die IDs für Docs-Template und Reports-Ordner, E-Mail-Adressen und Schwellenwerte hinterlegt. Das Script liest alle Einstellungen von hier.
| Zelle | Bezeichnung | Wert / Hinweis |
|---|---|---|
| B5Gewicht D1 | Technische Schulden | 8 (Standard) |
| B6Gewicht D2 | Geschäftskritikalität | 15 (Standard) |
| B7Gewicht D3 | Cloud-Readiness | 12 (Standard) |
| B8Gewicht D4 | Sicherheit & Compliance | 10 (Standard) |
| B9Gewicht D5 | Integrationskomplexität | 10 (Standard) |
| B10Gewicht D6 | Daten & Qualität | 10 (Standard) |
| B11Gewicht D7 | Betrieb & Wartbarkeit | 12 (Standard) |
| B12Gewicht D8 | Skalierbarkeit | 10 (Standard) |
| B13Gewicht D9 | Strategische Ausrichtung | 8 (Standard, Summe = 100) |
| B18Ampel Grün | Schwellenwert Grün (≥) | 70 |
| B19Ampel Gelb | Schwellenwert Gelb (≥) | 45 |
| B14Template-URL | Google Docs Template URL / ID | ⚠ ID aus Schritt 2 eintragen |
| B16Reports-Ordner | Google Drive Ordner-ID (Reports) | ⚠ ID aus Schritt 1 eintragen |
| B17CC-E-Mail | CC-Empfänger für alle Reports | z.B. team@modernize.today |
| B20Absendername | Name des E-Mail-Absenders | modernize.today Assessment |
Gewichtungen anpassen
Die Standardgewichtungen ergeben immer 100 %. Wenn Sie die Gewichtungen für Ihren Anwendungsfall anpassen möchten, stellen Sie sicher, dass die Summe von B5 bis B13 stets 100 ergibt. Die Scoring-Formel im Tab Scoring normalisiert automatisch.Schritt 7 von 8
Testlauf mit Beispieldaten durchführen
Bevor das System produktiv geht, wird die gesamte Pipeline mit der integrierten Testfunktion testMitBeispieldaten validiert. Die Funktion simuliert eine vollständige Formularantwort.
Testfunktion ausführen
Im Apps Script Editor: Funktion testMitBeispieldaten in der Toolbar auswählen → ▶ Ausführen. Die Funktion führt die gesamte Pipeline mit fest einprogrammierten Testdaten aus.
Log-Ausgaben überprüfen
Klicken Sie auf Ausführungsprotokoll (unten im Editor). Folgende Ausgaben signalisieren Erfolg:
// ✅ Assessment-ID generiert Assessment-ID: MOD-20260317-A1B2 // ✅ Scores berechnet Gesamtscore: 72.4 | Klasse: 🟢 Modernisierungsbereit D1 Technische Schulden: 3.4 → 68.0 D2 Geschäftskritikalität: 4.0 → 80.0 D3 Cloud-Readiness: 3.8 → 76.0 // ... alle 9 Dimensionen ... // ✅ Report erstellt Docs-Template geklont: https://docs.google.com/document/d/... PDF erstellt: MOD-20260317-A1B2_Testapplikation.pdf Report-URL: https://drive.google.com/file/d/... // ✅ Scoring-Sheet beschrieben Zeile in Scoring-Tab geschrieben: Spalte A–U // ✅ E-Mail gesendet E-Mail gesendet an: test@example.com Testlauf abgeschlossen — alle Schritte erfolgreich.
Ergebnisse in Drive und Sheet prüfen
Prüfen Sie in Google Drive → Reports-Ordner: Eine neue PDF-Datei sollte sichtbar sein. Prüfen Sie im Scoring-Tab: Eine neue Zeile mit dem Testergebnis sollte erschienen sein. Prüfen Sie das E-Mail-Postfach: Die Test-E-Mail mit angehängtem PDF sollte eingetroffen sein.
Häufige Fehler und Lösungen:
-
Fehler: „Cannot find template" Template-ID in Zelle B14 prüfen. Muss die reine ID sein, keine vollständige URL.
-
Fehler: „Access denied to folder" Ordner-ID in B16 prüfen. Sicherstellen, dass der Reports-Ordner mit dem Script-Ausführenden Account zugänglich ist.
-
Fehler: „Platzhalter nicht ersetzt" (leere Felder im PDF) Das Google Doc auf aufgeteilte Platzhalter prüfen. Im Doc: Strg+H (Suchen/Ersetzen) → suchen nach dem Platzhalter-Text, um ihn zu finden und manuell zu korrigieren.
-
Fehler: „E-Mail nicht zugestellt" Gmail-Kontingent prüfen (max. 100 Mails/Tag bei kostenlosem Google-Konto). Spam-Ordner des Empfängers prüfen.
Schritt 8 von 8
Go-Live Checkliste
Bevor der Assessment-Link an die ersten Kunden verschickt wird, sollten alle Punkte der folgenden Checkliste abgehakt sein. Die Checkliste ist interaktiv — haken Sie erledigte Punkte ab, um den Fortschritt zu verfolgen.
Alle Punkte müssen abgehakt sein, bevor das System produktiv geschaltet wird.
0 / 18 abgehakt
System ist bereit
Wenn alle 18 Punkte abgehakt sind, kann der Formular-Link an die ersten Kunden verschickt werden. Der gesamte Prozess von Formularabgabe bis PDF-Report läuft vollautomatisch — ohne weiteren manuellen Aufwand.Referenz
Systemarchitektur — Datenfluss
Übersicht über den automatisierten Datenfluss von der Formularabgabe bis zur Report-Zustellung.
┌─────────────────────────────────────────────────────────────────┐ │ modernize.today · Stufe 2 Architektur │ └─────────────────────────────────────────────────────────────────┘ [Kunde] │ Öffnet Formular-Link, füllt 10 Dimensionen aus ▼ [Google Forms] │ onFormSubmit-Event → schreibt Rohdaten in Sheet ▼ [Google Sheets · Tab: Formularantworten 1] │ Neue Zeile mit Zeitstempel + allen Antworten ▼ [Apps Script · onFormSubmit Trigger] │ ├─→ parseFormAntworten() ← extrahiert Felder, generiert Assessment-ID │ ├─→ berechneScores() ← 9 Dimensions-Scores + Gesamtscore (0–100) │ + Ampelklasse + Strategie-Empfehlung │ ├─→ erstelleReport() ← klont Docs-Template, ersetzt Platzhalter, │ exportiert als PDF in Reports-Ordner │ ├─→ schreibeInScoringSheet() ← neue Zeile im Scoring-Tab (21 Spalten) │ └─→ sendeReportEmail() ← HTML-E-Mail mit Score-Tabelle + PDF-Anhang ───────────────────────────────────────────────────────────────── [Kunde erhält]: E-Mail mit Scoring-Übersicht + PDF-Analysebericht [Portfolio-Tab]: Aggregierte Übersicht aller bisherigen Assessments [Scoring-Tab]: Vollständige Auswertungshistorie (filterbar/sortierbar)