1. Prerequisites
Computer Science- Class XI
2. Learning Outcomes
1.Understand the concept of functions and recursion.
2.Learn how to create and use Python libraries.
3.Learn file handling.
4.Learn about the concept of efficiency in algorithms and computing in general.
5.Learn basic data structures: lists, stacks, and queues.
6.Get a basic understanding of computer networks: network stack, basic network hardware, basic protocols, and basic tools.
7.Connect a Python program with an SQL database, and learn aggregation functions in SQL.
8.Have a clear understanding of cyber ethics and cybercrime. Understand the value of technology in societies, gender and disability issues, and the technology behind biometric ids.
3. Distribution of Marks
4.1 Unit 1: Programming and Computational Thinking (PCT-2)
(80 Theory + 70 Practical)
- Revision of the basics of Python
- Functions: scope, parameter passing, mutable/immutable properties of data objects, pass arrays to functions, return values, functions using libraries: mathematical, and string functions
- File handling: open and close a file, read, write, and append to a file, standard input, output, and error streams, relative and absolute paths
- Using Python libraries: create and import Python libraries
- Recursion: simple algorithms with recursion: factorial, Fibonacci numbers; recursion on arrays: binary search
- Idea of efficiency: performance defined as inversely proportional to the wall clock time, count the number of operations a piece of code is performing, and measure the time taken by a program. Example: take two different programs for the same problem, and understand how the efficient one takes less time
- Data visualization using Pyplot: line chart, pie chart, and bar chart
- Data-structures: lists, stacks, queues
4.2 Unit 2: Computer Networks (CN)
(30 Theory + 10 Practical)
- Structure of a network: Types of networks: local area and wide area (web and internet), new technologies such as cloud and IoT, public vs. private cloud, wired and wireless networks; concept of a client and server
- Network devices such as a NIC, switch, hub, router, and access point
- Network stack: amplitude and frequency modulation, collision in wireless networks, error checking, and the notion of a MAC address, main idea of routing. IP addresses: (v4 and v6), routing table, router, DNS, and web URLs, TCP: basic idea of retransmission, and rate modulation when there is congestion (analogy to a road network), Protocols: 2G, 3G, 4G, Wi- Fi. What makes a protocol have a higher bandwidth ?
- Basic network tools: traceroute, ping, ipconfig, nslookup, whois, speed-test
- Application layer: HTTP (basic idea), working of email, secure communication: encryption and certificates (HTTPS), network applications: remote desktop, remote login, HTTP, FTP, SCP, SSH, POP/IMAP, SMTP, VoIP, NFC
4.3 Unit 3: Data Management (DM-2)
(20 Theory + 20 Practical)
- Write a minimal Django based web application that parses a GET and POST request, and writes the fields to a file - flat file and CSV file
- Interface Python with an SQL database
- SQL commands: aggregation functions – having, group by, order by
4.4 Unit 4: Society, Law and Ethics (SLE-2)
(10 Theory)
- 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 technology
- E-waste management: proper disposal of used electronic gadgets
- Identity theft, unique ids, and biometrics
- Gender and disability issues while teaching and using computers
5. Practical
Continue to Computer Science- Class XII Syllabus- Part 2 for remaining syllabus related to Programming, Practicals & Project.