Skip to main content

University System of Maryland – Syllabus

This image is a logo reading University System of Maryland with a shield displayed

STV 1.3 Formal Software Verification

This image shows the logo of the college with a building with a golden arch horizontally through it reading UMUC, University of Maryland University College

Course Description

Want to gain software quality skills used in mission critical systems?

Modeling checking, symbolic execution and formal methods are techniques that are used for mission critical systems where human life depends upon the system working correctly.

In this course, part of the Software Testing and Verification MicroMasters program, you will learn how to perform these techniques.

The concepts from this course can be applied to any programming language and testing software.

Course Outcomes

1.    Use Model Checking to evaluate software quality through model generation

2.    Use Symbolic Execution to evaluate software for defects

3.    Use Formal Methods to create proofs of software implementations

Pre-Requisites

It is recommended that students have Basic IT and Computer Programming. Students only need to know how to read computer programs and some material is in the course to assists students that do not have this skill.

Course Materials

All Material for this course is freely available in the course.

Discussions

Each week has a choice of discussion questions. Students are encouraged to participate in the weekly discussions by responding to these questions. Course facilitators and the course TA will not reply to every discussion post. They will monitor the discussions, highlighting important posts and clarifying concepts as needed. Discussion responses will not be graded but there will be a graded quiz inquiring whether you participated (at least one post and two responses).

Our learning community is diverse in experience, knowledge, language, and culture. This provides us with an incredible resource of viewpoints, and we want to take full advantage of this diversity in our discussions! Please consider the following when you post: 

Guidelines 

• Assume the best intentions from your classmates. We’re all learning together! 

• Posts should be written in your own words. If you include a quote or reference, when possible also provide a citation (book, URL, etc). 

• Participate! You will get out of the discussions what you put into them. 

• Before posting, search the Discussion for similar questions or comments. You can always respond and/or click on the green plus button to upvote a post. 

• Use evidence instead of personal attacks when you respond to a post you disagree with. 

Please refer to the following link for general expectations in the online classroom: http://sites.umuc.edu/orientation/undergraduate/academic-success/interacting-in-the-online-classroom.cfm

Logistics 

• Please limit your posts/responses to 200 words or less (by request of EdX). 

• Use the search and engagement tools (upvote, follow for updates, flag for misuse) on the Discussion Home to find and contribute to the conversations. 

• A blue star on a post means a member of the course staff has endorsed it. 

• If you see an inappropriate post, flag it instead of adding your own commentary. 

Weekly Time Commitment

The Weekly time commitment is about 8-10 hours per week.

Release of Course Content

All course content is released at the start of the course.  This allows you to work ahead.  You are still responsible for contributing to the discussion forum each week.  Early posting of discussions is acceptable but responses should be done during the week of the discussion.  This will foster an environment of mutual learning.  Remember discussions allow you to learn from the knowledge of others.

Academic Policy

Academic integrity refers to a set of shared values, principles, behaviors, and skills that lie at the heart of learning and scholarship.

Students are expected to maintain the highest level of integrity throughout their academic pursuit. Intellectually honest academic work represents independent analysis and acknowledges all sources of information that contribute to the ideas being explored.

The failure to uphold academic integrity includes: falsification of data; improper assignment of credit; and any representation of the ideas, words, or work of others as one's own. When students misrepresent their work, faculty cannot accurately assess their performance or provide the feedback students need to learn. Students who plagiarize or cheat harm themselves and ultimately damage the value and reputation of education for everyone.

Any violation of academic integrity will result in the certificate not being awarded, assuming the student is on the certification path.  Academic integrity violations in this course would include: sharing of answers to the graded quizzes in any electronic form.  Do not discuss any questions on the graded quizzes in any form on a discussion post.  Academic violations will result in the student being removed from the class.

Grading / Schedule Information

In order to be awarded a certificate you will need to have completed all the learning activities by December 17th, 2017 when the course closes.  All material is released at the start of the class so a student can work ahead.

Certification: 

The minimum grade to earn a certificate is 80%. Grades are calculated as explained below.

Overall Grade: There are 8 graded exercises in this course.  They are:

1.    Week 1 Graded Quiz 

2.    Week 2 Graded Quiz 

3.    Week 3 Graded Quiz 

4.    Week 4 Graded Quiz 

5.    Week 5 Graded Quiz 

6.    Week 6 Graded Quiz 

7.    Week 7 Graded Quiz 

8.    Week 8 Graded Quiz 

Please be aware that 23:59 UTC is not 23:59 in your time zone.  Prior to starting any material, perform the conversion for this time to your own time zone in order to avoid missing any due dates.

Important Note: Release dates and times are set in Coordinated Universal Time (UTC). You might want to verify that you have specified the time that you intend by using a time zone converter such as Time and Date Time Zone Converter.

All graded exercises have equal weight in the course.

Certificates

For those of you working to obtain a verified certificate, you need to achieve a final completion rate of 80% or more. The certificate will indicate only that you have passed the course; i.e., no specific final grade will be shown.

Syllabus Changes

All items on this syllabus are subject to change at the discretion of the Instructor and the Office of Academic Affairs.

Class & Assignment Schedule

Week

Topic

Graded Exercise

1

Mathematical Data Types

Week 1 Graded Quiz

2

State Machines

Week 2 Graded Quiz

3

Graphs

Week 3 Graded Quiz

4

Logical Formulas

Week 4 Graded Quiz

5

Proofs

Week 5 Graded Quiz

6

Modeling Checking

Week 6 Graded Quiz

7

Symbolic Execution

Week 7 Graded Quiz

8

Formal Methods

Week 8 Graded Quiz