Die neue Version der Architekturkarte, die für meinen Kunden erstellt wurdeEine Architekturkarte ist für Ihre Produktspezifikation äußerst nützlich; auf diese Weise können Sie in jeder Ihrer User Stories hervorheben, über welchen Teil des Produkts Sie sprechen.
Welches Werkzeug sollten Sie verwenden, um eine Architekturkarte zu zeichnen? Es gibt Unmengen davon, mein Favorit ist Whimsical (weil es optisch angenehm und sehr unkompliziert ist, nicht mit so vielen Funktionen überladen), aber ich habe auch verwendet Draw.io in der Vergangenheit – das ist interessant, weil es mit Google Drive integriert ist, so dass, wenn Sie mit Google Slides und Google Docs arbeiten macht es schön zu bedienen. Es ist auch in JIRA und Confluence integriert.
Wenn Sie mehr über Architekturkarten erfahren möchten (Do’s und Don’ts, welche Tools zu verwenden sind, einige Beispiele usw.), hat Toptal eine großartige Lektüre herausgebracht: Den umfassenden Leitfaden zur Informationsarchitektur.
Epics und User Stories
Das Aufschlüsseln und Erklären aller Teile Ihres Produkts kann sehr schnell ziemlich chaotisch werden. Schreiben von Produktspezifikationen In den letzten 5 Jahren habe ich festgestellt, dass der beste Weg, die Spezifikationen organisiert und verständlich zu halten, darin besteht, sie nach „User Stories“ aufzuschlüsseln.
Was ist eine User Story? Laut Agile Modeling ist eine User Story „eine sehr hochrangige Definition einer Anforderung, die gerade genug Informationen enthält, damit die Entwickler eine vernünftige Schätzung des Aufwands für die Implementierung erstellen können.“
Die Idee von User Stories besteht darin, die Benutzer an die erste Stelle zu setzen und zu vermeiden, ausschließlich obskures & technisches Vokabular zu verwenden, wenn Funktionen diskutiert werden. Wie Atlassian es ausdrückt: „Nach dem Lesen einer User Story weiß das Team, warum es baut, was es baut und welchen Wert es schafft.“
Sie zielen darauf ab, ein besseres Produkt zu entwickeln, bei dem der Benutzer im Mittelpunkt der Debatten steht, im Gegensatz zur guten alten Wasserfall-Produktentwicklung.
So sollte eine User Story formuliert werden:
Als < Art des Benutzers > möchte ich < ein Ziel > so dass < aus irgendeinem Grund >.
So könnten wir beispielsweise User Stories für den folgenden Teil der Architekturkarte formulieren, die ich für einen meiner Kunden gezeichnet habe:
- User Story #1: Als Mitarbeiter im Profilbereich möchte ich mein Profil bearbeiten, damit ich mein Foto, meinen Vor- und Nachnamen aktualisieren kann.
- Anwenderbericht #2: Als Mitarbeiter im Profilbereich möchte ich auf die Einstellungen zugreifen, damit ich mein Passwort und die Benachrichtigungseinstellungen aktualisieren kann.
- User Story #3: Als Mitarbeiter im Profilbereich möchte ich auf den Chat zugreifen, damit ich den Entwicklern der App Feedback geben kann
Es liegt am Produktmanager zu entscheiden, welche Detailebene er in der User Story abdecken möchte. Wenn wir wollten, könnten wir auch eine Ebene tiefer in die User Story #2 gehen, zum Beispiel:
- User Story #2.a: Als Mitarbeiter in den Einstellungen möchte ich auf den Abschnitt „Passwort bearbeiten“ zugreifen, damit ich mein Passwort aktualisieren kann
- User Story #2.b: Als Mitarbeiter in den Einstellungen möchte ich auf die Benachrichtigungseinstellungen zugreifen, damit ich aktualisieren kann, mit welcher Häufigkeit ich jede Art von Benachrichtigungen erhalte
Aber wie Sie sehen, ist dies etwas offensichtlich und redundant. Ich persönlich habe mich entschieden, diese Szenarien in den „Akzeptanzkriterien“ (siehe nächsten Abschnitt) der betreffenden Geschichten zu behandeln.
Um User Stories zu organisieren, verwenden wir oft „Epics“. In agilen Begriffen sind „Epics“ große Arbeitsmengen, die in kleinere User Stories zerlegt werden können. Ich persönlich verwende Epics, um Geschichten zu gruppieren, die Teil desselben Themas oder Bereichs im Produkt sind. Zum Beispiel habe ich beschlossen, die Geschichten oben als Teil des „Profil“ -Epos zu gruppieren. Einige Leute formulieren Epics auf die gleiche Weise wie User Stories, mit einer einfacheren Struktur (z. „Als Benutzer möchte ich auf mein Profil zugreifen“)
Akzeptanzkriterien
Um sicherzustellen, dass einer User Story genügend Details hinzugefügt werden, verwenden wir „Akzeptanzkriterien“ (manchmal auch „Bedingungen der Zufriedenheit“ genannt).
Nach LeadingAgile.com „Akzeptanzkriterien“ sind „die Bedingungen, die ein Softwareprodukt erfüllen muss, um von einem Benutzer, Kunden oder im Falle einer Funktionalität auf Systemebene vom konsumierenden System akzeptiert zu werden.“
In den Akzeptanzkriterien sollten Sie alle funktionalen Besonderheiten auflisten, die in der User Story nicht eindeutig festgelegt sind. Beispiel:
User Story
Als Mitarbeiter im Profilbereich möchte ich mein Profil bearbeiten, damit ich mein Foto, meinen Vor- und Nachnamen aktualisieren kann.
Akzeptanzkriterien
- Da ich mich auf dem Bildschirm Profil bearbeiten befinde, wenn ich auf das Symbol Vornamen bearbeiten klicke, sollte es in den Bearbeitungsmodus wechseln, sich auf die Eingabe konzentrieren und die Tastatur öffnen (dasselbe gilt für den Nachnamen)
- Da ich mich auf dem Bildschirm Profil bearbeiten befinde, wenn ich auf das Symbol Foto bearbeiten klicke, sollte es mich auffordern, zwischen Kamera und Bibliothek zu wählen
- Da ich meinen Vornamen bearbeite, wenn ich auf „Speichern“ klicke, sollte es mich in den Lesemodus umleiten und Ich sollte eine Erfolgsbenachrichtigung sehen
etc…
Stellen Sie sich die Akzeptanzkriterien als checkliste, die für den Versand des Produkts ausgefüllt werden muss. Das oben verwendete Format Given / When /Then ist eine gute Möglichkeit, Ihre Akzeptanzkriterien zu formulieren, aber in einigen Fällen kann die Verwendung schwierig sein.
Design, Inhalt und Übersetzungen
Aktuelle Designs in Ihren Produktspezifikationen haben
Bisher habe ich nicht erwähnt, mit welchem Tool ich Spezifikationen schreibe. In der Vergangenheit habe ich zwischen Google Docs, Google Slides und Notion gewechselt. Ich habe es wirklich genossen, Notion für all die coolen Integrationen zu verwenden, die es bietet (besonders die mit InVision und Figma). Aber ich bin jetzt komplett auf Google Docs umgestiegen: Ich bevorzuge mehr Freiheit bei der Formatierung meiner Produktspezifikationen. Es ist auch bequemer, Google-Produkte zu verwenden, wenn Sie mit externen Partnern oder Kunden zusammenarbeiten.
Um sicherzustellen, dass die visuelle Identität Ihres Produkts vom Entwicklungsteam genau zum Leben erweckt wird, ist es wichtig, ihnen Zugriff auf die aktuellsten Bildschirme zu gewähren, die von Ihren Designern geliefert werden. Da es jedoch keine echte Integration zwischen Google Text & Tabellen und Designtools wie Figma, InVision oder Zeplin gibt, habe ich Bildschirme exportiert und in meine Produktspezifikationen kopiert / eingefügt.
Dies würde sehr schnell zu einem Problem werden: Designer iterieren täglich auf ihren Bildschirmen, und selbst wenn auf einem Bildschirm alles vereinbart wurde, kann sich dies einige Wochen später ändern, da eine bestimmte Komponente in der Designbibliothek aktualisiert wird. Dies würde dazu führen, dass meine Spezifikationen die meiste Zeit veraltet sind.
Deshalb verwende ich heute nur den Namen der Bildschirme. Wenn es sich bei einer User Story zur Profiledition beispielsweise um 2 Bildschirme handelt, die auf Figma entworfen wurden, schreibe ich nur „Figma-Bildschirmname: edit-profile-1 und edit-profile-2“.
Natürlich ist dies nicht ideal und zwingt Entwickler oder andere, die meine Spezifikationen lesen, zwischen mehreren Tools zu wechseln.
Aber das zeigt, dass es heute etwas Ineffizientes in der Art gibt, wie wir Produktspezifikationen schreiben. Die Verwendung mehrerer Produkte wirft die Fragen der Integration und Synchronisierung auf. Wie kann sichergestellt werden, dass alle für die Erstellung eines Produkts erforderlichen Informationen an einem einzigen Ort sichtbar sind, ohne veraltet zu sein? (Eigentlich gilt dies nicht nur für Designs, sondern auch für Architekturkarten und Inhalte).
→ Wenn Sie dieses Problem ebenfalls haben und eine Lösung gefunden haben, würde ich mich über Ihr Feedback freuen!
Einfacher Zugriff auf Inhalte und Übersetzungen, um Tippfehler zu vermeiden
Wenn Sie Bildschirme mit einer großen Menge an Inhalten entwerfen, ist es schön, Entwicklern die Möglichkeit zu geben, sie einfach zu kopieren / einzufügen, anstatt sie selbst neu eingeben zu müssen. Andernfalls könnten Sie (1) viele Tippfehler und (2) verärgerte Entwickler haben. Es gibt verschiedene Möglichkeiten, wie Sie ihnen Zugriff auf den Inhalt gewähren können:
- Indem Sie ihnen Zugriff auf die Quelldateien der Entwurfsarbeiten gewähren, z. B. auf Sketch, Figma oder Zeplin.
- Durch Kopieren / Einfügen des Inhalts direkt in die Spezifikation (es kann es ein bisschen chaotisch machen).
Wenn Ihr Produkt in mehreren Sprachen vorhanden ist, geben Sie auch Zugriff auf jede Übersetzung. Sie können beispielsweise ein Array verwenden, um die Übersetzung Ihres Originalinhalts in jeder Sprache anzuzeigen. Die nächste Stufe des Übersetzungsmanagements besteht darin, ein Lokalisierungstool (wie Phrase) zu verwenden und nur die „Übersetzungsschlüssel“ in Ihrer Produktspezifikation hinzuzufügen. Aber auch dies bedeutet ein weiteres Hin und Her zwischen Ihren Produktspezifikationen und einem anderen Tool.