0% found this document useful (0 votes)
8 views7 pages

SoftwareTestingMethodologies Regular HO

The document is a course handout for 'Software Testing Methodologies' offered by the Birla Institute of Technology & Science, Pilani, detailing course objectives, content structure, learning outcomes, and evaluation scheme. It covers various testing techniques, including specification-based, code-based, and model-based testing, along with topics on object-oriented testing and life-cycle based testing. The course includes 16 contact sessions, assignments, and evaluations through quizzes and exams.

Uploaded by

raghunathan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views7 pages

SoftwareTestingMethodologies Regular HO

The document is a course handout for 'Software Testing Methodologies' offered by the Birla Institute of Technology & Science, Pilani, detailing course objectives, content structure, learning outcomes, and evaluation scheme. It covers various testing techniques, including specification-based, code-based, and model-based testing, along with topics on object-oriented testing and life-cycle based testing. The course includes 16 contact sessions, assignments, and evaluations through quizzes and exams.

Uploaded by

raghunathan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 7

BIRLA INSTITUTE OF TECHNOLOGY & SCIENCE, PILANI

WORK INTEGRATED LEARNING PROGRAMMES


COURSE HANDOUT

Part A: Content Design

Course Title SOFTWARE TESTING METHODOLOGIES


Course No(s) SE* ZG552 / SSZG552
Credit Units 4
Course Author Prashant Joshi
Version No 1.0
Date

Course Objectives
No Objective

CO1 The course aims at providing a sound conceptual foundation in the area of Software Testing
Methodologies with emphasis on concepts and techniques for testing and analysis of software

CO2 The testing of software, at a unit, subsystem and system level. Various test techniques:
specification based testing and code based testing. Techniques and methods for software test
generation and validation.

CO3 The Software Analysis: Static and Dynamic. Test adequacy. Testing Object Oriented Software.
The types of software testing: Regression and interoperability. The software test processes and
management

Text Book(s)
T1 Software Testing – A Craftsman’s Approach, Fourth Edition, Paul C Jorgenson, CRC Press
T2 Foundations of Software Testing, Second Edition, Aditya P Mathur, Pearson

Reference Book(s) & other resources


R1 The Art of Software Testing, Third Edition, Glenford J. Myers, Tom Badget, Corey Sandler,
R2 Software Testing and Quality Assurance – Theory and Practice, Kshirasagar Naik,
Priyadarshi Tripathy, Wiley, 2013
R3 Testing Object Oriented Systems: Models, Patterns and Tools, Robert V Binder, Addison
Wesley
R4 Guide to Software Engineering Body of Knowledge, Version 3, IEEE

Content Structure
Module 1: Introduction to Software Testing & Techniques
Topic No. Topic Title Reference
1.1 Introduction to Software Testing Lecture Notes
1.2 Overview of the Course Lecture Notes
1.3 Software Testing Techniques T1 Chapter 1 & T2 Chapter 1
1.4 Software Testing – Quality Attributes, Types and T1 Chapter 1 & T2 Chapter 1
Levels

Module 2: Mathematics & Formal Methods


Topic No. Topic Title Reference
2.1 Permutations and Combinations Lecture Notes & Slides
2.2 Propositional Logic T1 3.4
2.3 Discrete Math T1 Chapter 3
2.4 Graph Theory T1 Chapter 4

Module 3: Specification Based Testing


Topic No. Topic Title Reference
3.1 Specification Based Testing – Overview Lecture Notes
3.2 Equivalence Class T1 Chapter 6
3.3 Boundary Value Analysis T1 Chapter 5
3.4 Example & Case Study Lecture Notes, T1 Chapter 6 & 5

Module 4: Specification Based Testing


Topic No. Topic Title Reference
4.1 Domain Testing T2 Chapter 3
4.2 Combinatorial Lecture Notes
4.3 Decision Table Based Testing T1 Chapter 7
4.4 Example & Case Study T1 Chapter 7 & Lecture Notes

Module 5: Code Based Testing


Topic No. Topic Title Reference
5.1 Code Based Testing – Overview Lecture Notes
5.2 Path Testing T1 Chapter 8
5.3 Examples T1 Chapter 8

Module 6: Code Based Testing


Topic No. Topic Title Reference
6.1 Data Flow Testing T1 Chapter 9
6.2 Path Based Testing – Metric T1 Chapter 8 & Lecture Notes
6.3 Examples T1 Chapter 9 & T1 Chapter 8
Module 7: Model Based Testing
Topic No. Topic Title Reference
7.1 Model Based Testing – Introduction & Overview T1 Chapter 12
7.2 Finite State Machines & Fault Model T2 Chapter 5
7.3 Examples T1 Chapter 17
7.4 Case Study Lectures Notes & T1 Chapter 17

Module 8: Model Based Testing


Topic No. Topic Title Reference
8.1 Model Based Testing – Systems T1 Chapter 17
8.2 Model Based Testing – System of Systems T1 Chapter 17 & T2 Chapter 5
8.3 Example T1 Chapter 17 & Lecture Notes
8.4 Cases Study T1 Chapter 17 & Lecture Notes

Module 9: Object Oriented Testing


Topic No. Topic Title Reference
9.1 OO Software & OO Software test – Introduction & Lecture Notes & T1 Chapter 15
Overview
9.2 Issues in Testing OO Software T1 Chapter 15
9.3 OO Unit Testing T1 Chapter 15
9.4 Examples T1 Chapter 15 & Lecture Notes

Module 10: Object Oriented Testing


Topic No. Topic Title Reference
10.1 OO Integration Testing T1 Chapter 15
10.2 OO System Testing T1 Chapter 15
10.3 OO – GUI Testing T1 Chapter 15 & Lecture Notes
10.4 Examples & Cases T1 Chapter 15 & Lecture Notes

Module 11: Integration Testing


Topic No. Topic Title Reference
11.1 Integration Testing – Introduction, Overview & T1 Chapter 13
Issues
11.2 Integration Testing – Types & Strategies T1 Chapter 13
11.3 Examples T1 Chapter 13
11.4 Cases T1 Chapter 13 & Lecture Notes

Module 12: System Testing


Topic No. Topic Title Reference
12.1 System Testing – Introduction, Overview & Issues T1 Chapter 14
12.2 Systems Testing – Types, Techniques & Strategies T1 Chapter 14
12.3 Examples T1 Chapter 14 & Lecture Notes

Module 13: Life-Cycle Based Testing


Topic No. Topic Title Reference
13.1 Life-Cycle Based Testing – Overview and T1 Chapter 11
Perspective
13.2 Life-Cycles – Water fall, Iterative, and Agile T1 Chapter 11
13.3 Implications and issues, Strategies & Models T1 Chapter 11
13.4 Example and Case Lecture Notes

Module 14: Test Adequacy and Enhancement


Topic No. Topic Title Reference
14.1 Test Adequacy – Need & Overview T2 Chapter 7
14.2 Test Adequacy Assessment – Data Flow T2 Chapter 7
14.3 Test Adequacy Assessment – Control Flow T2 Chapter 7
14.4 Examples & Cases T2 Chapter 7 & Lecture Notes

Module 15: Regression Testing


Topic No. Topic Title Reference
15.1 Need, Motivation & Techniques T2 Chapter 9
15.2 Regression Testing – Test Selection (Execution T2 Chapter 9
Trace)
15.3 Regression Testing – Test Selection (Dynamic T2 Chapter 9
Slicing)

Module 16: Test Case Minimization, Prioritization & Optimization


Topic No. Topic Title Reference
16.1 Minimization, Prioritization & Optimization T2 Chapter 9
Techniques
16.2 Test Selection Algorithms T2 Chapter 9
16.3 Examples T2 Chapter 9

Module 17: Testing Non-functional Requirements


Topic No. Topic Title Reference
17.1 Reliability Analysis T2 Chapter 9, R1
17.2 Fault Tolerance T2 Chapter 9, R1
17.3 Examples T2 Chapter 9, R1

Learning Outcomes:
No Learning Outcomes

LO1 Introduce the course and course handout. Bring a perspective of need and motivation for this
course. Provide an overview of the course, quality attributes, levels and types of Testing

LO2 Provide a base to the software testing techniques in form of mathematics and formal methods.
Review topics of permutation/combination, discrete mathematics and graph theory. Focus is
on the relevance to software testing.

LO3 Bring an approach to look at the system from specification perspective. Learn the relevant
techniques for testing specifications – Equivalence Class, Boundary Value Analysis,
Combinatorial, Decision Tables and Domain Testing

LO4 Take a code level approach to testing and assuring quality. Learn the relevant techniques for
testing code – Path Based Testing and Data Flow Testing

LO5 Introduce Model Based Testing. Various Model for Software testing, their choice and
techniques. Learn Finite State Machine, Petri Nets and State Charts. Learn to use these to
derive testing cases

LO6 Understand the issues in OO Software Testing. Learn techniques and sublets of Unit,
Integration and Systems Testing of OO Software. GUI Testing for OO Software

LO7 Overview and need for Integration and Systems Testing of Software. Learn the techniques of
Integration and Systems Testing

LO8 Provide an overview from a life-cycle perspective of Software and Software Products. Agile
Testing and Agile Model-Driven Development. Role of Test engineers in life-cycle-based
testing

LO9 Learn the need for test adequacy and need for enhancement of test cases. Various techniques
and criteria for measuring of test adequacy (data and control flow). Using the criteria to
enhance test cases.

LO10 Explore and understand the need for minimization and prioritization. Review the regression
test problem. Selection of test cases for regression.

Part B: Contact Session Plan

Academic Term
Course Title Software Testing Methodologies
Course No
Lead Instructor

Teaching Methodology (Regular Contact Session Model)


The pedagogy for this course is centred around classroom contact session model in which
lecture sessions (each of 1 or 2 hrs) to be delivered. In this model, in addition to delivery of
lessons as per the topic, contact sessions are to be enriched with discussion on organization-
specific practices and case-problems experienced by typical practising project managers in
Indian IT industry.
As part of evaluation, two-week long take-home assignments on specific topics for study,
analysis or research are assigned to individual students, at the end of which they prepare a
report or make a presentation to the class.

Course Delivery
 There are 16 Contact Sessions (of 2 hours each)—8 before mid-semester and 8 post-
mid-semester over a period of 16 weeks
 The 8th & 16th Contact Sessions are planned for review of topics pre-mid-semester and
pre-comprehensive examinations.

Course Contents

List of Topic Title Text/Ref


Contact
Session
Book/external
(from content structure in Course Handout) resource
1 Introduction to Software Testing & Techniques (Module 1) T1/C-1, T2/C-1
2 Mathematics & Formal Methods (Module 2) T1/C-3,4
3 Specification Based Testing (Module 3, 4) T1/C-5,6,7
4 Code Based Testing (Module 5, 6) T1/C-8,9
5 Model Based Testing (Module 7, 8) T1/C-17
6 Object Oriented Testing (Module 9, 10) T1/C-15 & Lecture Notes
7 GUI Testing (Module 10) T1/C-15 & Lecture Notes
8 Review of Topics (17) for Mid-Sem Examination
9 Integration Testing (Module 11) T1/C-13
10 System Testing (Module 12) T1/C-14
11 Life-Cycle Based Testing (Module 13) T1/C-11
12 Test Adequacy and Enhancement (Module 14) T2/C-7
13 Regression Testing (Module 15) T2/C-9
14 Test Case Minimization, Prioritization & Optimization
T2/C-9
(Module 16)
15 Testing Non-functional Requirements , Reliability Analysis, T1,T2, R1
Fault Tolerance, When to Stop Testing (Module 16, 17)
16 Review of All Topics for Compre Examination

Assignments / Experiential Learning Components

 Each student is given an individual assignment on any of the topics discussed


in the class; assignment topics are based on practical problems experienced or
part of work-items or tools used by collaborating organizations
 Assignments are take-home and deadline-driven (typically of 2 weeks
duration) announced post Mid-semester examination
 Students to spend at least 16 hours of work in study, research, discussion and
preparation of the report and presentation.
 As part of deliverables, the student is expected to prepare a report and/or
make a short-presentation in the class
 All assignments are to be submitted online or in-class within the specified
deadlines

Evaluation Scheme:
Legend: EC = Evaluation Component; AN = After Noon Session; FN = Fore Noon Session
No Name Type Duration Weight Day, Date, Session, Time
Quiz-I Online 1 Week 5% To be announced
EC-1 Quiz-II Online 1 Week 5% To be announced
Assignment Online 2 Weeks 10% To be announced
EC-2 Mid-Semester Test Closed Book 2 hours 30% To be announced
Comprehensive To be announced
EC-3 Open Book 3 hours 50%
Exam
Note - Evaluation components can be tailored depending on the proposed model.

Important Information
Syllabus for Mid-Semester Test (Closed Book): Topics in Weeks 1-7
Syllabus for Comprehensive Exam (Open Book): All topics given in plan of study
Evaluation Guidelines:
1. EC-1 consists of either two Assignments or three Quizzes. Announcements regarding
the same will be made in a timely manner.
2. For Closed Book tests: No books or reference material of any kind will be permitted.
Laptops/Mobiles of any kind are not allowed. Exchange of any material is not
allowed.
3. For Open Book exams: Use of prescribed and reference text books, in original (not
photocopies) is permitted. Class notes/slides as reference material in filed or bound
form is permitted. However, loose sheets of paper will not be allowed. Use of
calculators is permitted in all exams. Laptops/Mobiles of any kind are not allowed.
Exchange of any material is not allowed.
4. If a student is unable to appear for the Regular Test/Exam due to genuine exigencies,
the student should follow the procedure to apply for the Make-Up Test/Exam. The
genuineness of the reason for absence in the Regular Exam shall be assessed prior to
giving permission to appear for the Make-up Exam. Make-Up Test/Exam will be
conducted only at selected exam centres on the dates to be announced later.
It shall be the responsibility of the individual student to be regular in maintaining the self-
study schedule as given in the course handout, attend the lectures, and take all the prescribed
evaluation components such as Assignment/Quiz, Mid-Semester Test and Comprehensive
Exam according to the evaluation scheme provided in the handout.

You might also like