27
Computer Science Projects Internal Assessment

Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Embed Size (px)

Citation preview

Page 1: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Computer Science Projects

Internal Assessment

Page 2: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Mastery ItemClaimed

Justification Where Listed

Random Access File – Searching Lines 200-230 P. 53

Random Access File – Deleting Lines 310-350 P. 56

Random Access File – Adding Lines 310-350 P. 56

Recursion Lines 510-540 P. 58

Parsing a Text File Lines 250-260 P. 52

Inheritance etc

Polymorphism

Mastery Items

Page 3: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Inserting data into an ordered sequential file

• What’s ok

• Not writing the entire file into RAM

Page 4: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Deleting data from an ordered sequential file

• What’s ok

• Not writing the entire file into RAM

Page 5: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Arrays of 2 or more dimensions

• What’s ok

• Must be used for a non-trivial reason

Page 6: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Deleting data from a Random Access File

• What’s ok

• Making the deleted file space available for re-use, so that a new record/data item can be written in its place (requires storing the record numbers of deleted items or marking for deletion).

• Compacting the amended file in some way so that unnecessary memory is not taken up.

Page 7: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Deleting data from a Random Access File

• What’s not

• Marking a record as ‘deleted’ without making any provision for its re-use.

Page 8: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Searching for specified data from a Random Access File

• What’s ok

• Reading sequentially through a file in order to find a record/data item whose position is not already known (therefore the seek() method cannot be used).

• e.g. in order to process that item / to check for duplicate records / look for ‘deleted’ records.

Page 9: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Searching for specified data from a Random Access File

• What’s not

• Reading the whole file into memory and then beginning the search.

Page 10: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Adding data to a Random Access Fileusing the seek() method

• What’s ok

• Using a calculation based on record length and record number to:

• write a new record (or data item) to the end of a file

• write a new record in the position of a previously deleted record (data item)

Page 11: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Adding data to a Random Access File using the seek() method

• What’s not

• seeking to the start of a file with seek(0), and writing a stream of data to the file

• seeking to the end of the file with seek(file.length), and appending to the end of a file

Page 12: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Recursion

• What’s ok

• A method that: -calls itself with changed parameters -has a terminating condition -is a valid use of recursion

• e.g. traversing a tree• e.g. a sort routine (justified and explained)

Page 13: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Recursion

• What’s not

• algorithms introduced solely to gain the mastery aspect

• e.g. a quicksort routine where the choice of sort routine has not been justified by the candidate

• algorithms introduced where an iterative solution would clearly be the preferred way

• e.g. searching through a linked list (not the ‘normal’ way of processing a linked list)

Page 14: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Parsing a Text File

• What’s ok

• Using methods such as java.util.StringTokeniser to separate strings (read in from an input stream) into different components.

• The different tokens (strings) would then be processed in some way.

• e.g. to separate lines of text into record fields • e.g. reading in data from a csv file

Page 15: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Parsing a Text File

• What’s not

• Use of parseInt(string) or parseDouble(string) would be considered a trivial example.

• e.g. reading strings from a text file and converting them into integers.

Page 16: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Merging of two or more sorted data structures

• What’s ok

• Merging two sets of data that are already sorted.

• What’s not

• Appending one file onto another.

• Using a mergesort routine (data sets are unsorted).

Page 17: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

• What’s ok

• Extending a built-in Java class where significant changes/additions are made to the super class.

• e.g. extending and customising GUI classes (J Frames etc.).

• Creating a class, extending it to a sub-class, and making use of both classes in the program

• Creating an abstract class (with basic data members/methods) and extending 2 (or more) sub-classes.

• e.g. a currentAccount class and a savingsAccount class could extend an abstract bankAccount class.

Inheritance

Page 18: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Inheritance

• What’s not

• Extending (inheriting) a built-in Java class without any significant changes to the super-class.

• Creating a (super) class and then extending it, but only then making use of the sub-class (in other words, the super-class wasn’t needed).

Page 19: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Encapsulation

• What’s ok

• Data members that are declared as private (accessible by methods from that class only), or protected (accessible from that package), so that other classes can only access the data members through public methods in the encapsulated classes.

• What’s not

• All class data members declared as public.

Page 20: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Polymorphism

• What’s ok

• Method overriding, where a sub-class (or a class that implements an interface) overrides the parent class’s methods in a non-trivial way.

• Method overloading – 2 methods with the same name but with different parameters and different behaviour (e.g. constructors)

Page 21: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Polymorphism

• What’s not

• Overriding methods from a Java library file.

• e.g. use of methods such as equals() as in string1.equals(string2)

in which the String class is simply overriding methods of the Object class.

Page 22: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Up to 4 aspects for the Implementation of ADT’s

• What’s ok

• It is the code (or modified code) that has been written (and extensively documented) by the candidate that will gain credit.

• e.g. for Linked Lists, mastery marks will be awarded as follows:

• creating a node-style class with basic methods (constructor, get and set methods);

• additional methods e.g. to add / remove from the head / tail;• implementing basic error-checking (e.g. trying to get an element

from an empty list);• addition of further methods to create a fully-functionable ADT;

Page 23: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Up to 4 aspects for the Implementation of ADT’s

• What’s not

• Where all the candidates from a school follow a ‘template’ approach laid down by the teacher.

• Using a pre-written Java library class (such as java.util.LinkedLists) to provide the methods for the student’s ADT.

Page 24: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Hierarchical Composite Data Structure

• Object which has several data members, of which one also is a object.

• An array of objects.

• e.g. linked list (or tree) of records,

array of records,

record where one of the fields is another

record,

Page 25: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Use of additional libraries

• e.g. graphical libraries or utilities

Page 26: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

5 mastery items from SL

Page 27: Computer Science Projects Internal Assessment. Mastery Item Claimed Justification Where Listed Random Access File – Searching Lines 200-230 P. 53 Random

Recomendations for Teachers

Insert a detailed appraisal of each student in the dossier (at the beginning).

Set (no pass) deadlines.