sunnuntai 28. helmikuuta 2010

Beyond Software Architecture

Luke Hohmann, Beyond Software Architecture : Creating and Sustaining Winning Solutions. Addison-Wesley, Boston, MA, USA, 2003.

Luke Hohmann on yhdysvaltalainen ohjelmistoalan konkari, joka on urallaan ollut tekemässä monenlaisia juttuja. Nuorempana hän oli junioripariluistelun kansallista kärkeä Yhdysvalloissa. Hohnmann on muiden asioiden ohella myös agile-menetelmien kannattaja.

Ohjelmistoarkkitehtuuri on ohjelmiston keskeisten osien ja niiden välisten suhteiden kuvaus. Kuvaukseen käytetään tyypillisesti yläkäsitteitä, ja niitä piirrellään laatikkoina, nuolina jne. Nimensä mukaisesti Beyond Software Architecture menee softa-arkkitehtuuria pidemmälle ja tarkastelee, millä tavoin liiketoiminnan ja teknologian välinen suhde toimii -- tai miten sen tulisi toimia. Ideaalitapauksessahan ohjelma tai ohjelmisto tarjoaa jonkinlaista hyötyä käyttäjälleen. Usein kuitenkin ohjelmistot tuottavat kärsimystä joko käyttäjille, tekijöille tai molemmille. Kirja on periaatteessa käytännön läheinen opas kärsimyksen vähentämiseen softa ohjelmistoyrityksen sisällä.

Hohmann aloittaa ohjelmistoarkkitehtuurista käyden läpi peruskäsitteitä. Jos tarkoitus on toistuvasti voittaa tarjouskilpailuja tai kilpailijoita, arkkitehtuuriin on voitava tuoda uusia toiminnallisuuksia ilman, että sen vakaus tai eheys suuresti kärsii. Parhaassa tapauksessa fiksu arkkitehtuuri voi tarjota kilpailuedun.  Hohmann käsittelee tuotehallintaa, jonka tehtävä on suunnitella ja ylläpitää tuotetta, so. toiminnallisuuksia ja ominainaisuuksia, jotka muodostavat tuotteen (tai ratkaisun). Tuotehallinta kytkeytyy läheisesti yrityksen liiketoimintasuunnitelmaan: tuotteeseen, hinnoitteluun, jakeluun ja markkinointiin. Niinpä Hohmannin mukaan softa-arkkitehteja tulisi olla kahdenlaisia: teknisiä arkkitehtejä ja markkoinnillisia arkkitehtejä, joka kaiketi kääntyy tuotepäälliköksi.

Liiketoimintasuunnitelma kertoo, miten yrityksen on tarkoitus saada rahaa. Ohjelmistoalalla, joka on monella tapaa poikkeava perinteisistä aloista, keskeistä on lisensointi: miten ja millä ehdoin yrityksen  ohjelmistoa tarjotaan käytettäväksi. Hohmann käy läpi lisensointimalli- ja toimitusvaihtoehtoja. Tuotteen (ja katteen) kannalta keskeisiä asioita ovat myös asennus-, päivitystavat. Paljon käsityötä vaativat asennukset saattavat olla kalliita myös toimittajalle kaikkine mahdollisine ongelmineen (se "ai niin joo" -vaihe). Päivitykset ovat joissain tapauksissa siinä mielessä pahempia, että ne eivät ole riippumattomia päivitettävästä versiosta. Lopuksi Hohmann keskustelee tuotejulkistuksista (release), konfiguroinneista, lokeista, tietoturvasta.

Kirjassa on tiivistelmät kunkin luvun lopussa. Teksti on helppolukuista, ja joissain tapauksissa se tuntuu tekevän tikusta asiaa. Monin paikoin on otsikoituja alilukuja, joissa on vain yksi kappale. Jotenkin uutta asiaa tuntui olevan vähän; monet asiat ovat tulleet selviksi työelämän kautta.  Ehkä kirja palvelee jonkinlaisena johdatuksena softaliiketoimintaan teknisille tyypeille ja softa-arkkitehtuureihin liiketoimintatyypeille, en tiedä.

Ei kommentteja:

Lähetä kommentti