Lean Startup mit JavaScript

download Lean Startup mit JavaScript

of 79

  • date post

    27-May-2015
  • Category

    Software

  • view

    243
  • download

    0

Embed Size (px)

description

In diesem Vortrag werden drei zentrale Fragen gestellt (und beantwortet): Wie bringe ich meine Idee schnell auf den Markt? Wie finde ich heraus, ob meine Idee gut ist? Wie kann ich auf geänderte Anforderungen reagieren?

Transcript of Lean Startup mit JavaScript

  • 1. Lean Startup mit JavaScript

2. WHO AM I? Sebastian Springer aus Mnchen arbeite bei Mayower https://github.com/sspringer82 @basti_springer Consultant,Trainer,Autor 3. Was machen wir denn so? 4. Was erzhle ich euch heute? Welche Erfahrungen haben wir bei der Entwicklung innovativer Projekte gemacht? Welche Fehler sind passiert und was haben wir daraus gelernt? 5. Lean Startup? Business-Hypothesen-getriebene Entwicklung mit iterativen Releases und validiertem Lernen. 6. Wie bringe ich meine Idee schnell auf den Markt? Wie nde ich heraus, ob meine Idee gut ist? Wie erreiche ich eine schnelle Reaktionsfhigkeit? 7. Die Problemstellung Alexandra H. / pixelio.de 8. Das Internet - unendliche Weiten 9. Ein Kunde hat eine erfolgversprechende Idee 10. Der Kunde hat Geld I-vista / pixelio.de 11. Nachdem das geklrt ist, kann es losgehen. K. Bangwa / pixelio.de 12. #1 Wie bringe ich meine Idee schnell auf den Markt? 13. Das Web ist extrem schnelllebig 14. Unser Kunde muss der erste oder zumindest der erfolgreichste mit seiner Idee auf dem Markt sein. 15. Bevor es losgeht: Die Idee muss verstanden sein. 16. Und was hat das Ganze jetzt mit JavaScript zu tun? 17. Der Benutzer steht im Fokus, also mssen wir alles tun, um sichtbare Ergebnisse zu liefern. Das geht im Web mit JavaScript am schnellsten. Es ist berall verfgbar und in der Kombination mit HTML5 und CSS3 ein sehr mchtiges Werkzeug. 18. Was wird fr die Umsetzung bentigt? Gila Hanssen / pixelio.de 19. Eine Umgebung 20. Virtualisierung 21. VirtualBox, Puppet und Vagrant 22. $ vagrant up 23. Paketmanager Rainer Sturm / pixelio.de 24. Bower fr unser Frontend. NPM oder Composer fr das Backend, je nach verwendeter Technologie. 25. $ bower install save angular ! $ bower install save requirejs bower.json! dependencies: {! angular: ~1.2.16,! requirejs: ~2.1.11! } 26. Yeoman bietet Scaffolding fr Projekte. Es gibt Generatoren fr die verschiedensten Libraries und Frameworks. 27. $ yo angular:controller user! $ yo angular:directive myDirective 28. Frameworks & Libraries D o notreinventthe w heel 29. Das Backend Christa Nhren / pixelio.de 30. Anforderungen: Registrierung, Authentizierung und Datenhaltung. 31. Standardisierte Kommunikation Aka / pixelio.de 32. Vorhandene Tools nutzen, z.B. Werkzeuge zur Datenbank-Administration 33. Welche Technologien setzen wir im Backend ein? 34. Frontend Corinna Dumat / pixelio.de 35. Angular bietet Struktur fr eine Applikation und liefert zahlreiche Lsungsanstze out of the box. Auerdem dient es als Basis fr zustzliche Erweiterungen mit eigenen oder fremden Modulen. 36. Modulsystem zum Laden von Dateien und Ausen von Abhngigkeiten. Verfgt ber einen eigenen Optimizer. 37. D3 dient zur Manipulation von Dokumenten basierend auf Daten. D3 setzt sehr stark auf existierende Standards wie HTML, CSS und SVG. 38. Testing? Rike / pixelio.de 39. Wir testen nur Kernkomponenten und Features, von denen wir wissen, dass sie lnger in unserer Applikation bleiben. 40. Keine! Experimente! Tim Reckmann / pixelio.de 41. Keep it simple N o overengineering 42. #2 Wie nde ich heraus, ob meine Idee gut ist? 43. Wir brauchen Hypothesen! Hansjrg Keller / pixelio.de 44. 10.000 Neuregistrierungen im ersten Monat 45. Jeder Nutzer generiert pro Woche 10 Beitrge 46. Ein durchschnittlicher Registrierungsprozess dauert 2 Minuten. 47. SMART Spezisch Messbar Akzeptiert Realistisch Terminiert Independent Negotiable Valuable Estimatable Scalable Testable INVEST 48. Messen roja48 / pixelio.de 49. So ziemliche jede Aktion auf der Seite muss aufgezeichnet werden. Vom einfachen Pageload ber Aktionen wie Mausklicks oder Workows bis hin zu Fehlermeldungen. 50. Auch die Dauer bestimmter Aktionen ist relevant, z.B. Ladezeiten, Durchlaufzeiten, etc. 51. Fire and Forget Siegfried Fries / pixelio.de 52. Die Messwerte kontinuierlich beobachten hamma / pixelio.de 53. Die Messwerte regelmig hinterfragen. 54. Tool der Wahl: Google Analytics 55. Wir brauchen Feedback! 56. Forum anlegen, FAQ sammeln, kontextabhngige Feedbackformulare, die einfach erreichbar sind, Realtimechat mit Applikationssupport. 57. #3 Wie erreiche ich eine schnelle Reaktionsfhigkeit? 58. Continuous Deployment 59. Die Hrde, ein neues Release zu erstellen, muss sehr klein sein. Im Idealfall ist es lediglich ein Mausklick. 60. Features ein- und ausschalten pogobuschel / pixelio.de 61. Features werden im Frontend und Backend an-/abgeschaltet. Per Konguration werden Features, Routen etc. deaktiviert. 62. angular.module(app.routes).config(function( $stateProvider, $urlRouterProvider, $config) {! $urlRouterProvider.otherwise('/list');! ! if ($config.isEnabled(forum)) {! $stateProvider.state('forum', {! url: '/forum',! template: tplForum,! controller: 'ForumCtrl'! });! } 63. A/B-Testing Erich Westendarp / pixelio.de 64. Die Zielgruppe wird unterteilt und jede Gruppe erhlt eine andere Version der Applikation oder bestimmter Features. Das Verhalten der Gruppen wird gemessen. Erlaubt Rckschlsse auf die Akzeptanz bestimmter Varianten. 65. Modularisierung Initiative Echte Soziale Marktwirtschaft IESM / pixelio.de 66. Ein Modul pro Feature. Jedes Feature hat sein eigenes Verzeichnis mit allen Komponenten. RequireJS und AngularJS in Kombination zur Modularisierung. 67. define(['angular', 'ngRouter', text!../../tpl.html'],! function(angular, router, tpl) {! angular.module(app.index', [ui.router']);! ! }! );! 68. Kontinuierliche Modernisierung Michael Loeper / pixelio.de 69. Fazit Tim Reckmann / pixelio.de 70. Fehler zulassen 71. Wir wollen nicht alle Fehler im Vorfeld vermeiden, sondern eine Infrastruktur, die das Erkennen von Fehlern und deren Behebung sehr einfach macht. 72. Rahmen zum Lernen aufspannen 73. Benutzer in den Entwicklungsprozess einbeziehen 74. Fragen? Rainer Sturm / pixelio.de 75. KONTAKT Sebastian Springer sebastian.springer@mayflower.de ! Mayflower GmbH Mannhardtstr. 6 80538 Mnchen Deutschland ! @basti_springer ! https://github.com/sspringer82