Java代写 | 4120_COMP_SCI_X_0013 Assignment 2


Design Sketch

The design sketch is a rough architecture of your system for us to be able to provide feedback on early. You may want to consider use cases of your system and the flow of information through it in the sketch, or simply the components you have thought of and where they sit in the system.


  • Functional analysis is good
  • A component view (even if it’s extremely coarse: clients, Atom server, content servers) is required
  • Multi-threaded interactions are a good place to focus some design effort.  Show how you ensure that your thread interactions are safe (no races or unsafe mutations) and live (no deadlocks).
  • Explain how many server replicas you need and why
  • UML is a good way of expressing software designs, but it is not mandated.
  • It would be useful to know how you will test each part
  • Diagrams are awesome

Note: Assignments with no design file will receive a mark of zero.


We strongly advise that you submit a draft revision/preview of your completed assignment 2 so that we can provide you with feedback.

You will receive feedback within 1 week. The feedback will be detailed but carries no marks. You are given the opportunity to revise and change your work based on the feedback for the final submission so you use it while you can.

Final revision

If you received feedback in the last submission, please add a PDF (Changes.pdf) in your final version of submission that includes a discussion of the feedback received and what changes you decided to make and why. 

Setting Up Version Control

Getting to know Subversion

This course uses Subversion (svn). Svn is a powerful version control system to help maintain a coherent copy of a project that can be worked on from multiple locations. We will also use svn as the handin mechanism throughout this course. Click hereLinks to an external site. to learn more.

Creating the assignment directory in your svn repository

Run the following command in terminal.

   svn mkdir --parents -m "DS assignment 2"

Replace axxxxxxx with your student ID number.
This command will create an empty directory named YEAR/s2/ds/assignment2 in your svn repository.