budapest.rb 201010

17
agilis és extrém ruby Tompa Tamás 2010.10.21

Upload: digital-natives

Post on 29-Nov-2014

552 views

Category:

Documents


5 download

DESCRIPTION

Agilis és extrém Ruby

TRANSCRIPT

Page 1: Budapest.rb 201010

agilis és extrém ruby

Tompa Tamás

2010.10.21

Page 2: Budapest.rb 201010

a cím

• scrum + xp = ruby

• agilis és extrém projektek => ruby

• agilis fejlesztés, extrém programozás, ruby

Page 3: Budapest.rb 201010

miből főzünk?

• Agile Manifesto• Startup Manifesto• Scrum• Extreme Programming• Principle of least surprise• Readable code• Don't repeat yourself• Convention over Configuration

Page 4: Budapest.rb 201010

hogy függ össze?

• kihívás: gyorsan és olcsón kell szállítani

• megoldás: produktivitás és karbantarthatóság

• kihívás: folyamatosan változó igények, folyamatos fejlődés, új technológiák

• megoldás: ruby – gyorsan változik – előnyére

Page 5: Budapest.rb 201010

• write less and get the same => productivity

• less bugs to fix and less code to maintain => productivity

• readable code => self documenting => productivity

• TDD – BDD => improving code quality => productivity

Page 6: Budapest.rb 201010

MIRE JÖTTÜNK RÁ?

Page 7: Budapest.rb 201010

scrum

• kell egy Product Owner, akit a csapat személyesen ismer

• a PO-nak kell legyen egy Product Backlog-ja, amit a csapat előzetesen megbecsült

• a csapatnak kell egy Burndown Chart, és egy velocity érték

• a csapatot senki sem zavarhatja a Sprintközben

Page 8: Budapest.rb 201010

scrum

• user story – mérete és megfogalmazása kulcs fontosságú

• estimation meeting – a tervezés előtt előkészítés, nem kellenek a meglepetések

• daily standup – nem számonkérés, nincs vezetője, önszerveződő

• a módszertan minden elemét be kell tartani, nem lehet belőle „válogatni” DE lehet adaptálni, fejleszteni - tudatosan

Page 9: Budapest.rb 201010

xp

• pair programming– akár minden nap, 1-2 óránként váltva

– akár csak a projekt kritikus részére

– a párokat sprintenként rotálhatjuk

– code review-t majdnem teljesen megoldja• automatizált build / testing

– ezzel kezdődik a projekt

– addig nincs kódolás, amíg nincs „környezet”

• TDD / BDD

Page 10: Budapest.rb 201010

xp

• Jó minőségű kódhoz kell, hogy több szempontból / több ember által vizsgált legyen

• Karbantartható kód: kifizetődőbb, mintha évente újraírnánk a rendszert (full redesign)

• Fejlesztő motivációja: érdekesebb a feladat, folyamatosan tanul, nincs magára hagyva

Page 11: Budapest.rb 201010

ruby

• Bontsd egyszerű részekre – a komplexitás bonyolult hibákhoz vezet

• Minél alacsonyabb szintű komponensek

• A komponensek Ruby GEM-ek, nem Rails pluginok > általánosak

• Önálló, független > önmagában tesztelhető, felhasználható egységek

Page 12: Budapest.rb 201010

environment

• Fejlesztői környezet folyamatos karbantartása

• Fejlesztői teendők akár párhuzamos sprint-ben > scrum team / maintenance team

• Deployment előkészítése – system check

• Deployment validálása – build check

• capistrano kiegészítések

Page 13: Budapest.rb 201010

kártyák

• Egyszerű és átlátható (1 oldal!)

• Mindig szem előtt van (falon)

• Hordozható (megbeszélésre)

• Nem engedi elfelejteni a fontos dolgokat

• Nem engedi „torzítani” a szabályokat

Page 14: Budapest.rb 201010

kártyák

Page 15: Budapest.rb 201010

kártyák

• Hamarosan magyarul!

• Addig is: http://agileinaflash.blogspot.com/

Page 16: Budapest.rb 201010

a nagy változás

• Változtatási „akciótervek”:a) sok apró változtatás, lépcsőzetesen idővel eléri a

célját

b) egyszerre meglépjük a teljes egészet

• b) a helyes

• 2-3 próbálkozásra sikerülni is fog

Page 17: Budapest.rb 201010

folyt köv

• Blogot indítottunk - olvassátok: http://digitalnatives.blog.hu/

• Ruby fejlesztőket keresünk - jelentkezzetek:[email protected]