OpenOffice++

Nyílt forráskódú programok minőségjavítási projektje

English | magyar

A MultiRáció Kft. és a Szegedi Tudományegyetem, Szoftverfejlesztés Tanszék projektje

A MultiRáció Kft. és a Szegedi Tudományegyetem Szoftverfejlesztés Tanszéke 2004 novemberében OpenOffice++ néven egy új minőségbiztosítási projektet indított. A projekt 26 hónapos időtartamú volt, költsége 135 millió forint (0.54 millió Euro), amelyet az Európai Únió 100 millió forinttal támogatott.

A MultiRació Kft. fejlesztette ki az OpenOffice.org nyílt forráskódú irodai programcsomag kereskedelmi változatait, a MagyarOffice-t (www.magyaroffice.hu) és az EuroOffice-t (www.eurooffice-officeeurope.com). Ezen fejlesztések négy éve alatt a cég szakemberei jelentős tudást halmoztak fel az OpenOffice.org kóddal kapcsolatban.

A Szegedi Tudományegyetem Szoftverfejlesztés Tanszékén 1997 óta foglalkoznak forráskód elemző módszerekkel és eszközökkel, főként C++ -ban írt programok számára. Kutatási területükhöz tartozik a kódvisszafejtés, pattern keresés és metrikák számítása. A széles körben használt Columbus kódelemző szoftvert a Nokia Research Centerrel és a FrontEndART Ltd.-vel közösen fejlesztették ki. Ez sikeresen elemez olyan nagyméretű szoftverrendszereket is, mint az OpenOffice.org vagy a Mozilla. Néhány éve elindult egy munka a nagyméretű nyílt kódú rendszerek fejlesztése terén (www.inf.u-szeged.hu/opensource). Ennek keretében továbbfejlesztették a GNU GCC fordítót, hogy a kódméretre optimalizálják a kódgenerálási folyamatot, elkészült a CSiBE GCC Code-Size Benchmark Environment (www.csibe.org), fejlesztették a beágyazott GNU/Linux JFFS2 fájlrendszerét, és hiba-valószínűség szempontjából elemezték a Mozilla internet böngészőt.

Az OpenOffice++ közös fejlesztési projekt célja az volt, hogy elemezze és fejlessze az OpenOffice.org architektúráját és forráskódját. Jól bevált technológiák és eszközök használatával mértük a forráskód minőségét. A metriták segítségével felépítettünk egy modellt, amely előrejelzi a hiba előfordulások valószínűségét, és segít azonosítani a problémás szakaszokat. Ezeket az úgynevezett "bad smell"-eket a MultiRáció programozói megvizsgálták, ha szükséges, javították. Az azonosítást gépi tanulást alkalmazó módszerrel finomítottuk. Az OpenOffice kódját több időpontban is kielemeztük, így az időbeli fejlődéséről is képet kaptunk. A kifejleszetett módszerek természetesen más, C++ alapú alkalmazások kódjára is alkalmazhatók. A Java és C# nyelveket is rövidesen támogatni fogjuk.