Hi everyone,
To assist with any questions regarding Assignment 1, we will be holding help sessions where you are welcome to ask for clarification or request feedback.
Help session times and location:
If you would like feedback on your submission, please feel free to attend during the above times.
Additionally, to check your Assignment 1 marks, please log in to the Give .
Please note: Due to system limitations, marks may not be visible on WebCMS, so we recommend checking through Give directly.
Best regards,
Jamison
Dear everyone,
7.16 Update:
--------------------------------------------------------------
The assignment results have now been released.
Please note that it may take a few days for the school system to fully process and display the marks.
If you still haven't received your results by the middle of this week, please reach out.
If you would like to see a breakdown of your scores per question, please send us an email, and we’ll respond to individual requests accordingly.
Please
provide your zid
when sending the email.
Kind regards,
Zihao
Dear class,
I hope you had a restful flex week!
Here are some updates for the second half of the term:
Assessments
Practical learning materials (in addition to lecture slides):
These materials may not be directly related to your assessments (except for pytest and Docker, which we will cover in lectures), but they will enrich your practical understanding and preparation for industry contexts.
We will also organise some help sessions to assist you with setting up the environments, etc., for Assignment 2, or to help you practice with these extra materials. Please stay tuned.
Please feel free to reach out if you have any questions.
Best regards,
Yuekang
Hi everyone,
You may have noticed that some courses are moving online due to the weather. While there is currently no UNSW-wide advice, the heavy rain is expected to continue into Thursday morning, making travel to campus potentially difficult or unsafe for some students.
To ensure everyone’s safety, tomorrow’s COMP3142 lecture (Wednesday, 2 July 2025) will be held fully online .
Please join the lecture via Microsoft Teams:
Thank you for your understanding, and please stay safe.
Best regards,
Yuekang
Dear Class,
This is the wrap-up from today's Q&A for Assignment 1.
Q1.1.2:
Comments are only for explanatory purposes . You do not need to include them in your submission. (but it's okay if you do).
Q1.2 – Format Recommendation:
weekly_hours
:
Q1.2 – Test Case Values:
You can use either string-form equivalence class ranges like
"[1,3]"
or just include a representative value from the class. Both are acceptable.
A logic error here means: your modified program should execute different program parts for new test cases , but the same parts for the original test suite.
Q2.1 – CFG Unfolding:
“Unfold 3 times” means the body of the loop should be repeated
three times.
Kind regards,
Zihao
Hi everyone,
We’ve just received confirmation that the
give
command is now working properly again. Submissions made via
give
will now be correctly received and recorded.
You’re free to submit your assignment however you prefer — whether it’s through the
give
online submission
or
directly via the WebCMS interface. Both options will work just fine!
Let us know if you run into any issues. Good luck with your assignment!
Best regards,
Jamison J. Ding
Dear Class,
We’ve received reports that the
give
command on the CSE server is currently not working. The issue has been reported and is being addressed.
In the meantime, please submit your work via WebCMS3 through the browser , which is functioning normally.
Thanks for your understanding.
Best,
Zihao
Dear Class,
It’s great to see the progress everyone is making.
I’d like to share a few clarifications and reminders regarding Assignment 1 to help you stay on track and avoid common mistakes.
For
1.1
, boundary value testing is required (not worst-case testing). It should be done with 6n + 1, totaling 19 test cases.
For
1.2
, the
Q1_2.txt
file should list all equivalence classes, and the
Q1_2_test.txt
file should list the full test suite.
For
1.2
, if some variables’ equivalence classes overlap, that’s fine. Just keep them for now. Only deduplicate ranges that are exactly the same.
For
1.2
, the "Valid" and "Invalid" categories are just formatting requirements. Do not treat them as if this variable only has two equivalence classes.
For
1.2
, the
weekly_hours
variable is a complex case. Just aim to include test cases that span different equivalence classes across academic roles, terms, and FTE levels. Format this accordingly in your
.txt
file.
For
1.3
, for rules G and H, two different input combinations that pass Rules A–F are sufficient (i.e., name them G1 and H1).
For
1.3
, at Rule C1, using
-
for week is acceptable and equivalent to writing
1–10
. It means the week passes both Rule A and Rule B (i.e., the program hasn’t returned at A or B). Think of the inputs as being evaluated from top to bottom—each rule is checked in order. If a specific rule is reached, all prior rules must have failed for that input.
For
1.3
,
N/A
means unreachable. This applies when some input combinations are already returned by prior rules and will never reach the current rule. The program has already returned, and there is no way for that rule to ever be triggered. That is why it’s marked as N/A.
For
1.3
, invalid inputs will result in
ERROR
. Although the assignment mistakenly says "Rejected", we will accept both "ERROR" and "Rejected" as correct.
For
1.3
, ranges like
1–3
mean
inclusive
of 1 and 3.
For
1.3
,
!1–3
means
not (1 and 2 and 3)
;
!1/2/3
means
not 1 OR 2 OR 3
;
!1/!2/!3
means
not 1 OR not 2 OR not 3
— use this format cautiously, as it’s always true and is meant only to illustrate syntax.
For
2.1
, unfold the CFG up to 3 iterations. The subpaths can be directly derived from the original CFG.
For
2.2
, there’s a typo in the assignment. It should be
Q2_2_2.txt
, not
Q2_3_1.txt
. You won’t lose marks for the wrong filename, but please correct this.
Python code quality is
not marked
. We just want to see that you generated the test cases correctly and didn’t hard-code them.
All files must be submitted as a single zip archive.
If you're using CSE, use the following command:
zip -r assignment1.zip assignment1_folder
Dear Class,
To support you ahead of the Assignment 1's due date, we will organise two drop-in help sessions next week. If you have any questions about the assignment or recent lecture material, please feel free to come:
Monday, 23 June – 4:00 pm – 5:00 pm
Tuesday, 24 June – 2:00 pm – 4:00 pm
Location for both sessions: Consultation Room, Level 5, Room 508, Building K17.
Zihao and I will be available during both sessions and will be happy to help with any queries.
Best regards,
Yuekang
Dear class,
Hello everyone,
1. Logical Notation
!/3/4
→ means
not 1 OR 3 OR 4
.
!1/!3/!4
→ means
not 1 OR not 3 OR not 4
.
!1–3
→ means
not 1 to not 3
.
"-"
used as “don’t care” means the value that does influence the program output for this rule. You can assume In Rule B and later, - will only contain valid ranges inputs, as invalid ones are captured by Rule A.
2. Term Limits
term_limit = {"T1": 20, "T2": 25, "T3": 30}.get(period, 0)
```
3. Categorical Values – Invalid Equivalence Classes (If you need) Q1.2
Use the ¬ symbol to express invalid sets.
Example: Invalid: ¬{"a", "b", "c"}
4. Question 1.3 – Rule Dependencies Q 1.3
When checking
Rule C
, assume
Rules A and B have already passed
.
So the inputs are valid with respect to A and B.
Therefore, for
Rules G and H
, simply write two different valid cases that pass A–F or A–G.
(Passing G is assumed in the latter.)
5. Reminder
Please try not to post your full answers directly in the forums, as others will be able to see and copy them.
_______________________________________history message________________________________________________
Thanks to everyone in the forum for posting questions regarding the unclear instructions and typos in the assignment.
The PDF has now been revised, with changes highlighted in yellow color.
_______________________________________history_____________________________________________________
The specification for Assignment 1 has now been released: https://webcms3.cse.unsw.edu.au/COMP3142/25T2/resources/112259
The due date of this assignment is 25th June (next Wednesday), 10:00 pm.
You can submit your answers via give .
You can find the submission link under:
Home → Upcoming Due Dates → Assignment 1
If you encounter any difficulty submitting the assignment, please feel free to reach out.
Best regards,
Zihao
Dear Class,
The issue with Echo360 in Wednesday’s lecture theatre remains unresolved (and I don't know when they can fix it), so we’ve continued using MS Teams for recording. Please note that Teams recordings display participant names. To address privacy concerns, I’ve uploaded the lecture recordings to YouTube with access restricted to direct links only.
You can find all the recordings here:
👉
Lecture Recordings on YouTube
Regarding Python learning materials, they are available here:
👉
Python Resource
Based on feedback from the previous term, I’ve decided to include some Python content to support your assignments. This resource doesn’t cover the basics but instead focuses on common pitfalls and tricky areas in Python programming. While not all of it may apply directly to your current assignments, I hope you’ll find it useful both now and in the future. After all, learning isn't just about passing assessments—it's also about building skills to do interesting things.
Best regards,
Yuekang
Dear class,
I just found that the classroom's default system hasn't been recording the screen properly. Apologies for the inconvenience!
To address this, I’ll be taking the following steps:
The meeting link for Wednesday classes is:
https://teams.microsoft.com/l/meetup-join/19%3ameeting_ZWYxOGQwNTgtYmEzNS00OWRmLTg5ZDEtMjdmNjVmYmM0M2Iz%40thread.v2/0?context=%7b%22Tid%22%3a%223ff6cfa4-e715-48db-b8e1-0867b9f9fba3%22%2c%22Oid%22%3a%2241c0cf0f-29e0-49f6-bd06-26ab4cebd9f4%22%7d
The meeting link for Friday classes is:
https://teams.microsoft.com/l/meetup-join/19%3ameeting_MDQ5ODg4NzAtNzE0Mi00YTYzLWIzMmQtZTRmMWM5NGY5MWJj%40thread.v2/0?context=%7b%22Tid%22%3a%223ff6cfa4-e715-48db-b8e1-0867b9f9fba3%22%2c%22Oid%22%3a%2241c0cf0f-29e0-49f6-bd06-26ab4cebd9f4%22%7d
Thanks for your understanding, and see you this Friday!
Hello Class,
Welcome to COMP3142! I’m excited to have you on board, and I look forward to a great learning journey with you this term.
Before we kick off our first lecture on Wednesday, please take note of the following important information:
Looking forward to seeing you in class!
Cheers,
Yuekang