HTML

ITÉlet

Egy multinacionális cégnél dolgozó informatikai manager szakmai blogja. Észrevételek, tapasztalatok szoftver fejlesztésről, vezetésről, managementről és hatékonyságról itthoni és külföldi példákon keresztül. Az informatikáról másképp...

Utolsó kommentek

  • 232323: Szóval managernek jó lenni, akkor dől a nagy lé, felelősség meg számonkérés sehol. Krém. (2019.10.31. 15:24) Kirúgják-e a menedzsert ha hibázik?
  • Simon Géza: "A következő forradalmi áttörés, nagy dobás, ami megint tőzsdei felfutáshoz vezet, az nem valamilyen informatikai dolog lesz, hanem egészen más." Ha a generic AI nem informatikai, akkor igazad van.... (2018.02.19. 07:01) Az IT jövője
  • pggp: @AnyTink: Köszi, de én csak egy blog olvasó vagyok, aki jól tudja használni a keresőt ;-) (2017.10.17. 07:19) Milyen volt hazaköltözni?
  • AnyTink: @pggp: :) Gratulálok a család bővüléséhez és a sikeres 'hazatelepedéshez'. Mi most gondolkodunk a hazaköltözésen és jó olvasni mások élményéről! Köszönöm az írásod :) (2017.10.16. 18:49) Milyen volt hazaköltözni?
  • pggp: Tulajdonképpen igen, alakult valami: akocsis.com "2017 április, Dália eloször Szentesen" ;-) (2017.06.06. 21:51) Milyen volt hazaköltözni?
  • Utolsó 20

Újabb eszmefuttatás a jó szoftver-rossz szoftver témakörében.

Újabb eszmefuttatás a jó szoftver-rossz szoftver témakörében.

Az egyik belső vállalati szoftverünkkel állandóan bajom van. Jóvá kell benne hagynom valamit, de nem sikerül: rákattintok a megfelelő gombra, erre a szoftver kritikus hibával eldobja magát. Egy olyan funkciónál, amit heti szinten kellene használnom, nem csak nekem hanem a cégnél lévő összes menedzsernek.

A jelenséget annak rendje-módja szerint bejelentettem a Helpdesk-nél, képernyőkép, hibaleírás, útmutató lépésről lépésre. A programozók nem kapkodták el, időnként kérdeztek valamit, de érdemi változás nem történt. Kb 1 hónap után úgy döntöttek, hogy belenyúlnak az adatbázisba, és amit az adott gombbal kellett volna jóváhagynom, azt az adatbázisban jóváhagyottra állítják. Ezzel az ügy lezárult.

Azaz mégsem, mert következő alkalommal, amikor megint jóvá kellett hagynom valamit, a program pont ugyanúgy elhasalt. Ismét bejelentettem a hibát, és elgondolkodtam.

Rálátásom van a cégnél dolgozó különböző csapatok teljesítésére, és tudom, hogy ez a csapat kapja a legtöbb hibajegyet havonta. És fejlesztőből is sok van, egy egész hadseregnyi, hogy dolgozzon azokon a hibajegyeken. Mondanom sem kell, kiszervezett fejlesztők.

Nagyon úgy tűnik, hogy ők mindig csak ideiglenes megoldásokra koncentrálnak, az adatbázisba belenyúlva korrigálják az adatokat, ahelyett hogy megkeresnék a hiba forrását, és azt oldanák meg. Hosszú távú megoldások helyett rövid távú – quick&dirty – megoldásokat alkalmaznak.

Sajnos sok szoftverfejlesztő követi ezt a gondolkodásmódot. Belenyúlni az adatbázisba egyszerű. Nem kell gondolkodni, csak csinálni. Egyszerű az élet, csinálom amit mondanak, a következmények nem érdekelnek. Ha lesznek is következmények, majd megint belenyúlok az adatbázisba, és megy minden tovább.

Ugyanezek a szoftverfejlesztők azok, akik úgy fejlesztenek interfészt, hogy nincs hibakezelés. Minek is? A program egészen addig jól működik, amíg nincs hiba a feldolgozásnál. Aztán ha az adatvitel során hiba lép fel, ha a kapott adatok nem megfelelő formátumúak, ha programhiba miatt megszakad a feldolgozás, akkor ott állunk gatyával letolva. Jobb esetben „csak” elszáll a program, valahol megjelenik egy hibaüzenet. Rosszabb esetben átugorjuk a hibát, a program fut tovább, senki sem veszi észre ami történt. Aztán majd 1-2 hét, esetleg hónap múlva valaki kiszúrja, hogy hiányoznak adatok. Vagy esetleg 6-12 hónap múlva az auditoroknak szúr valami szemet.

Pedig annak idején tanultunk olyanról, hogy CRC kód, handshake, hearthbeat, és társai. Mert szoftver írni könnyű, csak jó szoftvert írni nehéz.

A fenti rendszer beszállítójáról pedig annyit, hogy a megállapodás szerint a támogatásért nem átalánydíjat fizetünk, hanem hibajegyenként T&M alapján. Vagyis konkrétan anyagilag érdekelt benne, hogy a szoftver hibás legyen, minél több hibajegyet generáljunk, és rendszeresen bele kelljen nyúlni az adatbázisba.
Szerintük ez a „best practice”, amit minden más szoftver támogatásánál alkalmazni kellene. Szerencsére nem magyar cégről van szó.

Címkék: szoftver

A bejegyzés trackback címe:

https://akocsis.blog.hu/api/trackback/id/tr765211417

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Hesz Roland 2010.10.07. 15:53:41

"A fenti rendszer beszállítójáról pedig annyit, hogy a megállapodás szerint a támogatásért nem átalánydíjat fizetünk, hanem hibajegyenként T&M alapján. Vagyis konkrétan anyagilag érdekelt benne, hogy a szoftver hibás legyen, minél több hibajegyet generáljunk, és rendszeresen bele kelljen nyúlni az adatbázisba." Innentől kezdve kérdés, hogy mennyire a fejlesztők és mennyire a vezetőség érzi úgy, hogy "jó lesz ez így is". Mekkora a fejlesztői turn-over ennél a cégnél?

Ismeretlen_102125 2010.10.07. 18:50:17

Gondolom eleve nem veszik fel azt a fejlesztőt, aki az IQ teszten magas eredményt ér el.

petiati 2010.10.09. 23:16:23

Érdekes ez a szituáció. Nekem az jut eszembe, amikor volt egy Skoda-m és elvittem szervizbe, mert valami elektromos problémája volt. Röviden lemerült az aksi és otthagyott a kocsi az út közepén. Első alkalommal azt mondták, hogy nem találtak semmi különösebb hibát, átnézték a kocsit minden rendben van. Egy hónapon belül - és ráadásul télen - megint otthagyott a kocsi az úton. Megint elvittem ugyanabba a szakszervizbe és ismét azt mondták, hogy átnézték, feltöltötték az aksit, de nem volt a kocsinak semmi baja. No ezek után mondtam nekik, hogy nem vagyok hajlandó fizetni, mert vagy az előző alkalommal nem végeztek jó munkát vagy most. Én nem vagyok hajlandó fizetni ugyanazért kétszer. Nem mondanám, hogy boldogok voltak, de nagyon nem tudtak mit kezdeni az esettel. Javaslom, hogy legközelebb kérdezd meg a beszállítót, hogy miért kell fizetned egy olyan hibáért, amit már elvileg "kijavítottak". Vagy ha nem javítottak ki, akkor korábban miért számláztak?

Ismeretlen_102125 2010.10.10. 12:53:08

A munka elszámolása valahogy úgy történik, hogy a beszállító havonta ad egy listát a megoldott hibajegyekről (1 ticket - 1 sor) és a számlát. Tudja a fene, hogy ezek közül melyik hibajegyek azonosak, illetve melyik hibajegy azonos az előző hónapban valamivel. Én a saját területemen heti szinten átnézem a hibajegyeket, és - többek között - keresem a hasonlóságokat, illetve a részletekbe is belemegyek (pontosan mi a hibajegy mögött a hiba, miért következett be, stb). De ez én vagyok, sok menedzser nem csinál ilyen review-kat. A Skodás történethez meg annyit, szerintem vagy a generátor körül van baj, vagy érdemes lenne másik aksival próbálkozni :)

Zsuffa Zsolt · http://www.itkodex.hu 2010.10.14. 21:37:42

Remek tüneti leírása annak, amikor a megrendelő és a fejlesztő (függetlenül attól, hogy belső vagy külső fejlesztésről van szó) inadekvát módon működik együtt. Feltételezésem szerint a következők lehetnek a háttérben: 1) A megrendelő, már az első szoftver verzió elkészítésénél sem működött szorosan együtt a fejlesztővel (lehet, hogy az nem is igényelte) és így a fejlesztési folyamat során rengeteg veszteség keletkezett. Pl. nem pontosan megértett elvárások, hatékonytalan könyetelmény specifikációs technika, nem az üzleti haszon elvén meghatározott prioritások, feleslegesen fejlesztett funkcionalitás. 2) A fentiek miatt elkönyvelt veszteséget (vagy a nyereség csökkenését) a fejlesztő kevébé átgondolt implementációval igyekszik ellensúlyozni (ő sem akar tönkremenni, szeretné megtartani a munkahelyét). Itt kezdődik el növekedni az un. technikai adósság. Ez: http://agilerenovation.com/#English/Company/AgonyOrAgility.html az ábra jól szemlélteti ezt a folyamatot. Amikor már hibákat kell javítani, akkor a haszon (a javításból származó előny) és a ráfordítás már nem lesz arányos, mert a korábban felhalmozott technikai adósságot is "vissza kell fizetni", azaz struktúrálisan kell módosítani a programon. 3) A megrendelő tipikusan homokba dugja a fejét, amikor a fejlesztő azon technikák többlet költségeit szeretné elismertetni, amivel a technikai adósság elfogadható szinten tartható. Itt elsősorban az automatizált tesztek többletráfordításait emelném ki. Az automatizált tesztek kulcs szerepet játszanak a szoftver minőségének biztosításában. 4) Mivel - feltételezésem szerint - a megrendelő nem előre specifikálja az (automatizálható!) elfogadási tesztjeit (kritériumait) folyamatos a bizonytalanság abban, hogy egy hibás működés kijavult-e, vagy sem. Automatizált, teszt vezérelt fejlesztés esetén ez elképzelhetelen lenne. Egyszerüen össze sem épül az alkalmazás.

Ismeretlen_102125 2010.10.15. 09:02:19

@Zsuffa Zsolt: Annak ellenére, hogy a cikkben a fejlesztőkről húztam le a keresztvizet, az is nagyon igaz, hogy itt bizony jelentős felelőssége van a mi oldalunkon ülő IT menedzsernek, a kulcsfelhasználónak, annak aki ezt a rendszert ilyen állapotban átvette, és aki azt a szerződést aláírta. Köszönöm a kiegészítést.

Ismeretlen_102125 2010.10.15. 11:42:06

Még egy utolsó hozzáfűznivaló: az tiszta sor, hogy az ügyfél oldalon nem ment minden tökéletesen (ennek egyébként cégen belül is hangot adtam), de ettől még a fejlesztők, illetve a fejlesztőket vezető menedzerek elvégezhették volna rendesen a munkájukat - és tulajdonképpen erről szól a cikk. Ugyebár a leírt események - hibajegy nem megfelelő kezelése - nem fogható kommunikációs hibára vagy a technológiai adósságra. Adott egy nagy rakás fejlesztő (20+), van egy nyilvánvaló sok felhasználót érintő hiba egy triviálisan működő funkciónál, van konkrét leírás a hibáról, adott az együttműködő felhasználó, és mégsem javítja ki a hibát senki.

Zsuffa Zsolt · http://www.itkodex.hu 2010.10.15. 22:24:03

Még a látszatát is szeretném annak elkerüni, hogy valamiféle ügyfél kontra fejlesztő vitába bonyolódnék. A fegyelmezetlen, trehány munka, az elfogadhatatlan és haszontalan, bármelyik térfélen focizó is követi el. Tartalmi megjegyzés: Annak, hogy egy a felhasználó számára triviális hibát nem - pontosabban csak irreálisan nagy ráfordítással - tud kijavítani a fejlesztő néha az az oka, hogy a rendszerek nincsenek dokumentálva, ezért nehezen átlátható egy-egy módosítás következménye. Hogy miért nincsenek dokumentálva megérne egy külön blogbejegyzést.
süti beállítások módosítása