Class Schedule - Fall 2023 (2231)

Week Topics Activities Due Optional Reading / Resources
1 - Aug 25 Activity #1
  • Activity #1
  • Due: Sep 03
Ch 1-2 in JCIP and Ch 1-2 in PCJVM

2 - Sep 3
  • Activity #2
  • Part 1 Only
Activity #2
Due: Sep 8
Ch 3-4 in JCIP and Ch 3 in PCJVM
3 - Sep 8
  • Activity #3
  • Parts 2 & 3
  • Activity #3
  • Due: Sep 15
Ch 5-6, 8 in JCIP
4 - Sep 15 Activity #4 Activity #4
Due: Sep 22
Ch 13 in JCIP
5 - Sep 22
  • Activity #5
  • Activity #5
  • Due: Sep 29
6 - Sep 29
  • Activity #6
  • Exam 1 Topics - Week 1 - 5
  • Exam Wed 10/1
  • Project 1 Out
  • Activity #6
  • Due: Oct 10
Ch 9 (9.2, 9.3) in PCJVM
7 - Oct 6
8 - Oct 13
  • Activity #7
  • Project 1
  • Due: Oct 17
  • Activity #7
  • Due: Oct 22
Ch 8 (8.1 thru 8.8, 8.13) in PCJVM
(Note: Scala sections are optional)

9 - Oct 20
  • Project 2 Intro
  • Activity #8
  • Activity #8
  • Due: Oct 27
10 - Oct 27 Activity #9
  • Activity #9
  • Due: Nov 10
Actors Motivation
11 - Nov 3
  • Project 2 - Part 1
  • Due: Fri 11/7
12 - Nov 10
  • Exam 2 Wed 11/12
13 - Nov 17
14 - Nov 24
  • Optional Class - Monday
  • Thanksgiving Holiday - NO CLASSES Wed & Fri
15 - Dec 1
  • Mini-Project (Graded In-Class Activity)
  • Project 2 - Part 2
  • Due: Dec 3
16 - Dec 8
  • Exam Discussion
  • Mini-Project Demos/Presentations
17 - TBD
  • FINAL EXAM
  • TBD

Reading Reference Key

ENTER = Enterprise Software Architecture & Design, Dominic Duggan, 2012 (Wiley Books on-line via Wallace Library)
GUIDE = Guide to Reliable Distributed Systems, Kenneth Birman, 2012 (Springer Books on-line via Wallace Library)
JCIP = Java Concurrency in Practice, Brian Goetz, et. al., Addison-Wesley, 2006
PCJVM = Programming Concurrency on the JVM, Venkat Subramaniam, Pragmatic Programmers, 2011
POSA = Pattern-Oriented Software Architecture – Volume 4, A Pattern Language for Distributed Computing, Schmidt, Buschmann & Henney (on Books 24x7)
SCM= Seven Concurrencty Models in Seven Weeks - When Threads Unravel, Paul Butcher, Pragmatic Programmers, 2014

Resources