CSSE2310 – Semester 2, 2024
Assignment 4 (Version 1.0)
项目类别:电气电力工程
This specification was created for the use of Jiaxiang LIANG (s4568784) only.
Do not share this document. Sharing this document may result in a misconduct penalty.
Introduction 1
The goal of this assignment is to further develop your C programming skills, and to demonstrate your under- 2
standing of networking and multithreaded programming. You are to create a server program (uqchessserver) 3
that supports multiple simultaneously connected clients playing chess against another client or against a chess 4
engine (Stockfish). The server will maintain pipe connections to and from a single chess engine process and 5
mediate client requests for the engine’s services. You should also create a client program (uqchessclient) that 6
can send requests to the server and show responses. 3226 7
Communication between the clients and uqchessserver is over TCP using a text based protocol defined 8
later in this specification. 9
The assignment will also test your ability to code to a particular programming style guide and to use a 10
revision control system appropriately. 11
It is not necessary that you know how to play chess to undertake this assignment, though knowledge of 12
how pieces can move on a chess board may be useful in testing (i.e. knowing which moves are valid). See 13
https://en.wikipedia.org/wiki/Chess#Rules to learn more about the rules of chess if you are interested. 3226 14
Student Conduct 15
This section is unchanged from assignments one and three – but you should remind yourself of the referencing
requirements. Remember that you can’t copy code from websites and if you learn about how to use a library
function from a resource other than course-provided material then you must reference it.
16
This is an individual assignment. You should feel free to discuss general aspects of C programming and 17
the assignment specification with fellow students, including on the discussion forum. In general, questions like 18
“How should the program behave if 〈this happens〉?” would be safe, if they are seeking clarification on the 19
specification. 20
You must not actively help (or seek help from) other students or other people with the actual design, structure 21
and/or coding of your assignment solution. It is cheating to look at another person’s assignment code 22
and it is cheating to allow your code to be seen or shared in printed or electronic form by others. 23
All submitted code will be subject to automated checks for plagiarism and collusion. If we detect plagiarism or 24
collusion, formal misconduct actions will be initiated against you, and those you cheated with. That’s right, if 25
you share your code with a friend, even inadvertently, then both of you are in trouble. Do not post your 26
code to a public place such as the course discussion forum or a public code repository. (Code in private posts 27
to the discussion forum is permitted.) You must assume that some students in the course may have very long 28
extensions so do not post your code to any public repository until at least three months after the result release 29
date for the course (or check with the course coordinator if you wish to post it sooner). Do not allow others to 30
access your computer – you must keep your code secure. Never leave your work unattended. 31
You must follow the following code usage and referencing rules for all code committed to your SVN 32
repository (not just the version that you submit): 33
留学ICU™️ 留学生辅助指导品牌
在线客服 7*24 全天为您提供咨询服务
咨询电话(全球): +86 17530857517
客服QQ:2405269519
微信咨询:zz-x2580
关于我们
微信订阅号
© 2012-2021 ABC网站 站点地图:Google Sitemap | 服务条款 | 隐私政策
提示:ABC网站所开展服务及提供的文稿基于客户所提供资料,客户可用于研究目的等方面,本机构不鼓励、不提倡任何学术欺诈行为。