SlideShare a Scribd company logo
1 of 52
Download to read offline
Andreas Wissel
@andreas_wissel
User Experience Architect
Design Systems mit Storybook und Angular
Strukturierte User Experience für Entwickler
Robuste Design Systems mit Storybook und Angular
• Design Systems Intro
• Tooling
• framework-agnostisch
• am Beispiel Angular
• platform-unabhängig
Was Euch erwartet
2
• technischer Deep Dive
• Angular Deep Dive
Was Euch nicht erwartet
Robuste Design Systems mit Storybook und Angular
User Experience Architect
Andreas Wissel
3
💡 Enterprise UX
❤ Design Systems
🏢 INNOQ
✍ andreaswissel.com
🐦 @andreas_wissel
Robuste Design Systems mit Storybook und Angular
User Experience Architect
Andreas Wissel
4
• Designer-Developer-Schnittstelle
• Workflow-Optimierung
• Beratung & Begleitung von Redesigns
• Fokus auf Design Systems mit Storybook
Robuste Design Systems mit Storybook und Angular
• Dachbegriff
• “all aspects of the user’s experience when interacting with
the product, service, environment or facility” (ISO 9241-210)
• ganzheitliche Betrachtung davon, wie unsere Produkte die
Anwender, Geschäftsprozesse und Umwelt beeinflussen
• Wichtig: nicht nur visuelles UI - sondern vor allem die
Architektur dahinter!
Was ist UX?
5
Robuste Design Systems mit Storybook und Angular
Menschen denken in Mustern
6
User Experience im Alltag
Robuste Design Systems mit Storybook und Angular7
Menschen denken in Mustern
User Experience im Alltag
Robuste Design Systems mit Storybook und Angular8
Menschen denken in Mustern
User Experience im Alltag
Robuste Design Systems mit Storybook und Angular9
Und ohne Muster sind wir verloren..
User Experience im Alltag
Robuste Design Systems mit Storybook und Angular
• Menschen denken in Systemen/Mustern
• mit ihnen sparen wir kostbare kognitive Belastung ein
• Gewohnheiten navigieren uns durch den Alltag
• Software ist heute Alltag
User Experience - viele bekannte Muster
10
Robuste Design Systems mit Storybook und Angular
• Features müssen verständlich
sein
• Features müssen benutzbar
sein
• in anderen Worten:
• Discoverability
• Usability
• Accessibility
User Experience für Developer
11
Access
denied
Robuste Design Systems mit Storybook und Angular
Enge Zusammenarbeit und gemeinsames Verständnis führt
zu guter User Experience. Gute UX entsteht im Team!
Dieser Talk soll das nötige Handwerkszeug für enge
Zusammenarbeit geben
Denn User Experience dreht sich vor allem um eins:
Mission Statement
12
Menschen
Robuste Design Systems mit Storybook und Angular13
Kollaboration ⚡ Fachbereiche
Konsistenz ⚡ Projektalltag
Skalierbarkeit ⚡ Agile Prozesse
Menschen
Robuste Design Systems mit Storybook und Angular
• bilden die UX systematisch ab
• strukturierte Dokumentation der Bestandteile
• Anleitung zum Weiterbauen
• sind das “Produkt für’s Produkt”
• Basis zur Entwicklung neuer Produkte
• stetige Weiterentwicklung
Wie passen Design Systems dazu?
14
Robuste Design Systems mit Storybook und Angular
Problemstellungen
15
Konsistenz langfristig sichern
integrierter Workflow flexible Prozesse
einfacher Zugang
Robuste Design Systems mit Storybook und Angular
• echte, lebendige Komponenten
• direkt benutzbar
• gekapselt
• Use Case-spezifisch
• Technische Dokumentation
Design System: Was ist das?
16
• Styleguide
• statische, visuelle
Dokumentation der Marke
• “look & feel”
• Pattern Library
• Dokumentation der UI-Elemente
Robuste Design Systems mit Storybook und Angular
“Warum muss das heute so kompliziert
sein?”
17
Robuste Design Systems mit Storybook und Angular
relevante Zielplattformen früher:
Windows oder Web
18
Robuste Design Systems mit Storybook und Angular
relevante Zielplattformen heute:
Windows, Mac, Linux, Web/PWA, iOS, Android
19
Robuste Design Systems mit Storybook und Angular
und es geht noch weiter
20
Robuste Design Systems mit Storybook und Angular
Stetig wachsender Zielmarkt
21
Robuste Design Systems mit Storybook und Angular
• extrem viele Geräteklassen
• verschiedenste Eingabemöglichkeiten
• viele Zielplattformen
• völlig neue Möglichkeiten
• völlig neue Fehlerquellen
Stetig wachsender Zielmarkt
22
Robuste Design Systems mit Storybook und Angular
Moderne Design Systems: Bausteine
23
Branding Guidelines
Komponenten-
bibliothek
Dokumentation
Animation, a11y, etc.
Inhalte
isoliert
iterativ
erweiterbar
brown field-Einsatz
Prozess
viele Plattformen
viele Geräteklassen
eigene Designsprache
Kapselung
Anforderungen
}+
Robuste Design Systems mit Storybook und Angular
Design Systems: Zusammenfassung
24
Sammlung aller
Komponenten
klar definierte
Use-Cases
Zusammenspiel
aller Disziplinen
Robuste Design Systems mit Storybook und Angular
Komponentenbasiertes Design
25
Robuste Design Systems mit Storybook und Angular
Komponentenbasiertes Design
26
Form Group Header
Input
Input
Button
Login
Robuste Design Systems mit Storybook und Angular27
Robuste Design Systems mit Storybook und Angular
• Browserbasiert mit nativen Apps
• Zusammenarbeit in Echtzeit
• Prototyping
• (rudimentäre) CSS-Generierung
• Kommerziell, kostenfrei nutzbar (für öffentliche Projekte)
Figma: Komponentenbasiertes Design
28
Robuste Design Systems mit Storybook und Angular
Figma: Komponentenbasiertes Design
29
Robuste Design Systems mit Storybook und Angular
Figma: Komponentenbasiertes Design
30
Demo Time
bit.ly/ngds-figma
Robuste Design Systems mit Storybook und Angular
• Komponenten-Modell
• Test von “Worst Case”-Werten
• Fluid Design im Tool
• Prototyping bildet Workflows ab
Figma: Zusammenspiel mit Developer-Workflows
31
Robuste Design Systems mit Storybook und Angular32
Robuste Design Systems mit Storybook und Angular
• Design System in Code abbilden
• Schnittstelle zwischen Design & Code
• isolierte Entwicklung von Komponenten
• Vorbereitung auf Unit Tests
• Dokumentation direkt an Komponenten
Storybook
33
Robuste Design Systems mit Storybook und Angular
• framework-agnostisch
• Open Source
• Verwaltet von der JS Foundation
• vielfältiges Plugin-Ökosystem
• Möglichkeit von Snapshot Tests
Storybook
34
Robuste Design Systems mit Storybook und Angular
Storybook am konkreten Beispiel
35
Robuste Design Systems mit Storybook und Angular
Storybook am konkreten Beispiel
36
Demo Time
Robuste Design Systems mit Storybook und Angular
Designer
• einfache Abnahme &
Freigabe
• Testen am lebenden
Subjekt
• Konsens
Developer
• Edge Cases
• schwierig zu
erreichende States
• lebendige
Dokumentation
Tester
• Mock-Daten
• Automatisierung
• Eingrenzung auf
Komponenten
Storybook - wer profitiert davon?
37
Robuste Design Systems mit Storybook und Angular
Gesamtes Team
• “Shared Vocabulary”
• agile Dokumentation
• steigende
Produktivität
Storybook - wer profitiert davon?
38
Robuste Design Systems mit Storybook und Angular39
Robuste Design Systems mit Storybook und Angular
• verwendet das Konzept komponentenbasierter
Softwareentwicklung
• erlaubt die Kapselung von CSS
(ViewEncapsulation) zur Vermeidung von
monolithischem CSS
• eröffnet einen möglichen Migrationspfad auf Web
Components
Angular
40
Robuste Design Systems mit Storybook und Angular
Angular: Komponenten
41
Click me![caption]="Click me!" (click)="…"
Clickety![caption]=“Clickety!" (click)="…"
Robuste Design Systems mit Storybook und Angular
• Die Storybook-CLI erlaubt die Installation von Storybook in
bestehende Projekte durch ein einziges Kommando:
• sb init --use-npm
• Das verwendete Framework wird automatisch erkannt und
die Installation darauf angepasst
• für einen Großteil der Projekte funktioniert der zero config
Ansatz
Storybook + Angular
42
Robuste Design Systems mit Storybook und Angular
• mit einer Angular CLI Erweiterung wird die Generierung
der Komponenten leichter:
• ng add @ngx-storybook/schematics
• Komponenten lassen sich jetzt inklusive Story und Modul
mit einem Kommando generieren:
• ng g @ngx-storybook/schematics:c button
Storybook + Angular
43
Robuste Design Systems mit Storybook und Angular
Storybook: Aufbau von Stories
44
Robuste Design Systems mit Storybook und Angular
Wrap-Up: Technologien
45
Universell einsetzbar
Robuste Design Systems mit Storybook und Angular
• echte Komponenten
• modulare, isolierte Entwicklung
• einfachere Wartbarkeit
• brown field-geeignet
• Dokumentation
• konsistentere User Experience
• Bonus: Unit-Tests profitieren von Mock-Daten
Wrap-Up: Design Systems mit Storybook und Angular
46
Robuste Design Systems mit Storybook und Angular47
User Experience Architect
Andreas Wissel
🐦 @andreas_wissel
📨 andreas.wissel@innoq.com
✍ andreaswissel.com
Vielen Dank!
Robuste Design Systems mit Storybook und Angular
Login Komponente
48
Robuste Design Systems mit Storybook und Angular
Login Komponente
49
Form Group Header
Input
Input
Button
Login
Robuste Design Systems mit Storybook und Angular
Die Button-Komponente in Storybook mit Angular
Live Coding
50
Robuste Design Systems mit Storybook und Angular51
Figma Projekt:
bit.ly/ngds-figma
Repository:
github.com/andreaswissel/techlunch-
design-systems
Slides:
bit.ly/techlunch-design-systems
Links
Robuste Design Systems mit Storybook und Angular52
Quellen
https://twitter.com/DougCollinsUX/status/1021789284846788609
https://www.htc.com/us/newsroom/2019-03-26/
https://www.heise.de/select/ix/2017/11/1509663159694094
https://www.samsung.com/sg/refrigerators/family-hub-rf56n9740sg/
https://www.apple.com/shop/buy-watch/apple-watch-series-3/38mm-gps-silver-aluminum-white-sport-band
https://support.apple.com/kb/sp770?locale=de_DE
https://www.apple.com/de/shop/buy-ipad/ipad-pro
https://www.apple.com/de/shop/buy-mac/macbook-pro
https://www.apple.com/de/shop/buy-mac/imac
https://www.microsoft.com/de-de/p/surface-studio-2/8sbjxm0m58t4
https://twitter.com/rsg/status/1148421102009344000
https://twitter.com/Talk_To_The_Hat/status/1166460235982233600
https://www.reddit.com/r/CrappyDesign/comments/c55puw/piss_poor_location/
https://twitter.com/DougCollinsUX/status/1122881214040420352

More Related Content

Similar to INNOQ Tech Lunch: Design Systems mit Storybook & Angular

XAML UI DEVELOPMENT BEST PRACTICES 2.0
XAML UI DEVELOPMENT BEST PRACTICES 2.0XAML UI DEVELOPMENT BEST PRACTICES 2.0
XAML UI DEVELOPMENT BEST PRACTICES 2.0thoemmes
 
Gerade genug Architektur vorneweg - Zur eigenen Architektur-Vision in 12 Minuten
Gerade genug Architektur vorneweg - Zur eigenen Architektur-Vision in 12 MinutenGerade genug Architektur vorneweg - Zur eigenen Architektur-Vision in 12 Minuten
Gerade genug Architektur vorneweg - Zur eigenen Architektur-Vision in 12 MinutenRoland Mast
 
Continuous Everything
Continuous EverythingContinuous Everything
Continuous Everythingcusy GmbH
 
Cusy Developer-Baukasten
Cusy Developer-BaukastenCusy Developer-Baukasten
Cusy Developer-Baukastencusy GmbH
 
Softwerkskammer Chemnitz Special Pecha Kucha Night
Softwerkskammer Chemnitz Special Pecha Kucha NightSoftwerkskammer Chemnitz Special Pecha Kucha Night
Softwerkskammer Chemnitz Special Pecha Kucha NightChristinaLerch1
 
Dr. Ingo Laue - Microsoft Azure | Projekt-Erfahrungen
Dr. Ingo Laue - Microsoft Azure | Projekt-ErfahrungenDr. Ingo Laue - Microsoft Azure | Projekt-Erfahrungen
Dr. Ingo Laue - Microsoft Azure | Projekt-ErfahrungenSymposia Media
 
SharePointCommunity.ch SharePoint Lösungen für die Zukunft
SharePointCommunity.ch SharePoint Lösungen für die ZukunftSharePointCommunity.ch SharePoint Lösungen für die Zukunft
SharePointCommunity.ch SharePoint Lösungen für die ZukunftDavid Schneider
 
Moderne Business Apps mit XAML - oder mit WPF für die Zukunft geplant
Moderne Business Apps mit XAML - oder mit WPF für die Zukunft geplantModerne Business Apps mit XAML - oder mit WPF für die Zukunft geplant
Moderne Business Apps mit XAML - oder mit WPF für die Zukunft geplantChristian Nagel
 
Ringvorlesung: FIO Systems AG stellt Projektziel zum Thema Software Design Pa...
Ringvorlesung: FIO Systems AG stellt Projektziel zum Thema Software Design Pa...Ringvorlesung: FIO Systems AG stellt Projektziel zum Thema Software Design Pa...
Ringvorlesung: FIO Systems AG stellt Projektziel zum Thema Software Design Pa...Community ITmitte.de
 
CI und Android - Wie geht das? MTC2010
CI und Android - Wie geht das? MTC2010CI und Android - Wie geht das? MTC2010
CI und Android - Wie geht das? MTC2010Markus Kopf
 
2007 - Basta!: Nach soa kommt soc
2007 - Basta!: Nach soa kommt soc2007 - Basta!: Nach soa kommt soc
2007 - Basta!: Nach soa kommt socDaniel Fisher
 
Progressive Web Apps mit Angular
Progressive Web Apps mit AngularProgressive Web Apps mit Angular
Progressive Web Apps mit AngularJens Binfet
 
Welche Prototyping-Methode passt zu meinen Anforderungen? – World Usability D...
Welche Prototyping-Methode passt zu meinen Anforderungen? – World Usability D...Welche Prototyping-Methode passt zu meinen Anforderungen? – World Usability D...
Welche Prototyping-Methode passt zu meinen Anforderungen? – World Usability D...Lena Königsberger
 
MEAN SCS in der Cloud
MEAN SCS in der CloudMEAN SCS in der Cloud
MEAN SCS in der CloudTorsten Fink
 
Implementierung der Knowledge Engineering Workbench in myCBR
Implementierung der Knowledge Engineering Workbench in myCBRImplementierung der Knowledge Engineering Workbench in myCBR
Implementierung der Knowledge Engineering Workbench in myCBRAlexander Hundt
 
Applikationsmodernisierung: Der Weg von Legacy in die Cloud
Applikationsmodernisierung: Der Weg von Legacy in die CloudApplikationsmodernisierung: Der Weg von Legacy in die Cloud
Applikationsmodernisierung: Der Weg von Legacy in die CloudAarno Aukia
 
Nanoservice Architekturen
Nanoservice ArchitekturenNanoservice Architekturen
Nanoservice ArchitekturenLeo Lindhorst
 
YUNA - Data Science Plattform für Unternehmen
YUNA - Data Science Plattform für UnternehmenYUNA - Data Science Plattform für Unternehmen
YUNA - Data Science Plattform für Unternehmeneoda GmbH
 
Automatische Erstellung einer SharePoint 2013 Entwicklungsumgebung in Microso...
Automatische Erstellung einer SharePoint 2013 Entwicklungsumgebung in Microso...Automatische Erstellung einer SharePoint 2013 Entwicklungsumgebung in Microso...
Automatische Erstellung einer SharePoint 2013 Entwicklungsumgebung in Microso...Sebastian Huppmann
 

Similar to INNOQ Tech Lunch: Design Systems mit Storybook & Angular (20)

XAML UI DEVELOPMENT BEST PRACTICES 2.0
XAML UI DEVELOPMENT BEST PRACTICES 2.0XAML UI DEVELOPMENT BEST PRACTICES 2.0
XAML UI DEVELOPMENT BEST PRACTICES 2.0
 
Gerade genug Architektur vorneweg - Zur eigenen Architektur-Vision in 12 Minuten
Gerade genug Architektur vorneweg - Zur eigenen Architektur-Vision in 12 MinutenGerade genug Architektur vorneweg - Zur eigenen Architektur-Vision in 12 Minuten
Gerade genug Architektur vorneweg - Zur eigenen Architektur-Vision in 12 Minuten
 
Continuous Everything
Continuous EverythingContinuous Everything
Continuous Everything
 
Cusy Developer-Baukasten
Cusy Developer-BaukastenCusy Developer-Baukasten
Cusy Developer-Baukasten
 
Softwerkskammer Chemnitz Special Pecha Kucha Night
Softwerkskammer Chemnitz Special Pecha Kucha NightSoftwerkskammer Chemnitz Special Pecha Kucha Night
Softwerkskammer Chemnitz Special Pecha Kucha Night
 
Dr. Ingo Laue - Microsoft Azure | Projekt-Erfahrungen
Dr. Ingo Laue - Microsoft Azure | Projekt-ErfahrungenDr. Ingo Laue - Microsoft Azure | Projekt-Erfahrungen
Dr. Ingo Laue - Microsoft Azure | Projekt-Erfahrungen
 
SharePointCommunity.ch SharePoint Lösungen für die Zukunft
SharePointCommunity.ch SharePoint Lösungen für die ZukunftSharePointCommunity.ch SharePoint Lösungen für die Zukunft
SharePointCommunity.ch SharePoint Lösungen für die Zukunft
 
Moderne Business Apps mit XAML - oder mit WPF für die Zukunft geplant
Moderne Business Apps mit XAML - oder mit WPF für die Zukunft geplantModerne Business Apps mit XAML - oder mit WPF für die Zukunft geplant
Moderne Business Apps mit XAML - oder mit WPF für die Zukunft geplant
 
Ringvorlesung: FIO Systems AG stellt Projektziel zum Thema Software Design Pa...
Ringvorlesung: FIO Systems AG stellt Projektziel zum Thema Software Design Pa...Ringvorlesung: FIO Systems AG stellt Projektziel zum Thema Software Design Pa...
Ringvorlesung: FIO Systems AG stellt Projektziel zum Thema Software Design Pa...
 
CI und Android - Wie geht das? MTC2010
CI und Android - Wie geht das? MTC2010CI und Android - Wie geht das? MTC2010
CI und Android - Wie geht das? MTC2010
 
2007 - Basta!: Nach soa kommt soc
2007 - Basta!: Nach soa kommt soc2007 - Basta!: Nach soa kommt soc
2007 - Basta!: Nach soa kommt soc
 
Progressive Web Apps mit Angular
Progressive Web Apps mit AngularProgressive Web Apps mit Angular
Progressive Web Apps mit Angular
 
Welche Prototyping-Methode passt zu meinen Anforderungen? – World Usability D...
Welche Prototyping-Methode passt zu meinen Anforderungen? – World Usability D...Welche Prototyping-Methode passt zu meinen Anforderungen? – World Usability D...
Welche Prototyping-Methode passt zu meinen Anforderungen? – World Usability D...
 
MEAN SCS in der Cloud
MEAN SCS in der CloudMEAN SCS in der Cloud
MEAN SCS in der Cloud
 
Implementierung der Knowledge Engineering Workbench in myCBR
Implementierung der Knowledge Engineering Workbench in myCBRImplementierung der Knowledge Engineering Workbench in myCBR
Implementierung der Knowledge Engineering Workbench in myCBR
 
Applikationsmodernisierung: Der Weg von Legacy in die Cloud
Applikationsmodernisierung: Der Weg von Legacy in die CloudApplikationsmodernisierung: Der Weg von Legacy in die Cloud
Applikationsmodernisierung: Der Weg von Legacy in die Cloud
 
Nanoservice Architekturen
Nanoservice ArchitekturenNanoservice Architekturen
Nanoservice Architekturen
 
YUNA - Data Science Plattform für Unternehmen
YUNA - Data Science Plattform für UnternehmenYUNA - Data Science Plattform für Unternehmen
YUNA - Data Science Plattform für Unternehmen
 
Automatische Erstellung einer SharePoint 2013 Entwicklungsumgebung in Microso...
Automatische Erstellung einer SharePoint 2013 Entwicklungsumgebung in Microso...Automatische Erstellung einer SharePoint 2013 Entwicklungsumgebung in Microso...
Automatische Erstellung einer SharePoint 2013 Entwicklungsumgebung in Microso...
 
Azure WorkshopPart1 Intro
Azure WorkshopPart1   IntroAzure WorkshopPart1   Intro
Azure WorkshopPart1 Intro
 

INNOQ Tech Lunch: Design Systems mit Storybook & Angular

  • 1. Andreas Wissel @andreas_wissel User Experience Architect Design Systems mit Storybook und Angular Strukturierte User Experience für Entwickler
  • 2. Robuste Design Systems mit Storybook und Angular • Design Systems Intro • Tooling • framework-agnostisch • am Beispiel Angular • platform-unabhängig Was Euch erwartet 2 • technischer Deep Dive • Angular Deep Dive Was Euch nicht erwartet
  • 3. Robuste Design Systems mit Storybook und Angular User Experience Architect Andreas Wissel 3 💡 Enterprise UX ❤ Design Systems 🏢 INNOQ ✍ andreaswissel.com 🐦 @andreas_wissel
  • 4. Robuste Design Systems mit Storybook und Angular User Experience Architect Andreas Wissel 4 • Designer-Developer-Schnittstelle • Workflow-Optimierung • Beratung & Begleitung von Redesigns • Fokus auf Design Systems mit Storybook
  • 5. Robuste Design Systems mit Storybook und Angular • Dachbegriff • “all aspects of the user’s experience when interacting with the product, service, environment or facility” (ISO 9241-210) • ganzheitliche Betrachtung davon, wie unsere Produkte die Anwender, Geschäftsprozesse und Umwelt beeinflussen • Wichtig: nicht nur visuelles UI - sondern vor allem die Architektur dahinter! Was ist UX? 5
  • 6. Robuste Design Systems mit Storybook und Angular Menschen denken in Mustern 6 User Experience im Alltag
  • 7. Robuste Design Systems mit Storybook und Angular7 Menschen denken in Mustern User Experience im Alltag
  • 8. Robuste Design Systems mit Storybook und Angular8 Menschen denken in Mustern User Experience im Alltag
  • 9. Robuste Design Systems mit Storybook und Angular9 Und ohne Muster sind wir verloren.. User Experience im Alltag
  • 10. Robuste Design Systems mit Storybook und Angular • Menschen denken in Systemen/Mustern • mit ihnen sparen wir kostbare kognitive Belastung ein • Gewohnheiten navigieren uns durch den Alltag • Software ist heute Alltag User Experience - viele bekannte Muster 10
  • 11. Robuste Design Systems mit Storybook und Angular • Features müssen verständlich sein • Features müssen benutzbar sein • in anderen Worten: • Discoverability • Usability • Accessibility User Experience für Developer 11 Access denied
  • 12. Robuste Design Systems mit Storybook und Angular Enge Zusammenarbeit und gemeinsames Verständnis führt zu guter User Experience. Gute UX entsteht im Team! Dieser Talk soll das nötige Handwerkszeug für enge Zusammenarbeit geben Denn User Experience dreht sich vor allem um eins: Mission Statement 12 Menschen
  • 13. Robuste Design Systems mit Storybook und Angular13 Kollaboration ⚡ Fachbereiche Konsistenz ⚡ Projektalltag Skalierbarkeit ⚡ Agile Prozesse Menschen
  • 14. Robuste Design Systems mit Storybook und Angular • bilden die UX systematisch ab • strukturierte Dokumentation der Bestandteile • Anleitung zum Weiterbauen • sind das “Produkt für’s Produkt” • Basis zur Entwicklung neuer Produkte • stetige Weiterentwicklung Wie passen Design Systems dazu? 14
  • 15. Robuste Design Systems mit Storybook und Angular Problemstellungen 15 Konsistenz langfristig sichern integrierter Workflow flexible Prozesse einfacher Zugang
  • 16. Robuste Design Systems mit Storybook und Angular • echte, lebendige Komponenten • direkt benutzbar • gekapselt • Use Case-spezifisch • Technische Dokumentation Design System: Was ist das? 16 • Styleguide • statische, visuelle Dokumentation der Marke • “look & feel” • Pattern Library • Dokumentation der UI-Elemente
  • 17. Robuste Design Systems mit Storybook und Angular “Warum muss das heute so kompliziert sein?” 17
  • 18. Robuste Design Systems mit Storybook und Angular relevante Zielplattformen früher: Windows oder Web 18
  • 19. Robuste Design Systems mit Storybook und Angular relevante Zielplattformen heute: Windows, Mac, Linux, Web/PWA, iOS, Android 19
  • 20. Robuste Design Systems mit Storybook und Angular und es geht noch weiter 20
  • 21. Robuste Design Systems mit Storybook und Angular Stetig wachsender Zielmarkt 21
  • 22. Robuste Design Systems mit Storybook und Angular • extrem viele Geräteklassen • verschiedenste Eingabemöglichkeiten • viele Zielplattformen • völlig neue Möglichkeiten • völlig neue Fehlerquellen Stetig wachsender Zielmarkt 22
  • 23. Robuste Design Systems mit Storybook und Angular Moderne Design Systems: Bausteine 23 Branding Guidelines Komponenten- bibliothek Dokumentation Animation, a11y, etc. Inhalte isoliert iterativ erweiterbar brown field-Einsatz Prozess viele Plattformen viele Geräteklassen eigene Designsprache Kapselung Anforderungen }+
  • 24. Robuste Design Systems mit Storybook und Angular Design Systems: Zusammenfassung 24 Sammlung aller Komponenten klar definierte Use-Cases Zusammenspiel aller Disziplinen
  • 25. Robuste Design Systems mit Storybook und Angular Komponentenbasiertes Design 25
  • 26. Robuste Design Systems mit Storybook und Angular Komponentenbasiertes Design 26 Form Group Header Input Input Button Login
  • 27. Robuste Design Systems mit Storybook und Angular27
  • 28. Robuste Design Systems mit Storybook und Angular • Browserbasiert mit nativen Apps • Zusammenarbeit in Echtzeit • Prototyping • (rudimentäre) CSS-Generierung • Kommerziell, kostenfrei nutzbar (für öffentliche Projekte) Figma: Komponentenbasiertes Design 28
  • 29. Robuste Design Systems mit Storybook und Angular Figma: Komponentenbasiertes Design 29
  • 30. Robuste Design Systems mit Storybook und Angular Figma: Komponentenbasiertes Design 30 Demo Time bit.ly/ngds-figma
  • 31. Robuste Design Systems mit Storybook und Angular • Komponenten-Modell • Test von “Worst Case”-Werten • Fluid Design im Tool • Prototyping bildet Workflows ab Figma: Zusammenspiel mit Developer-Workflows 31
  • 32. Robuste Design Systems mit Storybook und Angular32
  • 33. Robuste Design Systems mit Storybook und Angular • Design System in Code abbilden • Schnittstelle zwischen Design & Code • isolierte Entwicklung von Komponenten • Vorbereitung auf Unit Tests • Dokumentation direkt an Komponenten Storybook 33
  • 34. Robuste Design Systems mit Storybook und Angular • framework-agnostisch • Open Source • Verwaltet von der JS Foundation • vielfältiges Plugin-Ökosystem • Möglichkeit von Snapshot Tests Storybook 34
  • 35. Robuste Design Systems mit Storybook und Angular Storybook am konkreten Beispiel 35
  • 36. Robuste Design Systems mit Storybook und Angular Storybook am konkreten Beispiel 36 Demo Time
  • 37. Robuste Design Systems mit Storybook und Angular Designer • einfache Abnahme & Freigabe • Testen am lebenden Subjekt • Konsens Developer • Edge Cases • schwierig zu erreichende States • lebendige Dokumentation Tester • Mock-Daten • Automatisierung • Eingrenzung auf Komponenten Storybook - wer profitiert davon? 37
  • 38. Robuste Design Systems mit Storybook und Angular Gesamtes Team • “Shared Vocabulary” • agile Dokumentation • steigende Produktivität Storybook - wer profitiert davon? 38
  • 39. Robuste Design Systems mit Storybook und Angular39
  • 40. Robuste Design Systems mit Storybook und Angular • verwendet das Konzept komponentenbasierter Softwareentwicklung • erlaubt die Kapselung von CSS (ViewEncapsulation) zur Vermeidung von monolithischem CSS • eröffnet einen möglichen Migrationspfad auf Web Components Angular 40
  • 41. Robuste Design Systems mit Storybook und Angular Angular: Komponenten 41 Click me![caption]="Click me!" (click)="…" Clickety![caption]=“Clickety!" (click)="…"
  • 42. Robuste Design Systems mit Storybook und Angular • Die Storybook-CLI erlaubt die Installation von Storybook in bestehende Projekte durch ein einziges Kommando: • sb init --use-npm • Das verwendete Framework wird automatisch erkannt und die Installation darauf angepasst • für einen Großteil der Projekte funktioniert der zero config Ansatz Storybook + Angular 42
  • 43. Robuste Design Systems mit Storybook und Angular • mit einer Angular CLI Erweiterung wird die Generierung der Komponenten leichter: • ng add @ngx-storybook/schematics • Komponenten lassen sich jetzt inklusive Story und Modul mit einem Kommando generieren: • ng g @ngx-storybook/schematics:c button Storybook + Angular 43
  • 44. Robuste Design Systems mit Storybook und Angular Storybook: Aufbau von Stories 44
  • 45. Robuste Design Systems mit Storybook und Angular Wrap-Up: Technologien 45 Universell einsetzbar
  • 46. Robuste Design Systems mit Storybook und Angular • echte Komponenten • modulare, isolierte Entwicklung • einfachere Wartbarkeit • brown field-geeignet • Dokumentation • konsistentere User Experience • Bonus: Unit-Tests profitieren von Mock-Daten Wrap-Up: Design Systems mit Storybook und Angular 46
  • 47. Robuste Design Systems mit Storybook und Angular47 User Experience Architect Andreas Wissel 🐦 @andreas_wissel 📨 andreas.wissel@innoq.com ✍ andreaswissel.com Vielen Dank!
  • 48. Robuste Design Systems mit Storybook und Angular Login Komponente 48
  • 49. Robuste Design Systems mit Storybook und Angular Login Komponente 49 Form Group Header Input Input Button Login
  • 50. Robuste Design Systems mit Storybook und Angular Die Button-Komponente in Storybook mit Angular Live Coding 50
  • 51. Robuste Design Systems mit Storybook und Angular51 Figma Projekt: bit.ly/ngds-figma Repository: github.com/andreaswissel/techlunch- design-systems Slides: bit.ly/techlunch-design-systems Links
  • 52. Robuste Design Systems mit Storybook und Angular52 Quellen https://twitter.com/DougCollinsUX/status/1021789284846788609 https://www.htc.com/us/newsroom/2019-03-26/ https://www.heise.de/select/ix/2017/11/1509663159694094 https://www.samsung.com/sg/refrigerators/family-hub-rf56n9740sg/ https://www.apple.com/shop/buy-watch/apple-watch-series-3/38mm-gps-silver-aluminum-white-sport-band https://support.apple.com/kb/sp770?locale=de_DE https://www.apple.com/de/shop/buy-ipad/ipad-pro https://www.apple.com/de/shop/buy-mac/macbook-pro https://www.apple.com/de/shop/buy-mac/imac https://www.microsoft.com/de-de/p/surface-studio-2/8sbjxm0m58t4 https://twitter.com/rsg/status/1148421102009344000 https://twitter.com/Talk_To_The_Hat/status/1166460235982233600 https://www.reddit.com/r/CrappyDesign/comments/c55puw/piss_poor_location/ https://twitter.com/DougCollinsUX/status/1122881214040420352