Professional Documents
Culture Documents
Unit 4 Se
Unit 4 Se
Answer :
Quany means Consistently meeting custo rneods in terms of reguirements, ost service and devery
schedule.
02. Distinguish between software product quality and software process q'1ality.
Answer :
the software process process quality
Software quality (product) describes the atributes of the products of
desc:ibes the attributes of the software developmert process itself.
03. Define software quality?
Answer:
Analysis of hazards
Safety related requirements.
Warning: XerowPhotocopying of this book is a CRIMINAL Act Anyone found guitty is IABLE to face LEGAL Proceedigs
Software Engineering
Q10. List the goals of SQA. Q16. What is alpha testing?
Answer : Answer:
which the version
Requirement quality It is attestingin
customer under
of
comple
softwann istested by the the
Design quality
Code quality
of developer. supevisicn
Q17. Define debigging?
QCeffectiveness A
Answer:
Q11. How to measure software reliability?
Debugging happens as a result of i testing. ti
Answer: removalof error
the process that cause the
Measure of reliability is Q18. Define system testing?
Mean -Time - between - Failure Answer :
that the
(MT BF) Thetests conducted to ensure software
is comfortable with the systenm.
3
Where,
testing?
MTBF = MTTF + MTTR Q19. Define interation
Answer
of all unite.
It is remains on the collaboration 2
Failure Repair
form one single architecture and then implementing tes
interfaces
Q12. How to mneasure availability? cases to uncover bugs associated with the
Answer: Q20. What is beta testing?
Availability is the probability that a program is Answer:
operating according to requirements at a given point in
time and is defined as, The beta testing is a testing in which the version
Availability = [MTTF/(MTTF + MTTR)]x 100% of the software is tested by the customer without the
developer being present.
Q13. What are different levels of testing?
Answer:
Unit testing
Integration testing
System testing
validation.
Q14. Define verification and
Answer:
review O
Otwale lesung is àcritical element of software auality assurance and represents the ultimate
pecification, design and coding.
esting Objectives
According to Glen Myers the testing objectives are
Testing is aprocess of executing a program with the intend of finding an error.
Agood test case is one that has high probability of finding an undiscovered erro.
3 Asuccessful test is one that uncovers an as-yet undiscovered error.
Testing Principles
software testing.
Every software engineer must apply following testing principles while performing the
1 All tests should be traceable to customer requirements.
2 Tests should be planned long before testing begins.
uncovered dring testing will
3 The Pareto principle can be applied to software testing - 80 %of all errors
ikely be traceable to 20 %of all program modules.
4.
Testing should begin "in the smal' and progress toward testing "in the large"
5 Exhaustive testing is not possible.
party.
6. To be most effective, testing should be conducted by an independent third
Why Testing is Important?
engineering activity.
1. Generally, testing is aprocess that requires more efforts than any other software
systematicallu.
2 Testing is aset of activities that can be planned in advance and conducted
errors may get introduced.
3 If it is conducted haphazardly, then only time willbe wasted and more even worse
performing testing
4 This may lead to have many undetected errors in the system being developed. Hence
development of software.
by adopting systematic strategies is very much essential in during
Phases of Testing
Various testing activities are
1 Test Planning
(for
The test plan or test script is prepared. Ihese are generated trom requirements analysis document
box).
black box) and program code for white
2. Test case design
effective in testing
The goal of test case design is to create a set of tests that are
3 Test execution
rosult
The test data is derived through various test cases in order to obtain the test
4. Data collection
verified.
The test results are collected and
5. Effective evaluation
All the above test activities are pertormed on the software model and the maximum number of errors are
uncovered.
is a CRIMINAL
Warning :Xerox/Photocopying of this book Aci. Anyone found gnityA3LFte 'ace ECAL proceedings
Software Engineering 4.6
Q2. Explain the strategic approach to software
testing.
Answer :
Strategic Approach to Software Testing
Atesting strategy provides a process that describes for the developer, quality analysts andIthe customer the
steps conducted as part of testing.
PpECE
a) Test planning
b Test case design
c) Test execution
d Data collection
Effectiveness evaluation.
Database review
Algorithmic analysis
Development testing
Installation testing Act. Anyone found guilty is
is a CRIMINAL LIABLE to face LEGAL proceedings
Xerox/Photocopying of this book
Warning:
4.7 Software Engineering
Q3. Explain about the test strategies for conventional software.
Answer :
Unit Testing
1
In unit testing the individual components are tested independently to ensure theu aualtu
implementation
2 The focus is to uncover the erorsin design and
3 The various tests that are conducted during the unit test are descubed as below
Warning:Xerox/Photocopying of this book is a CRIMINAL Act.Anyone found guity is LIABLE to face LEGAL roceetlinye
Software Engineering 48
E:
E:i) Module interfaces are testedfor proper information fow in and out of the program.
Local data are examined to ensure that integrity is
maintained.
ii) Boundary conditions are testedto ensure that the module operates properly at boundarnesS establishe:
to limit or restrict
processing.
4.
AU the basis (independent) paths are tested for ensuring that all statements in the module have beg
executed only once.
5. Allerror handling paths should be tested.
Mocule mte farce Things to be tested
Local dotatm°Source program
2 Bovnday Intertaces
Module - Local data structuresGenerating
Various to be -Boundary condition
modules tested -Independent path v
in program -Eror handling paths,
Regression testing
Smoke testing u
book is a CRIMINAL Act. Anyone found guilty is LJABLE to face LEGAL proceedings
(eroxPhotocopying ofthis
Software Engineering
The integrated software is tested based on the equivalence
In equivalence partitioning input conditior
that the desired product is
quiremernts to ensure classesare evaluated for given
of valid or
ained
Equivalence class represents a set
In validation testing the main focus is to uncover invalid states for input condition_
rrorsin Input set
System input output oo
System functions and information data
System interfaces with external parts
User interfaces
Valid input Invalid inpu
System behaviour and performance
Software validation can be performed through
series of black box tests.
System Testing System
The system test is a series of tests conducted to
ully the computer based system.
Various types of system tests are
1 Recovery testing
2 Security testing
3 Stress testing
4 Performance testing
box testing?
Q4. What is meant by black Output generated
Explain in detail.
given
Answer:
Equivalence class guidelines can be as
below :
Black Box Testing range one
behavioural testing. a) If input condition specifies
It is also called as functional valid and wo inalid equivalence classes
methods focuson the are defined.
2 Black boN testing software.
requirements of the b)
speciic
If an input condition requires a invalid
white box testing andit and two
not an alternative to white box value, one valid
3 It is class of errors than
uncovers different equivalence classes are defined
b
testing of c If an input conditon secifesamember
box testing uncovers following types a set,one valid and one ivalid
equivalence
Black
class is defined
errors.
functions
1 Incorrect or missing 2 Boundary Value Analysis (BVA)
2 Interiace erors
It is done to check boundary conditions
data structures
3 Errors in i) A boundary value is,a technique in which the
4
Performance errors elements at théedge pf the domain are selected
termination errors and tested
Initialization or
5
1.
Equtvalence Partitioning iü) Using boundary value analysis. instead of
divides the input focusing on input conditions oniy. the test cases
box technique that
It isa black test
data from output domain are also derived
data. From this
domaininto classes of that
cases can be
derived iv) It is a test case design technique
erors that complements equivalence partitioning
uncovers a class of
An ideal test casse
manyarbitrary test cases to be
meght require observed technique
general error is
executed before a LEGAL procaodigs
Photocopying of this book
is a CRIMINAL Act. Anyone found gutty is LABLE to face
Software Engineering 4.10
3. Graph Based Testing
Bidirected link
Object Object
#3 |Link weight) #4
1. Runs
It denotes the number of rows in the array. These can be directly translated to the test cases.
2. Factors
It denotes the number of columns in she array. These can be directly translated to maximum number of
variables that can be handled by the array.
3. Level
This number denotes the maximum number of valyes that asingle factor(column) can take.
4 L9 orthogonal array
This array is used to generate the test cases,
O5. What is meant by white box testing? What are the aspects to be considered whilegeneratig
of white box test cases.
Answer:
White Box Testing
'executw
The procedural design using basis set of execution path is tested. This basis set ensures that every
path will be tested at least once.
Flow Graph Notation
1. execution
structuralItesting strategy. This method isintended to exercise every
Path testingis a once independent g
program atleast
path of a
Xerox/Photocopying of this book is a CRIMINAL Act. Anyone found guilty is LIABLE to face LE
Warning:
Software Engineering
Following are the steps that are carried out while
performing path testing.
oon 1:Design the flow graph for the
program or a component.
Step 2 Calculate the cyclomatic complexity.
Step 3: Select a basis set of path.
Step Generate test cases for these paths.
Graph Matrices S2eno.ot noe.
Definition
Graph matrix is a square matrix whose size is equal to number of nodes of the flow graph.
Example : consider a flow graph
-
The graph matrix will be for computing the cyclomatic complexity. Following steps are adopted
as 1 if node A is connected to node b.
Step 1: Create a graph matrix. Mark the corresponding entry
each corresponding row.
Step 2 : Count total number of l's from each row and subtract 1 from
if
a>b
T F
temp = b 3
temp =a
The nodes are
numbered it is shown
in shaded fom.
if
4 c> temp
return
5 temp = C temp
complexity.
Step 3 : Add cyclometic
4 6
2 3
1
2-1= 1
1
1 1-1=0
2
3
1 1-1=0
1 1
4
2-1 = 0
1
1-1=0
2 + 1= 3
In this type of
testing the
dthen it is verified whethersoftware
1 lorced to fail Actual
the system debugging
soperly or not recovers
For automated
vockooint mechanisms,recovery
data
then reinitialization.,
recovery and restart are Actual Actual
erfied.
debugging debugging
2. Security Testing
It verifies that
system protection mechanism Conducting Performing
Additional
-nrevent improper penetration data alteration.
or tests
corrections
. Stress Testing
Determines break point of asystem to establish Figure : Debugging Process
maximum service level.
In stress testing the system is executed in a Common approaches in debugging are:
r¡nner that demands resources in abnormal quantity,
1 Brute Force Method
equency or volume.
The memory dumps and run-timne traces are
Avariation of stress testing is a technique called examined and program with write statements is loaded
ensitivity testing. to obtain clues to error causes.
Performance Testing In this method "Let computer find, the error
Performance testing evaluates the run time approach is used.
Derformance of the software, especially real time This is the least efficient method of debugging.
software.
2
Backtracking Method
In performance testing resource utilization such
sCPU load, throughput. response time, mermory usage This method is applicable to small programs. The
can be measured. source code is examined by looking backwards from
symptom to potential causes of errors.
V8. Explain in detail about the art of
3. Cause Elimination Method
debugging. This method use binary
Answer : partitioning reduce
the number of locations where errors
o
can exist.
Debugging is a process of removal of a defect. It| Why debugging is so difficult ?
CCurs as a consequence of successful testing.
Following are some reasons that reveal why
The actual test results are compared with the debugging is so difficult.
'Dected results. The debugging process attempts to 1. The symptoms of bug may bepresent at somne
fnd lack o Correspondence betweenareactual and s
the. identified part(module) of the program and the its ettect me'
expect
and ed
results. The suspected causes
additional tests or regression tests are
performed
might be seen in some other module of the
program. Hence tracing out the location of Pry
o make the system to work as pe requirement.
symptom becomes difficult.
ng : XercoWPhotocopylng of this book ls a CRIMINAL ACL. Anyonefound gulty is LIABLE toface LEGAL proceodlirgs
Software Engineering
2
Symptoms may be caused bu software I & 2 PRODUCT METRICS 414
developers during the development process.
Such symptoms are difficult Q10. Define software quality. Write
to trace out.
on direct metrics and
indirect short notes
3 The symptom may appear due to timing
problems instead of processing problem Answer: metrlces
some_error then the Software Quality conformance t
4 If the developer corrects
symptom may disappear temporarily. It defined as "the to explicitly
5. The symptom can appear if some functional and performance requirements, staled
inaccuracies documented development standards,
in the program are simply rounded off.
characteristics that are expected of all
and expiimplcitcyit
Q9. Explain about
Arwer:
regression testing. developed software".
There are three main reasons for why
profes ional,
A well designed and well coded
software when quality gets failed? softwae
sutjected to some changes may not work properly and 1 Software requirements must be well understord
require testing toensure its proper working without any before thesoftware development process beatine
enor. This retesting of software is known as "Regression
testing". 2 Similar to explicit requirements it is also essental
to understand the implicit requirements of the
Example software.
incase of integration testing new modules are
added or old modular are removed from the software 3 The set of development criteria has to be decdel
which may change the I/O, control logic and data flow in order to specify the standards of the produg
paths. McCall's Quality Factors
Regression testing is then necessary to ensure Generally, there are two classes of quality facors
that these change are acceptable and o not result in that affect the software quality
any errors.
1. Directly measured
The most important task to be considered in 2
regression testing is to select the tests in the test suite. Indirectly measured
The tests selected should be optimal and must uncover Direct metric includes the measurement ofcost
maximum errors from major parts of the program. and effort applied. It includes lines of code produced Ar
Moreover, the regression test suite must have the execution speed, memory size and the defects reporte
Over some set of time. M
tests case of,
a Modified software components Indirect metric includes the measurement o
functionality, quality, complexity, efficiency, reliabilt,
Software firms that may get affected due maintainability/usability, correctness and other abliU
to modifications.
McCall, Richards and Walters have proposedtis pr
Al! software fns software quality factors can be classified into three
2
Regression testing is not limited to integration categories which can be illustrated by McCall's triangD
testing as it is also carried not while software maintance model for quality factor.
process is in progress.
-Maintainability Reusability
Advantage -Flexibility -Portability
1. It 1aaintain bcth the quality and reliability of Testability Interoperabuit
3.
software. Produrc
etvision
2.
3.
Errors due to notification are captured.
The working of software according to the
Product transic 1Siton 4
requirenent is'ensured.
5
Disadvantages Product operation
1. Time consuming and expensive Corectness
Test suite becomes huge with progress
Reliability
2.
integration.
-Usability
Integrity
6.
Effidency
Xerox/Photocopying of this book is a CRIMINAL Act. Anyone found procdig
Warning: guilty is LIABLE to face
LEGA
War
15
Software Enginering
1
Comehes-The abilit to fuinl the sxcifcation and customes equiremens
2
Relhabilit The degne by whikh the sofwar shoukd work as per the requirement
heratonal 3.
Cblit he abiv to pHere the alid input and characteristics interpret the
ommt outut.
SioenV- The easure of omputing resourves and ime
raquied by the program to pertom.
5 Integity Th:s is the contdling abilitv by which
nauthoizedasuthe sstem can be prwnted.
Maintainabiliy The abil.t guinnd to loate or fix the
hugs in the sotware.
Adaptability to Flexibility - The extent bv whicn it is alkowed to make
wenvironment certain mdifications in the program.
Testability - The ability to check that the function is
working as per the quineent.
Reusability - The ability by which the particular
component in the sofware can be eused
by some other pogram in that softwane.
Ability to 10. Portability - The ability of the softwane to work
Uhdergo change
properly even if the envinonment gets changed
(ie. change in harware or software).
11 Interoperability - The ability of the system to worh with
other system.
1
Common sense
It is given as follows
Information theory
2
SMI = (M-(A +C+ D)) /M
3 Psychology.
measures are
proposed metrics the used Where,
In the
operators
n,
The no. of district M = No. of modules in current version
Folowing are the characteristics that are useful for measuring the usabilit
a) The time required to make the system efficient.
b) The ski required to learn the system
c) The net increase in productivity after regular use of the sustom
The user attitude towards the system.
4 Mainiainability
accommodate the
It is an ability of the system to made correstions mace after
environment changes and adapt the
changes in the system in change.
The metric used tor maintainability is MTTC ii.e. mean time toorder
encuuntering
to satisty the
user.
er:os
The MTTC can be defined as the time required to analvse the change request, design an appropa
CRIMINAL
hotocopying of this book is a .Act. Anyone found guitty is LIABLE to tace LEGA eay
4.21 Software Engineering
18. Differentiate between function oriented and size oriented
metrics.
Answer
r:
4. It includes efforts (time), money spent, KLOC (1000s lines of code), pages of documents, erors peope
the project.
5. It focuses on the function points.
6. It is independent of PL used.
Product
conditoDsnsines
ProzesS
The neonle incudes hiving the best people you can find. motivative them to do the best job, and training
them cn the skills needed toperform their jobs effectively.
The technology factor includes acquire and installing tools that help automate
eg. Java, C++. Oracie)
The complexity of the factor product has great impact on quality and teamn performance
Warning : Xerox/Photocopying of this book is a CRIMINAL Act Ariyone found guilty is LIABLE to face LEGAL proceedings
Software Engineering 422
Q20. What is meant by DRE? How it can be asses?
Answer:
document
While productssuch as SRS, design
developing the software project many work
are being created. Along with these work products many errors may get generated. Project manager hascoesOurce
identify all these errors to bring quality software.
Lror tracking is a process of assessing the status of the software project.
In this
Ihe software team performs the formal technical reviews to test the software developed.
various errors are identified and corrected. Any errors that remain uncovered and are found in later tasks
called defects.
The defect removal efficiencycan be defined as
DRE = E/(E+D)
Where
DRE is the defect removal efficiency,
E is the error and D is defect.
The DRE represents the effectiveness of quality assurance activities. The DRE also helps the project manas
to assess the progress of software project as it gets developed through itsscheduled work task.
During error tracking activity following metrics are computed
1 Errors per requirements specification page : denoted by E.
2 Errors per component - design level:denoted by E
3 Errors per component -code level: denoted by E
4. DRE -requirement analysis
5. DRE- architectural design
6 DRE - component level design
7. DRE - COding
These errors tracking metriCS also be used tor better target
reviewand testing resources.