Wednesday, April 3, 2019

Dissecting RUP - tasks and roles in the testing


Classification of tasks and roles in the Software testing , based on the methodology RUP.
Around the roles and tasks associated with testing and quality assurance, has developed several contradictory ideological currents that have assiduously cultivated supports these ideas. 
Point of view is largely the opposite, in many respects contradictory. Testing is seen on the one hand some polumehanicheskim process that requires no special skills: tester see that kind "klikalschikom" which simply chasing the application waits until it "falls", and then gleefully reports an error and continues in the same spirit. 
Recently, we must pay tribute, there are materials on testing and quality, the publication of the book, develop sites devoted to this area - this line of thought is gradually disappearing, "no." From another point of view, which is probably partly cultivated, and testers themselves (in the broadest sense of the word), software testing services - a process that covered many uncertainties, it is difficult formalization and measurable. 
If, however, to add test automation services, which is estimated to those who instilled the tools and solutions for testing, requires a large (compared to manual testing) effort and to talk about evaluating the quality of the product line of test turns entirely opaque to the casual observer, and sometimes for themselves testers and QA.
Seems to me that this situation is related to the fact that there is some misunderstanding of the processes associated with testing and quality assurance. Meanwhile, the direction of testing is clearly defined roles and tasks as it solves. 
Having defined the roles and tasks, it is possible not only to imagine a more or less the standard testing process, but also understand that it has not. Note, I do not identify the processes of testing and quality assurance. The objectives of quality assurance, I plan to return in subsequent publications. I now propose to consider testing as part of the quality assurance process.
Try to define and understand what their roles and tasks are directed testing. In order not to reinvent the wheel, I propose to build on the existing methodology RUP (Rational Unified Process), the most common and the full version.
Analogy
There is a wonderful advertising: How to make cars SAAB? Take a plane and cut all unnecessary, that helps him take off.
Let’s try to get a template for a RUP-MTP (Master Test Plan) and cut off all unnecessary, that is not the topic of this article. The most interesting thing that had cut off virtually the entire pattern, leaving only one application and sign for the calculation of resources. Add a translation, we cut out too much.
Testing Activities
Let us consider in more detail the existing activities/tasks associated with testing:
·         Plan Test
- identify requirements for test
- assess risk
- develop test strategy
- identify test resources
- create schedule
- generate Test Plan
·         Design Test
- prepare workload analysis
- identify and describe test cases
- identify and structure test procedures
- review and assess test coverage
·         Implement Test
- record or program test scripts
- identify test-specific functionality in the Design and Implementation Model
- establish external data sets
·         Execute Test
- execute Test procedures
- evaluate execution of Test
- recover from halted Test
- verify the results
- investigate unexpected results
- log defects
·         Evaluate Test
- evaluate Test-case coverage
- evaluate code coverage
- analyze defects
- determine if Test Completion Criteria and Success Criteria have been achieved
Roles in testing
Test Manager, Test Project Manager
Produces management control (management oversight)
Responsibility:
Provides technical direction
Receives the necessary resources
Provides management reporting
Test Designer
Test Designer
Defines and prioritizes the development of test cases ensures
Responsibility:
Developing a test plan
Developing a model for testing
Evaluates the effectiveness of testing
Tester, test engineer
Tester
Runs tests
Responsibility:
Runs tests
Captures the results
Restores the tests and the system after failures
Documenting change requests
Administrator of the test system, applications, support life-cycle testing
Test System Administrator
Provides management and support test environments and data
Responsibility:
Administers the test management system
Installs and manages access to test systems
Database administrator, database manager
Database Administrator, Database Manager
Provides management and support of test data (databases)
Responsibility:
Administers the test data (database)
Test Designer
Designer
Establishes and defines the operations, attributes and relationships of test classes
Responsibility:
Establishes and defines the test classes
Establishes and defines the test sets (packets)
Developer tests
Implementer
Develops unit tests (unit tests), test classes and test sets (packets)
Responsibility:
Creates the test classes, collecting probe packets and integrates them with the test model
As you can see, on closer inspection, it turns out that the tests - a well-defined process with dedicated roles and area of responsibility for the various players of the project. The order of the tasks defined in the usual (full) round of testing. This cycle can be applied both for projects aimed at lengthy iterations, and for "quick" projects ongoing on evolutionary techniques (evolutionary) or according to the increasing pace of XP.
Hopefully, after a brief excursion into the inner world of tasks and roles in testing, will be less confusion.


No comments:

Post a Comment