Difference between revisions of "SOEN6441 - winter 2024"

From Dr. Joey Paquet Web Site
Jump to: navigation, search
(Lecture Schedule)
(Lecture Schedule)
 
(22 intermediate revisions by one user not shown)
Line 19: Line 19:
 
|| instructor's office hours  || <tt>M-------</tt> || <tt>11:00-13:00</tt> || ER 10-19<br>[https://concordia-ca.zoom.us/j/84565410380 zoom]  || Joey Paquet      ||   
 
|| instructor's office hours  || <tt>M-------</tt> || <tt>11:00-13:00</tt> || ER 10-19<br>[https://concordia-ca.zoom.us/j/84565410380 zoom]  || Joey Paquet      ||   
 
|-
 
|-
|| lab WW WI      || <tt>---J---</tt> || <tt>20:30-22:20</tt> || TBD || Sahota, Pankaj Deep || <tt>pankajdeepsahota2020@gmail.com</tt>
+
|| lab WW WI      || <tt>---J---</tt> || <tt>20:30-22:20</tt> || H-907 || Sahota, Pankaj Deep || <tt>pankajdeepsahota2020@gmail.com</tt>
 
|-
 
|-
|| lab WW WJ      || <tt>---J---</tt> || <tt>15:45-17:35</tt> || TBD || Jafarpour, Hamed    || <tt>jafarpour.ha@gmail.com</tt>
+
|| lab WW WJ      || <tt>---J---</tt> || <tt>15:45-17:35</tt> || H-843 || Jafarpour, Hamed    || <tt>jafarpour.ha@gmail.com</tt>
 
|-
 
|-
|| lab WW WK      || <tt>--W----</tt> || <tt>20:30-22:20</tt> || TBD || Raza, Ahmad Faraz  || <tt>ahmadfaraz123450@gmail.com</tt>
+
|| lab WW WK      || <tt>--W----</tt> || <tt>20:30-22:20</tt> || H-907 || Raza, Ahmad Faraz  || <tt>ahmadfaraz123450@gmail.com</tt>
 +
|-
 +
|| lab WW WL      || <tt>---J---</tt> || <tt>15:45-17:35</tt> || H-847 || Prajapati, Harshil  || <tt>prajapatiharshil3107@gmail.com</tt>
 
|-
 
|-
 
|| marker        ||                  ||                      ||                      || Sahota, Pankaj Deep    || <tt>pankajdeepsahota2020@gmail.com</tt>
 
|| marker        ||                  ||                      ||                      || Sahota, Pankaj Deep    || <tt>pankajdeepsahota2020@gmail.com</tt>
Line 31: Line 33:
 
|| marker        ||                  ||                      ||                      || Raza, Ahmad Faraz  
 
|| marker        ||                  ||                      ||                      || Raza, Ahmad Faraz  
 
|| <tt>ahmadfaraz123450@gmail.com</tt>                 
 
|| <tt>ahmadfaraz123450@gmail.com</tt>                 
|}  
+
|}
  
 
==Lecture Schedule==
 
==Lecture Schedule==
Line 45: Line 47:
 
|| jan 18
 
|| jan 18
 
||  
 
||  
*[ [[Media:Project.SOEN6441.2024.4.pdf| handout ]] ] [ [https://bit.ly/3ovwL8l video] ] project description (handout)
+
*[ [[Media:Project.SOEN6441.2024.4.pdf|handout]] ] [ [https://bit.ly/3ovwL8l video] ] project description (handout)
 
||  
 
||  
*[[Media:SOEN6441.0.introduction.2021.4.ppt|[slides]]] [ [https://bit.ly/2MMvdsw video] ] introduction to the course
+
*[ [[Media:SOEN6441.0.introduction.2024.4.ppt|slides]] ] [ [https://bit.ly/2MMvdsw video] ] introduction to the course and project
 
||  
 
||  
 
*none
 
*none
Line 56: Line 58:
 
*team lists due (jan 26)
 
*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
*[[Media:SOEN6441.2.extremeprogramming.ppt|[slides]]] [ [https://bit.ly/3sDdunP video] ] extreme programming
+
*[ [[Media:SOEN6441.2.extremeprogramming.ppt|slides]] ] [ [https://bit.ly/3sDdunP video] ] extreme programming
 
||  
 
||  
 
*introduction
 
*introduction
Line 64: Line 66:
 
|| feb 1
 
|| feb 1
 
||
 
||
*[[Media:Build1Grading.SOEN6441.2024.4.pdf|[ handout ]]] [ [https://bit.ly/3rldiIt video] ] project build 1 requirements/grading scheme
+
*[ [[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] ] repositories
+
*[ [[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
 
|-
 
|-
 
|| week 4
 
|| week 4
Line 76: Line 78:
 
||  
 
||  
 
||  
 
||  
*[[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
*[[Media:SOEN6441.6.unittesting.ppt|[slides]]] [ [https://bit.ly/3rdLKEQ video] ] [[Media:JUnit3and4.zip|[code]]] unit testing frameworks: JUnit
+
*[ [[Media:SOEN6441.6.unittesting.ppt|slides]] ] [ [https://bit.ly/3rdLKEQ video] ] [[Media:JUnit3and4.zip|[code]]] unit testing frameworks: JUnit
 
||  
 
||  
*[[Media:SOEN6441.lab03.Javadoc.2021.4.pptx|[slides]]] [ [https://concordia.yuja.com/V/Video?v=271897&node=1055802&a=1449572281&autoplay=1 video] ] Javadoc
+
*[ [[Media:SOEN6441.lab03.Javadoc.2021.4.pptx|slides]] ] [ [https://concordia.yuja.com/V/Video?v=271897&node=1055802&a=1449572281&autoplay=1 video] ] Javadoc
*[[Media:SOEN6441.lab03.JUnit.2021.4.pptx|[slides]]] [ [https://concordia.yuja.com/V/Video?v=271155&node=1053832&a=1015456312&autoplay=1 video] ] [ [[Media:JUnitTutorial.zip|tutorial]] ] JUnit
+
*[ [[Media:SOEN6441.lab03.JUnit.2021.4.pptx|slides]] ] [ [https://concordia.yuja.com/V/Video?v=271155&node=1053832&a=1015456312&autoplay=1 video] ] [ [[Media:JUnitTutorial.zip|tutorial]] ] JUnit
 
|-
 
|-
 
|| week 5
 
|| week 5
 
|| feb 15
 
|| feb 15
 
||
 
||
*practice examination (see moodle)
+
*practice examination during labs (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
+
*practice examination
 
|-
 
|-
 
|| week 6
 
|| week 6
Line 132: Line 134:
 
*project build 2 due (mar 17) (see moodle)
 
*project build 2 due (mar 17) (see moodle)
 
*[schedule] project build 2 presentations (mar 18-20)  
 
*[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:Build3Grading.SOEN6441.2024.4.pdf|handout]] ] [ [https://bit.ly/3ethJ0Q video] ] project build 3 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 - strategy and adapter pattern
 
||  
 
||  
 
*[ [[Media:SOEN6441.lab09.strategy-adapter-patterns.2021.4.pptx|slides]] ] [ [https://concordia.yuja.com/V/Video?v=308656&node=1139820&a=1245114870&autoplay=1 video] ] [ [[Media:SOEN6441.strategy-adapter.2021.4.zip|code]] ] design patterns - strategy and adapter
 
*[ [[Media:SOEN6441.lab09.strategy-adapter-patterns.2021.4.pptx|slides]] ] [ [https://concordia.yuja.com/V/Video?v=308656&node=1139820&a=1245114870&autoplay=1 video] ] [ [[Media:SOEN6441.strategy-adapter.2021.4.zip|code]] ] design patterns - strategy and adapter
Line 158: Line 160:
 
||
 
||
 
*project build 3 due (apr 9) (see moodle)
 
*project build 3 due (apr 9) (see moodle)
*[schedule] project build 2 presentations (apr 10-12)  
+
*[https://docs.google.com/spreadsheets/d/1cVtgFRLAteOGhN8OTKMO_KC4H14I5vHZPR_d8b2akW0/edit#gid=1074696973 schedule] project build 3 presentations (apr 10-12)  
||
+
||  
 +
*none - contact hours with the instructor for project demonstrations
 +
||
 +
*final examination practice (see moodle quiz)
 
|-
 
|-
 
|| exam week
 
|| exam week
 
||apr 18 - may 1
 
||apr 18 - may 1
 
||
 
||
*final examination (TBD)  
+
*final examination (April 25th, 19h00-22h00)  
 
||
 
||
 
||
 
||
Line 171: Line 176:
 
==Course Material and Resources==
 
==Course Material and Resources==
  
*[[Media:Syllabus.SOEN6441.paquet.2021.4.pdf|Course outline]]
+
*[[Media:Syllabus.SOEN6441.paquet.2024.4.pdf|Course outline]]
 
*[https://fis.encs.concordia.ca/eas/ ENCS Electronic Student Submission System]
 
*[https://fis.encs.concordia.ca/eas/ ENCS Electronic Student Submission System]
*[https://www.concordia.ca/ginacody/students/course-schedules/winter-2020-2021.html ENCS Lectures and Labs Schedules ]
 

Latest revision as of 13:33, 12 April 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 H-907 Sahota, Pankaj Deep pankajdeepsahota2020@gmail.com
lab WW WJ ---J--- 15:45-17:35 H-843 Jafarpour, Hamed jafarpour.ha@gmail.com
lab WW WK --W---- 20:30-22:20 H-907 Raza, Ahmad Faraz ahmadfaraz123450@gmail.com
lab WW WL ---J--- 15:45-17:35 H-847 Prajapati, Harshil prajapatiharshil3107@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
  • [ slides ] [ video ] introduction to the course and project
  • none
week 2 jan 25
  • team lists due (jan 26)
  • introduction
week 3 feb 1
  • [ handout ] [ video ] project build 1 requirements/grading scheme
week 4 feb 8
week 5 feb 15
  • practice examination during labs (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 3 requirements/grading scheme
  • [ slides ] [ video ] [ code ] design patterns - strategy and adapter pattern
week 10 mar 28
week 11 apr 4
week 12 apr 11
  • project build 3 due (apr 9) (see moodle)
  • schedule project build 3 presentations (apr 10-12)
  • none - contact hours with the instructor for project demonstrations
  • final examination practice (see moodle quiz)
exam week apr 18 - may 1
  • final examination (April 25th, 19h00-22h00)

Course Material and Resources