Nem Amerikát, hanem a tiszta forráskódot keresi a Columbus
Új, nemzetközileg is elismert forráskód-minősítést dolgozott ki a Szegedi Tudományegyetem Szoftverfejlesztés Tanszéke, melynek segítségével a jövőben javulhat, illetve könnyebbé válhat a szoftverek karbantarthatósága – tudtuk meg Gyimóthy Tibor tanszékvezetőtől.
Tizenöt éve foglalkozik a tanszék forráskódelemzéssel, miért fordultak e terület felé?
- A szoftver is öregszik. A hosszabb ideig üzemelő programok nagy részét nem elég megírni és letesztelni, hanem folyamatosan, az új igényeknek, jogszabályoknak, a fejlődő platformnak, azaz a hardvernek megfelelően fejleszteni is kell. Azonban minden változtatás magában hordozza a minőségromlás vagy szoftvererózió lehetőségét is, ugyanis rendszerint nincs idő újratervezni az egész szoftvert. Egy programelem megváltoztatása azonban a szoftver más részeire is befolyással lehet, számos mellékhatást is produkálhat.
Hogyan néz ki egy elemzés?
- A Columbus nevű módszer hasonlít egy orvosi vizsgálathoz. Olyan méréseket végzünk, amelyek megmutatják, mennyire összetett a program, egyes elemei mennyire függnek más összetevőitől, ezt hívják csatolási metrikának. Ez a vizsgálat olyan, mint mikor az embert elküldik laborvizsgálatra. Majd felállítunk egy diagnózist, azaz rámutatunk, milyen problémák vannak a forráskóddal. A hibák kijavítása után pedig visszamérünk, megnézzük, szükség van-e további korrekcióra.
Nem lehet elé menni a problémának?
- Dehogynem. Ahogy az emberi betegségeknél, itt is fontos lenne a megelőzés. Az a cél, hogy ne engedjünk olyan fejlesztéseket, amelyekről tudjuk, hogy hibákhoz fognak vezetni. Erre szolgál egy tiltó mechanizmus (quality gate), amely előre kiszűri azokat a változtatásokat, melyek kódromláshoz vezethetnek. Ez különösen fontos olyan cégeknél, amelyek több fejlesztővel is dolgoztatnak.
Önök maguk végzik a változtatásokat is?
- Általában azoknak érdemes, akik az adott fejlesztést végezték. Mi beazonosítjuk a problémákat, ők kijavítják. Most fut ugyanakkor egy nagy, állami támogatást kapott projektünk öt szoftverfejlesztő céggel, amelyben a korrigálás, azaz a refactoring is szerepel. Nemrég egy díjjal is elismerték a tevékenységüket.
- A 28. International Conference on Software Maintenance (ICSM) 2012 konferencián – mely a terület legnevesebb tudományos seregszemléje – a tíz évvel ezelőtt publikált eredmények közül a legnagyobb hatású fejlesztést ismerték el. A módszert az iparban is alkalmazzuk, így elemeztük már például a Nokia, az Ericsson vagy az Erste Bank szoftvereit is.
Idén szeptember 20-án az üzleti szférának külön is bemutatták a fejlesztésüket a FrontEndArt spin-off céggel, melyet pontosan azért alapítottak, hogy az egyetemi üzleti szolgáltatásokat közvetítse az ipari partnerek felé. Mit várnak a Columbustól?
- Jelenleg a különböző szoftverbeszerzési tendereknél szinte mindig az ár szerepel elsődleges szempontként, ennek azonban az a következménye, hogy sokszor kóklercégek olcsó termékeit választják a cégek. Később jönnek rá, hogy a karbantartás során súlyos problémákkal kell szembenézniük. A komolyabb szoftverfejlesztő cégek elismerik, hogy szükség van forráskód-minősítő eljárásokra. A folyamat végén egy Code Certifi cation nevű tanúsítványt adunk ki, mely egytől tízig sorolja be a vizsgált forráskód minőségét. Fontos, hogy meg is tudjuk indokolni, mi áll a számok mögött, vagyis a bizonyítványnak és a minőségnek korrelálnia kell.