![]()  | 
    
| CS Home » My Home Page » Teaching Archive 2005/6 » COMP1008 » Mini Project | 
1008 Object-Oriented ProgrammingMini-Project 2006Deadline: The printed version of your work must be handed in to the departmental office by noon Thursday 23rd March. In addition, a version should be submitted electronically using the handin program (details will be emailed closer to the deadline). A readme file should be included explaining how to compile and use your program, along with any other documentation needed. With the printed version of your program you must submit an UML class diagram, documenting the classes and their relationships within your program. A hand drawn diagram is entirely acceptable. Aim: The aim of this mini-project is to write the best and most interesting program you feel able to, putting into practice all that you have learnt so far. Time is limited and there will be courseworks to complete for other courses, so as always plan carefully and make the best use of your time. Marking: The work will be graded A-F.  Plagiarism: The electronically submitted version of your program will be run through an automated plagiarism detector. This is very reliable. Don't cheat. If you use code that you have not designed or written yourself, you must clearly state what the code is, who wrote it and where it came from. Put those details in your readme file and also add comments in the source code to show where the code came from. There is nothing wrong in talking to other people about the design and implementation of your program (but don't expect the other person to do all the intellectual work). However, if you find you are sharing ideas, or even similar sections of code, make that clear in the readme file and source code comments. Don't simply include copied sections of code in the hope they won't be noticed - they will as they are really obvious to the trained eye and plagiarism detectors. Getting a good grade: (This advice is similar to that for the 1007 mini-project, but it is still good advice!) All projects require you to write an object-oriented program, making full use of classes, objects and all their associated features. Marking will take into account the quality of the program you write. In particular pay attention to the following: 
 A clean straightforward working program, making good use of classes and objects, is considered better than a larger and more complex but less well-organised program. Development Advice: 
 ToolsAs you start working with classes and larger programs you are encouraged to use the BlueJ tool. This is designed for use by people learning to write object-oriented Java programs and is very straightforward to use. BlueJ can be run on a lab machine by typing the command bluej. BlueJ is also included on the programming CD for installation on your own computer. More information about BlueJ and the user manual can be found at: http://www.bluej.org/. If you want to try a more advanced programming environment then look at Eclipse, the widely used open source tool. Eclipse is installed on lab machines or can be downloaded from www.eclipse.org. Note that Eclipse is a professional level tool so does take a bit of time to learn and get used to - it may well not be appropriate for your current level of experience. Getting StartedFirst carefully read the code and notes for the Snack Bar program example available from the 1008 web page (and have another look at the COMP1007 phone list program as well). See http://www.cs.ucl.ac.uk/staff/G.Roberts/courses2005_6/1008/snackbar/snackbar.html. Make sure you understand the development process that is proposed, so you can apply it in your mini-project. Also make sure you have read chapter 10 in the course text (in addition look through Part III). When ready to start, select one mini-project idea from the list below (they are not listed in order of difficulty although some are more challenging than others). Remember that you are writing an object-oriented program and should be using at least half a dozen classes. The ideas are deliberately open-ended, so you will have to fill in the details and determine exactly what your program should do. It is up to you to take the mini-project as far as you can. If you cannot get started or the questions seem too complex then simplify the requirements and try a more basic version of the question. Remember the strategy of starting simply and then adding features step-by-step. Make sure you attend your programming lab class to get advice, help and feedback. Getting feedback is important to make sure that you are not going in the wrong direction, so please don't ignore the labs. 
 | 
  
Last updated: 
        September 2, 2006  | 
    
Computer Science Department - University College London - Gower Street - London - WC1E 6BT - 
 +44 (0)20 7679 7214 - Copyright  1999-2006 UCL