User Tools

Site Tools


course_outline

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
course_outline [2022/02/15 17:01] bilcourse_outline [2022/03/30 18:25] (current) bil
Line 5: Line 5:
 Study materials and lab tasks will be posted here. Study materials and lab tasks will be posted here.
  
 +--></html>
  
-====== Week 11 (to be completed by Wednesday, April 7) ======+====== Week 11 (to be completed by Wednesday, April 6) ======
  
 ==== Due ==== ==== Due ====
  
-The only due item this week is your Peer Assessment 4 feedback on the design documents you have received, due on Wednesday, April 7.+The only due item this week is your Peer Assessment 4 feedback on the design documents you have received, due on Wednesday, April 6.
  
-You should of course be working towards completing your project so you can present all its features at the last progress report meeting that will take place this week.+You should of course be working towards completing your project so you can present all its features at the progress report meeting that will take place this week, similar to what we did prior to the midterm submissionThese meetings will take place on either Monday or Wednesday using the **lecture Zoom link** as follows: 
 + 
 +=== Monday, April 4 === 
 +  
 +  * 11:30 - 11:40 Discussion with the whole class as usual 
 +  * 11:40 - 12:00 Group 1 
 +  * 12:00 - 12:20 Group 3 
 +  * 12:20 - 12:40 Group 5 
 +  * 12:40 - 13:00 Group 6 
 +  * 13:00 - 13:20 Group 7 
 + 
 +=== Wednesday, April 6 === 
 + 
 +  * 11:30 - 11:40 Discussion with the whole class as usual 
 +  * 11:40 - 12:00 Group 8 
 +  * 12:00 - 12:20 Group 9 
 +  * 12:20 - 12:40 Group 11 
 +  * 12:40 - 13:00 Group 12 
 +  * 13:00 - 13:20 Group 13
  
-There is no lab task, but the TAs will be available for any make up lab tasks necessary. 
  
 ==== Study material ==== ==== Study material ====
Line 23: Line 41:
  
 For more on refactoring, you can watch this [[https://echo360.ca/media/8cd73b73-479e-433e-bd76-aa1f09d0098b/public|instructor video]] on it. Feel free to do this after the term is finished. For more on refactoring, you can watch this [[https://echo360.ca/media/8cd73b73-479e-433e-bd76-aa1f09d0098b/public|instructor video]] on it. Feel free to do this after the term is finished.
 +
 +Click [[https://echo360.ca/media/a3c2cf5e-6e2a-4970-b694-a00e8f81a4cd/public|here]] for the lecture video.
  
 ==== Lab task ==== ==== Lab task ====
  
-There is no lab task, but the TAs will be available for any make up lab tasks necessary.+There is no lab task, but a TA will be available in the lab on Monday for any questions you may have.
  
 ==== Weekly goals ==== ==== Weekly goals ====
Line 32: Line 52:
   - Learn about refactoring   - Learn about refactoring
   - Provide feedback on the design documents you received before the deadline   - Provide feedback on the design documents you received before the deadline
-  - Prepare for the last progress report meeting with the customer+  - Prepare for the progress report meeting with the customer
   - All requirements must be implemented and tested   - All requirements must be implemented and tested
   - Documents are being finalized   - Documents are being finalized
  
-====== Week 10 (to be completed by Wednesday, March 31) ======+ 
 + 
 + 
 + 
 + 
 + 
 +====== Week 10 (to be completed by Wednesday, March 30) ======
  
 ==== Due ==== ==== Due ====
Line 42: Line 68:
 There are two things due this week: There are two things due this week:
  
-  - Peer Assessment 4 will be posted on Thursday (Mar 25)You will be submitting your design document on Wednesday, March 31 to receive feedbackAs usual, you will be graded for the feedback you will provide. +  - The lab task as described below. 
-  - For the lab task, you will demonstrate how you debugged one of the bugs you team received last week.+  - The draft of your design document. See the PeerScholar submission link for more details.
  
 ==== Study material ==== ==== Study material ====
  
 +This week we take a look at testing again. {{:codecoverage.pdf|These slides}} discuss the two topics we will focus on:
  
-==== Lab task ====+  - Test coverage. Start by watching this [[https://echo360.ca/media/dadaa02f-eb08-44cc-b471-9d2895a0ccf7/public|instructor video]] on the topic. The code in the video is in the TestCoverage project in [[https://github.com/biltzerpos/TeachingCode|this github repository]]. The build.gradle file that came with the repository has all these features as well. Use JaCoCo and create test coverage reports. Work on improving the coverage of your test code. 
 +  - GUI testing. Start by watching this [[https://echo360.ca/media/cdaba2af-3b4c-4989-98d5-999b398e9d32/public|instructor video]] on the topic. The code in the video is in the JavaFXSample project in [[https://github.com/biltzerpos/TeachingCode|this github repository]]. Next, check out the [[https://github.com/TestFX/TestFX|TestFX github page]] for more information. Add appropriate GUI test cases to your system. GUI tests are not required for the final submission.
  
-Your team should divide the bug reports you received last week among the team membersYou should respond to all the bug reports assigned to you on github.+Click [[https://echo360.ca/media/e2f8a073-fd21-4c18-abac-c0dd13a46581/public|here]] for the Week 10 lecture video. 
 + 
 +==== Lab task ====
  
-Choose one of the bug reports assigned to you. Use the debugging facilities of Eclipse (set breakpoints, step through etc) to trace the source of the bug and fix it.  Demonstrate the above process to the TA (revert to a commit that still has the bug to demonstrate if necessary).+Compute the code coverage of your code and make plans on how to improve it.
  
 ==== Weekly goals ==== ==== Weekly goals ====
  
-  - Learn about debugging +  - Learn about code coverage 
-  - Produce complete draft of your design document and submit it by the deadline +  - Learn about GUI testing 
-  - Ensure other documents are also being worked on +  - Submit a draft of your design document for peer feedback.
-  - All requirements must be implemented and ready for testing/debugging+
  
- +====== Week 9 (to be completed by Wednesday, March 23) ======
-====== Week 9 (to be completed by Wednesday, March 24) ======+
  
 ==== Due ==== ==== Due ====
  
-There are two things due this week that are both related to bug reporting: +For Peer assessment 3, you are required to submit 3 bug reports for each of the two projects you are evaluating. See the PeerScholar link for more details. Preparing these bug reports is also your lab task for the week (see below).
- +
-  - For Peer assessment 3, you are required to submit 3 bug reports for each of the two projects you are evaluating. See the PeerScholar link for more details. +
-  - For the lab task, you will choose one of these bug reports and demonstrate the bug to the TA.+
  
 ==== Study material ==== ==== Study material ====
Line 81: Line 106:
 ==== Lab task ==== ==== Lab task ====
  
-Choose one of the bug reports you created this week, demonstrate to the TA the incorrect behaviour, and present the bug report.+Create the bug reports as indicated above.
  
 ==== Weekly goals ==== ==== Weekly goals ====
Line 87: Line 112:
   - Learn about bug reporting   - Learn about bug reporting
   - Produce constructive bug reports for peer systems   - Produce constructive bug reports for peer systems
 +  - Fix problems identified in your midterm submission feedback
   - Implementation on all new requirements must be underway   - Implementation on all new requirements must be underway
-  - Your system must be able to handle simple tabs for all three instruments by now 
  
  
- +====== Week 8 (to be completed by Wednesday, March 16) ======
-====== Week 8 (to be completed by Wednesday, March 17) ======+
  
 ==== Due ==== ==== Due ====
Line 99: Line 123:
  
   - The lab task as described below.   - The lab task as described below.
-  - The current version of your system. See the PeerScholar submission link for more details.+  - The current version of your system for Peer Assessment 3 - Issue Tracking. See the PeerScholar submission link for more details
 + 
 +Optional but recommended: On Peer Assessment 2, rate the feedback you received (as a team), and/or rate your group members on their contributions until the midterm submission.
  
 ==== Study material ==== ==== Study material ====
  
-This week we take a look at testing again. {{:codecoverage.pdf|These slides}} discuss the two topics we will focus on:+The final submission will be similar to the midterm submission, except it will also contain a Design Document (worth 20% of the final submission). Our target this week is to start working on this document by creating diagrams describing the system you are developing.
  
-  - Test coverage. Start by watching this [[https://echo360.ca/media/dadaa02f-eb08-44cc-b471-9d2895a0ccf7/public|instructor video]] on the topic. The code in the video is in the TestCoverage project in [[https://github.com/biltzerpos/TeachingCode|this github repository]]. Next, update your system to use JaCoCo and create test coverage reports. Work on improving the coverage of your test code. +Start by watching this [[https://www.linkedin.com/learning/software-design-modeling-with-uml|online course on UML and its diagrams]]. Focus on the following types of diagramsactivity, class, sequenceand objectStudy other types of diagrams for your own interest.
-  - GUI testing. Start by watching this [[https://echo360.ca/media/cdaba2af-3b4c-4989-98d5-999b398e9d32/public|instructor video]] on the topic. The code in the video is in the JavaFXSample project in [[https://github.com/biltzerpos/TeachingCode|this github repository]]. Nextcheck out the [[https://github.com/TestFX/TestFX|TestFX github page]] for more information. Add appropriate GUI test cases to your system.+
  
-==== Lab task ====+Select a tool that you will use for such kind of diagrams (as a software engineer you'll have to do these quite often). You can use any number of tools (see complete list below) including dedicated UML tools, such as [[https://plantuml.com/|PlantUML]], or drawing tools with UML support such as [[https://www.diagrams.net/|diagrams.net]]. 
  
-Demonstrate to the TA the code coverage for the part of the code that you are responsible. Briefly discuss how you plan to improve the coverage of your tests.+{{:design.pdf|These slides}} present the purpose of the design document and emphasize some of the points made in the course as well.
  
-==== Weekly goals ====+You may also find useful these [[https://online.visual-paradigm.com/diagrams/tutorials/|tutorials on different kinds of UML diagrams]], as well as this [[https://en.wikipedia.org/wiki/List_of_Unified_Modeling_Language_tools|list of UML tools]].
  
-  - Learn about code coverage +==== Lab task ====
-  - Learn about GUI testing +
-  - Repeated from last week: Study the additional requirements posted about the project and start implementing them +
-  - Produce a version of the system that implements as many requirements as possible for submission on Wednesday, Mar 17.+
  
 +Each student must draw two diagrams describing an aspect of the system. 
  
 +The two diagrams cannot be of the same type. Choose two of the following types of diagrams: activity, class, sequence, and object.
  
 +Groupmates can choose the same type of diagram but they must describe a different part of the system, e.g. one prepares a sequence diagram related to XML parsing, another prepares a sequence diagram related to the play functionality.
  
 +The TAs in the lab session can provide feedback on how to improve your diagrams.
  
-====== Week 7 (to be completed by Wednesday, March 10) ======+==== Weekly goals ====
  
-==== Due ====+  - Learn about design documentation and the corresponding UML diagrams 
 +  - Create the first draft of the design document including the diagrams prepared for the lab task 
 +  - Study the additional requirements posted about the project and start implementing them 
 +  - Produce a version of the system that implements as many requirements as possible for submission on Wednesday, Mar 16.
  
-The only due item this week is the midterm project submission for the project, which is **due on Sunday, February 28 at 11:59pm**. Submission instructions can be found in {{:midterm.pdf|these slides}}. 
  
-It is recommended that you practice your presentation before the meeting so you can highlight all the cool features of your app, while showing all important use cases. 
  
-The only thing due this week is the lab task below.+====== Week 7 (to be completed by Wednesday, March 9) ======
  
-Optional but recommended: For Peer Assessment 2, rate the feedback you received (as a team), and/or rate your group members on their contributions until the midterm submission.+==== Due ====
  
-==== Study material ====+The only due item this week is the midterm project submission for the project, which is **due on Sunday, March 6 at 11:59pm**. Submission instructions can be found in {{:midtermsubmission.pdf|these slides}}.
  
-The final submission will be similar to the midterm submission, except it will also contain a Design Document (worth 20% of the final submission). Our target this week is to start working on this document by creating diagrams describing the system you are developing.+There is no new study material for this week. 
  
-Start by watching this [[https://www.linkedin.com/learning/software-design-modeling-with-uml|online course on UML and its diagrams]]. Focus on the following types of diagramsactivity, class, sequence, and object. Study other types of diagrams for your own interest.+Your lab task on Monday will be to present your midterm submission to the TA that will mark itThis will take place online (using the lab link) with the usual set up of breakout rooms, and the following schedule:
  
-Select a tool that you will use for such kind of diagrams (as a software engineer you'll have to do these quite often). You can use any number of tools (see complete list below) including dedicated UML tools, such as [[https://plantuml.com/|PlantUML]], or drawing tools with UML support such as [[https://www.diagrams.net/|diagrams.net]]. +  * 11:30 - 11:39 Group 1 
 +  * 11:39 - 11:48 Group 2 
 +  * 11:48 - 11:57 Group 3 
 +  * 11:57 - 12:06 Group 4 
 +  * 12:06 - 12:15 Group 5 
 +  * 12:15 - 12:24 Group 6 
 +  * 12:24 - 12:33 Group 7 
 +  * 12:33 - 12:42 Group 8 
 +  * 12:42 - 12:51 Group 9 
 +  * 12:51 - 13:00 Group 11 
 +  * 13:00 - 13:09 Group 12 
 +  * 13:09 - 13:18 Group 13
  
-{{:design.pdf|These slides}} present the purpose of the design document and emphasize some of the points made in the course as well.+While no formal presentation is required, **it is recommended that you practice your presentation before the meeting so you can highlight all the cool features of your app, while showing all important use cases.**
  
-You may also find useful these [[https://online.visual-paradigm.com/diagrams/tutorials/|tutorials on different kinds of UML diagrams]], as well as this [[https://en.wikipedia.org/wiki/List_of_Unified_Modeling_Language_tools|list of UML tools]].+Click [[https://echo360.ca/media/10dc0937-0017-4ecc-9681-ba05a7dcf7bb/public|here]] for the Week 7 lecture video from Mondayand [[https://echo360.ca/media/1f26c086-a665-491c-835f-dd26bc40f667/public|here]] for the one from Wednesday.
  
 ==== Lab task ==== ==== Lab task ====
  
-Each student must draw two diagrams describing an aspect of the system +No lab task this week other than the presentation to the TAA TA will be available at the usual time during Monday's lab for any in-person questions you may have.
- +
-The two diagrams cannot be of the same type. Choose two of the following types of diagrams: activity, class, sequence, and object. +
- +
-Groupmates can choose the same type of diagram but they must describe a different part of the system, e.g. one prepares a sequence diagram related to input parsing, another prepares a sequence diagram related to MusicXML creation.+
  
-Describe both diagrams to the TA in the lab session. 
  
 ==== Weekly goals ==== ==== Weekly goals ====
  
-  - Learn about design documentation and the corresponding UML diagrams +  - Study the peer feedback you received for your app 
-  - Create the first draft of the design document including the diagrams prepared for the lab task +  - Finalize the code of your midterm submission as in the above instructions
-  - Study the additional requirements posted about the project and start implementing them +
-Finalize the code of your midterm submission as in the above instructions+
   - Finalize all three documents   - Finalize all three documents
-  - Submit midterm submission by Sun Feb 28 +  - Submit midterm submission by Sun Mar 6 
-  - Prepare a nice demo/presentation for your app for the next progress meeting +  - Prepare a nice demo for your app for the lab on Monday
- +
- +
---></html>+
  
 ====== Week 6 (to be completed by Wednesday, March 2) ====== ====== Week 6 (to be completed by Wednesday, March 2) ======
Line 201: Line 229:
   * 12:50 - 13:05 Group 12   * 12:50 - 13:05 Group 12
   * 13:05 - 13:20 Group 13   * 13:05 - 13:20 Group 13
 +
 +Click [[https://echo360.ca/media/63788612-7d1d-4241-977a-764344982671/public|here]] for the Week 6 lecture video.
  
 ==== Lab task ==== ==== Lab task ====
course_outline.1644944518.txt.gz · Last modified: 2022/02/15 17:01 by bil

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki