+ All Categories
Home > Documents > dhomaseghanshyam.files.wordpress.com€¦  · Web viewSNJB's Late Sau. Kantabai Bhavarlalji Jain...

dhomaseghanshyam.files.wordpress.com€¦  · Web viewSNJB's Late Sau. Kantabai Bhavarlalji Jain...

Date post: 21-Aug-2020
Category:
Upload: others
View: 2 times
Download: 0 times
Share this document with a friend
22
SNJB's Late Sau. Kantabai Bhavarlalji Jain College of Engineering Department : Computer Engineering Academic Year : 2019-20 (Semester I) Mock In-Sem Exam Class : B.E. Marks :30 Date: 9/8/2019 Time :9:30am to 10:30am Time : 1 Hr. Course : Software Testing Qulaity Assurance(STQA) Instructions: 1. Mock In Sem Exam based on Unit-I,II and III 2. Draw neat and clean diagram 3. Assume suitable data if necessary Q1 A) Explain the concept of Customer's & Supplier's view of Quality with suitable example? 4M ANS- Quality is a much more complicated term than it appears. Customer View of Quality People have found many ways to describe quality. Some of the most popular definitions for quality are listed below. a. A degree of excellence b. Conformance to requirements c. Totality of characteristics which act to satisfy a need d. Fitness for use e. Fitness for purpose f. Freedom from defects g. Delighting customers
Transcript
Page 1: dhomaseghanshyam.files.wordpress.com€¦  · Web viewSNJB's Late Sau. Kantabai Bhavarlalji Jain College of Engineering. Department : Computer Engineering. Academic . Year : 2019-20

SNJB's Late Sau. Kantabai Bhavarlalji Jain College of Engineering

Department : Computer Engineering

Academic Year : 2019-20 (Semester I)

Mock In-Sem Exam

Class : B.E. Marks :30 Date: 9/8/2019 Time :9:30am to 10:30am Time : 1 Hr.

Course : Software Testing Qulaity Assurance(STQA)

Instructions:

1. Mock In Sem Exam based on Unit-I,II and III

2. Draw neat and clean diagram

3. Assume suitable data if necessary

Q1 A) Explain the concept of Customer's & Supplier's view of Quality with suitable example? 4M

ANS-

Quality is a much more complicated term than it appears. 

Customer View of Quality

People have found many ways to describe quality. Some of the most popular definitions for quality are listed below.

a. A degree of excellence

b. Conformance to requirements

c. Totality of characteristics which act to satisfy a need

d. Fitness for use

e. Fitness for purpose

f. Freedom from defects

g. Delighting customers

All of the above gauges of quality are useful, as they each contain elements of what quality means to users of products and services. However, for quality to be embedded in a product or service there must be a set of measurable performance standards, which when achieved will guarantee the desired level of quality.

Measuring Quality:

a. Quality is specification driven – does it meet the set performance requirements

Page 2: dhomaseghanshyam.files.wordpress.com€¦  · Web viewSNJB's Late Sau. Kantabai Bhavarlalji Jain College of Engineering. Department : Computer Engineering. Academic . Year : 2019-20

b. Quality is measured at start of life – percent passing specification acceptance

c. Quality effectiveness is observable by number of rejects from customers

The quality characteristics of a product or service are known as the ‘Determinants of Quality’. These are the attributes customers look for to decide if it is a quality product or service.

Supplier View of Quality

In manufacturing, a measure of excellence or a state of being free from defects, deficiencies and significant variations. It is brought about by strict and consistent commitment to certain standards that achieve uniformity of a product in order to satisfy specific customer or user requirements. ISO 8402-1986 standard defines quality as "the totality of features and characteristics of a product or service that bears its ability to satisfy stated or implied needs

Page 3: dhomaseghanshyam.files.wordpress.com€¦  · Web viewSNJB's Late Sau. Kantabai Bhavarlalji Jain College of Engineering. Department : Computer Engineering. Academic . Year : 2019-20

If an automobile company finds a defect in one of their cars and makes a product recall, customer reliability and therefore production will decrease because trust will be lost in the car's quality.

Q1 B) Explain the concept of Quality Practices in TQM intend to view Internal & External Customer as well as supplier with suitable example? 6M

ANS- A core definition of total quality management (TQM) describes a management approach to long-term success through customer satisfaction. In a TQM effort, all members of an organization participate in improving processes, products, services, and the culture in which they work.

Internal customers are important from a quality perspective because the quality concept encourages employees to treat their co-workers as though they were external customers or suppliers, thus raising quality awareness within the company.

External customers are those who see your company mainly as a provider of something they buy. Internal customers participate in your business by actually being a part of it.

Valuing External Customers

Without external customers, your company would have no revenue and no reason for being in business. You design products and services with the goal of pleasing these customers and meeting their needs. You solicit their opinions via formal surveys and informal conversations, and you may even adopt the customer service adage, "The customer is always right."

When your external customers have negative experiences with your business, they may spread unflattering comments via online forums and in person by word of mouth. When they have positive experiences with your staff and your products, they'll give you repeat business.

Valuing Internal Customers

The workplace experience your business gives your workers should be satisfying as well – or else they'll have no reason to work for you, other than the fact that you sign their paychecks. When your business meets employee needs, the employees come to work with positive attitudes and the intention of doing a good job. If you treat your employees badly, your workplace environment will become toxic. Your employees will perform as well as necessary to keep their jobs, but they're unlikely to go the extra mile to do creative work and come through for you in a crisis.

(1) the product and service dimension: the degree to which the customer is satisfied with the product or service supplied;

(2) the people dimension: the degree to which the customer is satisfied with the relationship with the people in the supplying organizations;

(3) the process dimension: the degree to which the supplier is satisfied with the internal work processes, which are used to develop the products and services supplied to the customers.

Page 4: dhomaseghanshyam.files.wordpress.com€¦  · Web viewSNJB's Late Sau. Kantabai Bhavarlalji Jain College of Engineering. Department : Computer Engineering. Academic . Year : 2019-20

Q2 A) What is the difference between Continual vs. Continuous Improvement Cycle. 4M

ANS-

As continuous improvement and continual improvement belonging to the same family and connected with processes, knowing the difference helps in managing organizational improvements. Here we’ll try to distinguish the differences between continuous and continual.

Continuous takes into account successes like 5S and Kaizen and Lean, while continual takes into account processes like PDCA and gives a clear explanation of the differences between the two.

Continuous improvement is more of a lean approach to improving processes whereas eliminating waste and non-valued activities. Continuous is an ongoing effort in the development of services, service-related products, products in development and equally the processes established and followed.

Continual Improvement is more about planning and implementing strategic programmes to change the company's products, services, people and processes for the better.

Whilst Continuous Improvement is related to the constant, daily work practices and staff activities that are relentlously devoted to removing wasted effort and ellimitating defective products, services and processes.

Continual Improvement is enabled through the cycles of P-D-C-A  (Deming's 4 step business management method, Plan-Do-Check-Act), and D-M-A-I-C (Six Sigma data-driven process improvement cycle, Define-Measure-Analyse-Improve-Control).

Among the most widely used tools for the continuous improvement model is a four-step quality assurance method—the plan-do-check-act (PDCA) cycle:

Page 5: dhomaseghanshyam.files.wordpress.com€¦  · Web viewSNJB's Late Sau. Kantabai Bhavarlalji Jain College of Engineering. Department : Computer Engineering. Academic . Year : 2019-20

Plan: Identify an opportunity and plan for change.

Do: Implement the change on a small scale.

Check: Use data to analyze the results of the change and determine whether it made a difference.

Act: If the change was successful, implement it on a wider scale and continuously assess your results. If the change did not work, begin the cycle again.

Other widely used methods of continuous improvement, such as Six Sigma, lean, and total quality management, emphasize employee involvement and teamwork, work to measure and systematize processes, and reduce variation, defects, and cycle times.

They may sound equal, but there a difference between continuous improvement and continual improvement.

• Continual improvement is a concept initially to make changes and improvements in the existing systems to produce better outcomes.

• Continuous improvement is simply a chain link to continual improvement, which focuses more on, processes with short/small improvements within a system.

• Both terms concepts are concerned for improving the processes on how and what effects quality that doesn’t cause interference with productivity within the organization. 

Q2 B) Explain the concept of Benchmarking & Metrics with reference of Product Quality with suitable example. 6M

ANS-

Benchmarking is the practice of comparing business processes and performance metrics to industry bests and best practices from other companies. Dimensions typically measured are quality, time and cost.

Benchmarking is used to measure performance using a specific indicator (cost per unit of measure, productivity per unit of measure, cycle time of x per unit of measure or defects per unit of measure) resulting in a metric of performance that is then compared to others.[1]

Also referred to as "best practice benchmarking" or "process benchmarking", this process is used in management in which organizations evaluate various aspects of their processes in relation to best-practice companies' processes, usually within a peer group defined for the purposes of comparison. This then allows organizations to develop plans on how to make improvements or adapt specific best practices, usually with the aim of increasing some aspect of performance. Benchmarking may be a one-off event, but is often treated as a continuous process in which organizations continually seek to improve their practices.

In project management benchmarking can also support the selection, planning and delivery of projects.

Page 6: dhomaseghanshyam.files.wordpress.com€¦  · Web viewSNJB's Late Sau. Kantabai Bhavarlalji Jain College of Engineering. Department : Computer Engineering. Academic . Year : 2019-20

In the process of best practice benchmarking, management identifies the best firms in their industry, or in another industry where similar processes exist, and compares the results and processes of those studied (the "targets") to one's own results and processes.

The 12 stage methodology consists of:

1. Select subject

2. Define the process

3. Identify potential partners

4. Identify data sources

5. Collect data and select all partners

6. Determine the gap

7. Establish process differences

8. Target future performance

9. Communicate

10. Adjust goal

11. Implement

12. Review and recalibrate

A software metric is a measure of software characteristics which are measurable or countable. Software metrics are valuable for many reasons, including measuring software performance, planning work items, measuring productivity, and many other uses.

Within the software development process, many metrics are that are all connected. Software metrics are similar to the four functions of management: Planning, Organization, Control, or Improvement.

Classification of Software Metrics

Software metrics can be classified into two types as follows:

1. Product Metrics: These are the measures of various characteristics of the software product. The two important software characteristics are:

1. Size and complexity of software.

2. Quality and reliability of software.

These metrics can be computed for different stages of SDLC.

Page 7: dhomaseghanshyam.files.wordpress.com€¦  · Web viewSNJB's Late Sau. Kantabai Bhavarlalji Jain College of Engineering. Department : Computer Engineering. Academic . Year : 2019-20

2. Process Metrics: These are the measures of various characteristics of the software development process. For example, the efficiency of fault detection. They are used to measure the characteristics of methods, techniques, and tools that are used for developing software.

Types of Metrics

Internal metrics: Internal metrics are the metrics used for measuring properties that are viewed to be of greater importance to a software developer. For example, Lines of Code (LOC) measure.

External metrics: External metrics are the metrics used for measuring properties that are viewed to be of greater importance to the user, e.g., portability, reliability, functionality, usability, etc.

Hybrid metrics: Hybrid metrics are the metrics that combine product, process, and resource metrics. For example, cost per FP where FP stands for Function Point Metric.

Project metrics: Project metrics are the metrics used by the project manager to check the project's progress. Data from the past projects are used to collect various metrics, like time and cost; these estimates are used as a base of new software. Note that as the project proceeds, the project manager will check its progress from time-to-time and will compare the effort, cost, and

Page 8: dhomaseghanshyam.files.wordpress.com€¦  · Web viewSNJB's Late Sau. Kantabai Bhavarlalji Jain College of Engineering. Department : Computer Engineering. Academic . Year : 2019-20

time with the original effort, cost and time. Also understand that these metrics are used to decrease the development costs, time efforts and risks. The project quality can also be improved. As quality improves, the number of errors and time, as well as cost required, is also reduced.

Advantage of Software Metrics

Comparative study of various design methodology of software systems.

For analysis, comparison, and critical study of different programming language concerning their characteristics.

In comparing and evaluating the capabilities and productivity of people involved in software development.

In the preparation of software quality specifications.

In the verification of compliance of software systems requirements and specifications.

In making inference about the effort to be put in the design and development of the software systems.

In getting an idea about the complexity of the code.

In taking decisions regarding further division of a complex module is to be done or not.

In guiding resource manager for their proper utilization.

In comparison and making design tradeoffs between software development and maintenance cost.

In providing feedback to software managers about the progress and quality during various phases of the software development life cycle.

In the allocation of testing resources for testing the code.

Q3 A) What is the difference between Verification vs Validation w.r.t to Quality Process & Quality Product 4M

ANS-

What is Verification?

Definition : The process of evaluating software to determine whether the products of a given development phase satisfy the conditions imposed at the start of that phase.

Verification is a static practice of verifying documents, design, code and program. It includes all the activities associated with producing high quality software: inspection, design analysis and specification analysis. It is a relatively objective process.

Verification will help to determine whether the software is of high quality, but it will not ensure that the system is useful. Verification is concerned with whether the system is well-engineered and error-free.

Page 9: dhomaseghanshyam.files.wordpress.com€¦  · Web viewSNJB's Late Sau. Kantabai Bhavarlalji Jain College of Engineering. Department : Computer Engineering. Academic . Year : 2019-20

Methods of Verification :  Static Testing

Walkthrough

Inspection

Review

What is Validation?

Definition: The process of evaluating software during or at the end of the development process to determine whether it satisfies specified requirements.

Validation is the process of evaluating the final product to check whether the software meets the customer expectations and requirements. It is a dynamic mechanism of validating and testing the actual product.

Methods of Validation : Dynamic Testing

Testing

End Users

             Verification              Validation

1. Verification is a static practice of verifying documents, design, code and program.

1. Validation is a dynamic mechanism of validating and testing the actual product.

2. It does not involve executing the code. 2. It always involves executing the code.

3. It is human based checking of documents and files.

3. It is computer based execution of program.

4. Verification uses methods like inspections, reviews, walkthroughs, and Desk-checking etc.

4. Validation uses methods like black box (functional)  testing, gray box testing, and white box (structural) testing etc.

5. Verification is to check whether the software conforms to specifications.

5. Validation is to check whether software meets the customer expectations and requirements.

6. It can catch errors that validation cannot catch. It is low level exercise.

6. It can catch errors that verification cannot catch. It is High Level Exercise.

7. Target is requirements specification, application and software architecture, high level, complete design, and database design etc.

7. Target is actual product-a unit, a module, a bent of integrated modules, and effective final product.

8. Verification is done by QA team to ensure that the software is as per the specifications in the SRS document.

8. Validation is carried out with the involvement of testing team.

Page 10: dhomaseghanshyam.files.wordpress.com€¦  · Web viewSNJB's Late Sau. Kantabai Bhavarlalji Jain College of Engineering. Department : Computer Engineering. Academic . Year : 2019-20

9. It generally comes first-done before validation.

9. It generally follows after verification.

Q3 B) Create Requirement Traceability Matrix Document for Login and Logout Module. also explain advantage of Requirement Traceability Matrix 6M

ANS-

A Traceability Matrix is a document that co-relates any two-baseline documents that require a many-to-many relationship to check the completeness of the relationship.

It is used to track the requirements and to check the current project requirements are met.

Requirement Traceability Matrix or RTM captures all requirements proposed by the client or software development team and their traceability in a single document delivered at the conclusion of the life-cycle.

Parameters to include in Requirement Traceability Matrix?

Requirement ID

Requirement Type and Description

Test Cases with Status

Example- Login Module

As illustrated above, a requirement traceability matrix can:

Show the requirement coverage in the number of test cases

Design status as well as execution status for the specific test case

If there is any User Acceptance test to be done by the users, then UAT status can also be captured in the same matrix.

Page 11: dhomaseghanshyam.files.wordpress.com€¦  · Web viewSNJB's Late Sau. Kantabai Bhavarlalji Jain College of Engineering. Department : Computer Engineering. Academic . Year : 2019-20

The related defects and the current state can also be mentioned in the same matrix.

Step 1: Our  sample Test Case   is

"Verify Login, when correct ID and Password is entered, it should log in successfully"

Step 2: Identify the Technical Requirement that this test case is verifying. For our test case, the technical requirement is T94 is being verified.

 

Step 3: Note this Technical Requirement (T94) in the Test Case.

Step 4: Identify the Business Requirement for which this TR (Technical Requirement-T94) is defined

Step 5: Note the BR (Business Requirement) in Test Case

Page 12: dhomaseghanshyam.files.wordpress.com€¦  · Web viewSNJB's Late Sau. Kantabai Bhavarlalji Jain College of Engineering. Department : Computer Engineering. Academic . Year : 2019-20

Step 6: Do above for all Test Cases. Later Extract the First 3 Columns from your Test Suite. RTM in testing is Ready!

Advantage of Requirement Traceability Matrix

It confirms 100% test coverage It highlights any requirements missing or document inconsistencies It shows the overall defects or execution status with a focus on business requirements It helps in analyzing or estimating the impact on the QA team's work with respect to

revisiting or re-working on the test cases

Q4 A) What is the difference between Error vs Defect w.r.t to Software 4M

ANS-

Testing is the process of identifying defects, where a defect is any variance between actual and expected result . “A mistake in code is called Error .”

Error found by tester is called defect , Defect accepted by development team is called Bug. And build does not meet the requirements then it is Failure.

Page 13: dhomaseghanshyam.files.wordpress.com€¦  · Web viewSNJB's Late Sau. Kantabai Bhavarlalji Jain College of Engineering. Department : Computer Engineering. Academic . Year : 2019-20

What is 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.

What is Defect in software testing?

As we discuss above firstly that Defect is a variance between expected results and actual results of execution of test case on the system.

A programmer while designing and building the software can make mistakes or error. These mistakes or errors mean that there are flaws in the software. These are called defects.

A Bug is the result of a coding Error and A Defect is a deviation from the Requirements. A defect does not necessarily mean there is a bug in the code, it could be a function that was not implemented but defined in the requirements of the software.

Q4 B) Create Requirement Traceability Matrix Document for writing emails option should be available. also explain advantage of Requirement Traceability Matrix 6M

ANS-

A Traceability Matrix is a document that co-relates any two-baseline documents that require a many-to-many relationship to check the completeness of the relationship.

It is used to track the requirements and to check the current project requirements are met.

Examples of RTM

#1) Business Requirement:

BR1: Writing emails option should be available.

Test Scenario(technical specification) for BR1

TS1: Compose mail option is provided.

Test Cases:

Test Case 1 (TS1.TC1): Compose mail option is enabled and works successfully.

Test Case 2 (TS1.TC2): Compose mail option is disabled.

#2) Defects:

After executing the test cases if any defects are found that too can be listed and mapped with the business requirements, test scenarios and test cases.

Page 14: dhomaseghanshyam.files.wordpress.com€¦  · Web viewSNJB's Late Sau. Kantabai Bhavarlalji Jain College of Engineering. Department : Computer Engineering. Academic . Year : 2019-20

Example: If TS1.TC1 fails i.e. Compose mail option though enabled does not work properly then a defect can be logged. Suppose the defect ID auto-generated or manually assigned number is D01, then this can be mapped with BR1, TS1, and TS1.TC1 numbers.

Thus all requirements can be represented in a table format.

Business Requirement # Test Scenario # Test Case # Defects #

BR1 TS1 TS1.TC1TS1.TC2

D01

BR2 TS2 TS2.TC1TS2,TC2TS2.TC3

D02D03

BR3 TS3 TS1.TC1TS2.TC1TS3.TC1TS3.TC2

NIL

Advantage of Requirement Traceability Matrix

It confirms 100% test coverage

It highlights any requirements missing or document inconsistencies

It shows the overall defects or execution status with a focus on business requirements

It helps in analyzing or estimating the impact on the QA team's work with respect to revisiting or re-working on the test cases

Q5 A) Apply Junit Automation tool for above java code and write down test cases for same. 4M public static void main(String args[]) {

MySimpleMath sm = new MySimpleMath();

// Check a positive

System.out.println(""Input 10: "" + sm.checkSign(10));

// Check a negative

System.out.println(""Input -2: "" + sm.checkSign(-2));

Page 15: dhomaseghanshyam.files.wordpress.com€¦  · Web viewSNJB's Late Sau. Kantabai Bhavarlalji Jain College of Engineering. Department : Computer Engineering. Academic . Year : 2019-20

// Check a positive

System.out.println(""Input 0: "" + sm.checkSign(0));

}

ANS-

Dynamic verification that the program has the expected behavior in a suitably selected final set of test cases

Unit testing

Integration testing

System testing

Unit testing definition

Unit testing is a method of testing individual units of source code to determine if they are fit for use

Unit tests are the smallest testable parts of an application

Is performed at the development phase of a software’s life cycle

Detects problems early in the development process

Unit tests should be independent from one other

Simplifies Integration

Not suitable for testing user interface components

package test.main; import org.junit.*; import main.java.MySimpleMath; public class MySimpleMathTest { @Test public void testCheckSignShouldReturnPositive() { MySimpleMath sm = new MySimpleMath(); Assert.assertEquals("positive", sm.checkSign(5)); Assert.assertEquals("positive", sm.checkSign(0)); } @Test public void testCheckSignShouldReturnNegative() { MySimpleMath sm = new MySimpleMath(); Assert.assertEquals("negative", sm.checkSign(-5)); } }

Q5 B)

Page 16: dhomaseghanshyam.files.wordpress.com€¦  · Web viewSNJB's Late Sau. Kantabai Bhavarlalji Jain College of Engineering. Department : Computer Engineering. Academic . Year : 2019-20

1. When you put the expected number of users against the application and see if it works

which type of testing should Apply?

2. When you put an increasing number of users as load and see where it fails. which type

of testing should Apply?

3. When you put a varying number of users as load, measure performance, and re-

engineer the application to improve response times. which type of testing should Apply?

6 M

ANS-

1. Load testing

2. Stress testing

3. Performance Testing

Q6 A) Apply Junit Automation tool for above java code and write down test cases for same. 4M

public void multiply(int[] array, int factor) {

if(!(array.length > 0)) {

throw new IllegalArgumentException(""Input array is empty"");

}

for( int i=0; i<array.length; i++ ) {

array[i] = array[i] * factor;

}"

Ans-

package test.main;

import org.junit.*;

import static org.junit.Assert.*;

import main.java.MySimpleArrayOperations;

public class MySimpleArrayOperationsTest {

Page 17: dhomaseghanshyam.files.wordpress.com€¦  · Web viewSNJB's Late Sau. Kantabai Bhavarlalji Jain College of Engineering. Department : Computer Engineering. Academic . Year : 2019-20

@Test

public void testMultiply() {

MySimpleArrayOperations msao = new MySimpleArrayOperations();

int[] array = {10, 2, 3, 10, 1, 0, 2, 3, 16, 0, 2};

msao.multiply(array, 10);

assertArrayEquals(new int[]{100, 20, 30, 100, 10, 0, 20, 30, 160, 0, 20}, array);

}

@Test (expected = IllegalArgumentException.class)

public void testMultiplyShouldThrowException() {

MySimpleArrayOperations msao = new MySimpleArrayOperations();

msao.multiply(new int[]{}, 0); //method call with dummy arguments

}

}

Q6 B)

1.When testing password forms to see if they can be broken by brute force attacks,

dictionary attacks, etc. which type of testing should Apply?

2. When test web page or application works on different web browsers. which type of

testing should Apply?

3. When test the functionality from a user’s perspective. Sometimes the internal functions

of the system work correctly but the user interface doesn’t let a user perform the actions.

which type of testing should Apply? 6M

Ans-

1. Security Testing

2. Compatibility Testing

3. Interface Testing.

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


Recommended