You are on page 1of 2

SCHOOL OF COMPUTER SCIENCE AND ENGINEERING

CS 8494 – SOFTWARE ENGINEERING

PART A

1. Define verification & validation testing?


Verification refers to the set of activities that ensure that software correctly implements a
specific function.
Validation refers to a different set of activities that ensure that the software that has been
built is traceable to the customer requirements.
According to Boehm,
Verification- Are we building the product right?
Validation – Are we building the right product?

2. What is the need for regression testing?


Regression testing may be conducted to ensure that new errors have not been introduced.
Regression testing is required when there is a
 Change in requirements and code is modified according to the requirements
 New feature is added in the software
 Defect fixing
 Performnace issue fix

3. Mention the purpose of stub and driver used for testing?


Stubs and drivers are designed to provide the complete environment for a module.
Drivers are used to provide upstream connectivity while stubs provide downstream
connectivity.

4. What is Cyclomatic complexity


Cyclomatic complexity is a software metric that provides a quantitative measure of the
logical complexity of a program. The value computed for cyclomatic complexity defines
the number of paths in the basis set of program and provides us with upper bound for the
number of tests that must be conducted to ensure that all the statements have been
computed at least once.

5. What is Software engineering


Software engineering is the application of systematic, disciplined, quantifiable approach
to the development, operation and maintenance of software that is the application of
engineering to software.
6. What is software? List its characteristics?
Software is more than just a program code. A program is an executable code, which
serves some computational purpose. Software is considered to be a collection of
executable programming code, associated libraries and documentations.
Characteristics
1. Software is developed or engineered, it is not manufactured
2. Software doesn’t “wear out”
3. Although the industry is moving toward component based assembly, most software
continues to be custom built.

7. What is EVA?
Earned Value Analysis is a technique of performing quantitative analysis of the software
project. It provides a common value scale for every tasks of software project. It acts as a
measure for software project progress.

8. List some of good coding practices?


 Know what the code block must perform
 Correct errors as they occur
 Keep your code simple
 Maintain naming conventions which are uniform throughout
 Indicate a brief description of what a variable is for

9. List a few process and project metrics?


Process Metrics
 Cost of quality
 Defect density
 Review efficiency
 Testing efficiency
Project Metrics
 Schedule Variance
 Effort variance
 Size Variance

10. What is the purpose of Petri Net?


Petri nets offer a graphical notation for stepwise processes that include choice, iteration
and concurrent execution. Petri nets have an exact mathematical definition of their
execution semantics, with a well developed mathematical theory for process analysis.

You might also like