User Tools

Site Tools


courses:sdm2009:main

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

courses:sdm2009:main [2009/11/22 22:00]
tsay
courses:sdm2009:main [2022/12/09 11:14] (current)
tsay2 [Announcements]
Line 3: Line 3:
  
 ===== Announcements ===== ===== Announcements =====
 +  * Feb. 03: Grade Report available.
 +  * Jan. 15: slides for Linear Temporal Logic available.
 +  * Dec. 24: slides for Automata-Based Model Checking available.
 +  * Dec. 18: slides for Alloy available.
 +  * Dec. 08: old exams and solutions available.
 +  * Dec. 03: slides for UML Part II: Advanced Modeling available.
 +  * Dec. 03: slides for UML Part I and for UML Part II: OCL updated.
 +  * Nov. 26: A note with Example OCL Specifications available.
 +  * Nov. 25: slides for Web Programming and Software Security and for OCL available.
 +  * Nov. 22: slides for Prof. Orna Grumberg'​s lecture on Model Checking available.
   * Nov. 17: slides for Design Patterns available.   * Nov. 17: slides for Design Patterns available.
   * Oct. 22: {{courses:​sdm2009:​hw3.pdf|HW#​3}} due on Oct. 29.   * Oct. 22: {{courses:​sdm2009:​hw3.pdf|HW#​3}} due on Oct. 29.
Line 44: Line 54:
   * **Program Correctness** (1 week: 10/01) \\ axiomatic semantics of programs (//​assertions,​ pre/​post-conditions,​ invariants//​),​ partial and total correctness \\ [slides: {{courses:​sdm2009:​hoare_logic.pdf|Hoare Logic}}; notes: {{courses:​sdm2009:​hoare_logic_rules.pdf|Rules of Hoare Logic}}, {{courses:​sdm2009:​hoare_logic_proofs.pdf|Proofs with Hoare Logic}}]   * **Program Correctness** (1 week: 10/01) \\ axiomatic semantics of programs (//​assertions,​ pre/​post-conditions,​ invariants//​),​ partial and total correctness \\ [slides: {{courses:​sdm2009:​hoare_logic.pdf|Hoare Logic}}; notes: {{courses:​sdm2009:​hoare_logic_rules.pdf|Rules of Hoare Logic}}, {{courses:​sdm2009:​hoare_logic_proofs.pdf|Proofs with Hoare Logic}}]
   * **Model Checking** (1 week: 10/08) \\ Guest Lecturer: [[http://​www.cs.technion.ac.il/​~orna/​|Orna Grumberg]], Technion, Israel \\ [{{http://​www.cs.technion.ac.il/​users/​orna/​final-8-10-Taiwan-MC.ppt|slides}}]   * **Model Checking** (1 week: 10/08) \\ Guest Lecturer: [[http://​www.cs.technion.ac.il/​~orna/​|Orna Grumberg]], Technion, Israel \\ [{{http://​www.cs.technion.ac.il/​users/​orna/​final-8-10-Taiwan-MC.ppt|slides}}]
-  * **UML - Part I** (1 week: 10/15) \\ introduction,​ basics of modeling, overview of the UML, structural modeling (//class diagrams, classifiers,​ interfaces, packages, object diagrams//), behavioral modeling (//​interactions,​ use case diagrams, interaction diagrams, activity diagrams//​),​ architectural modeling (//components, ​collaborations, patterns, frameworks, component diagrams, deployment diagrams//) \\ [{{courses:​sdm2009:​UML_PartOne.pdf|slides}}]+  * **UML - Part I** (1 week: 10/15) \\ introduction,​ basics of modeling, overview of the UML, structural modeling (//class diagrams, classifiers,​ interfaces, packages//​),​ behavioral modeling (//​interactions,​ use case diagrams, interaction diagrams, activity diagrams//​),​ architectural modeling (//​collaborations,​ deployment diagrams//) \\ [{{courses:​sdm2009:​UML_PartOne.pdf|slides}}]
   * **Design Patterns** (4 weeks: 10/22, 10/29, 11/05, 11/12) \\ Guest Lecturers: Jeffrey CH Liu, Clement CW Su, and Jim CL Yu, IBM   * **Design Patterns** (4 weeks: 10/22, 10/29, 11/05, 11/12) \\ Guest Lecturers: Jeffrey CH Liu, Clement CW Su, and Jim CL Yu, IBM
     - introduction (//design document, use case, development tool//) \\ [slides: {{courses:​sdm2009:​version_control.pdf|Version Control}}; notes: {{courses:​sdm2009:​design_document_example.doc|Design Document Example}}]     - introduction (//design document, use case, development tool//) \\ [slides: {{courses:​sdm2009:​version_control.pdf|Version Control}}; notes: {{courses:​sdm2009:​design_document_example.doc|Design Document Example}}]
Line 50: Line 60:
     - structural patterns (//adapter, bridge, composite, flyweight, proxy, decorator, facade//) \\ [slides:​{{courses:​sdm2009:​design_patterns_structural.pdf|Structural Patterns}}]     - structural patterns (//adapter, bridge, composite, flyweight, proxy, decorator, facade//) \\ [slides:​{{courses:​sdm2009:​design_patterns_structural.pdf|Structural Patterns}}]
     - behavioral patterns (//chain of responsibility,​ iterator, observer, mediator, command, memento, state, strategy, template method, interpreter,​ visitor//) \\ [slides:​{{courses:​sdm2009:​design_patterns_behavioral.pdf|Behavioral Patterns}}]     - behavioral patterns (//chain of responsibility,​ iterator, observer, mediator, command, memento, state, strategy, template method, interpreter,​ visitor//) \\ [slides:​{{courses:​sdm2009:​design_patterns_behavioral.pdf|Behavioral Patterns}}]
-  * **Web Programming and Software Security** (1 week: 11/19)\\ dynamic Web pages, client-side scripts, patterns, frameworks, security vulnerabilities,​ vulnerabilities detection and prevention \\ [slides:​{{courses:​sdm2009:​web_patterns.pdf|Patterns for Web Programming}}] +  * **Web Programming and Software Security** (1 week: 11/19)\\ dynamic Web pages, client-side scripts, patterns, frameworks, security vulnerabilities,​ vulnerabilities detection and prevention \\ [slides:​{{courses:​sdm2009:​web_patterns.pdf|Patterns for Web Programming}}, {{courses:​sdm2009:​web_app_security.pdf|Web Application Security}}] 
-  * **UML - Part II** (2 weeks: 11/26, 12/03) \\ advanced behavioral modeling (//events, state machines, processes and threads, ​statechart diagrams//), Object Constraint Language (OCL) \\ [slides:​{{courses:​sdm2009:​UML_PartTwo_OCL.pdf|OCL}};​ notes: {{courses:​sdm2009:​UML_OCL_examples.pdf|OCL Examples}}] +  * **UML - Part II** (2 weeks: 11/26, 12/03) \\ advanced structural modeling (//object diagrams, components//​), ​advanced behavioral modeling (//events, state machines, processes and threads, ​timing constraints//), Object Constraint Language (OCL) \\ [slides: ​{{courses:​sdm2009:​UML_PartTwo_advanced.pdf|Advanced Modeling}},{{courses:​sdm2009:​UML_PartTwo_OCL.pdf|OCL}};​ notes: {{courses:​sdm2009:​UML_OCL_examples.pdf|OCL Examples}}] 
-  * **Software Modeling Tools** (1 week: 12/10)\\ Alloy (software modeling, simulation, and checking)+  * **Software Modeling Tools** (1 week: 12/10)\\ Alloy (software modeling, simulation, and checking) ​\\ [{{courses:​sdm2009:​Alloy.pdf|slides}}]
   * **Midterm (2009/​12/​17)**   * **Midterm (2009/​12/​17)**
-  * **Software Model Checking** (2 weeks: 12/24, 12/31) \\ linear-time model checking (//Kripke structure, linear temporal logic, Büchi automata, automata-theoretic algorithms//​),​ Spin (//Promela, never-claims//​),​ JPF (Java Pathfinder)+  * **Software Model Checking** (2 weeks: 12/24, 12/31) \\ linear-time model checking (//Kripke structure, linear temporal logic, Büchi automata, automata-theoretic algorithms//​),​ Spin (//Promela, never-claims//​),​ JPF (Java Pathfinder) ​\\ [slides: {{courses:​sdm2009:​automata_based.pdf|Automata-Based Model Checking}}, {{courses:​sdm2009:​linear_temporal_logic.pdf|Linear Temporal Logic}}]
   * **Term Project Presentations (2010/​01/​07)**   * **Term Project Presentations (2010/​01/​07)**
   * **Program Verification Tools** (1 week: 01/14) \\ Spec#, JML tools (//Common JML Tools, ESC/​Java2//​)   * **Program Verification Tools** (1 week: 01/14) \\ Spec#, JML tools (//Common JML Tools, ESC/​Java2//​)
Line 76: Line 86:
   - //Temporal Verification of Reactive Systems: Safety//, Z. Manna and A. Pnueli, Springer-Verlag,​ 1995.   - //Temporal Verification of Reactive Systems: Safety//, Z. Manna and A. Pnueli, Springer-Verlag,​ 1995.
   - //The Formal Methods Page: //​http://​formalmethods.wikia.com/​wiki/​Formal_methods,​ J. Bowen. (Note: this Web portal provides links to numerous formal methods and tools.)   - //The Formal Methods Page: //​http://​formalmethods.wikia.com/​wiki/​Formal_methods,​ J. Bowen. (Note: this Web portal provides links to numerous formal methods and tools.)
 +
 +===== Old Exams and Solutions =====
 +
 +[{{courses:​sdm:​mid2004.pdf|Midterm 2004}}, {{courses:​sdm:​mid2004_s.pdf|Solutions}}] \\
 +[{{courses:​sdm:​final2004.pdf|Final 2004}}] \\
 +[{{courses:​sdm:​mid2006.pdf|Midterm 2006}}, {{courses:​sdm:​mid2006_s.pdf|Solutions}}] \\
 +[{{courses:​sdm:​final2006.pdf|Final 2006}}] \\
 +[{{courses:​sdm:​mid2008.pdf|Midterm 2008}}]
courses/sdm2009/main.1258898439.txt.gz · Last modified: 2009/11/22 22:00 by tsay