Topics in formal test derivation methods, test management, high-level, CASE-based verification and validation, data-flow & control-flow measures and metrics for assessing quality of designs and code, regression analysis & testing.
There is no formal pre-requisite for the course other than an undergraduate background in computer science or software engineering or equivalent experience. The minimum background knowledge necessary for this course is:
Contact the professor if in doubt.
- elementary logic (predicate, propositional, set theory)
- Finite State Machine (FSM)) modeling
- the Unified Modeling Language (UML)
- test design (SEG3103 or equivalent)
- software programming
Dr. Stéphane S. Somé
562-5800 ext. 6714
Office Hours: Friday 3:00PM
First lecture: Monday January 9th.
- Monday 2:30-4:00, Marion Room 021
Verification & Validation aims at ensuring that a developed software system satisfies its intended users. This course investigates issues related to automated approaches (tools) for Software Verification & Validation. We try to answer the following questions:
The course takes a software engineering approach and provides the opportunity for some "hands-on" work with tools. After taking this course, the goal is to be an intelligent user of Software Validation & Verification tools, and provide the background to design and improve such tools.
- What types of tools are available?
- What capabilities are (and are not) available in current tools?
- What is the potential for new capabilities?
- Static Analysis Approaches (dataflow, syntax-based)
- Static Software Model Verification (Alloy, USE)
- Model Checking (Spin, PathFinder)
- Test Design
- Test Execution Systems (Junit)
- Test Evaluation (code coverage, mutation testing)
- Component Testing
- Security Testing
- Test Management
- Regression Analysis
The course is evaluated based on assignments, paper reports and a final exam.
- Assignments: 50%
- Paper Reports: 10%
- Final Exam: 40%
The course material will be posted on Blackboard Learn. The assignments and projects will also be submitted through Blackboard Learn.
Note: Carleton students can get an account by contacting the Computing and Communication Services at 613-562-5800 ext 6555. Once you have a Blackboard account, send me your username and I will add you to the course.