CBSE-2017 Syllabus for Computer science Classes XI and XII
- To develop logic for Problem Solving
- To understand the concept of Object Oriented Methodology
- To implement Object Oriented Programming using C + +
- To understand the concept of working with Relational Database
- To understand the basic concept of Logic of Computing
- To understand the basic concepts of Communication and Networking technologies
- To understand Open Source Software
The student will develop the following proficiency:
- Identifying Computer Components/Subsystems/Peripherals
- Problem Solving using Object Oriented Programming
- Database Handling
Class XI (11th) Theory
One Paper of 3 Hours and 70 marks.
15 Periods (10 Theory and 5 Practicals)
12 Marks (10 Theory ans 2 Practicals)
Introduction to C + +
45 Periods (25 Theory and 20 Practicals)
22 Marks (14 Theory and 8 Practicals)
20 Periods (10 Theory and 10 Practicals)
12 Marks (10 Theory and 2 Practicals)
Programming in C + +
100 Periods (65 Theory and 35 Practicals)
54 Marks (70 Theory and 30 Practicals)
180 Periods (110 Theory and 70 Practical)
100 Marks (70 Theory and 30 Practicals)
Unit 1: Computer Fundamentals
Evolution of computers; Basics of computer system and its operation: Functional Components and their inter-connections; concept of Booting.
Types of Software-System Software, Utility Software and Application Software.
System Software: Operating System, Compiler, Interpreter and Assembler.
Operating System: Need for operating system, Functions of Operating System (Processor Management, Memory Management, File Management and Device Management), Types of operating system-Interactive (GUI based), Real Time and Distributed; Commonly used operating systems: UNIX, LINUX, Windows, Solaris, BOSS (Bharat Operating System Solutions); Mobile OS-Android, Symbian.
Illustration and practice of the following tasks using any one of the above Operating Systems:
- Opening/Closing Windows
- Creating/Moving/Deleting Files/Folders
- Renaming Files/Folders
- Switching between Tasks
Utility Software: Anti Virus, File Management tools, Compression tools and Disk Management tools (Disk Cleanup, Disk Defragmenter, Backup)
Application software: Office Tools-Word Processor, Presentation Tool, Spreadsheet Package, Database Management System; Domain specific tools-School Management System, Inventory Management System, Payroll System, FinancialAccounting, Hotel Management, Reservation System and Weather Forecasting System
Number System: Binary, Octal, Decimal, Hexadecimal and conversion amongst these number systems.
Internal Storage encoding of Characters: ASCII, ISCII (Indian scripts Standard Code for Information Interchange), and UNICODE (for multilingual computing)
Microprocessor: Basic concepts, Clock speed (MHz, GHz), 16 bit, 32 bit, 64 bit processors, 128 bit processors; Types-CISC Processores (Complex Instruction set computing), RISC Processors (Reduced Instruction set computing), and EPIC (Explicitly parallel Instruction computing).
Units: Byte, Kilo Byte, Mega Byte, Giga Byte, Tera Byte, Peta Byte, Exa Byte, Zetta Byte, Yotta Byte
Primary Memory: Cache, RAM, ROM
Secondary Memory: Fixed and Removable Storage-Hard Disk Drive, CD/DVD Drive, Pen Drive, Blue Ray Disk
Input Output Ports/Connections: Serial, Parallel and Universal Serial Bus, PS-2 port, Infrared port, Bluetooth, Firewire.
Note: Exploring inside computer system in the computer lab class.
Unit 2: Introduction to C + +
C + + character set, C + + Tokens (Identifiers, Keywords, Constants, Operators), Structure of a C + + Program (include files, main function), Header files-iostream. h, iomanip. h, cout, cin; Use of I/O operators (<< and >>), Use of endl and setw (), Cascading of I/O operators, Error Messages; Use of editor, basic commands of editor, compilation, linking and execution.
Data Types, Variables and Constants:
Concept of Data types; Built-in Data types: Char, int, float and double; Constants: Integer Constants, Character constants, Floating Point Constants, String Constants; Access modifier: Const; Variables of built-in data types, Declaration/Initialisation of variables, Assignment statement; Type modifier: Signed, unsigned, long Operator and Expressions:
Operators: Arithmetic operators (-, +, *,/, %), Unary operator (-), Increment ( + + ) and Decrement (--) Operators, Relation operator (> > =, < ⇐ = =, = ), Logical operators (! && ||), Conditional operator, Precedence of Operators; Automatic type conversion in expressions, Type casting; C + + shorthands ( + =, =, * =,/=, % = )
UNIT 3: Programming Methodology
General Concepts; Modular approach; Clarity and Simplicity of Expressions, Use of proper Names for identifiers, Comments, Indentation; Documentation and Program Maintenance; Running and Debugging programs, Syntax Errors, Run-Time Errors, Logical Errors Problem Solving Methodologies: Understanding of the problem, Identifying minimum number of inputs required for output, Writing code to optimizing execution time and memory storage, step by step solution for the problem, breaking down solution into simple steps, Identification of arithmetic and logical operations required for solution, Control Structure: Conditional control and looping (finite and infinite)
UNIT 4: Programming in C + +
Flow of control:
Conditional statements: If-else, Nested if, switch. Case. Default, use of conditional operator, Nested switch. Case, break statement (to be used in switch. Case only); Loops: While, do-while, for and Nested loops Inbuilt Functions
Header file Categorization
Standard input/output functions File
gets (), puts ()
isalnum (), isalpha ().
isdigit (), islower (), isupper (), tolower (), toupper (), strcpy (), strcat ().
strlen (), strcmp (), strcmpi (), strrev (), strlen (), strupr (), strlwr (), fabs (), pow (), sgrt ().
sin (), cos (), abs (), randomize (), random ().
User Defined Functions: itoa (), atoi ()
Introduction to user-defined function and its requirements
Defining a function; function prototype, Invoking/calling a function, passing arguments to function, specifying argument data types, default argument, constant argument, call by value, call by reference, returning values from a function, calling functions with arrays, scope rules of functions and variables local and global variables.
Relating the Parameters and return type concepts in built-in functions.
Structured Data Type:
Arrays: Introductory to Array and its advantages.
One DimensionalArray: Declaration/initialisation of One-dimensional array, Inputting array elements, Accessing array elements, Manipulation of Array elements (sum of elements, product of elements, average of elements, linear search, finding maximum/minimum value) Declaration/Initialization of a String, string manipulations (counting vowels/consonants/digits/special characters, case conversion, reversing a string, reversing each word of a string) Two-dimensionalArray Declaration/initialisation of a two-dimensional array, inputting array elementsAccessing array elements, Manipulation of Array elements (sum of row element, column elements, diagonal elements, finding maximum/minimumvalues).
User-defined Data Types: Introduction to user defined data types. Structure Defining a Structure (Keyword Structure), Declaring structure variables, Accessing structure elements, Passing structure to Functions as value and reference argument/parameter, Function returning structure, Array of structures, passing an array of structure as an argument/a parameter to a function
Defining a symbol name using typedef keyword and defining a macro using #define directive.
Class XI (11th) Practical
One Paper of 3 Hours and 30 marks.
Programming in C + ± 10 Marks
One programming problem in C + + to be developed and tested in Computer during the examination. Marks are allotted on the basis of following:
Logic: 5 Marks
Documentation/Indentation: 2 Marks
Output presentation: 3 Marks
Project Work-6 Marks
Problems related to String, Number and Array manipulation
General Guidelines: Initial Requirement, developing an interface for user (it is advised to use text based interface screen), developing logic for playing the game and developing logic for scoring points
- Memory Game: A number guessing game with application of 2 dimensional arrays containing randomly generated numbers in pairs hidden inside boxes.
- Cross N Knots Game: A regular tic-tac-toe game
- Hollywood/Hangman: Aword Guessing game
- Cows N Bulls: Aword/number Guessing game
Similar projects may be undertaken in other domains
(As mentioned in general guidelines for project, given at the end of the curriculum in a group of 2 − 4 students)
Presentation based on research-02 Marks
It will be a group presentation based on a detailed study of at least two technology inventions in the field of information technology, which may include Inventor's name with country, out of box contributions year of invention, characteristics, social impact and uses. Apartial list of inventors is in theAnnexure.
(The project can be done in a group of 2 − 3 students)
Practical File-06 Marks
- Record of the configuration of computer system used by the student in the computer lab (by exploring inside computer system in the first 2 lab classes).
- Must have minimum 15 programs from the topics covered in class XI course.
- 5 Programs on Control structures
- 4 Programs on Array manipulations
- 4 Programs on String Manipulations
- 2 Programs on structure manipulations
Viva will be asked from the syllabus covered in class XI and the project developed by the student (s).
Class XII (12th) Theory
One Paper of 3 Hours and 70 marks.
Object Oriented Programming in C + +
85 Periods (50 Theory and 35 Practical)
43 Marks (30 Theory and 13 Practical)
50 Periods (30 Theory and 20 Practical)
24 Marks (14 Theory and 10 Practical)
Database Management System and SQL
25 Periods (10 Theory and 15 Practical)
15 Marks (8 Theory and 7 Practical)
10 Periods (10 Theory)
8 Marks (8 Theory)
Networking and open Source Software
10 Periods (10 Theory)
10 Marks (10Theory)
180 Periods (110 Theory and 70 Practical)
100 Marks (70 Theory and 30 Practical)
Unit 1: Object Oriented Programming in C + +
REVIEW: C + + covered In Class-XI.
Object Oriented Programming:
Concept of Object Oriented Programming-Data hiding, Data encapsulation, Class and Object, Abstract class and Concrete class, Polymorphism (Implementation of polymorphism using Function overloading as an example in C + + ); Inheritance, Advantages of Object Oriented Programming over earlier programming methodologies.
Implementation of Object Oriented Programming concepts in C + +:
Definition of a class, Members of a class-Data Members and Member Functions (methods), Using Private and Public visibility modes, default visibility mode (private); Member function definition: Inside class definition and outside class definition using scope resolution operator (: ); Declaration of objects as instances of a class; accessing members from object (s), Objects as function arguments-pass by value and pass by reference.
Constructor and Destructor:
- Constructor: Special Characteristics, Declaration and Definition of a constructor, Default Constructor, Overloaded Constructors, Copy Constructor, Constructor with default arguments
- Destructor: Special Characteristics, Declaration and definition of destructor
Inheritance (Extending Classes):
Concept of Inheritance, Base Class, Derived Class, Defining derived classes, protected visibility mode; Single level inheritance, Multilevel inheritance and Multiple inheritance, Privately derived, Publicly derived and Protectedly derived class, accessibility of members from objects and within derived class (es).
Data File Handling:
Need for a data file, Types of data files-Text file and Binary file.
- Basic file operations on text file:
- Creating/Writing text into file, Reading and Manipulation of text from an already existing text File (accessing sequentially)
- Creation of file, Writing data into file, Searching for required data from file, Appending data to a file, Insertion of data in sorted file, Deletion of data from file, Modification of data in a file; Implementation of above mentioned data file handling in C + +; Components of C + + to be used with file handling: Header file: Fstream. h; ifstream, ofstream, fstream classes; Opening a text file in in, out, and app modes
- Using cascading operators (>> <<) for writing text to the file and reading text from the file; open (), get (), put (), getline () and close () functions; Detecting end-of-file (with or without using eof () function); Opening a binary file using in, out, and app modes; open (), read (), write () and close () functions; Detecting end-of-file (with or without using eof () function); tellg (), tellp (), seekg (), seekp () functions.
Introduction to Printer, Declaration and Initialization of Pointers; Dynamic memory allocation/de-allocation operators: New, delete; Pointers and Arrays: Array of Pointers, Pointer to an array (1 dimensional array), Function returning a pointer, Reference variables and use of alias; Function call by reference. Pointer to structures: De-reference/Deference operator: *, → self referencial structures.
Unit 2: Data Structure
Introduction to data structure, primitive and non-primitive data structure, linear and non-linear structure, static and dynamic data structure.
- One and two Dimensional arrays: Sequential allocation and address calculation
- One dimensional array: Traversal, Searching (Linear, Binary Search), Insertion of an element in an array, deletion of an element from an array, Sorting (Insertion, Selection)
- Two-dimensional arrays: Traversal, Finding sum/difference of two NxM arrays containing numeric values, Interchanging Row and Column elements in a two dimensional array
Stack (Array and Linked implementation of Stack):
- Introduction to stock (LIFO _ Last in First Out Operations)
- Operations on Stack (PUSH and POP) and its Implementation in C + +, Converting expressions from INFIX to POSTFIX notation and evaluation of Postfix expression
Queue: (CircularArray and Linked Implementation):
- Introduction to Queue (FIFO-First in First out operations)
- Operations on Queue (Insert and Delete) and its Implementation in C + +.
Unit 3: Database Management System and SQL
- Database Concepts: Introduction to data base concepts and its need.
- Relational data model: Concept of domain, tuple, relation, key, primary key, alternate key, candidate key
- Relational algebra: Selection, Projection, Union and Cartesian product
- Structured Query Language:
- General Concepts: Advantages of using SQL, Data Definition Language and Data Manipulation Language
- Data types: NUMBER/DECIMAL, CHARACTER/VARCHAR/VARCHAR2, DATE
- SQL commands:
- CREATE TABLE, DROP TABLE, ALTER TABLE, UPDATE…SET… INSERT, DELETE; SELECT, DISTINCT, FROM, WHERE, IN, BETWEEN, GROUP BY, HAVING, ORDER BY
- SQL functions: SUM, AVG, COUNT, MAX and MIN
- Obtaining results (SELECT query) from 2 tables using equi-join, Cartesian Product and Union Note: Implementation of the above mentioned commands could be done on any SQL supported software on one or two tables.
Unit 4: BooleanAlgebra
- Role of Logical Operations in Computing.
- Binary-valued Quantities, Logical Variable, Logical Constant and Logical Operators: AND, OR, NOT; Truth Tables; Closure Property, Commutative Law, Associative Law, Identity law, Inverse law, Principle of Duality, Idem potent Law, Distributive Law, Absorption Law, Involution law, DeMorgan's Law and their applications
- Obtaining Sum of Product (SOP) and Product of Sum (POS) form from the Truth Table, Reducing Boolean Expression (SOP and POS) to its minimal form, Use of Karnaugh Map for minimization of Boolean expressions (up to 4 variables)
- Application of Computing Logic:
- Building up logic circuits using basic Logic Gates (NOT, AND, OR, NAND, NOT) Use of Boolean operators (NOT, AND, OR) in SQL SELECT statements
- Use of Boolean operators (AND, OR) in search engine queries.
Networking and open Source Software
- Communication Technologies
- Evolution of Networking: ARPANET, www, Internet, Interspace
- Different ways of sending data across the network with reference to switching techniques (Circuit, Message and Packet switching)
- Data Communication terminologies: Concept of Channel and Data transfer rate (bps, kbps, Mbps, Gbps, Tbps) Transmission media: Twisted pair cable, coaxial cable, optical fiber, infrared, radio link, microwave link and satellite link Network devices: Modem RJ11and RJ45 connectors, Ethernet Card, Hub, Switch, Gateway
- Network Topologies and types: Bus, Star, Tree; PAN, LAN, WAN, MAN
- India IT Act, Cyber Law, Cyber Crimes, IPR issues, Hacking.
- WebServices: WWW, Hyper Text Markup Language (HTML), eXtensible Markup Language (XML); Hyper Text Transfer Protocol (HTTP); Domain Names; URL; Protocol Address; Website, Web browser, Web Servers; Web Hosting, Web Scripting-Client side (VB Script, Java Script, PHP) and Server side (ASP, JSP, PHP), Web 2.0 (for social networking) Open Standards Introduction to open standards and its advantage in development of inter-operable environment.
- Open Source Concepts Proprietory and Open Source Software, Freeware, Shareware, FLOSS/FOSS, GNU, FSF, OSI, W3C
- Cloud Computing Characteristics, layers-client, Application, platform and infrastructure, Deployment models-Private cloud, Public cloud, Community cloud and hybrid cloud, Issues-Privacy, Compliance, Security, Sustainability and abuse.
Class XII (12th) Practicals
Programming in C + +
- One programming problem in C + + to be developed and tested in Computer during the examination. Marks are allotted on the basis of following:
- Logic: 5 Marks
- Documentation/Indentation: 2 Marks
- Output presentation: 3 Marks
- Notes: The types of problems to be given will be of application type from the following topics
- Arrays (One dimensional and two dimensional)
- Class (es) and objects
- Stack using arrays and or linked implementation
- Queue using arrays (circular) and or linked implementation
- Binary File operations (Creation, Displaying, Searching and modification)
- Text File operations (Creation, Displaying and modification)
SQL Commands-05 Marks
Five Query questions based on a particular Table/Reaction to be tested practically on Computer during the examination. The command along with the result must be written in the answer sheet.
Project Work-05 Marks
The project has to be developed in C + + language with Object Oriented Technology and also should have use of Data files (The project is required to be developed in a group of 2 − 4 students).
- Presentation on the computer
- Project report (Listing, Sample), Outputs, Documentation Viva
Practical File-05 Marks
Must have minimum 20 programs from the following topics
- Arrays (One dimensional and two dimensional, sorting, searching, merging, deletion'& insertion of elements)
- Class (es) and objects
- Stacks using arrays and linked implementation
- Queues using arrays (linear and circular) and linked implementation
- File (Binary and Text) operations (Creation, Updation, Query)
- Any computational based problems
15 SQL commands along with the output based on any table/relation:
Viva Voce-05 Marks
Viva will be asked from syllabus covered in class XII and the project developed by student.
GUIDELINES FOR PROJECTS (Class XI and XII)
- The academic course in Computer Science includes one Project in each year. The Purpose behind this is to consolidate the concepts and practices imparted during the course and to serve as a record of competence.
- A group of 2 − 3 students as team may be allowed to work on one project.
- Project for class XI can be selected from the topics mentioned in the syllabus or domains on the similarlines
- Project for class XII should ensure the coverage of following areas of curriculum:
- Flow of control
- Data Structure
- Object Oriented Programming in C + +
- Data File Handling Theme of the project can be
- Any subsystem of a System Software or Tool
- Any Scientific or a fairly complex algorithmic situation.
- School Management, Banking, Library information system, Hotel or Hospital management system, Transport query system Quizzes/Games
- Tutor/ComputerAided Learning Systems
- It is suggested to prepare a bilingual (English and other Indian language) user manual part of project file
- The aim of the project is to highlight the abilities of algorithmic formulation, modular programming, optimized code preparation, systematic documentation and other associated aspects of Software Development.
Suggested Reference Books
Computer Fundamentals and Boolean Algebra
- Rajaraman, FUNDAMENTALS OF COMPUTERS 4th Edition, Prentice Hall of India.
- Peter Norton, INTRODUCTION TO COMPUTER 4th Edition, Tata McGraw Hill
- Thomas C. Bartee, DIGITAL COMPUTER FUNDAMENTALS, McGraw Hill International.
Problem Solving and Programming in C + +
- Note: Prior knowledge of C is not required in the learning of C + +, eventhough reference about C are made in some of the books.
- Robert Lafore, OBJECT ORIENTED PROGRAMMING IN TURBO C + +, Galgotia Publications Pvt. Ltd.
- David Parsons, OBJECT ORIENTED PROGRAMMING WITH C + +, BPB Publications.
- Bjarne Stroutrup, THE C + + PROGRAMMING LANGUGE, Adison Wesley.
- M. A. Weiss, Data Structures and Algorithm Analysis in C + +. The Benjamin/Cummings Pub. Co. Inc.
- Sartaj & Sahni, Fundamentals of Data Structure, Galgotia Book Source
- Database Management System and SQL
- C. J. Date, DATABASE PRIMER, Adison Wesley.
Communication and Open Source Concepts
- A. S. Tanenbaum, Computer Network 4th Edition, Prentice Hall of India P. Ltd.
- Williams Stalling, Data Communication and Networks 5th Edition, Prentice Hall of India P. Ltd.
- Hancock, Network Concept and Architectures, BPB Publications.
- Web References-OpesourceW3Schools
- Tenative Inventors and their salient contributions in the field or Infromation Technology
Contribution/Field of Contribution
Andrew S. Tanenbaum
Operating Systems, MINIX
C + +
C (Programming Language), UNIX
Edgar F. Codd
Formulated The Database Relational Model
John Von Neumann
Early Computers, Von Neumann Machine
ARPANET, Queueing Theory, Packet Switching, Hierarchical Routing
Linux Kernel, Git
Object-Oriented Programming, Interaction (Computer Science)
Artifical Intelligence, Robotics
Robert E. Khan
Cray Research, Supercomputer
World Wide Web
Pentinum Processor, AMD K6 Processor