Difference between revisions of "SOEN6441 - winter 2024"

From Dr. Joey Paquet Web Site
Jump to: navigation, search
(Lecture Schedule)
Line 54: Line 54:
 
|| jan 25
 
|| jan 25
 
||  
 
||  
*team lists due - jan 22
+
*team lists due (jan 26)
 
||  
 
||  
 
*[[Media:SOEN6441.1.process.ppt|[slides]]] [ [https://bit.ly/38YTrbJ video] ] software development process
 
*[[Media:SOEN6441.1.process.ppt|[slides]]] [ [https://bit.ly/38YTrbJ video] ] software development process
Line 64: Line 64:
 
|| feb 1
 
|| feb 1
 
||
 
||
 +
*[[Media:Build1Grading.SOEN6441.2024.4.pdf|[handout]]] [ [https://bit.ly/3rldiIt video] ] project build 1 requirements/grading scheme
 
||  
 
||  
 
*[[Media:SOEN6441.3.repository.ppt|[slides]]] [ [https://bit.ly/3chX1zI video] ] revision control systems
 
*[[Media:SOEN6441.3.repository.ppt|[slides]]] [ [https://bit.ly/3chX1zI video] ] revision control systems
 
*[[Media:SOEN6441.4.conventions.ppt|[slides]]] [ [https://bit.ly/3iQRH7M video] ] coding conventions
 
*[[Media:SOEN6441.4.conventions.ppt|[slides]]] [ [https://bit.ly/3iQRH7M video] ] coding conventions
 
||  
 
||  
*[[Media:SOEN6441.lab02.repositories.2021.4.pptx|[slides]]] [ [https://concordia.yuja.com/V/Video?v=264123&node=1037383&a=1604069730&autoplay=1 video] ] revision control systems
+
*[[Media:SOEN6441.lab02.repositories.2021.4.pptx|[slides]]] [ [https://concordia.yuja.com/V/Video?v=264123&node=1037383&a=1604069730&autoplay=1 video] ] repositories
 
*[[Media:SOEN6441.lab02.continuousintergration.2021.4.pptx|[slides]]] [ [https://concordia.yuja.com/V/Video?v=264123&node=1039799&a=1604069730&autoplay=1 video] ] continuous integration
 
*[[Media:SOEN6441.lab02.continuousintergration.2021.4.pptx|[slides]]] [ [https://concordia.yuja.com/V/Video?v=264123&node=1039799&a=1604069730&autoplay=1 video] ] continuous integration
 
|-
 
|-
Line 74: Line 75:
 
|| feb 8
 
|| feb 8
 
||  
 
||  
*[[Media:Build1Grading.SOEN6441.2021.4.pdf|[handout]]] [ [https://bit.ly/3rldiIt video] ] project build 1 requirements/grading scheme
 
 
||  
 
||  
 
*[[Media:SOEN6441.5.apidocgen.ppt|[slides]]] [ [https://bit.ly/3rtv8cz video] ] API documentation generation tools: Javadoc
 
*[[Media:SOEN6441.5.apidocgen.ppt|[slides]]] [ [https://bit.ly/3rtv8cz video] ] API documentation generation tools: Javadoc
Line 85: Line 85:
 
|| feb 15
 
|| feb 15
 
||
 
||
 +
*practice examination (see moodle)
 
||  
 
||  
 
*[[Media:SOEN6441.7.MVC.ppt|[slides]]] [ [https://bit.ly/3cZxWtP video] ] [[Media:ClockMVCDemo.zip|[code]]] model view controller architecture and observer pattern
 
*[[Media:SOEN6441.7.MVC.ppt|[slides]]] [ [https://bit.ly/3cZxWtP video] ] [[Media:ClockMVCDemo.zip|[code]]] model view controller architecture and observer pattern
 
||  
 
||  
 
*[[Media:SOEN6441.lab04.MVC.2021.4.pptx|[slides]]] [ [https://concordia.yuja.com/V/Video?v=279219&node=1071566&a=572515194&autoplay=1 video] ] [[Media:ClockMVCDemo.zip|[code]]] MVC and observer pattern
 
*[[Media:SOEN6441.lab04.MVC.2021.4.pptx|[slides]]] [ [https://concordia.yuja.com/V/Video?v=279219&node=1071566&a=572515194&autoplay=1 video] ] [[Media:ClockMVCDemo.zip|[code]]] MVC and observer pattern
 +
*practice examination during labs
 
|-
 
|-
 
|| week 6
 
|| week 6
 
|| feb 22
 
|| feb 22
||
 
*midterm examination
 
 
||
 
||
*none
+
*project build 1 due (feb 18) (see moodle)
 +
*[schedule] project build 1 presentations (feb 19-21)
 +
*[ [[Media:Build2Grading.SOEN6441.2024.4.pdf|handout]] ] [ [https://bit.ly/3ethJ0Q video] ] project build 2 requirements/grading scheme
 +
||
 +
*[ [[Media:SOEN6441.8.refactoring.ppt|slides]] ] [ [https://bit.ly/30x16sA video] ] refactoring
 +
*[ [[Media:SOEN6441.9.patterns.ppt|slides]] ] [ [https://bit.ly/3v73ZOZ video] ] [ [[Media:SOEN6441.source.state-command.paquet.2021.4.zip|code]] ] design patterns - introduction/concept
 
||  
 
||  
*none
+
*programmer on duty
 
|-
 
|-
 
|| midterm break
 
|| midterm break
Line 108: Line 113:
 
|| mar 7
 
|| mar 7
 
||  
 
||  
*project build 1 due (feb 25, 26 - presentations)
+
*midterm examination (mar 7) (see moodle)
 
||  
 
||  
*none
+
*midterm examination is held during lecture time
 
||  
 
||  
 
*none
 
*none
Line 117: Line 122:
 
|| mar 14
 
|| mar 14
 
||  
 
||  
*[ [[Media:Build2Grading.SOEN6441.2021.4.pdf|handout]] ] [ [https://bit.ly/3ethJ0Q video] ] project build 2 requirements/grading scheme
+
||
||
+
*[ [[Media:SOEN6441.9.patterns.ppt|slides]] ] [ [https://bit.ly/3v73ZOZ video] ] [ [[Media:SOEN6441.source.state-command.paquet.2021.4.zip|code]] ] design patterns - state and command  
*[ [[Media:SOEN6441.8.refactoring.ppt|slides]] ] [ [https://bit.ly/30x16sA video] ] refactoring
+
*[ [[Media:SOEN6441.9.patterns.ppt|slides]] ] [ [https://bit.ly/3v73ZOZ video] ] [ [[Media:SOEN6441.source.state-command.paquet.2021.4.zip|code]] ] design patterns - state and command pattern
+
 
||  
 
||  
 
*[ [[Media:SOEN6441.lab07.design-command-patterns.ppt|slides]] ] [ [https://concordia.yuja.com/V/Video?v=301574&node=1130682&a=1024526759&autoplay=1 video] ] [ [[Media:SOEN6441.source.state-command.paquet.2021.4.zip|code]] ] design patterns - state and command
 
*[ [[Media:SOEN6441.lab07.design-command-patterns.ppt|slides]] ] [ [https://concordia.yuja.com/V/Video?v=301574&node=1130682&a=1024526759&autoplay=1 video] ] [ [[Media:SOEN6441.source.state-command.paquet.2021.4.zip|code]] ] design patterns - state and command
Line 127: Line 130:
 
|| mar 21
 
|| mar 21
 
||  
 
||  
 +
*project build 2 due (mar 17) (see moodle)
 +
*[schedule] project build 2 presentations (mar 18-20)
 +
*[ [[Media:Build3Grading.SOEN6441.2024.4.pdf|handout]] ] [ [https://bit.ly/3ethJ0Q video] ] project build 2 requirements/grading scheme
 
||
 
||
 
*[ [[Media:SOEN6441.9.patterns.ppt|slides]] ] [ [https://bit.ly/2P4zxok video] ] [ [[Media:SOEN6441.source.adapter-strategy.paquet.2021.4.zip|code]] ] design patterns - adapter and strategy pattern
 
*[ [[Media:SOEN6441.9.patterns.ppt|slides]] ] [ [https://bit.ly/2P4zxok video] ] [ [[Media:SOEN6441.source.adapter-strategy.paquet.2021.4.zip|code]] ] design patterns - adapter and strategy pattern
Line 135: Line 141:
 
|| mar 28
 
|| mar 28
 
||  
 
||  
*project build 2 due (mar 25, 26 - presentations)
 
 
||  
 
||  
*none
+
*[ [[Media:SOEN6441.10.exceptions.ppt|slides]] ] [ [https://bit.ly/3rLbo3S video] ] [ [[Media:SOEN6441.code.exceptions.zip|code]] ] fault tolerance through exception handling
 
||  
 
||  
*none
+
*[ [[Media:SOEN6441.lab11.exception-handling.2021.4.pptx|slides]] ] [ [https://concordia.yuja.com/V/Video?v=323353&node=1182285&a=1697622741&autoplay=1 video] ] [ [[Media:SOEN6441.code.exceptions.zip|code]] ] exception handling
 
|-
 
|-
 
|| week 11
 
|| week 11
 
|| apr 4
 
|| apr 4
 
||  
 
||  
*[ [[Media:Build3Grading.SOEN6441.2021.4.pdf|handout]] ] [ [https://bit.ly/31CNyMM video] ] project build 3 requirements/grading scheme
 
 
||  
 
||  
*[ [[Media:SOEN6441.10.exceptions.ppt|slides]] ] [ [https://bit.ly/3rLbo3S video] ] [ [[Media:SOEN6441.code.exceptions.zip|code]] ] fault tolerance through exception handling
+
*[ [[Media:SOEN6441.11.generics.ppt|slides]] ] [ [https://bit.ly/31SdggI video] ] [ [[Media:SOEN6441.code.generics.zip|code]] ] Java generics
 
||  
 
||  
*[ [[Media:SOEN6441.lab11.exception-handling.2021.4.pptx|slides]] ] [ [https://concordia.yuja.com/V/Video?v=323353&node=1182285&a=1697622741&autoplay=1 video] ] [ [[Media:SOEN6441.code.exceptions.zip|code]] ] exception handling
+
*[ [[Media:SOEN6441.lab12.generics.2021.4.ppt|slides]] ] [ [https://concordia.yuja.com/Dashboard/Permalink?authCode=748164266&b=338734&linkType=video video] ] [ [[Media:SOEN6441.code.generics.zip|code]] ] java generics
 
|-
 
|-
 
|| week 12
 
|| week 12
 
|| apr 11
 
|| apr 11
 
||
 
||
||
+
*project build 3 due (apr 9) (see moodle)
*[ [[Media:SOEN6441.11.generics.ppt|slides]] ] [ [https://bit.ly/31SdggI video] ] [ [[Media:SOEN6441.code.generics.zip|code]] ] Java generics
+
*[schedule] project build 2 presentations (apr 10-12)  
||
+
||
*[ [[Media:SOEN6441.lab12.generics.2021.4.ppt|slides]] ] [ [https://concordia.yuja.com/Dashboard/Permalink?authCode=748164266&b=338734&linkType=video video] ] [ [[Media:SOEN6441.code.generics.zip|code]] ] java generics
+
|-
+
|| week 13
+
|| XXXXXXXX
+
||
+
*project build 3 due (apr 15, 16- presentations)
+
||  
+
*none
+
||
+
*none
+
 
|-
 
|-
 
|| exam week
 
|| exam week

Revision as of 17:00, 14 January 2024

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 H-531 Joey Paquet paquet@encs.concordia.ca
instructor's office hours M------- 11:00-13:00 ER 10-19
zoom
Joey Paquet
lab WW WI ---J--- 20:30-22:20 TBD Sahota, Pankaj Deep pankajdeepsahota2020@gmail.com
lab WW WJ ---J--- 15:45-17:35 TBD Jafarpour, Hamed jafarpour.ha@gmail.com
lab WW WK --W---- 20:30-22:20 TBD Raza, Ahmad Faraz ahmadfaraz123450@gmail.com
marker Sahota, Pankaj Deep pankajdeepsahota2020@gmail.com
marker Jafarpour, Hamed jafarpour.ha@gmail.com
marker Raza, Ahmad Faraz ahmadfaraz123450@gmail.com

Lecture Schedule

wk date event/handout lecture lab
week 1 jan 18
  • none
week 2 jan 25
  • team lists due (jan 26)
  • introduction
week 3 feb 1
week 4 feb 8
week 5 feb 15
  • practice examination (see moodle)
week 6 feb 22
  • project build 1 due (feb 18) (see moodle)
  • [schedule] project build 1 presentations (feb 19-21)
  • [ handout ] [ video ] project build 2 requirements/grading scheme
  • programmer on duty
midterm break feb 26 - mar 3
week 7 mar 7
  • midterm examination (mar 7) (see moodle)
  • midterm examination is held during lecture time
  • none
week 8 mar 14
week 9 mar 21
  • project build 2 due (mar 17) (see moodle)
  • [schedule] project build 2 presentations (mar 18-20)
  • [ handout ] [ video ] project build 2 requirements/grading scheme
  • [ slides ] [ video ] [ code ] design patterns - adapter and strategy pattern
week 10 mar 28
week 11 apr 4
week 12 apr 11
  • project build 3 due (apr 9) (see moodle)
  • [schedule] project build 2 presentations (apr 10-12)
exam week apr 18 - may 1
  • final examination (apr 29 - 9h00-12h00am - confirmed)

Course Material and Resources