Our daily activities are increasingly dependent on the leadership, judgement, and assistance provided by AI systems. It has never been more important or necessary to safeguard the integrity of such decision-making in the history of technology.
A new BCS pre-publication book titled "Artificial Intelligence and Software Testing - Building systems you can trust" has had me on board as an authorised reviewer.
A fantastic resource that covers every facet of how software testing has been disrupted and challenged by machine learning (ML) and artificial intelligence (AI), as well as the limitations of both.
The essence of what artificial intelligence is all about is societal faith in AI decision-making. The level of societal adoption of AI increases with societal trust in the technology.
Driverless automobiles and the development of smarter sentencing guidelines for offenders are just two examples of how AI is simplifying our lives in many ways we never dreamed possible.
However, we must have faith that AI decision-making will produce the right solution or response that is impartial and ethical.
Trust in The AI response
Building confidence and trust in AI answers and responses begin with testing AI systems.
The issues are more complex, and AI systems are unique. In contrast to other types of software, which only change when intentionally updated, AI systems evolve in response to stimuli.
Like other software upgrades, AI's behaviour is influenced by stimuli rather than being predetermined. Consequently, the testing process itself will have an impact on how the systems perform in the future and make any traditionally anticipated findings less predictable.
Testing AI presents a number of challenges, one of which is reproducing and explaining a set of results. The fundamental challenge is ultimately persuading everyone that AI systems can be trusted to make critical judgements.
Biases abound in life as we experience it; some are apparent, others are implicit, some are created by humans and some are not.
Biases exist in both people and data, and these biases can be ingrained in AI systems. As an illustration, since fewer women are working in technology than there are males, AI may be biased in favour of men when determining which candidates are most likely to succeed in a technology-related position.
There is a serious risk to society from the widespread usage of AI systems that these prejudices will become entrenched and reinforced.
The fact that individuals and the general public place an excessive amount of faith in computers further increases the likelihood of prejudice.
There is a common notion that "if the computer says so, it must be true." The information the AI system is now analysing may be accurate, but the resulting conclusion and societal consequences may be very detrimental.
Whose responsibility is it to prevent the system from going live? Should such a system be permitted to enter production?
How can we identify moral and immoral behaviour? What should one do in a scenario where there are ethical ambiguities or problems?
An autonomous vehicle may veer left to escape an oncoming vehicle and strike a group of six people waiting at a bus stop, or it could veer right and strike a mother pushing a stroller with a new baby in it.
What if the approaching car was carelessly driving on the opposite side of the street? What would be moral behaviour in this situation, and what would be the proper system response?
How can such behaviour be programmed? How can we test it?
Due to the probabilistic nature of the system, all the difficulties and distinctions relating to AI systems have an impact on knowledge and the requirement for specialisation in data science and mathematics.
Conventional systems are easier to comprehend because they have logic that is expressed in technical language and logically organised into classes and methods that were essentially created by humans. These classes and methods typically relate in some way to the requirements, functionality, or input and output data.
Even though test experts should be familiar with the procedure, test data design must be carried out by a qualified data scientist due to its complexity. AI programmes can be exceedingly intricate.
Some things remain the same. Long-standing knowledge holds that a fault will cost more the longer it is present, both in terms of the impact on the project, the system, and its users as well as in terms of the expense to fix it.
But even if testing practises still revolve around shifting left (and right), it is difficult to foresee a scenario in which AI will not prove to be a major disruption to all facets of software engineering, including software testing.
As is well known, testing AI systems involve a variety of fresh difficulties, dangers, and abilities. The previous hazards and abilities are not necessarily out of date. There is no denying that AI has brought about a period in which it is getting harder and harder to forecast an expected output and behaviour of a system. When testing non-AI systems, not all components of software and system testing have traditionally been prepared for and carried out in this manner.
The community of software testers is accustomed to testing and verifying a system against a predefined set of expected outcomes. To obtain insights into new test approaches that will supplement existing ones for testing Artificial Intelligence, we now need to reset our thinking and understanding of testing systems.