Ketterä kehitys käytännössä – TFS & Meteor Sami Poimala Ohjelmistoarkkitehti Sininen Meteoriitti Oy
Tavoitteet?
Ketterä kehitys
Projekti Julkaisu Iteraatio Päivä
Team Foundation Server
TFS:n ominaisuuksia Työkorttien hallinta Versionhallinta Jatkuva integraatio Monipuolinen raportointi => Team System on softatalon ERP Yhtenäiset työkalut kehitettävien sovellusten koko elinkaaren hallintaan
Työkortti
Prosessinohjausta? Vapaasti valittava prosessimalli! Käyttöliittymänä Visual Studio Excel Project Web access
Meteorin tuotekehitys
Meteor Sisällönhallintajärjestelmä Framework räätälöidyille web-pohjaisille ratkaisuille 2001 -> .NET Framework 3.5 53 projektia SQL Server 2005
Kehityskäytännöt 1-2 kk:n sprintit Koodikatselmoinnit Check-in policyt Hyllytys! Check-in policyt
Check-in
Check-in
Check-in
Check-in
Jatkuva integraatio Kaikki koodi käännetään automaattisesti jokaisen checkinin yhteydessä Samalla suoritetaan yksikkötestit Buildin tuloksista raportoidaan mailitse Dedikoitu palvelin huolehtii buildeista Käytössä Team Foundation Build –sovellus Build-serveriä kontrolloidaan Visual Studiolla Voinee mainita, että järjestelmä sinänsä ei ole mitenkään TFS-spesifinen. Meilläkinhän tämä oli ennen tehty Open source –osasilla.
Build-arkkitehtuuri VS 2008 TFS-serveri TFS-data Kehittäjä Kehittäjä tekee check-inin, josta muodostuu changeset, joka puolestaan viedään tietokantaan. 1. Check-in
Build-arkkitehtuuri VS 2008 TFS-serveri TFS-data TFS Build -serveri Kehittäjä TFS-data TFS-serveri VS 2008 Build server hakee lähdekoodin versionhallinnasta, kääntää sen ja lähettää tiedon käännöksestä (tai sen virheistä) takaisin TFS Build -serveri 1. Check-in > 2. Käännä
Valmis buildi sijoitetaan levyjakoon (kehittäjiä ym. varten) Build-arkkitehtuuri Kehittäjä TFS-data TFS-serveri VS 2008 TFS Build -serveri Deploy-hakemisto Valmis buildi sijoitetaan levyjakoon (kehittäjiä ym. varten) 1. Check-in > 2. Käännä > 3. Asenna
Build-arkkitehtuuri VS 2008 TFS-serveri TFS-data TFS Build -serveri Kehittäjä TFS-data TFS-serveri VS 2008 Projektista kiinnostuneet TFS Build -serveri Deploy-hakemisto TFS lähettää sähköpostilla build-raportit ja sijoittaa ne SharePoint-projektisivustolle, josta kuka vain voi katsoa, mitä projektissa on korjattu ja milloin. SharePoint 1. Check-in > 2. Käännä > 3. Asenna > 4. Tiedota
Asiakasprojektit
Build-arkkitehtuuri VS 2008 TFS-serveri TFS-data Kehittäjä Kehittäjä tekee check-inin, josta muodostuu changeset, joka puolestaan viedään tietokantaan. 1. Check-in
Meteor-alustasta haetaan projektin käyttämä versio. Build-arkkitehtuuri Kehittäjä TFS-data TFS-serveri VS 2008 Build server hakee lähdekoodin versionhallinnasta, kääntää sen ja lähettää tiedon käännöksestä (tai sen virheistä) takaisin Deploy-hakemisto TFS Build -serveri Meteor-alustasta haetaan projektin käyttämä versio. 1. Check-in > 2. Hae Meteor
Build-arkkitehtuuri VS 2008 TFS-serveri TFS-data TFS Build -serveri Kehittäjä TFS-data TFS-serveri VS 2008 Deploy-hakemisto TFS Build -serveri Web-saitti Valmis buildi sijoitetaan levyjakoon (kehittäjiä ym. varten) ja asennetaan web-sivustolle 1. Check-in > 2. Hae Meteor > 3. Käännä > 4. Asenna
Jatkuvan integraation edut Integrointiongelmat paljastuvat tehokkaasti Sovelluksen uusin versio on jatkuvasti nähtävissä ja testattavissa Buildit arkistoituvat levylle, joten tarvittaessa on helppo testata myös vanhoja versioita esim. virheen löytämiseksi
Ketteriä käytäntöjä
Tärkeimmät käytännöt Tasainen rytmi – tuloksia jatkuvasti Versionhallinta – jatkuva integraatio Parityöskentely Todellinen yhteistyö Laadun tuottaminen
Laadukas koodi Täyttää asiakkaan vaatimukset Täyttää vain asiakkaan vaatimukset On yksinkertaisin mahdollinen toteutus On ymmärrettävää ja selkeää
TFS Työkortti Check-in Build
Itsetutkiskelu ja Jälkipyykki
Kysyttävää? http://ketteratkaytannot.fi http://itpro.fi /asiantuntijaryhmat/ohjelmistokehitys/ sami.poimala@meteoriitti.com http://www.meteoriitti.com