dhomaseghanshyam.files.wordpress.com · web vieweven if the improvements do not reach 6 sigma, the...
Post on 06-Mar-2021
2 Views
Preview:
TRANSCRIPT
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 Case -ID
Test case Objec tive
Prereq uisite
Steps Inp ut data
Expect ed Result Act ual Resu lt
Re ma rks/ Sta tus
1 TC1 To add two Calculato 1.Key in a valid integer 135 235(addition, 235 Pass
No. Test Case -ID
Test case Objec tive
Prereq uisite
Steps Inp ut data
Expect ed Result Act ual Resu lt
Re ma rks/ Sta tus
integer and display the result on ten digit calculato
r is switched on
from - 9999999999 to +9999999999 2.Key in operator + 3.Key in second operand,a valid integer from - 9999999999 To +999999999
+ 100
above ten digits will be expressed in exponential form)
2 TC-2 To subtract two integer and display the result on ten digit calculator
Calculato r is switched on
1.Key in a valid integer from - 9999999999 to +9999999999 2.Key in operator - 3.Key in second operand,a valid integer from - 9999999999 To +999999999
135- 100
35(subtractio n,above ten digits will be expressed in exponential form)
35 Pass
3. TC-3 To multiply two integer and display the result on ten digit calculator
Calculato r is switched on
1.Key in a valid integer from - 9999999999 to +9999999999 2.Key in operator x 3.Key in second operand,a valid integer from - 9999999999 To +999999999
100 x 400
40000(multi plication,abo ve ten digits will be expressed in exponential form)
40000 Pass
4. TC4 To divide two integer and display the result on ten digit calculator
Calculato r is switched on
1.Key in a valid integer from - 9999999999 to +9999999999 2.Key in operator / 3.Key in second operand,a valid integer from - 9999999999 To +999999999
100/ 25
40(division,a bove ten digits will be expressed in exponential form)
40 Pass
5 TC5 To clear the screen
Calculato r is switched on
Press C Symbol ‗0‘ should appear on screen
Symbo l ‗0‘ appear s on screen
Pass
6 TC6 To delete digits one by one
Calculato r is switched on
Press <- (backspace) One Digit should be deleted from right hand side
One Digit is deleted from right handsi de
PASS
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 pageb. Check whether all controls are available on the form as per requirementc. Check the alignment of web controls in the formd. Test all labels of the formse. An asterisk is displayed near required fieldsf. Check the behavior of form by not filling up any data into the form.g. Check heading of the formh. Check phone number field with alphabetic data and with invalid formatsi. Check email field with invalid email formatj. Check Captcha field with reset buttonk. Save and cancel buttons in the forml. Check the behavior of form by adding random data in the text field.m. Validation message on required field or incorrect valuesn. Check whether the navigation between the fields is successful using tabo. 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 specification2. Verify the ATM machine accepts card and PIN details3. Verify the error message by inserting a card incorrectly4. Verify the error message by inserting an invalid card (Expired Card)5. Verify the error message by entering an incorrect PIN6. Verify that the user is asked to enter the PIN after inserting a valid ATM Card7. Verify that PIN is encrypted8. Verify that there is an action like blocking of card occurs when the total no. of incorrect PIN attempts get surpassed9. Verify the user is allowed to do only one cash withdrawal transaction per PIN request10. Verify the machine logs out of the user session immediately after successful withdrawal11. Verify the message when there is no money in the ATM12. Verify the language selection functionality13. Verify the cash withdrawal functionality by entering some valid amount14. Verify the cash withdrawal functionality by entering an amount less than 10015. 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 limit17. 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 withdrawal20. Verify the font of the text displayed in ATM screen21. Verify the text on the screen buttons visible clearly.22. Verify the functionality of all the buttons on the keypad23. Verify the text on the buttons visible clearly.24. Verify that touch of the ATM screen is smooth and operational25. 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 dispenser28. Verify the functionality of the receipt printer29. Verify whether the printed data is correct or not in the receipt30. 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 URLc. Test all internal links are navigating within application as per requirementd. Test links jumping on the same pagese. Check whether email address link opening the mail instance like outlookf. Test to check if there are any blank page to linkg. Test Links opening in other tab /window as per requirementh. Compatibility Testing for all links on other browsersi. 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 requirementm. Check whether shared link is getting shared properly with correct addressn. 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 Requirement (BSR)
Module Name
User Role Business Requirement Description
BSR1 Application Login and Logout
Student, Professor, Dean, Staff
A student can login with correct username and password (i.e. credentials) only if user role is selected as ‘Student’. Similarly it applies to user role as Professor, Dean, and Staff.
BSR2 Profile Page Student, Professor,
Student, Professor, Dean, and Staff post successful login could see their profile details not the other
Dean, Staff profiles.
BSR3 Task Assignment
Student, Professor, Dean, Staff
Student can accept or decline assignments assigned by Professor. Dean can approve and disapprove the 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 (FTR)
Description
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 Case ID
Test Case Name Test Steps Test Data Expected Result
TC1 Successful Login 1) Browse the Login page URL.2) Enter correct user ID3) Enter Correct password4) Enter correct user role
Userid=abc123Password=123456
User Role= STUDENT
Successful Login and profile page is visible.
TC2 Unsuccessful Login due to invalid username and password
1) Browse the Login page URL.2) Enter correct user ID
3) Enter wrong password
4) Enter correct user role
Userid=abc123Password=wrong
User Role= STUDENT
Unsuccessful Login and Login page will show error.
TC3 Unsuccessful Login due to invalid user role
1) Browse the Login page URL.2) Enter correct user ID3) Enter Correct password
Userid=abc123Password=123456
User Role= DEAN
Unsuccessful Login and Login page will show error.
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 Case ID
BSR FTR Test Case Name Test Steps Test Data Expected Result
TC1 BSR1 FTR4 Successful Login 1) Browse the Login page URL.2) Enter correct user ID3) Enter Correct password4) Enter correct user role
Userid=abc123Password=123456
User Role= STUDENT
Successful Login and profile page is visible.
TC2 BSR1 FTR5 Unsuccessful Login due to invalid username and password
1) Browse the Login page URL.2) Enter correct user ID3) Enter wrong password4) Enter correct user role
Userid=abc123Password=wrong
User Role= STUDENT
Unsuccessful Login and Login page will show error.
TC3 BSR1 FTR6 Unsuccessful Login due to invalid user role
1) Browse the Login page URL.2) Enter correct user
Userid=abc123Password=123456
User Role= DEAN
Unsuccessful Login and Login page will show error.
ID3) Enter Correct password4) 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 ElsePrint "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 WebDriverWebDriver 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 WebDriverWebDriver 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 EfficiencyDefinition : 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.
CalculationTo 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.
ExampleFor 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*********************************
top related