Here are some tips for getting a good mark in this course (and for being a better programmer). In no particular order:

Write clear code

Programming languages are a way of communicating algorithms and concepts between humans as well as between humans and machines. Code needs to be well structured and clear and readable if it is to be reliable and maintainable. No matter how clever an application looks when it is running or what "features" it has, it won't get good marks (and I wouldn't give you a job!) unless the code is clear.

Exploit the Java language

If you have done some programming before, don't just rely on the paradigms of your previous language. Take time to learn how to use the features of Java appropriately. For example: think carefully before using arrays and integers to represent your data - consider using objects, sets, hashmaps and enumerated types to create better representations. Use iterators where appropriate, instead of for-loops.

Think about structure and design

Spend time thinking carefully about the overall structure and design of the classes. If the design is not good, the code will be harder to write, less readable, less reliable, and difficult to reuse. The first assignment is intended to show you how to think about this. A good mark on the the second assignment depends heavily on your own design.

Read the instructions

Read the instructions carefully. Read them again. Even if you produce a very good solution you won't get good marks if you have solved the wrong problem, or done something in the wrong way.

Trust in your own ideas

Beware of sharing. Discussing ideas is good, but other students sometimes have really bad ideas - you may get better ideas of your own just by following the course materials. Discuss your ideas with the demonstrators, or post them on the forum. But beware of plagiarism: do not let other people see your assignment code, and do not look at other people's assignment code. Especially, do not copy other people's code and attempt to disguise it - the Moss software is very good at detecting this, and this is a very serious offence.

Communicate your ideas clearly

The worksheet is just as important as the code for the assessement. Spend time reading the questions carefully and answering thoughtfully and concisely. Glib answers are really bad ("my code is cohesive") without justification.

You must be able to express yourself clearly in English. Language and grammar is important for a good mark, even if this is difficult for non-native speakers - this will be even more important for your MSc dissertation. Even for good English speakers, expressing things concisely can be difficult. Spend time on this. Ask other people to comment on the English language in your written work.

Take advantage of the course support

This course has no (content) lectures. A lot of the value comes from the demonstrators and the staff who respond to your questions on the forum. This allows you to get help with your own individual problems, so take advantage of this.

Have fun

Learn to write good code. Don't be over-focussed on the assessment ...