Quality Assurance and Quality Control
Being a Test Professionals we should know about QA and QC. What we are doing is actually Quality Control related stuff and what people involved in bringing up CMMI, ISO standards are Quality Assurance. Quality Assurance is more likely related to maintain the process in any given Project or Programme. Quality Control is nothing but giving the right product by verifying the requirements are covered and working as expected.
We know there are multiple levels of testing methods are spoken in the testing world and we have the methodology by which we need to execute them like System Test, Integration Test etc., and Methodology like Water fall, Iterative etc.,
Let me explain what I know and aware of Quality Assurance:
There 3 different roles who will be responsible for assuring the process in any projects.
- PQA – Project Quality Analyst
- CC – Configuration Controller
- DPA – Defect Prevention Analyst
Project Quality Analyst – PQA role
A person who involved in this role needs to know the pre-defined industry standards of that Organization.
PQA’s Roles and Responsibilities
- Documents Naming Convention met as per the Industry Standard
- Names of who prepared , reviewed , approved the deliverables
- Reviews happened across all the Customer facing documents
- Review defects are found, fixed, verified and captured for Metrics
- Checking whether all the deliverables are kept in a Common place where the stake holders can access
- Checking all the necessary deliverables are prepared by the project team
- Checking the actual project delivery date and the date mentioned in the documents are same
- Checking the Stake Holders names, document owner names are mentioned correctly in all customer deliverables
- Differentiating the Customer facing deliverables and Internal audit specific deliverables are as per the industry standards
- Verifying the Entry Criteria and Exit Criteria of any Levels in SDLC are met and collecting the proofs for the same
- PQA’s will be involved in all levels of SDLC
Business Analyst Teams will have separate sets of Deliverables like Business Requirement documents, Business Understanding Documents, Requirement Traceability documents etc.,
- Development teams will have separate sets of Deliverables like High Level Design, Low Level Design , Functional Specifications etc.,
- Testing teams will have separate sets of documents like Test Plans, Test Conditions
The PQA should validate all the documents that supposed to be delivered to the Clients and maintain for internal audits
CC – Configuration Controller
Configuration Controller who controls the versions and the placement of the documents in tools like VSS – Microsoft Virtual Source Safe or Documentum etc.,
Configuration Controller Roles and Responsibilities
- CC’s are responsible of Creating the folder structures in VSS or Documentum
Like, in any Projects the following folders will be created to maintain the projects deliverables
- Project Kick off
- Minutes of Meeting
- Review Log
1.1. High Level design
1.2. Low Level Design
1.3. Issue Log
1.1 Unit Testing
1.2 System Testing
1.3 System Integration Testing
1.4 User Acceptance Testing
CC’s will have the Admin rights to Grant and Revoke access to folders.
Developers should not have access to the folders related to Testing and vice versa
- CC’s will maintain the Check in and Check out of the documents that goes into VSS
- CC’s will maintain the relevant documents are kept in corresponding folders in VSS
DPA – Defect Prevention Analyst
Defect Prevent Analysts will maintain the defects across the SDLC. For any raised defects the work flow should be maintained. Proper comments for those defects should be given when they are created. All high severity defects should be fixed from one Phase to next phase to being with.
As testers when we raise defects we need to concentrate on applying Defect Cause and Defect Type in any Defect Management tool. This will help DPA’s to classify the defects and comes up prevention tips.
Defect Cause – What is the root cause of the defect that is,
- Is the defect caused because of the Upstream Source Data or Test Data
- Is the defect caused because of Incomplete of Missing requirements
- Is the defect caused because the Inconsistent Requirement
- Is the defect caused because of the Code discrepancy
- If you find any anomalies in any Documents then raise the defects to Artefacts
- If any of your defects leads to Changes in the Requirement then please raise them as Change Request – CR can be on the Actual Business Requirement or on Design Changes.
Defect Type – Classifications of the Defects that is,
- Is the defect related to Data Error
- Is the defect related to Application Code
- Is the defect related to Work Request
- Is the defect related to Change Request
- Is the defect related to Deployment
- Is the defect related to Specification
- Is the defect related to Artefact
- Is the defect related to Production
- Is the defect related to Process
- Is the defect related to Environment
- Is the defect related to Specification
- Is the defect related to Requirements
- Is the defect related to Reviews
DPA’s most prominent work is to prepare the CAPA – “Corrective Analysis and Preventive Actions”
DPA roles and Responsibilities
- DPA’s will collect the Metrics related to Defects in a periodic manner – Weekly, Monthly or Ad-hoc
- DPA’s will collect the defects by Defect classifications like in a given period of time how many defects are raised in Reviews, Code, Requirement Change and collects the cause of the defects
- Then using the metrics that was retrieved from any Defect Management tools, they design the Fish Bone diagram by filling the necessary details
- Using the Statistical tools like Minitab, they calculate the Defect Density of the defects from each phase
- Then they will create the Prevention actions on the areas where the Defect Density is above to the threshold limits.
Suppose if your Organization has the Defect Density threshold limit as 0.5 and your Defects under Review defect type is more than 0.5 then they will ask the Reviewers to do their work better to minimize the review defects at any levels of SDLC.
Cheers – Asik
Chapter 5 – Know about Data Base (Home) , Views , Tables (Rooms) , Reference Tables (Guest House) in Business Intelligence
Hope you had a wonderful weekend !!!
In this blog I would share my personal thoughts on What is Data Base, Views, Tables and Reference Data?
Data Base is something like a House and Tables are like Rooms and Reference Tables are like Guest House 🙂
Now I bought a house I said to my mom and dad you guys please take the room in Upstairs, sisters please share the room near to the Kitchen, brothers please share the room near to the Balcony.
Like the example above an Organization will decide to keep their data into one Data Base (Home) but in different Tables (Rooms) and when they want to keep the data that changes as per Customer recommendation then they will capture in Reference Tables (Guest House).
Why we need View Data base ?
Again I will consider the home as example – when you are inviting your friends to your house you will not say how your house is physically build, but you will say your home address right? it is difficult to understand how they building is built rather then checking its address. Likewise the data will be loaded into Physical tables and developers will just write a Select Query on the tables , and that query will be used to create the View Database.
Primary Key and Foreign Key relationship :
Each room in your house are having a logical reference to the house and the rooms and the people are living in the rooms can be called or connected by this reference likewise in DB all the tables are Logically and Physically connected with a Column. So all the tables will be communicating each other using this Primary Key;
I will give you one more example :
I wanted to create an account with Citi Bank, I gave my Name, DOB, Address, Amount needs to be deposited, my mobile number, my telephone number, my email id, relevant documents.
> After some days I gone to bank and applied for Credit Card !!! now they are asking my Account Number only !! Why ?
I got my Credit Card!!! Wohoooo 😀
> After some days I got a call from bank and they offered me a Life Insurance – I accepted it , now what
I have Insurance from Citi Bank
> After some days I my wife was urging me to buy a House 😦 so I checked in Citi Bank Home Loans Online and submitted all the documents along with my account number , after the check they disbursed the loan amount, now what
I have bought a house with loan from my Bank
If you see the above scenario Bank needs to capture all the data related to my account !!! so what they gonna do ??
First step Create a Data Base called – ACCOUNTS
and now create tables !!! is only one table enough to accommodate all the data related to me ? Ghrrrr no !!!
They will create multiple tables for each types of Data !!
Table_1 – Primary Details of my account
Table_2 – Address Details of my account
Table_3 – Contact Channels (mobile , Email. Home Phone)
Table_4 – My account Balance Details
Table_5 – My Credit Card Details
Table_6 – My Home Loan Details
Now all theses 6 tables will have ACCOUNT NUMBER as my primary Key. If the bank person wants to see my Home Loan Balance and Credit Card balance he will join tables Table_5 and Table_6 using my Account number 🙂
I hope now you understood how the Primary Key functions 🙂
Using my account details I will explain you why Citi Bank wants to create the Reference Tables ?
When I applied Credit Card , they asked about my Annual Income, I said its AUD 100K, they punched the value in their system. After some days I got a letter from the Bank says that you got 85K as your Credit Limit. I wonder how they have captured this data when they extracted the credit limit for my application. Here is the culprit Reference tables comes into the picture 🙂
When my salary in => 100K then it will refer to the Credit Limit Reference table and fixes the credit limit of 85K. I would have said 50K then my Credit Limit would have been limited to 30K :-(.
Hope you guys understood the concepts of Data Base, Tables, Views and Reference Tables 🙂
See you guys in my Next Blog about Shake Down testing 🙂
Cheers – Asik