Difference between revisions of "SOEN6441 - fall 2014"
From Dr. Joey Paquet Web Site
(→Lecture Schedule) |
(→Lecture Schedule) |
||
(42 intermediate revisions by one user not shown) | |||
Line 3: | Line 3: | ||
'''SOEN 6441 - Advanced programming practices''' (4 credits) | '''SOEN 6441 - Advanced programming practices''' (4 credits) | ||
− | Problems of writing and managing code. Managing complexity | + | 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== | ==Course Schedule and Contacts== | ||
Line 16: | Line 16: | ||
! {{tableHeaderCell}} | web page | ! {{tableHeaderCell}} | web page | ||
|- | |- | ||
− | || lecture U || <tt>M------</tt> || <tt>14:45-17:30</tt> || <tt>H-431</tt> || Paquet, | + | || lecture U || <tt>M------</tt> || <tt>14:45-17:30</tt> || <tt>H-431</tt> || Paquet, Joey || paquet@encs.concordia.ca || |
|- | |- | ||
− | || office hours D || <tt>-- | + | || office hours D || <tt>---—F--</tt> || <tt>10:00-12:00</tt> || <tt>EV-3-221</tt> || Paquet, Joey || || |
|- | |- | ||
− | || lab hours UI || <tt>M------</tt> || <tt>12:45-14:35</tt> || <tt>H-929</tt> || | + | || lab hours UI || <tt>M------</tt> || <tt>12:45-14:35</tt> || <tt>H-929</tt> || Patel, Jaiminkumar || jai_p@encs.concordia.ca || |
|- | |- | ||
− | || lab hours UJ || <tt>-T-----</tt> || <tt>17:45-19:35</tt> || <tt>H-929</tt> || Ricci, | + | || lab hours UJ || <tt>-T-----</tt> || <tt>17:45-19:35</tt> || <tt>H-929</tt> || Ricci, Daniel || da_ricci@encs.concordia.ca || |
|} | |} | ||
==Lecture Schedule== | ==Lecture Schedule== | ||
+ | NOTE: Links in red are pointing to previous material and will be updated as the semester proceeds. | ||
{| {{simpleTable}} | {| {{simpleTable}} | ||
Line 36: | Line 37: | ||
|| sep 8 | || sep 8 | ||
|| | || | ||
+ | *[[Media:project.SOEN6441.2014.2.pdf|project description]] | ||
|| | || | ||
− | *introduction to the course & project | + | *[[Media:SOEN6441.introduction.ppt|introduction to the course & project]] |
|- | |- | ||
|| week 2 | || week 2 | ||
Line 43: | Line 45: | ||
|| | || | ||
*[sep 19] team lists due | *[sep 19] team lists due | ||
− | |||
|| | || | ||
− | *[[ | + | *[[Media:SOEN6441.process.ppt|software development process]] |
− | + | *[[Media:SOEN6441.extremeprogramming.ppt|extreme programming]] | |
− | *[[ | + | |
|- | |- | ||
|| week 3 | || week 3 | ||
Line 53: | Line 53: | ||
|| | || | ||
|| | || | ||
− | *[[Media:SOEN6441.repository.ppt| | + | *[[Media:SOEN6441.repository.ppt|software repositories]] |
− | *[[ | + | *[[Media:SOEN6441.conventions.ppt|coding conventions]] |
− | *[[Media: | + | *[[Media:SOEN6441.apidocgen.ppt|API documentation generation tools: Javadoc]] |
|- | |- | ||
|| week 4 | || week 4 | ||
|| oct 29 | || oct 29 | ||
|| | || | ||
− | *[[Media:Build1Grading.SOEN6441. | + | *[[Media:Build1Grading.SOEN6441.2014.2.pdf|project build 1 requirements/grading scheme]] |
|| | || | ||
− | *[[Media: | + | *[[Media:SOEN6441.unittesting.ppt|unit testing frameworks: JUnit]] |
− | *[[Media: | + | *[[Media:JUnit3and4.zip|JUnit examples from the slides]] |
+ | *[[Media:JUnitTutorial.zip|tutorial on JUnit in Eclipse]] | ||
|- | |- | ||
|| week 5 | || week 5 | ||
Line 69: | Line 70: | ||
|| | || | ||
|| | || | ||
− | *[[ | + | *[[Media:SOEN6441.MVC.ppt|model view controller architecture and observer pattern]] |
+ | *[[Media:ClockObserverDemo.zip|source code for observer example]] | ||
|- | |- | ||
|| | || | ||
Line 87: | Line 89: | ||
|| oct 27 | || oct 27 | ||
|| | || | ||
− | *[[Project build 1 presentations schedule SOEN6411 Fall 2011| | + | *[[Project build 1 presentations schedule SOEN6411 Fall 2011|project build 1 due (presentations-no lecture)]] |
|| | || | ||
|- | |- | ||
Line 93: | Line 95: | ||
|| nov 3 | || nov 3 | ||
|| | || | ||
− | *[[Media:Build2Grading.SOEN6441. | + | *[[Media:Build2Grading.SOEN6441.2014.2.pdf|project build 2 requirements/grading scheme]] |
|| | || | ||
− | *[[ | + | *[[Media:SOEN6441.patterns.ppt|design patterns in Java]] |
+ | *[[Media:Java Patterns.zip|source code for pattern examples]] | ||
|- | |- | ||
|| week 9 | || week 9 | ||
Line 101: | Line 104: | ||
|| | || | ||
|| | || | ||
− | *[[Media: | + | *[[Media:SOEN6441.codeQuality.ppt|code quality]] |
− | *[[Media: | + | *[[Media:SOEN6441.refactoring.ppt|refactoring]] |
|- | |- | ||
|| week 10 | || week 10 | ||
|| nov 17 | || nov 17 | ||
|| | || | ||
− | *[[Project build 2 presentations schedule | + | *[[Project build 2 presentations schedule SOEN6411 Fall 2014|project build 2 due (presentations-no lecture)]] |
|| | || | ||
|- | |- | ||
Line 113: | Line 116: | ||
|| nov 24 | || nov 24 | ||
|| | || | ||
− | *[[Media:Build3Grading.SOEN6441. | + | *[[Media:Build3Grading.SOEN6441.2014.2.pdf|project build 3 requirements/grading scheme]] |
|| | || | ||
− | *[[Media:SOEN6441. | + | *[[Media:SOEN6441.exceptions.ppt|fault tolerance through exception handling]] |
+ | *[[Media:SOEN6441.code.exceptions.zip|source code for exception examples]] | ||
|- | |- | ||
|| week 12 | || week 12 | ||
Line 121: | Line 125: | ||
|| | || | ||
|| | || | ||
− | *[[Media: | + | *[[Media:SOEN6441.generics.ppt|Java generics]] |
− | *[[Media: | + | *[[Media:SOEN6441.code.generics.zip|source code for Java generics examples]] |
|- | |- | ||
|| week 13 | || week 13 | ||
− | || dec | + | || dec 2 |
|| | || | ||
− | *[[Project final build presentations schedule SOEN6441 Fall | + | *[[Project final build presentations schedule SOEN6441 Fall 2014|project build 3 due (presentation)]] |
|| | || | ||
|- | |- | ||
Line 133: | Line 137: | ||
|| dec 3-18 | || dec 3-18 | ||
|| | || | ||
− | *final examination ( | + | *final examination (December 8th 2014, 14h00-17h00, FGC070 -- confirmed) |
|| | || | ||
|} | |} | ||
Line 140: | Line 144: | ||
*[[Media:Syllabus.SOEN6441.paquet.2014.2.pdf|Course outline]] | *[[Media:Syllabus.SOEN6441.paquet.2014.2.pdf|Course outline]] | ||
+ | *[[SOEN6441 Fall 2014 teams]] | ||
*[https://fis.encs.concordia.ca/eas/ ENCS Electronic Student Submission System] | *[https://fis.encs.concordia.ca/eas/ ENCS Electronic Student Submission System] |
Latest revision as of 14:29, 1 December 2014
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 | instructor | e-mail address | web page |
---|---|---|---|---|---|---|
lecture U | M------ | 14:45-17:30 | H-431 | Paquet, Joey | paquet@encs.concordia.ca | |
office hours D | ---—F-- | 10:00-12:00 | EV-3-221 | Paquet, Joey | ||
lab hours UI | M------ | 12:45-14:35 | H-929 | Patel, Jaiminkumar | jai_p@encs.concordia.ca | |
lab hours UJ | -T----- | 17:45-19:35 | H-929 | Ricci, Daniel | da_ricci@encs.concordia.ca |
Lecture Schedule
NOTE: Links in red are pointing to previous material and will be updated as the semester proceeds.
wk | date | event | topics (tentative) |
---|---|---|---|
week 1 | sep 8 | ||
week 2 | sep 15 |
|
|
week 3 | sep 22 | ||
week 4 | oct 29 | ||
week 5 | oct 6 | ||
oct 13 |
|
||
week 6 | oct 20 |
|
|
week 7 | oct 27 | ||
week 8 | nov 3 | ||
week 9 | nov 10 | ||
week 10 | nov 17 | ||
week 11 | nov 24 | ||
week 12 | dec 1 | ||
week 13 | dec 2 | ||
exam week | dec 3-18 |
|