User Tools

Site Tools


course_outline

Lassonde Moodle Site (Experimental, not used)

Course Outline

The schedule and required readings (that you must do on your now), scheduled Labs and Quizzes are provided below.

Due Dates

You must be in the Lab during the scheduled Lab hour. There will be a weekly Quiz during the scheduled Lab hour that is graded.

Quiz Instructions

  • Assignment is due Thursday November 10th, 12 noon.
  • Project is due Wednesday November 30th, 12 noon.
  • Exam: Tue, 13 Dec 2016 2pm-5pm

Schedule

Each week you are required to study readings, on you own time, from:

  • the WIFT-95 Tutorial Introduction to PVS (WIFT-PVS Tutorial). Try out all the examples in the PVS theorem prover.
  • the required text: Requirements Engineering Management Handbook (REMH). Note that there are examples of how to write requirements documents in Appendix A, B,, C and D of this handbook. This allows you to see how the readings can be applied in practice.

The labs, quizzes, assignment, project and exam will be based on your knowledge of the required reading/study material, the Labs, as well as material presented in class.

At the beginning of each week (midnight Sunday), the Lab for that week will become available. A graded Quiz will take place every Thursday during the scheduled Lab. The Quiz will be on the Lab of the previous week (e.g. Quiz1 will be on Lab0) and on the readings and course work of the previous week.

At the beginning of each week you must start doing the Lab work for that week, and submit it by the Friday morning of that week. During the scheduled Lab you may ask questions on the Lab. While each Quiz is graded, the Labs are not given a grade. <hi cyan> However you must submit the completed Lab on time to obtain a grade for the Quiz of that week.</hi> If you miss a Quiz, you will not receive a grade for that Quiz.

Week Date Lab(Th) Quiz Assigns Study WIFT-PVS/REMH)
1 Thu 08 Sep Lab0 WIFT-PVS Prop. Logic pages 57-66
2 Thu 15 Sep Lab1 1 WIFT-PVS Pred. Logic pages 66-76
3 Thu 22 Sep Lab2 2 WIFT-PVS Phone Book Specification p5-25
4 Thu 29 Sep Lab3 3 Sect2:2 Identify System Boundary
5 Thu 06 Oct Lab4 4 Sect2:3 Develop Operational Concepts
6 Thu 13 Oct Lab5 5 Sect2:4 Identify Environmental Assumptions
7 Thu 20 Oct Lab6 6 Sect2:5/6 Develop Functional Architecture
8 Thu 27 Oct Break Sect2.7 Identify System Modes
9 Thu 03 Nov Lab7 7 Sect2:8 Develop Performance Constraints
10 Thu 10 Nov Assign Assign Sect2:9 Define Software Requirements
11 Thu 17 Nov 8 Sect2:10 Allocate Subsystem Requirements
12 Thu 24 Nov Project Project Sect2.11 Provide Rationale
13 Wed 30 Nov Project Project Read Telogic Writing Requirements Guide
Thu 01 Dec Last day of class, last Lab for questions
Tue. 13 Dec Exam 2pm DB 0007

DB = Victor Phillip Dahdela Building

Topics Covered

  • Eliciting customer needs and goals and identifying the stakeholders.
  • The use of UML diagrams such as use case, sequence, class and statechart diagrams to help with the elicitation.
  • Developing the system overview, system boundary and context diagram.
  • Identifying the monitored variables and events and the controlled variables, their types ranges, precision and units.
  • Identifying the environmental assumptions and constraints.
  • Understanding the Parnas 4-variables model for writing requirements.
  • Monitored Variables, Controlled Variables, Timing resolution and Response Allowance
  • Developing the functional specification using tabular expressions (mathematical function tables)
  • The use of specification and theorem proving tools (PVS) to describe the function tables and using the PVS tool to verify the completeness, disjointness and well- definedness of the functional requirements.
  • PVS Specification of predicates using basic types, tuples, records, datatypes, functions, relations, sets, bags, etc. Reasoning about predicates in these types.
  • How to use function tables to specify safety-critical real-time systems and cyber-physical systems and understanding, Timing Resolution and Response Allowances.
  • Using function tables to specify business systems via monitored events and abstract states/controlled variables.
  • Validation of use cases against the functional specifications and validation of the safety requirements.
  • Describing non-functional and performance requirements.
  • Deriving acceptance tests from the use cases and function tables.

Notes: There are some slides available on the course web site but much of the work is done on the blackboard. Instruction in the use of PVS for specification and validation is done mainly via the Labs and the associated Quizzes.

course_outline.txt · Last modified: 2016/12/04 21:38 by jonathan