Folyamat · Együttműködés
Minden funkcióhoz írott spec – mert az elképzelés fejlesztés közben is változik
Az ügyfélprojektek legdrágább pillanata nem egy bug, hanem az, amikor egy követelmény félkész kódban változik meg. A mi válaszunk nem látványos, de működik: nálunk egyetlen funkció fejlesztése sem indul el addig, amíg nincs róla egy rövid, írott spec, amit az ügyfél jóváhagyott.
Milyen hibát előz meg ez
A forgatókönyv mindig ugyanaz. Egy hívásban megbeszélünk egy funkciót, mindenki bólogat, elindul a fejlesztés – aztán félúton kiderül, hogy az ügyfél egészen mást képzelt, mint mi, vagy közben ő maga is továbbgondolta az egészet. Ez senkinek nem a hibája: az alapítók akkor ismerik meg igazán a saját terméküket, amikor látják formát ölteni, és ez a felismerés valóban sokat ér. Csakhogy ha félkész kóddal találkozik, annak ára van: újra kell dolgozni, mindenki frusztrált, és mindkét oldalon ott marad a rossz érzés, hogy a másik „nem azt csinálja, amiben megegyeztünk”.
Megtanultuk, hogy ezt folyamatproblémaként kezeljük, és folyamattal is oldjuk meg – nem fegyelmi kérdésként, amiért valakit hibáztatni kellene. Ez lett az Invoice Guru-projekt egyik legfontosabb tanulsága, és ma már minden projektünkön így dolgozunk.
Hogyan néz ki nálunk egy spec
A „specifikáció” szóról a legtöbbeknek egy negyvenoldalas dokumentum jut eszébe, amit senki nem olvas el. A mieink szándékosan pont fordítva működnek: általában elférnek egy oldalon, és olyan hétköznapi nyelven íródnak, hogy az ügyfél tényleg meg tudja ítélni, jó-e, amit leírtunk:
- —Mit csinál a funkció – úgy leírva, ahogy a felhasználó tapasztalja, nem az implementáció felől
- —Mi az, ami kifejezetten nem része – a scope-ot ugyanis a határai jelölik ki
- —Mely állapotokra kell válasz: üres, betöltés alatt, hiba, offline, hiányzó engedély
- —A nyitott kérdések – még azelőtt feltéve, hogy egyetlen sor kód megszületne, nem utólag felfedezve
- —Az ügyfél jóváhagyása – egy mondatnyi egyetértés, nem ünnepélyes aláírás
Miért véd ez mindkét felet
Amikor egy elképzelés fejlesztés közben megváltozik – és meg fog –, a spec egészen más mederbe tereli a beszélgetést. Nem azon vitatkozunk, ki emlékszik jól a hívásra, hanem mindkét fél ugyanazt a dokumentumot nézi, és ahhoz képest beszéljük meg a módosítást: mibe kerül, mit tol el, most éri-e meg, vagy inkább a következő iterációban? Magát a változást szívesen fogadjuk – a spec csak azt teszi láthatóvá, hogy mi az ára, még mielőtt kifizetnénk.
Óradíjas együttműködésben ez egyben a méltányosság eszköze is. Az ügyfél látja, miben állapodtunk meg, mi készült el, és mi változott menet közben. Pontosan ez az az átláthatóság, amitől a time-and-materials elszámolás biztonságosnak érződik, nem pedig parttalannak.
Az AI-korszakban a spec csak még értékesebb lett
Van itt egy fordulat, amire nem számítottunk: az AI-alapú fejlesztés felértékelte az írott specet. Egy pontos spec szinte szó szerint felhasználható kiváló minőségű utasításként az AI-eszközök felé – minél tisztább a specifikáció, annál nagyobb részét lehet biztonságosan felgyorsítani az implementációnak. Azok a csapatok, amelyek megtanulták fegyelmezetten leírni, mit építenek, pontosan azok, akik a legjobb helyzetből adhatják át az építés egy részét az AI-nak.
Az egyoldalas spec tehát sosem volt bürokrácia. A legolcsóbb dokumentum az egész szoftverfejlesztésben: az, amelyik még akkor elkapja a félreértéseket, amikor azok csak szavak.
Tanulságok
- ✓Az, hogy fejlesztés közben változnak a követelmények, az alapítóknál teljesen normális – erre tervezd a folyamatot, ne neheztelj miatta.
- ✓A spec férjen el egy oldalon, hétköznapi nyelven: a felhasználó által látható viselkedés, kimondott kizárások, edge case-ek, nyitott kérdések, jóváhagyás.
- ✓A spec a „nem ebben egyeztünk meg” vitából „ennyibe kerül ez a változás” beszélgetést csinál – tárgyalást, nem konfliktust.
- ✓Óradíjas munkában a spec adja azt az átláthatóságot, amitől a time-and-materials elszámolás biztonságosnak érződik.
- ✓A tiszta spec az AI-korszakban kamatozik igazán: gyakorlatilag változtatás nélkül használható kiváló minőségű utasításként az AI-alapú implementációhoz.
Olyan terméken dolgozol, ahol ez számít?
Minden projektünkben így dolgozunk, legyen szó mobilról, webről vagy AI-ról. Ha olyan csapatot keresel, amelyik így gondolkodik a termékedről, beszéljünk.
Kérj ingyenes becslést