Each technical revolution had its own followers and those who did not welcome it. The fear of change, uncertainty and job loss is understandable. There is nothing new in this, and we hope that this story will not repeat itself, and that there will be no new wave of Luddites, as in England in the 19th century.
The revolution does not begin with the invention of a new technology, but with a broad introduction into the industry. An invention that lies on a shelf and does not bring any benefit to society will never change anything, even if it is “The answer to the main question of life, the universe and everything else.
Machine learning is a form of artificial intelligence that has existed for about 60 years and is used mainly in areas that were too routine or too complicated for people (high risk of human error).
Even expert systems that are not AI in our current understanding (cannot learn) could provide an answer or diagnosis that is more accurate than the average expert’s answer.
What is artificial intelligence?
The word AI is increasingly used in technology, newspapers and websites, as well as in public discourse. AI is already here, not in the form of Skynet, of course, but this is also something that helps people.
AI or artificial intelligence is the modeling of human cognitive functions by machines. This includes training (the ability to make new decisions based on processed information), reasoning (the use of rules to achieve approximate or specific conclusions), self-correction (change behavior based on results).
There are many AI applications, but there are those that are actively developed now:
- Computer vision
- Speech recognition
- Expert system
- Playbots
- Machine learning
- Data collection
- Natural language processing
Of course, this division is not strict, all these applications are interconnected and one cannot be imagined without the other. Machine learning is already widely used, especially in image processing (medical image processing, face recognition), voice recognition and translation.
Machines can teach themselves new skills, knowing what the expected correct result is.
How fast the AI is developing today
Any form of AI requires computational power, data storage and for its use by people, a certain type of interface. There are several identifiable reasons why AI has made such leaps in development over the past decade:
- Moore’s Law (4). Computer power doubles every 2 years, making operations cheaper for end users, allowing the use of computers and automation in all industries.
- Demand for workers. There is a higher demand for workers in virtually any industry, and this requires more efficient processes. Computer-based or AI-based approaches can save a lot of time and money and free up some resources to work with new products.
- Availability of the Internet. Internet access can be useful in both directions: it provides unlimited access to data for AI and makes AI more accessible to end users.
- Big data. Another new term. Analysis of large amounts of data is almost impossible for a person, so here comes to the aid of AI to find in these templates.
These requirements involve the development of new services and applications. The main goal is to increase efficiency and productivity, leaving more room for creativity.
Another innovative new approach is AI, which builds AI itself and does it better than people: AutoML (5) Google. Why such AI is necessary? The industry advances too quickly, and experts are not enough for satisfaction of requirements of the market.
How will AI affect software testing?
AI will not penetrate QA (quality control), as many people are thinking and talking these days (at least in the foreseeable future), but this will have a huge impact on the process and methods of QA. QA engineers will either have to learn new skills or look for professions in a more conservative field of work.
There are already some structures and services that can generate and run test scenarios without any or minimal human involvement (Appdiff, ReTest, myWizard). These are not yet tests of the subject domain algorithms, because AI cannot know what is the correct logic without any additional information (e.g. QA).
However, AI understands gestures (for mobile phone applications), input requirements for each type of field and general user input scenarios. All you have to do is find all the fields and run all the test combinations. Perhaps with the experience of searching for bugs, it could do some tests earlier to find bugs faster.
AI with different experience (knowledge base) will have different skills and unfortunately the result using one or another tool will not be predictable.