How does Software Quality Assurance (SQA)?
1 introduce
In the Quality Assurance Forum of 51CMM, Robinzrb's post "Do QA, and feel depressed!", The countless hero is placed. These heroes include the active hjhza, which is willing to pass the WTSWTS, like to point to the VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV .... Why is you depressed? Still let us discuss how to qa go!
2 QA's origin
We know that many large companies in foreign countries, QA's duty is to test (mainly system testing), such as IBM, CA, PeopleSoft, etc. In fact, almost all companies are like all companies. Later, due to the lack of effective project planning and project management, the time left to the system test is very small (Note: I have made a project, the project manager clearly tells me that the system test is 1 day, no discussion). In addition, the demand varies too fast, no complete demand document, the tester can only test according to your own imagination. In this way, it is difficult to ensure the quality of the product, and the QA function prevention is encouraged.
Prior to prevention is actually drawing on TQM's idea, and also in line with the principle of software engineering "defects, the earnings the more economical". The origins of these ideas can also be traced back to an allusion in ancient China, such as migration salary, slap in medical skills. Especially the allusions of the Physical Alien, I was accidentally seen in an article abroad (later I saw in Lin Rui's article), often sighing our Chinese people's ideological cultural heritage is almost the same.
3 QA now
Currently, companies that implement CMM have become more and more. The CMM model requires establishing a QA role. The QA here is similar to the process police, the main responsibility is whether the development and management activities are consistent with the defined process strategies, standards, and processes, check whether the work product follows the contents and formats specified in the template. In these companies, QA is generally required to be independent of the project group to protect the objectivity of the evaluation. From the domestic perspective, most QA does not have a technical background, check the deviation of the deviation is the chicken fry garlic, plus itself without the convincing background, the leadership does not support, of course, it is very difficult.
Lack of trust and support is just one aspect, QA work itself is very challenging. It requires QA to have software engineering knowledge, software development knowledge, industry background knowledge, knowledge of mathematical statistics, knowledge of project management, knowledge of quality management, and more. We often encounter such problems, it is difficult to break through to a certain level, and it feels depressed, and it will be depressed. Later, through learning, training, communication, thinking and skills, it was sublimated, and found the shortest piece in the wooden barrel, and then began to improve, and then encountered a glass ceiling, then ... this is in a depressed cycle.
Make us master all the knowledge and break through all the glass ceiling, it is not Qa to be smooth. the answer is negative. The QA role definition itself has a lot of limitations. QA acts as the role of the process police, whether it is meaningful, exclusive to enforce the process of the process, and it is easy to cause hostile relationships in the project team, which is crowded, and this police posture also destroyed team spirit. In this way, QA work still needs to be interpersonal relationship skills, as I wrote "Quality Balance" and "QA, should I be independent of the project group? "Like the artistic treatment of this relationship.
4 QA's future
From a certain extent, the independent QA review mechanism is the product of the waterfall model. With the evolution of modern software development technology, the rise of spiral models and iterative models, QA mechanism is quietly changing. This change is the evolution of part-time QA from independent full-time QA to throughout the process. In the CMMI model, this part-time QA is also allowed. Why do this change happen? Whether it is XP, RUP or other advanced methodology, it is to generate an architecture first, and then the increase is developed until it is completed. In this mode, demand and design defects have been discovered and repaired as soon as possible in each iterative cycle, and the quality is also built in architecture and process, and the cost and progress of the project are also guaranteed. When I arrived, is it independent QA? Some companies with lower maturity are still needed, mainly to ensure the objectivity of the effectiveness and evaluation of the process.
[Note]: This article is written on the basis of reading "Which Way, SQA".