According to Salman (2016), software quality and testing are insufficient
regarding cognitive biases. Software
quality is affected when human thinking process differs from the laws, and that refers to cognitive biases. The author discusses different factors of cognitive biases
in an organization and how software quality and testing is affected. Software
quality can be improved by focusing on
cognitive biases and the factors that
generate them (Salman, 2016).
The software development lifecycle (SDLC) consists of
different phases where humans perform the tasks
in multiple roles. As the quality and
testing engineers, work done in the testing
phase to improve the quality includes technology, processes along with human thoughts. The impact of cognitive
biases in the quality and testing phase
should be focused because in some
projects 50% of the overall project cost depends on this phase (Salman, 2016).
According to Salman (2016), many studies have been conducted, and
different cognitive biases such as
confirmation bias, representative’s, and anchoring were focused. In (2016),
Salman performed a study on different cognitive biases and how various
factors generate biases in an organization software testing process. The factors in an organization include company culture, team structure, time
pressure (Salman, 2016). The study analyzed various effects of biases on
software testing and proved that software quality is affected by using a
functional test strategy. Also, high production defects occur because of confirmation
bias among software testers.
In (2016), Salman was performing
a systematic literature review and experimental case study at the time of the article’s
publication. The literature review focused on the area of software engineering and
identified different cognitive biases factors that generate biases. Information
from the literature review is taken as the input to conduct the case study. A time-pressure experimental case study is considered because time pressure exists in the software
industry. The case study discovers if time pressure generates confirmation bias
in software testers during testing.
According to Salman (2016), only
cognitive confirmation bias was observed, and the other cognitive biases are to
be explored and validated yet.
In (2017) Knauss et al. discuss
software-related challenges of testing automated
vehicles by conducting a case study and gathering information from two groups
such as focus groups and interviews. The survey includes participants such as
vehicle manufacturers, suppliers, and
researchers from 5 different countries. The advancements in software technology
permitted vehicles to support conditionally automatic driving. While this
functionality has advantages but safety is a concerned issue as the study
indicates many vehicles involving in
According to Knauss et al.
(2017), testing, verification, validation, and
certification are some of the primary
challenges faced by the automated road vehicles. The author discusses some of
the testing difficulties associated with
software engineering that were identified from the case study. Firstly, virtual testing and simulation is an approach that focuses on the
automation levels. In this approach,
virtual testing is considered as the practical testing is expensive. The challenges
faced by the virtual reality testing are
legal aspects, mixed reality testing, integration of techniques with the
testing process, and gathering real traffic data for simulation testing.
The second is a change
of responsibility where the driver of the
vehicle shifts the functionality to automatic mode. The functions of the vehicle
should be robust as it is in charge for each
part of driving. Also, the software related non-functional requirements such as
user interface must also be tested from the driver’s aspect. The third is
defining standards, regulations, and certifications for the automated vehicles.
The fourth is automatic
testing in which ability of testing increases with low costs and few steps. For
example in a fully automated vehicle testing must be a continuous process where
the testing process is based on specific criteria. The fifth challenge is selecting
the development process. The requirements of the automated vehicles are not entirely
available during the design phase. The author cites that integrating V-model
and continuous software engineering process will be helpful.
Finally, testing of artificial
intelligence(AI), testing of the
functionality that is implemented involves two properties such as self-adaptive
and artificial intelligence with sample data. During the run-time, the vehicle
must improve the ability to test automated systems. The current processes do
not test the techniques of machine learning during runtime, it requires new AI
and optimization tools.