Том 3
Permanent URI for this collection
Browse
Browsing Том 3 by Issue Date
Now showing 1 - 20 of 27
Results Per Page
Sort Options
Item Investigation of the Relationship Between Software Metrics Measurements and its Maintainability Degree(2020) Hlybovets, Andrii; Shapoval, OleksandrThe goal of this work is to practically apply methods of empirical engineering software, algorithms for data collection and data analysis. The results include software measurement, analysis and selection of direct and indirect metrics for research and identification of dependencies between direct and indirect metrics. Based on the received results, there were built dependencies between software metrics and software expertise properties were selected by individual variation. For measurement results analysis there were used primary statistical analysis, expert estimations, correlation and regression analysis. Expert estimation is the dominant strategy when estimating software development effort. Typically, effort estimates are over-optimistic and there is a strong over-confidence in their accuracy. Primary data analysis is the process of comprehending the data collected to answer research questions or to support or reject research hypotheses that the study was originally designed to evaluate. Correlation analysis gives possibility to make some conclusions about which metrics and expert estimations are much coupled, and which are not. Regression analysis involves both graphical construction and analytical research and gives an ability to make a conclusion about which metrics and expert estimations are the most coupled. Analyzing regression lines for metrics of normal and nonnormal distributions give an ability to identify pairs of ‘metric – expert estimation’. There have been calculated and measured metrics relations for defining relation of such quality attributes as Understandability and Functionality Completeness. Understandability expresses the clarity of the system design. If the system is well designed, new developers are able to understand easily the implementation details and quickly begin contributing to the project. Functionality Completeness refers to the absence of omission errors in the program and database. It is evaluated against a specification of software requirements that define the desired degree of generalization and abstraction. Relationship between metric and expertise includes building direct relationships between the metric and expertise, indirect metrics and expertise. Additionally, it has been determined whether they have common trends of the relationship between those direct metrics and expert estimates, indirect metrics and expert estimates. The practical results of this work can be applied for software measurements to analyze what changes in the code (affecting given metric) will cause increasing or decreasing of what quality attribute.Item Передмова(2020) Глибовець, МиколаПередмова до видання Наукові записки НаУКМА. Комп'ютерні науки. Т. 3. (2020).Item Розподілена система навантажувального тестування у безперервній інтеграції(2020) Глибовець, Андрій; Карпович, Артем; Ковш, МиколаУ роботі вивчено можливість побудови розподіленої системи для навантажувального тестування із використанням інструментів, що перебувають у відкритому доступі, а саме Gatling, InfluxDB, Grafana, Logstash, Docker та Jenkins. Описано підхід для подолання обмежень інструменту з автоматизації тестування продуктивності Gatling, а саме обмеження, що не дає змоги побудувати власну систему розподіленого навантаження "з коробки". Це рішення інтегровано у безперервне постачання коду на основі сервісу Jenkins і випробовувано із централізованим звітуванням результатів у реальному часі. Цю систему було розроблено на противагу представленим на ринку комерційним рішенням, що надає їй більшої гнучкості.Item Прогнозування рівнів майбутніх продажів для систем планування ресурсів підприємств(2020) Гребенович, Сергій; Сініцина, РінатаУ цій статті розглянуто методи прогнозування рівнів майбутніх продажів і можливості їх використання у сучасних системах планування ресурсів підприємства. На прикладі Dynamics 365 BusinessCentral розглянуто практичне застосування таких методів, у тому числі з допомогою методів машинного навчання. Також під час роботи було досліджено наявне рішення, що базується на аналізі часових рядів (timeseries), і запропоновано доповнення із застосуванням кластерного аналізу (clustering).Item Використання алгоритму LSA для кластеризації задач із геометрії(2020) Жежерун, Олександр; Борозенний, Сергій; Ніверовський, МикитаУ роботі розглянуто метод LSA (латентно-семантичного аналізу), зокрема його найпоширеніший варіант, що базується на сингулярному розкладі матриці (SVD). На його основі реалізовано алгоритм кластеризації задач і застосовано на прикладі кластеризації задач із геометрії.Item Система управління клієнтською базою моделі SааS на прикладі компанії страхового брокера(2020) Василенко, Андрій; Глибовець, АндрійУ роботі описано деталі аналізу вимог та реалізації системи управління базою клієнтів для брокерських компаній у сфері страхування. Така система має враховувати особливості роботи компаній і модель їх бізнесу для того, щоб повністю відповідати поставленим вимогам. Можливість роботи з великою кількістю записів із будь-якого пристрою, а також наявність форм та елементів для відображення суто специфічних для галузі показників є ключовим аспектом у проектуванні та реалізації системи. За результатами роботи отримано CRM-систему, яка повністю відповідає необхідним базовим вимогам.Item Віртуальна клавіатура розпізнавання жестів(2020) Куценко, Михайло; Ющенко, ЮрійЗроблено порівняння переваг і недоліків різних типів клавіатур і запропоновано принципово новий вид клавіатури: віртуальну клавіатуру розпізнавання жестів, що здатна налаштовуватись на вподобання користувачів, які за власним бажанням можуть навчити клавіатуру розпізнавати свої жести як натискання на ту чи іншу кнопку клавіатури. У роботі описано розроблений прототип цієї віртуальної клавіатури й наведено висновки щодо зручності використання таких клавіатур. Запропоновану технологію розпізнавання жестів і налаштування клавіатури може бути застосовано для створення інших пристроїв введення інформації жестами, наприклад, комп’ютерної миші, дігітайзера, джойстика чи будь-якого іншого ігрового контролера.Item Statical and Dynamical Software Analysis(2020) Sosnytskyi, Serhii; Glybovets, Mykola; Pechkurova, OlenaThe development of software built with quality has become an important trend and a natural choice in many organisations. Currently, methods of measurement and assessment of software quality, security, trustworthiness cannot guarantee safe and reliable operations of software systems completely and effectively. In this article statistical and dynamical software analysis methods, main concepts and techniques families are overviewed. The article has an overview of why combination of several analysis techniques is necessary for software quality and examples how static and dynamical analysis may be introduced in a modern agile software development life cycle. As a summary of techniques for software analysis, represented on Table 1, due to the computability barrier, no technique can provide fully automatic, robust, and complete analyses. Testing sacrifices robustness. Assisted proving is not automatic (even if it is often partly automated, the main proof arguments generally need to be human provided). Model-checking approaches can achieve robustness and completeness only with respect to finite models, and they generally give up completeness when considering programs (the incompleteness is often introduced in the modeling stage). Static analysis gives up completeness (though it may be designed to be precise for large classes of interested programs). Last, bug finding is neither robust nor complete. Another important dimension is scalability. In practice, all approaches have limitations regarding scalability, although these limitations vary depending on the intended applications (e.g., input programs, target properties, and algorithms used). Already implemented code could be analysed in a continuous integration environment by a tool like SonarQube. Properly configured metrics and quality gates provide fast and detailed feedback on incremental changes starting from development machine till highload enterprise production environments. Software analysis helps to improve quality and development speed in Agile development life cycle with reasonable cost.Item Методи роботи з текстурами за допомогою засобів оброблення зображень на мові Python(2020) Гамаюн, Давід; Корнійчук, МаксимУ статті проаналізовано наявні підходи й алгоритми оброблення зображень та подальшого їх використання для оброблення фото одягу, перетворення їх на фото текстури для 3D-моделей. Програмна частина, описана в цій статті, являє собою бекенд для онлайн-сервісу примірювання одягу на 3D-моделях у браузері, глобальним результатом якої буде тестова версія цього сервісу.Item Окремі аспекти декларативності "мінус штрих-операції"(2020) Ющенко, ЮрійУ роботі розглянуто "мінус штрих-операцію", яку було введено як обернену до "штрих-операції" (1955 р.). Аналогом "штрих-операції" є розіменування вказівника (1964 р.). На прикладі продемонстровано, що для отримання адреси лінійного однозв’язного списку в Адресному програмуванні можна вказати порядковий номер цього вузла у списку. У цьому полягає перевага "штрих-операції" над розіменуванням вказівника. "Мінус штрих-операцію" в імперативних мовах програмування високого рівня не застосовують, оскільки за своєю сутністю вона належить до декларативної концепції програмування. У роботі досліджено динамічну (неявну) типізацію даних в Адресній мові програмування та наведено загальну класифікацію типів даних. У статті подано приклад представлення дерева в Адресній мові програмування шляхом указування "батьків" вершин дерева, без зазначення сукупності синів, як це потрібно робити в імперативних мовах програмування. В Адресному програмуванні сукупність адрес усіх синів можна отримати застосуванням до адреси вершини "мінус штрих-операції". Із цього та інших наведених прикладів випливає універсальна потужність "мінус штрих-операції" як інструменту декларативного програмування. Адресна мова програмування є багатоконцептуальною та поєднує у собі концепції імперативного та декларативного програмування. Основою декларативної концепції Адресного програмування (1955 р.) є "мінус штрих-операція".Item Сучасні підходи у проектуванні високонавантажених мап для пошуку об’єктів(2020) Жук, Максим; Проценко, ВолодимирУ роботі описано ключові аспекти, пов’язані з прикладною розробкою високонавантажених вебмап на основі мапи пошуку нерухомості. Під час розроблення системи важливо розуміти ключові вимоги та адресувати їх в архітектурному рішенні. При проектуванні архітектурного рішення було враховано такі ключові аспекти: геокодування, кластеризація, вибір провайдера мапи, фільтрація. Відображення великої кількості об’єктів є одним із ключових завдань. У результаті запропоновано технічне архітектурне рішення з обґрунтуванням використаних елементів системи, зважаючи на можливі адаптації системи та економічну доцільність.Item Впровадження системи управління контактами випускників факультету інформатики(2020) Василенко, Денис; Козопас, Вікторія; Корнійчук, МаксимУ цій статті розглянуто розв’язання проблеми збирання та управління контактами факультету інформатики НаУКМА. У роботі подано огляд архітектури обраного застосунку та описано кроки впровадження CRM системи Odoo. Крім того, продемонстровано інтегрування з цією системою на прикладі порталу випускників.Item Порівняння сервісів для створення питально-відповідальних систем(2020) Андрощук, Максим; Кирієнко, ОксанаУ статті розглянуто актуальність питально-відповідальних систем, сервіси для створення питально-відповідальних систем Dialogflow, IBM Watson Assistant, Microsoft QnA Maker, LUIS. Наведено вимоги для роботи та особливості створення питально-відповідальної системи в кожному сервісі. Робота може бути цікавою для дослідників у галузі питально-відповідальних систем і хмарних сервісів.Item Машинне навчання та доповнена реальність на пристроях на базі iOS із фреймворком MLARKit(2020) Гороховський, Семен; Франків, ОлександрСтворено фреймворк MLARKit, що дає змогу легко користуватися складними для використання у мобільних пристроях алгоритмами машинного навчання та доповненої реальності, враховуючи їхні особливості. Фреймворк створено максимально гнучким, тож сторонні розробники зможуть максимально задовольнити свої потреби без самостійної реалізації.Item Distributed Systems Technical Audit(2020) Gorokhovskyi, Kyrylo; Zhylenko, Oleksii; Franchuk, OlehModern enterprise systems consist of many deployment artifacts, thus, microservices architecture is extremely popular now. The use of distributed systems is rapidly growing despite the increased complexity and the difficulty of building. The main reason for such a trend is that the advantages of distributed systems outweigh their disadvantages. Nevertheless, product release into the market is not a final step of software development lifecycle. Next important step is maintenance that continues much longer than development. System failures and delays in finding and fixing a problem can cause huge financial and reputational expenses. In addition, the new features introduced due to changes on the market should take place on time. Prior to releasing a product to market, we would like to know in advance possible technical gaps to understand what we can expect and maybe fix some issues in order to save time and money in future. In other words, we should be able to make a decision, if the product is ready for launch or not, relying on some data. Such analysis is as well necessary when we obtain ownership for an existing product. Technical audit helps to find out technical debt and assess risks related to maintenance and extension of the system. It should be considered as mandatory activity during release preparation and ownership transfer. Well-defined criteria would help to conduct an audit smoothly and find out most of the technical debt. Properly conducted technical audit reduces risks of problems after release but it does not guarantee commercial success of product or absence of problems at all. In this article we will define what distributed systems are, we will review Monolithic, Microservices and Serverless architectures, describe what are quality attributes and what should be taken into account during technical audits. Next, we will deep dive into the technical audit process, specify what aspects of the system must be considered during an audit. Then we will iterate over checklists items in order to provide guidelines based on the best practices in industry which helps to prepare for software system audit.Item Про застосування методу аналізу ієрархій для автоматизованого оцінювання студентських робіт(2020) Олецький, Олексій; Тригуб, ОлександрУ статті досліджено задачу багатокритеріальної оптимізації, яку розв’язують методом аналізу ієрархій. Розглянуто ситуацію, коли потрібно порівняти та ранжувати студентські роботи (проекти), приблизно одного рівня якості. Продемонстровано, що в таких випадках класичний метод аналізу ієрархій, запропонований Т. Сааті, призводить до отримання досить "грубих" числових результатів (глобальних пріоритетів), коли виявляється, що робота одного студента суттєво переважає роботу іншого (хоча це не так, бо розглядали роботи приблизно одного рівня). Запропоновано використати альтернативну шкалу попарних порівнянь, яка даватиме змогу отримувати в таких випадках більш адекватні числові результати. Проведено відповідні чисельні розрахунки із використанням авторської програмної системи, результати яких наведено у вигляді скріншотів.Item Метод кластеризації з використанням багатовимірного адресного сортування(2020) Крещенко, Тарас; Ющенко, ЮрійУ роботі розглянуто багатовимірне адресне сортування, зокрема декілька методів його реалізації. Описано декілька структур даних для збереження та використання результатів багатовимірного адресного сортування. На прикладі реалізованого програмного проекту продемонстровано корисність і доцільність використання багатовимірного адресного сортування для розв’язання задач класифікації сукупностей згрупованих даних. Визначено переваги використання багатовимірного адресного сортування при розв’язанні задач кластеризації порівняно з методами, які нині набули широкого використання.Item Методи роботи з 3D-моделями у вебзастосунках(2020) Фарина, Олександр; Корнійчук, МаксимУ статті проаналізовано наявні підходи та способи відображення 3D-моделей у браузері, накладання текстури на модель, а також методи створення сучасної javascript-бібліотеки, яку можна інтегрувати в будь-який вебзастосунок. Програмна частина, описана в цій роботі, являє собою фонтенд-частини для онлайн-сервісу примірювання одягу на 3D-моделях у браузері, глобальним результатом якої буде тестова версія цього сервісу.Item Automated Approach for the Importing the New Photo Set to Private Photo Album to Make it More Searchable(2020) Nikulin, Dmytro; Buchko, OlenaThis paper focuses on describing several Informational Retrieval (IR) Multimedia Systems that work primarily with private photo albums and it provides comparison of IR Multimedia Systems in terms of functionality. The Informational Retrieval Multimedia systems, used for comparison are selected as the most known and widely used as well. The Informational Retrieval Multimedia systems compared are Mylio, Google Photo, Apple Photo, Synology Moments and digiKam. Moreover, based on these systems comparison, this paper provides the definition of the end-point user needs. Then it provides the identification and the prioritization (based on the author’s experience and opinion) the issues in private information Retrieval multimedia systems to be addressed by any technical solution. The following issues have been addressed as the most important from the end-point user’s perspective: First of all, it is “Not existing EXIF file metadata”.(It is divided into two sub issues: not existing taken date and GEO data for place it was taken at); as second, the linking a photo to an author person entity (Based on camera brand and model given as metadata); And as the last one, linking the set of photos to the predefined type of event, like birthdays, anniversaries, holidays, trips etc.(Based on tagging the photos in semi-automated way). For each issue, this document has provided the technical approaches and program algorithms (in a pseudo code) as well. Also, the using of relevant tools is provided if applicable. Each tool mentioned is described in a few words and given with a reference to read about. This document has also described the human involvement into the process, if a totally automated process is not possible. As a conclusion this paper describes the key points that were identified during the identification and addressing the issues. The conclusion also gives a proposal for a technical solution (that is required to be used during importing the new photo set into existing IR Multimedia systems) with context diagram that represents the user, its devices with multimedia data, the system to import the data from user multimedia devices and Informational Retrieval multimedia system to keep the whole private multimedia and to search the target photo set. Finally, it gives the definition of workflow steps to describe the main activity flow (with human involvement and software as well) to be implemented in a technical solution in future.Item Image Shadow Removal Based on Generative Adversarial Networks(2020) Andronik, Vladyslav; Buchko, OlenaAccurate detection of shadows and removal in the image are complicated tasks, as it is difficult to understand whether darkening or gray is the cause of the shadow. This paper proposes an image shadow removal method based on generative adversarial networks. Our approach is trained in unsupervised fashion which means it does not depend on time-consuming data collection and data labeling. This together with training in a single end-to-end framework significantly raises its practical relevance. Taking the existing method for unsupervised image transfer between different domains, we have researched its applicability to the shadow removal problem. Two networks have been used. Тhe first network is used to add shadows in images and the second network for shadow removal. ISTD dataset has been used for evaluation clarity because it has ground truth shadow free images as well as shadow masks. For shadow removal we have used root mean squared error between generated and real shadow free images in LAB color space. Evaluation is divided into region and global where the former is applied to shadow regions while the latter to the whole images. Shadow detection is evaluated with the use of Intersection over Union, also known as the Jaccard index. It is computed between the generated and ground-truth binary shadow masks by dividing the area of overlap by the union of those two. We selected random 100 images for validation purposes. During the experiments multiple hypotheses have been tested. The majority of tests we conducted were about how to use an attention module and where to localize it. Our network produces better results compared to the existing approach in the field. Analysis showed that attention maps obtained from auxiliary classifier encourage the networks to concentrate on more distinctive regions between domains. However, generative adversarial networks demand more accurate and consistent architecture to solve the problem in a more efficient way.