Rigorous Software Development CSCI-GA
|
|
- Charla Martin
- 2 years ago
- Views:
Transcription
1 Rigorous Software Development CSCI-GA Instructor: Thomas Wies Spring 2013 Lecture 1
2 Important Facts Office Hours: Thu 3-4pm, or by appointment Office: CIWW 407 Course web site: Mailing list:
3 Prerequisites Discrete structures: sets, relations, functions Basic algorithms (undergraduate level) Mathematical maturity: comfort with notation, understand and write proofs Familiarity with Java-like languages (Moderate) programming experience
4 Grading Weekly Assignments: 30% (starting 02/03/12) Term Project: 30% Final Exam: 40%
5 Course Material Software Abstractions: Logic, Language, and Analysis (revised edition). Daniel Jackson, The MIT Press, 2006 The Formal Semantics of Programming Languages. Glynn Winskell, The MIT Press, 1993 Additional material on the course web site
6 Software Reliability Driving force to use computer systems: Increase the safety of technological artifacts But can we really build safe computer systems? Software and cathedrals are much the same. First we build them, then we pray. Sam Redwine
7 Maiden Flight of Ariane 5 Rocket Ariane 5 exploded on its first test flight in 1996 Cause: failure of flightcontrol software due to overflow in floating point to integer conversion Financial loss: $500,000,000 (including indirect costs: $2,000,000,000)
8 Therac-25 Radiation therapy machine Two modes: X-ray electron-beam Race condition in software caused use of electron-beam instead of X-ray six cases of radiation poisoning between 1985 and 1987, three of them fatal
9 Northeast Blackout in 2003 Cascading failure of power grid due to lightning stroke Race condition in energy control system stalled alarm in control room for > 1 hour Multiple server failures due to unprocessed events 55 million people affected
10 Economics of Software Errors Estimated annual costs of software errors in the US (2002) $60 billion (0.6% of GDP) Estimated size of the US software industry (2002) $240 billion (50% development) Estimated 50% of each software project is spent on testing
11 Testing Software validation the old-fashioned way: Create a test suite (set of test cases) Run the test suite Fix the software if test suite fails Ship the software if test suite passes
12 Program testing can be a very effective way to show the presence of bugs, but is hopelessly inadequate for showing their absence. Edsger W. Dijkstra Very hard to test the portion inside the if" statement! input x if (hash(x) == 10) {... }
13 Verification Verification: formally prove that a computing system satisfies its specifications Rigor: well established mathematical foundations Exhaustiveness: considers all possible behaviors of the system, i.e., finds all errors Automation: uses computers to build reliable computers Formal Methods: general area of research related to program specification and verification.
14 Success Stories of Formal Methods Astrée Static Analyzer Developed by Patrick Cousot s group and others Verify absence of runtime errors in C code for Embedded Systems Industrial applications include verification of Airbus fly-by-wire software
15 Success Stories of Formal Methods Static Driver Verifier, HAVOC, and VCC Developed at Microsoft Research Verification of OS code Applications: Windows Device Drivers Windows File System Windows Hypervisor Resource NodeBQueue Flink Blink NODEA ParentA State NodeALinks Flink Blink ParentA State NodeALinks Flink Blink... ParentA State NodeALinks Flink Blink NODEB NODEB NODEB #define FIRST_CHILD(x) x->nodebqueue.flink #define NEXT_NODE(x) x->nodealinks.flink type_invariant(pnodea x){ ENCL_NODEA(FIRST_CHILD(x))!= x ==> ENCL_NODEB(FIRST_CHILD(x))->ParentA == x } type_invariant(pnodeb y){ NEXT_NODE(y)!= &(y->parenta->nodebqueue) ==> y->parenta == ENCL_NODEB(NEXT_NODE(y))->ParentA }
16 Beware of bugs in the above code; I have only proved it correct, not tried it. Donald Knuth You can only verify what you have specified. Testing is still important, but can we make it less impromptu?
17 Rigorous Software Development Driving force to use computer systems: Increase the safety of technological artifacts But can we really build safe computer systems? In this course you will learn how to use software to build reliable software automated testing automated program verification how formal methods tools work under their hoods
18 Overview Topics Modeling Software Design by Contract Runtime Assertion Checking Automated Test Case Generation Extended Static Checking Semantics of Programming Languages Formal Verification Static Analysis Tools Alloy JML JMLUnit Korat Dafny
19 Dafny Demo
20 Daniel Jackson The Alloy Tool
21 Alloy Analyzes micro models of software Helps to identify key properties of a software design find conceptual errors (not implementation errors) Small scope hypothesis: many properties that do not hold have small counterexamples Exhaustively search for errors in all instances of bounded size
22 Example Applications Security protocols Train controllers File systems Databases Network protocols Software design/testing/repair/sketching Many examples are shipped with Alloy. More can be found on the Alloy website.
23 Alloy in a Nutshell: A Simple Address Book Name addr Addr
The Course. http://www.cse.unsw.edu.au/~cs3153/
The Course http://www.cse.unsw.edu.au/~cs3153/ Lecturers Dr Peter Höfner NICTA L5 building Prof Rob van Glabbeek NICTA L5 building Dr Ralf Huuck NICTA ATP building 2 Plan/Schedule (1) Where and When Tuesday,
Program Analysis: Theory and Practice
Introductions Program Analysis: Theory and Practice Who am I? About you? What do you want to get out of this class? Evan Chang Meeting 1: Welcome CSCI 7135, Fall 2010 http://www.cs.colorado.edu/~bec/courses/csci7135-f10/
Rigorous Software Development An introduction
Rigorous Software Development An introduction Simão Melo de Sousa RELEASE (UBI), LIACC (Porto), CCTC (Minho) Computer Science Department University of Beira Interior, Portugal October 2011 S. Melo de Sousa
A puzzle. Suppose that you want to run some JavaScript programs---all the cool kids are doing it.
A puzzle Suppose that you want to run some JavaScript programs---all the cool kids are doing it. However, you are deathly afraid that your mom/ significant other/boss will see the curse word b00 appear
Rigorous Software Development CSCI-GA 3033-009
Rigorous Software Development CSCI-GA 3033-009 Instructor: Thomas Wies Spring 2013 Lecture 11 Semantics of Programming Languages Denotational Semantics Meaning of a program is defined as the mathematical
Model Checking based Software Verification
Model Checking based Software Verification 18.5-2006 Keijo Heljanko Keijo.Heljanko@tkk.fi Department of Computer Science and Engineering Helsinki University of Technology http://www.tcs.tkk.fi/~kepa/ 1/24
INF5140: Specification and Verification of Parallel Systems
Motivation INF5140: Specification and Verification of Parallel Systems Lecture 1 Introduction: Formal Methods Gerardo Schneider Department of Informatics University of Oslo INF5140, Spring 2009 Outline
Rigorous Software Development CSCI-GA 3033-009
Rigorous Software Development CSCI-GA 3033-009 Instructor: Thomas Wies Spring 2013 Lecture 5 Disclaimer. These notes are derived from notes originally developed by Joseph Kiniry, Gary Leavens, Erik Poll,
CS4507 Advanced Software Engineering
CS4507 Advanced Software Engineering Lecturer: Adrian O Riordan Office: Room G.71 WGB Email: a.oriordan cs.ucc.ie Course Webpage: http://www.cs.ucc.ie/~adrian/cs4507.html CS4507 Overview 5 Credit course
Specification and Analysis of Contracts Lecture 1 Introduction
Specification and Analysis of Contracts Lecture 1 Introduction Gerardo Schneider gerardo@ifi.uio.no http://folk.uio.no/gerardo/ Department of Informatics, University of Oslo SEFM School, Oct. 27 - Nov.
Formal Verification and Linear-time Model Checking
Formal Verification and Linear-time Model Checking Paul Jackson University of Edinburgh Automated Reasoning 21st and 24th October 2013 Why Automated Reasoning? Intellectually stimulating and challenging
Rigorous Software Engineering Hoare Logic and Design by Contracts
Rigorous Software Engineering Hoare Logic and Design by Contracts Simão Melo de Sousa RELEASE (UBI), LIACC (Porto) Computer Science Department University of Beira Interior, Portugal 2010-2011 S. Melo de
Towards the Industrial Scale Development of Custom Static Analyzers
Towards the Industrial Scale Development of Custom Static Analyzers John Anton, Eric Bush, Allen Goldberg, Klaus Havelund, Doug Smith, Arnaud Venet Kestrel Technology LLC 4984 El Camino Real #230 Los Altos,
Sound Verification Techniques for Developing High-Integrity Medical Device Software
ESC-360 Sound Verification Techniques for Developing High-Integrity Medical Device Software Jay Abraham The MathWorks Paul Jones FDA / CDRH Raoul Jetley FDA / CDRH Abstract Embedded software in medical
Die wichtigsten Use Cases für MISRA, HIS, SQO, IEC, ISO und Co. - Warum Polyspace DIE Embedded Code-Verifikationslösung ist.
Die wichtigsten Use Cases für MISRA, HIS, SQO, IEC, ISO und Co. - Warum Polyspace DIE Embedded Code-Verifikationslösung ist. Christian Guß Application Engineer The MathWorks GmbH 2015 The MathWorks, Inc.
CS 6371: Advanced Programming Languages
CS 6371: Advanced Programming Languages Dr. Kevin Hamlen Spring 2014 Fill out, sign, and return prereq forms: Course number: CS 6371 Section: 1 Prerequisites: CS 5343: Algorithm Analysis & Data Structures
Static vs. Dynamic Testing How Static Analysis and Run-Time Testing Can Work Together. Outline
Static vs. Dynamic Testing How Static Analysis and Run-Time Testing Can Work Together S. Tucker Taft and Brian Lesuer SQGNE December 2006 Outline The Challenges Facing Software Testing A Software Testing
Building Confidence in the Quality and Reliability of Critical Software
Building Confidence in the Quality and Reliability of Critical Software Jay Abraham, MathWorks Jon Friedman, MathWorks Abstract. Software in critical civilian and military aerospace applications, including
Discrete Mathematics I Distance Learning (online) sections
FLORIDA STATE UNIVERSITY MAD 2104 Discrete Mathematics I Distance Learning (online) sections Summer 2014 https:/ /campus.fsu.edu Florida State University Tallahassee, Florida 32306 Copyright 2014 Florida
Software Testing & Analysis (F22ST3): Static Analysis Techniques 2. Andrew Ireland
Software Testing & Analysis (F22ST3) Static Analysis Techniques Andrew Ireland School of Mathematical and Computer Science Heriot-Watt University Edinburgh Software Testing & Analysis (F22ST3): Static
MAT 183 - Elements of Modern Mathematics Syllabus for Spring 2011 Section 100, TTh 9:30-10:50 AM; Section 200, TTh 8:00-9:20 AM
MAT 183 - Elements of Modern Mathematics Syllabus for Spring 2011 Section 100, TTh 9:30-10:50 AM; Section 200, TTh 8:00-9:20 AM Course Instructor email office ext. Thomas John, Ph.D. thjohn@syr.edu 224
Programming Languages
Programming Languages Qing Yi Course web site: www.cs.utsa.edu/~qingyi/cs3723 cs3723 1 A little about myself Qing Yi Ph.D. Rice University, USA. Assistant Professor, Department of Computer Science Office:
A Static Analyzer for Large Safety-Critical Software. Considered Programs and Semantics. Automatic Program Verification by Abstract Interpretation
PLDI 03 A Static Analyzer for Large Safety-Critical Software B. Blanchet, P. Cousot, R. Cousot, J. Feret L. Mauborgne, A. Miné, D. Monniaux,. Rival CNRS École normale supérieure École polytechnique Paris
Fundamentals of Testing
Fundamentals of Testing Software Reliability and Testing - Barbara Russo SERG - Laboratory of Empirical Software Engineering 1 Goal of testing Testing is the process of executing a program with the intent
CS422 - Programming Language Design
1 CS422 - Programming Language Design General Information and Introduction Grigore Roşu Department of Computer Science University of Illinois at Urbana-Champaign 2 General Information Class Webpage and
Coverability for Parallel Programs
2015 http://excel.fit.vutbr.cz Coverability for Parallel Programs Lenka Turoňová* Abstract We improve existing method for the automatic verification of systems with parallel running processes. The technique
CSCI E 98: Managed Environments for the Execution of Programs
CSCI E 98: Managed Environments for the Execution of Programs Draft Syllabus Instructor Phil McGachey, PhD Class Time: Mondays beginning Sept. 8, 5:30-7:30 pm Location: 1 Story Street, Room 304. Office
Motivations 1. What is (or should be) the essential preoccupation of computer scientists?
Improving Systems Quality Challenges and Trends An Abstract Interpretation Perspective Patrick COUSOT École Normale Supérieure 45 rue d Ulm, 75230 Paris cedex 05, France Patrick.Cousot@ens.fr www.di.ens.fr/
Automated Theorem Proving - summary of lecture 1
Automated Theorem Proving - summary of lecture 1 1 Introduction Automated Theorem Proving (ATP) deals with the development of computer programs that show that some statement is a logical consequence of
TEACHING MODEL CHECKING TO UNDERGRADUATES
STUDIA UNIV. BABEŞ BOLYAI, INFORMATICA, Volume LV, Number 3, 2010 TEACHING MODEL CHECKING TO UNDERGRADUATES A.VESCAN AND M. FRENŢIU Abstract. The way program verification is taught in our faculty is firstly
Introduction to Formal Methods. Các Phương Pháp Hình Thức Cho Phát Triển Phần Mềm
Introduction to Formal Methods Các Phương Pháp Hình Thức Cho Phát Triển Phần Mềm Outline Introduction Formal Specification Formal Verification Model Checking Theorem Proving Introduction Good papers to
Static Analysis of Dynamic Properties - Automatic Program Verification to Prove the Absence of Dynamic Runtime Errors
Static Analysis of Dynamic Properties - Automatic Program Verification to Prove the Absence of Dynamic Runtime Errors Klaus Wissing PolySpace Technologies GmbH Argelsrieder Feld 22 82234 Wessling-Oberpfaffenhofen
T-79.186 Reactive Systems: Introduction and Finite State Automata
T-79.186 Reactive Systems: Introduction and Finite State Automata Timo Latvala 14.1.2004 Reactive Systems: Introduction and Finite State Automata 1-1 Reactive Systems Reactive systems are a class of software
Secure Software Programming and Vulnerability Analysis
Secure Software Programming and Vulnerability Analysis Christopher Kruegel chris@auto.tuwien.ac.at http://www.auto.tuwien.ac.at/~chris Testing and Source Code Auditing Secure Software Programming 2 Overview
HRM 386 HUMAN RESOURCE MANAGEMENT Spring, 2008
HRM 386 HUMAN RESOURCE MANAGEMENT Spring, 2008 INSTRUCTOR Barry Friedman (friedman@oswego.edu) OFFICE/ PHONE 247 Rich Hall, (315) 312-6381 COURSE WEBSITE Angel OFFICE HOURS 9:00-11:15, 12:30-1:45 MW or
Part 2: The Use of Software in Safety Critical Systems
Part 2: The Use of Software in Safety Critical Systems Software Design of Safety-Critical Systems There are three different concerns: Reliability. (Continuous operation. Absence of errors.) Safety. (Avoiding
Abstract Interpretation-based Static Analysis Tools:
Abstract Interpretation-based Static Analysis Tools: Proving the Absence of Runtime Errors and Safe Upper Bounds on the Worst-Case Execution Time and Safe Upper Bounds on the Stack Usage Christian Ferdinand
Antonio Kung, Trialog. HIJA technical coordinator. Scott Hansen, The Open Group. HIJA coordinator
HIJA Antonio Kung, Trialog HIJA technical coordinator Scott Hansen, The Open Group HIJA coordinator 1 Presentation Outline HIJA project ANRTS platforms Requirements for ANRTS platforms Profiles based on
EECS 294-98: Formal Methods for Engineering Education. Sanjit A. Seshia EECS, UC Berkeley
EECS 294-98: Formal Methods for Engineering Education Sanjit A. Seshia EECS, UC Berkeley Engineering Education (recent past) On-campus experience Instructor lectures / discusses in class Students listen
Casper College Course Syllabus COSC 2405-1 MFC Windows Programming in C++
Casper College Course Syllabus COSC 2405-1 MFC Windows Programming in C++ Semester/Year: Fall 2008 Lecture Hours: 2 Section: 01 Credit Hours: 2 Class Time(s): TIME: 11:00-11:50 A.M Day(s): Tues., Thurs
LAKE ELSINORE UNIFIED SCHOOL DISTRICT
LAKE ELSINORE UNIFIED SCHOOL DISTRICT Title: PLATO Algebra 1-Semester 2 Grade Level: 10-12 Department: Mathematics Credit: 5 Prerequisite: Letter grade of F and/or N/C in Algebra 1, Semester 2 Course Description:
Computer Science Information Sheet for entry in 2016. What is Computer Science?
Computer Science Information Sheet for entry in 2016 What is Computer Science? Computer Science is about understanding computer systems and networks at a deep level. Computers and the programs they run
Managing and Maintaining Windows Server 2008 Servers
Managing and Maintaining Windows Server 2008 Servers Course Number: 6430A Length: 5 Day(s) Certification Exam There are no exams associated with this course. Course Overview This five day instructor led
Slides based in part on previous lectures by Mahesh Vishwanathan, and by Gul Agha January 21, 2014 1
Contact Information CS477 Formal Software Development Methods Elsa L Gunter 2112 SC, UIUC egunter@illinois.edu http://courses.engr.illinois.edu/cs477 Office: 2112 SC Office Hours: Wednesdays 11:00am -
Safety-Critical Firmware What can we learn from past failures?
Safety-Critical Firmware What can we learn from past failures? Michael Barr & Dan Smith Webinar: September 9, 2014 MICHAEL BARR, CTO BSEE/MSEE and Firmware Developer Consultant and Trainer (1999-present)
Algorithms are the threads that tie together most of the subfields of computer science.
Algorithms Algorithms 1 Algorithms are the threads that tie together most of the subfields of computer science. Something magically beautiful happens when a sequence of commands and decisions is able to
Static analysis: from theory to practice
Static analysis: from theory to practice David Monniaux CNRS / VERIMAG A joint laboratory of CNRS, Université Joseph Fourier (Grenoble) and Grenoble-INP. 19 juin 2009 David Monniaux (VERIMAG) Static analysis:
Rigorous Methods for Software Engineering (F21RS1) High Integrity Software Development
Rigorous Methods for Software Engineering (F21RS1) High Integrity Software Development Andrew Ireland Department of Computer Science School of Mathematical and Computer Sciences Heriot-Watt University
Finance 3272-001 Life Insurance and Professional Financial Planning Spring, 2014. Instructor: Thomas S. Marshall. Office: 350D Friday Building
Instructor: Thomas S. Marshall Office: 350D Friday Building Office Hours: TR 3:30 5:30 pm and by Appointment Phone: 704-687-7641, email: tsmarsha@uncc.edu Class Meets: TR 11:00 AM 12:15 PM, Friday 142
AUBURN UNIVERSITY RAYMOND J. HARBERT COLLEGE OF BUSINESS DEPARTMENT OF FINANCE FINC 3630: ADVANCED CORPORATE FINANCE SPRING 2014
AUBURN UNIVERSITY RAYMOND J. HARBERT COLLEGE OF BUSINESS DEPARTMENT OF FINANCE FINC 3630: ADVANCED CORPORATE FINANCE SPRING 2014 Instructor: Dr. Damion McIntosh CFM CMA CPA Preferred email address: drm0018@auburn.edu
Fundamentals of Programming Languages
A puzzle and a dilemma Suppose I want to capture/catch/slay crashing programs before they have a chance to run (=static type safety). Do I let this one go? let c = ref (fun x -> x) in c := (fun x -> x
Rigorous. Development. Software. Program Verification. & Springer. An Introduction to. Jorge Sousa Pinto. Jose Bacelar Almeida Maria Joao Frade
Jose Bacelar Almeida Maria Joao Frade Jorge Sousa Pinto Simao Melo de Sousa Rigorous Software Development An Introduction to Program Verification & Springer Contents 1 Introduction 1 1.1 A Formal Approach
Reasoning about Safety Critical Java
Reasoning about Safety Critical Java Chris Marriott 27 th January 2011 Motivation Safety critical systems are becoming part of everyday life Failure can potentially lead to serious consequences Verification
The Model Checker SPIN
The Model Checker SPIN Author: Gerard J. Holzmann Presented By: Maulik Patel Outline Introduction Structure Foundation Algorithms Memory management Example/Demo SPIN-Introduction Introduction SPIN (Simple(
Industrial Use of THE B METHOD
Industrial Use of THE B METHOD introducing B n a formal method Ë specification method based on a mathematical formalism to build models n with refinement Ë to structure a model step by step from abstract
Computer and Information Sciences
Computer and Information Sciences Dr. John S. Eickmeyer, Chairperson Computers are no longer huge machines hidden away in protected rooms and accessible to only a few highly-trained individuals. Instead,
https://sites.google.com/a/asu.edu/cse-522-spring-12/ sensors and actuators? How do we handle the errors introduced due to noise, quantization etc?
CSE 522 Spring 12 https://sites.google.com/a/asu.edu/cse-522-spring-12/ 1 of 3 5/29/2012 16:56 CSE 522 Spring 12 Navigation CSE522: Real-Time Embedded Systems The Schedule Sitemap CSE522: Real-Time Embedded
Industrial and Systems Engineering Master of Science Program Logistics and Supply Chain Management
Industrial and Systems Engineering Master of Science Program Logistics and Supply Chain Management Department of Integrated Systems Engineering The Ohio State University Logistics is the science of design,
Mathematical Reasoning in Software Engineering Education. Peter B. Henderson Butler University
Mathematical Reasoning in Software Engineering Education Peter B. Henderson Butler University Introduction Engineering is a bridge between science and mathematics, and the technological needs of mankind.
(575) 646 7420 and by prior appointment lboucher @ nmsu. edu
EE446 / EE596 Digital Image Processing (3 credits) Spring 2015 Klipsch School of Electrical and Computer Engineering College of Engineering New Mexico State University Instructor and Class Information
Model Checking: An Introduction
Announcements Model Checking: An Introduction Meeting 2 Office hours M 1:30pm-2:30pm W 5:30pm-6:30pm (after class) and by appointment ECOT 621 Moodle problems? Fundamentals of Programming Languages CSCI
Comprehensive Static Analysis Using Polyspace Products. A Solution to Today s Embedded Software Verification Challenges WHITE PAPER
Comprehensive Static Analysis Using Polyspace Products A Solution to Today s Embedded Software Verification Challenges WHITE PAPER Introduction Verification of embedded software is a difficult task, made
CS 356 Lecture 28 Internet Authentication. Spring 2013
CS 356 Lecture 28 Internet Authentication Spring 2013 Review Chapter 1: Basic Concepts and Terminology Chapter 2: Basic Cryptographic Tools Chapter 3 User Authentication Chapter 4 Access Control Lists
SCADE Suite in Space Applications
SCADE Suite in Space Applications at EADS David Lesens 09/10/2008 Overview Introduction Historical use of SCADE at EADS Astrium ST Why using SCADE? The Automatic Transfer Vehicle (ATV) M51 and Vega R&T
Introduction to Database Systems CS4320. Instructor: Christoph Koch koch@cs.cornell.edu CS 4320 1
Introduction to Database Systems CS4320 Instructor: Christoph Koch koch@cs.cornell.edu CS 4320 1 CS4320/1: Introduction to Database Systems Underlying theme: How do I build a data management system? CS4320
Northeast Blackout of 2003
Aug 13, 2003 Aug 14, 2003 Northeast Blackout of 2003 50 Millionen Menschen 60 Milliarden US$ because of a computer software bug in General Electric Energy's Unix-based XA/21 energy management system that
A LOOK BACK: UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW
A LOOK BACK: UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW John C. Knight, Jane C. Prey, & Wm. A. Wulf Department of Computer Science University of Virginia ABSTRACT
Introduction to Computer Forensics Course Syllabus Spring 2012
Course Information Course Syllabus Spring 2012 Instructor: Dr. Mike Jochen Phone: 570.422.3036 Email: mjochen@esu.edu Office: 337 SCITECH Building Office Hours: Tues/Thurs 11 a.m. noon Weds 9 a.m. noon
Course Goals. Solve Non-Technical Customer problem Server side: Ruby on Rails Client side: HTML, CSS, AJAX, JavaScript Deploy using cloud computing
Course Goals Learn Software Engineering Principles by understanding new challenges, opportunities, and open problems of SaaS Take a SaaS project from conception to public deployment Solve Non-Technical
Model 2.4 Faculty member + student
Model 2.4 Faculty member + student Course syllabus for Formal languages and Automata Theory. Faculty member information: Name of faculty member responsible for the course Office Hours Office Number Email
Techniques for Evaluating Game Design
Techniques for Evaluating Game Design CSC 591/495 Fall 2012 Tu/Th 5:20-6:35pm EBIII Room 2201 Instructor: Dr. David L. Roberts (robertsd@csc.ncsu.edu), 2254 EBII, 919-513-7182 Office Hours: Monday 3:30-5:00,
Quality Management. Lecture 12 Software quality management
Quality Management Lecture 12 Software quality management doc.dr.sc. Marko Jurčević prof.dr.sc. Roman Malarić University of Zagreb Faculty of Electrical Engineering and Computing Department of Fundamentals
SOUTH TEXAS COLLEGE Bachelor Programs Bachelor of Applied Technology Computer and Information Technologies Fall 2011 Chair s Information:
SOUTH TEXAS COLLEGE Bachelor Programs Bachelor of Applied Technology Computer and Information Technologies Fall 2011 Chair s Information: 1. Name of Chair: Saeed Molki 2. Office Location: Information Technology
EDMS 769L: Statistical Analysis of Longitudinal Data 1809 PAC, Th 4:15-7:00pm 2009 Spring Semester
Instructor Dr. Jeffrey Harring 1230E Benjamin Building Phone: (301) 405-3630 Email: harring@umd.edu Office Hours Tuesday 2:00-3:00pm, or by appointment Course Objectives, Description and Prerequisites
LEARNING SOLUTIONS website milner.com/learning email training@milner.com phone 800 875 5042
Course 20467A: Designing Business Intelligence Solutions with Microsoft SQL Server 2012 Length: 5 Days Published: December 21, 2012 Language(s): English Audience(s): IT Professionals Overview Level: 300
CSC 341, section 001 Principles of Operating Systems Spring 2015 Monday/Wednesday 1:00 PM 2:15 PM
CSC 341, section 001 Principles of Operating Systems Spring 2015 Monday/Wednesday 1:00 PM 2:15 PM Dr. Robert Ball 303C McKibben ballrg@sfasu.edu (936) 468-2508 Course Description Operating systems principles,
Redefining Static Analysis A Standards Approach. Mike Oara CTO, Hatha Systems
Redefining Static Analysis A Standards Approach Mike Oara CTO, Hatha Systems Software Analysis for Compliance Compliance Assessment Requires Software Analysis Dynamic Analysis Option Static Analysis Performed
THE UNIVERSITY OF TEXAS AT AUSTIN Department of Aerospace Engineering and Engineering Mechanics. EM 311M - DYNAMICS Spring 2012 SYLLABUS
THE UNIVERSITY OF TEXAS AT AUSTIN Department of Aerospace Engineering and Engineering Mechanics EM 311M - DYNAMICS Spring 2012 SYLLABUS UNIQUE NUMBERS: 13815, 13820, 13825, 13830 INSTRUCTOR: TIME: Dr.
Number Responses. Answered: 6 100% Unanswered: 0 0%
home help sign out ONLINE COURSE EVALUATIONS Administration Page Reports Standard Reports CSCI 4331.80: Cryptography Instructor: P. Vora Survey for Term Spring 2015 (April 20 - May 3, 2015 ) Participation:
Managing and Maintaining Windows Server 2008 Servers (6430) Course length: 5 days
Managing and Maintaining Windows Server 2008 Servers (6430) Course length: 5 days Course Summary: This five-day instructor-led course provides students with the knowledge and skills to implement, monitor,
Handout #1: Mathematical Reasoning
Math 101 Rumbos Spring 2010 1 Handout #1: Mathematical Reasoning 1 Propositional Logic A proposition is a mathematical statement that it is either true or false; that is, a statement whose certainty or
1. What college are you in?
Spring 2015 Graduating Senior Survey - College of Education - Evaluation Report Last Modified: 05/22/2015 Filter By: Report Subgroup 1. What college are you in? # Answer Bar Response % 1 College of Arts
Merritt College Radiologic Science Program updated 11-19-13
Merritt College Radiologic Science Program updated 11-19-13 General Information: The purpose of the Merritt College Radiologic Science Program is to prepare qualified practitioners for competency in the
UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW
UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW John C. Knight, Jane C. Prey, & Wm. A. Wulf Department of Computer Science University of Virginia Charlottesville, VA 22903
Microsoft Office Outlook 2013: Part 1
Microsoft Office Outlook 2013: Part 1 Course Specifications Course Length: 1 day Overview: Email has become one of the most widely used methods of communication, whether for personal or business communications.
Final Project: Quality Assurance Plan
Final Project: Quality Assurance Plan 17-654: Analysis of Software Artifacts Jonathan Aldrich (jonathan.aldrich@cs.cmu.edu) Initial QA plan due Thursday, May 4 at 5pm QA plan review documents due May 8,
School of Computing and Information Sciences. Course Title: Computer Programming III Date: April 9, 2014
Course Title: Computer Date: April 9, 2014 Course Number: Number of Credits: 3 Subject Area: Programming Subject Area Coordinator: Tim Downey email: downeyt@cis.fiu.edu Catalog Description: Programming
Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students
Eastern Washington University Department of Computer Science Questionnaire for Prospective Masters in Computer Science Students I. Personal Information Name: Last First M.I. Mailing Address: Permanent
https://runtimeverification.com Grigore Rosu Founder, President and CEO Professor of Computer Science, University of Illinois
https://runtimeverification.com Grigore Rosu Founder, President and CEO Professor of Computer Science, University of Illinois Runtime Verification, Inc. (RV): startup company aimed at bringing the best
44-599 Intro. to Data Visualization Spring 2016
44-599 Intro. to Data Visualization Spring 2016 Instructor: Dr. Ajay Bandi 2250 Colden Hall ajay@nwmissouri.edu Classroom: VLK127 Time: 02:00pm - 03:15pm TR Textbook: No textbook is required. All the material
Small bug, Big bang! Jean-Jacques Lévy Iscas & Inria
Small bug, Big bang! Jean-Jacques Lévy Iscas & Inria June 1996 After explosion in swamps near Kourou (Guyana) Investigation committee J.-L. Lions, Gilles Kahn at 36th second, the initial reference system
IT 342 Operating Systems Fundamentals Fall 2014 Syllabus
Tuesday 7:20 to 10:00 Bull Run Hall Room 258 James F. Holdener, P.E. Phone: 703 983-2343 (I check this number daily during the week) Email: jholdene@gmu.edu Email is the best method to get hold of me.
11-QA 1 11-QA. Increased cost to distribute modifications Technical reviews. Increased customer support Document reviews
Software Qualities Quality Assurance Maintainer Go Documentation Readable Ce Go Design Functionality Ease of use Ease of learning User Reliability Correctness Efficiency Low Cost Portability Increased
CSE 6329: Special Topics in Advanced Software Engineering. Office. Class. Class Meetings in GS 109. Office hours in NH 306, after class
CSE 6329: Special Topics in Advanced Software Engineering Fall 2008 Monday, Wednesday, 4-5:20 pm, GS 109 Instructor: Christoph Csallner Nedderman Hall 306, 817-272-3334, csallner@uta.edu Office Class Office
Spring 2013 CS 6930 Advanced Topics in Web Security and Privacy - 3 Credit Hours Syllabus and Course Policies
Spring 2013 CS 6930 Advanced Topics in Web Security and Privacy - 3 Credit Hours Syllabus and Course Policies Instructor Chuan Yue Email cyue@uccs.edu Phone 719-255-5155 Course Day & Time Tuesday, Thursday
BRAZOSPORT COLLEGE LAKE JACKSON, TEXAS SYLLABUS ITNW 2405: NETWORK ADMINISTRATION COMPUTER TECHNOLOGY & OFFICE ADMINISTRATION DEPARTMENT
BRAZOSPORT COLLEGE LAKE JACKSON, TEXAS SYLLABUS ITNW 2405: NETWORK ADMINISTRATION COMPUTER TECHNOLOGY & OFFICE ADMINISTRATION DEPARTMENT CATALOG DESCRIPTION ITNW 2405 Network Administration. CIP 1109010007
Clarion University - Venango Campus Course Syllabus
Course Title: Logic & Inquiry Session/Year: Spring 2014 Course Number: PHIL 111-51 Clarion University - Venango Campus Course Syllabus Instructor: Diane Bowser, Ph.D. Instructor Availability Outside of
Software security specification and verification
Software security specification and verification Erik Poll Security of Systems (SoS) group Radboud University Nijmegen Software (in)security specification and verification/detection Erik Poll Security
Chesapeake College. Syllabus. MAT 031 Elementary Algebra (silcox87517) John H. Silcox
Chesapeake College Syllabus MAT 031 Elementary Algebra (silcox87517) John H. Silcox Phone 410-778-4540 (W) Phone 410-348-5370 (H) john.silcox@1972.usna.com Syllabus For MAT 031 I. OFFICE HOURS: One hour
CS 1361-D10: Computer Science I
CS 1361-D10: Computer Science I Instructor Name: Lopamudra Roychoudhuri Instructor Phone Number: (325) 486-5448 Instructor email: lroychoudhuri@angelo.edu Instructor Office: MCS 205E Class Times: Online,