Concepts of Code Quality
Maximilian Berghoff Andreas Haberberger
Concepts of Code Quality - Maximilian Berghoff & Andreas ...
Quelle:http://xkcd.com/844/
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisena...
Was ist CodeQuality?
Alle Maßnahmen, die dazu führen, dass Code
wartbar
verständlich
zugänglich
erweiterbar
austauschbar
b...
Also Maßnahmen, die die
Lebensdauer
und damit den
Wert
des Codes erhöhen.
Concepts of Code Quality - Maximilian Berghoff &...
1. Qualität schaffen
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße...
Source Code Management
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustra...
Linting
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-970...
Testing
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-970...
Unit Tests
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-...
Wann läuft mein Unittest durch?
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gnei...
Wann bekomme ich dann ein gutes Testergebnis?
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflo...
...und wie schreibe ich “testbaren” Code?
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower ...
Test Driven Development
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustr...
Integration Tests
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10...
e2e
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 W...
Verteilung
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-...
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzb...
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzb...
Testen an der Domain
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße...
Cucumber/Gherkin
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/...
Ubiquitous Language
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße ...
Business Need: Edit users
In order to have customer support an Admin want's to edit a user.
Scenario: Edit user data on be...
Behavior Driven
Development
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisena...
“Sauberen” Code schreiben
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaus...
Agile Methoden
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11...
2. Qualität messen
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 1...
Indikatoren
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D...
Code Metriken
(objektive Qualitätsmaßstäbe)
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflowe...
subjektive Qualitätsmaßstäbe
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisen...
Agile Methoden
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11...
3. Qualität
sicherstellen
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaus...
Tools
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074...
Metriken
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97...
Metriken
Scrutinizer Sonarqube
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneis...
Build
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074...
Build
Travis CI
shippableTeamcity
Jenkins
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower ...
Code Review
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D...
Code Review
Upsource
Github
Crucible
Gerrit Code Review
Gitlab
Concepts of Code Quality - Maximilian Berghoff & Andreas Ha...
Verständlicher Code
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße ...
Deploy Workflow
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/1...
Agile Methoden
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11...
Questions ?
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D...
- Maximilian.Berghoff@mayflower.de
- @ElectricMaxxx
- https://github.com/ElectricMaxxx
Concepts of Code Quality - Maximili...
Developer Camp Würzburg
16.+17.09.2016
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower Gmb...
- Slides: “The pyramid is a lie”
- Blog: “Testen an der Domaine”
Metrik:
- Scrutinizer: https://scrutinizer-ci.com
- Sonar...
Thank You
Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-9...
Nächste SlideShare
Wird geladen in …5
×

Concepts of Code Quality

653 Aufrufe

Veröffentlicht am

Code zu schreiben ist nicht besonders schwierig. Um guten Code zu schreiben braucht es dann schon etwas mehr. Aber erst, wenn man es schafft die hohe Qualität des eigenen Codes über die Laufzeit längerfristiger Projekte aufrecht zu erhalten und kontinuierlich zu dokumentieren, gewinnt man die Anerkennung und das Vertrauen seines Kunden. Diese DevSession zeigt Mittel und Wege auf, die eigene Codequalität langfristig messen, sicher zu stellen und durch die Messung sogar noch zu steigern.

Veröffentlicht in: Software
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
653
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
19
Aktionen
Geteilt
0
Downloads
7
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Concepts of Code Quality

  1. 1. Concepts of Code Quality Maximilian Berghoff Andreas Haberberger Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  2. 2. Quelle:http://xkcd.com/844/ Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  3. 3. Was ist CodeQuality? Alle Maßnahmen, die dazu führen, dass Code wartbar verständlich zugänglich erweiterbar austauschbar bleibt. Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  4. 4. Also Maßnahmen, die die Lebensdauer und damit den Wert des Codes erhöhen. Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  5. 5. 1. Qualität schaffen Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  6. 6. Source Code Management Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  7. 7. Linting Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  8. 8. Testing Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  9. 9. Unit Tests Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  10. 10. Wann läuft mein Unittest durch? Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  11. 11. Wann bekomme ich dann ein gutes Testergebnis? Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  12. 12. ...und wie schreibe ich “testbaren” Code? Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  13. 13. Test Driven Development Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  14. 14. Integration Tests Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  15. 15. e2e Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  16. 16. Verteilung Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  17. 17. Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  18. 18. Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  19. 19. Testen an der Domain Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  20. 20. Cucumber/Gherkin Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  21. 21. Ubiquitous Language Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  22. 22. Business Need: Edit users In order to have customer support an Admin want's to edit a user. Scenario: Edit user data on behalf of a customer Given a user with email "maximilian.berghoff@mayflower.de" When i change the username to "ElectricMaxxx" Then the user profile should display the username "ElectricMaxxx" Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  23. 23. Behavior Driven Development Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  24. 24. “Sauberen” Code schreiben Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg Robert C. Martin: Clean Code. A Handbook of Agile Software Craftsmanship. Prentice Hall, Upper Saddle River NJ u. a. 2008
  25. 25. Agile Methoden Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  26. 26. 2. Qualität messen Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  27. 27. Indikatoren Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  28. 28. Code Metriken (objektive Qualitätsmaßstäbe) Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  29. 29. subjektive Qualitätsmaßstäbe Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  30. 30. Agile Methoden Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  31. 31. 3. Qualität sicherstellen Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  32. 32. Tools Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  33. 33. Metriken Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  34. 34. Metriken Scrutinizer Sonarqube Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  35. 35. Build Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  36. 36. Build Travis CI shippableTeamcity Jenkins Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg Bamboo
  37. 37. Code Review Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  38. 38. Code Review Upsource Github Crucible Gerrit Code Review Gitlab Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg Stash/Bitbucket
  39. 39. Verständlicher Code Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  40. 40. Deploy Workflow Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  41. 41. Agile Methoden Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  42. 42. Questions ? Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg
  43. 43. - Maximilian.Berghoff@mayflower.de - @ElectricMaxxx - https://github.com/ElectricMaxxx Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg Kontakt - Andreas.Haberberger@mayflower.de - @A_Haberberger - https://github.com/ahaberberger
  44. 44. Developer Camp Würzburg 16.+17.09.2016 Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg https://developercamp.io/
  45. 45. - Slides: “The pyramid is a lie” - Blog: “Testen an der Domaine” Metrik: - Scrutinizer: https://scrutinizer-ci.com - Sonarqube: http://www.sonarqube.org/ Build: - Travis: https://travis-ci.org/ - Shippable: https://app.shippable.com/ - Teamcity: https://www.jetbrains.com/teamcity/ - Bamboo: https://de.atlassian.com/software/bamboo - Jenkins: https://jenkins.io/ Code Review - Crucible: https://de.atlassian.com/software/crucible - Upsource: https://www.jetbrains.com/upsource/ - Github: Github - Gitlab: https://about.gitlab.com/ - Gerit: https://www.gerritcodereview.com/ Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg Links und Quellen
  46. 46. Thank You Concepts of Code Quality - Maximilian Berghoff & Andreas Haberberger, Mayflower GmbH, Gneisenaustraße 10/11, D-97074 Würzburg

×