keskiviikko 24. lokakuuta 2007

Lokitus

Tänään oli lyhyt kokous Teemun kanssa, jossa käytiin läpi tarkemmin tuota käytöstatistiikan keräämistä 'Fantista. Kokouksen päätteeksi lupasin selvittää Teemulle, voinko jollain tavalla exportata käytöstatistiikkaa siten että sitä voisi esim. jollakin Python-skriptillä parseroida. Tein nopean implementaation 'Fanttiin, joka kerää log4j:llä tietoa käyttäjistä.

Esim 1: Sisäänkirjautuminen
2007-10-24 18:14:42,523 WARN http-8080-Processor25 org.acegisecurity.event.authentication.LoggerListener - Authentication event AuthenticationSuccessEvent: admin; details: org.acegisecurity.ui.WebAuthenticationDetails@fffd148a: RemoteIpAddress: 127.0.0.1; SessionId: F6EC8A3B0B0053E977C7A2C77C3A767D

Eli tuo on yksi rivi agilefant.log-tiedostossa, jossa näkyy että 24.10. klo 18:14 käyttäjä 'admin' kirjautui Fanttiin.

Esim 2:
2007-10-24 18:16:24,232 INFO http-8080-Processor23 fi.hut.soberit.agilefant.web.RefreshUserInterceptor - Name: admin Action: fi.hut.soberit.agilefant.web.IterationAction@ed3e63

Tässä esimerkissä nähdään, että käyttäjä admin kutsuu IteraatioActionia, eli tekee Iteraatio-tason asioita.

Esim 3:
2007-10-24 18:17:21,525 INFO http-8080-Processor24 fi.hut.soberit.agilefant.web.RefreshUserInterceptor - Name: admin Action: fi.hut.soberit.agilefant.web.BacklogItemAction@1f7dab1

Tässä esimerkissä admin kutsuu BacklogItemActionia eli esim päivittää backlog-itemin effortLeftiä.


Teemu: riittääkö tämän tason lokitus teille? Pystytteko parseroimaan tuosta tarvittavan datan?

Avoimen lähdekoodin yhteisön tuki

Iteration X:n kanssa käytiin keskustelua mahdollisuudesta lokittaa Agilefantissa käyttöstatistiikkaa. Agilefant ei tällä hetkellä mahdollista tällaista toimintaa, eikä mitään siihen viittaavaa ole keskusteluissa asiakkaan kanssa ollut esillä.

On nähtävissä, että Agilefantin käyttäjillä tulee helposti ns. ykisttäistarpeita, jotka olisi toteutettava raa'asti koodaamalla. Muita mahdollisia ovat tuntikirjanpito, vaatimusten linkittäminen backlogitemeihin tms.

Tällaista open-source yhteisön osallistumista ei tueta hyvin; dokumentaatio on puutteelista ja vähäistä. Tämä on pitkälti seurausta Agilefantin skoopista: Fantti on proof-of-concept --työkalu, jota kehitetään akateemisen tutkimuksen ohella ja tukena. En itse usko, että kolmansien osapuolten kehitystyön tukeminen olisi järkevää resurssien käyttöä tämän ohjelmatyökurssin puitteissa (SEPA-kurssi taas on vähän toinen juttu... täytyypä Ronin kanssa pohtia, kuinka iso homma tuon koodaaminen olisi ja ehkä Jarilta kysellä, onko tällainen SEPA-kurssin puolesta hyvä juttu). Jatkokehitettävyys onkin sitten toinen juttu... teknistä speksiä on luvassa ja siitä varmaan jotain hyötyä open-source kehittäjille on.

sunnuntai 21. lokakuuta 2007

Iteration X on viimeinkin täällä

Olemme suunnitelleet Fantin käyttöä jo jonkin aikaa, mutta blogin sisäänajo on jäänyt tekemättä. Maranello on näköjään kirjoitellut senkin edestä :)

Lyhyesti, olemme jo asentaneet Agilefantin meidän palvelimelle, ja Agilefanttia tulee käyttämään kaikki ryhmämme jäsenet. Asennus onnistui hyvin. Emme ole kuitenkaan vielä päässeet ottamaan Fanttia varsinaisesti käyttöön verkkoteknisistä syistä. Kirjoitan asennuskokemuksistamme ja muista suunnitelmistamme tänne myöhemmin.

Muutamia kysymyksiä on tullut mieleen:
  1. Onko Agilefanttia mahdollista käyttää Javan vitosversiolla?
  2. Tarjoaako Agilefant jotain hyvää tietoa (esim. logia) sen käytöstä? Haluaisimme SEPA-työssämme arvioida kuinka paljon aikaa ryhmän jäsenillä kuluu Agilefantin käyttämiseen.

perjantai 19. lokakuuta 2007

Käyttäjänäkökulma

SEPA tulee rikastamaan etenkin 'Fantti-projektin vaatimusmäärittelyä, koska saamme nyt ns. neutraalin käyttäjänäkökulman. Varsinkin kunkin sprintin vaatimusten analysoinnin yhteydessä voimme haastatella Iteration X-ryhmää, miten he 'Fantin käyttäjinä kokisivat uudet toiminnallisuudet. Saamme myös tärkeää palautetta tämän blogin kautta, mihin asioihin tulisi 'Fantin kehityksessä kiinnittää huomiota.

keskiviikko 17. lokakuuta 2007

Toinen pilottiryhmä

Kuulin testauskurssin (T-76.5613) luennoitsijalta, että ainakin yksi ryhmä on valinnut kurssin harjoitustyöaiheekseen Agilefantin testaamisen. Tämä nähdäkseni sopii hyvin tähän SEPA-aiheeseen ja tuo minulle ja Ronille lisää sisältöä SEPA:n suorittamiseen.

sunnuntai 14. lokakuuta 2007

Product backlog käyttäjäpalautteen hallinnassa

Nooralta tuli backlogitemien täggäykseen liittyvä ominaisuustoiveen tarkennus. Päätin heittää kommentit suodattamattomana Agilefantin product backlogiin. On mielenkiintoista nähdä, saammeko 'Fanttiin paljonkin kehitysehdotuksia. Aikaisemmin syksyllä vastaavia toiveita tuli 'Fantti-tiimin korviin (toistaiseksi hyvin suppean) open source -yhteisön taholta.

Jarnolle kysymyksiä: pitäisikö 'Fanttiin totetuttaa käyttäjille ja sidosryhmille jonkinlainen palautekanava, jonkinlainen backlog inbox?

perjantai 12. lokakuuta 2007

Kick-off

Agilefanttia markkinoitiin oikeaan käyttöön!

Tämä blogi on tarkoitettu dokumentaatioksi TKK:n ohjelmistokehityskurssin ohella tehtävälle SEPA-kurssille. Tämän SEPA-aiheen kantavana voimana on ajatus, että backlogien hallintatyökalu Agilefantia (www.agilefant.org) kehittävä ryhmä - Team Maranello (Roni ja Ilkka)- antaa koulutusta ja tukea Agilefantin käyttöön. Vastapuolena Iteraatio X (Teemu ja Pekka) käyttä 'Fanttia omassa ohjelmistokehitysprojektissaan ja kirjoittelee kokemuksistaan.

Ensimmäisen palaverin agendalla oli prosessimallien selvittelyä ja selittelyä; 'Fantin asennuksen suunnittelua sekä Team Maranellon backlogien esittelyä. Päätimme hoitaa SEPA-kurssin dokumentointivaatimukset bloggaamalla. Täytyypä kysellä kurssin järjestältä, voiko SEPA-dokumentin palauttaa yhteisvoimin vai täytyykö blogista kaivella erilleen molempien SEPA-ryhmien tuotokset. Kurssin osalta keskusteltiin myös mahdollisuudesta palauttaa vaatimustenmäärittelydokumentteja hieman tiuhemmalla tahdilla kuin kurssin ohjeistuksessa on.

'Fantin Product Ownerille (Jarnolle) tuli samantien vinkkiä backlogitem-toiveen muodossa. Noora (Iteraatio X:n project manager) olisi halunnut 'Fanttiin ominaisuuden, jolla samaan kategoriaan kuuluvia backlogitemeitä voisi kiinnittää toisiinsa. Sidosryhmiin liittyen sovittiin, että blogiin voidaan antaa kirjoitusoikeudet tarvittaessa muillekin kuin SEPAa tekeville. Käytännössä tämä tarkoittaa mentoreita ja 'Fantin Product Owneria.

Alustavasti puheltiin, että ryhnmä Iteration X ottaisi aina 'Fantin releasien yhteydessä uusimman version käyttöönsä. X:n prosessimalli oli iteraatioiden osalta hyvin samanlainen kuin Team Maranellollakin. X:n suuriin haasteisiin kuuluu ehdottomasti oman Product Ownerin löytäminen ja käytännöistä sopiminen. Tässäpä X:n PO:lle hieno tilaisuus tutustua pioneerityökaluun :)