You are on page 1of 2

Addis Ababa science and Technology University

Collage of electrical and mechanical Engineering


Department of software engineering

Course title: Software Verification Validation and


Testing

Submitted by: Melsew Dagnaw


Id: GSR0379/15

SUBMITTED TO: INSTRUCTOR Dr. GIRMA N.


1. Software testing defines a set of procedures and methods that check whether the actual software product
matches with expected requirements, thereby ensuring that the product is Defect free. Testing is the process of
identifying defects, where a defect is any variance between actual and expected results. “A mistake in coding is called
Error, error found by tester is called Defect, defect accepted by development team then it is called Bug, build does not
meet the requirements then it Is Failure.

2. Types of Software Error: User Interface Error: these are the error which generally appears during the interaction
of the user with the system or when a user is using & handling a software product. Error Handling Errors: One of
the most common types of error where a system fails to predict the presence of an error, and lacks in safeguarding the
system against it. Boundary Related Errors: Errors pertaining to software program with respect to its functioning
within and outside the boundaries. Control Flow Errors: Errors with respect to passing on the control of program, in
a wrong direction i.e. software program behaves unexpectedly in the next step of the execution. Hardware Errors,
Calculation Errors: Example: – memory bit got stuck but CPU does not access this data – Software “bug” in a
subroutine is not “visible” while the subroutine is not called
Types of software faults: Algorithm fault: An algorithm fault arises when the logic of the component does not
work as intended or takes the wrong steps, impacting the following components. Computational fault: A
computational fault arises when the program is not capable of computing the correct result. This commonly arises
when we use values of different data types in the same expression. Syntax fault: A syntax fault arises when the
wrong syntax is used in the program. Each programming language has its own syntax rules that we must follow.
Documentation fault: This fault occurs when the documentation and the actual implementation of the program are
different. Overload fault: Overload faults occur when the intended space for the data structure is filled and the data
overflows. Hardware fault: This fault arises when the written software is not compatible with the hardware it runs
on, or the hardware malfunctions. Software fault: A software fault occurs when the software does not work properly
or is not supported by the operating system it is running on. Examples: – Software bug – Random hardware fault –
Memory bit “stuck” – Omission or commission fault in data transfer – Etc.
3. Software Testing Life Cycle (STLC) is a process used to test software and ensure that quality standards are met. Tests
are carried out systematically over several phases. During product development, phases of the STLC may be
performed multiple times until a product is deemed suitable for release.
4. V Model in Software testing is an SDLC model where the test execution takes place in a hierarchical manner. The
execution process makes a V-shape. It is also called a Verification and Validation model that undertakes the testing
process for every development phase.

5. A test strategy is performed by the project manager. It says which module to test and what kind of method to follow.
The test plan is performed by a lead or testing manager that describes when to test, who will test, how to test, and
what to test. The difference between test plan and test strategy is that a test plan documents scope, objective, and key
elements of software testing, whereas a test strategy defines the techniques and approaches to testing.

You might also like