This document outlines the syllabus for Computer Science class XI. It covers 5 units:
1) Programming and Computational Thinking which focuses on Python programming, data structures, algorithms and debugging.
2) Computer Systems and Organization including basic computer architecture, software, data representation and cloud computing.
3) Data Management covering relational databases, SQL commands and NoSQL databases.
4) Society, Law and Ethics with a focus on cyber safety, appropriate social media usage and safe web practices.
5) Practical sessions including Python programs, SQL queries, a report file, viva and a semester project applying concepts learned.
4. 1. Prerequisites1. Prerequisites
• No major prerequisites are required for thisNo major prerequisites are required for this
course other than basic Mathematical skills.course other than basic Mathematical skills.
However, it will be helpful if the student hasHowever, it will be helpful if the student has
a basic knowledge of Computer Applications.a basic knowledge of Computer Applications.
6. 2. Learning Outcomes
1. Develop basic computational thinking.1. Develop basic computational thinking.
Learn how to reason with variables,Learn how to reason with variables,
state transitions, conditionals, andstate transitions, conditionals, and
iteration.iteration.
2. Understand the notion of data types,2. Understand the notion of data types,
and higher order data structures suchand higher order data structures such
as lists, tuples, and dictionaries.as lists, tuples, and dictionaries.
7. 2. Learning Outcomes
3.3. Appreciate the notion of an algorithm,Appreciate the notion of an algorithm,
and understand its structure,and understand its structure,
including how algorithms handleincluding how algorithms handle
corner cases.corner cases.
4. Develop a basic understanding of4. Develop a basic understanding of
computer systems - architecture,computer systems - architecture,
OS, mobile and cloud computing.OS, mobile and cloud computing.
8. 2. Learning Outcomes
5.5. Learn basic SQL programming.Learn basic SQL programming.
6. Learn all about cyber safety.6. Learn all about cyber safety.
10. 2.2. Distribution of MarksDistribution of Marks
Unit No.Unit No. Unit NameUnit Name MarksMarks
01.01. Programming and Computational Thinking - 1Programming and Computational Thinking - 1 3535
02.02. Computer Systems and OrganisationComputer Systems and Organisation 1010
03.03. Data Management - 1Data Management - 1 1515
04.04. Society, Law and Ethics - 1Society, Law and Ethics - 1 1010
05.05. PracticalPractical 3030
TotalTotal 100100
11. 4.1 Unit 14.1 Unit 1
Programming and ComputationalProgramming and Computational
Thinking (PCT-1)Thinking (PCT-1)
(80 Theory + 70 Practical)(80 Theory + 70 Practical)
12. Familiarization with the basics ofFamiliarization with the basics of
Python programming: a simplePython programming: a simple
“hello world" program, process of“hello world" program, process of
writing a program, running it, andwriting a program, running it, and
print statements; simple data-types:print statements; simple data-types:
integer, float, string.integer, float, string.
4.1. Unit 1: PCT - 1
13. Introduce the notion of a variable, andIntroduce the notion of a variable, and
methods to manipulate it (concept ofmethods to manipulate it (concept of
L-value and Rvalue even if not taughtL-value and Rvalue even if not taught
explicitly).explicitly).
4.1. Unit 1: PCT - 1
14. Knowledge of data types andKnowledge of data types and
operators: accepting input from theoperators: accepting input from the
console, assignment statement,console, assignment statement,
expressions, operators and theirexpressions, operators and their
precedence.precedence.
4.1. Unit 1: PCT - 1
16. Notion of iterative computation andNotion of iterative computation and
control flow: for, while, flowcharts,control flow: for, while, flowcharts,
decision trees and pseudo code;decision trees and pseudo code;
write a lot of programs: interestwrite a lot of programs: interest
calculation, primarily testing, andcalculation, primarily testing, and
factorials.factorials.
4.1. Unit 1: PCT - 1
17. Idea of debugging: errors andIdea of debugging: errors and
exceptions; debugging: pdb, breakexceptions; debugging: pdb, break
points.points.
4.1. Unit 1: PCT - 1
18. Lists, tuples and dictionary: findingLists, tuples and dictionary: finding
the maximum, minimum, mean; linearthe maximum, minimum, mean; linear
search on list/tuple of numbers, andsearch on list/tuple of numbers, and
counting the frequency of elements incounting the frequency of elements in
a list using a dictionary. Introduce thea list using a dictionary. Introduce the
notion of accessing elements in anotion of accessing elements in a
collection using numbers and names.collection using numbers and names.
4.1. Unit 1: PCT - 1
19. Sorting algorithm: bubble andSorting algorithm: bubble and
insertion sort; count the number ofinsertion sort; count the number of
operations while sorting.operations while sorting.
Strings: compare, concat, substring;Strings: compare, concat, substring;
notion of states and transitionsnotion of states and transitions
using state transition diagrams.using state transition diagrams.
4.1. Unit 1: PCT - 1
20. 4.2 Unit 24.2 Unit 2
Computer Systems andComputer Systems and
Organisation (CSO)Organisation (CSO)
(20 Theory + 06 Practical)(20 Theory + 06 Practical)
21. 4.2. Unit 2: CSO4.2. Unit 2: CSO
Basic computer organisation:Basic computer organisation:
description of a computer systemdescription of a computer system
and mobile system, CPU, memory,and mobile system, CPU, memory,
hard disk, I/O, battery, power.hard disk, I/O, battery, power.
Types of software: application, OS,Types of software: application, OS,
utility, libraries.utility, libraries.
22. Language of Bits: bit, byte, MB, GB,Language of Bits: bit, byte, MB, GB,
TB, and PB.TB, and PB.
Boolean logic: OR, AND, NAND, NOR,Boolean logic: OR, AND, NAND, NOR,
XOR, NOT, truth tables, De Morgan’sXOR, NOT, truth tables, De Morgan’s
laws.laws.
4.2. Unit 2: CSO4.2. Unit 2: CSO
23. Information representation: numbersInformation representation: numbers
in base 2, 8, 16, unsigned integers,in base 2, 8, 16, unsigned integers,
binary addition.binary addition.
Strings: ASCII, UTF8, UTF32, ISCIIStrings: ASCII, UTF8, UTF32, ISCII
(Indian script code).(Indian script code).
4.2. Unit 2: CSO4.2. Unit 2: CSO
24. Execution of a program: basic flow ofExecution of a program: basic flow of
compilation – programcompilation – program binarybinary
execution.execution.
Interpreters (process one line at aInterpreters (process one line at a
time), difference between a compilertime), difference between a compiler
and an interpreter.and an interpreter.
4.2. Unit 2: CSO4.2. Unit 2: CSO
25. Running a program: Notion of anRunning a program: Notion of an
operating system, how an operatingoperating system, how an operating
system runs a program, idea ofsystem runs a program, idea of
loading, operating system as aloading, operating system as a
resource manager.resource manager.
4.2. Unit 2: CSO4.2. Unit 2: CSO
26. Concept of cloud computers, cloudConcept of cloud computers, cloud
storage (public/private), and briefstorage (public/private), and brief
introduction to parallel computing.introduction to parallel computing.
4.2. Unit 2: CSO4.2. Unit 2: CSO
27. 4.3. Unit 34.3. Unit 3
Data Management (DM-1)Data Management (DM-1)
(30 Theory + 24 Practical)(30 Theory + 24 Practical)
28. Relational Databases: idea of aRelational Databases: idea of a
database and the need for it,database and the need for it,
relations, keys, primary key, foreignrelations, keys, primary key, foreign
key; use SQL commands to create akey; use SQL commands to create a
table, keys, foreign keys; insert/deletetable, keys, foreign keys; insert/delete
an entry, delete a table.an entry, delete a table.
4.3. Unit 3: DM - 14.3. Unit 3: DM - 1
29. SQL commands: select, project, andSQL commands: select, project, and
join; indexes, and a lot of in-classjoin; indexes, and a lot of in-class
practice.practice.
Basics of NoSQL databases - MongoBasics of NoSQL databases - Mongo
DB.DB.
4.3. Unit 3: DM - 14.3. Unit 3: DM - 1
30. 4.4. Unit 44.4. Unit 4
Society, Law and Ethics (SLE-1) –Society, Law and Ethics (SLE-1) –
Cyber safetyCyber safety
(10 Theory)(10 Theory)
31. Cyber safety: safely browsing theCyber safety: safely browsing the
web, identity protection,web, identity protection,
confidentiality, social networks,confidentiality, social networks,
cyber trolls and bullying.cyber trolls and bullying.
4.4. Unit 4: SLE - 14.4. Unit 4: SLE - 1
32. Appropriate usage of socialAppropriate usage of social
networks: spread of rumours, andnetworks: spread of rumours, and
common social networking sitescommon social networking sites
(Twitter, LinkedIn, and Facebook) and(Twitter, LinkedIn, and Facebook) and
specific usage rules.specific usage rules.
4.4. Unit 4: SLE - 14.4. Unit 4: SLE - 1
33. Safely accessing web sites: adware,Safely accessing web sites: adware,
malware, viruses, Trojans.malware, viruses, Trojans.
Safely communicating data: secureSafely communicating data: secure
connections, eavesdropping,connections, eavesdropping,
phishing and identity verification.phishing and identity verification.
4.4. Unit 4: SLE - 14.4. Unit 4: SLE - 1
34. 5. Unit 55. Unit 5
PracticalPractical
(30 Marks)(30 Marks)
35. 5. Unit 5: Practical5. Unit 5: Practical
S.NoS.No Unit NameUnit Name MarksMarks
(Total=30)(Total=30)
0101 LAB TEST (12 MARKS)LAB TEST (12 MARKS)
(a)(a) Python program (60% logic + 20%Python program (60% logic + 20%
documentation + 20% codedocumentation + 20% code
quality)quality)
0808
(b)(b) SQL program (at least 4 queries)SQL program (at least 4 queries) 0404
36. 5. Unit 5: Practical5. Unit 5: Practical
S.NoS.No Unit NameUnit Name MarksMarks
(Total=30)(Total=30)
0202 Report File + Viva (10 marks)Report File + Viva (10 marks)
(a)(a) Report file: Minimum 20 Python programs and 8Report file: Minimum 20 Python programs and 8
SQL commandsSQL commands
0707
(b)(b) Viva voce (based on the report file)Viva voce (based on the report file) 0303
37. 5. Unit 5: Practical5. Unit 5: Practical
S.NoS.No Unit NameUnit Name MarksMarks
(Total=30)(Total=30)
0303 Project (that uses most of the concepts that haveProject (that uses most of the concepts that have
been learnt)been learnt)
(See CS-XII for the rules regarding the projects).(See CS-XII for the rules regarding the projects).
0808
39. At least the following PythonAt least the following Python
concepts should be covered in the labconcepts should be covered in the lab
sessions: expressions, conditionals,sessions: expressions, conditionals,
loops, list, dictionary, and strings.loops, list, dictionary, and strings.
The following are someThe following are some
representative lab assignments.representative lab assignments.
5.1 Programming in Python.5.1 Programming in Python.
PracticalPractical
40. Find the largest and smallest numbersFind the largest and smallest numbers
in a list.in a list.
Find the third largest number in a list.Find the third largest number in a list.
Test for primarily.Test for primarily.
5.1 Programming in Python.5.1 Programming in Python.
PracticalPractical
41. Find whether a string is a palindromeFind whether a string is a palindrome
or not.or not.
Given two integers x and n, computeGiven two integers x and n, compute
xxnn
..
5.1 Programming in Python.5.1 Programming in Python.
PracticalPractical
42. Compute the greatest common divisorCompute the greatest common divisor
and the least common multiple of twoand the least common multiple of two
integers.integers.
Test if a number is equal to the sumTest if a number is equal to the sum
of the cubes of its digits. Find theof the cubes of its digits. Find the
smallest and largest such numbers.smallest and largest such numbers.
5.1 Programming in Python.5.1 Programming in Python.
PracticalPractical
44. At least the following SQL commandsAt least the following SQL commands
should be covered during the labs:should be covered during the labs:
create, insert, delete, select, andcreate, insert, delete, select, and
join. The following are somejoin. The following are some
representative assignments.representative assignments.
5.2. Data Management: SQL Commands5.2. Data Management: SQL Commands
PracticalPractical
45. Create a student table with the studentCreate a student table with the student
id, name, and marks as attributesid, name, and marks as attributes
where the student id is the primarywhere the student id is the primary
key.key.
Insert the details of a new student inInsert the details of a new student in
the above table.the above table.
5.2. Data Management: SQL Commands5.2. Data Management: SQL Commands
PracticalPractical
46. Delete the details of a particularDelete the details of a particular
student in the above table.student in the above table.
Use the select command to get theUse the select command to get the
details of the students with marksdetails of the students with marks
more than 80.more than 80.
5.2. Data Management: SQL Commands5.2. Data Management: SQL Commands
PracticalPractical
47. Create a new table (name, date ofCreate a new table (name, date of
birth) by joining two tables (student id,birth) by joining two tables (student id,
name) and (student id, date of birth).name) and (student id, date of birth).
5.2. Data Management: SQL Commands5.2. Data Management: SQL Commands
PracticalPractical
48. Create a new table (order ID,Create a new table (order ID,
customer Name, and order Date) bycustomer Name, and order Date) by
joining two tables (order ID, customerjoining two tables (order ID, customer
ID, and order Date) and (customer ID,ID, and order Date) and (customer ID,
customer Name, contact Name,customer Name, contact Name,
country).country).
5.2. Data Management: SQL Commands5.2. Data Management: SQL Commands
PracticalPractical