Product Quality Flashcards
agile verification
1) change control mechanisms
2) tracking and traceability matrices
3) regression test automation.
done thinking grid column 1
1) User Story Clarity
2) Task identified
3) Build setup changes
4) Product owner approval
5) Product backlog updated
continuous integration
1) team integrate their work frequently
2) verified by an automated build
3) allows a team to develop cohesive software more rapidly
testing, including exploratory and usability
testing, including exploratory and usability
agile validation
1) before any software is released for use by the end user – be it alpha, beta or production code – the results of all this work will have to be validated.
2) “Validation shall be performed under defined operating conditions
Steps in agile validation
1) Finalize traceability from PRD to SRS
2) Run all unit testing and story level acceptance testing regression tests
3) Finalize and execute PRD (system) level feature acceptance tests
4) Run all system qualities tests for nonfunctional requirements (reliability, accuracy, security)
5) Run any exploratory, usability, and user acceptance tests
6) Finalize and update traceability matrices to reflect current state
7) Finalize/update risk analysis/hazard mitigation
8) Conduct a design review
done thinking grid column 2
1) Environment Ready
2) Design Complete
3) Unit test cases written
4) Documentation
5) Pre-Release builds
done thinking grid column 3
1) Code complete
2) Unit tests executed
3) Refactoring
4) Code Checkin
5) Code merging & tagging
done thinking grid column 4
1) Automated code review
2) peer review
3) Code Coverage
4) Burndown chart ready
5) release build
done thinking grid column 5
1) Functional testing
2) Regressing testing
3) Performance testing
4) Acceptance testing
5) Closure
Practices of Continuous Integration
1) Maintain a single source repository
2) Automate the build
3) Make your build self-testing
4) Everyone Commits To the Mainline Every Day
5) Every Commit Should Build the Mainline on an Integration Machine
6) Keep the Build Fast
7) Test in a Clone of the Production Environment
8) Make it Easy for Anyone to Get the Latest Executable
9) Everyone can see what’s happening
10) Automate Deployment