Infotehnoloogia ettevõtjale 1147 sõna

4.1 IT-arenduse õppetunde

Sisukord

Mida siis raha eest saime? (koodistatistika)

Praktika näitab, et tehnilisi küsimusi ei õnnestu hoida lahus ärilistest.

IT-ga on võimalik teha kõike, aga kui hakkame tegema, siis selgub, et kõik maksab.

Seetõttu on oluline analüüsida, mida arendusraha kulutamine annab. Mõned elementaarsed arvutused ühe projekti kolme etapi kohta:

  DHX Etalonteostus DVK täiendamine DHX Adapter
Olulisus MUST HAVE MUST HAVE NICE TO HAVE
    (peaaegu)  
Kasutuslugusid 6 n/a 6
Testilugusid 9 33 34
Dok-n, ridu 1130 n/a 6250
Koodiridu (LOC) 2000 21 400 45 000
Faile 125   3374
Kaustu 58   273
Maksumus €31,580 €19,900 €35,800
€/LOC €16 €0.93 €0.80
€/Kasutuslugu €5300   €6000
LOC/Kasutuslugu 333   7500

Odav tarkvara? (koodistatistika)

  Projekt A (üks moodul) Projekt B Projekt C
Meetod Kosemudel Kosemudel Agiilne
Eesmärk täislahendus täislahendus MVP*
Koodiridu (LOC) ca 30 000 5000 4000
Maksumus €11,500 €150,000 €10,000
€/LOC €0.33 €30 €3
Kasutuslugusid ca 8 n/a 8 + 2
Dokumentatsioon jah jah ei
Dok-ni kvaliteet kehv suurepärane  
Kasutatav ei jah jah
Üldkvaliteet kehv suurepärane väga hea

*MVP, Minimal Viable Product, minimaalne toimiv lahendus

Also

Kosemudeliga või agiilselt?

Sama funktsionaalsus, pärast kosemudeli ebaõnnestumist:

  Kosemudeliga Agiilselt
Eesmärk “Täisvärk” MVP*
Maksumus €190,000 €10,000
Teostatud ei (katkestatud) jah
Aeg 9 kuud (katkestatud) 2 nädalat
Tulemus kasutatav õppetunnina, koodi kasutamine problemaatiline jah

*MVP, Minimal Viable Product, minimaalne toimiv lahendus

Arvutus näitavad, et agiilarendus võib sama funktsionaalsuse anda 10-15 korda odavamalt ja 10-20 korda kiiremalt.

Asi ei tarvitse olla 10X kiiremates programmeerijates - tõenäoliselt ei olegi - vaid selles, et agiilne projekt sunnib Tellijat teisiti tegutsema.

Also

10X software engineer

Vali jõukohane raskus

Basic
Nice to Have
Äge
Ülikõva

Ambitsioonitase on äärmiselt oluline.

Teeme kõigepealt baastaseme ära, siis täiendame ja alles seejärel viime asja ägedaks ja ülikõvaks - kui veel tahtmist, ressurssi ja tegelikku vajadust tolleks momendiks jagub.

Codemonkeyism

  Projekt A Projekt B
Programmeerimine C B/A
Infohaldus C C
Joonis C C/A
Kaardistav analüüs B B
Kontseptsiooni loov analüüs C B
Optimeeriv analüüs C A
Originaalne mõtlemine C B
Probleemi analüüs C A
Protsessi v töövoo kujundamine C C
Kasutajaliides C C
Lihtsus C C/A
Kavast kinnipidamine C B
Kirjutamine C B/A
Raporteerimine C C
Selgitamine C A/C
Spetsifitseerimine C C/A
Tegevuskava koostamine C C
Muutuste eestvedaja C C

C- nõrk, vajalik Tellija tugev järelevalve ja osade asjade ise ette- või ärategemine; B - hea; A - väga hea, üle ootuste.

Rida probleeme:

*kindlasti on tugevaid, välisturule või erasektorile töötavaid ettevõtteid, kelle suhtes väide ei kehti.

Kust tekib keerukus?

Keerukus tekib juba haridussüsteemis.

Tulemuseks on inimesed ‘not capable of simple’.

Ilmingud:

If I Had More Time, I Would Have Written a Shorter Letter – Blaise Pascal (1657)

Lihtsus ei teki iseenesest.

Lihtsuse saavutamine nõuab jõupingutust.

Lihtsus võib nõuda rohkem oskust kui keerukus.

Lihtsuse hoidmine nõuab jõupingutust.

Lihtsusele pürgiva jõu olemasolu on projekti õnnestumise eeldus.

Minimeeri vaheprodukti

80 mlrd $ aastas - ostab IT-d USA föderaalvalitsus.

Kasutust leiab ainult 1/3 ostetud tarkvarast.

End users fail entirely to use nearly 45% of features procured and rarely use another 19% percent of those features. – Balter, B (2011) Toward a More Agile Government: The Case for Rebooting Federal IT Procurement. Public Contract Law Journal.

Vaheprodukt (WIP, Work-In-Progress):

Lõpp-produkt (End Product):

Minimeeri töösolevat produkti (minimise WIP).

Projekti- ja arendusdokumentatsiooni rohkus ainult suurendab WIP-i.

Mis töötab? (dokumentatsioon)

  Projekt A Projekt B Project C Projekt D Projekt E
Dok kvaliteet 3+ 5 3 4- 5+
Eraldi dok-ja ei jah ei ei jah

5+ suurepärane, üle ootuste, Tellija osalusvajadus minimaalne; 4- hea, vajalik suur Tellija osalus; 3 - vastuvõetav, suure Tellijapoolse tagaajamisega.

Kvaliteetdokumentatsioon ei teki muu arendustöö kõrvalt, vaja eraldi inimest.

Inimene teeb kvaliteetset dokumentatsiooni, kui

Mis töötab (hankimine)

Nordeconi projektijuht: “Allhankijate probleeme? Ei ole. Kui tahad järgmine kord ka tööd saada, siis teed korralikult”.