Successfully reported this slideshow.
Your SlideShare is downloading. ×

Evolving architecture 4 QualityExcites 2017

Ad

Evolving Architecture
@dpokusa

Ad

https://commons.wikimedia.org/wiki/File:Tecnology_Life_Cycle.png

Ad

Quality means doing it right
when no one is looking
- Henry Ford

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Ad

Loading in …3
×

Check these out next

1 of 57 Ad
1 of 57 Ad

Evolving architecture 4 QualityExcites 2017

Download to read offline

When developing a system, it is very easy to cross a certain boundary – on the one hand we want to predict all possibilities and changes that can happen in our project. On the other hand, when we are under the time pressure, we take shortcuts which could in the end increase cost of the smallest changes. How to deal with “overdesign”? How, at the same time, not to close for improvement and changes? When should we make crucial technical decisions and when to accept technical debt? This talk is about true stories, mostly about huge mistakes, but also about decisions that in the end were very sucessfull. The talk is dedicated to all of those who don’t want to end up with a project that needs to be rewritten whenever we want to add a new button. The session is for all of those who care.

When developing a system, it is very easy to cross a certain boundary – on the one hand we want to predict all possibilities and changes that can happen in our project. On the other hand, when we are under the time pressure, we take shortcuts which could in the end increase cost of the smallest changes. How to deal with “overdesign”? How, at the same time, not to close for improvement and changes? When should we make crucial technical decisions and when to accept technical debt? This talk is about true stories, mostly about huge mistakes, but also about decisions that in the end were very sucessfull. The talk is dedicated to all of those who don’t want to end up with a project that needs to be rewritten whenever we want to add a new button. The session is for all of those who care.

Advertisement
Advertisement

More Related Content

Advertisement

Evolving architecture 4 QualityExcites 2017

  1. 1. Evolving Architecture @dpokusa
  2. 2. https://commons.wikimedia.org/wiki/File:Tecnology_Life_Cycle.png
  3. 3. Quality means doing it right when no one is looking - Henry Ford
  4. 4. CZAS FUNKCJONALNOŚĆ ZASOBY
  5. 5. CZAS FUNKCJONALNOŚĆ ZASOBY
  6. 6. CZAS FUNKCJONALNOŚĆ ZASOBY
  7. 7. CZAS FUNKCJONALNOŚĆ ZASOBY
  8. 8. JAKOŚĆ CZASFUNKCJONALNOŚĆ ZASOBY
  9. 9. JAKOŚĆ CZASFUNKCJONALNOŚĆ ZASOBY
  10. 10. JAKOŚĆ CZASFUNKCJONALNOŚĆ ZASOBY
  11. 11. JAKOŚĆ CZASFUNKCJONALNOŚĆ ZASOBY
  12. 12. fot. Iza Janoszek, Radio Eska
  13. 13. OVERDESIGN
  14. 14. DIE
  15. 15. DRYDIE
  16. 16. UNDERDESIGN
  17. 17. KISS
  18. 18. YAGNIKISS
  19. 19. TECHNOLOGY FREEDOM
  20. 20. TECHNOLOGY PRISON
  21. 21. READABILITY CONSIDERATIONS
  22. 22. EXECUTION TIME PREPARATION TIME MAINTENANCE TIME
  23. 23. P + (N*E) + M
  24. 24. P + (N*E) + M
  25. 25. P + (N*E) + M WASTE
  26. 26. P + (N*E) + M Profit* WASTE
  27. 27. (N*E) > P + M ?
  28. 28. >
  29. 29. BALANCE
  30. 30. SEPARATION
  31. 31. 1. Klient zawsze oczekuje jakości,
  32. 32. 1. Klient zawsze oczekuje jakości, 2. Jakość nie jest wartością 0:1,
  33. 33. 1. Klient zawsze oczekuje jakości, 2. Jakość nie jest wartością 0:1, 3. Podejmuj decyzje najpóźniej jak to możliwe,
  34. 34. 1. Klient zawsze oczekuje jakości, 2. Jakość nie jest wartością 0:1, 3. Podejmuj decyzje najpóźniej jak to możliwe, 4. Kod źródłowy testów nie jest mniej ważny od kodu produkcyjnego!
  35. 35. 1. Klient zawsze oczekuje jakości, 2. Jakość nie jest wartością 0:1, 3. Podejmuj decyzje najpóźniej jak to możliwe, 4. Kod źródłowy testów nie jest mniej ważny od kodu produkcyjnego! 5. Nigdy nie zapominaj o refaktoryzacji,
  36. 36. 1. Klient zawsze oczekuje jakości, 2. Jakość nie jest wartością 0:1, 3. Podejmuj decyzje najpóźniej jak to możliwe, 4. Kod źródłowy testów nie jest mniej ważny od kodu produkcyjnego! 5. Nigdy nie zapominaj o refaktoryzacji, 6. "Scrappy" zostanie na dłużej niż sądzisz,
  37. 37. 1. Klient zawsze oczekuje jakości, 2. Jakość nie jest wartością 0:1, 3. Podejmuj decyzje najpóźniej jak to możliwe, 4. Kod źródłowy testów nie jest mniej ważny od kodu produkcyjnego! 5. Nigdy nie zapominaj o refaktoryzacji, 6. "Scrappy" zostanie na dłużej niż sądzisz, 7. Pisz biblioteki, nie frameworki,
  38. 38. 1. Klient zawsze oczekuje jakości, 2. Jakość nie jest wartością 0:1, 3. Podejmuj decyzje najpóźniej jak to możliwe, 4. Kod źródłowy testów nie jest mniej ważny od kodu produkcyjnego! 5. Nigdy nie zapominaj o refaktoryzacji, 6. "Scrappy" zostanie na dłużej niż sądzisz, 7. Pisz biblioteki, nie frameworki, 8. Nie zamykaj się na nowe technologie, ale równocześnie ograniczaj ich ilość,
  39. 39. 1. Klient zawsze oczekuje jakości, 2. Jakość nie jest wartością 0:1, 3. Podejmuj decyzje najpóźniej jak to możliwe, 4. Kod źródłowy testów nie jest mniej ważny od kodu produkcyjnego! 5. Nigdy nie zapominaj o refaktoryzacji, 6. "Scrappy" zostanie na dłużej niż sądzisz, 7. Pisz biblioteki, nie frameworki, 8. Nie zamykaj się na nowe technologie, ale równocześnie ograniczaj ich ilość, 9. Staraj się równoważyć ilość testów pod względem ich kosztów utrzymania,
  40. 40. 1. Klient zawsze oczekuje jakości, 2. Jakość nie jest wartością 0:1, 3. Podejmuj decyzje najpóźniej jak to możliwe, 4. Kod źródłowy testów nie jest mniej ważny od kodu produkcyjnego! 5. Nigdy nie zapominaj o refaktoryzacji, 6. "Scrappy" zostanie na dłużej niż sądzisz, 7. Pisz biblioteki, nie frameworki, 8. Nie zamykaj się na nowe technologie, ale równocześnie ograniczaj ich ilość, 9. Staraj się równoważyć ilość testów pod względem ich kosztów utrzymania, 10. Korzystaj z testów automatycznych zgodnie z ich przeznaczeniem,
  41. 41. 1. Klient zawsze oczekuje jakości, 2. Jakość nie jest wartością 0:1, 3. Podejmuj decyzje najpóźniej jak to możliwe, 4. Kod źródłowy testów nie jest mniej ważny od kodu produkcyjnego! 5. Nigdy nie zapominaj o refaktoryzacji, 6. "Scrappy" zostanie na dłużej niż sądzisz, 7. Pisz biblioteki, nie frameworki, 8. Nie zamykaj się na nowe technologie, ale równocześnie ograniczaj ich ilość, 9. Staraj się równoważyć ilość testów pod względem ich kosztów utrzymania, 10. Korzystaj z testów automatycznych zgodnie z ich przeznaczeniem, 11. Nie traktuj testów jako odrębnego bytu.
  42. 42. ABOUT software-empathy.pl @dpokusa
  43. 43. @dpokusa ABOUT SPREADIT.PL 18 LISTOPADA 2017
  44. 44. Q&A

×