There is a typical corporate task - to create and develop
a testing practice for several departments, products or projects. As one of the universal solutions, consider the organization of the department.
I put the question of efficiency and rationality at the forefront, so the question of whether or not the practice of testing should be should not be discussed in this section. Who does not need testing and who wants to do it on their own by the developers - they may not read further :) or still weigh the arguments:
1. The profession of a tester does not need to be justified, life has proven the need :)
2. Independent testing allows you to perform work for several departments, products or projects.
3. Complex types of testing require an organizational form for the purchase of a tool that will be used (and depreciated) for several divisions, products or projects.
4. Testing at the acceptance stage in corporations is performed for a wide range of products or technologies.
5. Testing of long life cycles requires the interchangeability of participants and group (not only personal) competence, for example, tests of the systems followed by the customer or organization of implementation or maintenance.
Disclimer : there are no universal recipes, the author proceeds from the experience of creating and developing testing practice
in large IT companies and does not claim to be true in all instances :)
Create something easy. But to achieve efficiency, you need to go a
long and expensive way !
')
Where to start? There are many nuances, but I will try to highlight the basic principles and detail them.
For what?A department is created for:
1. Formation and development of a professional center of competence (testing) for a wider range of tasks.
2. More flexible management of teams of testers for projects or products.
3. Allocation of legal responsibility for the actions in the testing process.
4. Financial independence from the development department and other units.
Necessary and sufficient:
1. The desire and ability of your management to organize and maintain a department (a dedicated group) for testing internal or external developments. The desire of management should be based on financial opportunities - this is an investment for several years. Employee salaries are not the hardest. The best option is to purchase or integrate auto-testing tools and, possibly, additional tools - task / bug tracking systems, requirements management systems; version storage, hardware or virtualization systems are needed to organize test benches, etc.
2. The presence of a test manager - head of the department. He must understand the goals and objectives of building the department, coordinate all strategic changes with management, and improve the testing process day after day.
3. Employee learning.
4. Motivation of employees.
Optional (evolving) requirements that improve efficiency:
1. Improving corporate culture.
1.1. Implementation of development methodologies (Agile / SCRUM, RUP, MSF), taking into account the interaction of groups / departments.
1.2. Development of instructions for employees (with a small or greater degree of formality).
1.3. Development of regulations for the interaction of departments / project teams.
1.4. Creating practice of improving methods through committees or the like. (SEPG, IT committees, etc.)
1.5. Employee training as a permanent hr function and guides through staff requests from current courses.
1.6. Team building.
The need to have a dedicated testing practice is in:
1. Full-cycle outsourcing companies to provide tests for custom development.
2. IT integrators (in-house, service companies, etc.) for acceptance testing.
3. Development companies (at least for load types of testing).
Continuation is planned ...
Comments are welcome!