The collective experience of IT companies confirms that the maintenance of large, compound software systems consisting of several million lines of code requires quite a large amount of resources. The most significant part of these resources is consumed mainly by testing, bug-fixing, the implementation of newly encountered business requirements, and adaptation to a changing environment. The continuous code change results in an unavoidable quality decay whose decrease rate can be moderated by utilizing product- (Columbus) and process- (ISO,CMMI) based quality assurance methodologies. The Department of Software Engineering has a lot of experience in developing tools and technologies for software quality assurance. We have been conducting R&D projects in this field since 1997, and the topics of these projects range from developing source code analyzers (Java, C/C++, C#, PL/SQL, Python) to the analysis of large systems containing several million lines of source code. The technology named Columbus incorporates a wide range of tools and technologies in various areas of software quality assurance, static source code analysis, quality monitoring frameworks, quality models, test-efficiency improving approaches (automatic test-case selection, test case generation, test coverage measurement, test automation, etc.), and software architecture reconstruction.
The REPARA project aims to help the transformation and deployment of new and legacy applications in parallel heterogeneous computing architectures while maintaining a balance between application performance, energy efficiency and source code maintainability. Read more
GOP 1.1.1 -11-2011-0038
Research on the impact of the quality of business critical IT systems on system security, risks and costs. Developing tools and services based on source code analysis and process modelling. Read more , Read more in Hungarian
Development of a software quality assurance service package for OpenDocument Format ODF applications. Read more
Improving the Quality of Open Source Software: analysing the structural architecture and source code quality of the open source package called OpenOffice.org. (5 million lines of code)
ART-Szeged & TE-Szeged
Studying the source code analysis techniques that can effectively support the re-construction of system architecture models and improve the current code analysis tools for Symbian.
CIRENE - Cross-border ICT Research Network
Impact analysis (OTKA)
Research on efficient system-level impact analysis methods and their applications in software engineering. Read more
Data visualisation with high expressive power plays an important role in code comprehension. Recent visualisation tools try to fulfill the expectations of the users and use various analogies. For example, in an architectural metaphor, each class is represented by a building. Buildings are grouped into districts according to the structure of the namespaces. We think that these unique ways of code representation have great potential, but in our opinion they use very simple graphical techniques (shapes, figures, low resolution) to visualise the structure of the source code. On the other hand, computer games use high quality graphic and have high expressive power. A good example is Minecraft, a popular role playing game that supports both high definition, photo-realistic textures and long range 3D scene displaying. Additionally, it provides great extensibility and interactivity for third party software. In this research, we introduce our mission to create a virtual world of source code in which developers and other stakeholders could explore and evaluate their project collaboratively in a virtual Minecraft world. Code properties are represented by graphical primitives offered by the game engine, and various interactivity features are planned. Read more
Key Industrial Projects
- Design and development of a C/C++ source code analyzer frontend and the quality check of the S60 development platform.
- Assessment and documentation of the entire IT infrastructure (hardware, software, etc.) of a large local company using the SourceInventory framework Analysis and quality assurance checks of the software systems written in ForrásSQL programming language.
- Development of a platform and tools for the static analysis of the ForrásSQL programming language Design and implementation of a test manager framework for ForrásSQL, research on automatic test case generation for ForrásSQL.
- Development of a platform for the quality assurance and architecture reconstruction of the Magic programming language.
The framework named Magister continuously analyzes and evaluates the source code of Magic and reports eventual problems or issues.
Siket, I., Beszédes, Á. and Taylor, J. Differences in the Definition and Calculation of the LOC Metric in Free Tools. Technical Report, number TR-2014-001, University of Szeged, Department of Software Engineering, 2014.