0
Kaip Agile skatina gerųjų praktikų panaudojimą<br />Sergejus Barinovas (@sergejusb)<br />http://sergejus.blogas.lt<br />
Kodėl Agile neįmanomas be gerųjų praktikų panaudojimo<br />Sergejus Barinovas (@sergejusb)<br />http://sergejus.blogas.lt<...
Tai nėrateorinis pristatymas<br />
Tai yra praktinis pristatymas apie mums iškilusias problemas<br />
Šaltas dušas #1<br />2 savaičių sprinte kūrimo darbai sudaro tik 5 dienas*<br />* naujai Agile komandai<br />
Scrum aritmetika<br />2 savaitės = 10 darbo dienų<br />- 20% (2 dienos) Scrum ritualams<br />- 1,5 dienos integracijai ir ...
Šaltas dušas #2<br />Be tinkamo technologinio pasiruošimo naujos Agile komandos nespėja laiku<br />
Šis pristatymas apie tai kaip mes bandome didinti kūrimui skirtas dienas iki 7+ (~30%)<br />
Gerosios programavimo praktikos<br />Naktinis surinkimas (nightlybuild)<br />Nuolatinė integracija (continuousintegration)...
pre-Agile laikai<br />
Apie ką nepasakosiu<br />PROD<br />
Prieš 1,5 metų naudojome tik paprasčiausias praktikas<br />
Naudotos praktikos<br />Visas kodas versijų kontrolės sistemoje<br />SVN<br />Kodas kompiliuojamas specializuotame servery...
Agile laikai<br />
Sprintas #1, #2<br />Mes esame per lėti!<br />
Išryškėjo mūsų problemos<br />Laiko rijikai<br />Pastovus rankinis diegimas<br />Pilnai rankinis testavimas<br />Integraci...
Diegimo spūstys vaizdžiai<br />Komanda (diegia)<br />ReleaseManager<br />PROD<br />Komandos (laukia eilės)<br />
Kova su laiko rijikais<br />Integracijos atidedamos į pabaigą<br />Nuolatinis surinkimas Commit metu<br />Integraciniai te...
Kova su kodo baime<br />Mažas kodo pakeitimas reikalauja pilno testavimo (regresijos tikrinimas)<br />Modulių testai<br />...
Kova su diegimo spūstimis<br />Diegimo paketai<br />MSBuildskriptai<br />Vieno paspaudimo principas<br />Visoms aplinkoms ...
Ištrauka iš laiško po diegimo<br />Paketai prasisuko be klaidų – jei kokio nors funkcionalumo nėra ar kas nors veikia neko...
Įgyvendintos praktikos sutaupo 1-2kūrimo dienas per sprintą<br />
Agile++ laikai<br />
Kas toliau?<br />
Gyvenimo tiesa<br />Panaikinus didesnę problemą, išryškėja mažesnė<br />
Išryškėjo naujos problemos<br />3 DEV ir INT aplinkos skiriasi nuo PROD<br />Kartais aplinkos „sugadinamos“ ir atstatymas ...
Nuolatinis diegimas į pagalba!<br />
Nuolatinis diegimas<br />Galimybė automatiškai pakelti naują serverį<br />Virtualios mašinos sukūrimas<br />Infrastruktūro...
Prieš pabaigą...<br />... automatinis serverio sukūrimas ir konfigūravimas<br />
Apibendrinant...<br />
Gerąsias praktikas pradėjome taikyti ne todėl, kad tai „jėga“, tiesiog nenorėjome būti lėti<br />
Šaltas dušas #3<br />Agile kultūra komandose prigyja greičiau nei gerosios praktikos!<br />Gal verta nuo jų ir pradėti?<br />
Ačiū! Klausimai?<br />Sergejus Barinovas (@sergejusb)<br />http://sergejus.blogas.lt<br />
Upcoming SlideShare
Loading in...5
×

Kaip Agile skatina gerųjų praktikų panaudojimą

800

Published on

...arba kodėl Agile neįmanomas be gerųjų praktikų panaudojimo ir kaip mes buvom priversti jas naudoti

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
800
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Kaip Agile skatina gerųjų praktikų panaudojimą"

  1. 1. Kaip Agile skatina gerųjų praktikų panaudojimą<br />Sergejus Barinovas (@sergejusb)<br />http://sergejus.blogas.lt<br />
  2. 2. Kodėl Agile neįmanomas be gerųjų praktikų panaudojimo<br />Sergejus Barinovas (@sergejusb)<br />http://sergejus.blogas.lt<br />
  3. 3. Tai nėrateorinis pristatymas<br />
  4. 4. Tai yra praktinis pristatymas apie mums iškilusias problemas<br />
  5. 5. Šaltas dušas #1<br />2 savaičių sprinte kūrimo darbai sudaro tik 5 dienas*<br />* naujai Agile komandai<br />
  6. 6. Scrum aritmetika<br />2 savaitės = 10 darbo dienų<br />- 20% (2 dienos) Scrum ritualams<br />- 1,5 dienos integracijai ir rankiniam diegimui<br />- 1,5 dienos rankiniam testavimui<br />= 5 darbo dienos!<br />
  7. 7. Šaltas dušas #2<br />Be tinkamo technologinio pasiruošimo naujos Agile komandos nespėja laiku<br />
  8. 8. Šis pristatymas apie tai kaip mes bandome didinti kūrimui skirtas dienas iki 7+ (~30%)<br />
  9. 9. Gerosios programavimo praktikos<br />Naktinis surinkimas (nightlybuild)<br />Nuolatinė integracija (continuousintegration)<br />Modulių testai (unittests)<br />Automatizuotas diegimas<br />Automatizuoti funkciniai ir UI testai<br />Diegimo paketai<br />Nuolatinis diegimas (continuousdeployment)<br />
  10. 10. pre-Agile laikai<br />
  11. 11. Apie ką nepasakosiu<br />PROD<br />
  12. 12. Prieš 1,5 metų naudojome tik paprasčiausias praktikas<br />
  13. 13. Naudotos praktikos<br />Visas kodas versijų kontrolės sistemoje<br />SVN<br />Kodas kompiliuojamas specializuotame serveryje pagal paklausimą arba naktį<br />TeamCity<br />Pavieniai modulio testai<br />MSTest<br />NUnit<br />
  14. 14. Agile laikai<br />
  15. 15. Sprintas #1, #2<br />Mes esame per lėti!<br />
  16. 16. Išryškėjo mūsų problemos<br />Laiko rijikai<br />Pastovus rankinis diegimas<br />Pilnai rankinis testavimas<br />Integracijos atidedamos į pabaigą<br />Kodo baimė<br />Mažas kodo pakeitimas reikalauja pilno testavimo (regresijos tikrinimas)<br />Diegimo spūstys<br />Nuo 9 val. vakaro gyva eilė diegimui<br />1-2 komandos atstovų asmeninis dalyvavimas<br />
  17. 17. Diegimo spūstys vaizdžiai<br />Komanda (diegia)<br />ReleaseManager<br />PROD<br />Komandos (laukia eilės)<br />
  18. 18. Kova su laiko rijikais<br />Integracijos atidedamos į pabaigą<br />Nuolatinis surinkimas Commit metu<br />Integraciniai testai<br />Pastovus rankinis diegimas<br />Automatinis diegimas į DEV aplinkas (3 iš viso) iš TeamCity serverio<br />Pilnai rankinis testavimas<br />Modulių ir integraciniai testai<br />Funkciniai ir UI testai (dar neturime daug)<br />SoapUI<br />Selenium<br />
  19. 19. Kova su kodo baime<br />Mažas kodo pakeitimas reikalauja pilno testavimo (regresijos tikrinimas)<br />Modulių testai<br />Geriausia turėti žmogų su patirtimi<br />Gali pareikalauti kodo pertvarkymo<br />Verslo logika atskirti nuo saugyklos<br />Pirma kaip atskira užduotis, paskui privalomai<br />Integraciniai testai<br />Sąveika su duomenų baze, Web servisu ir pan.<br />
  20. 20. Kova su diegimo spūstimis<br />Diegimo paketai<br />MSBuildskriptai<br />Vieno paspaudimo principas<br />Visoms aplinkoms (3 DEV, INT, PrePROD, PROD)<br />Paruošimas užtrunka tik pradžioje<br />Pagaminami pilnai arba dalinai automatiškai (surinkimo metu TeamCity serveryje)<br />Jokio asmeninio komandų dalyvavimo diegimo metu<br />Centralizuotas diegimo paketų paleidimas keliuose serveriuose<br />PowerShellskriptai<br />
  21. 21. Ištrauka iš laiško po diegimo<br />Paketai prasisuko be klaidų – jei kokio nors funkcionalumo nėra ar kas nors veikia nekorektiškai – duokit žinoti.<br /> <br />Beje, šįpenktadienį buvo sudiegta 13 releasų į 4 aplinkas – tai reiškia, kad 52 releasai per dieną... Tai kada mus pasivys Googlas ar Facebookas su savo 10 releasų per dieną ...<br /> <br />Have a niceday,<br />Laisvis.<br />
  22. 22. Įgyvendintos praktikos sutaupo 1-2kūrimo dienas per sprintą<br />
  23. 23. Agile++ laikai<br />
  24. 24. Kas toliau?<br />
  25. 25. Gyvenimo tiesa<br />Panaikinus didesnę problemą, išryškėja mažesnė<br />
  26. 26. Išryškėjo naujos problemos<br />3 DEV ir INT aplinkos skiriasi nuo PROD<br />Kartais aplinkos „sugadinamos“ ir atstatymas užima kelias valandas<br />Nauji serveriai nėra lengvai pakeliami<br />
  27. 27. Nuolatinis diegimas į pagalba!<br />
  28. 28. Nuolatinis diegimas<br />Galimybė automatiškai pakelti naują serverį<br />Virtualios mašinos sukūrimas<br />Infrastruktūros konfigūravimas<br />Trečios šalies produktų diegimas<br />Mūsų sistemos diegimas<br />Galimybė vykdyti nuolatinį automatinį viso serverio testavimą<br />Galimybė daryti diegimus apkeičiant serverius<br />Pakėlimo skriptai tampa dokumentacija<br />
  29. 29. Prieš pabaigą...<br />... automatinis serverio sukūrimas ir konfigūravimas<br />
  30. 30. Apibendrinant...<br />
  31. 31. Gerąsias praktikas pradėjome taikyti ne todėl, kad tai „jėga“, tiesiog nenorėjome būti lėti<br />
  32. 32. Šaltas dušas #3<br />Agile kultūra komandose prigyja greičiau nei gerosios praktikos!<br />Gal verta nuo jų ir pradėti?<br />
  33. 33. Ačiū! Klausimai?<br />Sergejus Barinovas (@sergejusb)<br />http://sergejus.blogas.lt<br />
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×