continouos integration eszközök ipari használata
DESCRIPTION
Continouos integration eszközök ipari használata. Paróczi Zsombor. A kezdetek. Egy ember, egy feladat , sok idő …. Klasszikus modellek. Szoftverfejlesztés iparággá válik. Megrendelő a központban Gyors eredmények Alaposan tesztelt szoftverek Többszáz ember egy projekten - PowerPoint PPT PresentationTRANSCRIPT
Continouos integration eszközök ipari használataParóczi Zsombor
A kezdetekEgy ember, egy feladat, sok idő…
2
3
Klasszikus modellek
4
Szoftverfejlesztés iparággá
válikMegrendelő a központban
Gyors eredmények
Alaposan tesztelt
szoftverek
Többszáz ember egy
projekten
Verziókezelő rendszerek
Agilis szoftverfejlesztés
XP
5
XPRövid fejlesztési ciklusok
Folyamatos kapcsolat a megrendelővel
TDD (Test-Driven-Development) !!!
6
Verziókezelő rendszerek
Checkout
Módosítás
Commit
Stabil, tesztelt, lefordított
verzióra igény
7
Verziókezelő + TDD
Build szerverek
BuildBot Hudson
8
Build szerverek
“Cloud” végzi a fordítást
Több platform
Több OS
Automatikus unit tesztelés
Performancia tesztek
http://build.chromium.org/
9
Ha szolgáltatást fejlesztünk
Mi vagyunk a szolgáltató
Egyedül nekünk kell “bináris”
Continuous integrationMódosítás után az új kód már éles rendszerben
üzemel(het)
10
5000+ fejlesztő
2000+ projekt
C++ és Java
Code review minden módosításra
120+ millió unit teszt naponta
Egyetlen repository
http://www.infoq.com/presentations/Development-at-Google
11
Saját fejlesztésű eszköztár
(külön csoport fejleszti)
Mindent mindenen tesztelnek
(OS/böngésző)
Mindenki mindenből a legfrissebb változatot használja (read-only
dependency)
Cloud és local build http://www.infoq.com/presentations/Development-at-Google
12
Naponta új verzió
Max. 1 hetes belső tesztelés
Bugtracker egy belső FB csoport
Saját fejlesztésű eszköztár
Egyetlen repositry
Nagyon sok programnyelv
Minden programnyelvre tesztkészlet
http://tinyurl.com/cnw8xy4
13
Elég sok hiba van az oldalon
Külön hiba megjelenés és gyakoriság naplózás
Nem minden frissítés jelenik meg mindenkinél
Gatekeeper
(jövőbeli újítások benne vannak az éles kódban,
csak korlátozva valamire)
http://tinyurl.com/cnw8xy4
14
Az élesítés előtt review
Saját alkalmazottakat értékelik, ez is számít,
mennyire nézik át egyes emberek kódját
Online kell lenni, mikor a saját kódod élesedik
Teljes bináris ~1 GB
Fordítási idő max. 10 perc, eljuttatni az összes
szerverhez max. 15 perc
http://tinyurl.com/cnw8xy4
15
Continouos integration
Nincsenek verziók, csak revíziók
Kód és teszt elválaszthatatlan
Push early, fail often