Page 1
Computer Science
CLASS-XII
Code No. 083
2023-24
1. Prerequisites
Computer Science- Class XI
2. Learning Outcomes
Student should be able to
a) apply the concept of function.
b) explain and use the concept of file handling.
c) use basic data structure: Stacks
d) explain basics of computer networks.
e) use Database concepts, SQL along with connectivity between Python and SQL.
3. Distribution of Marks:
Unit No. Unit Name Marks Periods
Theory Practical
I Computational Thinking and
Programming – 2
40 70 50
II Computer Networks 10 15 …
III Database Management 20 25 20
Total 70 110 70
4. Unit wise Syllabus
Unit I: Computational Thinking and Programming – 2
? Revision of Python topics covered in Class XI.
? Functions: types of function (built-in functions, functions defined in module, user
defined functions), creating user defined function, arguments and parameters, default
Page 2
Computer Science
CLASS-XII
Code No. 083
2023-24
1. Prerequisites
Computer Science- Class XI
2. Learning Outcomes
Student should be able to
a) apply the concept of function.
b) explain and use the concept of file handling.
c) use basic data structure: Stacks
d) explain basics of computer networks.
e) use Database concepts, SQL along with connectivity between Python and SQL.
3. Distribution of Marks:
Unit No. Unit Name Marks Periods
Theory Practical
I Computational Thinking and
Programming – 2
40 70 50
II Computer Networks 10 15 …
III Database Management 20 25 20
Total 70 110 70
4. Unit wise Syllabus
Unit I: Computational Thinking and Programming – 2
? Revision of Python topics covered in Class XI.
? Functions: types of function (built-in functions, functions defined in module, user
defined functions), creating user defined function, arguments and parameters, default
parameters, positional parameters, function returning value(s), flow of execution, scope
of a variable (global scope, local scope)
? Exception Handling: Introduction, handling exceptions using try-except-finally blocks
? Introduction to files, types of files (Text file, Binary file, CSV file), relative
and absolute paths
? Text file: opening a text file, text file open modes (r, r+, w, w+, a, a+), closing a text
file, opening a file using with clause, writing/appending data to a text file using write()
and writelines(), reading from a text file using read(), readline() and readlines(), seek
and tell methods, manipulation of data in a text file
? Binary file: basic operations on a binary file: open using file open modes (rb, rb+, wb,
wb+, ab, ab+), close a binary file, import pickle module, dump() and load() method,
read, write/create, search, append and update operations in a binary file
? CSV file: import csv module, open / close csv file, write into a csv file using
writer(),writerow(),writerows() and read from a csv file using reader()
? Data Structure: Stack, operations on stack (push & pop), implementation of stack
using list.
Unit II: Computer Networks
? Evolution of networking: introduction to computer networks, evolution of networking
(ARPANET, NSFNET, INTERNET)
? Data communication terminologies: concept of communication, components of data
communication (sender,receiver, message, communication media, protocols),
measuring capacity of communication media (bandwidth, data transfer rate), IP
address, switching techniques (Circuit switching, Packet switching)
? Transmission media: Wired communication media (Twisted pair cable, Co-axial cable,
Fiber-optic cable), Wireless media (Radio waves, Micro waves, Infrared waves)
? Network devices (Modem, Ethernet card, RJ45, Repeater, Hub, Switch, Router,
Gateway, WIFI card)
? Network topologies and Network types: types of networks (PAN, LAN, MAN, WAN),
networking topologies (Bus, Star, Tree)
? Network protocol: HTTP, FTP, PPP, SMTP, TCP/IP, POP3, HTTPS, TELNET, VoIP
? Introduction to web services: WWW, Hyper Text Markup Language (HTML),
Extensible Markup Language (XML), domain names, URL, website, web browser,
web servers, web hosting
Unit III: Database Management
? Database concepts: introduction to database concepts and its need
? Relational data model: relation, attribute, tuple, domain, degree, cardinality, keys
(candidate key, primary key, alternate key, foreign key)
? Structured Query Language: introduction, Data Definition Language and Data
Manipulation Language, data type (char(n), varchar(n), int, float, date), constraints (not
null, unique, primary key), create database, use database, show databases, drop
database, show tables, create table, describe table, alter table (add and remove an
attribute, add and remove primary key), drop table, insert, delete, select, operators
(mathematical, relational and logical), aliasing, distinct clause, where clause, in,
between, order by, meaning of null, is null, is not null, like, update command, delete
command, aggregate functions (max, min, avg, sum, count), group by, having clause,
Page 3
Computer Science
CLASS-XII
Code No. 083
2023-24
1. Prerequisites
Computer Science- Class XI
2. Learning Outcomes
Student should be able to
a) apply the concept of function.
b) explain and use the concept of file handling.
c) use basic data structure: Stacks
d) explain basics of computer networks.
e) use Database concepts, SQL along with connectivity between Python and SQL.
3. Distribution of Marks:
Unit No. Unit Name Marks Periods
Theory Practical
I Computational Thinking and
Programming – 2
40 70 50
II Computer Networks 10 15 …
III Database Management 20 25 20
Total 70 110 70
4. Unit wise Syllabus
Unit I: Computational Thinking and Programming – 2
? Revision of Python topics covered in Class XI.
? Functions: types of function (built-in functions, functions defined in module, user
defined functions), creating user defined function, arguments and parameters, default
parameters, positional parameters, function returning value(s), flow of execution, scope
of a variable (global scope, local scope)
? Exception Handling: Introduction, handling exceptions using try-except-finally blocks
? Introduction to files, types of files (Text file, Binary file, CSV file), relative
and absolute paths
? Text file: opening a text file, text file open modes (r, r+, w, w+, a, a+), closing a text
file, opening a file using with clause, writing/appending data to a text file using write()
and writelines(), reading from a text file using read(), readline() and readlines(), seek
and tell methods, manipulation of data in a text file
? Binary file: basic operations on a binary file: open using file open modes (rb, rb+, wb,
wb+, ab, ab+), close a binary file, import pickle module, dump() and load() method,
read, write/create, search, append and update operations in a binary file
? CSV file: import csv module, open / close csv file, write into a csv file using
writer(),writerow(),writerows() and read from a csv file using reader()
? Data Structure: Stack, operations on stack (push & pop), implementation of stack
using list.
Unit II: Computer Networks
? Evolution of networking: introduction to computer networks, evolution of networking
(ARPANET, NSFNET, INTERNET)
? Data communication terminologies: concept of communication, components of data
communication (sender,receiver, message, communication media, protocols),
measuring capacity of communication media (bandwidth, data transfer rate), IP
address, switching techniques (Circuit switching, Packet switching)
? Transmission media: Wired communication media (Twisted pair cable, Co-axial cable,
Fiber-optic cable), Wireless media (Radio waves, Micro waves, Infrared waves)
? Network devices (Modem, Ethernet card, RJ45, Repeater, Hub, Switch, Router,
Gateway, WIFI card)
? Network topologies and Network types: types of networks (PAN, LAN, MAN, WAN),
networking topologies (Bus, Star, Tree)
? Network protocol: HTTP, FTP, PPP, SMTP, TCP/IP, POP3, HTTPS, TELNET, VoIP
? Introduction to web services: WWW, Hyper Text Markup Language (HTML),
Extensible Markup Language (XML), domain names, URL, website, web browser,
web servers, web hosting
Unit III: Database Management
? Database concepts: introduction to database concepts and its need
? Relational data model: relation, attribute, tuple, domain, degree, cardinality, keys
(candidate key, primary key, alternate key, foreign key)
? Structured Query Language: introduction, Data Definition Language and Data
Manipulation Language, data type (char(n), varchar(n), int, float, date), constraints (not
null, unique, primary key), create database, use database, show databases, drop
database, show tables, create table, describe table, alter table (add and remove an
attribute, add and remove primary key), drop table, insert, delete, select, operators
(mathematical, relational and logical), aliasing, distinct clause, where clause, in,
between, order by, meaning of null, is null, is not null, like, update command, delete
command, aggregate functions (max, min, avg, sum, count), group by, having clause,
joins: cartesian product on two tables, equi-join and natural join
? Interface of python with an SQL database: connecting SQL with Python, performing
insert, update, delete queries using cursor, display data by using connect(), cursor(),
execute(), commit(), fetchone(), fetchall(), rowcount, creating database connectivity
applications, use of %s format specifier or format() to perform queries
5. Practical
S.No Unit Name Marks
(Total=30)
1
Lab Test:
1. Python program (60% logic + 20%
documentation + 20% code quality)
8
2. SQL queries (4 queries based on one or
two tables)
4
2 Report file:
? Minimum 15 Python programs.
? SQL Queries – Minimum 5 sets using
one table / two tables.
? Minimum 4 programs based on Python -
SQL connectivity
7
3 Project (using concepts learnt in Classes 11
and 12)
8
4 Viva voce 3
6. Suggested Practical List:
Python Programming
? Read a text file line by line and display each word separated by a #.
? Read a text file and display the number of vowels/consonants/uppercase/lowercase
characters in the file.
? Remove all the lines that contain the character 'a' in a file and write it to another file.
? Create a binary file with name and roll number. Search for a given roll number and
display the name, if not found display appropriate message.
? Create a binary file with roll number, name and marks. Input a roll number and update
the marks.
? Write a random number generator that generates random numbers between 1 and 6
(simulates a dice).
Page 4
Computer Science
CLASS-XII
Code No. 083
2023-24
1. Prerequisites
Computer Science- Class XI
2. Learning Outcomes
Student should be able to
a) apply the concept of function.
b) explain and use the concept of file handling.
c) use basic data structure: Stacks
d) explain basics of computer networks.
e) use Database concepts, SQL along with connectivity between Python and SQL.
3. Distribution of Marks:
Unit No. Unit Name Marks Periods
Theory Practical
I Computational Thinking and
Programming – 2
40 70 50
II Computer Networks 10 15 …
III Database Management 20 25 20
Total 70 110 70
4. Unit wise Syllabus
Unit I: Computational Thinking and Programming – 2
? Revision of Python topics covered in Class XI.
? Functions: types of function (built-in functions, functions defined in module, user
defined functions), creating user defined function, arguments and parameters, default
parameters, positional parameters, function returning value(s), flow of execution, scope
of a variable (global scope, local scope)
? Exception Handling: Introduction, handling exceptions using try-except-finally blocks
? Introduction to files, types of files (Text file, Binary file, CSV file), relative
and absolute paths
? Text file: opening a text file, text file open modes (r, r+, w, w+, a, a+), closing a text
file, opening a file using with clause, writing/appending data to a text file using write()
and writelines(), reading from a text file using read(), readline() and readlines(), seek
and tell methods, manipulation of data in a text file
? Binary file: basic operations on a binary file: open using file open modes (rb, rb+, wb,
wb+, ab, ab+), close a binary file, import pickle module, dump() and load() method,
read, write/create, search, append and update operations in a binary file
? CSV file: import csv module, open / close csv file, write into a csv file using
writer(),writerow(),writerows() and read from a csv file using reader()
? Data Structure: Stack, operations on stack (push & pop), implementation of stack
using list.
Unit II: Computer Networks
? Evolution of networking: introduction to computer networks, evolution of networking
(ARPANET, NSFNET, INTERNET)
? Data communication terminologies: concept of communication, components of data
communication (sender,receiver, message, communication media, protocols),
measuring capacity of communication media (bandwidth, data transfer rate), IP
address, switching techniques (Circuit switching, Packet switching)
? Transmission media: Wired communication media (Twisted pair cable, Co-axial cable,
Fiber-optic cable), Wireless media (Radio waves, Micro waves, Infrared waves)
? Network devices (Modem, Ethernet card, RJ45, Repeater, Hub, Switch, Router,
Gateway, WIFI card)
? Network topologies and Network types: types of networks (PAN, LAN, MAN, WAN),
networking topologies (Bus, Star, Tree)
? Network protocol: HTTP, FTP, PPP, SMTP, TCP/IP, POP3, HTTPS, TELNET, VoIP
? Introduction to web services: WWW, Hyper Text Markup Language (HTML),
Extensible Markup Language (XML), domain names, URL, website, web browser,
web servers, web hosting
Unit III: Database Management
? Database concepts: introduction to database concepts and its need
? Relational data model: relation, attribute, tuple, domain, degree, cardinality, keys
(candidate key, primary key, alternate key, foreign key)
? Structured Query Language: introduction, Data Definition Language and Data
Manipulation Language, data type (char(n), varchar(n), int, float, date), constraints (not
null, unique, primary key), create database, use database, show databases, drop
database, show tables, create table, describe table, alter table (add and remove an
attribute, add and remove primary key), drop table, insert, delete, select, operators
(mathematical, relational and logical), aliasing, distinct clause, where clause, in,
between, order by, meaning of null, is null, is not null, like, update command, delete
command, aggregate functions (max, min, avg, sum, count), group by, having clause,
joins: cartesian product on two tables, equi-join and natural join
? Interface of python with an SQL database: connecting SQL with Python, performing
insert, update, delete queries using cursor, display data by using connect(), cursor(),
execute(), commit(), fetchone(), fetchall(), rowcount, creating database connectivity
applications, use of %s format specifier or format() to perform queries
5. Practical
S.No Unit Name Marks
(Total=30)
1
Lab Test:
1. Python program (60% logic + 20%
documentation + 20% code quality)
8
2. SQL queries (4 queries based on one or
two tables)
4
2 Report file:
? Minimum 15 Python programs.
? SQL Queries – Minimum 5 sets using
one table / two tables.
? Minimum 4 programs based on Python -
SQL connectivity
7
3 Project (using concepts learnt in Classes 11
and 12)
8
4 Viva voce 3
6. Suggested Practical List:
Python Programming
? Read a text file line by line and display each word separated by a #.
? Read a text file and display the number of vowels/consonants/uppercase/lowercase
characters in the file.
? Remove all the lines that contain the character 'a' in a file and write it to another file.
? Create a binary file with name and roll number. Search for a given roll number and
display the name, if not found display appropriate message.
? Create a binary file with roll number, name and marks. Input a roll number and update
the marks.
? Write a random number generator that generates random numbers between 1 and 6
(simulates a dice).
? Write a Python program to implement a stack using list.
? Create a CSV file by entering user-id and password, read and search the password for
given userid.
Database Management
? Create a student table and insert data. Implement the following SQL commands on the
student table:
o ALTER table to add new attributes / modify data type / drop attribute
o UPDATE table to modify data
o ORDER By to display data in ascending / descending order
o DELETE to remove tuple(s)
o GROUP BY and find the min, max, sum, count and average
? Similar exercise may be framed for other cases.
? Integrate SQL with Python by importing suitable module.
7. Suggested Reading Material
? NCERT Textbook for COMPUTER SCIENCE (Class XII)
? Support Materials on the CBSE website.
8. Project
The aim of the class project is to create something that is tangible and useful using Python
file handling/ Python-SQL connectivity. This should be done in groups of two to three
students and should be started by students at least 6 months before the submission
deadline. The aim here is to find a real world problem that is worthwhile to solve.
Students are encouraged to visit local businesses and ask them about the problems that
they are facing. For example, if a business is finding it hard to create invoices for filing GST
claims, then students can do a project that takes the raw data (list of transactions), groups
the transactions by category, accounts for the GST tax rates, and creates invoices in the
appropriate format. Students can be extremely creative here. They can use a wide variety of
Python libraries to create user friendly applications such as games, software for their school,
software for their disabled fellow students, and mobile applications, of course to do some of
these projects, some additional learning is required; this should be encouraged. Students
should know how to teach themselves.
The students should be sensitized to avoid plagiarism and violations of copyright issues while
working on projects. Teachers should take necessary measures for this.
Read More