ArticlePDF Available

Software Quality in Artificial Intelligence System

Authors:

Abstract

The main objective of the study is to define the metrics to measure the quality of software in the architecture for an artificial intelligence system. The proposed architecture for measurement consists of four components; Task specification layer, problem solver layer, domain layer and an adapter layer. These four components are hierarchically organized in a layered fashion. In this architecture, the overall structure is decomposed into sub components, in a layered way such that a new layer can be added to the existing layer that can change the behavior of the system. The quality of components in the architecture are measured with metrics such as source code, depth of inheritance, number of paths, complexity level etc., These metrics are related to software quality characteristics suggested by ISO. This study is organized in the following way; Firstly, the study addresses the significance of software architecture in a software intensive AI system, the importance of quality of the software in the architecture and a layered architecture for artificial intelligence system. The secondly, the study addresses the relation ship between the quality characteristics and the metrics used for measuring the quality. The performance of the system with respect to functional requirement and non-functional requirements are measured and discussed.
... This section discusses existing quality models for AI systems, such as [10,21,23,73,74]. In summary, each of the AI system quality models focuses on the quality characteristics of specific AI systems. ...
... The SMS identified some existing quality models for AI systems. For instance, Pons and Ozkaya [10] studied quality characteristics for AI-enabled systems; Kuwajima and Ishikawa [23] provided holistic insights on the quality of AI systems by incorporating the characteristics of ML and AI ethics into traditional software quality concepts (ISO 25000); and Vinayagasundaram and Srivatsa [73] aimed to measure the quality of Software Architecture in AI Systems. ...
... This paper has aimed to investigate and assess existing quality models for AI software, systems, and components. Several quality models for AI software were found [3,[69][70][71][72], as well as for systems [10,21,23,73,74]. These quality models only focus on quality characteristics at the software and system levels. ...
Article
Full-text available
Citation: Ali, M.A.; Yap, N.K.; Ghani, A.A.A.; Zulzalil, H.; Admodisastro, N.I.; Najafabadi, A.A. A Systematic Mapping of Quality Models for AI Systems, Software and Components.
... This section discusses existing quality models for AI systems, such as [10,21,23,73,74]. In summary, each of the AI system quality models focuses on the quality characteristics of specific AI systems. ...
... The SMS identified some existing quality models for AI systems. For instance, Pons and Ozkaya [10] studied quality characteristics for AI-enabled systems; Kuwajima and Ishikawa [23] provided holistic insights on the quality of AI systems by incorporating the characteristics of ML and AI ethics into traditional software quality concepts (ISO 25000); and Vinayagasundaram and Srivatsa [73] aimed to measure the quality of Software Architecture in AI Systems. ...
... This paper has aimed to investigate and assess existing quality models for AI software, systems, and components. Several quality models for AI software were found [3,[69][70][71][72], as well as for systems [10,21,23,73,74]. These quality models only focus on quality characteristics at the software and system levels. ...
Article
Full-text available
Recently, there has been a significant increase in the number of Artificial Intelligence (AI) systems, software, and components. As a result, it is crucial to evaluate their quality. Quality models for AI have in fact been proposed, but there is a lack of Systematic Mapping Studies (SMS) for quality models in AI systems, software, and components. The goal of this paper is to understand, classify, and critically evaluate existing quality models for AI systems, software, and components. This study conducts an SMS to investigate quality models proposed by various authors in the past. The study only found quality models for AI systems and software. So far, the SMS has revealed no work on AI software component quality models. Finally, the limitations of the quality models and the implications for future research and development efforts are discussed.
... Backward and forward snowballing are ways of systematically analysing the references and citations of a group of papers. Almost 30% of papers were found during snowballing [7]. ...
... • Evaluating the quality of test data A testing framework for Machine Learning (ML) is provided, which introduces the concept of regression testing as well as a mechanism for ranking the accuracy of new ML algorithm versions [7]. To cope with large-scale multidimensional input data sets (various image graphs and movies) [8], each model must be trained with new testing methods. ...
Article
Full-text available
In recent years, Artificial Intelligence (AI) has emerged as an innovative technology in a variety of areas, including software development. The demand for high-quality software has grown in tandem with the increasing complexity of applications and user expectations.AI-driven approaches are revolutionizing traditional software development methodologies by automating and augmenting various stages of the development life cycle, leading to improved efficiency, reduced costs, and enhanced software quality. This research explores the crucial role of AI in developing high-quality software and its impact on the software development process. Firstly, it discusses how AI technologies like machine learning, natural language processing, and deep learning can facilitate requirements gathering, analysis, and validation, leading to better understanding and refinement of user needs. Next, it delves into the significance of AI in automating the coding process, such as generating code snippets, fixing bugs, and optimizing performance, thus accelerating development and reducing human errors. Moreover, the paper highlights the pivotal role of AI in software testing and quality assurance. AI-powered testing tools can execute comprehensive tests more efficiently, detect defects, and predict potential software vulnerabilities, thereby enhancing the overall reliability and robustness of the software product. Additionally, AI techniques can enable real-time monitoring and analytics, allowing developers to identify and address issues promptly during the software's operational phase. Furthermore, the paper addresses the ethical considerations and challenges associated with AI in software development, including bias in training data, interpretability of AI-driven decisions, and potential job displacement for software developers.
... (4) "There are so many quality models but it is necessary to select appropriate quality attributes for AI systems." Vinayagasundaram and Srivatsa (2007 Software Development (1) "The outcome of an ML system is highly intractable and nontransparent due to its mathematical complexity, as well as the dependency of its behavior on both the training and in-use data and processes." Poth et al. (2020). ...
Article
Full-text available
There is a widespread demand for Artificial Intelligence (AI) software, specifically Machine Learning (ML). It is getting increasingly popular and being adopted in various applications we use daily. AI-based software quality is different from traditional software quality because it generally addresses distinct and more complex kinds of problems. With the fast advance of AI technologies and related techniques, how to build high-quality AI-based software becomes a very prominent subject. This paper aims at investigating the state of the art on software quality (SQ) for AI-based systems and identifying quality attributes, applied models, challenges, and practices that are reported in the literature. We carried out a systematic literature review (SLR) from 1988 to 2020 to (i) analyze and understand related primary studies and (ii) synthesize limitations and open challenges to drive future research. Our study provides a road map for researchers to understand quality challenges, attributes, and practices in the context of software quality for AI-based software better. From the empirical evidence that we have gathered by this SLR, we suggest future work on this topic be structured under three categories which are Definition/Specification, Design/Evaluation, and Process/Socio-technical.
Article
Software quality models are frequently used in large projects. They give guidance in what requirements to collect, architectural qualities to consider, and what to test. In the literature, several quality models have been defined. Some of them are focusing on model-specific quality attributes, while others vary in scope, level of details. Some use elaborate frameworks taking many perspectives into account; other use traditional frameworks based on a hierarchical breakdown of quality. The paper's purpose is to compile quality attributes recognized by researchers in framework quality into a common and established framework. A clear picture of quality attributes is presented in the form of a software manual. Such a picture would be useful for researchers as it defines the relationships between the attributes and identifies some properties for each of them. In addition, one of the advantages of the framework is that it can be easily updated by any new attributes discovered by researchers.
Conference Paper
Software metrics has significant scope in the software quality and productivity measurement. In this work the competence of Rule Accuracy Algorithm is enhanced by the Fitness Proportionate selection algorithm that has been previously applied to genetic algorithm as potential recombination of selection, which overcomes the ant colony algorithms multiple path issue. The work analyzes the adequacy of Rule Accuracy Algorithm to validate whether the ant colony algorithm or Fitness Proportionate selection algorithm provide best results. Experimental result shows interesting conclusions on the improvements of the rule accuracy algorithm in Fitness Proportionate selection algorithm. It also opens up new areas of research on the efficiency and effectiveness of software metrics validation.
Article
The world and every 5 min someone dies from Traumatic Brain Injury (TBI). Furthermore, it is a leading cause of death and disability in the world. Identification of patients with poor neurologic prognosis causes problem for the patients and their families. Presently, computer technology is increasingly been used and implemented in healthcare and predicting patient outcome can be useful as an aid to clinical decision making, explore possible biological mechanisms and as part of the clinical audit process. Machine learning, a branch of artificial Intelligence aims to make computer automated predictions more accurate. Neurologists need an accurate model to predict the neurologic outcome in patients with brain injury and this remains a challenge for the intensivist. A critical review on existing predictive models of traumatic brain injury is conducted in Science Direct, PubMed, Elsevier and Springer Link some other publishers. A review of related literature reveals that there is no method classified yet as being the perfect machine learning method. The review further shows that no prognostic models in TBI have yet been developed with proven results. In addition, it shows that predicting the outcomes of traumatic brain injury based on Glasgow Outcome Scale using machine learning methods is essential and needs to be improved.
Article
In this article, I present a software architecture for intelligent agents. The essence of AI is complex information processing. It is impossible, in principle, to process complex information as a whole. We need some partial processing strategy that is still somehow connected to the whole. We also need flexible processing that can adapt to changes in the environment. One of the candidates for both of these is situated reasoning, which makes use of the fact that an agent is in a situation, so it only processes some of the information – the part that is relevant to that situation. The combination of situated reasoning and context reflection leads to the idea of organic programming, which introduces a new building block of programs called a cell. Cells contain situated programs and the combination of cells is controlled by those programs.
Article
We propose a new approach to text categorization known as generalized instance set (GIS) algorithm under the framework of generalized instance patterns. Our GIS algorithm unifies the strengths of k-NN and linear classifiers and adapts to characteristics of text categorization problems. It focuses on refining the original instances and constructs a set of generalized instances. We also propose a metamodel framework based on category feature characteristics. It has a metalearning phase which discovers a relationship between category feature characteristics and each component algorithm. Extensive experiments have been conducted on two large-scale document corpora for both GIS and the metamodel. The results demonstrate that both approaches generally achieve promising text categorization performance.
Article
This paper describes a graph-theoretic complexity measure and illustrates how it can be used to manage and control program complexity. The paper first explains how the graph-theory concepts apply and gives an intuitive explanation of the graph concepts in programming terms. The control graphs of several actual Fortran programs are then presented to illustrate the correlation between intuitive complexity and the graph-theoretic complexity. Several properties of the graph-theoretic complexity are then proved which show, for example, that complexity is independent of physical size (adding or subtracting functional statements leaves complexity unchanged) and complexity depends only on the decision structure of a program.