Sebesség (szoftverfejlesztés)
A sebesség az elvégzett munka mennyiségének a mértékegysége, amit gyakran alkalmaznak az agilis szoftverfejlesztésben.[1]
A sebesség mérését néha a sebesség trekkelésének is nevezik. A sebességet használják sprintek tervezésekor és a csapat teljesítményének értékelésekor. Nincs arra tudományos bizonyíték, hogy a sebesség mérésének számottevő hatása lenne a csapat teljesítményének tervezésekor. Ezen kívül a mérés félrevezető is lehet.
Terminológia
[szerkesztés]A sebesség trekkelésénél a következő fogalmakat használják:
- Munkaegység
- Az az egység, melyet a csapat kiválaszt a hatékonyságának mérésére. Ez lehet egy létező egység, mint a mérnökóra, mérnöknap vagy Product Backlog Items (PBI), esetleg használhatnak történetpontokat.[2] Ezután a szoftverfejlesztés minden pontját az adott egység figyelembevételével kell értékelni.
- Intervallum
- Az intervallum a különböző iterációk közötti idő, és ezzel mérik a sebességet. Az intervallum hosszát a csapat határozza meg. Leggyakrabban ez egy hét szokott lenni, de ez akár egy hónapos is lehet.
Tulajdonságok
[szerkesztés]A sebesség mögött az az elképzelés húzódik meg, hogy ennek segítségével meg lehet határozni, hogy egy adott idő alatt mennyi munkát képes az elvégezni. Ezt az alapján határozzák meg, hogy régebben milyen gyorsan dolgoztak.[3] A sebesség mérése relatív. Más szavakkal: magában a számok értelmezhetetlenek. Csak a trend az, ami fontos.[4]
Kritikája
[szerkesztés]A sebességgel az egyik baj az, hogy összefűzi az elvégzett munkát a tervezés pontosságával. Más szavakkal: ha a csapat konzervatív módon határozza meg a feladatokat, azzal elinflálhatják a sebességet. Például ha egy csapat azt mondja, hogy egy munkát négy óra alatt vagy egység alatt tud elvégezni két óra vagy két pont helyett, akkor szebben fog mutatni a sebességük. Ezt nevezik pont inflációnak is.[5] Velocity should not be used as a performance metric.[1]
A sebességgel felmerült további probléma az, hogy nem szerepel benne minőségi mutató, a felhasználók célját vagy prioritását nem veszi figyelembe. A sebességet úgy is lehet növelni, hogy csökkentjük a designra fordított időt, kiszervezik egyes munkarészeket, a kódolásnál standard megoldásokat alkalmaznak. Ha kész van egy munkafeladat, attól függetlenül hogy milyen minőségben készült el, növeli a sebesség mértékét. Ehhez hasonlóan a sebesség az elvégzett munkával számol, és nem veszi figyelembe annak hasznosságát. Például, ha olyan képességet fejleszt valaki, amit senki sem kért, és annak nincs valós haszna, az is elvégzett munkának számít. Emiatt sokkal inkább tekintik irány nélkülinek a mért tulajdonságot.
A harmadik probléma az, hogy gyakran hibásan a hatékonyság mérésére vagy a csapat teljesítményének a mérésére használják. A sebességgel az elvégzett munka mennyiségét, nem annak hatékonyságát mérik, A sebességet meg lehet növelni az eltöltött órák számával (pl túlóra) vagy újabb csapattag felvételével. Ezek egyikével sem nő a csapat hatékonysága vagy teljesítménye.
Összességében a sebesség azért problémás mérőszám, mert könnyen manipulálható, és sokan a hatékonyság mérésére használják,
Jegyzetek
[szerkesztés]- ↑ a b Rubin, Kenneth (2013), Essential Scrum. A Practical Guide to the Most Popular Agile Process, Addison-Wesley, ISBN 978-0-13-704329-3
- ↑ Measures of size, agilesoftwaredevelopment.com, <http://agilesoftwaredevelopment.com/2006/12/measures-of-size>. Hozzáférés ideje: 2010-09-24 Archiválva 2010. október 26-i dátummal a Wayback Machine-ben Archivált másolat. [2010. október 26-i dátummal az eredetiből archiválva]. (Hozzáférés: 2020. október 22.)
- ↑ Glossary of scrum terms: Velocity, <http://www.scrumalliance.org/articles/39-glossary-of-scrum-terms#1110>. Hozzáférés ideje: 2010-09-24
- ↑ Agile 101: Agile Software Development Velocity, VersionOne.com, <http://www.versionone.com/Agile101/Velocity.asp>. Hozzáférés ideje: 2010-09-23 Archiválva 2010. október 2-i dátummal a Wayback Machine-ben
- ↑ point inflation. innolution.com. (Hozzáférés: 2019. június 6.)
Fordítás
[szerkesztés]Ez a szócikk részben vagy egészben a Velocity (software development) című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.