-According to V model, generalized test concept, etc. The earlier (static) testing, the earlier defects are found, which is more conducive to product quality, speeding up product development cycle and reducing enterprise costs. It is more important to prevent serious defects in the design. If the design is flawed, it will be terrible to rework when the system set test finds problems. This requires the design to be reviewed and audited, and in this process, testers need to participate.
-The current system is becoming more and more complicated, whether it is J2EE architecture or. Net architecture, whether it is a centralized network system or a distributed system, whether it is a host system or a server cluster system, its design is often not achieved overnight, and it needs to be designed according to past experience and the system structure should be optimized according to lessons (problems found).
-The more complex the software system is, the more functions it provides, and the higher its testing requirements, which determines that the system must have good testability, which is guaranteed by the development and design architect and is not very safe.
-Testing of system performance, security, stability and reliability requires high requirements in technology, platform environment construction and system deployment.
As a software testing architect, his main responsibilities are:
-Review the design of system architecture, system components/components and their interface relationships.
-Ensure the testability of the system.
-Designing testing strategies and methods for software systems, especially testing methods, technical routes and quality standards for system performance, security, stability and reliability.
-Test the complex system environment of components, and analyze and solve the deep technical problems in the test to help isolate defects.
-Analyze and evaluate the system (performance, security, stability and reliability) test, and propose design modification and code reconstruction suggestions to improve the system performance and reliability.
—— Design the technical framework of test automation, and preside over the research, evaluation and design of important test tools.
-Participate in the design of system deployment.
-Participate in the evaluation and introduction of new technologies.
-It helps to improve the test process and improve the test efficiency.
At the same time, it is very difficult to recruit software test architects for the following reasons:
-For most skilled engineers and architects, they pay little attention to process management, test strategies and methods, quality, etc. , lack of understanding of RUP or CMM/CMMI. However, test engineers have few opportunities, insufficient efforts and technical ability in technical realization, so few people have strong ability in system architecture and test methods.
-At present, there are still prejudices in domestic industries. Skilled and experienced technicians are more willing to do development than testing. This phenomenon is occasionally manifested in the company's salary system, or the management of the company does not pay enough attention and determination.
-The development of domestic testing specialty is relatively late. There are naturally not many experienced professional test engineers in the talent market, let alone skilled test architects.
-The positioning of software testing architect is not clear, and the enterprise has not given clear responsibilities and work contents.
-The older technicians are, the more inclined they are to develop in the direction of management, and the policies of most enterprises also guide them to develop in this direction. For example, the salary of management positions such as vice president and manager is higher than that of pure technicians. In fact, in most foreign-funded enterprises, a strong technician (architect) may be taller than his/her boss.