Difference between revisions of "SOEN6441 - winter 2021"

From Dr. Joey Paquet Web Site
Jump to: navigation, search
(Lecture Schedule)
(Lecture Schedule)
Line 61: Line 61:
 
|| jan 28
 
|| jan 28
 
||
 
||
|| *[[Media:SOEN6441.3.repository.ppt|software repositories]]
+
||  
  *[[Media:SOEN6441.4.conventions.ppt|coding conventions]]
+
*[[Media:SOEN6441.3.repository.ppt|software repositories]]
|| *repositories
+
*[[Media:SOEN6441.4.conventions.ppt|coding conventions]]
 +
||  
 +
*repositories
 
|-
 
|-
 
|| week 4
 
|| week 4
 
|| feb 4
 
|| feb 4
|| *[[Media:Build1Grading.SOEN6441.2021.4.pdf|project build 1 requirements/grading scheme (handout)]]
+
||  
|| *[[Media:SOEN6441.5.apidocgen.ppt|API documentation generation tools: Javadoc]]
+
*[[Media:Build1Grading.SOEN6441.2021.4.pdf|project build 1 requirements/grading scheme (handout)]]
  *[[Media:SOEN6441.6.unittesting.ppt|unit testing frameworks: JUnit]]
+
||  
  *[[Media:JUnit3and4.zip|JUnit examples from the slides]]
+
*[[Media:SOEN6441.5.apidocgen.ppt|API documentation generation tools: Javadoc]]
  *[[Media:JUnitTutorial.zip|tutorial on JUnit in Eclipse]]
+
*[[Media:SOEN6441.6.unittesting.ppt|unit testing frameworks: JUnit]]
|| *Javadoc
+
*[[Media:JUnit3and4.zip|JUnit examples from the slides]]
  *JUnit
+
*[[Media:JUnitTutorial.zip|tutorial on JUnit in Eclipse]]
 +
||  
 +
*Javadoc
 +
*JUnit
 
|-
 
|-
 
|| week 5
 
|| week 5
 
|| feb 11
 
|| feb 11
 
||
 
||
|| *[[Media:SOEN6441.7.MVC.ppt|model view controller architecture and observer pattern]]
+
||  
  *[[Media:ClockObserverDemoJavaObserver.zip|source code for Observer example using (deprecated) Java Observer/Observable]]
+
*[[Media:SOEN6441.7.MVC.ppt|model view controller architecture and observer pattern]]
  *[[Media:ClockObserverDemo.zip|source code for Observer example]]
+
*[[Media:ClockObserverDemoJavaObserver.zip|source code for Observer example using (deprecated) Java Observer/Observable]]
|| *MVC and observer pattern
+
*[[Media:ClockObserverDemo.zip|source code for Observer example]]
 +
||  
 +
*MVC and observer pattern
 
|-
 
|-
 
|| week 6
 
|| week 6
 
|| feb 18
 
|| feb 18
|| *midterm examination <br>[[Media:grades.midterm.online.SOEN6441.paquet.2021.4.pdf|results]]
+
||  
 +
*midterm examination <br>[[Media:grades.midterm.online.SOEN6441.paquet.2021.4.pdf|results]]
 
||
 
||
|| *no lab
+
||  
 +
*no lab
 
|-
 
|-
 
|| week 7
 
|| week 7
 
|| feb 25
 
|| feb 25
|| *project build 1 due (feb 25, 26 - presentations)<br>[[Media:grades.build1.online.SOEN6441.paquet.2021.4.pdf|results]]
+
||  
|| *none
+
*project build 1 due (feb 25, 26 - presentations)<br>[[Media:grades.build1.online.SOEN6441.paquet.2021.4.pdf|results]]
|| *none
+
||  
 +
*none
 +
||  
 +
*none
 
|-
 
|-
 
|| midterm break
 
|| midterm break
Line 103: Line 115:
 
|| week 8
 
|| week 8
 
|| mar 11
 
|| mar 11
|| *[[Media:Build2Grading.SOEN6441.2021.4.pdf|project build 2 requirements/grading scheme (handout)]]
+
||  
|| *[[Media:SOEN6441.8.refactoring.ppt|refactoring]]
+
*[[Media:Build2Grading.SOEN6441.2021.4.pdf|project build 2 requirements/grading scheme (handout)]]
  *[[Media:SOEN6441.9.patterns.ppt|design patterns in Java]]
+
||  
  *[[Media:Java Patterns.zip|source code for pattern examples]]
+
*[[Media:SOEN6441.8.refactoring.ppt|refactoring]]
|| *design patterns - state and adapter
+
*[[Media:SOEN6441.9.patterns.ppt|design patterns in Java]]
 +
*[[Media:Java Patterns.zip|source code for pattern examples]]
 +
||  
 +
*design patterns - state and adapter
 
|-
 
|-
 
|| week 9
 
|| week 9
 
|| mar 18
 
|| mar 18
|| *design patterns - continued
+
||  
|| *design patterns - strategy
+
||
 +
*design patterns - continued
 +
||  
 +
*design patterns - strategy
 
|-
 
|-
 
|| week 10
 
|| week 10
 
|| mar 25
 
|| mar 25
|| *[[project build 2 due (mar 25, 26 - presentations)]] <br>[[Media:grades.build2.online.SOEN6441.paquet.2021.4.pdf|results]]
+
||  
|| *none
+
*[[project build 2 due (mar 25, 26 - presentations)]] <br>[[Media:grades.build2.online.SOEN6441.paquet.2021.4.pdf|results]]
|| *none
+
||  
 +
*none
 +
||  
 +
*none
 
|-
 
|-
 
|| week 11
 
|| week 11
 
|| apr 1
 
|| apr 1
|| *[[Media:Build3Grading.SOEN6441.2021.4.pdf|project build 3 requirements/grading scheme (handout)]]
+
||  
|| *[[Media:SOEN6441.10.exceptions.ppt|fault tolerance through exception handling]]
+
*[[Media:Build3Grading.SOEN6441.2021.4.pdf|project build 3 requirements/grading scheme (handout)]]
  *[[Media:SOEN6441.code.exceptions.zip|source code for exception examples]]
+
||  
|| *exception handling
+
*[[Media:SOEN6441.10.exceptions.ppt|fault tolerance through exception handling]]
 +
*[[Media:SOEN6441.code.exceptions.zip|source code for exception examples]]
 +
||  
 +
*exception handling
 
|-
 
|-
 
|| week 12
 
|| week 12
 
|| apr 8
 
|| apr 8
 
||
 
||
|| *[[Media:SOEN6441.11.generics.ppt|Java generics]]
+
||  
  *[[Media:SOEN6441.code.generics.zip|source code for Java generics examples]]
+
*[[Media:SOEN6441.11.generics.ppt|Java generics]]
|| *java generics
+
*[[Media:SOEN6441.code.generics.zip|source code for Java generics examples]]
 +
||  
 +
*java generics
 
|-
 
|-
 
|| week 13
 
|| week 13
 
|| apr 15
 
|| apr 15
|| *project build 3 due (apr 15, 16- presentations)<br>[[Media:grades.build3.online.SOEN6441.paquet.2019.2.pdf|results]]
+
||  
|| *none
+
*project build 3 due (apr 15, 16- presentations)<br>[[Media:grades.build3.online.SOEN6441.paquet.2019.2.pdf|results]]
|| *none
+
||  
 +
*none
 +
||  
 +
*none
 
|-
 
|-
 
|| exam week
 
|| exam week

Revision as of 21:32, 6 January 2021

Contents

Course Description

SOEN 6441 - Advanced programming practices (4 credits)

Problems of writing and managing code. Managing code complexity and quality through a programming process. Coding conventions. Inline software documentation. Software configuration management. Tools and techniques for testing software. Multithreading concurrency. Code reuse in software development. Quality in coding, fault tolerance. A project. Laboratory: two hours per week.

Course Schedule and Contacts

component day time location name e-mail address
lecture WW ---J---- 17:45-20:15 zoom Joey Paquet paquet@encs.concordia.ca
instructor's office hours --W----- 10:00-12:00 zoom Joey Paquet
lab WW WI ---J--- 20:30-22:20 zoom TBD
lab WW WJ ---J--- 15:45-17:35 zoom TBD
lab WW WK --W---- 20:30-22:20 zoom TBD
marker TBD
marker TBD

Lecture Schedule

wk date event lecture lab
week 1 jan 14
  • no lab
week 2 jan 22
  • team lists due - jan 22
  • introduction
week 3 jan 28
  • repositories
week 4 feb 4
  • Javadoc
  • JUnit
week 5 feb 11
  • MVC and observer pattern
week 6 feb 18
  • no lab
week 7 feb 25
  • project build 1 due (feb 25, 26 - presentations)
    results
  • none
  • none
midterm break mar 1- mar 5
week 8 mar 11
  • design patterns - state and adapter
week 9 mar 18
  • design patterns - continued
  • design patterns - strategy
week 10 mar 25
  • none
  • none
week 11 apr 1
  • exception handling
week 12 apr 8
  • java generics
week 13 apr 15
  • project build 3 due (apr 15, 16- presentations)
    results
  • none
  • none
exam week apr 24 - may 9

Course Material and Resources