Course Software Testing & Verification 2016/17 Wishnu Prasetya

Slides:



Advertisements
Similar presentations
Issues in Testing OO Programs (7.1, 2.2.2, 2.4.2) Course Software Testing & Verification 2013/14 Wishnu Prasetya.
Advertisements

ECOE 560 Design Methodologies and Tools for Software/Hardware Systems Spring 2004 Serdar Taşıran.
Testing and Quality Assurance
URL: by Wishnu Prasetya Course on Program Verification 2014/2015.
Practical Approach to Teaching Software Testing Sashko Ristov 11th Workshop on “Software Engineering Education and Reverse Engineering” – August 22-27,
BORIS MILAŠINOVIĆ FACULTY OF ELECTRICAL ENGINEERING AND COMPUTING UNIVERSITY OF ZAGREB, CROATIA Experiences after three years of teaching “Development.
Slides 00 1 Advanced Logics Part 1: Lambda Calculus and Type Theory Lecturer: Lim Yohanes Stefanus Part 2: Modal Logic Lecturer: Gregory Wheeler.
Course Organization Course Software Testing & Verification 2014/15 Wishnu Prasetya.
Groundwater Hydraulics
1 Object Oriented Programming Computer Systems Engineering (D2) and Programming (P)
Nyhoff, ADTs, Data Structures and Problem Solving with C++, Second Edition, © 2005 Pearson Education, Inc. All rights reserved Software.
Computer Science School of Computing Clemson University Discrete Math and Reasoning about Software Correctness Murali Sitaraman
Teaching Teaching Discrete Mathematics and Algorithms & Data Structures Online G.MirkowskaPJIIT.
CSCI 1301 Principles of Computer Science I
Software Quality Assurance and Testing prof. A. C. (Alex) Telea Course description.
1 Software Testing (Part-II) Lecture Software Testing Software Testing is the process of finding the bugs in a software. It helps in Verifying and.
1. Topics to be discussed Introduction Objectives Testing Life Cycle Verification Vs Validation Testing Methodology Testing Levels 2.
CS 103 Discrete Structures Lecture 01 Introduction to the Course
EECE 310 Software Engineering Lecture 0: Course Orientation.
CPS120: Introduction to Computer Science Fall: 2002 Instructor: Paul J. Millis.
Invariant Based Programming in Education Tutorial, FM’08 Linda Mannila
Software Testing and Maintenance 1 Today’s Agenda  Syllabus.
Discrete Mathematics 이재원 School of Information Technology
MV-4920 by Wolfgang Baer Introduction * Course description * Battlefield Data Processing Theory * Systems Overview.
Major objective of this course is: Design and analysis of modern algorithms Different variants Accuracy Efficiency Comparing efficiencies Motivation thinking.
Course Overview Stephen M. Thebaut, Ph.D. University of Florida Software Engineering Foundations.
1 Ch. 1: Software Development (Read) 5 Phases of Software Life Cycle: Problem Analysis and Specification Design Implementation (Coding) Testing, Execution.
Software Development Problem Analysis and Specification Design Implementation (Coding) Testing, Execution and Debugging Maintenance.
Discrete Mathematics ( 離散數學 ) Ming-Jer Tsai. Outline What is Discrete Mathematics? Why learn Discrete Mathematics? What will be taught in the class? How.
CSC 411/511: DBMS Design CSC411_L0_OutlineDr. Nan Wang 1 Course Outline.
Software Testing and Quality Assurance 1. What is the objectives of Software Testing?
1 Software Test Computer Science Department, Information Faculty Dr. KaiYu Wan.
Design and Analysis of Algorithms (09 Credits / 5 hours per week) Sixth Semester: Computer Science & Engineering M.B.Chandak
1 Algorithms and networks Period 3, 2011/ Today Graphs and networks and algorithms: what and why? This course: organization Case introduction:
&d1 Algorithms and networks Period 3, 2010/2011. &d2 Today Graphs and networks and algorithms: what and why? This course: organization Case introduction:
Lecture 1: Introduction – Graduation Projects Topics to Discuss in Lectures 1. Project Deliverables 2. Course grading 3. Project Concept Writing.
Formal Methods: for All or for Chosen? Victor Kuliamin 1 Vitaliy Omelchenko 1 Olga Petrenko 2 1 Institute for System Programming 2 Institute of Open Education.
URL: by Wishnu Prasetya Course on Program Verification 2015/2016.
1.  This course covers the mathematical foundations of computer science and engineering. It provides an introduction to elementary concepts in mathematics.
Computer Security Course Syllabus 1 Computer Security Lecturer : H.Ben Othmen.
Formal Methods. Objectives To introduce formal methods including multiple logic based approaches for software modelling and reasoning 2.
Introduction to Software Testing (2nd edition) Chapter 5 Criteria-Based Test Design Paul Ammann & Jeff Offutt
Course Information Andy Wang CIS 5930 Computer Systems Performance Analysis.
Design and Analysis of Algorithms (09 Credits / 5 hours per week)
Systems integration and Testing INSE 6421
Agenda Syllabus What is software testing ? Why it’s needed ?
Lecture 0 Software Engineering Course Introduction
Object-Oriented Analysis & Design
Course on Program Verification 2017/2018
Computer Vision Lecture 13: Image Segmentation III
Principles of Computing – UFCFA Lecture-1
Computer Vision Lecture 12: Image Segmentation II
Prepared by Stephen M. Thebaut, Ph.D. University of Florida
Introduction: course outline
Design and Analysis of Algorithms (07 Credits / 4 hours per week)
Chapter 10: Mathematical proofs
EECE 310 Software Engineering
Objective of This Course
Introduction CSE 373 Data Structures.
Introduction To software engineering
Embedded System Development Lecture 1 1/10/2007
Course Software Testing & Verification 2017/18 Wishnu Prasetya
Review for Final Exam Spring 2018
Principles of Computing – UFCFA Week 1
k-sample problems, k>2
Design and Analysis of Algorithms (04 Credits / 4 hours per week)
Review for Final Exam Spring 2019
BCS3233 – Software Testing Introduction to ST
About the Course Software Testing & Verification
Review for Final Exam Spring 2017
Presentation transcript:

Course Software Testing & Verification 2016/17 Wishnu Prasetya Course Organization Course Software Testing & Verification 2016/17 Wishnu Prasetya

Learning Goals Know a selected set of basic concepts, theories, and techniques of Software Testing and Software Verification They represent two complementary approaches towards software correctness : pragmatism vs completeness. Able to relate these theories and techniques to real problems.

Learning Goals The kinds of “perspective” we will take: Not in scope: An academic perspective towards software testing A mathematical-based foundation of software verification background in set theory and predicate logic is needed! Not in scope: practical aspects of software testing in a large project  covered in Software Project (bachelor) automated algorithms  covered in Program Verification (master)

Learning goal for testing Know a selected set of basic concepts, theories, and techniques of software testing White box testing control flow based testing testing complex predicates data flow-based testing Black box testing partition-based testing model-based testing integration testing OO testing Generating complex strings Able to apply some of these theories and techniques in real problems. through projects on unit testing and system testing

Site & Materials www.cs.uu.nl/docs/vakken/pc Paul Ammann and Jeff Offutt, Introduction to Software Testing, Cambridge University Press, Cambridge, UK, ISBN 0-52188-038-1, 2008. Lecture Notes (see the website), for the program verification part.

Project & assignment Home works (3x) Testing Project, in 2 iterations work in teams of 2-3 Iter-1 : development, unit testing, white box testing iter-2 : development, system testing. each phase is closed by a demonstration Proving program correctness assignment

Grading In total 6 components: home works, project (2 iterations), proof (last iteration), 2x exams raw = if average exams ≥ 4.0 then g rounded to the closest 0.5 else minimum(5,g) g = 0.96 * ( 0.3 * average project + 0.2 * proof + 0.5 * average exams ) + max. 0.4pt from home work final = if 5.0 ≤ raw ≤ 6.0 then raw rounded to closest integer else raw resit: 4.0  final  5 , or if final=AANV

What did we learn

Learning goal for testing Know a selected set of basic concepts, theories, and techniques of software testing White box testing control flow based testing testing complex predicates data flow-based testing Black box testing partition-based testing model-based testing integration testing OO testing Generating complex strings Able to apply some of these theories and techniques in real problems. yes, projects on unit testing and system testing