Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
2 views

Computer-Science Draft Learning Framework

The document outlines a Learning Framework for Computer Science for Classes 11-12 developed by CBSE in collaboration with Educational Initiatives, emphasizing competency-based education as per the National Education Policy 2020. It includes a structured curriculum that focuses on critical thinking, problem-solving, and practical skills, while aligning with NCERT learning outcomes. The framework serves as a resource for teachers to enhance teaching and assessment strategies, ensuring a uniform standard across CBSE schools.

Uploaded by

Deepti Korde
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

Computer-Science Draft Learning Framework

The document outlines a Learning Framework for Computer Science for Classes 11-12 developed by CBSE in collaboration with Educational Initiatives, emphasizing competency-based education as per the National Education Policy 2020. It includes a structured curriculum that focuses on critical thinking, problem-solving, and practical skills, while aligning with NCERT learning outcomes. The framework serves as a resource for teachers to enhance teaching and assessment strategies, ensuring a uniform standard across CBSE schools.

Uploaded by

Deepti Korde
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 112

DRAFT

LEARNING FRAMEWORK
COMPUTER SCIENCE
CLASSES 11-12

CO-CREATED BY

CBSE- CENTRE FOR EXCELLENCE IN ASSESSMENT IN COLLABORATION WITH

Learning Framework | Classes 11-12 | Computer Science EDUCATIONAL INITIATIVES


FOREWORD

The National Education Policy (NEP) 2020 recommends that children not only learn, but more importantly learn how to learn. Education, must move
towards less content, and more towards learning about how to think critically and solve problems, how to be creative and multidisciplinary, and how
to innovate, adapt, and absorb new material in novel and changing fields. Pedagogy must evolve to make education more experiential, holistic,
integrated, inquiry-driven, discovery-oriented, learner-centred, discussion-based, flexible, and, of course, enjoyable. The policy has a clear mandate
for competency-focused education to enhance acquisition of critical 21st century skills by the learners. The first determinant for implementing
competency focused education is a curriculum which is aligned to defined learning outcomes and that clearly states the indicators to be achieved.

The Central Board of Secondary Education (CBSE) has collaborated with Educational Initiatives, to develop the Learning Frameworks for the subjects
of English, Hindi, Mathematics, Physics, Chemistry, Biology, History, Geography, Economics, Accountancy, Business Studies and Computer Science in
Grades 11 and 12. The Learning Frameworks comprise explicitly stated knowledge, skills and dispositions that an education system should try to
achieve. These frameworks would help develop a common shared understanding of all the above among teachers, students and other stakeholders
and would serve as a common benchmark for teaching, learning and assessment across all CBSE schools.

These frameworks present indicators that are aligned to the CBSE curriculum and the NCERT learning outcomes. They further outline samples of
pedagogical processes and assessment strategies to encourage curiosity, objectivity, creativity with a view to nurture scientific temper. This
framework would be a key resource for teachers as they execute the curriculum. They have been developed to ensure that teachers align the learning
to meet the set quality standards and also use it to track learning levels of students. The effort has been to synchronize focus on quality education with
uniformity in quality of standards across CBSE schools.

We hope, these frameworks would not only become a reference point for competency-focused education across the country but also facilitate planning
and design of teaching-learning processes and assessment strategies by teachers and other stakeholders.

Feedback regarding the framework is welcome.

CBSE Academic Unit

Draft Learning Framework | Computer Science | Classes 11-12 2


PREFACE

The National Education Policy 2020 has outlined the importance of competency-based education in classrooms, leading to curricular and
pedagogical reforms in the school systems. The policy emphasizes on the development of higher order skills such as analysis, critical
thinking and problem solving through classroom instructions and aligned assessments. These skills are important indicators which will
further the dissemination of pedagogy and learning outcomes across schools and boards.

In order to propagate indicator-based learning through ‘Learning Frameworks’, the Central Board of Secondary Education has
collaborated with Educational Initiatives (Ei). Learning frameworks are a comprehensive package which provides learning outcomes,
indicators, assessment frameworks, samples of pedagogical processes, tools and techniques for formative assessment, blueprint,
assessment items and rubrics. 12 such frameworks have been developed for English, Hindi, Mathematics, Physics, Chemistry, Biology,
History, Geography, Economics, Accountancy, Business Studies and Computer Science in Grade 11 and 12.

The frameworks are adopted from the learning outcomes outlined in the NCERT which are mapped to key concepts of the content. These
content domain specific learning outcomes are broken down into indicators which defines the specific skills a learner needs to attain. A
clear understanding of these LOs will be immensely helpful for teachers and students to learn better.

Draft Learning Framework | Computer Science | Classes 11-12 3


CONTENTS

Foreword............................................................................................................................................................................................................. 2
PREFACE ............................................................................................................................................................................................................ 3
Contents .............................................................................................................................................................................................................. 4
Nature of the Subject .......................................................................................................................................................................................... 6
Stage specific curricular expectations .............................................................................................................................................................. 7
Content domains ................................................................................................................................................................................................ 8
Class 11 ................................................................................................................................................................................................................... 8
Class 12 ................................................................................................................................................................................................................... 8
Subject specific cognitive domains ................................................................................................................................................................. 10
Categories of cognitive domains ......................................................................................................................................................................... 11
Kinds of assessment tasks for different cognitive domains.............................................................................................................................. 13
Learning outcomes for Computer Science Senior secondary stage ............................................................................................................. 14
Class 11 ................................................................................................................................................................................................................. 14
Class 12................................................................................................................................................................................................................. 16
Approaches to the teaching and learning of computer science.................................................................................................................... 17
Fostering Computational Thinking ..................................................................................................................................................................... 17
Delivering the course ........................................................................................................................................................................................... 18
Content domain specific learning outcome ................................................................................................................................................. 20
Class 11 ........................................................................................................................................................................................................... 21

Draft Learning Framework | Computer Science | Classes 11-12 4


Class 12 ........................................................................................................................................................................................................... 31
Suggested pedagogical processes and assessment strategies ................................................................................................................... 38
Some Sample Computer Science specific pedagogical processes and Assessment Strategies ............................................................... 40
Essential Ideas and Sample Questions ........................................................................................................................................................ 44
Class 11 ................................................................................................................................................................................................................. 44
Class 12 ................................................................................................................................................................................................................. 70
Test paper design ........................................................................................................................................................................................ 100
Distribution of Marks ......................................................................................................................................................................................... 100
Class 11 ........................................................................................................................................................................................................... 100
Class 12 ........................................................................................................................................................................................................... 101
Assessment of practical work..................................................................................................................................................................... 102
Design of the practical examination ................................................................................................................................................................. 102
Class 11 ........................................................................................................................................................................................................... 103
Class 12 ........................................................................................................................................................................................................... 104
Suggested experiments, practical activities and investigative projects ................................................................................................. 105
CLASS 11 ......................................................................................................................................................................................................... 105
CLASS 12 ......................................................................................................................................................................................................... 106
Project Work ....................................................................................................................................................................................................... 107
Suggested Projects ......................................................................................................................................................................................... 108
References .................................................................................................................................................................................................... 109
Acknowledgement ................................................................................................................................................................................................... 110

Draft Learning Framework | Computer Science | Classes 11-12 5


NATURE OF THE SUBJECT

Computer science as a discipline has evolved over the years and has emerged as a driving force of our socio-economic activities. It has made continuous
inroads into diverse areas — be it business, commerce, science, technology, sports, health, transportation or education.
The aim of the course is to provide opportunities that will enable students to equip themselves with practical and technical skills needed to function
effectively in a technological society. It aims to develop a foundation of computer science knowledge to harness the power of computational thinking
to enable the students to become both users and creators of computing technology.

The focus of the course is to develop problem-solving abilities and technical skills as they learn how to diagnose and solve problems in the course of
understanding the fundamental concepts. It also opens a window to the emerging trends and the advances in the field of computer science.

In this course students also explore the ethical, moral and legal factors that influence developments in computing so that they recognise the
consequences of decisions made by developers and users in respect to the development and use of technology.

Draft Learning Framework | Computer Science | Classes 11-12 6


STAGE SPECIFIC CURRICULAR EXPECTATIONS

The aims describe the purposes of a course based on this syllabus.

The course emphasizes the need for both a theoretical and practical approach to build an understanding of the various methodologies used to solve
problems in computer science. Use activities and reflection to generate interest and skills necessary for independent and lifelong learning.

The aims are to enable students to develop:

• a body of knowledge, methods and techniques that characterize computer science


• computational thinking skills
• skills required to use the body of knowledge, methods and techniques
• an understanding of the main principles of solving problems using computers
• logical and critical thinking to investigate, identify and resolve complex problems
• the skills necessary to solve computer-based problems using a high-level programming language
• an understanding of the component parts of computer systems and how they interrelate
• an understanding of the internet as a means of communication and its associated risks
• awareness of the moral, ethical, social, economic and environmental implications of using computer technology
• an appreciation of the possibilities and limitations associated with the advances and trends in the field of computer science

Draft Learning Framework | Computer Science | Classes 11-12 7


CONTENT DOMAINS

The content for computer science for grades 11-12 in CBSE curriculum has been organized around major units. Units for the two grades, along with
the chapters from the NCERT textbooks are mentioned in the tables below.

CLASS 11

Unit Chapters

1. Computer Systems and Organisation CH 1 Computer System

CH 2 Encoding Schemes and Number System

CH 3 Emerging Trends

2. Computational Thinking and Programming - 1 CH 4 Introduction to Problem Solving

CH 5 Getting Started with Python

CH 6 Flow of Control

CH 7 Functions

CH 8 Strings

CH 9 Lists

CH 10 Tuples and Dictionaries


3. Society, Law and Ethics CH 11 Societal Impact

CLASS 12

Draft Learning Framework | Computer Science | Classes 11-12 8


Unit Chapters

1. Computational Thinking and Programming - 2 CH 1 Exception Handling in Python

CH 2 File Handling in Python

CH 3 Stack

CH 4 Queue

CH 5 Sorting

CH 6 Searching

2. Computer Networks CH 10 Computer Networks

CH 11 Data Communication

CH 12 Security Aspects

3. Database Management CH 7 Understanding Data

CH 8 Database Concepts

CH 9 Structured Query Language (SQL)

Note: Chapter 13: Project based learning would be covered as part of project work included in the Practicals.

Draft Learning Framework | Computer Science | Classes 11-12 9


SUBJECT SPECIFIC COGNITIVE DOMAINS

“As the Board is progressively allowing more space to 'learning outcome based' assessment in place of textbook driven assessment, question
papers of Board examinations will have more questions based on real-life situations requiring students to apply, analyse, evaluate and synthesize
information as per the stipulated outcomes. The core-competencies to be assessed in all questions, however, will be from the prescribed syllabus
and textbooks recommended therein. This will eliminate predictability and rote learning to a large extent.”

[CBSE Curriculum for classes 11-12]

The course in computer science prepares students to develop by capability in critical and creative thinking as they imagine, generate, develop, produce
and critically evaluate ideas by engaging in systems, design and computational thinking. It enables students in learning to make the most of the digital
technologies available to them and prepares them to adapt to new ways of doing things as technologies evolve, and limit the risks to themselves and
others in a digital environment. It allows students to appreciate the impact of technology on society and its influence on the way we learn,
communicate, commute or even socialise! It aims to develop their capacity to understand and apply ethical and socially responsible principles when
creating and using technologies and tools. It also informs students of a range of study and work options and bridges the gap between school and work.

While the textbook introduces the fundamental concepts and problem-solving skills in computer science, every attempt must be made to also bring
out the practical linkages of the course with real life. Students are expected to do projects both in class 11 and 12, however, these should be treated as
a minimum. Students should be encouraged to undertake individual and group activities that help them appreciate the practical applications of the
course. In this manner, they will develop skills at all levels of the cognitive domain as indicated below.

Draft Learning Framework | Computer Science | Classes 11-12 10


CATEGORIES OF COGNITIVE DOMAINS

Revised Bloom’s taxonomy (Anderson and Krathwohl, 2001) of cognitive process dimension has six categories, each associated with a set of specific
cognitive processes. CBSE curriculum intends to have a balance of these categories of intellectual tasks in the teaching-learning and assessment of
learning of a subject. These six categories as described in the revised Bloom’s taxonomy, with their specific cognitive processes, are mentioned below.

COGNITIVE DOMAIN – REMEMBER


‘Remember’ involves retrieving relevant knowledge from long-term memory. Recognizing and recalling are the specific cognitive skills associated
with this cognitive domain. Asking students about foundational facts and concepts, e.g. List 2 characteristics of Stacks, Which command will you use to
view the list of tables in a database?

COGNITIVE DOMAIN – UNDERSTAND


‘Understand’ involves ‘constructing meaning from instructional messages, including oral, written and graphic communication’. Interpreting,
exemplifying, classifying, summarizing, inferring, comparing, explaining are the specific cognitive skills associated with this cognitive domain.
Asking students to explain a process or a technique e.g. Process of how data is transferred from CPU to memory; Explain why hexadecimal numbers are
frequently used in computer programming; Describe one difference between stack and queue data structures, Describe the role of a router in a network
etc.

Draft Learning Framework | Computer Science | Classes 11-12 11


COGNITIVE DOMAIN – APPLY
‘Apply’ involves carrying out or using a procedure in a given situation. Executing and implementing are the specific cognitive skills associated with
this cognitive domain. Assessment tasks wherein students have to use the knowledge and/or procedures to solve a problem or to arrive at a decision
in a given real-life situation cover this cognitive domain. e.g. Write an SQL query to generate a required output from a given table, Deduce the output of
a given statement or code snippet, write an algorithm or a program in Python to complete a given task like – reversing a given string, find the highest 2
values in a dictionary.

COGNITIVE DOMAIN – ANALYSE


‘Analyse’ involves breaking material into constituent parts and determining how parts relate to one another and to an overall structure and purpose.
Differentiating, organising and attributing are the specific cognitive skills associated with this cognitive domain. Asking students to analyze of
computer concepts on correctness, robustness, safety and liveness etc. e.g. Analyse the algorithm presented as a flow chart.

COGNITIVE DOMAIN – EVALUATE


‘Evaluate’ involves making judgments based on criteria and standards. Checking and critiquing are the specific cognitive skills associated with this
cognitive domain. Assessment tasks that require a deeper level of understanding wherein students are required to provide justification for their choice,
e.g. Evaluate two algorithms to decide which one is more efficient, Evaluate a search algorithm to explain how a search algorithm will perform when the
input grows larger.

COGNITIVE DOMAIN – CREATE


‘Create’ involves putting elements together to form a coherent or functional whole; or reorganizing elements into a new pattern or structure.
Generating, planning and producing are the specific cognitive skills associated with this cognitive domain. Tasks that require students to produce
new artefacts based on what they have learnt, e.g. Create a project that is tangible and useful using Python file handling/ Python-SQL connectivity.

Draft Learning Framework | Computer Science | Classes 11-12 12


KINDS OF ASSESSMENT TASKS FOR DIFFERENT COGNITIVE DOMAINS

Some more examples of kinds of assessment tasks that can be associated with the different cognitive domains are given below. A chapter may not
always cover all six cognitive domains. The following list of tasks should be taken as an indicative list not a comprehensive one.

Cognitive domain Assessment tasks


Remember • Define the basic concepts in computer science like types of memory, functions of Boolean operators, types of
networks
• Recognize • Define the basic number systems
• Recall • List characteristics of basic elements like Stacks, queues,
• Identify basic and core commands/concepts used commonly in programming like print, input, seek, tell etc
[Note: Students are not expected to memorize all the syntax, but only the commonly used commands]. Eg: Which
function would you use to find out the current position of the file object?
How would the python program know where a for block ends?
Understand • Explain concepts like encoding, scope of variables, data encryption, exception
• Justify the use of a process/data type or expression in an algorithm/code eg: Which data structure would be
• Interpret most suited for storing the list of students and their corresponding ranks.
• Exemplify • Illustrate with examples the use of concepts like functions/ list operation/built-in libraries
• Classify • Explain the concept of different emerging technologies like AI, robotics etc.
• Summarize • Explain programming concepts eg: How does binary search sort work?
• Infer • Inferring about concepts in computer science programming
• Compare E.g.: Which of these statements about for and while loops in Python is TRUE?
• Explain o A for loop usually runs a given number of times; a while loop runs till a condition is met.
o Statements in a for loop are always run at least once; those in a while loop may never be run.
o A for loop cannot contain another for loop; a while loop can contain another while loop.
o A for loop always has to have a loop counter; a while loop never uses a loop counter

• Differentiating between different concepts. e.g.: What is the difference stacks and queues? List main difference
between open-source and proprietary software? What is the difference between for and while loop?
Apply • Construct an algorithm/code for a specified scenario using the conditions given
• Decompose a given problem statement to sub-tasks and express the solution to a given problem as a sequence
• Execute of defined steps.

Draft Learning Framework | Computer Science | Classes 11-12 13


• Implement • Amend an algorithm or code to rectify the errors given.

Analyze • Trace an algorithm/code to identify the errors in the program or code snippet and suggest changes to a
code/algorithm to rectify and achieve the desired output.
• Differentiate • Analyse the code and deduce the values of variable at different junctures of the of the program
• Organize • Examine the given code to replace parts of the code with reusable modules/functions to simplify the code.
• Attribute • Interpret the output of a given algorithm or dry run the code to verify where it is the required result.
• Discuss the practical use-case of different emerging technologies like AI, robotics

Evaluate • Critique the use of different emerging trends in different real-life situations.
• Evaluate the algorithm and recommend changes to make it more efficient
• Check • Compare algorithms to choose the suitable one for a given scenario
• Critique • Critique the given code and recommend modifications to improve the program.
• Discuss the emerging trends in the field of computer and information technology and critique how they
influence modern society.
Create • Create an algorithm/program that uses multiple CS concepts to solve a given problem. Like creating a program
that helps manage your spending like check balance, store your income and expenditure,
• Generate • Design projects like a system to scan the commodities and print the bill for purchases at a grocery store
• Plan depending upon the price and quantity of an item.
• Produce

LEARNING OUTCOMES FOR COMPUTER SCIENCE SENIOR SECONDARY STAGE

Following learning outcomes for senior secondary stage developed by CBSE state important knowledge, skills and dispositions students need to attain
at the end of an academic year in classes 11 and 12 in the context of learning chemistry.

CLASS 11

Unit CBSE Learning Outcome

Draft Learning Framework | Computer Science | Classes 11-12 14


1 Computer Systems 1 Develop a basic understanding of computer systems - architecture, operating systems.
and Organisation
2 Develop basic understanding of new technologies in Information technology and how are they affecting the
modern lifestyle
2 Computational 3 Appreciate the notion of algorithm including flowcharts and pseudocode.
Thinking and 4 Explain and use operators, variables and data types including higher order data structures such as lists,
Programming tuples, and dictionaries.
5 Develop basic principles of computational thinking1.
3 Society, Law and 6 Explain cyber ethics, cyber safety and cybercrime
Ethics
7 Understand the value of technology in societies along with consideration of gender and disability issues

1
Computational thinking refers to the thought processes involved in expressing solutions as computational steps or algorithms that can be carried out by a
computer – from Lee, I. (2016). Reclaiming the roots of CT. CSTA Voice: The Voice of K–12 Computer Science Education and Its Educators, 12(1), 3–4.
Draft Learning Framework | Computer Science | Classes 11-12 15
CLASS 12

Unit CBSE Learning Outcome


1 Computational 1 Apply the concept of function.
Thinking and
Programming 2 Implement search and sort techniques.
3 Create and use Python libraries
4 Explain and use the concept of exception as well as file handling.
5 Explain the concept of efficiency in algorithms and computing in general
6 Use basic data structure: Stacks and Queues.
2 Computer Networks 7 Explain computer networks and how it works.
8 Explain the security concerns in networked computers and methods to mitigate them
3 Database Management 9 Use Database concepts, SQL to store, retrieve and manipulate data

Draft Learning Framework | Computer Science | Classes 11-12 16


APPROACHES TO THE TEACHING AND LEARNING OF COMPUTER SCIENCE

CBSE class 11 and 12 computer science (CS) course is offered as an optional subject at the higher secondary stage. Students usually opt for CS with an
aim of pursuing a career in software development or related areas, after going through professional courses at higher levels. The primary focus in this
course is on introducing the basic concepts of computer science and fostering the development of computational thinking and problem-solving skills.
Teachers must familiarize themselves with this approach before they commence teaching.

It is expected that teachers use a wide range of activities to support the theoretical content that enable students to develop as learners, users, and
creators of computer science knowledge and solutions.

FOSTERING COMPUTATIONAL THINKING

Australian Curriculum defines computational thinking as “A problem-solving method that involves various techniques and strategies that can be
implemented by digital systems. Techniques and strategies may include organising data logically, breaking down problems into parts, defining abstract
concepts and designing and using algorithms, patterns and models.”

Computational thinking is a problem-solving methodology that we draw from when thinking about how a computer can help us to solve complex
problems and create solutions. It is an analytical skill that has its foundation in the concepts from computer science but is a fundamental skill that can
be used to solve complex problems in almost all the other fields.

Some of the key concepts in computational thinking are:

• Decomposition
• Pattern Recognition
• Abstraction
• Algorithm Design

Decomposition is breaking down complex problems into smaller, more manageable chunks. Decomposition allows students to assess the problem at
hand and figure out all of the steps needed to make the task happen and break down the task into small simple steps. Pattern recognition is simply
looking for patterns in the problem and determining how it could be leveraged to solve the problem at hand. While abstraction helps in identifying

Draft Learning Framework | Computer Science | Classes 11-12 17


crucial information from a problem and ignoring the details that are not relevant. And finally lay down the solution as a sequence of steps with
appropriate rules to achieve the desired result.

DELIVERING THE COURSE

At the level of classes 11 and 12, developing the ability to logically solve problems irrespective of the programming language is crucial. At this stage a
deep knowledge of programming languages is not a main concern. Hence the focus needs to be on computational thinking. For this purpose, the course
is based on Python which is not syntax heavy.

Unlike other courses the syllabus is written in a prescriptive manner and follows a textbook. The textbook provides a reliable source of information
for students who do not have access to other resources. However, teachers are encouraged to share appropriate resources from websites, blogs, videos,
online courses, and books as references. Teachers are encouraged to give enough hands-on opportunities to decompose a system, gaining an
understanding of algorithms that influence the way it functions. These should also include real-world problems that are relevant and contemporary.

While the natural learning progression in the course should be along a path that progresses from understanding the basics to more sophisticated
knowledge in a subject area. Hence the learning progressions should deliberately revisit a concept across multiple units with evolving sophistication.
For example, the learning progression for creating a modular algorithm would start with the simple understanding of constructing algorithms for
simple tasks and then progress to problems in which tasks need to be broken down into smaller tasks and finally evolving to a stage where students
learn that programs can be composed of parts of other programs.

While the objective of digital technologies teaching is to develop higher-order thinking skills and enough opportunities should be there to allow
students to experiment with algorithmic development, and a range of computational thinking skills, it should be ensured that the foundational concepts
principles are strong for example,to introduce the concept of repetition teacher can introduce it with a simple example like Write an algorithm using
flow chart or pseudocode to print the first five natural numbers.

Once the students know the concept then students should be given enough opportunities to solve problems that require a combination of multiple
concepts. E.g.: Create a program to check if the given year is leap year

Evolution of Computers

In order to appreciate the development of computers and how it has progressed, students should be aware of the evolution of computers, but students
are not expected to remember the chronology of development or the different models of computers or microprocessors.
Draft Learning Framework | Computer Science | Classes 11-12 18
Components of Computer System

Computer science course is considered as a gateway for students to understand the digital world, and prepare them for the professional courses that
lie ahead. In that sense the basic introduction of computer system is necessary at the same time students should also be introduced to the latest
developments that are fast becoming mainstream like the cloud etc.

Program Development

Students are expected to develop models and/or simulations using Python as the development environment to support the concepts in the syllabus.
To enable this, student, have to be exposed to the needs for different types of system software. They need to understand the features of a computer
language, and the process of converting a program in higher level language to machine understandable format and the need for compilers. The textbook
introduces these concepts to students.

Databases

Students are expected to use database software to support the theoretical concepts within the syllabus. For this purpose, the course prescribes MySQL
as a database development environment.

Draft Learning Framework | Computer Science | Classes 11-12 19


CONTENT DOMAIN SPECIFIC LEARNING OUTCOME

The learning outcomes defined by CBSE are broadly defined for the content defined in the curriculum. They articulate the discipline-specific skills that
students need to attain through learning different concepts in the syllabus. A clear understanding of the scope of these learning outcomes for each
concept dealt in the NCERT textbook chapters will be very helpful for both teachers and students in planning teaching and learning better. The
following process has been followed to list out the content domain specific learning outcomes (CLOs) and competencies for all the content units and
textbook chapters.

Concepts discussed in the textbook chapters were mapped to key concepts under each content
domain in the CBSE syllabus.

Relevant NCERT learning outcomes were identified for each key concept in the chapter.

Content domain specific learning outcomes (CLO) were defined for the NCERT learning
outcomes relevant for the chapter. The cognitive process in the NCERT learning outcome
and the CLO is the same.

Draft Learning Framework | Computer Science | Classes 11-12 20


CLASS 11

Chapter Key Concepts CBSE learning Outcome Content domain specific learning outcome
Chapter 1: Components of (1) Develop a basic understanding of CLO1. Recognize the different components of computer
Computer System Computer System computer systems - architecture, system. This includes
operating systems. - Hardware – CPU, I/O devices, Storage
- Software – Operating System, system software,
Applications, Programming tools

CLO2. Describe the principal functions of the components


CLO3. Outline the relationship between the CPU, input
and output and storage.

Processor (1) Develop a basic understanding of CLO4. Explain the basic functioning of a computer system,
fundamentals computer systems - architecture, including the purpose of Arithmetic and Logic Unit
operating systems. (ALU), Control Unit (CU).
CLO5. Explain how factors contribute to the performance
of the computer system - core, clock, cache
CLO6. Explain how data are transferred between various
components of the computer system using the
address bus, data bus and control bus.
CLO7. Explain how instructions and data are fetched-
processed-executed

Storage (1) Develop a basic understanding of CLO8. State the purpose and need of different types of
computer systems - architecture, memory.
operating systems. CLO9. Distinguish between different types of memory.
CLO10. State and use the binary magnitudes used in
defining the memory.

Draft Learning Framework | Computer Science | Classes 11-12 21


Chapter Key Concepts CBSE learning Outcome Content domain specific learning outcome
Concept of Data (1) Develop a basic understanding of CLO11. Explain the concept of data
computer systems - architecture, CLO12. Categorize a data as Structured, Unstructured, or
operating systems. Semi-structured
CLO13. Explain data capturing, processing, storage,
retrieval, storage including the concept of data loss
and recovery
CLO14. Correlate the processes like data capture,
processing, storage and retrieval with the
components of a computer system like input, CPU
and Memory respectively.
Chapter 2: Encoding Data (1) Develop a basic understanding of CLO15. Describe encoding and the need for it.
Schemes and Representation computer systems - architecture, CLO16. Represent character data in its internal binary
Number System operating systems. form, depending on the character set used.
CLO17. Demonstrate of the basis of different number
systems
CLO18. Convert a value from one number base /
representation to another
CLO19. Describe the need of using different number
systems.
For example, relation between the hexadecimal
representation of colours in computers.

Chapter 3: Emerging (2) Develop basic understanding of CLO20. Recognize the some of the major advancements in
Emerging Trends Technologies new technologies in Information digital word
technology and how are they affecting CLO21. Describe the main characteristics and abilities of
the modern lifestyle. different emerging technologies.
CLO22. Differentiate the various types technologies
Limited to –

Draft Learning Framework | Computer Science | Classes 11-12 22


Chapter Key Concepts CBSE learning Outcome Content domain specific learning outcome
a) AI - Machine Learning (ML), Natural Language
Processing (NLP), Immersive Experiences – VR and
AR.
b) Robotics
c) Big Data
d) Web of Things – IoT, Sensors, Smart cities
e) Cloud Computing - IaaS, SaaS, PaaS
f) Grid Computing
g) Block Chain

Impact of emerging (6) Understand the value of technology CLO23. Critique how emerging technologies are impacting
technologies in societies along with consideration of the society.
gender and disability issues

Chapter 4: Program (5) Develop basic principles of CLO24. Understand the program development life cycle –
Introduction to development life computational thinking. analysis, design, coding and testing
Problem Solving cycle CLO25. Identify each stage and perform tasks related to
each stage.
• analysis: identification of the problem,
decomposition of the problem, and identification of
requirements.
• design: decomposition, representation of Algorithm
– Flowchart, Pseudocode
• coding: writing program code
• testing: testing program code with the use of test
data
Analysis and design (3) Appreciate the notion of algorithm CLO26. Decompose a given problem into its component
including flowcharts and pseudocode. parts including input(s), process(es), and output(s).
CLO27. Use different methods of design to construct the
solution to a problem – flowchart and pseudocode.
CLO28. State the purpose of an algorithm.

Draft Learning Framework | Computer Science | Classes 11-12 23


Chapter Key Concepts CBSE learning Outcome Content domain specific learning outcome
CLO29. Describe the processes involved in an algorithm
CLO30. Trace an algorithm and evaluate the value of the
variable, output or prompts at each step

Methods of solution (3) Appreciate the notion of algorithm CLO31. Use the standard methods of solution while
including flowcharts and pseudocode. designing an algorithm – sequence, selection and
repetition.

Verifying (3) Appreciate the notion of algorithm CLO32. Identify errors in given algorithms
Algorithms including flowcharts and pseudocode. CLO33. Amend algorithms for given problems or scenarios

Comparison of (3) Appreciate the notion of algorithm CLO34. Evaluate algorithms


Algorithm including flowcharts and pseudocode.

Chapter 5: Getting Python IDE (5) Develop basic principles of CLO35. Use python to develop simple programs
Started with computational thinking.
Python2
Python Tokens (5) Develop basic principles of CLO36. Use common python tokens (Keywords, Identifiers,
computational thinking. Constants, punctuators and operators)
CLO37. Declare and use variables and constants
CLO38. Use appropriate tokens to develop logical
programs.

2In order to develop the basic computational thinking, python is used here as a medium. Like with any programming language the student should be given
enough opportunities to familiarise themselves with the features of Python, execution modes: interactive mode and script mode. The objective is not to test
how well a student knows the language, but rather to assess how a student is able to apply computational thinking to solve the given problem.
Draft Learning Framework | Computer Science | Classes 11-12 24
Chapter Key Concepts CBSE learning Outcome Content domain specific learning outcome
Data types (4) Explain and use operators, CLO39. Justify the different data types and their
variables and data types including characteristics.
higher order data structures such as CLO40. Cite the purpose of mutable and immutable data
lists, tuples, and dictionaries. types.
CLO41. Select and use appropriate data types in a given
scenario including its declaration and type
conversion.
CLO42. Evaluate the appropriateness of using different
data types.
Expressions (5) Develop basic principles of CLO43. Identify and use Arithmetic, logical, relational,
computational thinking. assignment, identity and membership operators
in order to create meaningful expressions for
problem solution.
Statements (5) Develop basic principles of CLO44. Develop appropriate simple and nested
computational thinking. statements for problem solutions.

Input and output (5) Develop basic principles of CLO45. State and apply the concept of inputs and outputs
computational thinking. in computational problem solving.
CLO46. Identify the inputs and outputs required in a
solution.
CLO47. Develop programs that can accept data as input
from the user and display the output.

Debugging (5) Develop basic principles of CLO48. Identify and suggest steps to remove
computational thinking. programming errors – Limited to Runtime, syntax
and logical errors
Chapter 6: Flow of Concept of (5) Develop basic principles of CLO49. Identify and develop the appropriate sequence of
Control Sequence computational thinking. steps required to solve a problem.

Draft Learning Framework | Computer Science | Classes 11-12 25


Chapter Key Concepts CBSE learning Outcome Content domain specific learning outcome
CLO50. Evaluate whether the order in which
tasks/statements are executed are in the right
sequence to achieve the desired result.

Concept of (5) Develop basic principles of CLO51. Identify when decision-making is required in a
conditionals computational thinking. specified situation.
CLO52. Identify the decisions required to solve a given
problem statement.
CLO53. Construct logical rules for solving the problem
statement.
CLO54. Explain the conditions that are used in a given
situation.
CLO55. Trace programs that use simple and compound
conditional statements in order to deduce the
output at different steps
CLO56. Identify errors and suggest corrections required
for the desired result in programs that use simple
and compound conditional statements
Concept of Iteration (5) Develop basic principles of CLO57. Identify when iterations are required and number
computational thinking. of iterations required to solve a given problem.
CLO58. Use the appropriate iteration method in order to
solve the given problem – including simple and
nested loops.
CLO59. Use break and continue appropriately while
creating a program with iterations.
CLO60. Identify errors and suggest corrections required
for the desired result in programs that use simple
and nested loops including count-controlled
loops, pre-condition loops, post-condition loops
Chapter 7: Concept of functions (5) Develop basic principles of CLO61. Use functions to achieve modularity and
Functions computational thinking. reusability.

Draft Learning Framework | Computer Science | Classes 11-12 26


Chapter Key Concepts CBSE learning Outcome Content domain specific learning outcome

Scope of a Variable – (5) Develop basic principles of CLO62. Illustrate the scope of local and global variables.
global variable, local computational thinking. CLO63. Define local and global variables appropriately in
Variable a program that uses functions
CLO64. Trace programs that use functions with
local/global variables in order to deduce the
output at different steps
Using Functions (5) Develop basic principles of CLO65. Identify and use the Python Standard Library
computational thinking. CLO66. Define and use functions – including built-in and
user defined functions with and without
argument and parameters
CLO67. Trace and explain the flow of Execution of a
program that use functions.
CLO68. Identify errors and suggest corrections required
for the desired result in programs that use
functions

Chapter 8: Strings String Operations (5) Develop basic principles of CLO69. Construct program or code sample that performs
computational thinking. operations on strings in order to achieve the
desired result like Accessing Characters in a
String, Concatenation, Repetition, Membership
operations, Slicing, traversing the string
CLO70. Use built-in string routines to construct the
program.

CLO71. Trace programs that have operations on strings in


order to deduce the output at different steps.
CLO72. Identify errors and suggest corrections required
for the desired result in programs that have string
operations
Draft Learning Framework | Computer Science | Classes 11-12 27
Chapter Key Concepts CBSE learning Outcome Content domain specific learning outcome
Chapter 9: Lists Introduction to lists (4) Explain and use operators, CLO73. Identify the utility of advanced data type – list
variables and data types including including simple as well as nested lists.
higher order data structures such as CLO74. Identify when the data types should be defined as
lists, tuples, and dictionaries. lists.

List Operations (5) Develop basic principles of CLO75. Develop program that require use of lists to solve
computational thinking. a given problem – including simple and nested
lists like Accessing elements in a list,
Concatenation, Repetition, Membership
operations, Slicing, traversing the list.
CLO76. Use built-in list routines to construct the
programs

CLO77. Trace programs that have operations on lists in


order to deduce the output at different steps.
CLO78. Identify errors and suggest corrections required
for the desired result in programs that have list
operations

Chapter 10: Tuples Introduction to (4) Explain and use operators, CLO79. Identify the utility of advanced data type – Tuple
and Dictionaries Tuples variables and data types including – including simple as well as nested tuples.
higher order data structures such as CLO80. Identify when to use tuple to solve a problem.
lists, tuples, and dictionaries. CLO81. Define a tuple.
Tuple Operations (5) Develop basic principles of CLO82. Develop programs that require use of tuples to
computational thinking. solve a given problem – Including simple and
nested tuples like accessing elements in a tuple,
Concatenation, Repetition, Membership
operations, Slicing, traversing the tuple etc.
CLO83. Use built-in tuple routines to construct the
program.

Draft Learning Framework | Computer Science | Classes 11-12 28


Chapter Key Concepts CBSE learning Outcome Content domain specific learning outcome
CLO84. Trace programs that have operations on tuples in
order to deduce the output at different steps.
CLO85. Identify errors and suggest corrections required
for the desired result in programs that have tuple
operations

Dictionary (4) Explain and use operators, CLO86. Identify the utility of advanced data type –
variables and data types including dictionary
higher order data structures such as CLO87. Identify when to use dictionaries to solve a
lists, tuples, and dictionaries. problem.
CLO88. Define a dictionary – including simple as well as
nested dictionaries.

Dictionary (5) Develop basic principles of CLO89. Develop programs that require use of tuples to
Operations computational thinking. solve a given problem – including simple and
nested dictionaries. These can include programs
like accessing items in a dictionary using keys,
adding a new item, modifying an existing item in a
dictionary, traversing a dictionary
CLO90. Use built-in dictionary routines to construct the
program.
CLO91. Trace programs that have operations on
dictionaries in order to deduce the output at
different steps.
CLO92. Identify errors and suggest corrections required
for the desired result in programs that
dictionaries operations
Chapter 11: Societal Digital Society (7) Understand the value of technology CLO93. Evaluate the role of individual in the world of
Impact in societies along with consideration of digital technology
gender and disability issues.

Draft Learning Framework | Computer Science | Classes 11-12 29


Chapter Key Concepts CBSE learning Outcome Content domain specific learning outcome
CLO94. Reflect the growing trend of using digital
technologies in various spheres of activities.
Etiquettes in digital (6) explain cyber ethics, cyber safety CLO95. Highlight the need for etiquettes in digital
society and cybercrime activities.
Data Protection (6) explain cyber ethics, cyber safety CLO96. Explain the concept of digital property and IP
and cybercrime rights.
CLO97. Cite the need for licensing and protection.
CLO98. Distinguish between the different types of
software licencing
CLO99. justify the use of a licence for a given situation
CLO100. Evaluate the impact of acting violating IP rights.

Threats to (6) explain cyber ethics, cyber safety CLO101. Describe Cyber crime
technology and cybercrime CLO102. Differentiate different types of cyber-crimes.
Role of (6) explain cyber ethics, cyber safety CLO103. Critique the role of government in digital
governments in and cybercrime technologies
technology CLO104. Explain the need for policies in safeguarding the
citizens in digital world
Changes in Lifestyle (7) Understand the value of technology CLO105. Evaluate the impact of change in our lifestyles due
in societies along with consideration of to digital advancements.
gender and disability issues

Draft Learning Framework | Computer Science | Classes 11-12 30


CLASS 12

Chapter Key Concepts CBSE learning Outcome Content domain specific learning outcome
Chapter 1: Exception Exceptions (4) Explain and use the concept of CLO1. Recognize the different types of exception and
Handling in Python exception as well as file handling. understand the need for handling exceptions.
CLO2. State the various methods to raise an exception.
Exception handling (4) Explain and use the concept of CLO3. State methods to handle an exception in a given
exception as well as file handling. scenario.
CLO4. Use exception handling appropriately to design a
program code in order to catch all the exceptions.
Chapter 2: File Introduction to files (4) Explain and use the concept of CLO5. Recognize why files are needed and the purpose
Handling in Python exception as well as file handling. of storing data in a file to be used by a program
CLO6. Identify the different types of files limited to text,
csv and binary files.
CLO7. Identify when to use files to solve a problem.
Operations on files (4) Explain and use the concept of CLO8. Recognize when to use operations on files
exception as well as file handling. including
- Open (in read, write, append mode)
- opening a file using with clause
- close a file
- Read a record from a file
- Search a file
- write a record to a file
limited to Text, Binary and CSV file
CLO9. Perform file-processing operations as required
based on the given scenario including pickling
CLO10. Write code/ code snippets to handle text files that
consist of one or more lines
CLO11. Trace programs that have operations on file in
order to deduce the output at different steps.

Draft Learning Framework | Computer Science | Classes 11-12 31


Chapter Key Concepts CBSE learning Outcome Content domain specific learning outcome
CLO12. identify errors and suggest corrections required
for the desired result in programs that use file
operations
Chapter 3: Stacks Introduction to Data (5) Use basic data structure: Stacks CLO13. Relate the concept of data structure with data
Structures and Queues. types like string, lists etc.
CLO14. describe the most common data structures

Stacks (5) Use basic data structure: Stacks CLO15. Describe the characteristics and applications of a
and Queues. stack.
CLO16. Implement stacks in python
Stack operations (5) Use basic data structure: Stacks CLO17. Construct code/ code snippets using access
and Queues. methods of a stack in order to solve a given
problem.
CLO18. Trace programs that use stacks in order to deduce
the output at different steps.
CLO19. Identify errors and suggest corrections required
for the desired result in programs that use stacks.
Chapter 4: Queues Queues (5) Use basic data structure: Stacks CLO20. Describe the characteristics and applications of a
and Queues. stack.
CLO21. Implement Queues in python
Operations on (6) Use basic data structure: Stacks CLO22. Construct code/ code snippets using access
Queue and Queues. methods of a stack in order to solve a given
problem.
CLO23. Trace programs that use Queues in order to
deduce the output at different steps.
CLO24. Identify errors and suggest corrections required
for the desired result in programs that use
Queues.
Chapter 5: Sorting Sorting (2) Implement search and sort CLO25. Describe the need for sorting in linear data
techniques. structures.

Draft Learning Framework | Computer Science | Classes 11-12 32


Chapter Key Concepts CBSE learning Outcome Content domain specific learning outcome
CLO26. Demonstrate standard methods of sorting-
insertion sort, selection sort and bubble sort
methods
CLO27. Construct code/ code snippets to perform a
desired sort method in order to solve a given
problem.
CLO28. Create user defined functions to perform a
desired sort operation in a given scenario.
CLO29. Trace programs that use a sorting method in
order to deduce the output at different steps.
CLO30. Identify errors and suggest corrections required
for the desired result in programs that use a
sorting method.
Sorting efficiency (5) Explain the concept of efficiency in CLO31. Identify the conditions and choose the right
algorithms and computing in general. sorting method in a given situation.
CLO32. Analyse an algorithm to explain how a sorting
algorithm will perform when the input grows
larger.
Chapter 6: Searching Searching (2) Implement search and sort CLO33. Describe the need for searching in linear data
techniques. structures.
CLO34. Show understanding of standard methods of
Searching- linear seach, binary search and
seaching by hashtag methods
CLO35. Construct code/ code snippets to perform a
desired seach method in order to solve a given
problem.
CLO36. Trace programs that use a search method in order
to deduce the output at different steps.
CLO37. identify errors and suggest corrections required
for the desired result in programs that use a
search method.

Draft Learning Framework | Computer Science | Classes 11-12 33


Chapter Key Concepts CBSE learning Outcome Content domain specific learning outcome
Searching efficiency (5) Explain the concept of efficiency in CLO38. Identify the conditions and choose the right
algorithms and computing in general. search method in a given situation.
CLO39. Analyse an algorithm to explain how a search
algorithm will perform when the input grows
larger.
CLO40. Distinguish between raw and processed data
CLO41. Illustrate the need for data collection, storage, and
processing.
Chapter 7: Database concepts (9) Use Database concepts, SQL to CLO42. Explain the concept of relational data model
Understanding Data store, retrieve and manipulate data. CLO43. Outline the three important properties of a
relation
CLO44. Identify and explain the features of a relational
data model.
CLO45. Formulate the mean, median, mode, range, and
Statistical
(9) Use Database concepts, SQL to standard deviation of given data.
Techniques for Data
store, retrieve and manipulate data. CLO46. Choose the appropriate statistical method for a
Processing
given problem
Chapter 8: Database (9) Use Database concepts, SQL to CLO47. Justify the limitations of using a file-based
File system
Concepts store, retrieve and manipulate data. approach for the storage and retrieval of data
Database CLO48. Define what is a Database Management System
(9) Use Database concepts, SQL to
Management CLO49. Recognize the key terms in DBMS like Database
store, retrieve and manipulate data.
System schema, query, constraints, etc.
Keys in a Relational (9) Use Database concepts, SQL to CLO50. 7. Define and identify the different types of keys
database store, retrieve and manipulate data. in relational database
Chapter 9: Structured
(9) Use Database concepts, SQL to
Query Language SQL CLO51. Explain the need of SQL
store, retrieve and manipulate data.
(SQL)

Draft Learning Framework | Computer Science | Classes 11-12 34


Chapter Key Concepts CBSE learning Outcome Content domain specific learning outcome
Data types and
(9) Use Database concepts, SQL to CLO52. Explain and identify the data types and
constraints in
store, retrieve and manipulate data. constraints used in MySQL
MySQL
SQL for data (9) Use Database concepts, SQL to CLO53. Identify and write MySQL queries to create,
definition store, retrieve and manipulate data. remove, and alter databases and tables.
SQL for data (9) Use Database concepts, SQL to CLO54. Identify and write MySQL queries for inserting
manipulation store, retrieve and manipulate data. new records in a table
CLO55. Identify and write MySQL queries for retrieving
SQL for retrieving (9) Use Database concepts, SQL to
data using different clauses like DISTINCT,
data store, retrieve and manipulate data.
WHERE, GROUP BY etc.
SQL for data
(9) Use Database concepts, SQL to CLO56. Identify and write MySQL queries for updating
updation and
store, retrieve and manipulate data. and deleting data
deletion
CLO57. Understanding how to use single row, multi row
(9) Use Database concepts, SQL to functions and group records
Functions in SQL
store, retrieve and manipulate data. CLO58. Understanding how to work with multiple tables
in SQL
Operations on (9) Use Database concepts, SQL to CLO59. Show understanding of how to apply binary
Relations store, retrieve and manipulate data. operations to merge tuples of two tables
CLO60. Writing SQL queries using two relations using
Using two relations (9) Use Database concepts, SQL to
both JOIN and Cartesian product
in a query store, retrieve and manipulate data.

CLO61. Identify the different types of Network – PAN,


Chapter 10: Network and types (7) Explain computer networks and LAN, MAN and WAN
Computer Networks of Network how it works. CLO62. Explain the characteristics and role of different
types of network.

Draft Learning Framework | Computer Science | Classes 11-12 35


Chapter Key Concepts CBSE learning Outcome Content domain specific learning outcome
CLO63. Describe the role and functions of devices (like
(7) Explain computer networks and
Network Devices Modem, Hub, Switch, Repeater, Router, Gateway,
how it works.
etc) in a computer network
CLO64. Explain how data is transmitted between two
(7) Explain computer networks and
Network Topology devices for a given topology
how it works.
CLO65. Justify the use of a topology for a given situation
CLO66. Recognize and explain the basic terminologies in
computer networks like MAC, IP, URL, HTML, DNS
etc.
CLO67. Explain how an IP address is associated with a
Network (7) Explain computer networks and
device on a network
fundamentals how it works.
CLO68. Explain the IP address formats
CLO69. Explain how a Uniform Resource Locator (URL) is
used to locate a resource on the web including the
role of DNS server
CLO70. Explain the concept of communication and the
role of the major components in data
communication.
CLO71. Infer the capacity of a transmission media
measured in terms of bandwidth and data
transfer rate.
Chapter 11: Data Basics of data (7) Explain computer networks and
CLO72. Explain different types of communication
Communication communication how it works.
between different devices.
CLO73. Choose a suitable type of communication in a
given scenario.
CLO74. Explain the role of switching techniques to
connect the sender and receiver so that one-to-
one communication is possible
(7) Explain computer networks and CLO75. Recognize some of the major data transmission
Data Transmission
how it works. media and their suitability in different scenarios.

Draft Learning Framework | Computer Science | Classes 11-12 36


Chapter Key Concepts CBSE learning Outcome Content domain specific learning outcome
CLO76. Distinguish between wired and wireless
transmissions
CLO77. Classification of transmission waves and their
properties that are used in wireless transmission
CLO78. Outline some of the latest technologies used in
wireless communications
CLO79. Outline the importance of standardized language
(7) Explain computer networks and like in the construction of networks.
Protocols
how it works. CLO80. Show understanding of why a protocol is
essential for communication in a network
(8) Explain the security concerns in CLO81. Idenitfy the threats to computer and data security
networked computers and methods to posed by networks and the internet like malware,
mitigate them virus. Etc
CLO82. Explain different types of hackers and the
Chapter 12: Security Threats to data
methods used by them that pose a threat to data
Aspects security
security
CLO83. Explain the methods employed that pose a threat
to network security like Denial of Service,
Intrusion problems etc.
(8) Explain the security concerns in CLO84. Describe methods that can be used to restrict the
Methods to Combat
networked computers and methods to risks posed by threats
the threats
mitigate them CLO85. Explain of how antivirus works.

Draft Learning Framework | Computer Science | Classes 11-12 37


SUGGESTED PEDAGOGICAL PROCESSES AND ASSESSMENT STRATEGIES

“The pedagogical practices should be learner centric. It is expected of a teacher to ensure an atmosphere for students to feel free to ask questions.
They would promote active learning among students with a focus on reflections, connecting with the world around them, creating and
constructing knowledge. The role of a teacher should be that of a facilitator who would encourage collaborative learning and development of
multiple skills through the generous use of resources via diverse approaches for transacting the curriculum.”
[CBSE Curriculum for classes 11-12]

NCERT higher secondary stage learning outcomes document provides a common set of pedagogical processes for each subject. Keeping these as
guidelines, specific pedagogical processes and assessment strategies for a topic from one chapter each from classes 11 and 12 have been developed as
suggestions and are shared in this section. These instances of pedagogical process and assessment strategies should enable teachers to derive
principles for making the alignment between learning outcomes, pedagogical practices and assessment in their classrooms and to use these for creating
their lesson plans. The key principles considered while designing the pedagogical processes and assessment strategies are the following:
1. Keeping learner at the centre
• Since new knowledge is built over existing knowledge, both pedagogy and assessment should focus on students’ pre-requisite knowledge,
skills, attitudes, and beliefs that they bring in a classroom setting.
• Constructivist approaches to learning with the student being at the centre of the learning process as an active constructor of knowledge
must be emphasized.
• Since students effectively learn by doing, classroom processes should involve activities, analysis and discussions. Systematic
experimentation as a tool to discover/verify theoretical principles must be included.

2. Focusing on learning outcomes


• Learning outcomes indicate what a student will be able to do at the end of an instruction unit by precisely breaking down broad goals of
chemistry education (apply reasoning to develop conceptual understanding, develop process skills and experimental, observational,
manipulative, decision-making and investigatory skills, etc.) to more measurable and observable behavior for each class.
• Students learn better when the method of teaching, learning activities and assessment strategies are all aligned well to the learning
outcomes. Pedagogical processes and assessment strategies should be aligned to both content domains and cognitive skills as mentioned in
this document earlier.

Draft Learning Framework | Computer Science | Classes 11-12 38


3. Making effective use of assessments
• Assessment should be viewed as an integral part of pedagogy and it should focus on giving timely individualized feedback to students.
• Quality formative assessment should be designed as it helps to modulate students’ understanding of their own learning and helps teachers
adapt their pedagogy based on students’ actual learning.
• Multiple modes of assessment including portfolios, project work, presentations, written and oral assignments should be used to reflect
individual capacities of a student.
4. Creating a social and inclusive learning environment
• Cooperative and peer-supported teaching learning activities should be used to empower students to take charge of their own learning.
• Peer assessment involving students assessing work of their peers against set assessment criteria should be used.
• Specific pedagogical processes should be used in the classroom that would help those students who may face learning difficulties including
language, visual-spatial, or mixed processing problems.

Draft Learning Framework | Computer Science | Classes 11-12 39


SOME SAMPLE COMPUTER SCIENCE SPECIFIC PEDAGOGICAL PROCESSES AND ASSESSMENT STRATEGIES

Grade: 11
Unit: Computational Thinking and Programming
Chapter: Flow of Control

Learning Outcome Pedagogical Process Assessment Strategies

CLO49. Identify and develop the appropriate Students should be able to analyse a given To check the skills
sequence of steps required to solve a problem. problem statement and design the solution. 1) Students can be given problem
CLO51. Identify when decision-making is To introduce the concepts of sequence, iteration statements to solve using different
required in a specified situation. and conditions. methods of problem solving.
CLO52. Identify the decisions required to solve Students should be given to write simple 2) Students are expected to trace, explain
a given problem statement. solutions for real world examples like or construct algorithms/code snippets
- Algorithm to solve the problem of to – check whether the code will
CLO57. Identify when iterations are required produce desired result, evaluate an
and no: of iterations required to solve a given a non-functioning light bulb
- Algorithm to make a well balance plate of intermediate output at a particular
problem. step.
Upma/Poha/Kichdi.
- Choosing the best route for school 3) Given an error, students should be able
- Grouping students whose height is more to suggest suitable methods to solve
CLO53. Construct logical rules for solving the
than 5 ft into group A and others in group B the error.
problem statement.
Such problems will help them develop
CLO58. Use the appropriate iteration method
computational thinking with relatable concepts. Students are not expected to know all the
in order to solve the given problem – including
Once students are comfortable, students should tokens, relevant stimulus and inserts should
simple and nested loops.
be given computational problems to solve, the be provided in the paper to ensure that the
CLO59. Use break and continue appropriately problems should be given in the increasing assessment is for computational thinking and
while creating a program with iterations. levels of difficulty. not about learning python syntax.
CLO55. Trace programs that use simple and Students should be introduce tp the different The questions should not be about asking
compound conditional statements in order to programming concepts separately to gain the syntax-based questions which would need
deduce the output at different steps procedural fluency of the programming as well as students to memorize the tokens.
developing sequential, logical and recursive
thinking.
Draft Learning Framework | Computer Science | Classes 11-12 40
Learning Outcome Pedagogical Process Assessment Strategies

CLO50. Evaluate whether the order in which As a practice to develop the skill of writing
activities are executed are in the right algorithms as well as gaining the procedural
sequence to achieve the desired result. fluency, it should be made as a standard practice
CLO56. identify errors and suggest corrections to write the pseudocode/flowchart, before
required for the desired result in programs coding.
that use simple and compound conditional Teachers should give enough hands-on
statements experience in writing algorithms for different
CLO60. Identify errors and suggest corrections kinds of problem statements.
required for the desired result in programs Students should also be given as much practice
that use simple and nested loops including time in computer labs as possible to develop the
count-controlled loops, pre-condition loops, programming familiarity while not forcing them
post-condition loops to memorize the syntax.
Programming on computers also will develop the
skill of identifying errors and correcting them at
the same time develop the skill of tracing the
programs.

Draft Learning Framework | Computer Science | Classes 11-12 41


Grade: 12
Unit: Computer Networks
Chapter: Security Aspects

Learning Outcome Pedagogical Process Assessment Strategies

In an ever-increasing world of connected systems Students could be given case scenarios and
and devices students need to have a broad view asked the type of the threat that is mentioned
CLO86. Show understanding of the threats to of the threats that pose a risk to their data in the case and how they will ensure that the
computer and data security posed by networks security. system is secure.
and the internet like malware, virus. Etc Teachers should explain the different types of Students could be asked to differentiate
CLO87. Show an understanding of different threats and also understand the reason why these between different types of threats.
types of hackers and the methods used by them threats are created. Students could be asked to differentiate
that pose threat to data security Students should be given the opportunity to between different kinds of security systems.
CLO88. Explain the methods employed that explore different case studies that showcase the Students could also be asked to explain with
pose a threat to network security like Denial of damages caused by the threats, this could be a examples how some of the commonly used
Service, Intrusion problems etc. group activity where students can go through the elements are converted into a threat.
case study and give a short presentation on the
case.
Teachers should explain the concept of network
security measures
Show a video document of setting up different
security measures.
CLO89. Describe methods that can be used to
restrict the risks posed by threats Students could be asked to give a small write up
on different security measures and how it will
CLO90. Show an understanding of how
protect them.
antivirus works.
Students should be presented with scenarios of
different threats and ask them to identify the
measures that they will take to create a secure
scenario.

Draft Learning Framework | Computer Science | Classes 11-12 42


Draft Learning Framework | Computer Science | Classes 11-12 43
ESSENTIAL IDEAS AND SAMPLE QUESTIONS

CLASS 11

Chapter Name 1. Computer System

Essential Idea The computer system is made up of hardware and software components and together they perform complex activities

Question 1

Item Stem Data entered through the input device is temporarily stored in
i) RAM
ii) ROM
iii) Hard disk
iv) CPU

Correct answer RAM Reason: RAM is volatile

Distractor 1 ROM Explanation: Confusion between RAM and ROM

Distractor 2 Hard Disk Explanation: Lack of understanding of the concept of data storage and retrieval

Distractor 3 CPU Explanation: Lack of understanding of the concept of data storage and retrieval

Question 2

Item Stem The size of computer reduced drastically due to


i) Registers
ii) Integrated circuits
iii) Resistors

Draft Learning Framework | Computer Science | Classes 11-12 44


iv) RAM

Correct answer Integrated circuits Reason: Since it is just a small chip, it helps reduce the size of the computers

Distractor 1 Registers Explanation: Confusion between registers and IC

Distractor 2 Resistors Explanation: Confusion between resistors and IC

Distractor 3 RAM Explanation: Lack of understanding of computer systems

Question 3

Item stem Fill in the blanks


i) _______ language uses 0 and 1 for writing instructions
ii) A high-speed memory placed between the CPU and the primary memory is known as ______
iii) The startup program that loads the operating system into the primary memory is _____
iv) _____________devices feed data into the computer.

Marking Rubric

Part Description Marks

i) Machine 4 (1 mark for each correct answer)


ii) Cache Memory
iii) ROM
iv) Input

Draft Learning Framework | Computer Science | Classes 11-12 45


Chapter Name 2. Encoding schemes and Number systems

Essential Idea Encoding Schemes and number systems help humans communicate with computers effectively.

Question 1

Item Stem When a key is pressed on the English keyboard is pressed, it is internally mapped to
i) Unique hexadecimal code
ii) Unique decimal code
iii) Unique binary code
iv) Unique octal code
Correct answer Unique decimal Reason: The keys are mapped to decimal numbers which are eventually converted to binary value for
code the computer to understand
Distractor 1 Unique Explanation: Since it contains alphabets as well, some students might get confused
hexadecimal code
Distractor 2 Unique binary code Explanation: Since this is the code that the computer understands

Distractor 3 Unique octal code Explanation: Octal code is also used in computers, so it may cause a confusion

Question 2

Item Stem ASCII code for A is 065, B is 066, S is 083 and T is 084.
If the word “BATS” is input using an ASCII encoded keyboard. How would it be encoded into binary values which can be
understood by a computer?

Draft Learning Framework | Computer Science | Classes 11-12 46


Correct answer iv. This is correct ASCII equivalent of 7-bit binary code

Distractor 1 i. Explanation: Lack of understanding of how ASCII code is converted into binary equivalent

Distractor 2 ii. Explanation: Lack of understanding of how ASCII code is converted into binary equivalent

Distractor 3 iii. Explanation: Lack of understanding of how ASCII code is converted into binary equivalent

Question 3
Item stem Do the following conversions:
i) Decimal to Binary: 120
ii) Octal to decimal: 6760
iii) Decimal to hexadecimal: 4502
Marking Rubric

Part Description Marks

i) 1111000 3 (1 mark for each correct answer)


ii) 3568
iii) 1196

Draft Learning Framework | Computer Science | Classes 11-12 47


Chapter Name 3. Emerging Trends

Essential Idea Rapid evolution of computer technolgy has transformed areas ranging from data infrastructure to cyber security.

Question 1

Item Stem Which of the following do not come under Artificial Intelligence (more than one option can be correct)?
i) Siri
ii) Virtual Reality
iii) Google Docs
iv) Cryptocurrency
Correct answer iii) and iv) Reason: Google Docs is an online word processor and
cryptocurrency used blockchain technology.
Distractor 1 Siri Explanation: AI based personal assistant

Distractor 2 Virtual Reality Explanation: It is a part of immersive experience

Question 2
Essential Idea Technology is evolving faster than ever to make to support and strengthen human ability

Item stem Justify the statement ‘Storage of data is cost-effective and time-saving in cloud computing.’

Marking Rubric

Part Description Marks

Draft Learning Framework | Computer Science | Classes 11-12 48


Correct answer: 1
Cloud computing stores data into a server and it is
available at almost free of cost or nominal cost.

When it comes to time-saving by saving data on the


internet there is no need to wait to start up any computer
or device. It is easily available with a browser program
or app. So it can be accessed anytime from anywhere.
Cloud computing stores data into a server and it is 0.5
available at almost free of cost or nominal cost.
When it comes to time-saving by saving data on the 0.5
internet there is no need to wait to start up any computer
or device. It is easily available with a browser program
or app. So it can be accessed anytime from anywhere.

Draft Learning Framework | Computer Science | Classes 11-12 49


Chapter Name Introduction to Problem Solving
Essential Idea A problem-solving strategy is a plan of action used to find a solution.
Question 1
Item Stem Given the following pseudocode, what will be the output if the
input is: 9,2,6,5,8,0,6,9,9.

Step 1: Set c = 0, s = 0
Step 2: Input num
Step 3: While num is not equal to 0, repeat Steps 4 to 6
Step 4: s = s + num
Step 5: c = c + 1
Step 6: Input num
Step 7: Compute a = s/c
Step 8: Print a and c

i) 6, 5
ii) 6, 6
iii) 6, 9
iv) 5, 6
Correct answer 6,5 Reason: It takes only the first 5 numbers
Distractor 1 6, 6 Explanation: Some students might also count 0 and the average will remain
the same
Distractor 2 5, 5 Explanation: Some students might take in all the numbers

Draft Learning Framework | Computer Science | Classes 11-12 50


Distractor 3 5, 6 Explanation: Confusion with option i) (silly mistake)

Question 2
Item stem Write the pseudocode to input two numbers and swap them without using a third variable.

Marking Rubric

Part Description Marks

Correct answer: 2

Step 1. Input a and b


Step 2. Compute a = a+b
Step 3. Compute b = a-b
Step 4. Compute a = a-b
Step 1. Input a and b 0.5

Step 2. Compute a = a+b 0.5

Step 3. Compute b = a-b 0.5

Step 4. Compute a = a-b 0.5

Chapter Name Getting started with Python


Essential Idea To learn the language, you need to know the vocabulary and the grammar to know how to construct well-formed "sentences".
Question 1.

Draft Learning Framework | Computer Science | Classes 11-12 51


Item Stem Write the output of the following

a = [1, 2]
b=a
b += [3, 4]
print(a)
print(b)

i) [1, 2, 3, 4]
[1, 2, 3, 4]

ii) [1, 2]
[1, 2, 3, 4]

iii) [1, 2, 1, 2]
[1, 2, 3, 4]

iv) [1, 2]
[3, 4]
Correct answer i) Reason: Since b and a reference to the same object, when we use the addition assignment operator += on b, it
changes both a and b
Distractor 1 ii) Explanation: Lack of understanding of basic syntax and concept of objects
Distractor 2 iii) Explanation: Lack of understanding of basic syntax and concept of objects
Distractor 3 iv) Explanation: Lack of understanding of basic syntax and concept of objects

Question 2

Draft Learning Framework | Computer Science | Classes 11-12 52


Item stem i) Suppose there are 5 people (including you) working on a project and writing code in the same file. Now, if you want to tell some
information about your code, how will you do so using just the code you have written?

ii) What is the data type of A (where A = ‘101’)


iii) What will be the output of the following code?

x=2
x=5
x=x+x
print(x)
Marking Rubric

Part Description Marks

3(1 mark for each correct answer)


i) Write comments
ii) String
iii) 10

Chapter Name Flow of Control


Essential Idea Programs are executed step by step, the order in which the code is executed is essential in problem solving.
Question 1
Item Stem What is the output of the following Python code:

Draft Learning Framework | Computer Science | Classes 11-12 53


L = [13 , 12 , 21 , 16 , 35 , 7, 4]
sum = 5
sum1 = 3
for i in L:
if (i % 4 == 0):
sum = sum + i
continue
if (i % 7 == 0):
sum1 = sum1 + i
print(sum , end=" ")
print(sum1)

i) 37 67
ii) 35 66
iii) 37 66
iv) 35 65
Correct answer iii) 37 66
Distractor 1 i) 37 67 Explanation: Wrong calculation
Distractor 2 ii) 35 66 Explanation: Lack of understanding to properly trace an algorithm with conditionals
Distractor 3 iv) 37 65 Explanation: Lack of understanding to properly trace an algorithm with conditionals
Question 2

Item stem Write a program to display the sum of odd numbers and sum of even numbers separately that fall between two numbers
(including both numbers) accepted from the user. (Note: use while loop)

Draft Learning Framework | Computer Science | Classes 11-12 54


Marking Rubric

Part Description Marks

Correct answer: 4

num1 = int(input("Enter first number : "))


num2 = int(input("Enter second number : "))
sumEven = 0
sumOdd = 0
if num1 > num2 :
while(num2 <= num1):
if num2%2 == 0:
sumEven = sumEven + num2
num2 = num2 + 1
else:
sumOdd = sumOdd + num2
num2 = num2 + 1
else :
while(num1 <= num2):
if num1 % 2 == 0:
sumEven = sumEven + num1
num1 = num1 + 1
else:
sumOdd = sumOdd + num1

Draft Learning Framework | Computer Science | Classes 11-12 55


num1 = num1 + 1
print("Sum of even numbers is : ", sumEven)
print("Sum of odd numbers is : ", sumOdd)

num1 = int(input("Enter first number : ")) 0.5


num2 = int(input("Enter second number : "))
sumEven = 0 1
sumOdd = 0
if num1 > num2 : 1
while(num2 <= num1):
if num2%2 == 0:
sumEven = sumEven + num2
num2 = num2 + 1
else:
sumOdd = sumOdd + num2
num2 = num2 + 1
else : 1
while(num1 <= num2):
if num1 % 2 == 0:
sumEven = sumEven + num1
num1 = num1 + 1
else:

Draft Learning Framework | Computer Science | Classes 11-12 56


sumOdd = sumOdd + num1
num1 = num1 + 1
print("Sum of even numbers is : ", sumEven) 0.5
print("Sum of odd numbers is : ", sumOdd)

Chapter name Functions


Essential Idea Function is a like device that you can use can carry out a specified task.

Question 1

Item stem What is the output of the following code:

def func(x = 1, y = 2):

x=x+y

y += 1

print(x, y)

func(y = 2, x = 1)

Marking Rubric

Part Description Marks

Draft Learning Framework | Computer Science | Classes 11-12 57


Answers: 2

33
Question 2
Item stem Write a program to create a function employee_details() using the following conditions:

a) It should accept the employee’s salary for 2 months and his/her name
b) If the salary for the second month is missing, then assign default value 9000 to the second month salary
c) Display the average salary and employee’s name
Marking Rubric

Part Description Marks

Correct answer: 3

def show_employee(name, salary1, salary2=9000):


print("Name:", name, "Average salary:",
((salary1+salary2)/2))
def show_employee(name, salary1, salary2=9000): 1.5

print("Name:", name, "Average salary:", 1.5


((salary1+salary2)/2))
Question 3

Draft Learning Framework | Computer Science | Classes 11-12 58


Item Stem What will be the output of the following program?

cc = 2
if False:
cc = 66
def helmet():
if True:
cc = 40
helmet()
print(cc)

i) 66
ii) 40
iii) 2
iv) Error

Correct answer iii) 2 Reason: No change in original value of cc


Distractor 1 i) 66 Explanation: Unaware about how Boolean works
Distractor 2 ii) 40 Explanation: Not familiar with the concept of local variable
Distractor 3 iv) Error Explanation: Not familiar with the concept of scope of variables

Draft Learning Framework | Computer Science | Classes 11-12 59


Chapter Name Strings
Essential Idea Strings are very useful when communicating information from the program to the user of the program
Question 1
Item Stem What will be the output of the following Python code:

print ("Welcome TO My Blog"[2:6] + "Welcome TO My Blog"[5:9])

i) lcomme
ii) lcomme T
iii) lcomme To
iv) IcommeTo
Correct answer ii) Reason: it will concatenate “lcom” first string and “me T” from
second string
Distractor 1 i) Explanation: Confusion with indexing
Distractor 2 iii) Explanation: Confusion with indexing
Distractor 3 iv) Explanation: Might forget the space

Question 2
Essential Idea Strings are very useful when communicating information from the program to the user of the program

Item stem Write a function in Python that will return a string containing the first letter of every word in a given string with spaces.

Marking Rubric

Part Description Marks

Draft Learning Framework | Computer Science | Classes 11-12 60


Correct answer: 4

def firstLetterWord(str):
result = ""
v = True
for i in range(len(str)):

if (str[i] == ' '):


v = True
elif (str[i] != ' ' and v == True):
result += (str[i])
v = False

return result
def firstLetterWord(str): 0.5

result = "" 0.5


v = True
for i in range(len(str)): 2.5
if (str[i] == ' '):
v = True
elif (str[i] != ' ' and v == True):
result += (str[i])
v = False

Draft Learning Framework | Computer Science | Classes 11-12 61


return result 0.5

Chapter Name Lists


Essential Idea Lists are used to store multiple elements of different data types in a single variable that can be changed after creation.
Question 1
Item Stem Select all the correct options to copy the following list:

L = [‘a’, ‘b’, ‘c’, ‘d’]

i) newList = copy.copy(L)

ii) newList = L.copy()

iii) newList.copy(L)

iv) newList = list(L)


Correct answer i) and iv) Reason: Correct Syntax
Distractor 1 ii) Explanation: Since it has the word copy, some students might also think it is as
an answer
Distractor 2 iii) Explanation: Since it has the word copy, some students might also think it is as
an answer
Question 2

Chapter name Lists

Draft Learning Framework | Computer Science | Classes 11-12 62


Essential Idea Lists are used to store multiple elements of different data types in a single variable that can be changed after creation.

Item stem Write a Python program to find and display the second largest number in a list (take it as list1)

Marking Rubric

Part Description Marks

Correct answer: 4

list1 = [10, 20, 4, 45, 99]

mx=max(list1[0],list1[1])
secondmax=min(list1[0],list1[1])
n =len(list1)
for i in range(2,n):
if list1[i]>mx:
secondmax=mx
mx=list1[i]
elif list1[i]>secondmax and \
mx != list1[i]:
secondmax=list1[i]

print("Second highest number is : ",\


str(secondmax))
mx=max(list1[0],list1[1]) 1

Draft Learning Framework | Computer Science | Classes 11-12 63


secondmax=min(list1[0],list1[1])

n =len(list1) 2.5
for i in range(2,n):
if list1[i]>mx:
secondmax=mx
mx=list1[i]
elif list1[i]>secondmax and \
mx != list1[i]:
secondmax=list1[i]
print("Second highest number is : ",\ 0.5
str(secondmax))

Chapter Name Tuples and Dictionaries


Essential Idea Tuples are used to store multiple elements of different data types in a single variable that cannot be changed after creation.
Item Stem What is the output of the following Python codes

a="blog"
b=list(a)
c=tuple(b)
print(c)

Draft Learning Framework | Computer Science | Classes 11-12 64


i) Error
ii) (‘b’, ‘l’, ‘o’, ‘g’)
iii) [‘b’, ‘l’, ‘o’, ‘g’]
iv) [‘blog’]
Correct answer ii) Reason: Letters broken by list but displayed as a tuple
Distractor 1 i) Explanation: Confusion between lists and tuples
Distractor 2 iii) Explanation: Not clear with the basic functionality of tuples
Distractor 3 iv) Explanation: Might consider the word as one
Question 2
Item Stem What is the output of the following Python codes

d = {"john":40, "peter":45}
print(list(d.keys()))

i) (“john”, “peter”)
ii) (40, 45)
iii) [40, 45]
iv) [“john”, “peter”]
Correct answer iv) Reason: Will display only the keys
Distractor 1 i) Explanation: Not clear about the basic concepts of dictionary
Distractor 2 iii) Explanation: Not clear about the basic concepts of dictionary
Distractor 3 ii) Explanation: Not clear about the basic concepts of key in a dictionary

Draft Learning Framework | Computer Science | Classes 11-12 65


Chapter name Tuples and Dictionaries
Essential Idea Mapping can help in adjusting the range or prepare the values for analysis

Question 3

Item stem Write a Python program to delete list of keys from the dictionary

Given:

sample_dict = {
"name": "Kelly",
"age": 25,
"salary": 8000,
"city": "New york"
}

# Keys to remove
keys = ["name", "salary"]
Marking Rubric

Part Description Marks

Draft Learning Framework | Computer Science | Classes 11-12 66


Correct answer: 1

sample_dict = {
"name": "Kelly",
"age": 25,
"salary": 8000,
"city": "New york"
}
# Keys to remove
keys = ["name", "salary"]

for k in keys:
sample_dict.pop(k)
print(sample_dict)

Chapter Name Societal Impact


Essential Idea Technologies have a dramatic impact on our lives.
Question 1
Item Stem Ram copied large pieces of text from a source without citing that source to present it as his own work. This would be considered
as_________________.

i) Plagiarism
ii) Copyright Infringement

Draft Learning Framework | Computer Science | Classes 11-12 67


iii) Patent Infringement
iv) None of these

Correct i) Plagiarism is the act of copying large pieces of text without citing the sources.
answer
Distractor 1 iv) Explanation: not clear about trademark
Distractor 2 iii) Explanation: Confusion between patent infringement and plagiarism
Distractor 3 ii) Explanation: Confusion between patent, copyright, and plagiarism
Question 2

Item stem What are the things that everyone should do to prevent and combat cybercrimes?

Marking Rubric

Part Description Marks

If any three are written: (0.5 marks each) 1.5

i) Use an antivirus software and keep it updated always


ii) Avoid installing pirated software. Always download software from known and secure
(HTTPS) sites
iii) Do not visit or download anything from untrusted websites
iv) Take regular backup of important data
v) Always update the system software

Draft Learning Framework | Computer Science | Classes 11-12 68


vi) Usually the browser alerts users about doubtful websites whose security certificate could
not be verified; avoid visiting such sites
vii) Use a strong password for web login, and change it periodically. Do not use the same
password for all the websites.
viii) While using someone else’s computer, don’t allow browser to save password or auto fill
data, and try to browse in your private browser window
ix) For an unknown site, do not agree to use cookies when asked for, through a Yes/No option.
x) Perform online transaction like shopping, ticketing, and other such services only through
well-known and secure sites
xi) Always secure a wireless network at home with strong password and regularly change it.

Draft Learning Framework | Computer Science | Classes 11-12 69


CLASS 12

Chapter Name Exception Handling in Python

Essential Idea Runtime errors need to be handled so that the normal flow of the application can be maintained.

Question 1

Item Stem Which of the following statements is false?

i) A try-except block can have more than one except statements


ii) One block of except statement cannot handle multiple exceptions
iii) The finally block is always executed
iv) When 1 == “1” is executed, no exception is raised.

Correct answer One block of except statement cannot Reason: A block of except statement can handle multiple exceptions
handle multiple exceptions
Distractor 1 A try-except block can have more than Explanation: The statement is true
one except statements
Distractor 2 The finally block is always executed Explanation: Students may think that if except block is executed, then finally block is
not executed
Distractor 3 When 1 == “1” is executed, no Explanation: Some people may find this confusion and commit mistakes
exception is raised.
Question 2

Draft Learning Framework | Computer Science | Classes 11-12 70


Item stem What will be the output of the following Python codes?

i)

def foo():
try:
return 1
finally:
return 2
k = foo()
print(k)

ii)
def foo(x):
try:
print(5/x)
except ZeroDivisionError:
print ("exception block")
else:
print ("else block")
finally:
print ("finally block")
foo(0)

Draft Learning Framework | Computer Science | Classes 11-12 71


iii)

try:
num = int(input("Enter a number: "))
assert num % 2 == 0
except:
print("Not an even number!")
else:
rec = 1/num
print(rec)

Suppose we enter: a) 4 b) 5
Marking Rubric

Part Description Marks

Answers: 3

i) 2
ii) exception block
finally block
iii) a) 0.25
b) Not an even number!
i) 2 1

Draft Learning Framework | Computer Science | Classes 11-12 72


ii) exception block 0.5

ii) exception block 1


Finally block
iii) a) 0.25 - (0.5 marks) 1
b) Not an even number! (0.5 marks)

Chapter Name File Handling in Python

Essential Idea Performing operations on files to store data permanently for reusability.

Question 1

Item Stem Which of the following statements is false?

i) In text file, each file is terminated by a special character called EOL


ii) f= open(“story.txt”) - This statement will open the statement in write mode
iii) It is important to to close a file after we are done with the read and write operations
iv) When you open a file for writing, if the file does not exist, a new file is created.

Correct answer f= open(“story.txt”) - This statement will open the file in write mode Reason: The statement will open the file in
default (read) mode
Distractor 1 In text file, each file is terminated by a special character called EOL Explanation: The statement is true

Distractor 2 It is important to close a file after we are done with the read and write Explanation: Some students might not be
operations aware of this concept

Draft Learning Framework | Computer Science | Classes 11-12 73


Distractor 3 When you open a file for writing, if the file does not exist, a new file is created. Explanation: Students might think that it will
give an error
Question 2

Item stem Write a function line_count() in Python to count and print the number of lines from a text file “sample.txt” which is not starting
with the letter ‘A’.

Marking Rubric

Part Description Marks

Correct answer: 2

def line_count():
file = open("sample.txt","r")
count=0
for line in file:
if line[0] not in 'A':
count+= 1
file.close()
print("No of lines not starting with 'A'=",count)
def line_count(): 0.5
file = open("sample.txt","r")
count=0 0.5
for line in file:
if line[0] not in 'A':
count+= 1
Draft Learning Framework | Computer Science | Classes 11-12 74
file.close() 0.5

print("No of lines not starting with 'A'=",count) 0.5

Chapter Name Stack

Essential Idea Problems that requires backtracking can be implemented using stack operations.

Question 1

Item Stem Is the below evaluation of the postfix expression correct?

Step 1: INPUT postfix expression in a variable, say postExp

Step 2: For each character in postExp, REPEAT Step 3

Step 3: IF character is an operand


THEN PUSH character on the Stack
ELSE POP one element from the Stack, apply the operator on the popped elements and PUSH the computed value
onto the Stack
Step 4: IF Stack has a single element
THEN POP the element and OUTPUT as the net result
ELSE OUTPUT “Invaild Postfix expression”
Correct answer No Reason: In step 3, we will need to pop 2 elements from the Stack

Draft Learning Framework | Computer Science | Classes 11-12 75


Distractor 1 Yes Explanation: Some students might miss the popping of two elements from stack concept

Question 2

Item stem Write the output of the following Python code

def isEmpty(stk):
if stk==[]:
return True
else:
return False

def Push(stk,item):
stk.append(item)
top=len(stk)-1

def Pop(stk):
if isEmpty(stk):
print("Underflow")
else:
item=stk.pop()
if len(stk)==0:
top=None
else:
top=len(stk)

Draft Learning Framework | Computer Science | Classes 11-12 76


print("Popped item is "+str(item))

def Display(stk):
if isEmpty(stk):
print("Stack is empty")
else:
top=len(stk)-1
print("Elements in the stack are: ")
for i in range(top,-1,-1):
print (str(stk[i]))

stk=[]
top=None
Push(stk,1)
Push(stk,2)
Push(stk,3)
Push(stk,4)
Pop(stk)
Display(stk)
Marking Rubric

Part Description Marks

Draft Learning Framework | Computer Science | Classes 11-12 77


Correct answer: 2

Popped item is 4 (1 marks)


Elements in the stack are: (0.25 marks)
3 (0.25 marks)
2 (0.25 marks)
1 (0.25 marks)

Chapter Queue
Name
Essential Problems that requires order needs to be maintained can be solved using Queues.
Idea
Question 1

Item Which of the following statements is true?


Stem

i) Queue follows the LIFO principle


ii) DEQUE is to remove one element from the back of the queue
iii) In the deque, if insertion and deletion is done from the same end, it will behave as a stack
iv) A pile of books lying on top of each other is an example of a queue.
Correct In the deque, if insertion and deletion is done from the same end, it will Reason: Since the last element inserted will pop out first, it
answer behave as a stack will follow stack (LIFO) principle
Distractor Queue follows the LIFO principle Explanation: Queue follows FIFO principle
1

Draft Learning Framework | Computer Science | Classes 11-12 78


Distractor DEQUE is used to remove one element from the back of the queue Explanation: DEQUE can be used to perform push and pop
2 operations from both sides of the queue
Distractor A pile of books lying on top of each other is an example of a queue Explanation: A pile of books follow LIFO principle. Hence,
3 will behave like a stack
Question 2

Item stem What is the output of the following Python code?

def enqueue(data):
queue.insert(0,data)

def dequeue():
if len(queue)>0:
return queue.pop()
return ("Queue Empty!")

def display():
print("Elements on queue are:");
for i in range(len(queue)):
print(queue[i])

queue=[]
enqueue(5)
enqueue(6)

Draft Learning Framework | Computer Science | Classes 11-12 79


enqueue(9)
enqueue(5)
enqueue(3)
print("Popped Element is: "+str(dequeue()))
display()
Marking Rubric

Part Description Marks

Correct answer: 2

Popped Element is: 5 (0.5 marks)


Elements on queue are: (0.5 marks)
3 (0.25 marks)
5 (0.25 marks)
9 (0.25 marks)
6 (0.25 marks)

Chapter Name Sorting

Essential Idea Efficient sorting is important to optimize programs that requires the input in a sorted manner.

Question 1

Draft Learning Framework | Computer Science | Classes 11-12 80


Item Stem Consider a list having 6 elements [8,7,13,1,9,-4]. Now, all three sorting techniques are applied to it individually. What will be the
output after the first pass for all three sorting techniques?

I) Bubble sort a) [-9,8,7,13,1,4]


II) Selection sort b) [7,8,1,-9,4,13]
III) Insertion sort c) [7,8,13,1,-9,4]
Correct I-b, II-a, III-c Reason: The respective sorting algorithms will give the following output after one
answer pass
Distractor 1 I-a II-c III-b Explanation: Confusion between three sorting algorithms

Distractor 2 I-c II-b III-a Explanation: Confusion between three sorting algorithms

Distractor 3 I-b II-c III-a Explanation: I-b II-c III-a

Question 2
Item stem Given an unsorted array ‘arr’, write a function findMinDiff() in Python to find and print the minimum difference between any pair
in the array. The time complexity should be less than O(n^2).

Example 1:
arr = [2, 4, 5, 9, 7 ]
O/P: 1

Example 2:
arr = [3, 10, 8, 6]
O/P: 2
Marking Rubric

Draft Learning Framework | Computer Science | Classes 11-12 81


Part Description Marks

One possible correct answer: 3

def findMinDiff(arr):

n = len(arr)

for i in range(n-1):

for j in range(0, n-i-1):

if arr[j] > arr[j + 1] :


arr[j], arr[j + 1] = arr[j + 1], arr[j]

diff = 10**20

for i in range(n-1):
if arr[i+1] - arr[i] < diff:
diff = arr[i+1] - arr[i]
print(diff)
def findMinDiff(arr): 0.5

n = len(arr) 1

Draft Learning Framework | Computer Science | Classes 11-12 82


# (use any of three sorting algorithms)
for i in range(n-1):

for j in range(0, n-i-1):

if arr[j] > arr[j + 1] :


arr[j], arr[j + 1] = arr[j + 1], arr[j]
diff = 10**20 0.5

for i in range(n-1): 1
if arr[i+1] - arr[i] < diff:
diff = arr[i+1] - arr[i]
print(diff)

Chapter Name Searching

Essential Idea The appropriate search algorithm often depends on the information required and the data from which it has to be searched.

Question 1

Item Stem In the list A = [5,6,77,88,99] and key = 88, how many iterations are done until the element is found (using binary search)?

Correct answer 2 Reason: Iteration1: mid = 77; Iteration2: mid = 88

Draft Learning Framework | Computer Science | Classes 11-12 83


Distractor 1 1 Explanation: Might confuse with linear search

Distractor 2 3 Explanation: Confusion in searching algorithm

Distractor 3 4 Explanation: Might confuse iteration with the key


position in the array
Question 2

Item stem Write the algorithm to implement binary search in Python.

Marking Rubric

Part Description Marks

Correct answer: 4

Step 1: SET first = 0, last = n-1 - (0.5 marks)


Step 2: Calculate mid = (first+last)//2 - (0.5 marks)

Step 3: WHILE first <= last REPEAT Step 4 - (0.5 marks)

Step 4: IF numList[mid] = key - (2 marks)


PRINT “Element found at position”, " mid+1
STOP
ELSE
IF numList[mid] > key, THEN last = mid-1
ELSE first = mid + 1

Draft Learning Framework | Computer Science | Classes 11-12 84


Step 5: PRINT “Search unsuccessful” - (0.5 marks)

Chapter Name Understanding Data

Essential Idea A given raw data has to be processed using various techniques to derive the right information out of it.

Question 1

Item Stem Which of the following problem statements is mapped to the correct statistical method?

i) Average height of students in a class: Standard deviation


ii) The most popular color for bike after surveying the bike owners of a town: Mean
iii) Find the dominant value from a set of values: Median
iv) Most frequently occurring value from a set of values: Mode
Correct answer Most frequently occurring value from a set of values: Mode Reason: The value which occurs most frequently will represent the
mode
Distractor 1 Average height of students in a class: Standard deviation Explanation: Confusion between range, standard deviation, and
mean

Draft Learning Framework | Computer Science | Classes 11-12 85


Distractor 2 The most popular color for bike after surveying the bike Explanation: Might think that most popular colour will have mean
owners of a town: Mean closer to that value
Distractor 3 Find the dominant value from a set of values: Median Explanation: Might confuse median and mode

Question 2
Item stem What are the different types of data? Explain with examples.

Marking Rubric

Part Description Marks

One possible Correct answer: 2.5

There are two broad categories in which data can be


classified:

i) Structured data
ii) Unstructured data

Structured data: Data which is organized and stored in a


well defined format like tables

Example: A teacher storing attendance of students.

Unstructured data: Data which is not in the traditional row


and column structure

Draft Learning Framework | Computer Science | Classes 11-12 86


Example: Contents of email or newspaper.

There are two broad categories in which data can be 0.5


classified:

i) Structured data
ii) Unstructured data
Structured data: Data which is organized and stored in a 1
well defined format like tables

Example: A teacher storing attendance of students.


Unstructured data: Data which is not in the traditional row 1
and column structure

Example: Contents of email or newspaper.

Chapter Database Concepts


Name
Essential Organising logically related data in a system is essential to manage and utilize the data in an efficient and easy way.
Idea

Draft Learning Framework | Computer Science | Classes 11-12 87


Question 1

Item Stem Which of the following statements is true?

a. DBMS is costlier than file system


b. Relational data model is used for unstructured data
c. Each attribute in a database table must have a unique name
d. A DBMS can be created even without a database schema
Correct a and c only Reason: DBMS costs more than a file system. And,
answer if attributes in a table have same name, it will be
an invalid table
Distractor 1 b and d only Explanation: People might confuse the question
with “false” rather than “true”
Distractor 2 a,c,d Explanation: Students might not understand the
importance of database schemas
Distractor 3 c and d only Explanation: Might think that there is no extra cost
while using a DBMS
Question 2
Item stem Identify the primary and foreign keys in the following tables.

Table 1

Roll number Name Class

1 Ankit 11

2 Aravind 11

Draft Learning Framework | Computer Science | Classes 11-12 88


3 Nishchal 12

Table 2

Class Teacher Subject

11 Arpit Maths

11 Sridhar English

12 Jagadish Maths

Marking Rubric

Part Description Marks

Correct answer: 2

Primary key: Roll number (1 mark)


Foreign key: Class (1 mark)

Question 3

Item stem When is a composite primary key used? Explain with an example.

Marking Rubric

Part Description Marks

Draft Learning Framework | Computer Science | Classes 11-12 89


Correct answer: 2

If no single attribute in a relation is able to uniquely distinguish the tuples, then


more than one attribute is taken together as the primary key. Such a primary key
consisting of more than one attribute is called Composite Primary key. (1 mark)

Example: (1 mark)

Teacher Name Class Subject

Udit 11 English

Vipul 11 Maths

Kaushal 12 English

Here a combination of ‘Class’ and ‘Subject’ will be used to make a composite


primary key.

Draft Learning Framework | Computer Science | Classes 11-12 90


Chapter Name Structured Query Language (SQL)

Essential Idea Query languages are used to access and manipulate data from the database in a standardized manner.

Question 1

Item Stem Which of the following statements is false?

a. Truncate is not a DDL command


b. PRODUCT command is used to combine records from one or more tables
c. If we have not specified ASC or DESC after a SQL ORDER BY clause, DESC is used as default
d. UPDATE command is used to change the definition of a table in SQL

i) a and b only
ii) a b and c only
iii) c and d only
iv) All of the above (a,b,c,d)
Correct answer All of the above (a,b,c,d) Reason: All the statements are false

Distractor 1 a and b only Explanation: If order is not specified, ASC is used as default.
And, confusion between UPDATE and ALTER commands
Distractor 2 a,b,c only Explanation: Confusion between UPDATE and ALTER
commands
Distractor 3 c and d only Explanation: Confusion between PRODUCT and JOIN
commands
Question 2

Item stem Write the SQL queries for the following tables.

Draft Learning Framework | Computer Science | Classes 11-12 91


Table - EmployeeDetails

EmpId FullName ManagerId DateOfJoining City

121 John Snow 321 31/01/2014 Toronto

321 Walter White 986 30/01/2015 California

421 Kuldeep Rana 876 27/11/2016 New Delhi

Table - EmployeeSalary

EmpId Project Salary Variable

121 P1 8000 500

321 P2 10000 1000

421 P1 12000 0

i) Write an SQL query to fetch all the employees who either live in California or work under a manager with ManagerId – 321
ii) Write an SQL query to upper case the name of the employee and lower case the city values.
iii) Write an SQL query to fetch employee names having a salary greater than or equal to 5000 and less than or equal to 10000.
Marking Rubric

Draft Learning Framework | Computer Science | Classes 11-12 92


Part Description Marks

Correct answer: 5

i) SELECT *
FROM EmployeeDetails
WHERE City='California' OR ManagerId='321'; - (2 marks)

ii) SELECT UPPER(FullName), LOWER(City)


FROM EmployeeDetails; - (1 mark)

iii) SELECT FullName


FROM EmployeeDetails
WHERE EmpId IN
(SELECT EmpId FROM EmployeeSalary
WHERE Salary BETWEEN 5000 AND 10000); - (2 marks)

Chapter Name Computer Networks

Draft Learning Framework | Computer Science | Classes 11-12 93


Essential Idea Computer Networks have evolved into a very sophisticated field over the years and allowed information sharing and modern
communication

Question 1

Item Stem Which of the following statements is false?

a. DNS server converts domain name to the corresponding IP address


b. URL of a page is not always same as its domain name
c. HTTPS is safer than HTTP
d. Interlinking of collection of webpages is called Internet
Correct answer d) Reason: Website is the interlinking of collection of
webpages.
Distractor 1 a) Explanation: Lack of understanding of the concept of a
DNS server
Distractor 2 b) Explanation: URL can contain information much more
than just the domain name
Distractor 3 c) Explanation: Unaware of the importance of HTTPS

Question 2

Item stem Differentiate between IP address and MAC address.

Marking Rubric

Part Description Marks

Draft Learning Framework | Computer Science | Classes 11-12 94


Correct answer: 2

IP Address MAC Address

1. IP address, also 2. MAC stands for Media


known as Internet Access Control. The
Protocol address, is MAC address, also
also a unique known as the physical
address that can be or hardware address,
used to uniquely is a unique value
identify each node associated with a
in a network. network adapter

2. IP addresses can change if 2. MAC addresses won’t


a node is removed from one change if a node is removed
network and connected to from one network and
another network. connected to another network.

Difference 1 (definition of IP and MAC Addresses) 1

Difference 2 1

Chapter Name Data Communication

Essential Idea Different transmission media and protocols have improved the ways of communication.

Draft Learning Framework | Computer Science | Classes 11-12 95


Question 1

Item Stem Which of the following statements is false?

i) HTTP and FTP work on client server model


ii) If you connect your home computer to the server of an ISP through a modem, you are using PPP (Point to Point protocol)
iii) The HTTP protocol ensures that each computer connected to the internet is assigned an IP address.
iv) If the data speed between two computers are different, it will lead to loss of data
Correct answer iii) Explanation: One of the features of HTTP protocol

Distractor 1 i) Explanation: Students might not know that FTP too works on client server model

Distractor 2 ii) Explanation: Confusion between PPP and TCP/IP protocol

Distractor 3 iv) Explanation: One of the benefits of using protocols. Students might not be aware of the concept of
data loss
Question 2
Item stem State which of the following statements are true or false.

i) Higher the bandwidth, higher is the data transfer rate


ii) Infrared waves are used for communication in TV remotes
iii) Higher the frequency, greater the distance travelled by that wave
Marking Rubric

Part Description Marks

Draft Learning Framework | Computer Science | Classes 11-12 96


i) True - (0.5 mark) 1.5

ii) True - (0.5 mark)

iii) False - (0.5 mark)

Chapter Security Aspects


Name
Essential Internet is powerful, but there are security issues and potential threats.
Idea
Question 1

Item Which of the following is considered as unsolicited commercial email?


Stem

i) Spam
ii) Malware
iii) Virus
iv) Trojan
Correct i) Reason: Commercial emails with invitation and/or links that are shady
answer are considered as spam
Distractor ii) Explanation: Confusion between Malware and spam
1
Distractor iii) Explanation: Students might think that since some email contain
2 shaddy links, it will lead to some virus in their system

Draft Learning Framework | Computer Science | Classes 11-12 97


Distractor iv) Explanation: The emails might contain emails that may look useful at
3 first but might be malicious.
Question 2

Item stem What are some best practices to follow in order to prevent malware distribution?

Marking Rubric

Part Description Marks

If any three are written: (0.5 marks each) 1.5

i) Using antivirus and anti-malware software and updating


them on a regular basis
ii) Always check for a lock button in the address bar while
making payments

iii) Avoid entering sensitive (passwords, pins) or personal


information on unknown or public computers.
iv) Configure your browser security settings

v) Never use pirated unlicensed software. Instead go for Free


and Open Source Software (FOSS)

vi) Applying software updates and patches released by its


manufacturers

vii) Taking a regular backup of important data.

Draft Learning Framework | Computer Science | Classes 11-12 98


viii) Enforcing firewall protection in the network

ix) Avoid clicking on links or downloading attachments from


unsolicited emails.

x) Never share your online account or banking password/pins


with anyone.

Draft Learning Framework | Computer Science | Classes 11-12 99


TEST PAPER DESIGN

The test papers for the final examination for class 12 should be balanced in terms of its coverage of content domains, cognitive domains and types of
questions. However, the blueprint governing the design of the test papers should not be very rigid and should provide sufficient latitude to the paper
setter so that the focus while setting the paper remains on the quality of questions and the overall balance of the test paper.

Computer Science would be assessed using two parts.

Part 1 – Theory – 70 Marks

Part 2 – Practical- 30 Marks

The theory will be divided into two terms – Term 1 and Term 2. Each term will be for 35 marks.

DISTRIBUTION OF MARKS

CLASS 11
Unit Marks
Term 1 Term 2
1 Computer Systems and Organisation 10 --
2 Computational Thinking and Programming 25 20
3 Society, Law and Ethics -- 15
Total 35 35

Draft Learning Framework | Computer Science | Classes 11-12 100


CLASS 12
Unit Marks
Term 1 Term 2
1 Computational Thinking and Programming 35 5
2 Computer Networks -- 10
3 Database Management -- 20
Total 35 35

The theory exams should test knowledge and understanding of the principles behind computer science as well as the main aim of the course, which is
fostering the development of computational thinking skills and application of these skills to solve problems. Therefore, the questions designed must
be to check the logic and computational skill of the student and not how much of syntax the student remembers.

Students are expected to explain concepts, apply knowledge, analyse and/or interpret data and/or respond to stimulus materials. Stimulus material
can include: diagrams; article snippets; flow charts/pseudocode or code snippets and/or screen captures.

Candidates should be provided with an insert or a hint to use in the exam with built-in functions, operators and precedence of operators. This could
be given at a question level or even at a paper level that can be referred to by the students.

Draft Learning Framework | Computer Science | Classes 11-12 101


ASSESSMENT OF PRACTICAL WORK

The internal assessment component, being practical and productive, forms an important part of the assessment of the computer science course. It
should provide sufficient opportunities for the students to showcase their innovative skills while developing a practical solution to either a specified
problem or unanswered question. These skills will be evident in the use of complex design and algorithmic principles as well as rigorous testing leading
to the development of a functional product.

DESIGN OF THE PRACTICAL EXAMINATION

Students are expected to conduct experiments, do practical activities and investigative projects throughout the course of 2 years, and are also required
to take a practical examination at the end of each year.

Draft Learning Framework | Computer Science | Classes 11-12 102


CLASS 11
Assessment Description Marks
Sl No Type
Total Term 1 Term 2

Lab Test Python program (60% logic + 20% documentation + 20% 12 6 6


1
code quality)
Report File Minimum 20 Python programs 7 4 3
2 Term- 1 : Minimum 10 programs based on Term – 1 syllabus
Term- 2 : Minimum 10 programs based on Term – 2 syllabus
3 Viva 3 2 1

Project that uses most of the concepts that have been learnt 8 3 5
Term – 1: Synopsis of the project to be submitted by the
students (documentation only)
4
Term – 2: Final coding + Viva voce (Student will be allowed to
modify their Term 1 document and submit the final executable
code.)
Total 30 15 15

Draft Learning Framework | Computer Science | Classes 11-12 103


CLASS 12
Assessment Description Marks
Sl No
Type
Total Term 1 Term 2

Lab Test Python program (60% logic + 20% documentation + 20% code 7 6 2
quality)
1
5 SQL Queries based on one/two table(s). 5 -- 4

Report File Term – 1 : 7 4 3


Minimum 15 Python programs based on Term - 1 Syllabus
Term – 2 :
2
• Minimum 3 Python programs based on Term-2 Syllabus
• SQL Queries – Minimum 5 sets using one table / two tables.
• Minimum 2 programs based on Python - SQL connectivity.

3 Viva -- 3 2 1

Project that uses most of the concepts that have been learnt 8 3 5
that uses most of the concepts that have been learnt
Term – 1: Synopsis of the project to be submitted by the students
4 (documentation only)
Term – 2: Final coding + Viva voce (Student will be allowed to
modify their Term 1 document and submit the final executable
code.)

Total 30 15 15

Draft Learning Framework | Computer Science | Classes 11-12 104


SUGGESTED EXPERIMENTS, PRACTICAL ACTIVITIES AND INVESTIGATIVE PROJECTS

CLASS 11
Term 1

• Input a welcome message and display it.


• Input two numbers and display the larger / smaller number.
• Input three numbers and display the largest / smallest number.
• Generate pattern of symbols or alphabets as given below

Pattern-1 Pattern-2 Pattern-3


* 12345 A
** 1234 AB
*** 123 ABC
**** 12 ABCD
***** 1 ABCDE

• Write a program to input the value of x and n and print the sum of the following series:
o 1 + 𝑥 + 𝑥2 + 𝑥3 + 𝑥4 + ⋯ 𝑥𝑛
o 1 − 𝑥 + 𝑥2 − 𝑥3 + 𝑥4 − ⋯ 𝑥𝑛
𝑥2 𝑥3 𝑥4 𝑥𝑛
o 𝑥− 2
+ 3
− 4
−⋯ 𝑛
𝑥2 𝑥3 𝑥4 𝑥𝑛
o 𝑥− 2!
+ 3!
− 4!
− ⋯ 𝑛!

• Determine whether a number is a perfect number, an armstrong number or a palindrome.


• Input a number and check if the number is a prime or composite number.
• Display the terms of a Fibonacci series.
• Compute the greatest common divisor and least common multiple of two integers.
Draft Learning Framework | Computer Science | Classes 11-12 105
• 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.

Term 2

• Find the largest/smallest number in a list/tuple


• Input a list of numbers and swap elements at the even location with the elements at the odd location.
• Input a list of elements, sort in ascending/descending order using various sorting techniques.
• Input a list/tuple of elements, search for a given element in the list/tuple.
• Input a list of numbers and find the smallest and largest number from the list.
• Create a dictionary with the roll number, name and marks of n students in a class and display the names of students who have scored marks
above 75.

CLASS 12
Term 1

Python Programming
• Write a code to find the factorial of a natural number.
• Write a code to find the sum of all elements of a list.
• Write a code to compute the nth Fibonacci number.
• 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).
• Create a CSV file by entering user-id and password, read and search the password for given user-id.
Term 2

Draft Learning Framework | Computer Science | Classes 11-12 106


Python Programming
• Write a Python program to implement a stack and queue using a list.

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 exercises may be framed for other cases.
• Integrate SQL with Python by importing a suitable module.

PROJECT WORK

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 and give them an understanding of how problems are solved in the real world.

The broad steps that students are expected to follow is a simple waterfall model.

1. Identification of a project:
2. Defining a plan:
3. Fixing of a timeline
4. Monitoring the project and take support
5. Arrive at the final outcome

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

Draft Learning Framework | Computer Science | Classes 11-12 107


Python libraries to create user friendly applications such as games, software for their school, learning aid, 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 sensitised to avoid plagiarism and violations of copyright issues while working on projects. Teachers should take necessary
measures for this.

SUGGESTED PROJECTS
Project Title 1: Automation of Order Processing in a Restaurant
Project Title 2: Development of a Puzzle
Project Title 3: Development of an Educational Game

Draft Learning Framework | Computer Science | Classes 11-12 108


REFERENCES

1. NCERT textbooks: https://ncert.nic.in/textbook.php?keip1=0-8


2. Western Australian Certificate of Education (WACE)Syllabus and Support material documents : https://senior-
secondary.scsa.wa.edu.au/syllabus-and-support-materials/technologies/computer-science
3. K–12 Computer Science Framework retrieved from http://www.k12cs.org.
4. 4. IB Past papers

Draft Learning Framework | Computer Science | Classes 11-12 109


ACKNOWLEDGEMENT

ADVISORY

• Shri Manoj Ahuja, Former Chairman, CBSE


• Smt Nidhi Chibber, Chairman CBSE

GUIDANCE AND SUPPORT

• Dr. Joseph Emmanuel, Director (Academics), CBSE


• Dr. Praggya M. Singh, Joint Secretary (Academics), CBSE
• Mr. Sridhar Rajagoplalan, Chief Learning Officer, Ei
• Mr. Nishchal Shukla, Vice President – Content and Pedagogy, Ei

PLANNING AND EXECUTION

• Mr. Ritesh Agarwal, Associate Vice President, Ei


• Ms. Manisha Upreti, Manager, Ei
• Mr. H.M Shahnawaz Khan, Associate Manager, Ei

CONTENT DEVELOPMENT TEAM

• Ms. Aravind MS, Associate Manager, Ei

REVIEWERS

• Ms. Mohini Arora, Lecturer, Air Force Golden Jubilee Institute, New Delhi
• Ms. Purvi Srivastav, Head of the Dept, Ganga International School, New Delhi
• Ms. Chetna Khanna, Ex. PGT, Shadley Public School, New Delhi

Draft Learning Framework | Computer Science | Classes 11-12 110


About Educational Initiatives

Educational Initiatives (Ei) is working with the vision of creating a world where children everywhere are learning with understanding.

Ei leverages the twin levers of cutting-edge educational research and technology-based solutions to improve student learning outcomes through personalized
adaptive learning solutions.

Ei has undertaken several projects with various government and civil society partners in India and abroad, serving students across different grades and socio-
economic backgrounds.

Draft Learning Framework | Computer Science | Classes 11-12 111


Central Board of Secondary Education
Academic Unit, 17 Rouse Avenue

New Delhi 110002

Draft Learning Framework | Computer Science | Classes 11-12 112

You might also like