Revised Class 11 Computer Science Syllabus
Code No. 083
1. Learning Outcomes
- Ability to understand and apply basic computational thinking.
- Ability to understand the notion of data types and data structures and
- apply in different situations.
- Ability to appreciate the notion of an algorithm and apply its structure
- including how algorithms handle corner cases.
- Ability to develop a basic understanding of computer systems –
- architecture, operating system, mobile and cloud computing.
- Ability to work in the cyber world with understanding of cyber ethics,
- cyber safety and cybercrime
Unit I: Computer Systems and Organis
- Basic computer Organisation: description of a computer system and mobile system, CPU, memory, hard disk, I/O, battery.
- Types of software: Application software, System software and Utility software.
- Memory Units: bit, byte, MB, GB, TB, and PB.
- Boolean logic: NOT, AND, OR, NAND, NOR, XOR, NOT, truth tables and
- De Morgan’s laws, Logic circuits
- Number System: numbers in base 2, 8, 16 and binary addition.
- Encoding Schemes : ASCII, ISCII and Unicode
- Concept of Compiler and Interpreter
- Operating System (OS) – need for an operating system, brief introduction
- to functions of OS, user interface
Unit II: Computational Thinking and Programming – 1
Introduction to Problem solving: Problem solving cycle – Analysing a problem, designing algorithms and representation of algorithm using flowchart and pseudo-code. Familiarization with the basics of Python programming: a simple “hello world” program, the process of writing a program (Interactive & Script mode), running it and print statements; simple data-types: integer, float and string.
- Features of Python, Python Character Set, Token & Identifiers, Keywords, Literals, Delimiters, Operators.
- Comments: (Single line & Multiline/ Continuation statements), Clarity & Simplification of expression
- Introduce the notion of a variable and methods to manipulate it (concept of L-value and R-value even if not taught explicitly).
- Knowledge of data types and operators: accepting input from the console, assignment statement, expressions, operators and their precedence.
- Operators & types: Binary operators-Arithmetic, Relational Operators, Logical Operators, Augmented Assignment Operators.
- Execution of a program, errors- syntax error, run-time error and logical error.
- Conditional statements: if, if-else, if-elif-else; simple programs: e.g.: absolute value, sort 3 numbers and divisibility of a number.
- Notion of iterative computation and control flow: for(range(),len()), while, using flowcharts, suggested programs: calculation of simple and compound interests, finding the factorial of a positive number etc.
- Strings: Traversal, operations – concatenation, repetition, membership;
- functions/methods–len(), capitalize(), title(), upper(), lower(), count(), find(), index(), isalnum(), islower(), isupper(), isspace(), isalpha(), isdigit(), split(), partition(), strip(), lstrip(), rstrip(), replace(); String slicing.
- Lists: Definition, Creation of a list, Traversal of a list. Operations on a list – concatenation, repetition, membership; functions/methods–len(), list(), append(), extend(), insert(), count(), index(), remove(), pop(), reverse(), sort(), min(), max(), sum(); Lists Slicing; Nested lists; finding the maximum, minimum, mean of numeric values stored in a list; linear search on list of numbers and counting the frequency of elements in a list.
- Tuples: Definition, Creation of a Tuple, Traversal of a tuple. Operations on a tuple – concatenation, repetition, membership; functions/methods – len(), tuple(), count(), index(), sorted(), min(), max(), sum(); Nested tuple; Tuple slicing; finding the minimum, maximum, mean of values stored in a tuple; linear search on a tuple of numbers, counting the frequency of elements in a tuple.
- Dictionary: Definition, Creation, Accessing elements of a dictionary, add an item, modify an item in a dictionary; Traversal, functions/methods – len(), dict(), keys(), values(), items(), get(), update(), del(), del, clear(), fromkeys(), copy(), pop(), popitem(), setdefault(), max(), min(), count(),sorted() copy(); Suggested programs : count the number of times a character appears in a given string using a dictionary, create a dictionary with names of employees, their salary and access them.
- Introduction to Python modules: Importing math module (pi, e, sqrt, ceil, floor, pow, fabs, sin, cos, tan); random module (random, randint, randrange), statistics module (mean, median, mode)
Unit III: Society, Law and Ethics
- Cyber safety: safely browsing the web, identity protection, confidentiality, social networks, cyber trolls and bullying.
- Appropriate usage of social networks: spread of rumours, and common social networking sites (Twitter, LinkedIn, and Facebook) and specific usage rules.
- Safely accessing web sites: adware, malware, viruses, trojans
- Safely communicating data: secure connections, eavesdropping, phishing and identity verification.
- Intellectual property rights, plagiarism, digital rights management, and licensing (Creative Commons, GPL and Apache), open source, open data, privacy.
- Privacy laws, fraud; cyber-crime- phishing, illegal downloads, child pornography, scams; cyber forensics, IT Act, 2000.
- Technology and society:
- understanding of societal issues and cultural changes induced by
- E-waste management: proper disposal of used electronic gadgets.
- Identity theft, unique ids and biometrics.
- Gender and disability issues while teaching and using computers.