MultiRáció
English Magyar

Software Quality Assurance

The "OpenOffice++" Source Code QA Project

A project of MultiRacio Ltd. and Department of Software Engineering, University of Szeged, Hungary.

MultiRacio Ltd. and the Department of Software Engineering in University of Szeged started a software quality improvement project OpenOffice++ of OpenOffice.org in November of 2004. The project was 26 months long and had a volume 135 million HUF (0.54 million Euro), supported with 100 million HUF (0.4 million Euro) by the European Union.

MultiRacio Ltd. is the developer of the OpenOffice.org commercial derivatives called MagyarOffice and EuroOffice. These commecial derivatives include many extra functionalities, like dictionaries, adaptive menus, professional spell and grammar checker, EU map module, linear and non-linear optimizer, sound and video support, animated help, enhanced galleries and several other enhancements. A multi-language linux system, a Mozilla-based internet suite and an SQL database engine are also included in the distribution kit. The developers of MultiRacio Ltd. accumulated significant knowledge and development practices on the consecutive versions of OpenOffice.org in the last four and half years.

The team at the Department of Software Engineering, University of Szeged, Hungary, works since 1997 on source code analysis methods and tools primarily targeted for programs written in the C/C++ language. The research areas include reverse- and re-engineering, slicing, design pattern mining, fact extraction and metrics computation. A widely used C++ reverse engineering tool Columbus has been developed in cooperation with the Nokia Research Center and FrontEndART Ltd., which successfully analyses large software systems like OpenOffice.org and Mozilla. Some years ago work has been started on improving large open source software systems. These activities include improvements of the GNU GCC compiler to achieve optimal object code generation with respect to the code size, the CSiBE GCC Code-Size Benchmark Environment, the improvements of the JFFS2 file system for embedded GNU/Linux and the measurements of the Mozilla internet suite for fault-proneness detection.

The goal of the joint OpenOffice++ R&D project (supported by an EU funded national grant) was to analyze and improve the architecture of OpenOffice.org and the quality of its source code. We have used proven technologies and tools for measuring the quality of the source code. The applied methods included the automatic analysis of the source code and the extraction of information from which we calculate standard metrics like cohesion and coupling. From these metrics a model for fault-proneness prediction and quality assessment was built. Using the extracted information we could automatically identify problematic positions in the code. These problematic positions are so-called "bad smells" that have been refactored by the developers of MultiRacio to obtain equivalent functionally but better quality code. This identification was then further improved by applying machine learning methods. The source code of OpenOffice.org will be scanned regularly and the measured values will be stored. These results will be accessible through a web-based interface, and the resulting patches contributed back to the OpenOffice.org community. It is also possible to apply this quality assessment and monitoring system to any kind of software developed in the C++ languages. C# and Java will also be supported soon.

NFU LIPSZ InfoPólus ODF MultiRáció Home Page