Assignment (Assessment 3) (40%) : Details
Assignment (Assessment 3) (40%) : Details
Details
• Tutor/Marker: Jonathan Crellin
• Course: Programming 1
Constraints
• An group assessment. (Groups consist of 1 or 2 students).
• You may use Java programming resources as required. External sources should be cited and
referenced. Using external resources is good practice, as long as they are not presented as
your own work.
• Communication with other student groups about the assessment during the assessment by
any means is not allowed.
• You may ask a question of the class tutor.
• A partial implementation (i.e. your code does not work fully) may still pass.
• You should ensure that individually you understand how each part of the software works, as
you may be asked to give an individual demonstration, and discussion of the final program.
Learning Objectives:
CLO1 1: Solve simple algorithmic computing problems using basic control structures and
Object-Oriented Techniques. (Class Test1 & 2 covered this LO fully)
CLO 2: Design and implement computer programs based on analysing and modelling
requirements. (Class Test1 & 2 covered this, but I expect the good practice to continue in
Assessment 3)
CLO 3: Identify and apply basic features of an Object-Oriented programming language
through the use of standard Java (Java SE) language constructs and APIs. (Class Test 2
covered this fully)
CLO 4: Identify and apply good programming style based on established standards,
practices and coding guidelines. (Class Test 1 & 2 covered this, but I expect the good pratice
to continue in Assessment 3)
CLO 5: Devise and apply strategies to test the developed software. (Class Test 1 & 2
covered this, but I expect the good practice to continue in Assessment 3)
CLO 6: Explain key concepts of object-oriented programming in Java.
The principle intention of the assessment is to give you the opportunity to demonstrate your ability
to convert a problem into an Object Oriented (OO) design, which you fully describe, and to use OO
features of Java, this means you will also have to think about how to use classes, inheritance,
polymorphism, used in objects, and their methods and data fields as you design the solution.
Stages
1) Write a rough, high level text description of your plan for representing characters, rooms, players
etc. in an OO way. 10%
(You are likely to find a detailed analysis of each of your answers to CT2 useful, and possibly the
sample answer I provided to that test).
2) Implement your plan (and if necessary modify it if you find that makes sense, but please
document what and why for your changes). 70%
3) Each student should write a short reflective analysis of the group’s code, describing how core OO
concepts have finally been implemented in your program. Your analysis should reflect on the
relative benefits and disadvantages of the approach. 20%
Don’t worry if you cannot complete everything, and your game is incomplete, but use a stepwise
approach, so that I can see complete components in the code, ideally with tests of each component.
The debugger in the IDE3 will In theory this means by the time you complete all the components
they will all fit together and work as a whole.
Your documentation should follow good academic practice, both making use of existing sources (no
point in ‘re-inventing the wheel’), but also highlighting where you have used pre-existing sources,
with suitable citation and referencing.
You can work with one other student (group of two). I will give you at least three hours during
week 4 to work on the assessment in class, and you will need to work on it during your own time
during the week.