Toodangusse minek. • Väldi käsitööd. Sellega kaasnevad vead. • Kasuta seda tulemust, mis sa continuous integration vahenditega juba valmis tegid. • Kui ei saa siis tee selgeks, miks ei saa. Elimineeri need põhjused ja kasuta ikka. • Kui siis ka ei saa siis kasuta vähemalt samu build skripte. ... muudmoodi liigub asi kontrollimatuse suunas. • Proovi saavutada olukord, kus versioonihaldusest tulev asi on kompileeruv ja vajadusel pakenduv kohe, ilma lisakonfigureerimisteta. Sõltuvuste haldus: Sõltuvused koos lähtekoodiga repositooriomis. Sõltuvused hallatakse vahenditega - Ivy, Maven. Rakenduse konfiguratsioon: • Dünaamiline, sõltub keskkonnast. • Staatiline, luuakse rakenduse ehitamisel. • Healthy mix. Proovi saavutada olukord, kus versioonihaldusest tulev asi on kompileeruv ja vajadusel pakenduv kohe,
lihtsam. DEVELOPMENT ● collective code ownership kõik võivad suvalises punktis muudatusi teha ● automated acceptance tests tehakse enne kui midagi kliendile üle antakse; süsteemi testid, mis antakse üle ka kliendile (on koodi osa) DELIVER ● continuous integration tähendab, et kui keegi mingit koodi muudab/versioonihaldusesse lisab, siis kood korjatakse versioonihaldusest üles, tehakse build, lähevad testid käima, kui on probleem siis teavitus teamile emailile. ● continuous deployment CUSTOMER COLLABORATION klient saab nt arendusserveris/testserveris rakendust vaadata saab anda kohe tagasisidet, et kas ta mõtles nii ja soovib seda; mida kiiremini tagasiside tuleb, seda lihtsam muudatusi teha; kliendiga suhtlus chati vormis skype, fleep jmt
Ivy, Maven o Rakenduse konfiguratsioon: Dünaamiline, sõltub keskkonnast Staatiline, luuakse rakenduse ehitamisel Healthy mix o Konfiguratsioon: .properties fail, .ini faili, .yaml XML, servlet Andmebaas JNDI Lähtekood … o Proovi saavutada olukorda, kus versioonihaldusest tulev asi on kompileeriv ja vajadusel pakenduv kohe, ilma lisaknfigureerimisteta Virtualiseerimine o Arendus mitmele operatsioonisüsteemile Arendus Testimine o Erinevatele operatsioonisüsteemidele kompileerimine (continuous integration) o Töölaua/serveripargi virtualiseerimise vahendid: Parallels desktop VM Workstation Virtualbox- tasuta