5 research outputs found

    Проектування інформаційного забезпечення для оцінки якості ПЗ вбудованих систем

    Get PDF
    This article presents a system for evaluating the quality of embedded software using a decision system based on fuzzy logic. These approaches will improve the assessment of software quality, due to its features. This article defines the main criteria for software quality used in assessing the quality of the software. The main literature was examined, in which fuzzy logic was described, decision-making systems using fuzzy logic, as well as software quality assessment systems, including software for embedded systems. The main characteristics and properties of embedded syst ems were considered. Based on the considered characteristics and properties of embedded systems, the ranking of criteria was made, which will be further used in the software quality assessment methodology. The main criteria that are used to evaluate the quality of software were considered, and the criteria presented were distributed according to the degree of influence on the assessment of the quality of software of embedded systems. Fuzzy logic was considered, and more precisely: the basic properties of fuzzy logic and fuzzy numbers, the basic mathematical operators applied to fuzzy numbers. The system for constructing rules for the rule base, as well as the defuzzification process, built on the basis of the centroid method, is analyzed. An example of software evaluation for embedded systems was considered. In this example, linguistic variables were determined, as well as their numerical ranges, which were used for the initial assessment of the quality criteria of this software. Each range of ratings was distributed according to the influence of a criterion on software quality. The output linguistic variable and its numerical value were also determined. In the end, based on the set values, an estimate of the set software was derived. The theoretical result obtained in this article is the basis for constructing a system for evaluating software quality for embedded systems.У даній статті представлена система для оцінки якості програмного забезпечення вбудованих систем з використанням системи прийняття рішень на основі нечіткої логіки. Дані підхід дозволить поліпшити оцінку якості програмного забезпечення, за рахунок урахування його особливостей. У даній статті визначено основні критерії якості програмного забезпечення, використовувані при оцінці якості даного програмного забезпечення. Була оглянута основна література, в якій була описана нечітка логіка, системи прийняття рішень, що використовують нечітку логіку, а також системи оцінки якості програмного забезпечення, в тому числі і програмного забезпечення для вбудованих систем. Були розглянуті основні характеристики та властивості вбудованих систем. На підставі розглянутих характеристик і властивостей вбудованих систем виробилося ранжування критеріїв, які в подальшому будуть використовуватися в методиці оцінки якості програмного забезпечення. Були розглянуті основні критерії, які використовуються для оцінки якості програмного забезпечення, а також представлені критерії, які були розподілені за ступенем впливу на оцінку якості програмного забезпечення вбудованих систем. Була розглянута нечітка логіка, а точніше: основні властивості нечіткої логіки і нечітких чисел, основні математичні оператори, що застосовуються до нечітким числах. Розібрана система побудови правил для бази правил, а також процес дефазифікації, побудований на підставі центоїдного методу. Було розглянуто приклад оцінки програмного забезпечення для вбудованих систем. В даному прикладі були визначені лінгвістичні змінні, а також їх числові діапазони, які використовувалися для первісної оцінки критеріїв якості даного програмного забезпечення. Кожен діапазон оцінок був розподілений згідно впливу критерію на якість програмного забезпечення. Також була визначена вихідна лінгвістична змінна і її числове значення. В кінці, на основі заданих значень була виведена оцінка заданого програмного забезпечення. Отриманий теоретичний результат в даній статті є основою для побудови системи для оцінки якості програмного забезпечення для вбудованих системи

    Static analysis for facilitating secure and reliable software

    Get PDF
    Software security and reliability are aspects of major concern for software development enterprises that wish to deliver dependable software to their customers. Several static analysis-based approaches for facilitating the development of secure and reliable software have been proposed over the years. The purpose of the present thesis is to investigate these approaches and to extend their state of the art by addressing existing open issues that have not been sufficiently addressed yet. To this end, an empirical study was initially conducted with the purpose to investigate the ability of software metrics (e.g., complexity metrics) to discriminate between different types of vulnerabilities, and to examine whether potential interdependencies exist between different vulnerability types. The results of the analysis revealed that software metrics can be used only as weak indicators of specific security issues, while important interdependencies may exist between different types of vulnerabilities. The study also verified the capacity of software metrics (including previously uninvestigated metrics) to indicate the existence of vulnerabilities in general. Subsequently, a hierarchical security assessment model able to quantify the internal security level of software products, based on static analysis alerts and software metrics is proposed. The model is practical, since it is fully-automated and operationalized in the form of individual tools, while it is also sufficiently reliable since it was built based on data and well-accepted sources of information. An extensive evaluation of the model on a large volume of empirical data revealed that it is able to reliably assess software security both at product- and at class-level of granularity, with sufficient discretion power, while it may be also used for vulnerability prediction. The experimental results also provide further support regarding the ability of static analysis alerts and software metrics to indicate the existence of software vulnerabilities. Finally, a mathematical model for calculating the optimum checkpoint interval, i.e., the checkpoint interval that minimizes the execution time of software programs that adopt the application-level checkpoint and restart (ALCR) mechanism was proposed. The optimum checkpoint interval was found to depend on the failure rate of the application, the execution cost for establishing a checkpoint, and the execution cost for restarting a program after failure. Emphasis was given on programs with loops, while the results were illustrated through several numerical examples.Open Acces

    Improved point center algorithm for K-Means clustering to increase software defect prediction

    Get PDF
    The k-means is a clustering algorithm that is often and easy to use. This algorithm is susceptible to randomly chosen centroid points so that it cannot produce optimal results. This research aimed to improve the k-means algorithm’s performance by applying a proposed algorithm called point center. The proposed algorithm overcame the random centroid value in k-means and then applied it to predict software defects modules’ errors. The point center algorithm was proposed to determine the initial centroid value for the k-means algorithm optimization. Then, the selection of X and Y variables determined the cluster center members. The ten datasets were used to perform the testing, of which nine datasets were used for predicting software defects. The proposed center point algorithm showed the lowest errors. It also improved the k-means algorithm’s performance by an average of 12.82% cluster errors in the software compared to the centroid value obtained randomly on the simple k-means algorithm. The findings are beneficial and contribute to developing a clustering model to handle data, such as to predict software defect modules more accurately

    Integration of Artificial Intelligence and Human Computer Interaction in Healthcare

    Get PDF
    Artificial intelligence (AI) and human-computer interaction (HCI) are two important fields that are increasingly being used in the healthcare industry. AI technologies such as machine learning and natural language processing can be used to analyze large amounts of data, identify patterns and trends, and make predictions. This can be helpful in a variety of healthcare applications, such as predicting the likelihood of a patient developing a particular disease or condition, helping doctors diagnose patients more accurately, and identifying potential side effects of drugs. HCI, on the other hand, focuses on the design of user-friendly and effective interfaces between humans and computers. In healthcare, HCI plays a crucial role in the development of electronic health record systems, telemedicine platforms, and other digital health tools that allow healthcare professionals to more easily access and manage patient data. AI alone cannot provide the insights that healthcare providers need without effective HCI to enable interpretation and action, while HCI alone cannot provide the level of accuracy and efficiency that AI can deliver. By using AI and HCI together, healthcare providers can leverage the strengths of both technologies, allowing for more efficient and accurate analysis of data, improved diagnosis and treatment, and ultimately, better patient outcomes. Overall, the future of AI and HCI in healthcare looks bright, and these technologies have the potential to greatly improve the way that healthcare is delivered and to make it more accessible and affordable for people around the world

    A Systematic Review of Human-Computer Interaction and Explainable Artificial Intelligence in Healthcare with Artificial Intelligence Techniques

    Full text link
    Artificial intelligence (AI) is one of the emerging technologies. In recent decades, artificial intelligence (AI) has gained widespread acceptance in a variety of fields, including virtual support, healthcare, and security. Human-Computer Interaction (HCI) is a field that has been combining AI and human-computer engagement over the past several years in order to create an interactive intelligent system for user interaction. AI, in conjunction with HCI, is being used in a variety of fields by employing various algorithms and employing HCI to provide transparency to the user, allowing them to trust the machine. The comprehensive examination of both the areas of AI and HCI, as well as their subfields, has been explored in this work. The main goal of this article was to discover a point of intersection between the two fields. The understanding of Explainable Artificial Intelligence (XAI), which is a linking point of HCI and XAI, was gained through a literature review conducted in this research. The literature survey encompassed themes identified in the literature (such as XAI and its areas, major XAI aims, and XAI problems and challenges). The study's other major focus was on the use of AI, HCI, and XAI in healthcare. The poll also addressed the shortcomings in XAI in healthcare, as well as the field's future potential. As a result, the literature indicates that XAI in healthcare is still a novel subject that has to be explored more in the future
    corecore