User Tools

Site Tools


courses:sdm2023:main

Differences

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

Link to this comparison view

courses:sdm2023:main [2023/03/15 14:41]
tsay2 [Syllabus/Schedule (with links to slides/notes)]
courses:sdm2023:main [2023/06/16 17:57] (current)
tsay2 [Announcements]
Line 3: Line 3:
  
 ===== Announcements ===== ===== Announcements =====
 +  * 06/16: {{courses:​sdm2023:​sdm2023grade_termproject.pdf|scores of term project}}.
 +  * 06/07: {{courses:​sdm2023:​sdm2023final.pdf|final exam}} due 5:20PM 06/07.
 +  * 05/24: {{courses:​sdm2023:​hw5.pdf|HW#​5}} due 23:59PM 06/06.
 +  * 05/24: slides for Formal Logic, Hoare Logic, and Frama-C and ACSL available.
 +  * 05/16: suggested solutions to {{courses:​sdm2023:​hw3_s.pdf|HW#​3}} and {{courses:​sdm2023:​hw4_s.pdf|HW#​4}} available.
 +  * 05/10: slides for Software Testing available.
 +  * 05/09: review forms for the second preliminary demo presentations:​ {{courses:​sdm2023:​Presentations_demo2.docx|Evaluation by Individual Reviewer}} and {{courses:​sdm2023:​Presentations_demo2_comments.docx|Group-for-Group Comments}}.
 +  * 04/26: {{courses:​sdm2023:​hw4.pdf|HW#​4}} due 2:00PM 05/03.
 +  * 04/12: slides for Web Application Security available.
 +  * 04/12: review forms for the first preliminary demo presentations:​ {{courses:​sdm2023:​Presentations_demo1.docx|Evaluation by Individual Reviewer}} and {{courses:​sdm2023:​Presentations_demo1_comments.docx|Group-for-Group Comments}}.
 +  * 03/29: {{courses:​sdm2023:​hw3.pdf|HW#​3}} due 2:20PM 04/06.
 +  * 03/29: slides for Domain Modeling available (revised 04/​02). ​
 +  * 03/22: slides for Design Document and an example design document available.
 +  * 03/17: review forms for the proposal presentations:​ {{courses:​sdm2023:​Presentations_proposal.docx|Evaluation by Individual Reviewer}} and {{courses:​sdm2023:​Presentations_proposal_comments.docx|Group-for-Group Comments}}.
   * 03/15: slides for Advanced Web Programming available.   * 03/15: slides for Advanced Web Programming available.
   * 03/09: {{courses:​sdm2023:​termproject.pdf|Term Project}} finalized.   * 03/09: {{courses:​sdm2023:​termproject.pdf|Term Project}} finalized.
Line 19: Line 33:
  
 ===== Guest Speakers ===== ===== Guest Speakers =====
-Jeffrey CH Liu (劉智雄, Appier), Clement CW Su (蘇志文, IBM), Scar Su (蘇瑞亨, 叡揚), Chih-Pin Tai (戴智斌, 創炎/​Traiwan出來玩),​ Ming-Hsien Tsai (蔡明憲, ​Academia Sinica), and Ching-Lin Yu (游景麟, Google).+Jeffrey CH Liu (劉智雄, Appier), Clement CW Su (蘇志文, IBM), Scar Su (蘇瑞亨, 叡揚), Chih-Pin Tai (戴智斌, 創炎/​Traiwan出來玩),​ Ming-Hsien Tsai (蔡明憲, ​國家資通安全研究院), and Ching-Lin Yu (游景麟, Google).
  
 ===== Lectures ===== ===== Lectures =====
Line 52: Line 66:
   * **Software Modeling: UML Diagrams** (2/3 week: 03/08a) \\ Structural modeling (//class diagrams, classifiers,​ interfaces, packages//​),​ behavioral modeling (//​interactions,​ use case diagrams, interaction diagrams, activity diagrams//​),​ architectural modeling (//​collaborations,​ deployment diagrams//​),​ advanced structural modeling (//object diagrams, components//​),​ advanced behavioral modeling (//events, state machines, processes and threads, timing constraints//​) \\ [{{courses:​sdm2023:​UML_diagrams.pptx|slides}}]   * **Software Modeling: UML Diagrams** (2/3 week: 03/08a) \\ Structural modeling (//class diagrams, classifiers,​ interfaces, packages//​),​ behavioral modeling (//​interactions,​ use case diagrams, interaction diagrams, activity diagrams//​),​ architectural modeling (//​collaborations,​ deployment diagrams//​),​ advanced structural modeling (//object diagrams, components//​),​ advanced behavioral modeling (//events, state machines, processes and threads, timing constraints//​) \\ [{{courses:​sdm2023:​UML_diagrams.pptx|slides}}]
   * **Productivity Tools: Chrome DevTools** (1/3 week: 03/​08b) ​ [{{courses:​sdm2023:​ChromeDevTools.pptx|slides}}]   * **Productivity Tools: Chrome DevTools** (1/3 week: 03/​08b) ​ [{{courses:​sdm2023:​ChromeDevTools.pptx|slides}}]
-  * **Software Implementation:​ Web Programming ​Pearls** (1 week: 03/15) [{{courses:​sdm2021:​WebProgrammingBasics.pptx|basics}},​ {{courses:​sdm2023:​WebProgrammingAdvanced.pptx|advanced}},​{{courses:​sdm2022:​examples.zip|examples}}]+  * **Software Implementation: ​Advanced ​Web Programming** (1 week: 03/15) [{{courses:​sdm2021:​WebProgrammingBasics.pptx|basics}},​ {{courses:​sdm2023:​WebProgrammingAdvanced.pptx|advanced}},​{{courses:​sdm2022:​examples.zip|examples}}]
   * **Term Project: Proposal Presentations** (1/3 week: 03/22a) \\   * **Term Project: Proposal Presentations** (1/3 week: 03/22a) \\
-  * **Software Development Practice: Design Document** (2/3 week: 03/22b) \\ Design document introduction,​ high level design document, implementation level design document, design document for agile development \\ [{{courses:​sdm2023:​DesignDocIntroduction.ppt|slides}},​ {{courses:​sdm2023:​DesignDocSimpleExample.doc|An Example Design Document}}]+  * **Software Development Practice: Design Document** (2/3 week: 03/22b) \\ Design document introduction,​ high level design document, implementation level design document, design document for agile development \\ [{{courses:​sdm2023:​DesignDocIntroduction.ppt|slides}},​ {{courses:​sdm2023:​DesignDocumentSimpleExample.doc|An Example Design Document}}]
   * **Software Modeling: Domain Modeling** (1 week: 03/29) \\ Introduction,​ mathematical preliminaries,​ and basic and higher abstractions [{{courses:​sdm2023:​domain_modeling.pdf|slides}}]\\   * **Software Modeling: Domain Modeling** (1 week: 03/29) \\ Introduction,​ mathematical preliminaries,​ and basic and higher abstractions [{{courses:​sdm2023:​domain_modeling.pdf|slides}}]\\
   * **Term Project: First Preliminary Demos** (1/3 week: 04/12a) \\   * **Term Project: First Preliminary Demos** (1/3 week: 04/12a) \\
   * **Software Security: Web Application Security** (2/3 week: 04/12b) \\ Dynamic Web pages, client-side scripts, security vulnerabilities,​ vulnerabilities detection and prevention \\ [{{courses:​sdm2023:​web_app_security.pptx|slides}}]   * **Software Security: Web Application Security** (2/3 week: 04/12b) \\ Dynamic Web pages, client-side scripts, security vulnerabilities,​ vulnerabilities detection and prevention \\ [{{courses:​sdm2023:​web_app_security.pptx|slides}}]
   * **Productivity Tools: Debuggers** (1/3 week: 04/​19a) ​ [{{https://​docs.google.com/​presentation/​d/​1e0uAAo2PBaPnvvyrOh0JHq486AbWINnlsM-WY5F-EPk/​edit?​usp=sharing|slides}}]   * **Productivity Tools: Debuggers** (1/3 week: 04/​19a) ​ [{{https://​docs.google.com/​presentation/​d/​1e0uAAo2PBaPnvvyrOh0JHq486AbWINnlsM-WY5F-EPk/​edit?​usp=sharing|slides}}]
-  * **Software Design: Design Patterns** (1 and 2/3 weeks: 04/19b, 04/26) \\ Why design patterns, introduction to creational, structural, and behavioral patterns, GoF patterns \\ [{{https://​docs.google.com/​presentation/​d/​1XuFer-lraljLGrcm4R_Qnh50Lrpw_h3WqzVih3PZUec/edit?usp=sharing|slides}}, {{courses:​sdm2023:​DesignPatternsSampleCPP.zip|code examples}}]+  * **Software Design: Design Patterns** (1 and 2/3 weeks: 04/19b, 04/26) \\ Why design patterns, introduction to creational, structural, and behavioral patterns, GoF patterns \\ [{{https://​docs.google.com/​presentation/​d/​1tai4j8lgdNp0yezSeylELfC6GoWlUTIt2hHcdWszDg4/edit#slide=id.p|slides}}, {{courses:​sdm2023:​DesignPatternsSampleCPP.zip|code examples}}]
   * **Software Development Practice: Agile Development in Practice** (1 week: 05/03) \\ Principles for building an agile team, essentials of scrum, kanban, and scrumban, DevOps, and engineering culture\\ [{{https://​docs.google.com/​presentation/​d/​1lG45YaSdTQW40LhdkX8QSCvsR2bxXRM5qD9gJUBn8I4/​edit#​slide=id.p|slides}}]   * **Software Development Practice: Agile Development in Practice** (1 week: 05/03) \\ Principles for building an agile team, essentials of scrum, kanban, and scrumban, DevOps, and engineering culture\\ [{{https://​docs.google.com/​presentation/​d/​1lG45YaSdTQW40LhdkX8QSCvsR2bxXRM5qD9gJUBn8I4/​edit#​slide=id.p|slides}}]
   * **Term Project: Second Preliminary Demos** (1/3 week: 05/10a) \\    * **Term Project: Second Preliminary Demos** (1/3 week: 05/10a) \\ 
   * **Midterm Discussions** (or Make-Up Lecture) (2/3 week: 05/10b)   * **Midterm Discussions** (or Make-Up Lecture) (2/3 week: 05/10b)
   * **Software Verification:​ Testing** (1 week: 05/17) \\ [{{courses:​sdm2023:​software_testing.pptx|slides}}]   * **Software Verification:​ Testing** (1 week: 05/17) \\ [{{courses:​sdm2023:​software_testing.pptx|slides}}]
-  * ** Formal Specification:​ Formal Logic and Correctness Requirements** (.5 week: 05/24a) \\ Propositional ​and first-order logics (//​propositions,​ proofs, theorems, predicates, models//)\\ [{{courses:​sdm2023:​logic.pdf|slides}}]  +  * ** Formal Specification:​ Formal Logic and Correctness Requirements** (.5 week: 05/24a) \\ Motivation, program correctness,​ propositional ​and first-order logics (//​propositions,​ proofs, theorems, predicates, models//)\\ [{{courses:​sdm2023:​logic.pdf|slides}}]  
-  * **Formal Verification:​ Verification of Programs with Frama-C and ACSL** (.5 week: 05/24b) \\ [{{courses:​sdm2023:​frama-c_acsl.pdf|slides}}]+  * **Formal Verification:​ Verification of Programs with Frama-C and ACSL** (.5 week: 05/24b) \\ [slides: {{courses:​sdm2023:​hoare_logic.pdf|Hoare Logic}}, ​{{courses:​sdm2023:​frama-c_acsl.pdf|Frama-C and ACSL}}]
   * **Term Project: Final Presentations (2023/​05/​31)**   * **Term Project: Final Presentations (2023/​05/​31)**
   * **Final Exam (2023/​06/​07)**   * **Final Exam (2023/​06/​07)**
courses/sdm2023/main.1678862464.txt.gz · Last modified: 2023/03/15 14:41 by tsay2