Software QA FYI - SQAFYI

Data Warehouse (DW) QA Assessment


What is needed as a minimum?

Each data warehouse load job should be developed and tested incrementally throughout its development life cycle:
* Testing that the correct data is being extracted from the source
* Testing the transformation logic
Performing source to target validation
* Testing the error-handling logic
* Testing the data throughput rates
* The incremental testing is followed by integration testing – in which the separate jobs are scheduled together into an interdependent sequence and re-executed
* The analytics applications themselves must be tested against the data-warehouse to ensure delivery of the correct data
* In order for data warehouse QA project to succeed, the following has to be in place:
A test team
* An independent test environment
* Support from Business Analysts, ETL developers, DBA and management While assessing the QA practices at a client as far they relate to data warehouse testing, these are the items which QA Consultants looks at.

QA Team Lead
* Is the DW QA team lead skilled enough to:
Prepare project plan for testing efforts
Evaluate staffing needs
* Provide size estimate for QA environment
Has solid knowledge of data warehouse concepts and testing intricacies associated with business intelligence applications
Strong enough and yet diplomatic to oppose pressure from development, business analyst and project management where quality sacrifices are required
* Strong enough technically to be able to address complex issues and to review work being done by the testers
* Able to review defects on the regular basis and perform root cause analysis
Where and when necessary come up with processes and procedures and enforce them on the team
* Testing skills of DW QA team
Do the team members understand basics of testing methodologies such as levels of testing – unit, system, regression, etc
they purely black box testers, or can they also do white and grey box testing
they have leadership strong enough to plan, size and distribute the work
* Is the test team leadership strong enough to oppose the pressures from development, business analysts and project management to “sweep things under the carpet”
* Is the test team in control of QA environment and code promotion
the support of developers, business analysts, system administrator and DBA secured during the off-hours testing
* Can team members provide sizing for the test environment – data base and the file system

QA Environment
* Are the test carried in isolated test environment
* How closely does the environment replicate the actual production environment
* Does the QA team have control over the test environment, i.e. the code to be tested is pulled into QA environment rather then pushed by developers
* Is the test data properly backed up
* Are the snapshots taken at appropriate times to allow roll-back to a particular state
* Is the environment large enough to accommodate the data size for testing
* Can test environment easily be adopted for performance/stress/load testing

Project Environment
There may be issues at the project level that affect performance of the QA team, but be outside of QA team control

* Is QA involved in the process at an early stage
* Are business requirements, functional specifications and data model clearly defined and signed off by users, business analysts, developers and testers
* Is a change management process clearly defined, communicated and strictly adhered to especially with respect to signed off requirements
* Is a code freeze implemented when required and all subsequent code changes are either a result of defect fixes or approved change requests
* Is the promotion to production done from QA environment
Potential Problems

QA Consultants –findings may point to existence of some of the following problems:

* Users are not sufficiently engaged
* Testing reports - not data
* Garbage in, garbage out
* Skipping the reconciliation of data warehouse data with source system data
* Relying only on “made up” test data
* Underestimating the testing workload
* Failing to set proper expectations with business users
* Fast tracking” the testing phase.
* Underestimating the duration of the ETL process.
* Choosing the “wrong” testers.
* Skipping proper sign-offs

Full article...

Other Resource

... to read more articles, visit

Data Warehouse (DW) QA Assessment