SlideShare una empresa de Scribd logo
1 de 19
Jak przekonać menadżera,
że czas na refaktoring
jest potrzebny?
Sebastian Łaciak
Dług techniczny
• Gdzie możemy go spotkać?
• Ktokolwiek widział, ktokolwiek wie?
• Czym jest?
 Nietestowalny / nietestowany kod
 Architektura lub jej brak
 Duplikacja kodu
 itd…
Jak walczyć z długiem?
• Dlaczego nie o refaktoringu itp.?
• Jak przekonać menadżera, że jest nam
potrzebny dodatkowy czas?
Priorytety
• Czysty kod
• Nowe technologie
• Rozwój
• Przyjemność z
pracy
• Poprawna
architektura
• Szybki
development
• Kolejne
funkcjonalności
• Redukcja kosztów
• Wyższy zysk
Programista Menadżer
One Team One Dream
Zaufanie
• Transparentność
• Widoczność
• Małe kroczki
Jakiego języka używać?
• Liczby
• Wykresy
• Metryki
• Kolory
• Cele
• Priorytety
Jak bardzo źle jest teraz?
• Ile mamy błędów zgłoszonych?
• Jak często klienci zgłaszają kolejne
problemy?
• Jak szybko sami jesteśmy w stanie znaleźć
luki?
Jak bardzo źle jest teraz?
• Ilu problemów jesteśmy świadomi, ale nie
chcemy / nie mamy czasu żeby je
poprawiać?
• Ile błędów wprowadziły ostatnie poprawki?
• Ile błędów wprowadziły próby rozszerzenia
funkcjonalności?
Analiza zysków i strat
• Ile kosztuje nas poprawianie błędów?
• Ile kosztuje rozszerzanie funkcjonalności?
• Ile będzie kosztować przepisanie /
refaktoring?
• Ile błędów średnio wprowadzamy i koszt
ich rozwiązania?
• Ile będzie kosztowało rozszerzanie?
Sonar
Plan
• Gdzie chcemy być za 3 – 5 lat?
• Jak chcemy tam dojść?
• Jaki jest szacunkowy koszt?
• Od czego zacząć (plan na najbliższy rok)?
Testowalność
• Jakie mamy pokrycie kodu?
• Czy testy jednostkowe są możliwe?
• Czy testerzy są świadomi specjalnych
przypadków?
• Jakie funkcjonalności są / nie są testowane
w regresjach?
Przypadki specjalne
• 5% przypadków zabiera 95% czasu
• Ilu klientów ich używa?
• Czy można zastąpić je standardowym
użyciem?
• Ile kosztuje ich utrzymanie?
Upraszczanie i standaryzacja
• Konwencje kodowania
• Formatery
• Technologie
• Architektura
• Narzędzia
Nowe możliwości
• Jakie funkcjonalności aktualnie są
niemożliwe / zbyt drogie?
• Co dostarczymy „za darmo”?
Idealne miejsce pracy
• Innowacyjność
• Rozwój
• Realny wpływ na to co się robi
• Satysfakcja
• Łatwiejsze pozyskiwanie i wdrażanie
nowych pracowników
Podsumowanie
„If you can't change your
organization,
change your organization!”
Martn C. Fowler
4Developers 2015: Jak przekonać managera, że czas na refaktoring jest potrzebny? - Sebastian Łaciak

Más contenido relacionado

Destacado

Kerajaan Samudera Pasai_Lisa Sapriati Pertiwi
Kerajaan Samudera Pasai_Lisa Sapriati PertiwiKerajaan Samudera Pasai_Lisa Sapriati Pertiwi
Kerajaan Samudera Pasai_Lisa Sapriati Pertiwi
Abu RaFa
 
Narrative structure, style & theory
Narrative structure, style & theoryNarrative structure, style & theory
Narrative structure, style & theory
Jojo Williams
 
Determinants of Cash holding in German Market
Determinants of Cash holding in German MarketDeterminants of Cash holding in German Market
Determinants of Cash holding in German Market
IOSR Journals
 
Analiza branzowa zajawka 2015
Analiza branzowa zajawka 2015Analiza branzowa zajawka 2015
Analiza branzowa zajawka 2015
Grupa PTWP S.A.
 
Nikolos Tesseyman's Portfolio
Nikolos Tesseyman's PortfolioNikolos Tesseyman's Portfolio
Nikolos Tesseyman's Portfolio
ntesseyman
 

Destacado (18)

F0562732
F0562732F0562732
F0562732
 
A Bird’s Eye View of Reality in Aurobindo’s Philosophy
A Bird’s Eye View of Reality in Aurobindo’s PhilosophyA Bird’s Eye View of Reality in Aurobindo’s Philosophy
A Bird’s Eye View of Reality in Aurobindo’s Philosophy
 
Kerajaan Samudera Pasai_Lisa Sapriati Pertiwi
Kerajaan Samudera Pasai_Lisa Sapriati PertiwiKerajaan Samudera Pasai_Lisa Sapriati Pertiwi
Kerajaan Samudera Pasai_Lisa Sapriati Pertiwi
 
A study on Ashoka’s inscriptions with the special focus on Maski Rock edict
A study on Ashoka’s inscriptions with the special focus on Maski Rock edictA study on Ashoka’s inscriptions with the special focus on Maski Rock edict
A study on Ashoka’s inscriptions with the special focus on Maski Rock edict
 
D0612025
D0612025D0612025
D0612025
 
Narrative structure, style & theory
Narrative structure, style & theoryNarrative structure, style & theory
Narrative structure, style & theory
 
16 FLYER
16 FLYER16 FLYER
16 FLYER
 
Presentation of the Laden company
Presentation of the Laden companyPresentation of the Laden company
Presentation of the Laden company
 
E0612629
E0612629E0612629
E0612629
 
Creativity and importance for a work of a leader
Creativity and importance for a work of a leaderCreativity and importance for a work of a leader
Creativity and importance for a work of a leader
 
C0561419
C0561419C0561419
C0561419
 
C0611219
C0611219C0611219
C0611219
 
Determinants of Cash holding in German Market
Determinants of Cash holding in German MarketDeterminants of Cash holding in German Market
Determinants of Cash holding in German Market
 
Analiza branzowa zajawka 2015
Analiza branzowa zajawka 2015Analiza branzowa zajawka 2015
Analiza branzowa zajawka 2015
 
Nikolos Tesseyman's Portfolio
Nikolos Tesseyman's PortfolioNikolos Tesseyman's Portfolio
Nikolos Tesseyman's Portfolio
 
Educational Vision of Muslims in India: Problems and Concerns
Educational Vision of Muslims in India: Problems and ConcernsEducational Vision of Muslims in India: Problems and Concerns
Educational Vision of Muslims in India: Problems and Concerns
 
B0560713
B0560713B0560713
B0560713
 
The 2016 Stuart Boat Show Presentation by Top Notch Marine
The 2016 Stuart Boat Show Presentation by Top Notch MarineThe 2016 Stuart Boat Show Presentation by Top Notch Marine
The 2016 Stuart Boat Show Presentation by Top Notch Marine
 

Similar a 4Developers 2015: Jak przekonać managera, że czas na refaktoring jest potrzebny? - Sebastian Łaciak

Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31
Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31
Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31
kraqa
 

Similar a 4Developers 2015: Jak przekonać managera, że czas na refaktoring jest potrzebny? - Sebastian Łaciak (20)

Dwa sposoby na pisanie aplikacji bez błędów
Dwa sposoby na pisanie aplikacji bez błędówDwa sposoby na pisanie aplikacji bez błędów
Dwa sposoby na pisanie aplikacji bez błędów
 
KICK ME
KICK MEKICK ME
KICK ME
 
Mity, które blokują Twoją karierę
Mity, które blokują Twoją karieręMity, które blokują Twoją karierę
Mity, które blokują Twoją karierę
 
Jak budujemy inteligentnego asystenta biznesowego
Jak budujemy inteligentnego asystenta biznesowegoJak budujemy inteligentnego asystenta biznesowego
Jak budujemy inteligentnego asystenta biznesowego
 
4Developers 2018: Sagi na frontendzie - czyli jak ułatwić sobie pracę ze skom...
4Developers 2018: Sagi na frontendzie - czyli jak ułatwić sobie pracę ze skom...4Developers 2018: Sagi na frontendzie - czyli jak ułatwić sobie pracę ze skom...
4Developers 2018: Sagi na frontendzie - czyli jak ułatwić sobie pracę ze skom...
 
Bee Talents - Jak pracujemy (2018)
Bee Talents - Jak pracujemy (2018)Bee Talents - Jak pracujemy (2018)
Bee Talents - Jak pracujemy (2018)
 
Tdd - Czyli jak tworzyć dobre jakościowo aplikacje
Tdd - Czyli jak tworzyć dobre jakościowo aplikacjeTdd - Czyli jak tworzyć dobre jakościowo aplikacje
Tdd - Czyli jak tworzyć dobre jakościowo aplikacje
 
Prezentacja agile telco
Prezentacja agile telcoPrezentacja agile telco
Prezentacja agile telco
 
Trzy kroki do Zgodności z BIM (Odcinek 08)
Trzy kroki do Zgodności z BIM (Odcinek 08)Trzy kroki do Zgodności z BIM (Odcinek 08)
Trzy kroki do Zgodności z BIM (Odcinek 08)
 
Wiosenne Wieczory ze Scrum 2 Estymacja i Planowanie
Wiosenne Wieczory ze Scrum 2 Estymacja i PlanowanieWiosenne Wieczory ze Scrum 2 Estymacja i Planowanie
Wiosenne Wieczory ze Scrum 2 Estymacja i Planowanie
 
SkładQA 2018 - Daniel Dec
SkładQA 2018 - Daniel DecSkładQA 2018 - Daniel Dec
SkładQA 2018 - Daniel Dec
 
Jak bardzo techniczny musi być tester?
Jak bardzo techniczny musi być tester?Jak bardzo techniczny musi być tester?
Jak bardzo techniczny musi być tester?
 
Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31
Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31
Od Produktywności do Sabotażu - Sławomir Radzymiński, KraQA #31
 
Jak przeskoczyć przepaść, stworzyć produkt technologiczny i na nim zarobić - ...
Jak przeskoczyć przepaść, stworzyć produkt technologiczny i na nim zarobić - ...Jak przeskoczyć przepaść, stworzyć produkt technologiczny i na nim zarobić - ...
Jak przeskoczyć przepaść, stworzyć produkt technologiczny i na nim zarobić - ...
 
Agile Silesia - Scrum w zespołach rozproszonych - Łukasz Kempny
Agile Silesia - Scrum w zespołach rozproszonych - Łukasz KempnyAgile Silesia - Scrum w zespołach rozproszonych - Łukasz Kempny
Agile Silesia - Scrum w zespołach rozproszonych - Łukasz Kempny
 
Agencja tłumaczeń - po co, dlaczego i jak?
Agencja tłumaczeń - po co, dlaczego i jak?Agencja tłumaczeń - po co, dlaczego i jak?
Agencja tłumaczeń - po co, dlaczego i jak?
 
Zawód: programista gier. Jak zacząć pracę w branży?
Zawód: programista gier. Jak zacząć pracę w branży?Zawód: programista gier. Jak zacząć pracę w branży?
Zawód: programista gier. Jak zacząć pracę w branży?
 
Od zera do Automattica
Od zera do AutomatticaOd zera do Automattica
Od zera do Automattica
 
O randce projektanta i użytkownika, czyli jak projektować produkty, które ...
O randce projektanta i użytkownika, czyli jak projektować produkty, które ...O randce projektanta i użytkownika, czyli jak projektować produkty, które ...
O randce projektanta i użytkownika, czyli jak projektować produkty, które ...
 
CI oraz CD w złożonym projekcie o małym budżecie
CI oraz CD w złożonym projekcie o małym budżecieCI oraz CD w złożonym projekcie o małym budżecie
CI oraz CD w złożonym projekcie o małym budżecie
 

4Developers 2015: Jak przekonać managera, że czas na refaktoring jest potrzebny? - Sebastian Łaciak

  • 1. Jak przekonać menadżera, że czas na refaktoring jest potrzebny? Sebastian Łaciak
  • 2. Dług techniczny • Gdzie możemy go spotkać? • Ktokolwiek widział, ktokolwiek wie? • Czym jest?  Nietestowalny / nietestowany kod  Architektura lub jej brak  Duplikacja kodu  itd…
  • 3. Jak walczyć z długiem? • Dlaczego nie o refaktoringu itp.? • Jak przekonać menadżera, że jest nam potrzebny dodatkowy czas?
  • 4. Priorytety • Czysty kod • Nowe technologie • Rozwój • Przyjemność z pracy • Poprawna architektura • Szybki development • Kolejne funkcjonalności • Redukcja kosztów • Wyższy zysk Programista Menadżer
  • 5. One Team One Dream
  • 7. Jakiego języka używać? • Liczby • Wykresy • Metryki • Kolory • Cele • Priorytety
  • 8. Jak bardzo źle jest teraz? • Ile mamy błędów zgłoszonych? • Jak często klienci zgłaszają kolejne problemy? • Jak szybko sami jesteśmy w stanie znaleźć luki?
  • 9. Jak bardzo źle jest teraz? • Ilu problemów jesteśmy świadomi, ale nie chcemy / nie mamy czasu żeby je poprawiać? • Ile błędów wprowadziły ostatnie poprawki? • Ile błędów wprowadziły próby rozszerzenia funkcjonalności?
  • 10. Analiza zysków i strat • Ile kosztuje nas poprawianie błędów? • Ile kosztuje rozszerzanie funkcjonalności? • Ile będzie kosztować przepisanie / refaktoring? • Ile błędów średnio wprowadzamy i koszt ich rozwiązania? • Ile będzie kosztowało rozszerzanie?
  • 11. Sonar
  • 12. Plan • Gdzie chcemy być za 3 – 5 lat? • Jak chcemy tam dojść? • Jaki jest szacunkowy koszt? • Od czego zacząć (plan na najbliższy rok)?
  • 13. Testowalność • Jakie mamy pokrycie kodu? • Czy testy jednostkowe są możliwe? • Czy testerzy są świadomi specjalnych przypadków? • Jakie funkcjonalności są / nie są testowane w regresjach?
  • 14. Przypadki specjalne • 5% przypadków zabiera 95% czasu • Ilu klientów ich używa? • Czy można zastąpić je standardowym użyciem? • Ile kosztuje ich utrzymanie?
  • 15. Upraszczanie i standaryzacja • Konwencje kodowania • Formatery • Technologie • Architektura • Narzędzia
  • 16. Nowe możliwości • Jakie funkcjonalności aktualnie są niemożliwe / zbyt drogie? • Co dostarczymy „za darmo”?
  • 17. Idealne miejsce pracy • Innowacyjność • Rozwój • Realny wpływ na to co się robi • Satysfakcja • Łatwiejsze pozyskiwanie i wdrażanie nowych pracowników
  • 18. Podsumowanie „If you can't change your organization, change your organization!” Martn C. Fowler