The Impact of Human Factors on the Software Testing Process : The Importance of These Factors in a Software Testing Environment

Software testing is a key process that ensures a reliable quality product, and like other activities in the development process, have a wide range of tools available, but still requires a lot of human work, where the final quality of the software can be impacted directly by several factors. In this sense, this study aims to identify the human factors (cognitive, operational and organizational) present in the test process and to define the influence of these factors during their execution. Thus, the article presents a study with quantitative methods and techniques of the survey type, in which 112 professionals from the test area participated in 17 Brazilian states. The results provide a set of human factors that correlate with the final quality of a software product or service.


INTRODUCTION
In current scenario, where demand for software products grows every day, software factories do not hesitate to receive new projects.In order to increase their profits, they often acquire a workload that exceeds their production capacity, thus promoting an overload on their employees.Professionals in the area of software testing are affected directly, and many times, certain factors can interfere with their performance during the performance of their daily tasks, thus affecting the purpose of the tests, which is to reduce the probability of occurrence of errors once the system is in production (Jorgensen, 2016).
Testing processes are complex and costly, and in order to reduce efforts, without compromising product effectiveness and quality, automation of testing activities has been adopted as a popular approach in software factories (Sahaf et al., 2014).Nevertheless, automation usually requires substantial investment and will not always be more cost effective than manual testing.This shows the importance of conducting the tests by trained professionals, motivated and without the influence of factors that may impact the quality of your work day.
It is a fact that testing processes have evolved over time and even though there have been significant improvements in methods, techniques and tools, there are difficulties to keep up with the increasingly rapid evolution of software engineering and trends of development paradigms (Causevic, Sundmark and Punnekkat, 2010).However, despite the evolution, software testing is still an activity that requires a large participation of human work, that is, a socio-technical activity rather than purely technical, and thus the result of a product will be highly dependent on the performance of professionals included in this process (Mäntylä, Itkonen and Iivonen, 2012).
Despite decades of effort, software quality remains a central concern in software engineering.According to (Tassey, 2002).costs were found to cost US companies approximately 1% of US GDP.What, according to (Sidiroglou, Perkins and Rinard, 2016) still happens today, as the authors state in their study published by MIT Computer Science and Artificial Intelligence Laboratory Cambridge United States that in fact, modern software projects contain so many defects, and the cost of correction remains so large, that projects are usually shipped with a long list of known but uncorrected defects.
In this way, this article proposes to understand the human factors (cognitive, operational and organizational aspects) belonging to the test process and how they can impact the quality of the same.Research on human factors in software testing is limited.Many of the studies investigated for this research generally cover the performance of the application of some testing techniques, the benefits of automation or the differences of practices applied in software factories that follow traditional or agile development methods.In this sense, this study investigates if there is some kind of influence of human factors during the software test, and what is the impact of these factors during the same.
The article is structured as follows: section 2 describes the conceptual context considered in this study; section 3 presents the method used during the research; section 4 presents the results obtained and the data analysis process; section 5 presents a discussion of the findings of the study and its implications; and finally, section 6 presents the final considerations.

CONCEPTUAL CONTEXT
The studies presented in this topic aim to refer to theories about the topic addressed.For a better understanding, it is important to divide it into three aspects, human factors, software testing and software quality.On these aspects, there are many definitions.Several authors such as (Deak, Stålhane, and Sindre, 2016;Elberzhager, Münch and Assmann, 2014;de Castro and Junior, 2015;de Moraes and Mont'Alvão, 2010) recently pointed out the need to manage human factors during the testing phase.
Some authors address a context about tests being the key to ensuring that a product or service is reliable and that it is dependent on human factors, but despite the effort of some companies to recognize the importance of testing and motivating professionals in this area, Emphasis is placed on minimization of costs and project duration (Deak, Stålhane, and Sindre, 2016).Other authors point to studies that help companies to better comprehend the effort that must be applied during software testing in order to improve the quality of the product which will be made available to the customer (Elberzhager, Münch and Assmann, 2014).
Some studies emphasize that ergonomics aims to adapt the work to the man, promoting adequate environmental conditions that attend the employees with a minimum of comfort and satisfaction in the accomplishment of their tasks (de Moraes and Mont'Alvão, 2010).
The analyzed approaches bring significant results to the identification of the influence of human factors in software testing.However, there are still gaps to be addressed in the related work.Thus, in comparison with the other works listed, this paper focuses on the identification of the influence of human factors on software testing.

Human Factors in the Software Testing Process
In the current context companies are recognized for their flexibility, ability to serve their clients and professionalism (Vargas, 2016).In software factories, the human factor represents the central investment capital to achieve productivity and quality sought.In this way, it can be seen that the influence of human factors in the work environment is directly related to the quality of the product being developed and its productivity, so it can be said that the increase in efficiency and human effectiveness is the great factor responsible for building in the development of software products (Pirzadeh, 2010).
As regards the final quality of the software, the testing process provides the last element from which quality can be estimated and, more pragmatically, errors can be discovered (Pressman and Bruce, 2016).In this sense, it is important to emphasize that human factors are defined as cognitive, organizational and operational aspects and these factors are the influence to the work day of the professional of the test area and consequently the quality of the product.
The cognitive aspects can cause difficulties of perception, absorption and retention of information if subjected to factors such as mental load, stress, psychological pressure, among others that are part of the daily life of companies.They also include mental workload, human error, interaction between the human being and the machine; the operational aspects are characterized by the intense rhythm of activities, the repetitiveness and monotony inherent in the production process, as well as the pressure for production and control periods.Operational problems present the absence of some events in the development of tasks, such as: task scheduling, team interaction, rhythm suitability, employee autonomy, programmed breaks, proper supervision, precision, tolerance, control Quality and dimension of the teams with a balance between the volume of service and the available workforce; and finally, organizational aspects present problems related to the lack of adequate division of activities, participation, management, working hours with evaluation of schedules, shifts and scales, as well as the lack of selection and training of personnel, aiming at training for productive activities (Correia and Silveira, 2009).
Even with all the improvements implemented in recent years, the quest for software quality is always constant.Each of the aforementioned factors directly influences the final quality of the product, since without the ideal working conditions, and being directly affected by the mentioned aspects, the test professional does not enjoy its maximum performance, resulting in the discovery of possible future problems in the product delivered to the customer product quality.

METHOD
Approach of quantitative research methods and techniques of survey type (Creswell, 2013;Freitas et al., 2000) was used to investigate the influence of human factors in the software testing process.

Research Questions
Through the related works for this study were identified some issues that could be solved through a more specific research.Thus, in order to understand human factors more deeply in the software testing process, this article aims to answer the following research questions: Q1: What is the influence of human factors during the software testing process?Q2: How do these factors influence the work day of the professional test?

Research Instrument
The collection instrument used in this research was created based on the QWLQ-bref (Quality of Working Life Questionnaire), which is an abbreviated version of the QWLQ-78 quality of life questionnaire (Cheremeta et al., 2011), following the methodology of WHOQOL-100 (Power, Bullinger and Harper, 1999), the World Health Organization (WHO).
The QWLQ-bref presents 20 questions divided into four domains (physical, psychological, personal, professional).In this way, 12 QWLQ-bref questions were used in order to better understand the quality of life of the professional in the software testing area.The other questions were elaborated to collect information on the personal and professional aspects of the participants.In order to fit the reality of this work, 28 questions were created with the purpose of evaluating indicators related to cognitive, operational and organizational aspects.
The construction of the instrument was divided between questions about personal data, professionals, cognitive, operational and organizational aspects.All questions were validated and applied as a pilot test among 11 participants of the GRUPES.The instrument was applied to the participants through the Portuguese language of Brazil.The results were used to improve the text of some items and their answers.

Procedure
The questionnaire was built from the tool SurveyMonkey 1 , the link to the instrument was shared among professionals in the area of software testing through e-mail and social networks.The survey is available at https://goo.gl/FFQUwh.The survey was attended by 115 professionals from the area and was available between 07/12/2016 to 10/01/2017.Among the 115 participants, the survey obtained 112 valid answers.

Sample
The sample included the main roles in the testing area.Table 1 shows the number of participants, mean and standard deviation for age and sex per position in the test process.
Among the main roles cited above Table 2 presents a comparison with the number of professionals listing the positions and their respective academic backgrounds, where it is possible to realize that the most identified academic formation among professionals in the area of software testing is Systems of Information having a total of 40.2% which equals 45 professionals.

Data Analysis
The collected responses were converted to a database, where they were statistically analyzed using the IBM SPSS Statistics Base 2 software, and it is possible to perform a descriptive analysis of the data and generate the 1 SurveyMonkey is a web tool that provides the use of online surveys and data collection for analysis. 2IBM SPSS Statistics Base is statistical analysis software that provides the resources needed to run a data analysis process.
tables presented in this article.The analysis of the data began with the verification of the profile of the participants, where only the population that was interested in the study were filtered.Then, some answers were constantly compared to identify the reliability of the data.

RESULTS
The survey had participation of 17 Brazilian states, where the northern region had only the state of Amazonas with 0.9% participation; in the northeast the states of Bahia, Ceará, Paraíba, Pernambuco and Rio Grande do Norte had the participation of 37.5% of participants; in the Midwest, the participation of all its states, the Federal District, Goiás, Mato Grosso and Mato Grosso do Sul was verified, thus obtaining 8.9% of respondents; in the South-east region, the research reached the participation of the states of Minas Gerais, Rio de Janeiro and São Paulo, which contributed with a 34.8% participation; finally, the South region had 17.9% with the participation of all its states, being Paraná, Rio Grande do Sul and Santa Catarina.
Table 3 presents data on the number of participants and their percentages in each of the Brazilian regions.

Human Factors
Table 4 presents the descriptive and psychometric statistics of the 12 QWLQ-bref measures, which were used and obtained through these studies.The first two columns present the minimum and maximum values with a Likert scale that could vary from 1 to 5; the third column shows the value of the median obtained in each of the aspects; the last column shows the fashion and is divided in order to show the option that was most answered (medium, high, more or less, good, almost always, very, sometimes, little) in the scale and the number of participants that marked this option (N).The consistency of the answers obtained revealed that the measuring instrument presented high reliability in the space where it was applied.The Cronbach's alpha value for these factors was 0.852 according to the preference established by (Streiner, 2003), which suggests that the coefficient values are above 0.80 so that the research has a higher index of confidence.

Cognitive Aspects
Among the cognitive aspects identified in the research it was possible to evaluate which are the most frequent among professionals in the field of tests.Thus, Table 5 presents the cognitive difficulties that most influence in their daily activities.
The most indicated factor shows the stress as a present difficulty in 67.0% of the work environment.Within the scope of the work, one of the main agents causing problems is the stress that can be generated by several professional or social factors (Sadir, Bignotto and Lipp, 2010).
In order to verify the experience of participants who affirm that stress is the greatest cognitive difficulty, Table 6 presents a relation between the time of experience and the cognitive difficulties, where it is possible to analyze at what point in the career the professional feels this difficulty.
Participants who claim that stress is the most pressing cognitive difficulty in their daily lives have 1 to 3 and 5 to 7 years of experience.Thus, of the nine difficulties analyzed, six were identified more frequently among these professionals.
Thus, in order to understand why these professionals present these difficulties more frequently during this period, a t-test of independent samples was performed to analyze if there is any significant difference between these two groups of professionals.For this sample, the degree of freedom was of (df = 56) and the value of t = 2,508 having a significance (α = 0.15) not reaching what was proposed by (Hubbard, 2011) which is α <0.05.In this case, it can be affirmed that there is no significant difference between these two groups that provides the indication of stress as the main cognitive difficulty.

Operational Aspect
Table 7 presents the operational difficulties identified by the participants during the execution of software tests in their daily activities.The study shows that conflicts with the developer is the most indicated difficulty among test professionals and represents 42.0% of the participants, who claim that this difficulty can affect the final quality of the software testing process.Involvement of all team members is essential to success.In projects that software development is done involving multidisciplinary teams, their success depends on the performance of team members, as in any project that involves interaction between people (Moe, Dingsøyr and Dybå, 2010).
Table 8 shows a relationship between positions and operational difficulty, where it is possible to verify the positions of participants that affirm that the conflict with the developer is the operational difficulty that most affects their activities.
It has been identified that test analysts and test leaders report the conflict with developers as the main operational difficulty.Thus, of the five difficulties analyzed, three were identified more frequently among these professionals.
Thus, in order to verify if there is difference in quality of life at work between these two groups, a t-test of independent samples was performed.For this sample the degree of freedom was (df = 71) and the value of t = 1,403 having a significance (α = 0.165).In this case it can be affirmed that there is no significant difference between the two groups in the quality of life at work in relation to the positions within the operational aspect.

Organizational Aspect
Among the organizational aspects identified in the research it was possible to analyze which represent in a most impactful way quality of life in the work of the professionals.Thus, Table 9 presents the organizational difficulties that most influence in their daily activities.There were two difficulties that were identified as the main ones among the participants, both of which obtained 47.3% of the professionals who affirm that the absence of training and the lack of competent management compromise the quality of life at work.Thus, in order to verify if this reality is applied in companies of different sizes, Table 10 was developed, which shows a relation between the size of the company and the organizational difficulties.
The professionals who affirm that the absence of training and training influence in their activities represent 57.1% in small companies.The lack of competent management is accounted for by 63.2% of professionals working in medium-sized companies.

DISCUSSIONS View of Participants
The first research question addresses the influence of human factors during the software testing process.The data obtained through the data collected confirmed, in several aspects, what has already been identified in previous studies (Deak, Stålhane and Sindre, 2016), that the professionals of this area face many factors on a daily basis that are discouraging for the career.As Respondent A says, "most often the testing environment is worse (worse than development, worse than customer approval, and so on).Almost always the database is outdated or incomplete (with little data, inconsistent data, missing fields in the tables or the entire table .)"Respondent B also states that there is a demobilization and devaluation of professionals, saying "today the profession of Software testing, at least where I work, is seen as if anyone could come to realize, even though I am certified in software testing, we are still not valued, and it is not only in the company where I work, I agree with other professionals in the area And the complaints are always the same" the study also identified promising and motivating scenarios for some professionals, Respondent C shares his experience in the work environment of an American multinational and makes a comparison with the Brazilian market where he says: "I believe that The reality of the company in which I work today, being an American multinational, is still unique regarding the Brazilian scenario.The quality analyst profession is respected, we have our due value and recognition of importance within the life cycle scenario of a project.Very different from what we see in the Brazilian scenario, unfortunately.Devalued professionals, salaries do not match the investment made in the career by the professional, and we are often seen merely as a mere extension of development.There is much to improve on software quality in Brazil, but I believe faithfully that we are striving towards improving our category." The second question in the study looks at whether human factors can impact the quality of the software product.Tables 5, 7 and 9 present some significant results on the main aspects that can influence the test process in a negative way, generating low quality products.Factors such as low self-esteem, monotony, lack of competent management, lack of infrastructure, overtime provide an environment with poor quality of life.
In this way, some of these factors can directly affect the quality of the test process, as Answerer D says: "The amount of eight hours a day plus overtime makes testing delivery more difficult and exhaustive.The noninvestment and insensitive to the test team added to the accumulated and unresolved problems, especially those in which the test indicates recurrence, make the environment addicted.And it promotes a negative culture of acceptable quality products" In contrast, the study also identified reports that even with these difficulties they can overcome with daily effort, Respondent E says: "What I learned in the area of testing is that since it is an area that is now gaining great importance, we do not have our Space and not a total respect for the middle of the software development process, with enough work and improving our knowledge we will conquer our space and as a consequence we will deliver a quality product to our client."

Human Factors in Software Quality
Nowdays, a technology company can not focus on the success of its application without thinking about the coordination of the people who make up the team responsible for the production and testing of software.However, this perception of the human factor as central to an organization's performance is not new, but it receives a new meaning from the importance of cooperation among people in the same company to achieve its goals.In this sense, in an environment of technological development that involves software quality, the technical aspect affects the human aspect and vice versa, seeking the balance between these factors is paramount for success.
Nevertheless, there are personal aspects that can affect the whole team (e.g.divorce, drug use, bipolarity, depression, debt), among others.Personal problems can harm the whole project; the effects are from delay, lack of attention, decreased focus, fits of anger and aggression, demotivation and temporary withdrawal.The absence of a person essential to the software development process can cause failures, vulnerabilities, and bugs in the version that will later be delivered to the client.
According to (Vargas, 2016) people involved in software development processes deserve particular attention, since much of the success of the activities depends on their behavior.Some human relations theories cite that the influence of psychological and social factors also affect productivity.In relation to psychological disorders, one of the main problem-causing agents is stress, which was confirmed by this study, which can be generated by various professional or social factors, which may lead to depression, moodiness, Lack of involvement with work and organization, frequent absences and delays, excessive visits to outpatient medical and drug dependencies (Sadir, Bignotto and Lipp, 2010).
The performance of the professional is influenced by its level of education and the experience he has gained from practice, and this knowledge along with experience must be renewed and improved whenever possible to maximize human capacity.Having the knowledge of the methodologies applied in the company is also essential to generate results, but having this knowledge along with skills and attitudes help to achieve the expected results for the organization.
Thus, to conclude this understanding, it is concluded that human factors have a significant influence on the actions of software development professionals, and that they impact on performance as their activities, which can compromise the quality of the software product and generate financial losses for the Organizations.

CONCLUSIONS
The aim of this study was to demonstrate the influence of human factors within the test process and its impact on the quality of the software testing process.Thus, results were presented that can be used as reference for the development of actions capable of improving the human factor within the software testing process.
During the research, it was observed that the participants report that human factors provide motivational and demotivational aspects.The results show the dissatisfaction of some professionals with various cognitive, operational and organizational aspects.It is clear that the absence of an appreciation of human capital for professionals in this area directly affects the quality testing process.These approaches only confirmed the suspicion that the human factor, when not managed correctly by the managers, provides an environment of low quality of life at work.Therefore, it is concluded that human factors must be observed, understood and be the focus of a software factory, and should be qualified and managed by a management that values the intellectual capital, where without these aspects it cannot be guaranteed that Team to work to provide a product with a high level of quality.

Table 1 .
Participants by function in the testing process

Table 2 .
Academic Formation vs. Roles

Table 4 .
Human factors -Statistical data

Table 6 .
Time of experience vs. Cognitive difficulty

Table 10 .
Company size vs.Organizational difficulty