Kezdjük ott, hogy tekintsük át a szoftverfejlesztés folyamatát. Ez szükséges ahhoz, hogy érthető legyen az, hogy miért alakulhatnak és alakulnak ki kommunikációs problémák.
Maga a szoftverfejlesztés kezdődik ott, hogy valakiben felmerül az igény arra, hogy valamilyen problémát vagy problémakört megoldjunk, egyszerűsítsünk egy informatikai megoldással. A valaki lesz a megrendelő, az igény pedig a megrendelés.
A következő lépés, hogy egy olyan ember, aki képes megérteni az informatikusok nyelvezetét és képes megérteni a megrendelő nyelvezetét és szakterületét, igyekszik kiszedni a megrendelőből, hogy mit is akar.
Ezt követi az a lépés, hogy a felmerült igények lefordításra kerülnek informatikára. Elindul az architektúra tervezés, létrejönnek a funkciók, a felületek. Ennek végeredménye a rendszerterv amely információkat tartalmaz az elkészítésre kerülő szoftverről.
Ha a megrendelő elfogadta a rendszertervet, akkor elkészítésre kerül a megvalósítási terv. A rendszerterv az absztrakt szint. A megvalósítási terv maga a tények szintje. A fejlesztőknek szóló információkat tartalmaz, amelyek alapján elkészíthető a szoftver.
Miután a fejlesztők elkészítették a kódot jön a tesztelő, aki elkezdi különböző szempontok alapján megvizsgálni az elkészült szoftvert, hogy megfelel-e annak, amit a megrendelő kért. Maga a tesztelés szempontja nem ennyire kristálytiszta, de ebbe most nem szándékozom belemenni. A tesztelés során javításra kerülnek a hibák, elkészülnek azok a dokumentumok, amelyek alapján át lehet adni a megrendelőnek a szoftvert. Ha az átadás megtörtént, akkor a megrendelő az előre megbeszélt kondíciók szerint fizet. De ez már nem ide tartozik.
Röviden és vázlatosan ez a folyamata a fejlesztésnek. Ennek a bejegyzésnek az a feladata, hogy ebben a folyamatban rámutasson a (lehetséges) kommunikációs problémákra.
Kommunikáció szempontjából tekintve a problémás pontok:
- igényfelmérés
- kommunikáció a fejlesztői csapatban
- új személy csatlakozása a fejlesztési folyamatba
Igényfelmérés
Itt alapeset, hogy az, aki felméri az igényeket ismerje a szakterületet. Ismerje annak a nyelvezetét. A másik fontos része az igényfelmérésnek az ember - ember közötti kommunikáció. Ha ez a kettő együtt van, akkor nagyon eredményes lehet ez a folyamat. Ha csak az egyik van, akkor kimondottan rossz eredmény születhet.
Azt nem lehet megmondani, hogy melyik rész a fontosabb. Aki erre vállalkozik, finoman szólva sincsen tisztában egyik dologgal sem.
Az igényfelmérés során szorosan nem kapcsolódik a kommunikációhoz az attitűd kérdése, de a siker egyik legfontosabb részének tartom.
Az attitűd hozzáállást foglal magában. A hozzáállás az én fogalmi rendszerem szerint tartalmazza a felkészültséget, a tanulni tudást és akarást, illetve a hatékony, egyenrangú ember - ember kommunikációt.
Kommunikáció a fejlesztői csapatban
Feljesztés során rengeteg infromáció áramlik váltakozó sebességgel.
A fejlesztés során alkalmazott kommunikációs rendszernek biztosítania kell, hogy a megfelelő információ, a megfelelő időben, a megfelelő emberhez jusson el. Ahhoz, hogy erre az alkalmazott kommunikációs rendszer képes legyen szükséges, hogy legyen képes maga a rendszer információkat kinyerni a rendelkezésére álló forrásokból. Ezek a források lehetnek külsőek és belsőek egyaránt. A források lehetnek emberek és dokumentumok.
Ez egy nagyon szép és kellemes elgondolás, de ha mélyebbre megyünk, akkor látható, hogy egy - egy ilyen kommunikációs rendszer emberekből és eszközökből áll. Egyik sem tökéletes.
Új személy csatlakozása a fejlesztési folyamatba
A fejlesztői csapata már meglévő kommunikációs rendszerének igazi próbája az, amikor egy új személy csatlakozik a csapathoz. A kérdés, hogy mennyi idő alatt tud integrálódni, mennyi idő alatt képes felvenni azt a munkatempót, amivel a többiek rendelkeznek? Úgy gondolom, hogy még fontosabb kérdés, hogy mekkora erőfeszítéssel jut hozzá a számára szükséges információkhoz? Ezzel a tevékenységével mennyire zavarja a munkatársait?
Pár év informatikában eltöltött év után és kommunikáció szakkal a zsebemben így tudom látni azt, amit szoftverfejlesztésnek hívnak. Elsőre nagyon egyszerűnek tűnik. De nem az.
Célom, hogy boncolgatom a témát ott ahol érem, mert ebben élek és rendelkezem olyan szempontrendszerrel és képességekkel, amelyek ebből a szakmából hiányoznak.







Comments
Nagyon érdekes, hasznos- és
Nagyon érdekes, hasznos- és tanulságos mindaz amiket a sw fejlesztés kommunikációs problémáiról írtál. Érdeklődássel olvasnám, további írásaidat a témában. Tapasztalataim szerint előfordul, hogy a felhasználó csak az igényeit ismerteti, de annak kielégítéséhez semmilyen lényegi információval nem képes, vagy nem akar hozzájárulni. Mi több, nem csak nem informál, de esetenként dezinformál. Kifogás lenne bősven, hogy miért nem lehet teljesíteni gyorsan, hamar és olcsón a felhasználó igényeit. Csakhogy a fejlesztés éppen a lehetséges utak, módszerek, lehetőségek feltárásán, alternatívák kiértékelésén át vezet...
Tehát kiváncsian várom, hogy milyen tapasztalataid, konstruktív ötleteid vannak a fejlesztés labirintusában való
előre jutásban.
Lux.R
Köszönöm
Szia,
köszönöm :)
Azt, hogy az igényfelmérés során dezinformál és részinformációkat közöl a leendő partner szerintem normális. Egyrészt azért, mert a jelenlegi társadalmi berendezkedés úgy szocializálja a népet, hogy nem képesek mélyen gondolkodni. Inkább választják mindig az egyszerű gondolkodási mintákat. Ha gondolkodni, átgondolni kell dolgokat, akkor a fejük fájdul bele. Ez nem az ő hibájuk, hanem annak oka, hogy sokkal több információ szaladgál, mint amire szükségünk van és lustává válik az elme.
A másik oka a dezinformációnak - szerintem, hogy az aki elmegy kérdezni nem ismeri teljesen azt a területet. Ha ismerné, akkor tudna kérdezni és egészséges mértékben kételkedne abban, amit a leendő partner mond. Amikor az attitűdről írtam erre is gondoltam. Felkészültnek kell lenni, mint ahogy az újságírónak is sokat kell tudnia az interjúalanyról, hogy jól tudjon kérdezni.
A véleményem az, hogy maga az igényfelmérés folyamata nem olyan egyszeri alkalom, hanem modellezés és sok - sok beszélgetés. Találkoztam elég sok módszerrel, amellyel hatékonnyabbá lehet tenni ezt a folyamatot. Fogok még erről írni, mert ez is színtiszta kommunikáció és az kedvenc területem.
Egyelőre ketten értekezünk, bár többeknek tanulságos lenne
Gyakori eset, hogy felhasználó melegen érdeklődik a fejlesztés várható idejéről és költségéről: mennyi ideig tart, mennyibe fog kerülni? Ezekre a kérdésekre nagyon jó indulattal, maximális szakmai felkészültség mellett sem adható tökéletes válasz. (Eleinte túl sok a nyitott kérdés, és később sem biztos, hogy mindenütt jó nyomon haladunk.) Mondhatunk szemtelenül nagy időt és összeget, de ezek együttesen sem garantálhatják a sikert. Ugyanis a fejlesztés kezdetén senki sem lehet tisztában az előre nem látható, tehát nem kalkulálható részletekkel. Mindig is voltak– és lesznek lopakodó felhasználói igények, ezek korrekt erőforrás igénye előre nem kalkulálható. Az utólagos módosítások jelentősen növelhetik a költségeket. Lehetne papírozni, hogy akkor ki mit kért, mondott, ígért, és akkor mennyi a többletköltség, de mindez nem visz előrébb. Sőt, gátol. Ugyanis a munka rovására kell adminisztrálni. Ha egy leírás rövid: nem érti meg a felhasználó, egy hosszú szöveget pedig szinte biztosan félreért mindenki. Olyanok is, akik tisztában vannak az alapokkal. Kialakul az egymás mellett elbeszélés, ami gátat képez, késedelmeket, viszályokat eredményez. Jó esetben a csalódott felhasználó morog és fizet, rossz esetben ugrott a project. A legrosszabb esetben pedig oda a bizalom, terjed a rossz hír, és nem fizet az ügyfél…
Mi tehát a megoldás? Hogyha valaki dobozos szoftvert vásárol, akkor viszonylag olcsón hozzájut egy jól használható termékhez. Viszont összetettebb, az adott cég gyakorlatára jellemző egyedi igényeket nem képes kielégíteni egyik dobozos termék sem. Nem véletlen, hogy a nagyobb cégek (posta, bankok, nagyvállalatok) az egyedi fejlesztést preferálják. Saját fejlesztőkkel, vagy hosszú távra szerződtetett céggel, cégekkel.
Az igényfelmérés önmagában is összetett feladat, amelyet valóban több alkalommal lehet elvégezni. Csakhogy a modell megalkotása, sok-sok beszélgetés- és próbálkozás révén: fundamentális rész, a teljes munka kidolgozására nézve meghatározó feladatok sorozata. Ideális esetben a felhasználó ebben a folyamatban képes partnerként részt venni: hatékonyan, konstruktív szakmai támogatást biztosítani. Sajnos a gyakorlat azt mutatja, hogy a felhasználó mindenütt spórol, ahol tud. A rendszerterv puszta gondolata még némelyik, informatikailag képzett felhasználónál is kiveri a biztosítékot...
Előbb vázolt előzmények mellett a szoftverfejlesztés kommunikációs problémái: természetes képződmények. Lankadatlan érdeklődéssel figyelem kedvenc területeddel kapcsolatos leírásaidat, javaslataidat. Légy szíves továbbra is boncolgasd a témát, ahol éred, hiszen mint írtad: ebben élsz és rendelkezel mindazzal a szempontrendszerrel és képességgel, amelyek ebből a szakmából hiányoznak.