10 syytä, miksi niin monet ohjelmistoprojektit epäonnistuvat

10 syytä, miksi niin monet ohjelmistoprojektit epäonnistuvat

-BBC:n digitaalista mediaa koskeva aloite (DMI) epäonnistui hallintovirheiden ja viivästyneiden toimitusten vuoksi. Se oli hanke, johon kaikki olivat kiinnittäneet huomiota, koska sen oli tarkoitus digitalisoida BBC:n tuotanto.

-FBI:n virtuaalisen tapaustiedoston (Virtual Case File, VCF) epäonnistumiseen oli useita syitä, mutta epärealistiset odotukset olivat yksi tärkeimmistä syistä. Hankkeeseen tuhlattiin noin 104,5 miljoonaa dollaria veronmaksajien rahoja.

-US Fedin uusi järjestelmä riehui ensimmäisenä iltana, kun se otettiin käyttöön, ja se toimitti 28 miljardia dollaria korkoina väärille jäsenpankeille.

Miten hyvin suunnitellut ohjelmistoprojektit voivat epäonnistua? Oliko ne todella hyvin suunniteltu? Tai niin he luulivat. Valitettavasti monet hankkeet epäonnistuvat; itse asiassa siitä on tullut niin yleinen tapaus, että ihmiset tuskin puhuvat siitä, keskustelevat siitä, lukuun ottamatta niitä ihmisiä, jotka olivat joutuneet kokemaan epäonnistumisen. Vuonna 2013 projektinhallintayritys Innotas paljasti, että noin 50 prosentilla sen tutkimista yrityksistä oli epäonnistumisia projektinhallinnassa. Nyt 4 vuotta myöhemmin tarina ei ole juurikaan erilainen. Mikä aiheuttaa ohjelmistoprojektien epäonnistumisen? Olemme tutkineet joitakin syitä havaintojemme perusteella, mitä mieltä sinä olet?

1. Liiketoiminnan tavoitteiden ja projektin tulosten yhteensovittamattomuus

Voidaan sanoa, että prioriteetit ovat erilaisia eri yrityksissä. Joillakin yrityksillä keskitytään liiketoiminnallisten tavoitteiden saavuttamiseen, kun taas toisilla tavoitteena on toimittaa projekti aikataulussa ja budjetissa. Tällä matkalla he eksyvät väärälle tielle ja eksyvät. Jos sekä liiketoiminnan tavoitteet että projektin tulokset ovat linjassa keskenään, on todennäköistä, että ohjelmisto ei epäonnistu. Tämä ei kuitenkaan ole lainkaan helppo tehtävä.

2. Ei pysty ymmärtämään, mitä priorisoida

Tärkeiden hankkeiden priorisoinnin laiminlyönti. Projektinhallintapäällikkö istuu alas sidosryhmien ja muiden yrityksen arvovaltaisten johtajien kanssa päättääkseen hankkeiden painopisteistä. Sen jälkeen he jakavat resurssit ja henkilöstön ja harkitsevat budjettia ja aikaa. Joskus asiat menevät pieleen, kun liiketoiminnan tavoitteet sovitetaan yhteen projektin tulosten kanssa, ja tämä voi johtua myös siitä, että prioriteetteja ei ole asetettu oikein.

3. Epämääräiset vaatimukset

Yksi ensimmäisistä vaiheista ohjelmistokehityssyklissä on asiakkaan vaatimusten ymmärtäminen. Ellei vaatimuksia ole selkeästi kartoitettu ja asiakas on hyväksynyt niitä, ette ehkä ole molemmat samaa mieltä.
samalle sivulle kehityssyklin lopussa.

4. Aikarajoitteet

Aikarajoitteet estävät usein kehittäjiä saamasta asiakkaalta selkeyttä projektiin, mikä voi johtaa runsaaseen uudelleentyöstämiseen ja resurssien jakamiseen ja samalla negatiiviseen julkisuuteen yritykselle. Juuri ennen kuin ryhdyt kehittämään projektia, on tärkeää tehdä vaatimusanalyysi ja varmistaa, että kaikki, myös asiakas, ovat selvillä siitä, miltä lopputuote tulee näyttämään.

5. Huono aikataulun arviointi

Kehittäjät ovat ihmisiä, ja heidän päivittäinen työaikansa on rajallinen. Aikatauluta aika loogisella tavalla, jotta projekti saadaan valmiiksi odotusten mukaisesti ja kehittäjä on vielä elossa ja voi ottaa vastaan uuden projektin.

6. Ei ole valmis pidentämään määräaikaa

Projektipäälliköiden ja sidosryhmien on oltava huomaavaisia, kun he antavat kehittäjätiimin työskennellä. Kyllä, ylimääräinen työpäivä lisää kuluja, mutta se on sen arvoista pitkällä aikavälillä.

7. Epärealistisen aikataulun antaminen vain viivästyttää hanketta.

Toisin kuin sidosryhmät ja projektipäälliköt luulevat, epärealististen aikataulujen asettaminen aiheuttaa yritykselle vain suuria tappioita. Suunnittele hanke aina siten, että odotukset ovat kohtuulliset työn määrästä riippuen.

8. Viestintäpuutteet

Huono viestintä on syy moniin epäonnistumisiin elämässä. Itse asiassa se on niin tärkeää kaikille projektiin osallistuville, että ihmissuhdetaitoja käsittelevien ammattikurssien käyminen on ehdottomasti plussaa. Viestintä ja viestit on jaettava asianmukaisesti, sillä ristiriitaiset näkemykset ja mielipiteet voivat tappaa hankkeen jo ennen kuin se on valmis lentoon. Projektipäällikön tehtävänä on toimia välittäjänä kaikkien tiimiin osallistuvien henkilöiden välillä. Varmista, että viestit tavoittavat kaikki, erityisesti silloin, kun kyse on hankkeen lopputuloksesta.

9. Ei saada oikeita henkilöitä työhön

Epäasianmukainen henkilöstömitoitus on toinen syy hankkeen epäonnistumiseen. Sinulla on tiimi hyviä kehittäjiä. Mutta luuletko, että he ovat ”yhden koon joukkue”? Pystyvätkö he hoitamaan minkä tahansa heille osoitetun projektin? Saatat joutua jakamaan ihmisiä heidän taitojensa mukaan. Oikea joukko ihmisiä, vaikka ne olisivat kalliita, osoittautuu hyödylliseksi. Loppujen lopuksi hankkeen laatu ei saa kärsiä. Tehottomat tai keskinkertaiset kehittäjät viivästyttävät hanketta, kun taas 10x-kehittäjä pitää hankkeen ohjakset käsissään.

10. Huono testaus

Ohjelmistotestit epäonnistuvat. Kun kaikki on tehty, huomaat, että koodausongelma on vielä korjaamatta. Jos koodin kehitysvaiheessa ei ole virstanpylväitä, projekti voi epäonnistua. Voit aloittaa automaatiotestauksen, jossa testaaja kirjoittaa skriptejä ja käyttää toista ohjelmistoa sovelluksen/ohjelmiston eri toimintojen testaamiseen. Ohjelmistotestauksen eri tyypit ovat

  • Yksikkötestaus
  • Integrointitestaus
  • Toiminnallinen testaus
  • Järjestelmän testaus
  • Stressitestaus
  • Suorituskyvyn testaus
  • Käytettävyystestaus
  • Hyväksymistestaus
  • Regressiotestaus
  • Betatestaus

Se on aikaa vievää, mutta ehdottomasti vaivan ja ajan arvoista. Testauksen avulla voit ymmärtää projektin laadun; se on eräänlainen todentamis- ja validointiprosessi.

Johtopäätös

On tärkeää, että ensin ymmärretään hanke ja vasta sen jälkeen kohdennetaan resurssit ja työvoima. Anna heille riittävästi aikaa työskennellä projektin parissa ja resursseja silloin, kun he niitä tarvitsevat. Noudata edellä mainittuja vinkkejä, ja olet todennäköisesti onnistunut.
Viimeinen sana: Varmista, että järjestelmävaatimukset on määritelty ja vahvistettu asianmukaisesti. Sinulla ei ole varaa ongelmiin järjestelmän kanssa, kun ohjelmisto on valmis käyttöön.
Lisätietoja….

  1. 10 syytä, miksi ohjelmistoprojektit epäonnistuvat
  2. Yleisimmät syyt ohjelmistoprojektien epäonnistumiseen

Flickr.com/ Patrizio Cuscito


Kirjoittajasta: Reema työskentelee PHPBabun ajatusjohtajana.

Jätä kommentti