BYZ657 - FUNDAMENTALS of SOFTWARE TESTING

Course Name Code Semester Theory
(hours/week)
Application
(hours/week)
Credit ECTS
FUNDAMENTALS of SOFTWARE TESTING BYZ657 Any Semester/Year 3 0 3 6
PrequisitesBYZ 681, BYZ 660.
Course languageTurkish
Course typeElective 
Mode of DeliveryFace-to-Face 
Learning and teaching strategiesLecture
Discussion
Preparing and/or Presenting Reports
Problem Solving
Project Design/Management
 
Instructor (s)To be determined by the institute 
Course objectiveTo teach the fundamentals of software testing. 
Learning outcomes
  1. Learning outcomes At the end of this course students will,
  2. Understand fundamental software testing and related program analysis techniques.
  3. Review important phases of testing.
  4. Learn significance of each phase when testing different types of software.
Course ContentFundamental software testing and program analysis techniques, Testing technology for;Object-oriented, Component-based, Concurrent, Distributed, Graphical-user interface, Web software;Test generation, Test oracles, Test coverage, Regression testing, Mutation testing and program analysis, Static and dynamic analysis, Test-case prioritization. 
References? Ammann and Offutt, Introduction to Software Testing, Cambridge University Press, 2008.
? Marnie L. Hutcheson, Software Testing Fundamentals: Methods and Metrics, John Wiley & Sons, 2003.
 

Course outline weekly

WeeksTopics
Week 1Introduction to Course
Week 2Fundamental software testing and program analysis techniques, Object-oriented
Week 3Component-based, Concurrent
Week 4Distributed
Week 5Graphical-user interface
Week 6Web software
Week 7Test generation
Week 8Midterm exam
Week 9Test oracles, Test coverage
Week 10Regression testing
Week 11Mutation testing and program analysis
Week 12Static and dynamic analysis
Week 13Test-case prioritization
Week 14Project Presentation
Week 15Project Presentation
Week 16Final exam

Assesment methods

Course activitiesNumberPercentage
Attendance00
Laboratory00
Application00
Field activities00
Specific practical training00
Assignments510
Presentation00
Project120
Seminar00
Midterms120
Final exam150
Total100
Percentage of semester activities contributing grade succes750
Percentage of final exam contributing grade succes150
Total100

WORKLOAD AND ECTS CALCULATION

Activities Number Duration (hour) Total Work Load
Course Duration (x14) 14 3 42
Laboratory 0 0 0
Application000
Specific practical training000
Field activities000
Study Hours Out of Class (Preliminary work, reinforcement, ect)10330
Presentation / Seminar Preparation000
Project14848
Homework assignment5210
Midterms (Study duration)12020
Final Exam (Study duration) 13030
Total Workload32106180

Matrix Of The Course Learning Outcomes Versus Program Outcomes

D.9. Key Learning OutcomesContrubition level*
12345
1. Has comprehensive knowledge in fundamental areas of software engineering. X   
2. Has knowledge in the area of software requirements understanding process planning, output specification, resource planning, risk management and quality planning.  X  
3. Understands the interplay between theory and practice and the essential links between them.   X 
4. Defines real life problems by identifying functional and non-functional requirements a software has to satisfy.  X  
5. Overcomes technical or scientific software engineering problems on their own and is in a position to propose the most suitable solution; has good communication skills to explain the completeness of their solution and clearly state the assumptions that were made.   X 
6. Completes a project on a larger scale than an ordinary course project in order to acquire the skills necessary to work efficiently in a team.    X
7. Identifies, evaluates, measures and manages changes in software development by applying software engineering processes. X   
8. Understands the social, legal, ethical and cultural issues involved in the deployment and use of software engineering and conducts all occupational pursuits in an ethical and responsible manner. X   
9. Has good command of technical terms in both Turkish and English, where they have the ability to make succinct presentations (including face-to-face, written or electronic) to a range of audiences about technical/scientific problems and their solutions.    X
10. Identifies and conducts research by applying scientific methods in order to solve scientific problems.     X

*1 Lowest, 2 Low, 3 Average, 4 High, 5 Highest