Sei sulla pagina 1di 40

BE Computer 2015 Pattern

Software Testing Quality Assurance


Mock END Paper Solution 2019-20 SEM-1

Q-1 a) What is bug, defect, error & failure give an example of each?

Ans- DEFECT: It can be simply defined as a variance between expected and actual. Defect is an error found
AFTER the application goes into production. It commonly refers to several troubles with the software
products, with its external behavior or with its internal features. In other words Defect is the difference
between expected and actual result in the context of testing. It is the deviation of the customer requirement.

Defect can be categorized into the following:

Wrong: When requirements are implemented not in the right way. This defect is a variance from the given
specification. It is Wrong!

Missing: A requirement of the customer that was not fulfilled. This is a variance from the specifications, an
indication that a specification was not implemented, or a requirement of the customer was not noted
correctly.

Extra: A requirement incorporated into the product that was not given by the end customer. This is always a
variance from the specification, but may be an attribute desired by the user of the product. However, it is
considered a defect because it’s a variance from the existing requirements.

ERROR: An error is a mistake, misconception, or misunderstanding on the part of a software developer. In the
category of developer we include software engineers, programmers, analysts, and testers. For example, a
developer may misunderstand a de-sign notation, or a programmer might type a variable name incorrectly –
leads to an Error. It is the one which is generated because of wrong login, loop or due to syntax. Error
normally arises in software; it leads to change the functionality of the program.

BUG: A bug is the result of a coding error. An Error found in the development environment before the product
is shipped to the customer. A programming error that causes a program to work poorly, produce incorrect
results or crash. An error in software or hardware that causes a program to malfunction. Bug is terminology of
Tester.

FAILURE: A failure is the inability of a software system or component to perform its required functions within
specified performance requirements. When a defect reaches the end customer it is called a Failure. During
development Failures are usually observed by testers.

FAULT: An incorrect step, process or data definition in a computer program which causes the program to
perform in an unintended or unanticipated manner. A fault is introduced into the software as the result of an
error. It is an anomaly in the software that may cause it to behave incorrectly, and not according to its
specification. It is the result of the error.

Q-1 b) Differentiate between software Testing tool and Technique.


Ans- Technique is the actual method/manner/way to perform a particular task.

Tools are the objects or means which help in performing the tasks.

For example, Painting is a task and there are different techniques like oil painting, etc. Then there are some
paintin gtools - like crayons, brushes, poster colors etc. Hope this makes sense...

When we talk in terms of software testing,

Testing techniques are the types of testing . Various testing techniques are functional testing, performance
testing etc. They can be furthwer classified into many techniques.

Testing tools are software programs clubbed together to per testing activities. These tools generally provide
record and playback features along with common scripting platform to customize the tests. Common
functional testing tools are - Quick Test Professional, Selenium etc. Common performance testing tools are
Load Runner, Rational Performance Tester etc.

Imagine traveling from point A to B is the test that you need to perform. And the above image suggests that
there are 2 ways to do it

 Test technique 1 - By Running

 Test technique 2 - By walking

But in both these 2 techniques, one thing is common. The tool/ component used to implement these
techniques. In both these techniques, the person uses his/ her legs to either run on walk.

So, Testing tools are the components or software packages you you to test an application, while the testing
techniques dictates how you use these tools to test your application.

Practical example would be

Testing tool - Selenium WebDriver

Testing technique 1 - Sanity test script

Testing technique 2 - Regression test script

Q-2 a) what is impact of defect in different phases of Software development.

Ans- The cost of defects can be measured by the impact of the defects and when we find them. Earlier the
defect is found lesser is the cost of defect. For example if error is found in the requirement specifications
during requirements gathering and analysis, then it is somewhat cheap to fix it. The correction to the
requirement specification can be done and then it can be re-issued.

In the same way when defect or error is found in the design during design review then the design can be
corrected and it can be re-issued. But if the error is not caught in the specifications and is not found till
the user acceptance then the cost to fix those errors or defects will be way too expensive.
If the error is made and the consequent defect is detected in the requirements phase then it is relatively
cheap to fix it.

Similarly if a requirement specification error is made and the consequent defect is found in thedesign
phase then the design can be corrected and reissued with relatively little expense.

The same applies for construction phase. If however, a defect is introduced in the requirement specification
and it is not detected until acceptance testing or even once the system has been implemented then it will be
much more expensive to fix. This is because rework will be needed in the specification and design before
changes can be made in construction; because one defect in the requirements may well propagate into
several places in the design and code; and because all the testing work done-to that point will need to be
repeated in order to reach the confidence level in the software that we require.

It is quite often the case that defects detected at a very late stage, depending on how serious they are, are not
corrected because the cost of doing so is too expensive.

b) What is bug tracking, bug fixing & bug verification?

Ans- Bug tracking means tracking the status of any bug until it get closed. At any point of time a bug must be
in any of the states given below in the diagram-
There are several stages in a bug life cycle

 Open – bug that is raised and yet to be validated.

 In Progress – bug is validated and under fixing.

 Not a Bug – Sometimes developer or team lead can mark the bug as “Not a Bug” if the system is
working according to specifications and bug is just due to some misinterpretation.

 Deferred – When a bug cannot be addressed in that particular cycle it is deferred to future release.

 Duplicate – Same bug is already logged by QA team.

 Fixed – Bug has been fixed by developer and QA has to verify it in next build.

 Reopened – When the bug is NOT fixed, QA reopens/reactivates the bug.

 Closed – If bug is verified by the QA team and it is fixed then QA can mark bug as ‘Closed’ or a bug
can be closed if the defect is duplicate or considered as NOT as bug.

Bug fix: A bug is a a mistake in the code A fix is a correction of that mistake

A bug is a flaw in a piece of software that causes it to not to do what was intended. A bug could be in the
specification of the software (we should have made it do this instead of that), in the design and coding of the
software (we said it should do this but it does that instead), or sometimes in the documentation (the software
does exactly what we want it to do, but the user manual says something different). A coding (programming)
bug can manifest as incorrect results or crashes in the software system.

A bug fix is, simply the fix to a bug, that is, the set of modifications to the software system that would correct
the flaw. For example:

 Bug: The “cancel” button runs off the right edge of the screen on smaller phones.

 Bug fix: Change the code to position the “cancel” button farther to the left.

Bug Fix Verification is a process of verifying if the bug was fixed or not. SO At first a tester re-tests application
and then checks whether new bugs appeared after the previous bug was fixed.

Q. 3 A) Write test cases for simple calculator application.

Ans-

No. Test Test case Objec Prereq uisite Steps Inp ut Expect ed Result Act ual Resu Re ma
Case tive data lt rks/ Sta
-ID tus

1 TC1 To add two Calculato r is 1.Key in a valid integer 135 + 235(addition, above 235 Pass
integer and switched on from - 9999999999 to 100 ten digits will be
display the +9999999999 2.Key in expressed in
No. Test Test case Objec Prereq uisite Steps Inp ut Expect ed Result Act ual Resu Re ma
Case tive data lt rks/ Sta
-ID tus

result on ten operator + 3.Key in exponential form)


digit calculato second operand,a valid
integer from -
9999999999 To
+999999999

2 TC-2 To subtract two Calculato r is 1.Key in a valid integer 135- 35(subtractio 35 Pass
integer and switched on from - 9999999999 to 100 n,above ten digits
display the +9999999999 2.Key in will be expressed in
result on ten operator - 3.Key in second exponential form)
digit calculator operand,a valid integer
from - 9999999999 To
+999999999

3. TC-3 To multiply two Calculato r is 1.Key in a valid integer 100 x 40000(multi 40000 Pass
integer and switched on from - 9999999999 to 400 plication,abo ve ten
display the +9999999999 2.Key in digits will be
result on ten operator x 3.Key in expressed in
digit calculator second operand,a valid exponential form)
integer from -
9999999999 To
+999999999

4. TC4 To divide two Calculato r is 1.Key in a valid integer 100/ 25 40(division,a bove 40 Pass
integer and switched on from - 9999999999 to ten digits will be
display the +9999999999 2.Key in expressed in
result on ten operator / 3.Key in second exponential form)
digit calculator operand,a valid integer
from - 9999999999 To
+999999999

5 TC5 To clear the Calculato r is Press C Symbol ‗0‘ should Symbo l ‗0‘ Pass
screen switched on appear on screen appear s on
screen

6 TC6 To delete digits Calculato r is Press <- (backspace) One Digit should be One Digit is
one by one switched on deleted from right deleted
hand side from right PASS
handsi de

Q.3 b) Write test cases for Forms available on web page

Ans- • Test cases/scenarios for Forms– There are various types of form one can find on webpages, but fields
are relatively same, according to which following are the scenarios to test the form

a. Test the form position on the web page


b. Check whether all controls are available on the form as per requirement
c. Check the alignment of web controls in the form
d. Test all labels of the forms
e. An asterisk is displayed near required fields
f. Check the behavior of form by not filling up any data into the form.
g. Check heading of the form
h. Check phone number field with alphabetic data and with invalid formats
i. Check email field with invalid email format
j. Check Captcha field with reset button
k. Save and cancel buttons in the form
l. Check the behavior of form by adding random data in the text field.
m. Validation message on required field or incorrect values
n. Check whether the navigation between the fields is successful using tab
o. Multiple clicks on the submit should not be allowed while the registration is in progress.
p. Submit button can be disabled before entering the mandatory fields in the form.

Q- 4 A) Write eight test cases for ATM Machine.

Ans- Test Cases for ATM:

1. Verify the ‘ATM Card Insertion Slot’ is as per the specification


2. Verify the ATM machine accepts card and PIN details
3. Verify the error message by inserting a card incorrectly
4. Verify the error message by inserting an invalid card (Expired Card)
5. Verify the error message by entering an incorrect PIN
6. Verify that the user is asked to enter the PIN after inserting a valid ATM Card
7. Verify that PIN is encrypted
8. Verify that there is an action like blocking of card occurs when the total no. of incorrect PIN attempts get
surpassed
9. Verify the user is allowed to do only one cash withdrawal transaction per PIN request
10. Verify the machine logs out of the user session immediately after successful withdrawal
11. Verify the message when there is no money in the ATM
12. Verify the language selection functionality
13. Verify the cash withdrawal functionality by entering some valid amount
14. Verify the cash withdrawal functionality by entering an amount less than 100
15. Verify the cash withdrawal functionality by entering an amount greater than the total available balance in
the account.
16. Verify the cash withdrawal functionality by entering an amount greater than per day limit
17. Verify the user is allowed to enter the amount again in case the amount entered is not valid. A proper
message should be displayed.
18. Verify the ATM machine successfully takes out the money.
19. Verify the ATM machine takes out the balance printout after the withdrawal
20. Verify the font of the text displayed in ATM screen
21. Verify the text on the screen buttons visible clearly.
22. Verify the functionality of all the buttons on the keypad
23. Verify the text on the buttons visible clearly.
24. Verify that touch of the ATM screen is smooth and operational
25. Verify the user is allowed to choose different account types like Savings, Current etc.,
26. Verify the different combinations of operation and check if there will be an electricity loss in the middle of
the operation. If there is an electricity loss in the middle of the transaction then the transaction should be
marked as null and the amount shouldn’t be disclosed to others.
27. Verify the functionality of the cash dispenser
28. Verify the functionality of the receipt printer
29. Verify whether the printed data is correct or not in the receipt
30. Verify how much time the system takes to log out.

Q- 4 B) Write eight test cases for ATM Machine.

Ans- Test cases/scenarios for Links – There are two types of link can be available on web page that is internal
and external links here are some test scenarios to test link on web page

a. Tool tips text should be available and meaningful.


b. Check whether all external links are opening in new window with proper URL
c. Test all internal links are navigating within application as per requirement
d. Test links jumping on the same pages
e. Check whether email address link opening the mail instance like outlook
f. Test to check if there are any blank page to link
g. Test Links opening in other tab /window as per requirement
h. Compatibility Testing for all links on other browsers
i. Ensure that color of links change after the page is visited once. (This can vary as per the design).
j. Ensure that the link color is as per the specification.
k. Ensure that a hand icon is displayed when mouse pointer is hovered over the link.
l. Check loading time for internal links as per requirement
m. Check whether shared link is getting shared properly with correct address
n. Check whether shared link is getting opened properly

Q.5 A) Create Requirement Traceability Matrix Document for Online Flight Booking Application also explain
advantage of Requirement Traceability Matrix

Ans- Advantages of Requirement Traceability Matrix (RTM):

1. Gives Overview of ALL the requirements

2. Shows how requirements are linked to Test Cases

3. Makes sure 100% coverage of requirements

4. Easy to prepare

5. No special tool is required

Business Requirement Document (BRD) :


This document is provided by Client with high level business Requirements. Suppose for Flight Booking
Application it shows below 2 requirements
BR_1 Reservation Module :
It should allow user to book one or more tickets, one way or round way for future dates
BR_2 Payment Module:
User should able to make payment for booked tickets via Credit / Debit Card or through Reward Points
Functional Specification Document (FSD) :
This document is prepared by Technical team which further elaborate business requirements into functional
requirements that can be implemented in a software.
Suppose above 2 business requirements in BRD have more detailed functional requirements:
BR_1 Reservation Module :
 FR_1 : One Way Ticket booking
 It should allow user to book one way ticket
 FR_2 Round Way Ticket
 It should allows user to book round way ticket
 FR_3 Multicity Ticket booking
 It should allows user to book one way or round way ticket for multiple cities
BR_2 Payment Module:
 FR_4: By Credit Card
 It should allows user to make payment by Credit Cards
 FR_5 By Debit Card
 It should allows user to make payment by Debit Cards
 FR_6 By Reward Points
 It should allows user to make payment by Reward Points
And you have written some test cases or test scenarios for each functional requirement.
So if we prepare simple Requirements Treaceability Matrix (RTM) for above
example it would like as below:

Q-5. B) What are the skillset required by software tester? [7=3+4]

Ans-
Non-Technical Skills

Following skills are essential to becoming a good software tester. Compare your skill set against the following
checklist to determine whether Software Testing is a reality for you-

 Analytical skills: A good software tester should have sharp analytical skills. Analytical skills will help
break up a complex software system into smaller units to gain a better understanding and create test
cases. Not sure that you have good analytical skills - Refer this link - if, if you can solve at least ONE
problem you have excellent analytical skills.

 Communication skill: A good software tester must have good verbal and written communication skill.
Testing artifacts (like test cases/plans, test strategies, bug reports, etc.) created by the software tester
should be easy to read and comprehend. Dealing with developers (in the event of bugs or any other
issue) will require a shade of discreetness and diplomacy.

 Time Management & Organization Skills: Testing at times could be a demanding job especially during
the release of code. A software tester must efficiently manage workload, have high productivity,
exhibit optimal time management, and organization skills

 GREAT Attitude: To be a good software tester you must have a GREAT attitude. An attitude to 'test to
break', detail orientation, willingness to learn and suggest process improvements. In the software
industry, technologies evolve with an overwhelming speed, and a good software tester should
upgrade his/her technical skills with the changing technologies. Your attitude must reflect a certain
degree of independence where you take ownership of the task allocated and complete it without
much direct supervision.

 Passion: To Excel in any profession or job, one must have a significant degree of the passion for it. A
software tester must have a passion for his / her field. BUT how do you determine whether you have
a passion for software testing if you have never tested before? Simple TRY it out and if software
testing does not excite you switch to something else that holds your interest.

Technical Skills

This list is long, so please bear with us

o Basic knowledge of Database/ SQL: Software Systems have a large amount of data in the background.
This data is stored in different types of databases like Oracle, MySQL, etc. in the backend. So, there
will be situations when this data needs to be validated. In that case, simple/complex SQL queries can
be used to check whether proper data is stored in the backend databases.
o Basic knowledge of Linux commands: Most of the software applications like Web-Services, Databases,
Application Servers are deployed on Linux machines.So it is crucial for testers to have knowledge
about Linux commands.

o Knowledge and hands-on experience of a Test Management Tool:Test Management is an important


aspect of Software testing. Without proper test management techniques, software testing process
will fail. Test management is nothing but managing your testing related artifacts.

For example - A tool like Testlink can be used for tracking all the test cases written by your team.

There are other tools available that can be utilized for Test Management. So, it is important to have
knowledge and working experience of such tools because they are used in most of the companies.

Knowledge and hands-on experience of any Defect Tracking tool- Defect Tracking and Defect life
cycle are key aspects of software testing. It is extremely critical to managing defects properly and
track them in a systematic manner. Defect tracking becomes necessary because the entire team
should know about the defect including managers, developers, and testers. Several tools are used to
lock defects including QC, Bugzilla, Jira, etc.

o Knowledge and hands-on experience of Automation tool: If if you see yourself as an "Automation
tester" after a couple of years working on manual testing, then you must master a tool and get in-
depth, hands-on knowledge of automation tools.

Q-6 A) Create Requirement Traceability Matrix Document for login into college portal which accept three
inputs. They are USERID, PASSWORD and USER ROLE.

Ans- we are going to use two base line documents i.e. BRD (Business Requirement Document) and
Functional Requirement Document (FRD) to write Test Cases and later map all of these documents
into Requirement Traceability Matrix (RTM). We are going to consider the requirement to login into
college portal which accept three inputs. They are USERID, PASSWORD and USER ROLE. The
following are the steps.

STEP 1: Our BRD (Business Requirement Document) will look as shown below.

Business Module User Role Business Requirement Description


Requirement Name
(BSR)

BSR1 Application Student, A student can login with correct username and
Login and Professor, password (i.e. credentials) only if user role is
Logout Dean, Staff selected as ‘Student’. Similarly it applies to user
role as Professor, Dean, and Staff.

BSR2 Profile Page Student, Student, Professor, Dean, and Staff post successful
Professor, login could see their profile details not the other
Dean, Staff profiles.
BSR3 Task Student, Student can accept or decline assignments assigned
Assignment Professor, by Professor. Dean can approve and disapprove the
Dean, Staff assignment assigned by professor. Professor can
approve and disapprove assignment submitted by
Student. Staff is to capture the grade and marks
submitted by professor towards student
assignment.

STEP 2: Our corresponding (Functional requirement Document) FRD will look as shown below.

Functional Requirement Description


(FTR)

FTR1 User ID is a required field and cannot be empty.

FTR2 Password is a required field and cannot be empty.

FTR3 User role is a required field and should be chosen among Student,
Professor, Dean, Staff.

FTR4 User ID, Password, and User Role are valid. Login Successful.

FTR5 If User ID or Password is wrong but User Role is valid. Login


Unsuccessful.

FTR6 If User ID and Password are correct but User Role is invalid. Login
Unsuccessful.

FTR7 Student, Professor, Dean, Staff can see their receptive profile page.

FTR8 Assignment Task can only be assigned by Professor.

FTR9 Student can accept or decline the assignment Task.

FTR10 Dean can approve or disapprove the assignment accepted by


Student.

FTR11 Professor can approve or disapprove the assignment submitted by


Student.

FTR12 Staff can capture the grade or marks provided by Professor towards
Student’s assignment.
STEP 3: Testing team can use these two documents (i.e. BRD and FRD) and start preparing test cases (say the Test
case covers successful login).

Test Test Case Name Test Steps Test Data Expected Result
Case
ID

TC1 Successful Login 1) Browse the Userid=abc123 Successful Login and


Login page URL. Password=123456 profile page is visible.
2) Enter correct
user ID User Role=
3) Enter Correct STUDENT
password
4) Enter correct
user role

TC2 Unsuccessful Login due to 1) Browse the Userid=abc123 Unsuccessful Login and
invalid username and Login page URL. Password=wrong Login page will show
password 2) Enter correct error.
user ID User Role=
STUDENT
3) Enter wrong
password

4) Enter correct
user role

TC3 Unsuccessful Login due to 1) Browse the Userid=abc123 Unsuccessful Login and
invalid user role Login page URL. Password=123456 Login page will show
2) Enter correct error.
user ID User Role= DEAN
3) Enter Correct
password
4) Enter wrong
user role

STEP 4: Let’s map the Business Requirement ID (BSR), and Functional Requirement ID (FTR ) to the
above Test Case. Above table will look as shown below.
Test BSR FTR Test Case Name Test Steps Test Data Expected Result
Case
ID

TC1 BSR1 FTR4 Successful Login 1) Browse the Userid=abc123 Successful Login
Login page Password=123456 and profile page is
URL. visible.
2) Enter User Role=
correct user STUDENT
ID
3) Enter
Correct
password
4) Enter
correct user
role

TC2 BSR1 FTR5 Unsuccessful Login 1) Browse the Userid=abc123 Unsuccessful Login
due to invalid Login page Password=wrong and Login page
username and URL. will show error.
password 2) Enter User Role=
correct user STUDENT
ID
3) Enter
wrong
password
4) Enter
correct user
role

TC3 BSR1 FTR6 Unsuccessful Login 1) Browse the Userid=abc123 Unsuccessful Login
due to invalid user Login page Password=123456 and Login page
role URL. will show error.
2) Enter User Role= DEAN
correct user
ID
3) Enter
Correct
password
4) Enter
wrong user
role
STEP 5: Likewise, complete above relationship table for all test cases and in the next step but
extract the first three columns of the table i.e. Test Case ID (TC), Business Requirement ID ( BSR),
and Functional Requirement ID (FTR ). It is nothing but you’re Requirement Traceability Matrix (RTM).

Test Case ID Business Requirement ID (BSR) Functional Requirement ID (FTR)

TC1 BSR1 FTR4

TC2 BSR1 FTR5

TC3 BSR1 FTR6


Requirement Traceability matrix (RTM)

Q-6 B) What is mutation testing? give an example

Ans- Mutation Testing is a type of software testing where we mutate (change) certain statements in the source code
and check if the test cases are able to find the errors. It is a type of White Box Testing which is mainly used for Unit
Testing. The changes in mutant program are kept extremely small, so it does not affect the overall objective of the
program.

The goal of Mutation Testing is to assess the quality of the test cases which should be robust enough to fail
mutant code. This method is also called as Fault based testing strategy as it involves creating fault in the
program

Mutation was originally proposed in 1971 but lost fervor due to high costs involved. Now, again it has picked
steam and is widely used for languages such as Java and XML.
Following are the steps to execute mutation testing:

Step 1: Faults are introduced into the source code of the program by creating many versions called mutants.
Each mutant should contain a single fault, and the goal is to cause the mutant version to fail which
demonstrates the effectiveness of the test cases.

Step 2: Test cases are applied to the original program and also to the mutant program. A Test Case should be
adequate, and it is tweaked to detect faults in a program.

Step 3: Compare the results of original and mutant program.

Step 4: If the original program and mutant programs generate the different output, then that the mutant is
killed by the test case. Hence the test case is good enough to detect the change between the original and the
mutant program.

Step 5: If the original program and mutant program generate same output, Mutant is kept alive. In such cases,
more effective test cases need to be created that kill all mutants.

Original Program Mutant program

If (x>y) If(x<y)
Print "Hello" Print "Hello"
Else Else
Print "Hi" Print "Hi"

Q-3 b) why independent testing team is required in organization?

Ans- Independent testing is a collection of tests performed by one or more professional software testers, who
are not related to the product development team. They are called “independent” because they are neither
associated with the producer nor the consumer. Independent software testing can be conducted for web
applications as well as applications on iOS and Android platforms.

Key Advantages of Independent Testing

Independent testing has an upper hand over traditional testing in many ways. Let’s take a look at some of the
key advantages that it offers:

1. Improved Software Quality – One of the top benefits of outsourcing testing to independent testing
organizations is improved software quality. Independent testing teams engage in a bias-free procedure and
make sure that the product is developed according to customer requirements and meets the desired
objectives while maintaining high quality.

2. Experienced and Skilled Manpower – Independent testing organizations have experienced and skilled
manpower to carry out testing activities in the best possible manner. They hire the best of talent across
various testing domains like automation testing, manual testing, load testing, security testing, etc.
3. Lower Life Cycle Costs – Organizations that employ independent testers can focus exclusively on quality and
adherence to requirements and maintainability and scalability to address future needs. This ensures low
failure rates and reduced maintenance costs. Rigorous testing cycles for both functional and non-functional
aspects like performance and stress handling is covered.

4. Reduced Time to Market – There is a reduced and improved time to market for organizations having an
independent testing practice. Access to expertise in test automation skills ensures faster testing cycles.
Predictability to testing efforts ensures adherence to timelines. Optimized staffing ensures effective handling
of dynamic requirements.

5. Flexibility – We are living in a fast-paced world and we need to be flexible in order to keep up with the pace.
You can opt for automation testing or manual testing based on organizational needs. You can easily switch
between manual and automation testing as independent testing organizations have the best of talent and
expertise to do so.

Q-7 a) what is Selenium? What are the different Selenium components? [16=6+5+5]

Ans- Selenium is a free (open source) automated testing suite for web applications across different browsers and
platforms. It is quite similar to HP Quick Test Pro (QTP now UFT) only that Selenium focuses on automating web-based
applications. Testing done using Selenium tool is usually referred as Selenium Testing.

Selenium is not just a single tool but a suite of software's, each catering to different testing needs of an
organization. It has four components.

 Selenium Integrated Development Environment (IDE)

 Selenium Remote Control (RC)

 WebDriver

 Selenium Grid

1. Selenium-IDE:
Selenium-IDE is the Integrated Development Environment for building Selenium test cases. It operates as a
Firefox add-on.
It is very easy to use. It has record and play feature and we can also write our own extensions and implement
loops, if statements, use arrays, parameterize test cases. Selenium-IDE is very user friendly.
Limitation of Selenium-IDE:
It gets installed as an add-on on Mozilla and works only on Mozilla. IDE cannot work on browsers other than
Mozilla. That’s why RC or webdriver is used.

2. Selenium-RC (Remote Control):


Selenium Remote Control (RC) is a test tool that allows you to write automated web application UI tests in
any programming language.
Selenium Remote Control is great for testing complex AJAX-based web applications. Selenium Remote
Control can be used for any java script enabled browser.
Limitation of Selenium-RC:
In RC we have to start the server again and again i.e. RC completely depends upon server. Switching between
the multiple instances of the same browser is not possible. Switching between the multiple instances of the
different browsers is not possible.

3. Selenium-Grid:
Selenium Grid is a server that allows tests to use web browser instances running on remote machines. With
Selenium Grid, one server acts as the hub.

4. Selenium WebDriver
WebDriver is designed to provide a simpler, more concise programming interface in addition to addressing
some limitations in the Selenium-RC API. WebDriver’s goal is to supply a well-designed object-oriented API
that provides improved support for modern advanced web-app testing problems.

Q-7 b) What are the limitation of selenium?

Ans- It does not support and non web-based applications, it only supports web based applications.

Its an open source tool so in case of any technical issues you need to rely on the selenium community forums
to get your issue resolved.

You need to know at least one of the supported language very well in order to automate your application
successfully.

No inbuilt reporting capability so you need plugins like JUnit and TestNG for test reports.

Lot of challenges with IE browser.

Selenium supports testing of only web based applications Mobile applications cannot be tested using
Selenium Captcha and Bar code readers cannot be tested using Selenium Reports can only be generated
using third party tools like TestNG or Junit. As Selenium is a free tool, thus there is no ready vendor support
though the user can find numerous helping communities. User is expected to possess prior programming
language knowledge.

 We can use Selenium only to test web applications. We cannot test desktop applications or any other
software

 There is no guaranteed support available for Selenium. We need to leverage on the available customer
communities

 It is not possible to perform testing on images. We need to integrate Selenium with Sikuli for image based
testing

 There is no native reporting facility. But we can overcome that issue by integrating it with frameworks
like TestNG or JUnit

Q-7 c) Why one should select selenium as test tool?

Ans- It’s very easy to setup and use


 Selenium is an open source tool

 Test scripts in Selenium can be written in any of these programming


languages: Java,Python, C#, PHP, Ruby, Perl & .Net

 Tests can be carried out in any of these OS: Windows, Mac or Linux

 Tests can be carried out using any browser: Mozilla Firefox, Internet Explorer, Google
Chrome, Safari or Opera

 It can be integrated with tools such as TestNG & JUnit for managing test cases and generating reports

 It can be integrated with Maven, Jenkins & Docker to achieve Continuous Testing

 It is developed by Jason Huggins and his team. This is release under the Apache 2.0 license and can
be downloaded and used without any charge.

 Selenium is easy to get started with for simple functional testing of web application. It supports
record and playback for testing web based application. Selenium supports multithreading feature i.e.
multiple instance of script can be run on different browsers.

Q-8 a) Describe the selenium Web driver architecture with the help of diagram. [16=6+5+5]

Ans-

Selenium Webdriver is also a well-designed object oriented API which helps in communication between
languages and browsers.

We have many programming languages like JAVA, C#, Python etc. and a programmer can write code using
any language. To automate browser, a programmer needs to understand the logic of browsers.

Every browser has different logic of performing actions like loading a page, closing the browser etc. Some
browsers are open source or some are not. Open source means we can see the code and can edit as well. But
all browsers are not open source. So, programmer can’t see code of all browsers and it is not possible to
automate as well.
Here is the place, where selenium webdriver makes an entry. Selenium makes it possible for programmer to
communicate with browsers through Webdriver. Every browser has provided a driver through which
communication to browser is possible.

1. Language binding: To support multiple languages, selenium people has developed language bindings. If
you want to use the browser driver in Java, use the Java bindings for Selenium Webdriver. If you want to
use the browser driver in C#, Ruby or Python, use the binding for that language. All language binding can
be downloaded from selenium official website.

2. Selenium Webdriver: It is an API which makes possible to communication between programming


languages and browsers. It follows object oriented concepts. It has multiple classes and interfaces.

3. Browser drivers: A browser driver can be considered as a personal secretary of a boss. A browser drivers
helps in communication with browser without revealing the internal logic of browser’s functionality. The
browser driver is the same regardless of the language used for automation.

When the automation script is executed, the following steps are done internally:

1. A HTTP request is created and sent to browser driver for each selenium instruction or commands.

2. A browser driver receives the HTTP request through HTTP server.

3. HTTP server decides all steps to perform instructions which are executed on browser.

4. Execution status is sent back to HTTP server which is sent back to automation script.

Q-8 b) What is selenium? What is the different feature of it?

Ans- Selenium is a free (open source) automated testing suite for web applications across different browsers and
platforms. It is quite similar to HP Quick Test Pro (QTP now UFT) only that Selenium focuses on automating web-based
applications. Testing done using Selenium tool is usually referred as Selenium Testing.

Selenium is not just a single tool but a suite of software's, each catering to different testing needs of an
organization. It has four components.

 Selenium Integrated Development Environment (IDE)

 Selenium Remote Control (RC)

 WebDriver

 Selenium Grid

 Selenium is an open source tool

 Test scripts in Selenium can be written in any of these programming


languages: Java,Python, C#, PHP, Ruby, Perl & .Net

 Tests can be carried out in any of these OS: Windows, Mac or Linux
 Tests can be carried out using any browser: Mozilla Firefox, Internet Explorer, Google
Chrome, Safari or Opera

 It can be integrated with tools such as TestNG & JUnit for managing test cases and generating reports

 It can be integrated with Maven, Jenkins & Docker to achieve Continuous Testing

 It is developed by Jason Huggins and his team. This is release under the Apache 2.0 license and can
be downloaded and used without any charge.

 Selenium is easy to get started with for simple functional testing of web application. It supports
record and playback for testing web based application. Selenium supports multithreading feature i.e.
multiple instance of script can be run on different browsers.

Q-8 c) Enlist and explain the component of selenium tool?

Ans- Selenium is not just a single tool but a suite of software's, each catering to different testing needs of an
organization. It has four components.

 Selenium Integrated Development Environment (IDE)

 Selenium Remote Control (RC)

 WebDriver

 Selenium Grid

1. Selenium-IDE:
Selenium-IDE is the Integrated Development Environment for building Selenium test cases. It operates as a
Firefox add-on.
It is very easy to use. It has record and play feature and we can also write our own extensions and implement
loops, if statements, use arrays, parameterize test cases. Selenium-IDE is very user friendly.
Limitation of Selenium-IDE:
It gets installed as an add-on on Mozilla and works only on Mozilla. IDE cannot work on browsers other than
Mozilla. That’s why RC or webdriver is used.

2. Selenium-RC (Remote Control):


Selenium Remote Control (RC) is a test tool that allows you to write automated web application UI tests in
any programming language.
Selenium Remote Control is great for testing complex AJAX-based web applications. Selenium Remote
Control can be used for any java script enabled browser.
Limitation of Selenium-RC:
In RC we have to start the server again and again i.e. RC completely depends upon server. Switching between
the multiple instances of the same browser is not possible. Switching between the multiple instances of the
different browsers is not possible.
3. Selenium-Grid:
Selenium Grid is a server that allows tests to use web browser instances running on remote machines. With
Selenium Grid, one server acts as the hub.

4. Selenium WebDriver
WebDriver is designed to provide a simpler, more concise programming interface in addition to addressing
some limitations in the Selenium-RC API. WebDriver’s goal is to supply a well-designed object-oriented API
that provides improved support for modern advanced web-app testing problems.

Q-9 a) What does SQA ensure? what are the goals of SQA? [17=6+6+5]

Ans-

 Management Review: Management Review is also known as Software Quality Assurance or (SQA). It
focuses more on the software process rather than the software work products. Quality Assurance is a
set of activities designed to ensure that the project manager follows the standard process which is
already pre-defined. In other words, Quality Assurance makes sure the Test Manager is doing the
right things in the right way.

 Audit: An audit is the examination of the work products and related information to assesses whether
the standard process was followed or not.

As a Test Manager, you are the person who takes in charge these activities. However,you are at the highest
position in the project team. Who will review your tasks and check the project management activities are
executed to the highest standard?

Well, SQA auditor is the person who reviews and checks the project management activities are executed to
the highest possible standard. Only through the result of this review, the Management Board can evaluate
the quality of your project handling.

This is the reason why we do need Management Review or SQA in Test Management process.
The SQA interviews you, the Test Manager, to benchmark the project against set standards.

Benefits of SQA are -

1. Monitoring and improving the process.

2. Make sure that standers and procedures are followed

3. Prepare the quality problem from occurring.

Q-9 b) State and explain Principles of Quality management.

Ans- The eight principles are:

1 Customer focus

Organizations can establish this focus by trying to understand and meet their customers’ current and future
requirements and expectations.

2 Leadership

Organizations succeed when leaders establish and maintain the internal environment in which employees
can become fully involved in achieving the organization’s unified objectives.

3 Involvement of people

Organizations succeed by retaining competent employees, encouraging continuous enhancement of their


knowledge and skills, and empowering them, encouraging engagement and recognizing achievements.

4 Process approach

Organizations enhance their performance when leaders manage and control their processes, as well as the
inputs and outputs that tie these processes together.

5 System approach to management

Organizations sustain success when processes are managed as one coherent quality management system.

6 Continuous improvement

Organizations will maintain current levels of performance, respond to changing conditions, and identify,
create and exploit new opportunities when they establish and sustain an ongoing focus on improvement.

7 Factual approach to decision making

Organizations succeed when they have established an evidence-based decision making process that entails
gathering input from multiple sources, identifying facts, objectively analyzing data, examining cause/effect,
and considering potential consequences.
8 Mutually beneficial supplier relationships

Organizations that carefully manage their relationships with suppliers and partners can nurture positive and
productive involvement, support and feedback from those entities.

These principles form the conceptual foundation for the ISO portfolio of quality management standards and
serve as the basis for the Good Manufacturing Practices (GMP), Good Clinical Practices (GCP), and Good
Laboratory Practices (GLP) required by most government regulatory bodies.

Q-9 c) What is ISO standard? What are advantages?

Ans- The International Organization for Standardization (ISO /ˈaɪsoʊ/) is aninternational standard-setting
body composed of representatives from various national standards organizations.

Founded on 23 February 1947, the organization promotes worldwide proprietary, industrial and
commercial standards.

The International Organization for Standardization is an independent, non-governmental organization, the


members of which are the standards organizations of the 168[1] member countries.

Regulators and governments count on ISO standards to help develop better regulation, knowing they have a
sound basis thanks to the involvement of globally-established experts.

To find out more about how ISO's 22459 standards touch almost all aspects of daily life, and work for
businesses large and small,

Elements of ISO Slandered

 Management Responsibility

 Quality System

 Order Entry

 Design Control

 Document and Data Control

 Purchasing

 Control of Customer Supplied Products

 Product Identification and Tractability

 Process Control

 Inspection and Testing Control of Inspection, Measuring, and Test Equipment

 Inspection and Test Status

 Control of Nonconforming Products


 Corrective and Preventive Action

 Handling, Storage, Packaging, and Delivery

 Control of Quality Records

 Internal Quality Audits

 Training

 Servicing

 Statistical Techniques

Benefits of ISO-

 Increased marketability

 Reduced operational expenses

 Better management control

 Increased customer satisfaction

 Improved internal communication

 Improved customer service

 Reduction of product-liability risks

Q-10 a) What is six sigma? Explain the term DMAIC & DMADV? [17=6+6+5]

Ans- Six Sigma can also be thought of as a measure of process performance, with Six Sigma being the goal,
based on the defects per million. Once the current performance of the process is measured, the goal is to
continually improve the sigma level striving towards 6 sigma. Even if the improvements do not reach 6 sigma,
the improvements made from 3 sigma to 4 sigma to 5 sigma will still reduce costs and increase customer
satisfaction.
The Six Sigma DMAIC methodology is used when an organization is improving its existing processes during a
process improvement project. The acronym DMAIC represents five project phases: Define, Measure, Analyze,
Improve, and Control.

The Six Sigma DMADV methodology is used when an organization is creating new processes in order to
achieve their customers’ needs. The acronym DMADV represents five project phases: Define, Measure,
Analyze, Design, and Verify.

DMAIC focuses on:

 defining business processes

 measuring the current performance of a business process

 finding the root cause of a problem

 making improvements to the business process to reduce defects

 implementing controls to alert leadership when the process is no longer in control.

DMADV focuses on:

 defining the customer’s needs

 measuring the customer’s needs

 finding process options that will meet the customer’s needs

 designing a business model that helps meet the customer’s needs

 verifying that the new model meets the customer’s needs

For more information on the fundamentals of these processes, please visit our detailed informational pages
on DMAIC and DMADV.

Q-10 b) Define Software Quality & Software Quality Assurance. List the various objectives of SQA.

Ans- SOFTWARE QUALITY is the degree of conformance to explicit or implicit requirements and expectations.

Explanation

 Explicit: clearly defined and documented

 Implicit: not clearly defined and documented but indirectly suggested

 Requirements: business/product/software requirements

 Expectations: mainly end-user expectations

SOFTWARE QUALITY ASSURANCE (SQA) is a set of activities for ensuring quality in software engineering
processes (that ultimately result in the quality of software products).
SQA Activities

It includes the following activities:

 Process definition and implementation

 Auditing

 Training

SQA Processes

Processes include:

 Software Development Methodology

 Project Management

 Configuration Management

 Requirements Development/Management

 Estimation

 Software Design

 Testing

 etc

Once the processes have been defined and implemented, Quality Assurance has the following
responsibilities:

 identifying weaknesses in the processes

 correcting those weaknesses to continually improve the processes

The quality management system under which the software system is created is normally based on one or
more of the following models/standards:

 CMMI

 Six Sigma

 ISO 9000

Software Quality Assurance encompasses the entire software development lifecycle and the goal is to ensure
that the development and/or maintenance processes are continuously improved to produce products that
meet specifications/requirements.

Q-10 c) How cost and risk factors are affecting software quality.
Ans- Cost is the main driving factor for all projects. When it is done correctly, it helps in the successful
completion of the project. In this research we have discussed various factors that affect the estimation
procedure. These include team structure, team culture, managerial style, project type (Core application or
integrated application), client’s working environment.

Accurate estimation is far difficult in developing countries where most of the organizations follow local
standards. These inaccurate estimations lead to late delivery, less profit or in worst case complete failure.
Software requirement gathering, development, maintenance, quality assurance and cost of poor quality are
major groups responsible for overall cost in software production process.

The exact proportion among them varies significantly in consecutive software releases, which is caused by
many factors. The ever increasing need for the reliability of the software systems, especially mission critical
applications in the public safety domain, raises the bar for the accuracy of prediction and estimation
techniques.

The accuracy of estimations in many areas brings about more concerns regarding techniques already used in
the software industry. Widely deployed techniques, such as Wideband Delphi method, stress the engineering
and technical aspects of the process of how estimates are prepared

“Risk is future uncertain events with a probability of occurrence and a potential for loss”

Risk identification and management are the main concerns in every software project. Effective analysis of
software risks will help to effective planning and assignments of work.

Categories of Risks

Schedule Risk:
Project schedule get slip when project tasks and schedule release risks are not addressed properly.
Schedule risks mainly affect a project and finally on company economy and may lead to project failure.

 Wrong time estimation

 Resources are not tracked properly. All resources like staff, systems, skills of individuals etc.

 Failure to identify complex functionalities and time required to develop those functionalities.

 Unexpected project scope expansions.

Budget Risk:

 Wrong budget estimation.

 Cost overruns

 Project scope expansion


Operational Risks:
Risks of loss due to improper process implementation failed system or some external events risks.
Causes of Operational risks:

 Failure to address priority conflicts

 Failure to resolve the responsibilities

 Insufficient resources

 No proper subject training

 No resource planning

 No communication in the team.

Technical risks:
Technical risks generally lead to failure of functionality and performance.
Causes of technical risks are:

 Continuous changing requirements

 No advanced technology available or the existing technology is in initial stages.

 The product is complex to implement.

 Difficult project modules integration.

Programmatic Risks:
These are the external risks beyond the operational limits. These are all uncertain risks are outside the
control of the program.
These external events can be:

 Running out of the fund.

 Market development

 Changing customer product strategy and priority

 Government rule changes.

Q-11 a) Enumerate Ishikawa seven basic quality tools. Explain any Two in Details. [17=6+6+5]

Ans-

1. Cause-and-effect diagram: (also called Ishikawa or fishbone chart): Identifies many possible causes for an
effect or problem and sorts ideas into useful categories.

2. Check sheet: A structured, prepared form for collecting and analyzing data; a generic tool that can be
adapted for a wide variety of purposes.
3. Control charts: Graphs used to study how a process changes over time. Comparing current data to
historical control limits leads to conclusions about whether the process variation is consistent (in control)
or is unpredictable (out of control, affected by special causes of variation).

4. Histogram: The most commonly used graph for showing frequency distributions, or how often each
different value in a set of data occurs.

5. Pareto chart: Shows on a bar graph which factors are more significant.

6. Scatter diagram: Graphs pairs of numerical data, one variable on each axis, to look for a relationship.

7. Stratification: A technique that separates data gathered from a variety of sources so that patterns can be
seen (some lists replace “stratification” with “flowchart” or “run chart”).

1. Histogram

Histogram introduced by Karl Pearson is a bar graph representing the frequency distribution on each bars.

The very purpose of Histogram is to study the density of data in any given distribution and understand the
factors or data that repeat more often.

Histogram helps in prioritizing factors and identify which are the areas that needs utmost attention
immediately.

Check sheet (Tally Sheet)

A check sheet can be metrics, structured table or form for collecting data and analysing them. When the
information collected is quantitative in nature, the check sheet can also be called astally sheet.

The very purpose of checklist is to list down the important checkpoints or events in a tabular/metrics format
and keep on updating or marking the status on their occurrence which helps in understanding the progress,
defect patterns and even causes for defects.
Q-11 b) Describe Key element Total Quality Management?

Ans- Total Quality Management (TQM) is a management approach that originated in the 1950s and has
steadily become more popular since the early 1980s. Total quality is a description of the culture, attitude and
organization of a company that strives to provide customers with products and services that satisfy their
needs. The culture requires quality in all aspects of the company’s operations, with processes being done
right the first time and defects and waste eradicated from operations.

TQM requires the help of those eight key elements. These elements can be divided into four groups
according to their function.

The groups are:


I. Foundation – It includes: Ethics, Integrity and Trust.
II. Building Bricks – It includes: Training, Teamwork and Leadership.
III. Binding Mortar – It includes: Communication.
IV. Roof – It includes: Recognition.

To be successful implementing TQM, an organization must concentrate on the eight key elements:

1. Ethics

2. Integrity

3. Trust

4. Training

5. Teamwork

6. Leadership
7. Recognition

8. Communication

Foundation

Foundation further includes Ethics, Integrity and Trust

The entire process of Total Quality Management is built on a strong foundation of Ethics, Integrity and Trust.
Total Quality Management involves every single employee irrespective of his designation and level in the
hierarchy.

Ethics: Ethics is an individual’s understanding of what is good and bad at the workplace. A thin line of
difference does exist between good and bad, which is for you to decide. Ethics teach an individual to follow
code of conduct of organization and adhere to rules and regulations.

Integrity: Integrity refers to honesty, values and an individual’s sincerity at workplace. You need to respect
your organization’s policies. Avoid spreading unnecessary rumours about your fellow workers. Total Quality
Management does not work in an environment where employees criticize and backstab each other.

Trust: Trust is one of the most important factors necessary for implementation of total quality management.
Employees need to trust each other to ensure participation of each and every individual. Trust improves
relationship among employees and eventually helps in better decision making which further helps in
implementing total quality management successfully.

Bricks

Bricks are placed on a strong foundation to reach the roof of recognition. The foundation needs to be strong
enough to hold the bricks and support the roof.

Training: Employees need to be trained on Total Quality Management. Managers need to make their fellow
workers aware of the benefits of total quality management and how would it make a difference in their
product quality and eventually yield profits for their organization. Employees need to be trained on
interpersonal skills, the ability to work as a team member, technical know-how, decision making skills,
problem solving skills and so on. Training enables employees to implement TQM effectively within their
departments and also make them indispensable resources.

Teamwork: Team work is a crucial element of total quality management. Rather than working individually,
employees need to work in teams. When individuals work in unison, they are in a position to brainstorm
ideas and come up with various solutions which would improve existing processes and systems. Team
members ought to help each other to find a solution and put into place.

Leadership: Leadership provides a direction to the entire process of Total Quality Management. Total Quality
Management needs to have a supervisor who acts as a strong source of inspiration for other members and
can assist them in decision making. A leader himself needs to believe in the entire process of TQM for others
to believe in the same. Proper downloads, briefs about TQM must be given from to time to employees to
help them in its successful implementation.

Binding Mortar

Binding Mortar binds all the elements together.


Communication - Communication binds employees and extracts the best out of them. Information needs to
be passed on from the sender to the recipient in its desired form. Small misunderstandings in the beginning
lead to major problems later on. Employees need to interact with each other to come up with problems
existing in the system and find their solutions as well.

Three types of Communication takes place between employees:

Downward Communication: Flow of information takes place from the management to the employees

Upward Communication: Flow of information takes place from the employees to the top level management

Sideways Communication: Communication also takes place between various departments.

Roof

Recognition: Recognition is the final element of Total Quality Management. Recognition is the most
important factor which acts as a catalyst and drives employees to work hard as a team and deliver their lever
best. Every individual is hungry for appreciation and recognition. Employees who come up with improvement
ideas and perform exceptionally well must be appreciated in front of all. They should be suitably rewarded to
expect a brilliant performance from them even the next time.

Q-11 c) Explain with the example Product Quality Metric?

Ans- Software metrics can be classified into three categories −

 Product metrics − Describes the characteristics of the product such as size, complexity, design
features, performance, and quality level.

 Process metrics − These characteristics can be used to improve the development and maintenance
activities of the software.

 Project metrics − This metrics describe the project characteristics and execution. Examples include
the number of software developers, the staffing pattern over the life cycle of the software, cost,
schedule, and productivity.

Some metrics belong to multiple categories. For example, the in-process quality metrics of a project are both
process metrics and project metrics.

Software quality metrics are a subset of software metrics that focus on the quality aspects of the product,
process, and project. These are more closely associated with process and product metrics than with project
metrics.

Software quality metrics can be further divided into three categories −

 Product quality metrics

 In-process quality metrics

 Maintenance quality metrics

Product Quality Metrics


This metrics include the following −

 Mean Time to Failure

 Defect Density

 Customer Problems

 Customer Satisfaction

Mean Time to Failure

It is the time between failures. This metric is mostly used with safety critical systems such as the airline traffic
control systems, avionics, and weapons.

Defect Density

It measures the defects relative to the software size expressed as lines of code or function point, etc. i.e., it
measures code quality per unit. This metric is used in many commercial software systems.

Customer Problems

It measures the problems that customers encounter when using the product. It contains the customer’s
perspective towards the problem space of the software, which includes the non-defect oriented problems
together with the defect problems.

The problems metric is usually expressed in terms of Problems per User-Month (PUM).

PUM = Total Problems that customers reported (true defect and non-defect oriented
problems) for a time period + Total number of license months of the software during
the period
Where,

Number of license-month of the software = Number of install license of the software ×


Number of months in the calculation period

PUM is usually calculated for each month after the software is released to the market, and also for monthly
averages by year.

Customer Satisfaction

Customer satisfaction is often measured by customer survey data through the five-point scale −

 Very satisfied

 Satisfied

 Neutral
 Dissatisfied

 Very dissatisfied

Satisfaction with the overall quality of the product and its specific dimensions is usually obtained through
various methods of customer surveys. Based on the five-point-scale data, several metrics with slight
variations can be constructed and used, depending on the purpose of analysis. For example −

 Percent of completely satisfied customers

 Percent of satisfied customers

 Percent of dis-satisfied customers

 Percent of non-satisfied customers Usually, this percent satisfaction is used.

Q-12 a) Write a short note on Total Quality Management (TQM)

Ans- The origin of the TQM goes back to the time of the First World War.

Basic Principles of TQM

In TQM, the processes and initiatives that produce products or services are thoroughly managed. By this way
of managing, process variations are minimized, so the end product or the service will have a predictable
quality level.

Following are the key principles used in TQM:

 Top management - The upper management is the driving force behind TQM. The upper management
bears the responsibility of creating an environment to rollout TQM concepts and practices.

 Training needs - When a TQM rollout is due, all the employees of the company need to go through a
proper cycle of training. Once the TQM implementation starts, the employees should go through
regular trainings and certification process.

 Customer orientation - The quality improvements should ultimately target improving the customer
satisfaction. For this, the company can conduct surveys and feedback forums for gathering customer
satisfaction and feedback information.

 Involvement of employees - Pro-activeness of employees is the main contribution from the staff. The
TQM environment should make sure that the employees who are proactive are rewarded
appropriately.

 Techniques and tools - Use of techniques and tools suitable for the company is one of the main
factors of TQM.

 Corporate culture - The corporate culture should be such that it facilitates the employees with the
tools and techniques where the employees can work towards achieving higher quality.
 Continues improvements - TQM implementation is not a one time exercise. As long as the company
practices TQM, the TQM process should be improved continuously.

The Cost
Some companies are under the impression that the cost of TQM is higher than the benefits it offers. This
might be true for the companies in small scale, trying to do everything that comes under TQM.

According to a number of industrial researches, the total cost of poor quality for a company always exceeds
the cost of implementing TQM.

In addition, there is a hidden cost for the companies with poor quality products such as handling customer
complaints, re-shipping, and the overall brand name damage.

Q-12 b) Explain the following (any two)

Pareto Chart Scatter Diagram Cause and Effect Diagram

Ans-

i) Pareto Chart

 Also called: Pareto diagram, Pareto analysis

 Variations: weighted Pareto chart, comparative Pareto charts

 A Pareto chart is a bar graph. The lengths of the bars represent frequency or cost (time or money),
and are arranged with longest bars on the left and the shortest to the right. In this way the chart
visually depicts which situations are more significant.

 When analyzing data about the frequency of problems or causes in a process.

 When there are many problems or causes and you want to focus on the most significant.

 When analyzing broad causes by looking at their specific components.

 When communicating with others about your data.

 Analyze the occurrences of up to 10 defects. Start by entering the defects on the check sheet. This
tool creates a Pareto chart using the data you enter.
i) Scatter Diagram

 Also called: scatter plot, X–Y graph

 The scatter diagram graphs pairs of numerical data, with one variable on each axis, to look for a
relationship between them. If the variables are correlated, the points will fall along a line or curve.
The better the correlation, the tighter the points will hug the line.

 When you have paired numerical data.

 When your dependent variable may have multiple values for each value of your independent
variable.

 When trying to determine whether the two variables are related, such as:

i) When trying to identify potential root causes of problems.

ii) After brainstorming causes and effects using a fishbone diagram, to determine objectively
whether a particular cause and effect are related.

iii) When determining whether two effects that appear to be related both occur with the
same cause.

iv) When testing for autocorrelation before constructing a control chart.

 The ZZ-400 manufacturing team suspects a relationship between product purity (percent purity) and
the amount of iron (measured in parts per million or ppm). Purity and iron are plotted against each
other as a scatter diagram, as shown in the figure below.
 There are 24 data points. Median lines are drawn so that 12 points fall on each side for both percent
purity and ppm iron.

 To test for a relationship, they calculate:


A = points in upper left + points in lower right = 9 + 9 = 18
B = points in upper right + points in lower left = 3 + 3 = 6
Q = the smaller of A and B = the smaller of 18 and 6 = 6
N = A + B = 18 + 6 = 24

 Then they look up the limit for N on the trend test table. For N = 24, the limit is 6.
Q is equal to the limit. Therefore, the pattern could have occurred from random chance, and no
relationship is demonstrated.

iii) Cause and Effect Diagram

Also Called: Cause-and-Effect Diagram, Ishikawa Diagram Variations: cause enumeration diagram, process
fishbone, time-delay fishbone, CEDAC (cause–and–effect diagram with the addition of cards), desired–result
fishbone, reverse fishbone diagram.

The fishbone diagram identifies many possible causes for an effect or problem. It can be used to structure a
brainstorming session. It immediately sorts ideas into useful categories. This Diagram is used

 When identifying possible causes for a problem.

 When a team’s thinking tends to fall into ruts.

Materials needed: flipchart or whiteboard, marking pens.


1. Agree on a problem statement (effect). Write it at the center right of the flipchart or whiteboard.
Draw a box around it and draw a horizontal arrow running to it.

2. Brainstorm the major categories of causes of the problem. If this is difficult use generic headings:

o Methods

o Machines (equipment)

o People (manpower)

o Materials

o Measurement

o Environment

3. Write the categories of causes as branches from the main arrow.

4. Brainstorm all the possible causes of the problem. Ask “Why does this happen?” As each idea is
given, the facilitator writes it as a branch from the appropriate category. Causes can be written in
several places if they relate to several categories.

5. Again ask “Why does this happen?” about each cause. Write sub-causes branching off the causes.
Continue to ask “Why?” and generate deeper levels of causes. Layers of branches indicate causal
relationships.

6. When the group runs out of ideas, focus attention to places on the chart where ideas are few.

This fishbone diagram was drawn by a manufacturing team to try to understand the source of periodic iron
contamination. The team used the six generic headings to prompt ideas. Layers of branches show thorough
thinking about the causes of the problem.
Q-12 c) Describe in details Defect Removal Effectiveness.

Ans- Defect Removal Efficiency


Definition : The defect removal efficiency (DRE) gives a measure of the development team ability to remove defects
prior to release. It is calculated as a ratio of defects resolved to total number of defects found. It is typically measured
prior and at the moment of release.

Calculation
To be able to calculate that metric, it is important that in your defect tracking system you track:
affected version, version of software in which this defect was found.
release date, date when version was released
DRE = Number of defects resolved by the development team / total number of defects at the moment of
measurement.

DRE is typically measured at the moment of version release, the best visualization is just to show current
value of DRE as a number.

Example
For example, suppose that 100 defects were found during QA/testing stage and 84 defects were resolved by
the development team at the moment of measurement. The DRE would be calculated as 84 divided by 100 =
84%

*****************************************THE END*********************************

Potrebbero piacerti anche