You are on page 1of 10

COMPUTER SCIENCE (868)

Aims (Conceptual) (3) To create awareness of ethical issues related to


computing and to promote safe, ethical
(1) To understand algorithmic problem solving
behavior.
using data abstractions, functional and
procedural abstractions, and object based and (4) To make students aware of future trends in
object-oriented abstractions. computing.
(2) To understand: (a) how computers represent, Aims (Skills)
store and process data at different levels of
To devise algorithmic solutions to problems and to
abstraction that mediate between the machine
be able to code, validate, document, execute and
and the algorithmic problem solving level and
debug the solution using the Java programming
(b) how they communicate with the outside
system.
world.
CLASS XI
There will be two papers in the subject: (when programming is discussed). For addition
Paper I: Theory………….. 3 hours…70 marks and subtraction (1’s complement and 2’s
complement) use the analogy with decimal
Paper II: Practical………. 3 hours…30 marks numbers, emphasize how carry works (this will be
PAPER I –THEORY – 70 MARKS useful later when binary adders are discussed).
Paper I shall be of 3 hours duration and be divided 2. Encodings
into two parts. (a) Binary encodings for integers and real
Part I (20 marks): This part will consist of numbers using a finite number of bits (sign-
compulsory short answer questions, testing magnitude, 2’s complement, mantissa-
knowledge, application and skills relating to the exponent notation).
entire syllabus. Signed, unsigned numbers, least and most
Part II (50 marks): This part will be divided into significant bits. Sign-magnitude
three Sections, A, B and C. Candidates will be representation and its shortcomings (two
required to answer two questions out of three from representations for 0, addition requires extra
Section A (each carrying 10 marks) and two step); two’s-complement representation.
questions out of three from Section B (each carrying Operations (arithmetic, logical, shift),
10 marks) and two questions out of three from discuss the basic algorithms used for the
Section C (each carrying 5 marks). Therefore, a total arithmetic operations. Floating point
of six questions are to be answered in Part II. representation: normalized scientific
notation, mantissa-exponent representation,
SECTION A binary point (discuss trade-off between size
Basic Computer Hardware and Software of mantissa and exponent). Single and double
precision.
1. Numbers
(b) Characters and their encodings (e.g. ASCII,
Representation of numbers in different bases and ISCII, Unicode).
interconversion between them (e.g. binary, octal,
Discuss the limitations of the ASCII code in
decimal, hexadecimal). Addition and subtraction
representing characters of other languages.
operations for numbers in different bases. Discuss the Unicode representation for the
Introduce the positional system of representing local language. Java uses Unicode, so
numbers and the concept of a base. Discuss the strings in the local language can be used
conversion of representations between different (they can be displayed if fonts are available)
bases using English or pseudo code. These – a simple table lookup for local language
algorithms are also good examples for defining equivalents for Latin (i.e. English) character
different functions in a class modelling numbers strings may be done. More details on
Unicode are available at www.unicode.org.

268
3. Propositional logic, Hardware Difference between object and class should
implementation, Arithmetic operations be made very clear. BlueJ (www.bluej.org)
(a) Propositional logic, well-formed formulae, and Greenfoot (www.greenfoot.org) can be
truth values and interpretation of well formed used for this purpose.
formulae, truth tables. (b) Analysis of some real-world programming
Propositional variables; the common logical examples in terms of objects and classes.
connectives ((not)(negation), ∧ Use simple examples like a calculator, date,
(and)(conjunction), ∨ (or)(disjunction), number etc. to illustrate how they can be
⇒ (implication), ⇔ (equivalence)); definition treated as objects that behave in certain well-
of a well-formed formula (wff); defined ways and how the interface provides
representation of simple word problems as a way to access behaviour. Illustrate
wff (this can be used for motivation); the behaviour changes by adding new methods,
values true and false; interpretation of a wff; deleting old methods or modifying existing
truth tables; satisfiable, unsatisfiable and methods.
valid formulae.
(c) Basic concept of a virtual machine; Java
(b) Logic and hardware, basic gates (AND, Virtual Machine (JVM); compilation and
NOT, OR) and their universality, other gates execution of Java programs (the javac and
(NAND, NOR, XOR, XNOR), half adder, java programs).
full adder.
The JVM is a machine but built as a program
Show how the logic in (a) above can be
and not through hardware. Therefore it is
realized in hardware in the form of gates.
called a virtual machine. To run, JVM
These gates can then be combined to
machine language programs require an
implement the basic operations for
interpreter. The advantage is that such JVM
arithmetic. Tie up with the arithmetic
machine language programs (.class files) are
operations on integers discussed earlier in 2
portable and can run on any machine that
(a).
has the java program.
SECTION B
(d) Compile time and run time errors; basic
The programming element in the syllabus is aimed concept of an exception, the Exception class,
at algorithmic problem solving and not merely rote try-catch, throw, throws and finally.
learning of Java syntax. The Java version used
Differentiate between compile time and run
should be 5.0 or later. For programming, the
time errors. Run time errors crash the
students can use any text editor and the javac and
program. Recovery is possible by the use of
java programs or any other development
exceptions. Explain how an exception object
environment: for example, BlueJ, Eclipse, NetBeans
is created and passed up until a matching
etc. BlueJ is strongly recommended for its
catch is found. This behaviour is different
simplicity, ease of use and because it is very well
from the one where a value is returned by a
suited for an ‘objects first’ approach.
deeply nested method call.
4. Introduction to Object Oriented
6. Primitive values, Wrapper classes, Types and
Programming using Java
casting
Note that topics 5 to 12 should be introduced
Primitive values and types: byte, int, short, long,
almost simultaneously along with Classes and
float, double, boolean, char. Corresponding
their definitions.
wrapper classes for each primitive type. Class as
5. Objects type of the object. Class as mechanism for user
(a) Objects as data (attributes) + behaviour defined types. Changing types through user
(methods or methods); object as an instance defined casting and automatic type coercion for
of a class. some primitive types.

269
Ideally, everything should be a class; primitive Methods are like complex operations where the
types are defined for efficiency reasons; each object is implicitly the first argument. Operator
primitive type has a corresponding wrapper class. this denotes the current object. Methods typically
Classes as user defined types. In some cases types return values. Illustrate the difference between
are changed by automatic coercion or casting – primitive values and object values as arguments
e.g. mixed type expressions. However, casting in (changes made inside methods persist after the
general is not a good idea and should be avoided, call for object values). Static definitions as class
if possible. variables and class methods visible and shared
7. Variables, Expressions by all instances. Need for static methods and
variables. Introduce the main method – needed to
Variables as names for values; named constants begin execution. Constructor as a special kind of
(final), expressions (arithmetic and logical) and method; the new operator; multiple constructors
their evaluation (operators, associativity, with different argument structures; constructor
precedence). Assignment operation; difference returns a reference to the object.
between left-hand side and right-hand side of
assignment. 10. Arrays, Strings
Variables denote values; variables are already Structured data types – arrays (single and multi-
defined as attributes in classes; variables have dimensional), strings. Example algorithms that
types that constrain the values it can denote. use structured data types (searching, finding
Difference between variables denoting primitive maximum/minimum, sorting techniques, solving
values and object values – variables denoting systems of linear equations, substring,
objects are references to those objects. The concatenation, length, access to char in string,
assignment operator = is special. The variable on etc.).
the LHS of = denotes the memory location while
the same variable on the RHS denotes the contents Storing many data elements of the same type
of the location e.g. i=i+2. requires structured data types – like arrays.
Access in arrays is constant time and does not
NOTE: Library functions for solving expressions depend on the number of elements. Sorting
may be used as and when required. techniques (bubble, selection, insertion),
8. Statements, Scope Structured data types can be defined by classes –
Statements; conditional (if, if else, if else if, String. Introduce the Java library String class
switch case) ternary operator, looping (for, while, and the basic operations on strings (accessing
do while), continue, break; grouping statements in individual characters, various substring
blocks, scope and visibility of variables. operations, concatenation, replacement, index of
Describe the semantics of the conditional and operations).
looping statements in detail. Evaluation of the SECTION C
condition in conditional statements.
11. Basic input/output Data File Handling
Nesting of blocks. Variables with block scope, (Binary and Text)
method scope, class scope. Visibility rules when
variables with the same name are defined in (a) Basic input/output using Scanner and Printer
different scopes. classes.
9. Methods and Constructors Input/output exceptions. Tokens in an input
stream, concept of whitespace, extracting
Methods and Constructors (as abstractions for
tokens from an input stream (String
complex user defined operations on objects),
Tokenizer class). The Scanner class can be
methods as mechanisms for side effects; formal
used for input of various types of data (e.g.
arguments and actual arguments in methods;
int, float, char etc.) from the standard input
different behaviour of primitive and object
stream. Similarly, the Printer class handles
arguments. Static methods and variables. The this
output. Only basic input and output using
operator. Examples of algorithmic problem
these classes should be covered.
solving using methods (number problems,
finding roots of algebraic equations etc.).
270
Discuss the concept of a token (a delimited 14. Packages
continuous stream of characters that is
Definition, creation of packages, importing user
meaningful in the application program – e.g.
defined packages, interaction of objects across
words in a sentence where the delimiter is
packages.
the blank character). This naturally leads to
the idea of delimiters and in particular Java Application Programming Interface (API),
whitespace and user defined characters as development of applications using user defined
delimiters. As an example show how the packages.
StringTokenizer class allows one to extract a 15. Trends in computing and ethical issues
sequence of tokens from a string with user
defined delimiters. (a) Artificial Intelligence, Internet of Things,
Virtual Reality and Augmented Reality.
(b) Data File Handling.
Brief understanding of the above and their
Need for Data file, Input Stream, Output impact on Society.
Stream, Byte Stream (FileInputStream and
FileOutputStream), Character Stream (b) Cyber Security, privacy, netiquette, spam,
(FileReader, FileWriter), Operations- phishing.
Creation, Reading, Writing, Appending, and Brief understanding of the above.
Searching.
(c) Intellectual property, Software copyright and
12. Recursion patents and Free Software Foundation.
Concept of recursion, simple recursive methods Intellectual property and corresponding laws
(e.g. factorial, GCD, binary search, conversion of and rights, software as intellectual property.
representations of numbers between different
bases). Software copyright and patents and the
difference between the two; trademarks;
Many problems can be solved very elegantly by software licensing and piracy. free Software
observing that the solution can be composed of Foundation and its position on software,
solutions to ‘smaller’ versions of the same Open Source Software, various types of
problem with the base version having a known licensing (e.g. GPL, BSD).
simple solution. Recursion can be initially
motivated by using recursive equations to define Social impact and ethical issues should be
certain methods. These definitions are fairly discussed and debated in class. The
obvious and are easy to understand. The important thing is for students to realise
definitions can be directly converted to a that these are complex issues and there are
program. Emphasize that any recursion must multiple points of view on many of them and
have a base case. Otherwise, the computation there is no single ‘correct’ or ‘right’ view.
can go into an infinite loop.
PAPER II: PRACTICAL – 30 MARKS
13. Implementation of algorithms to solve
problems This paper of three hours duration will be evaluated
internally by the school.
The students are required to do lab assignments
in the computer lab concurrently with the The paper shall consist of three programming
lectures. Programming assignments should be problems from which a candidate has to attempt any
done such that each major topic is covered in at one. The practical consists of the two parts:
least one assignment. Assignment problems (1) Planning Session
should be designed so that they are sufficiently
challenging and make the student do algorithm (2) Examination Session
design, address correctness issues, implement The total time to be spent on the Planning session and
and execute the algorithm in Java and debug the Examination session is three hours.
where necessary. A maximum of 90 minutes is permitted for the
Self-explanatory. Planning session and 90 minutes for the Examination

271
session. Candidates are to be permitted to proceed 4. Simulate Adders using Arduino Controllers and
to the Examination Session only after the 90 Components.
minutes of the Planning Session are over.
5. Simulate a converter of Binary to Decimal
Planning Session number systems using Arduino Controllers and
Components.
The candidates will be required to prepare an
algorithm and a hand-written Java program to solve 6. Develop a console-based application using Java
the problem. for Movie Ticket Reservation.
Examination Session 7. Develop a console-based application using Java
to encrypt and decrypt a message (using cipher
The program handed in at the end of the Planning
text, Unicode-exchange, etc).
session shall be returned to the candidates. The
candidates will be required to key-in and execute the 8. Develop a console-based application using Java
Java program on seen and unseen inputs individually to find name of the bank and branch location
on the Computer and show execution to the from IFSC.
examiner. A printout of the program listing, including
9. Develop a console-based application using Java
output results should be attached to the answer script
to calculate taxable income (only direct tax).
containing the algorithm and handwritten program.
This should be returned to the examiner. The 10. Develop a console-based application using Java
program should be sufficiently documented so that to develop a simple text editor (text typing, copy,
the algorithm, representation and development cut, paste, delete).
process is clear from reading the program. Large
differences between the planned program and the EVALUATION
printout will result in loss of marks.
Marks (out of a total of 30) should be distributed as
Teachers should maintain a record of all the given below:
assignments done as part of the practical work
throughout the year and give it due credit at the time Continuous Evaluation
of cumulative evaluation at the end of the year. Candidates will be required to submit a work file
Students are expected to do a minimum of twenty containing the practical work related to programming
assignments for the year and ONE project based on assignments done during the year and ONE project.
the syllabus.
Programming assignments done 10 marks
throughout the year
LIST OF SUGGESTED PROJECTS:
Project Work (based on any topic from 5 marks
PRESENTATION / MODEL BASED/
the syllabus)
APPLICATION BASED
1. Creating an expert system for road-traffic
Terminal Evaluation
management (routing and re-routing of vehicles
depending on congestion). Solution to programming problem on 15 Marks
the computer
2. Creating an expert system for medical diagnosis
on the basis of symptoms and prescribe a suitable
treatment. (Marks should be given for choice of algorithm and
implementation strategy, documentation, correct
3. Creating a security system for age-appropriate
output on known inputs mentioned in the question
access to social media.
paper, correct output for unknown inputs available
only to the examiner).

272
CLASS XII

There will be two papers in the subject: (b) Binary valued quantities; basic postulates
Paper I: Theory……….. 3 hours….70 marks of Boolean algebra; operations AND, OR and
NOT; truth tables.
Paper II: Practical…….. 3 hours….30 marks
PAPER I –THEORY – 70 MARKS (c) Basic theorems of Boolean algebra
(e.g. duality, idempotence, commutativity,
Paper I shall be of 3 hours duration and be divided
associativity, distributivity, operations with 0
into two parts.
and 1, complements, absorption, involution);
Part I (20 marks): This part will consist of De Morgan’s theorem and its applications;
compulsory short answer questions, testing reducing Boolean expressions to sum of
knowledge, application and skills relating to the products and product of sums forms;
entire syllabus. Karnaugh maps (up to four variables).
Part II (50 marks): This part will be divided into
three Sections, A, B and C. Candidates will be Verify the laws of Boolean algebra using
required to answer two questions out of three from truth tables. Inputs, outputs for circuits like
Section A (each carrying 10 marks) and two half and full adders, majority circuit etc.,
questions out of three from Section B (each carrying SOP and POS representation; Maxterms &
10 marks) and two questions out of three from Minterms, Canonical and Cardinal
Section C (each carrying 5 marks). Therefore, a total representation, reduction using Karnaugh
of six questions are to be answered in Part II. maps and Boolean algebra.

SECTION A 2. Computer Hardware


1. Boolean Algebra (a) Elementary logic gates (NOT, AND, OR,
(a) Propositional logic, well formed formulae, NAND, NOR, XOR, XNOR) and their use in
truth values and interpretation of well formed circuits.
formulae (wff), truth tables, satisfiable, (b) Applications of Boolean algebra and logic
unsatisfiable and valid formulae. Equivalence gates to half adders, full adders, encoders,
laws and their use in simplifying wffs. decoders, multiplexers, NAND, NOR as
Propositional variables; the common logical universal gates.
connectives (~ (not)(negation), ∧ Show the correspondence between Boolean
(and)(conjunction), ∨ (or)(disjunction), ⇒ methods and the corresponding switching
(implication), ⇔ (biconditional); definition circuits or gates. Show that NAND and NOR
of a well-formed formula (wff); gates are universal by converting some circuits
`representation of simple word problems as to purely NAND or NOR gates.
wff (this can be used for motivation); the
values true and false; interpretation of a wff;
truth tables; satisfiable, unsatisfiable and SECTION B
valid formulae. The programming element in the syllabus (Sections B
Equivalence laws: commutativity of ∧, ∨; and C) is aimed at algorithmic problem solving and
associativity of ∧, ∨; distributivity; De not merely rote learning of Java syntax. The Java
Morgan’s laws; law of implication (p ⇒ q ≡ version used should be 5.0 or later. For programming,
~p ∨ q); law of biconditional ((p ⇔ q) ≡ the students can use any text editor and the javac and
(p ⇒ q) ∧ (q ⇒ p)); identity (p ≡ p); law of java programs or any other development
negation (~ (~p) ≡ p); law of excluded environment: for example, BlueJ, Eclipse, NetBeans
middle (p ∨~p ≡ true); law of contradiction etc. BlueJ is strongly recommended for its simplicity,
(p∧~p ≡ false); tautology and contingency ease of use and because it is very well suited for an
simplification rules for ∧, ∨. Converse, ‘objects first’ approach.
inverse and contra positive. Chain rule,
Modus ponens.

273
3. Implementation of algorithms to solve 8. Statements, Scope
problems
Statements; conditional (if, if else, if else if,
The students are required to do lab assignments switch case, ternary operator), looping (for,
in the computer lab concurrently with the while, do while, continue, break); grouping
lectures. Programming assignments should be statements in blocks, scope and visibility of
done such that each major topic is covered in at variables.
least one assignment. Assignment problems
9. Methods
should be designed so that they are sufficiently
challenging. Students must do algorithm design, Methods (as abstractions for complex user
address correctness issues, implement and defined operations on objects), formal arguments
execute the algorithm in Java and debug where and actual arguments in methods; different
necessary. behaviour of primitive and object arguments.
Static method and variables. The this Operator.
Self explanatory.
Examples of algorithmic problem solving using
4. Programming in Java (Review of Class XI methods (number problems, finding roots of
Sections B and C) algebraic equations etc.).
Note that items 4 to 13 should be introduced 10. Arrays, Strings
almost simultaneously along with classes and
Structured data types – arrays (single and multi-
their definitions.
dimensional), address calculations, strings.
While reviewing, ensure that new higher order Example algorithms that use structured data types
problems are solved using these constructs. (e.g. searching, finding maximum/minimum,
sorting techniques, solving systems of linear
5. Objects
equations, substring, concatenation, length,
(a) Objects as data (attributes) + behaviour access to char in string, etc.).
(methods); object as an instance of a class.
Storing many data elements of the same type
Constructors.
requires structured data types – like arrays.
(b) Analysis of some real-world programming Access in arrays is constant time and does not
examples in terms of objects and classes. depend on the number of elements. Address
calculation (row major and column major),
(c) Basic input/output using Scanner and Printer
Sorting techniques (bubble, selection, insertion).
classes from JDK; input/output exceptions.
Structured data types can be defined by classes –
Tokens in an input stream, concept of
String. Introduce the Java library String class
whitespace, extracting tokens from an input
and the basic operations on strings (accessing
stream (String Tokenizer class).
individual characters, various substring
6. Primitive values, Wrapper classes, Types and operations, concatenation, replacement, index of
casting operations). The class StringBuffer should be
introduced for those applications that involve
Primitive values and types: byte, int, short, long,
heavy manipulation of strings.
float, double, boolean, char. Corresponding
wrapper classes for each primitive type. Class as 11. Recursion
type of the object. Class as mechanism for user
Concept of recursion, simple recursive methods
defined types. Changing types through user
(e.g. factorial, GCD, binary search, conversion of
defined casting and automatic type coercion for
representations of numbers between different
some primitive types.
bases).
7. Variables, Expressions
Many problems can be solved very elegantly by
Variables as names for values; named constants observing that the solution can be composed of
(final), expressions (arithmetic and logical) and solutions to ‘smaller’ versions of the same
their evaluation (operators, associativity, problem with the base version having a known
precedence). Assignment operation; difference simple solution. Recursion can be initially
between left hand side and right hand side of motivated by using recursive equations to define
assignment. certain methods. These definitions are fairly
obvious and are easy to understand. The

274
definitions can be directly converted to a implementing the interface. Conversion of
program. Emphasize that any recursion must Infix to Prefix and Postfix notations.
have a base case. Otherwise, the computation Basic algorithms and programs using the
can go into an infinite loop. above data structures.
The tower of Hanoi is a very good example of Data structures should be defined as abstract
how recursion gives a very simple and elegant data types with a well-defined interface (it is
solution where as non-recursive solutions are instructive to define them using the Java
quite complex. interface construct).
(b) Single linked list (Algorithm and
SECTION C
programming), binary trees, tree traversals
(Conceptual).
Inheritance, Interface, Polymorphism, Data
structures, Computational complexity The following should be covered for each
data structure:
12. Inheritance, Interfaces and Polymorphism
Linked List (single): insertion, deletion,
(a) Inheritance; super and derived classes;
reversal, extracting an element or a sublist,
member access in derived classes;
checking emptiness.
redefinition of variables and methods in
subclasses; abstract classes; class Object; Binary trees: apart from the definition the
protected visibility. Subclass polymorphism following concepts should be covered: root,
and dynamic binding. internal nodes, external nodes (leaves),
height (tree, node), depth (tree, node), level,
Emphasize inheritance as a mechanism to
size, degree, siblings, sub tree,
reuse a class by extending it. Inheritance
completeness, balancing, traversals (pre,
should not normally be used just to reuse
post and in-order).
some methods defined in a class but only
when there is a genuine specialization (or 14. Complexity and Big O notation
subclass) relationship between objects of the Concrete computational complexity; concept of
super class and that of the derived class. input size; estimating complexity in terms of
(b) Interfaces in Java; implementing interfaces methods; importance of dominant term;
through a class; interfaces for user defined constants, best, average and worst case.
implementation of behaviour. Big O notation for computational complexity;
Motivation for interface: often when creating analysis of complexity of example algorithms
reusable classes some parts of the exact using the big O notation (e.g. Various searching
implementation can only be provided by the and sorting algorithms, algorithm for solution of
final end user. For example, in a class that linear equations etc.).
sorts records of different types the exact
comparison operation can only be provided PAPER II: PRACTICAL – 30 MARKS
by the end user. Since only he/she knows
which field(s) will be used for doing the This paper of three hours’ duration will be evaluated
comparison and whether sorting should be in by the Visiting Examiner appointed locally and
ascending or descending order be given by approved by the Council.
the user of the class. The paper shall consist of three programming
Emphasize the difference between the Java problems from which a candidate has to attempt any
language construct interface and the word one. The practical consists of the two parts:
interface often used to describe the set of
method prototypes of a class. 1. Planning Session
2. Examination Session
13. Data structures
The total time to be spent on the Planning session and
(a) Basic data structures (stack, queue, circular the Examination session is three hours.
queue, dequeue); implementation directly A maximum of 90 minutes is permitted for the
through classes; definition through an Planning session and 90 minutes for the Examination
interface and multiple implementations by session.

275
Candidates are to be permitted to proceed to the NOTE:
Examination Session only after the 90 minutes of
the Planning Session are over. Algorithm should be expressed clearly using any
standard scheme such as a pseudo code.
Planning Session
The candidates will be required to prepare an EQUIPMENT
algorithm and a hand written Java program to solve There should be enough computers to provide for a
the problem. teaching schedule where at least three-fourths of the
Examination Session time available is used for programming.
The program handed in at the end of the Planning Schools should have equipment/platforms such that
session shall be returned to the candidates. The all the software required for practical work runs
candidates will be required to key-in and execute the properly, i.e. it should run at acceptable speeds.
Java program on seen and unseen inputs individually
on the Computer and show execution to the Visiting Since hardware and software evolve and change very
Examiner. A printout of the program listing including rapidly, the schools may have to upgrade them as
output results should be attached to the answer script required.
containing the algorithm and handwritten program. Following are the recommended specifications as of
This should be returned to the examiner. The
now:
program should be sufficiently documented so that
the algorithm, representation and development The Facilities:
process is clear from reading the program. Large
differences between the planned program and the • A lecture cum demonstration room with a
printout will result in loss of marks. MULTIMEDIA PROJECTOR/ an LCD and
O.H.P. attached to the computer.
Teachers should maintain a record of all the
assignments done as part of the practical work • A white board with white board markers should
through the year and give it due credit at the time of be available.
cumulative evaluation at the end of the year. Students
are expected to do a minimum of twenty-five • A fully equipped Computer Laboratory that
assignments for the year. allows one computer per student.
• Internet connection for accessing the World
EVALUATION: Wide Web and email facility.
Marks (out of a total of 30) should be distributed as
given below: • The computers should have a minimum of
1 GB RAM and a P IV or higher processor. The
Continuous Evaluation
basic requirement is that it should run the
Candidates will be required to submit a work file operating system and Java programming system
containing the practical work related to programming (Java compiler, Java runtime environment, Java
assignments done during the year. development environment) at acceptable speeds.
Programming assignments done 10 marks
throughout the year (Internal • Good Quality printers.
Evaluation) Software:
Programming assignments done 5 marks
throughout the year (Visiting Examiner) • Any suitable Operating System can be used.
Terminal Evaluation • JDK 6 or later.
Solution to programming problem on 15 Marks • Documentation for the JDK version being used.
the computer
• A suitable text editor. A development
Marks should be given for choice of algorithm and environment with a debugger is preferred
implementation strategy, documentation, correct (e.g. BlueJ, Eclipse, NetBeans). BlueJ is
output on known inputs mentioned in the question recommended for its ease of use and simplicity.
paper, correct output for unknown inputs available
only to the examiner.

276
SAMPLE TABLE FOR PRACTICAL WORK
Assessment of Assessment of the Practical Examination TOTAL MARKS
Practical File (To be evaluated by the Visiting Examiner only) (Total Marks are to
Unique be added and
Identification Internal Visiting Algorithm Java Program with Hard Output entered by the
S. No.
Number (Unique Evaluation Examiner internal Copy Visiting Examiner)
ID) of the candidate 10 Marks 5 Marks Documentation (printout)
3 Marks 7 Marks 2 Marks 3 Marks 30 Marks

1.

2.

3.

4.

5.

6.

7.

8.

9.

10.

Name of the Visiting Examiner:_________________________________


Signature: _______________________________
Date:___________________________________

277

You might also like