Projects Guider
Projects Guider
GUIDER
- Projects Guidance
Programming languages
1.. java
2.. C++
3. python
SYLLABUS 2020-21
Informatics Practices
CLASS XI
Code No. 065
2020-2021
1. Prerequisite : None
2. Learning Outcomes :
At the end of this course, students will be able to:
● Identify the components of Computer System.
● Create Python programs using different data types, lists and dictionaries.
● Explain what is‘data’ and analyse using NumPy.
● Explain database concepts and Relational Database Management Systems.
● Retrieve and manipulate data in RDBMS using Structured Query Language ● Identify the Emerging trends in the
fields of Information Technology.
2 Introduction to Python 25 35 35 70
Practical 30 - - -
Introduction to computer and computing: evolution of computing devices, components of a Computer System and their
interconnections, Input/Output devices.
Computer Memory: Units of memory, types of memory – primary and secondary, data deletion, its recovery and related
security concerns.
Software: purpose and types – system and application software, generic and specific purpose software.
Database Concepts: Introduction to database concepts and its need, Database Management System. Relational data
model: Concept of domain, tuple, relation, candidate key, primary key, alternate key, foreign key.
Advantages of using Structured Query Language, Data Definition Language, Data Query Language and Data
Manipulation Language, Introduction to MySQL, Creating a database using MySQL, Data Types Data Definition:
CREATE TABLE, DROP TABLE, ALTER TABLE.
Data Query: SELECT, FROM, WHERE.
Data Manipulation: INSERT, UPDATE, DELETE.
4 7
Practical file (minimum of 20 python programs , 5 Numpy programs and 20
SQL queries)
5 Viva-Voce 5
Total 30
Reference:
NCERT Informatics Practices - Text book for class - XI
Informatics Practices
CLASS XII
Code No. 065
2020-2021
2. Learning Outcomes
At the end of this course, students will be able to:
● Create Series, Data frames and apply various operations.
● Perform aggregation operations, calculate descriptive statistics.
● Visualize data using relevant graphs.
● Design SQL queries using aggregate functions.
● Import/Export data between SQL database and Pandas.
● Learn terminology related to networking and internet.
● Identify internet security issues and configure browser settings.
● Explain the impact of technology on society including gender and disability issues.
4 Societal Impacts 8 14 - 14
Project - - 10 10
Practical 30 - - -
Data Visualization
Purpose of plotting; drawing and saving following types of plots using Matplotlib – line plot, bar graph, histogram, pie chart,
frequency polygon, box plot and scatter plot.
Customizing plots: color, style (dashed, dotted), width; adding label, title, and legend in plots.
2 SQL Queries 5
3 5
Practical file (minimum of 20 programs based on Pandas , 5 based on
Matplotlib and 20 SQL queries must be included)
5 Viva-Voce 5
TOTAL 30
5. Suggested Practical List
5.1 DATA HANDLING
1. Create a pandas series from a dictionary of values and an ndarray
2. Given a Series, print all the elements that are above the 75th percentile.
3. Create a Data Frame quarterly sales where each row contains the item category, item name, and expenditure.
Group the rows by the category, and print the total expenditure per category.
4. Create a data frame based on ecommerce data and generate descriptive statistics (mean, median, mode,
quartile, and variance)
5. Create a data frame for examination result and display row labels, column labels data types of each column and
the dimensions
6. Filter out rows based on different criteria such as duplicate rows..
7. Find the sum of each column, or find the column with the lowest mean.
8. Locate the 3 largest values in a data frame.
9. Subtract the mean of a row from each element of the row in a Data Frame.
10. Replace all negative values in a data frame with a 0.
11. Replace all missing values in a data frame with a 999.
12. Importing and exporting data between pandas and CSV file
13. Importing and exporting data between pandas and MySQL database
5.2 VISUALIZATION
14. Given the school result data, analyse the performance of the students on different parameters, e.g subject wise or
class wise.
15. For the Data frames created above, analyze and plot appropriate charts with title and legend.
16. Take data of your interest from an open source (e.g. data.gov.in), aggregate and summarize it. Then plot it using
different plotting functions of the Matplotlib library.
Reference:
NCERT Informatics Practices - Text book for class - XII
Computer Science
CLASS-XI
Code No. 083
2020-21
1. Learning Outcomes
2. Distribution of Marks
Unit Name
Periods
Unit
No. Theory
Marks Theory Practical
Total 70 110 70
● Basic computer organisation: description of a computer system and mobile system, CPU, memory, hard disk,
I/O, battery.
● 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.
● Operating System (OS) - need for an operating system, brief introduction to functions of OS, user
interface
● Concept of cloud computing and cloud services (SaaS,IaaS,PaaS), cloud (public/private), Blockchain
technology
Introduction to Problem solving: Problem solving cycle - Analysing a problem, designing algorithms and
representation of algorithm using flowchart and pseudo-code.
Decomposition - concept, need for decomposing a problem, examples of problem solving using
decomposition.
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.
● Sorting algorithm: bubble and insertion sort; count the number of operations while sorting.
● 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).
3. Practical
Viva voce 3
3. Project (8 marks)
(that uses most of the concepts that have been learnt See CS-XII for the rules regarding the
projects)
Python Programming
● Write a program to input the value of x and n and print the sum of the following series:
1+x+x2+x3+x4+.............xn
1-x+x2-x3+x4-.............xn
x + x2 - x3 + x4 - .............xn
2 3 4 n
x + x2 - x3 + x4 - .............xn 2! 3!
4! n!
● Determine whether a number is a perfect number, an armstrong number or a palindrome.
● Compute the greatest common divisor and least common multiple of two integers.
● Count and display the number of vowels, consonants, uppercase, lowercase characters in string.
● Input a string and determine whether it is a palindrome or not; convert the case of characters in a string.
● Input a list of numbers and swap elements at the even location with the elements at the odd location.
● Input a list of numbers and test if a number is equal to the sum of the cubes of its digits. Find the smallest and
largest such number from the given list of numbers.
● Create a dictionary with the roll number, name and marks of n students in a class and display the names of
students who have marks above 75.
Computer Science
2020-21
CLASS-XII
Code No. 083
1. Prerequisites
2. Learning Outcomes
3. Distribution of Marks:
Unit No. Unit Name Theory Periods
Marks
Theory Practical
Database Management 20 25 20
III
Total 70 110 70
● Evolution of Networking: ARPANET, Internet, Interspace Different ways of sending data across the
network with reference to switching techniques (Circuit and Packet switching).
● Data Communication terminologies: Concept of Channel, Bandwidth (Hz, KHz, MHz) 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, RJ45 connector, Ethernet Card, Router, Switch, Gateway, WiFi card.
● Network Topologies and types: Bus, Star, Tree, PAN, LAN, WAN, MAN.
● Network Protocol: TCP/IP, File Transfer Protocol (FTP), PPP, HTTP, SMTP, POP3, Remote Login (Telnet) and
Internet, Wireless / Mobile Communication protocol such as GSM, GPRS and WLL.
● Mobile Telecommunication Technologies: 1G, 2G, 3G, 4G and 5G; Mobile processors;
Electronic mail protocols such as SMTP, POP3, Protocols for Chat and Video Conferencing: VoIP,
Wireless technologies such as Wi-Fi and WiMax
● Network Security Concepts:
Threats and prevention from Viruses, Worms, Trojan horse, Spams
Use of Cookies, Protection using Firewall, https;
India IT Act, Cyber Law, Cyber Crimes, IPR issues, hacking.
● Introduction To Web services: WWW, Hyper Text Markup Language (HTML), Extensible Markup Language
(XML); Hyper Text Transfer Protocol (HTTP); Domain Names; URL; 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)
● E-commerce payment transactions using online banking, mobile banking, payment apps and services.
Relational data model: Concept of domain, relation, tuple, attribute, degree, cardinality, key,
primary key, candidate key, alternate key and foreign key;
4. Practical
S. No. Marks
Area (Total=30)
1 Lab Test:
1. Python program (60% logic + 20% documentation + 20%
code quality) 7
2. Small Python program that sends a SQL query to a 5
database and displays the result. A stub program can be
provided.
3 Project (that uses the concepts that have been learnt in Class 11
and 12) 8
4 Viva voce 3
Database Management
● Create a student table and insert data. Implement the following SQL commands on the student table:
ALTER table to add new attributes / modify data type / drop attribute
UPDATE table to modify data
ORDER By to display data in ascending / descending order
DELETE to remove tuple(s)
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 the MySQL module.
6. Project
The aim of the class project is to create something that is tangible and useful using Python / Python and 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.
ABOUT PROJECT
1. We provide projects as per the guidelines given by the affiliated board.
3. Sample project will be provided to you to give you some idea about the
project.
6. More assistance is provided in case the respective teachers have issued any
specific guideline or asked for a change.