Research interests

A lot of different topics are interesting to me, therefore my concrete interests are quite volatile. But my general research interests fall in the areas of software engineering: software architecture, software evolution, maintenance, reverse engineering, program understanding, software modularity and static analysis. These days I am greatly exited with domain-specific languages (DSLs) and model-driven software engineering (MDE).

Research projects

  1. Науково-дослідна робота № 24-Ф4/к44 «Методи та засоби інженерії програмного забезпечення»
  2. Держбюджетна тема № 586-ДБ09 «Екологія програмного забезпечення» (номер державної реєстрації 0109U001769)
  3. Госпрозрахункова тема «Розробка програмного забезпечення та технічної документації з реєстрації фізичних осіб та оформлення документів, які посвідчують особу та підтверджують громадянство України»

My PhD work

The thesis is devoted to developing method and tool for monitoring design defects in object-oriented software

The problem of design defects monitoring is formulated and solved by means of devoted method development. We described design defect ontology in order to make systematic, comprehensive and complete overview of design defect notion and related notions. Design defect is nonconformance of the structural characteristics of a software item or software fragment to the rules of object-oriented design. This definition restricts the object of our research only to non-functional defects that affect the structure of object-oriented software. We a proposed method for monitoring of object-oriented design defects, the essence of which is to control changes of design flaws’ parameters (especially flaw’s progress degree) in time. The method is implemented by using object-oriented software design defects history meta-model (DDHM) and multi-dimensional visualization of design defects in software elements at different levels of abstraction. In DDHM, unlike in other meta-models, defect for the first time is modeled as a separate entity which can change its parameters in time. This enables one to implement tools for defects’ and flawed software elements’ history visualization and analysis. To make possible visualization of design defects they have to be modeled. We proposed a design defect model, which consists of two functions. First function is used to find design defect’s progress degree and second – to find mean value of intensities of all defect’s simple signs. Such a model allows considering of defect to be an entity, which has changeable in time parameters. The set of views for facilitation of design defect progress observation is developed. They are: “X-Ray”, “Defect history”, “Defect’s signs history”. First view is used for defects visualization in software decay aspect and allows estimate defect distribution among software elements. Second view is used for defects visualization in design defect history’s aspect and allows tracking design defects of certain type. Third view is used for defects visualization in design defect signs history’s aspect and allows tracking design defect’s signs. Also defect monitoring technique based on these views is developed. The technique is built upon searching in views of visual patterns with known interpretation. The architecture of a tool to support implementation of the proposed method is developed. Tool’s efficiency verified by monitoring of design defects during the history of open source project ArgoUML.