JECRC-__-Kalvium-Program-Detailed-Program-Syllabus
JECRC-__-Kalvium-Program-Detailed-Program-Syllabus
Index 1
Kalvium Program Scheme 6
Assessment model 9
Detailed Course Syllabus & Assessment Plan 10
Semester 1 10
Front-end web development 10
Introduction 10
Course outcomes 10
Syllabus 10
Assessment plan 11
Text book(s) 11
Reference book(s) 12
Critical thinking 101 12
Introduction 12
Course outcomes 12
Syllabus 12
Assessment plan 13
Text book(s) 13
Reference book(s) 13
Discrete Mathematics 13
Introduction 13
Course outcomes 13
Syllabus 14
Assessment plan 14
Text book(s) 15
Reference book(s) 15
Professional skills for the workplace 15
Introduction 15
Course outcomes 15
Syllabus 15
Assessment plan 16
Text book(s) 16
Reference book(s) 16
The breadth of computer science 1 17
Introduction 17
Course outcomes 17
Syllabus 17
Assessment plan 17
Text book(s) 18
Reference book(s) 18
Problem solving using programming 18
Introduction 18
Course outcomes 18
Syllabus 19
Assessment plan 20
Text book(s) 20
Reference book(s) 20
Design for developers 20
Introduction 20
Course outcomes 20
Syllabus 21
Assessment plan 21
Text book(s) 21
Reference book(s) 21
Semester 2 22
Learning how to learn 22
Introduction 22
Course outcomes 22
Syllabus 22
Assessment plan 23
Text book(s) 23
Reference book(s) 23
The breadth of computer science 2 24
Introduction 24
Course outcomes 24
Syllabus 24
Assessment plan 24
Text book(s) 25
Reference book(s) 25
Full Stack Web Development 25
Introduction 25
Course outcomes 25
Syllabus 26
Assessment plan 26
Text book(s) 27
Reference book(s) 27
Semester 3 27
Economics, Politics and Rural Society Development 27
Introduction 27
Course outcomes 28
Syllabus 28
Assessment plan 28
Text book(s) 29
Reference book(s) 30
Mathematical thinking 101 30
Introduction 30
Course outcomes 30
Syllabus 30
Assessment plan 31
Text book(s) 32
Reference book(s) 32
Database Management Systems 32
Introduction 32
Course outcomes 32
Syllabus 32
Assessment plan 33
Text book(s) 34
Object Oriented Programming 34
Introduction 34
Course outcomes 34
Syllabus 34
Assessment plan 35
Text book(s) 36
Reference book(s) 36
Semester 4 36
How Human Languages work 36
Introduction 36
Course outcomes 36
Syllabus 36
Assessment plan 37
Text book(s) 37
Reference book(s) 37
Tools and techniques for creative thinking 38
Introduction 38
Course outcomes 38
Syllabus 38
Assessment plan 39
Text book(s) 39
Reference book(s) 39
Operating Systems 39
Introduction 39
Course outcomes 39
Syllabus 40
Assessment plan 40
Text book(s) 41
Reference book(s) 42
Data Structure and Algorithms 42
Introduction 42
Course outcomes 42
Syllabus 42
Assessment plan 43
Text book(s) 43
Reference book(s) 43
Semester 5 44
English LSRW 44
Introduction 44
Course outcomes 44
Syllabus 44
Assessment plan 45
Text book(s) 45
Reference book(s) 45
Principles of Science 46
Introduction 46
Course outcomes 46
Syllabus 46
Assessment plan 47
Text book(s) 48
Reference book(s) 49
Computer Organization & Architecture 49
Introduction 49
Course outcomes 49
Syllabus 50
Assessment plan 50
Text book(s) 51
Reference book(s) 51
Formal Language & Automata Theory 51
Introduction 51
Course outcomes 52
Syllabus 52
Assessment plan 53
Text book(s) 53
Reference book(s) 53
Design & Analysis of Algorithms 53
Introduction 53
Course outcomes 54
Syllabus 54
Assessment plan 55
Text book(s) 56
Reference book(s) 56
Semester 6 56
Discovering Self 56
Introduction 56
Course outcomes 56
Syllabus 56
Assessment plan 57
Text book(s) 59
Reference book(s) 59
Fundamentals of Business Management 59
Introduction 59
Course outcomes 59
Syllabus 60
Assessment plan 60
Text book(s) 61
Reference book(s) 61
Compiler Design 62
Introduction 62
Course outcomes 62
Syllabus 62
Assessment plan 63
Text book(s) 64
Reference book(s) 64
Computer Networks 64
Introduction 64
Course outcomes 64
Syllabus 64
Assessment plan 65
Text book(s) 66
Reference book(s) 66
Semester 7 66
Introduction to Philosophy 66
Introduction 66
Course outcomes 66
Syllabus 67
Assessment plan 67
Text book(s) 68
Reference book(s) 68
Electives 68
Academic Elective #1 68
Academic Elective #2 68
Foundation Elective 68
Assessment plan for Integrated Work 69
Plan to track Progress 69
Progress Report 69
Internship Report 69
Internship Presentation 69
Assessment Methodology 70
Alignment with UGC/ AICTE guidelines 70
Semester 2
Semester 3
24
Semester 4
24
Semester 5
26
Semester 6
22
Semester 7
22
Semester 8
20
Assessment model
At Kalvium, we strongly believe in the effectiveness of continuous evaluation/ assessment as
a way to improve learning outcomes and ensure students are retaining knowledge over time.
Research has shown that frequent assessments, such as quizzes and assignments/ projects,
can help reinforce learning and improve long-term retention (Roediger III and Karpicke, 2006).
Furthermore, continuous evaluation allows for timely feedback and opportunities for students to
address any areas where they may be struggling, resulting in better overall performance
(Freeman et al., 2014).
That's why, at Kalvium, we have implemented a continuous evaluation model for all of our
courses that includes regular assessments and projects throughout the semester. This
approach enables us to better support our students' learning and ensure they are well-prepared
for future challenges.
You will see this practically executed as each course having anywhere between 3-6 continuous
assessments spread through the duration of the course, with each assessment carrying a
specific weightage. The details of those are covered in the Assessment plan section under
Detailed Course Syllabus and Assessment Plan.
Semester 1
Introduction
In this course, students will learn the fundamentals of front-end web development, including
HTML, CSS, JavaScript, and React JS. They will learn how to create responsive and dynamic
web pages, as well as develop their problem-solving and critical thinking skills. The course will
focus on hands-on projects and exercises to give students practical experience in front-end web
development.
Course outcomes
At the end of this course, students will be able:
1. To develop proficiency in HTML, CSS, and JavaScript, and apply them to the
development of interactive and responsive web pages.
2. To design and implement web pages that are accessible, user-friendly, and optimized for
search engines.
3. To create and use reusable code components to improve productivity and maintainability.
4. To demonstrate an understanding of the principles of web design and user experience,
and apply them to front-end development.
5. To use debugging tools and techniques to identify and fix errors in web applications.
6. To work collaboratively and effectively in a team environment on web development
projects.
Syllabus
Unit 1 HTML, CSS & JS first steps
Environment set up, Introduction to HTML, HTML Block Elements, HTML Inline Elements,
HTML Forms, Introduction to CSS, CSS Font & Text, CSS Selectors, CSS Inheritance, CSS
Colors, Box Model, Flex Box, JS DOM, Introduction to JS, JS Variables, JS Data Types, Basics
of JS Operators, Basics of JS Strings, Basics of JS Conditional Statements, Basics of JS
Control Statements, Basics of JS Arrays, Basics of JS Functions, Basics of JS Objects
Unit 2 – HTML, CSS & JS Deep dive Part 1
CSS Advanced Selectors, CSS Positioning, Advanced Flexbox, CSS Grids, Responsive Design,
JS Operators, JS Strings, JS Conditional Statements, JS Control Statements, JS Arrays &
Functions, JS Objects
Assessment plan
Text book(s)
1. Web development: This book includes: Web development for Beginners in HTML + Web
design with CSS + Javascript basics for Beginners; Andy Vickler; Ladoo Publishing LLC
(24 May 2021)
2. The Road to Learn React: Your Journey to Master Plain Yet Pragmatic React.Js; Robin
Wieruch; Zaccheus Entertainment (1 January 2018)
Reference book(s)
1. HTML, CSS, and JavaScript All in One; Julie C. Meloni & Jennifer Kyrnin; Pearson
Education; Third edition
2. React and React Native: A complete hands-on guide to modern web and mobile
development with React.js; Adam Boduch & Roy Derks; Packt Publishing Limited; 3rd
edition
Introduction
Critical Thinking is a course designed to introduce students to the concepts of reasoning and
decision-making, and to the cognitive biases and heuristics that can impede accurate and
rational thinking. Based on the seminal book "Thinking, Fast and Slow" by Daniel Kahneman,
the course will equip students with the skills to recognize and avoid common thinking errors,
and to think more critically and effectively.
Course outcomes
At the end of this course, the students will be able:
1. To describe the cognitive biases and heuristics that can affect human reasoning, and
explain how they can lead to thinking errors.
2. To recognize and identify common thinking errors and fallacies in everyday situations.
3. To apply critical thinking skills to analyze and evaluate arguments and evidence.
4. To synthesize ideas and perspectives from different sources to develop reasoned and
well-supported arguments.
5. To evaluate the reliability and validity of different sources of information and evidence.
6. To communicate critical thinking ideas and solutions clearly and effectively, both orally
and in writing.
Syllabus
Unit 1 – The two systems of thinking
Why think critically, The two systems of thinking, The mental power unit, The lazy system, The
marvels of priming, Cognitive ease, Norms, surprises and ease, How judgements work, Jumping
to conclusions
Assessment plan
Text book(s)
Thinking, Fast and Slow; Daniel Kahneman; Penguin 2012 edition
Reference book(s)
Critical Thinking; Jonathan Haber; The MIT Press; Illustrated edition (7 April 2020)
Discrete Mathematics
Introduction
Discrete Mathematics is a foundational course for computer science students that introduces
the mathematical concepts and techniques essential to computer science. The course covers
topics such as logic, sets, functions, relations, combinatorics, graph theory, and number theory.
It emphasizes problem-solving, critical thinking, and effective communication of mathematical
ideas. Discrete Mathematics provides the mathematical foundation for further study in
algorithms, data structures,and other areas of computer science.
Course outcomes
At the end of this course, the students will be able:
1. To explain the fundamental concepts and principles of discrete mathematics, including
logic, sets, functions, and relations.
2. To apply discrete mathematics concepts to solve problems in computer science.
3. To analyze and evaluate the correctness and efficiency of algorithms, and the validity
and soundness of logical arguments.
4. To synthesize discrete mathematics concepts to create mathematical models for
real-world problems, such as scheduling and network optimization.
5. To evaluate the strengths and limitations of various discrete mathematics techniques,
and make informed decisions about which approach to use in a given context.
6. To communicate mathematical ideas and solutions clearly and effectively, both orally and
in writing.
Syllabus
Unit 1 Proofs
Introduction and Proofs, Induction, Strong Induction, Number Theory
Unit 2 Structures
Graph theory and Colouring, Matching Problems, Minimum Spanning Tree, Communication
Networks, Directed graphs, Relations and partial orders, State machines
Assessment plan
Reference book(s)
1. Discrete Mathematics and Its Application; Kenneth H Rosen & Dr Kamala Krithivasan;
McGraw Hill; 8th edition
2. A Textbook on Discrete Mathematics; CV Sastry and Rakesh Nayak; Wiley (1 October
2020)
Introduction
Professional Skills for the Workplace is a course designed to help students develop the human
skills they need to succeed in the modern workplace. The course is based on the Human Skills
Matrix, developed by MIT JWEL, and covers four key quadrants: thinking, leading, interacting,
and managing oneself. Students will learn practical strategies for improving their
communication, collaboration, problem-solving, and self-management skills.
Course outcomes
At the end of this course, students will be able:
1. To explain the four quadrants of the Human Skills Matrix and how they relate to success
in the workplace.
2. To apply critical thinking skills to solve complex problems and make effective decisions.
3. To lead and collaborate effectively with others, including managing teams and facilitating
group discussions.
4. To communicate clearly and persuasively in various professional contexts, including
written, verbal, and nonverbal communication.
5. To manage time and prioritize tasks effectively, including setting goals and developing
strategies for self-motivation and self-improvement.
6. To synthesize different human skills and apply them to real-world workplace challenges,
such as conflict resolution, innovation, and project management.
Syllabus
Unit 1 – Managing ourselves
Self-awareness, Adaptability, Managing emotions, Accountability, Professionalism, Taking
initiative, Persistence, Planning and organizing, Integrity
Unit 2 – Interacting
Writing good emails & reports, Use of communication tools, Use of project management tools,
Curating relationships on social media through professional networking sites, Negotiation skills,
Presentation skills
Univ 3 – Thinking
Ethical dilemmas, being an intrapreneur, Building a growth mindset, Systems thinking
Unit 4 – Leading
Empowering others, Having a strategic vision, Project management, Performance management
Assessment plan
Text book(s)
COMMUNICATION SKILLS FOR PROFESSIONALS AND STUDENTS: An Occupational
Therapist's Perspective; Dr. Amitabh Kishor Dwivedi; Notion Press; 1st edition
Reference book(s)
The Communication Book: 44 Ideas for Better Conversations Every Day; Mikael Krogerus &
Roman Tschäppeler; Portfolio Penguin (19 April 2018)
Introduction
This course provides students with a unique opportunity to build a modern computer system
from scratch. The course will let students start with Nand gates, build their way up to a fully
functioning computer with an operating system, and gain a deep understanding of how
computers work.
Course outcomes
At the end of this course, students will be able:
1. To demonstrate knowledge of basic computer architecture principles.
2. To work with Boolean algebra and logic design.
3. To implement basic combinational and sequential circuits.
4. To write assembly language programs to control hardware components.
5. To design and implement a fully functional computer system.
6. To evaluate the trade-offs involved in different hardware and software design choices.
Syllabus
Unit 1: Boolean Logic and Digital Design
Introduction to digital systems and digital logic, Boolean algebra and logic gates, Combinational
logic circuits, Sequential logic circuits, Building elementary logic gates using Nand gates
Arithmetic logic unit (ALU), Half adder and full adder, Ripple carry adder, Multi-bit addition,
Multi-bit ALU,
CPU components (registers, instruction memory, data memory)
Assessment plan
Text book(s)
The Elements of Computing Systems: Building a Modern Computer from First Principles by
Noam Nisan and Shimon Schocken, published by MIT Press. Latest edition: 2nd edition (August
2019).
Reference book(s)
1. Computer Organization and Design: The Hardware/Software Interface by David A.
Patterson and John L. Hennessy, published by Elsevier. Latest edition: 5th edition
(October 2013).
2. Digital Design and Computer Architecture by David Money Harris and Sarah L. Harris,
published by Morgan Kaufmann. Latest edition: 3rd edition (June 2021).
Introduction
Problem Solving using Programming is an introductory course that teaches fundamental
programming concepts and techniques using C++ and Python. After learning this course,
students will easily be able to learn more programming languages and use this course for
practicing. The course emphasizes problem-solving skills and computational thinking, and
equips students with the skills necessary to tackle real-world problems using programming.
Course outcomes
At the end of this course, the students will be able:
1. To explain fundamental programming concepts, including data types, control structures,
and functions.
2. To apply programming constructs to solve simple problems and algorithms in C++ and
Python.
3. To analyze and evaluate the efficiency and correctness of algorithms and programs.
4. To synthesize programming constructs to develop larger programs that solve complex
problems.
5. To evaluate the strengths and weaknesses of different programming constructs and
choose appropriate solutions for different problems.
6. To communicate programming solutions clearly and effectively, both orally and in writing.
Syllabus
Unit 1 Algorithms
Computational thinking, Decomposition, Abstraction, Pattern recognition, Algorithms, Writing
pseudocode and translating it to code, Looping (While and do-while loops), Variables (Scope,
lifetime and initialization), Datatypes (Structures, classes, enums)
Unit 2 Variables
Review of variables and their uses, including how to declare and initialize variables; Arithmetic
operators, Relational operators, Logical operators, Bitwise operators & Assignment operators;
Introduction to strings and advanced string manipulation techniques, such as concatenation,
substring extraction, searching, and replacing; Introduction to characters including ASCII and
Unicode encoding, character classification functions, and character mapping; Typecasting;
Using constants to represent fixed values in code; local and global variables, and their uses and
limitations; operator precedence, order of evaluation, and short-circuiting
Unit 5 Modularity
Organizing code into modules, classes, and functions to improve code structure and reusability;
Function parameters; Function return value; reviewing recursion and its use in function design
and implementation; Libraries and APIs
Assessment plan
Text book(s)
Think Like a Programmer: An Introduction to Creative Problem Solving by V. Anton Spraul,
Released August 2012, published by No Starch Press
Reference book(s)
1. Programming in Python 3: A Complete Introduction to the Python Language; Mark
Summerfield; Pearson Education; Second edition
2. C++ Programming Language; Bjarne Stroustrup; Pearson Education; 4th edition
Introduction
Design for Developers is a course designed to introduce students to the fundamental principles
of user interface (UI) and user experience (UX) design, with a focus on the needs of developers.
The course covers topics such as visual design, user-centered design, usability testing, and
accessibility, and provides hands-on experience with design tools and techniques.
Course outcomes
At the end of the course, students will be able:
1. To explain the basic principles of user-centered design, and how they apply to software
development.
2. To evaluate and critique the design of existing software applications, and identify areas
for improvement in terms of user experience and usability.
3. To apply visual design principles and techniques, such as typography, color theory, and
layout, to create effective user interfaces.
4. To conduct usability testing and other evaluation methods to measure the effectiveness
and usability of software applications.
5. To synthesize different design concepts and techniques to create well-designed and
user-friendly software interfaces.
6. To evaluate the accessibility of software applications and understand the importance of
designing for users with diverse needs.
Syllabus
Unit 1 How to approach design as a developer
Why design for developers, Getting started with design education, Getting started with Figma,
Labs on Figma
Assessment plan
Text book(s)
About Face; Alan Cooper, Robert Reimann, Christopher Noessel and David Cronin; Wiley
Publishing, 2014
Reference book(s)
1. Hands-on UX design for developers; Elvis Canziba; Packt, 2018
2. Refactoring; Adam Wathan and Steve Shoger
Semester 2
Introduction
Learning How to Learn is a course designed to help students master the concepts and
techniques of effective learning, with a focus on online and remote learning environments. The
course covers topics such as the science of learning, memory techniques, metacognition, and
overcoming procrastination, and provides practical strategies for improving learning outcomes in
any subject area.
Course outcomes
At the end of this course, students will be able:
1. To explain the key principles and processes involved in effective learning, and how they
can be applied to any subject area.
2. To apply a variety of memory techniques, such as spaced repetition and visualization, to
improve retention and recall of information.
3. To practice metacognitive strategies, such as self-reflection and self-assessment, to
monitor and improve learning progress.
4. To identify and overcome common obstacles to effective learning, such as
procrastination and distractions.
5. To synthesize different learning techniques and apply them to real-world learning
challenges, such as preparing for exams or learning new skills.
6. To evaluate the effectiveness of different learning strategies and make evidence-based
decisions about the best approach for a given learning situation.
Syllabus
Unit I: How learning works
Introduction to Focus and Diffuse Modes, the role of Practice in learning,
Introduction to Memory & Sleep in learning, Procrastination on learning, case
studies to end the unit (on learning languages, creativity, problem solving and
much more – how learning happens for these skills)
Assessment plan
Text book(s)
1. Learning How to Learn: How to Succeed in School Without Spending All Your Time
Studying; A Guide for Kids and Teens; Barbara Oakley and Terrence Sejnowski; Tarcher
Perigree 2018
2. Make it Stick: The Science of Successful Learning; Peter C Brown, Henry L. Roediger III
& Mark A. McDaniel; Harvard University Press; 1st edition
Reference book(s)
1. Mindshift: Break Through Obstacles to Learning and Discover Your Hidden Potential;
Barbara Oakley, Penguin, 2017
2. How we learn: The surprising truth about when, where and why it happens; Benedict
Carey, Random House, 2014
3. Ultralearning: Accelerate Your Career, Master Hard Skills and Outsmart the Competition;
Scott H Young, Harper Collins, 2019
Introduction
In this course, students will continue the journey of building a modern computer system from
first principles. Starting with the CPU, they will design and implement an assembler, a compiler,
and an operating system. By the end of the course, students will have built a complete, fully
functional computer system.
Course outcomes
At the end of this course, students will be able:
1. To design and implement a simple CPU.
2. To write an assembler to translate assembly language code into machine code.
3. To write a compiler to translate high-level language code into assembly language code.
4. To design and implement a simple operating system.
5. To analyze and optimize the performance of software and hardware components.
6. To collaborate with a team to build a complete, functional computer system.
Syllabus
Unit 1: Virtual Machine I: Stack Arithmetic
Introduction to virtual machines (VMs); Stack operations and the stack architecture, Stack
arithmetic;
Memory segments: local, argument, this, that; Program flow control; Function calling
conventions
Unit 4: High-Level Language and Compiler II: Code Generation and Optimization
Code generation and its challenges, Compilation of expressions, statements and control
structures, Memory management, Symbol table management, Intermediate representations,
Optimizations and their techniques
Assessment plan
Text book(s)
The Elements of Computing Systems: Building a Modern Computer from First Principles by
Noam Nisan and Shimon Schocken, published by MIT Press. Latest edition: 2nd edition (August
2019).
Reference book(s)
1. Computer Architecture: A Quantitative Approach by John L. Hennessy and David A.
Patterson, published by Elsevier. Latest edition: 6th edition (June 2021).
2. Compilers: Principles, Techniques, and Tools by Alfred V. Aho, Monica S. Lam, Ravi
Sethi, and Jeffrey D. Ullman, published by Pearson. Latest edition: 2nd edition
(September 2006).
Introduction
Full Stack Web Development is a course designed to teach students how to build dynamic web
applications using the MERN stack (MongoDB, Express, React, and Node.js). The course
covers both backend and database development, as well as front-end technologies like HTML,
CSS, and JavaScript. By the end of the course, students will have built their own unique full
stack application, which they can showcase in their portfolio.
Course outcomes
At the end of this course, students will be able:
1. To describe the architecture and components of a full stack web application, including
front-end and back-end technologies and their interactions.
2. To design and develop a database schema using MongoDB, including defining data
models, creating indexes, and writing queries.
3. To create RESTful APIs using Node.js and Express, including handling HTTP requests
and responses, and interacting with the database.
4. To implement front-end user interfaces using React, including using React components,
managing state, and handling user input.
5. To integrate front-end and back-end components to create a fully functional full stack
web application, including using asynchronous communication and handling errors and
exceptions.
6. To design and implement a unique full stack application as a capstone project, including
identifying user requirements, developing a software design, and implementing and
testing the application.
Syllabus
Unit 1: Introduction to Full Stack Web Development
Overview of full stack web development, the MERN stack and its components, setting up the
development environment (using tools like Node.js, MongoDB, and VSCode), basic backend
development concepts (e.g., routing, handling requests, working with databases)
Assessment plan
The grading of this course is based on the students’ progress in building their capstone project.
Each capstone is divided into 5 different milestones (this would vary from project to project,
since each would be unique).
Text book(s)
Full-Stack React Projects: Learn MERN stack development by building modern web apps using
MongoDB, Express, React, and Node.js; Shama Hoque; Packt Publishing Limited; 2nd edition
Reference book(s)
1. Beginning MERN Stack: Build and Deploy a Full Stack MongoDB, Express, React,
Node.js App; Greg Lim
2. Pro MERN Stack: Full Stack Web App Development with Mongo, Express, React, and
Node; Vasan Subramanian; Apress; 2nd edition
Semester 3
Introduction
This course is designed to provide CS engineers with an understanding of basic economics,
politics, and rural development and how these three fields are interconnected. Students will
learn about the principles of economics, the functioning of political systems, and the challenges
and opportunities in rural development. Through this course, students will develop a
multidisciplinary perspective, enabling them to identify and contribute to solutions that benefit
both society and the economy.
Course outcomes
At the end of this course, students will be able:
1. To demonstrate an understanding of basic economic principles and their applications to
real-world scenarios.
2. To analyze political systems and the role of technology in modern political processes.
3. To evaluate the challenges and opportunities in rural development, with a focus on the
role of technology.
4. To apply economic and political principles to rural development scenarios.
5. To develop critical thinking skills to identify and solve complex problems related to
economics, politics, and rural development.
6. To communicate effectively with stakeholders from different backgrounds and
perspectives, including policymakers, entrepreneurs, and rural communities.
Syllabus
Unit 1: Introduction to Economics
Basic concepts of economics, including demand, supply, and market equilibrium;
Macroeconomic concepts, such as GDP, inflation, and unemployment; Economic policies, such
as fiscal and monetary policies; Applications of economics in the technology industry.
Assessment plan
Text book(s)
1. Economics: Principles, Problems, and Policies by Campbell McConnell, Stanley Brue,
and Sean Flynn. (Latest edition, published by McGraw-Hill Education India)
2. Politics: An Introduction by Andrew Heywood. (Latest edition, published by Palgrave
Macmillan India)
3. Rural Development: Principles, Policies and Management by B. P. Vani and K.
Sivaramane. (Latest edition, published by SAGE Publications India Pvt Ltd)
Reference book(s)
1. Rural Development: Putting the last first; Robert Chambers; Pearson Education India;
2nd Edition (2010)
2. Economic Development of Rural Areas: An Analysis of Problems and Prospects; L. P.
Singh; Sage Publications India Pvt Ltd; 2nd Edition (2011)
Mathematical thinking 101
Introduction
This course is designed to provide CS Engineers with a foundation in basic mathematical
concepts relevant to aptitude tests and problem-solving in the tech industry. Students will learn
topics such as number systems, ratios, proportions, averages, profit and loss, time and work,
time, speed and distance, permutations, percentages, simple and compound interest, statistics,
and geometry.
Course outcomes
By the end of the course, students will be able:
1. To apply mathematical concepts to solve problems encountered in aptitude tests and the
tech industry
2. To use mathematical methods to evaluate data and make informed decisions
3. To analyze and interpret statistical data
4. To understand the basic principles of geometry
5. To demonstrate proficiency in mental math and calculation
6. To identify the relationships between different mathematical concepts and apply them to
problem-solving.
Syllabus
Unit 1: Speed Math
Mental calculation techniques for addition, subtraction, multiplication, and division;
Approximation techniques for finding the nearest answer quickly; Tricks for working with
squares, cubes, and square roots
Understanding profit and loss in business context; Applications of profit, loss, partnerships;
Mixtures and Alligations problem-solving
Unit 6: Permutation
Concepts of permutation; Circular permutations and permutations with restrictions; Applications
of permutation in problem-solving
Unit 8: Statistics
Basic concepts of statistics: mean, median, mode, variance, and standard deviation; Data
presentation: pie chart, bar chart, and line graph; Applications of statistics in problem-solving
Unit 9: Geometry
Basic concepts of geometry: points, lines, angles, and triangles; Pythagorean theorem and
trigonometry
Applications of geometry in problem-solving
Assessment plan
Text book(s)
Quantitative Aptitude for Competitive Examinations; R.S. Aggarwal; S. Chand Publishing; 2021
Reference book(s)
1. How to Prepare for Quantitative Aptitude for CAT; Arun Sharma; McGraw Hill Education;
2022
2. The Pearson Guide to Quantitative Aptitude for Competitive Examinations; Dinesh
Khattar; Pearson Education; 2021
Introduction
This course is designed to teach students the fundamental concepts and principles of Database
Management Systems (DBMS) and how to effectively design, implement, and manage
databases. Students will learn various database models and acquire hands-on experience in
using popular DBMS tools.
Course outcomes
At the end of this course, students will be able:
1. To understand the fundamental concepts of database management systems including
data models, data normalization, and database design.
2. To be able to design and implement a relational database using SQL.
3. To be able to use a popular DBMS tool such as MySQL to create and manage
databases.
4. To be able to use SQL to query and manipulate data stored in a database.
5. To be able to apply database management concepts to real-world scenarios and
problem-solving.
6. To be able to design and implement a functional database-driven web application.
Syllabus
Unit I – Introduction to DBMS
The Evolution of Database Systems- Overview of a Database Management System-Outline of
DatabaseSystem Studies-The Entity-Relationship Data Model: Elements of the E/R
Model-Design Principles-The Modeling of Constraints-Weak Entity Sets.
Assessment plan
Introduction
This course teaches the principles of Object-Oriented Programming (OOP), which is a key
concept in modern programming paradigms. The course is language-agnostic, but students can
choose to implement their projects in either C++ or Python.
Course outcomes
At the end of this course, students will be able:
1. To explain the fundamental concepts and principles of OOP, such as encapsulation,
inheritance, and polymorphism.
2. To apply OOP concepts to develop software applications in C++ and Python.
3. To design and implement complex data structures and algorithms using OOP concepts.
4. To develop and manage large-scale software projects using OOP design patterns and
software engineering practices.
5. To analyze and evaluate the performance and efficiency of OOP-based programs.
6. To collaborate and communicate effectively in a team environment to develop and
maintain OOP-based software projects.
Syllabus
Unit 1 Introduction to Object-Oriented Programming
Basics of OOP, Objects and Classes, Abstraction, Encapsulation, Inheritance, Polymorphism,
Procedural Programming vs OOP
Assessment plan
Text book(s)
1. Object-Oriented Programming with C++; E Balagurusamy; McGraw Hill; Eighth edition
2. Python Object-Oriented Programming; Steven F. Lott & Dusty Phillips; Packt Publishing
Limited; 4th edition
3. Java The Complete Reference; Herbert Schildt; McGraw Hill; Eleventh edition
Reference book(s)
1. Object Oriented Programming C++; Robert Lafore; Pearson Education India; 4th edition
2. OOPS with C++ and Java; Balagurusamy; McGraw Hill Education 2014 edition
3. Python 3 Object-Oriented Programming; Dusty Phillips; Packt 3rd edition
Semester 4
Introduction
In this course, students will explore the fundamental concepts of human language, including
phonetics, syntax, semantics, and pragmatics. The course will provide an overview of the
structure and function of human language and explore how language is processed in the brain.
Course outcomes
At the end of this course, students will be able:
1. Understand the basic concepts of human language, including phonetics, syntax,
semantics, and pragmatics.
2. Explore the structure and function of human language, including the sound systems of
languages, grammatical structures, and the meanings of words and sentences.
3. Understand the social and cultural dimensions of language use, including language
variation and change, multilingualism, and language attitudes.
4. Understand how language is processed in the brain, including the neural mechanisms of
language comprehension and production.
5. Analyze the ways in which language reflects and shapes cultural and social identities.
6. Develop critical thinking skills by analyzing linguistic data and applying linguistic
concepts to real-world problems.
Syllabus
Unit 1: Introduction to Language and Linguistics
Overview of Linguistics and its sub-fields, Phonetics and Phonology, Morphology
Assessment plan
Text book(s)
How Languages Work: An Introduction to Language and Linguistics by Carol Genetti;
Cambridge University Press; 2nd edition
Reference book(s)
How Language Works; David Crystal; Penguin UK (2007 edition)
Introduction
This course introduces students to a variety of tools and techniques for generating creative
ideas and solving problems. Students will learn strategies for brainstorming, mind mapping, idea
generation, and critical thinking. The course will focus on developing practical skills for creative
thinking that can be applied in a variety of contexts.
Course outcomes
At the end of this course, students will be able:
1. To use a variety of creative thinking tools and techniques to generate new ideas
2. To apply critical thinking skills to analyze and evaluate creative ideas and solutions
3. To identify and overcome barriers to creative thinking and problem-solving
4. To apply creative thinking skills in practical situations, such as in business, design, and
technology
5. To develop effective communication skills for presenting and selling creative ideas
6. To work collaboratively with others to generate and implement creative solutions
Syllabus
Unit I – Introduction to Principles of Creativity
Mother and father of innovation, Levels of creativity, Creative environments
Unit VI – SCAMPER
SCAMPER for architecture, team innovation using SCAMPER, Use of differen thinking styles
Assessment plan
Text book(s)
"The Art of Possibility: Transforming Professional and Personal Life" by Rosamund Stone
Zander and Benjamin Zander; Penguin; Reprint edition (27 July 2006)
Reference book(s)
1. "Cracking Creativity: The Secrets of Creative Genius" by Michael Michalko (2001); Ten
Speed Press; Revised ed. edition (26 June 2001)
2. "A Whack on the Side of the Head: How You Can Be More Creative" by Roger von Oech
(2008); Grand Central Publishing; Special edition (5 May 2008)
Operating Systems
Introduction
This course introduces the concepts and principles of operating systems, including process
management, memory management, file systems, and device management. Students will learn
about various scheduling algorithms and memory allocation techniques used in operating
systems. They will also be introduced to different types of operating systems and will learn
about the trade-offs involved in designing and implementing these systems. Through practical
assignments and projects, students will gain hands-on experience in implementing basic
operating system functionalities. By the end of the course, students will have a solid
understanding of the security and privacy issues in modern operating systems.
Course outcomes
At the end of this course, students will be able:
1. To understand the fundamental concepts of operating systems such as processes,
threads, synchronization, and memory management.
2. To analyze the performance of various scheduling and memory allocation algorithms.
3. To compare and contrast different types of operating systems, such as batch,
multi-programmed, and real-time systems.
4. To develop an understanding of device management, file systems, and virtualization.
5. To gain practical experience in implementing basic operating system functionalities.
6. To understand the security and privacy issues in modern operating systems.
Syllabus
Unit I - Computer Arithmetic & Processor Organisation
Computer Registers, Classification of Instruction – Size: three, two, one and zero instruction,
Addressing Mode. Arithmetic and Logic Circuit Design. Instruction execution cycle: Sequencing
of control signals, hardwired control, micro-programmed control, control signals,
microinstructions, micro program sequencing, pre-fetching microinstructions. Introduction to
graphical processing unit (GPU).
Assessment plan
Text book(s)
Operating Systems Concepts, Abraham Silberschatz, Peter B. Galvin and Greg Gagne, Wiley,
2012.
Reference book(s)
1. The Design of the Unix Operating System, Maurice Bach, Pearson; 1st edition
2. Operating systems concepts; Avi Silberschatz, Peter Baer Galvin, Greg Gagne; Wiley;
Ninth edition
Data Structure and Algorithms
Introduction
This course is focused on the study of data structures and algorithms, which are fundamental to
computer science. It is designed to provide a deep understanding of the theory behind data
structures and algorithms, as well as practical implementation techniques. The course is
practice-heavy, and students will develop skills in algorithm design and analysis,
problem-solving, and programming.
Course outcomes
At the end of this course, students will be able:
1. To explain the principles and concepts underlying data structures and algorithms, such
as complexity analysis, recursion, and graph theory.
2. To design and implement efficient data structures and algorithms, using a variety of
techniques and approaches.
3. To analyze the performance and correctness of data structures and algorithms, using
mathematical and empirical methods.
4. To apply data structures and algorithms to solve real-world problems, across a range of
application areas such as search, sorting, and graph algorithms.
5. To evaluate different data structures and algorithms, based on their suitability for specific
problem domains and constraints.
6. To create and present well-structured and well-documented code that implements data
structures and algorithms.
Syllabus
Unit I – Introduction
Algorithmic thinking, peak finding, Models of computation, Document distance, Python cost
model
Unit II – Sorting and trees (14 hours)
Insertion sort, Merge sort, Heaps and heap sort, Binary search trees, BST sort, AVL trees and
sort, Counting sort, radix sort, lower bounds for sorting and searching
Unit IV – Numerics
Integer arithmetic, Karatsuba multiplication, Square roots, Newton’s method
Unit V – Graphs
Breadth first search, Depth first search, Topological mapping
Assessment plan
Text book(s)
Data Structures and Algorithms Made Easy; Narasimha Karumanchi; CareerMonk Publications;
5th edition
Reference book(s)
Introduction to Algorithms; Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford
Stein; PHI Learning Pvt. Ltd. (Originally MIT Press); Third edition
Semester 5
English LSRW
Introduction
This is a course aimed at developing the four pillars of Technical English communication:
Listening, Speaking, Reading and Writing. The course is designed to benchmark against the
CEFR framework, and is tailored to focus on business and technical communication.
Course outcomes
At the end of this course, students will be able:
1. To comprehend and interpret spoken and written English at the CEFR B2 level
2. To produce spoken and written English at the CEFR B2 level
3. To develop active listening and speaking skills in order to participate in discussions,
debates, and presentations
4. To improve reading speed, comprehension, and critical analysis of texts related to
business and technical domains
5. To hone writing skills and produce effective business and technical documents such as
emails, reports, proposals, and presentations
6. To apply effective communication strategies in a professional setting, including cultural
awareness and intercultural communication.
Syllabus
Unit 1: Listening and Speaking
Introduction to listening and speaking skills, , Understanding different accents and intonation,
Developing active listening skills, Participating in discussions and debates, Giving presentations
and speeches
Unit 2: Reading
Introduction to reading skills, Skimming and scanning for information, Identifying main ideas and
supporting details, Understanding tone and purpose, Reading for inference and implication
Unit 3: Writing
Introduction to writing skills, Planning and organizing written work, Writing effective emails and
memos
Writing reports and proposals, Writing for specific audiences and purposes
Assessment plan
Text book(s)
Professional English: for AKTU, Meenakshir Raman and Sangeetha Sharma, Oxford Publication
1st edition
Reference book(s)
Word Power Made Easy; Norman Lewis; Penguin Random House India; Latest edition 2015
Principles of Science
Introduction
The Principles of Science course provides a foundation in natural science principles and their
application to computer science. The course will develop critical thinking and scientific
communication skills and help students appreciate the relationship between science,
technology, and society.
Course outcomes
At the end of this course, students will be able:
1. To understand the basic principles of natural science and their relevance to computer
science
2. To develop critical thinking skills to analyze scientific problems and apply scientific
principles to computer science problems
3. To develop skills in scientific communication and reporting
4. To understand the relationship between science and technology, and their impact on
society
5. To develop an appreciation for the ethical considerations in science and technology
6. To develop an understanding of the scientific method and its application to computer
science research
Syllabus
Unit 1: Introduction to Science and Technology
Definition and characteristics of science; Relationship between science and technology;
Historical development of science and technology; Ethical considerations in science and
technology
Assessment plan
Text book(s)
1. Principles of Science by Donald E. Simanek and John R. Erickson (Pearson Education
India, 2019)
2. The Sciences: An Integrated Approach by James Trefil and Robert M. Hazen (published
by John Wiley & Sons, latest edition)
Reference book(s)
1. Science Matters: Achieving Scientific Literacy by Robert M. Hazen and James Trefil
(Penguin Random House India, 2017)
2. Science and Technology in World History: An Introduction by James E. McClellan III and
Harold Dorn (Johns Hopkins University Press, 2018)
3. Physics for Scientists and Engineers by Randall D. Knight (published by Pearson, latest
edition)
4. Chemistry: The Central Science by Theodore E. Brown, H. Eugene LeMay, Bruce E.
Bursten, Catherine J. Murphy, and Patrick M. Woodward (published by Pearson, latest
edition)
5. Biology: Concepts and Connections by Neil A. Campbell, Jane B. Reece, Martha R.
Taylor, and Eric J. Simon (published by Pearson, latest edition)
6. Earth Science by Edward J. Tarbuck, Frederick K. Lutgens, and Dennis Tasa (published
by Pearson, latest edition)
7. Research Methods in Computer Science by E. Lesk (published by Springer, latest
edition)
Introduction
This course provides an introduction to computer organization and architecture, which deals
with the physical components of a computer system and how they work together to execute
instructions. Topics covered include CPU design, memory hierarchy, I/O systems, and assembly
language programming.
Course outcomes
At the end of this course, students will be able:
1. To explain the basic components of computer systems and their functions at a low level,
including CPU, memory, and I/O systems.
2. To analyze the performance of computer systems based on metrics such as clock rate
and CPI.
3. To design and implement simple CPU and memory systems using hardware description
languages such as Verilog.
4. To write and debug assembly language programs that interact with system hardware.
5. To evaluate the trade-offs involved in different design choices for computer systems,
such as the size of the instruction set or the level of parallelism.
6. To apply knowledge of computer organization and architecture to optimize code for
performance and minimize energy consumption.
Syllabus
Unit I
Basic functional blocks of a computer: CPU, memory, input-output subsystems, control unit.
Instruction set architecture of a CPU - registers, instruction execution cycle, RTL interpretation
of instructions, addressing modes, instruction set. Case study - instruction sets of some
common CPUs.
Unit II
Data representation: signed number representation, fixed and floating point representations,
character representation. Computer arithmetic - integer addition and subtraction, ripple carry
adder, carry look-ahead adder, etc. multiplication - shift-and-add, Booth multiplier, carry save
multiplier, etc. Division - non-restoring and restoring techniques, floating point arithmetic.
Unit III
CPU control unit design: hardwired and micro-programmed design approaches, Case study -
design of a simple hypothetical CPU.
Unit IV
Peripheral devices and their characteristics: Input-output subsystems, I/O transfers - program
controlled, interrupt driven and DMA, privileged and non-privileged instructions, software
interrupts and exceptions. Programs and processes - role of interrupts in process state
transitions.
Unit V
Pipelining: Basic concepts of pipelining, throughput and speedup, pipeline hazards.
Assessment plan
Text book(s)
Computer Organization and Design; Patterson; Elsevier; 6th edition
Reference book(s)
1. Computer Architecture, Berhooz Parhami; Oxford University Press (19 April 2012)
2. Computer System Architecture; Mano M Morris; Pearson 3rd edition
Introduction
Formal language and automata theory is a branch of computer science that studies the
theoretical foundation of computer science, including the formal languages that computers can
recognize and the automata that can recognize those languages. This course is designed to
give students an understanding of formal languages, grammars, and automata, and how to use
them to solve practical problems.
Course outcomes
At the end of this course, students will be able:
1. To identify the regular and context-free languages that a given automaton can recognize.
2. To design regular expressions and context-free grammars for given languages.
3. To construct finite automata, pushdown automata, and Turing machines to recognize
given languages.
4. To analyze the time and space complexity of algorithms that operate on formal
languages.
5. To apply the principles of formal languages and automata to real-world problems, such
as pattern matching and parsing.
6. To evaluate and critique different models of computation and their relative strengths and
weaknesses.
Syllabus
Unit 1 Automata methods and Finite Automata
Introduction to formal proof, Additional forms of proof, Inductive proofs, The central concepts of
Automata theory, Deterministic finite automata, Nondeterministic finite automata, Text search,
Finite automata with Epsilon transitions
Text book(s)
Automata Theory Language & Computation; Hopcraft; Pearson 3rd edition
Reference book(s)
1. Theory of Computer Science: Automata, Languages and Computation; KLP Mishra;
Prentice Hall India Learning Private Limited; 3rd edition
2. Switching and Finite Automata Theory; Jha; Cambridge University Press; South Asian
edition (8 June 2010)
Introduction
This course provides an in-depth understanding of fundamental algorithms, algorithm design
techniques, and algorithm analysis. Students will gain experience in designing and analyzing
algorithms, which will help them solve computational problems more efficiently.
Course outcomes
At the end of this course, students will be able:
1. To apply algorithmic problem-solving techniques using a variety of algorithm design
methods.
2. To analyze the time and space complexity of algorithms and compare the efficiency of
different algorithms for the same problem.
3. To select appropriate data structures to optimize algorithms for specific problems.
4. To demonstrate proficiency in dynamic programming, greedy algorithms, and other
classical algorithmic techniques.
5. To apply algorithmic solutions to real-world problems and evaluate the quality of the
solution.
6. To analyze the limitations and challenges of algorithms in various contexts and assess
the ethical implications of algorithm design.
Syllabus
Unit I - Fundamentals of Algorithms and mathematics
Problem, algorithm definitions, Mathematics for algorithmic sets, Functions and relations,
Combinations, Vectors and matrices, Linear inequalities and linear equations
Assessment plan
Reference book(s)
1. "The Design of Approximation Algorithms" by David P. Williamson and David B. Shmoys
(Cambridge University Press, 2010)
2. "Computational Complexity: A Modern Approach" by Sanjeev Arora and Boaz Barak
(Cambridge University Press, 2009)
Semester 6
Discovering Self
Introduction
Discovering Self is a course designed to help students explore and develop their personal
identity, emotional intelligence, and communication skills. Through a variety of activities and
exercises, students will gain insights into their own strengths and weaknesses, and develop
strategies for personal growth and development.
Course outcomes
At the end of this course, students will be able:
1. To develop self-awareness and introspection skills
2. To understand the importance of emotional intelligence and its role in personal and
professional life
3. To learn effective communication skills to express thoughts, ideas, and emotions
4. To develop problem-solving and decision-making skills
5. To discover personal strengths and weaknesses, and strategies for personal growth and
development
6. To understand the impact of personal values and beliefs on decision-making and
behavior
Syllabus
Unit 1: Self-awareness and Introspection
Definition and importance of self-awareness; Techniques for introspection and self-reflection;
Identifying personal values, beliefs, and biases; Understanding emotions and their impact on
behavior; Developing self-compassion and self-acceptance
Assessment plan
Reference book(s)
1. Crucial Conversations: Tools for Talking When Stakes Are High by Kerry Patterson,
Joseph Grenny, Ron McMillan, and Al Switzler, McGraw-Hill Education (2011)
2. The 7 Habits of Highly Effective People: Powerful Lessons in Personal Change by
Stephen R. Covey, Simon & Schuster (2013)
3. Mindset: The New Psychology of Success by Carol S. Dweck, Ballantine Books (2007)
4. Thinking, Fast and Slow by Daniel Kahneman, Farrar, Straus and Giroux (2011)
Introduction
This course provides an introduction to the key principles and practices of modern business
management. It is designed to equip students with the foundational knowledge and skills
needed to manage people, resources, and processes effectively, and to develop a strategic
mindset that enables them to make sound business decisions in a dynamic and complex
environment.
Course outcomes
At the end of this course, students will be able:
1. To understand the fundamental concepts and principles of modern business
management, including organizational structures, functions, and processes.
2. To develop a strong foundation in core business disciplines, such as accounting, finance,
marketing, and operations management.
3. To acquire the necessary knowledge and skills to manage people effectively, including
leadership, motivation, and communication.
4. To understand the importance of strategic thinking and planning in business
management, and to develop the ability to formulate and execute effective business
strategies.
5. To learn to manage resources efficiently and effectively, including financial,
technological, and human resources.
6. To develop critical thinking and problem-solving skills, and to apply them in real-world
business scenarios.
Syllabus
Unit 1: Introduction to business management and Marketing
How business operate, Branding, customer centricity, Go-to market strategies, different modes
of marketing
Unit 2: Financial Accounting
Balance sheet, Accrual accounting, Income sheet, Cash flows, Ratio analysis
Assessment plan
Text book(s)
1. "Principles of Management" by Peter F. Drucker (HarperCollins, 2017)
2. "Fundamentals of Management" by Stephen P. Robbins and David A. DeCenzo
(Pearson, 2017)
Reference book(s)
1. "The Lean Startup" by Eric Ries (Crown Business, 2011)
2. "Blue Ocean Strategy" by W. Chan Kim and Renée Mauborgne (Harvard Business
Review Press, 2015)
3. "The 7 Habits of Highly Effective People" by Stephen R. Covey (Simon & Schuster,
2013)
4. "Good to Great" by Jim Collins (Harper Business, 2001)
Compiler Design
Introduction
The Compiler Design course is designed to teach students the principles and techniques used
in building compilers for programming languages. Students will learn how compilers work and
how to build a simple compiler from scratch.
Course outcomes
At the end of this course, students will be able:
1. To apply the principles of formal language and automata theory in building compilers for
programming languages.
2. To design and implement the lexical analyzer and parser for a programming language.
3. To generate intermediate code from source code using different techniques.
4. To optimize code generation using various optimization techniques.
5. To implement error handling and debugging mechanisms in a compiler.
6. To evaluate and compare different compiler design and optimization techniques.
Syllabus
Unit 1 Introduction and Directed Translator
Language processors, Structure of a compiler, Evolution of programming languages, The
science of building a compiler, Applications of computer technology, Syntax – Directed
translation, Parsing, A translator for simple expressions, Lexical analysis, Symbol tables,
Intermediate code generation
Assessment plan
Text book(s)
Compilers: Principles Techniques and Tool; Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffry D.
Ullman; Pearson 2nd edition
Reference book(s)
1. "Engineering a Compiler" by Keith D. Cooper and Linda Torczon (2nd Edition, 2011,
Morgan Kaufmann)
2. "Modern Compiler Implementation in Java" by Andrew W. Appel (2nd Edition, 2002,
Cambridge University Press)
3. "Introduction to Compiler Construction" by Thomas W. Parsons (2001, Addison-Wesley)
4. "Language Implementation Patterns: Create Your Own Domain-Specific and General
Programming Languages" by Terence Parr (2010, Pragmatic Bookshelf)
5. "Writing Compilers and Interpreters: A Software Engineering Approach" by Ronald Mak
(3rd Edition, 2009, Wiley)
Computer Networks
Introduction
This course will cover the fundamental concepts and principles of computer networks, including
network architecture, protocols, and services. Students will learn about various network
technologies, such as LAN, WAN, and wireless networks, and their applications in different
contexts. The course will also address network security and management issues.
Course outcomes
At the end of this course, students will be able:
1. To identify the different components and layers of computer networks.
2. To explain the functions of different protocols used in computer networks.
3. To analyze the performance and limitations of different network architectures.
4. To design and implement basic network configurations using routers and switches.
5. To troubleshoot common network issues using various network analysis tools.
6. To evaluate the security concerns and design solutions to ensure network security.
Syllabus
Unit 1 Internetworking and Routing
Internet architecture, Unicast IP Forwarding and Routing, Internet Routing in-the-Wild
(Measurement), Big Fast Routers, Security Issues in the Internet Architecture, Robustness
Assessment plan
Text book(s)
1. A S Tanenbaum, Computer Networks, 5th Ed., Pearson, 2010.
2. B.A. Forouzan, TCP/IP Protocol Suite, 4th Ed., TMH, 2010.
Reference book(s)
1. TCP/IP illustrated, Volume 1: The Protocols, W.R. Stevens, 2nd Ed., Addison-Wesley,
2015.
2. Internetworking with TCP/IP Principles, Protocols and Architecture, D E. Comer, 6th Ed.,
Pearson, 2013.
Semester 7
Introduction to Philosophy
Introduction
In this course, students will be introduced to fundamental concepts in philosophy such as logic,
ethics, epistemology, metaphysics, and aesthetics. They will learn about the major philosophical
ideas of historical and contemporary thinkers and explore various philosophical arguments.
Course outcomes
At the end of this course, students will be able:
1. To identify and explain the major philosophical concepts and ideas.
2. To analyze and evaluate philosophical arguments.
3. To develop the ability to think critically and creatively about philosophical problems.
4. To apply philosophical theories and concepts to real-world situations.
5. To engage in philosophical discussions and debates with peers.
6. To appreciate the relevance of philosophy to personal and professional life.
Syllabus
Unit 1: Morality
The status of morality, Objectivism, Relativism, Emotivism
Assessment plan
Text book(s)
Philosophy Made Slightly Less Difficult; Garrett J. Deweese & J. P. Moreland; IVP Academic;
Second edition
Reference book(s)
1. The Big Questions: A Short Introduction to Philosophy by Robert C. Solomon and
Kathleen M. Higgins, published by Wadsworth Publishing (2011).
2. Think: A Compelling Introduction to Philosophy by Simon Blackburn, published by
Oxford University Press (2001).
3. Philosophy: The Basics by Nigel Warburton, published by Routledge (2012).
4. The Story of Philosophy by Will Durant, published by Pocket Books (1991).
5. An Introduction to Indian Philosophy; Satishchandra Chatterjee; Rupa & Co 2012 edition
Electives
This forthcoming section of the doc contains a tentative list of courses offered (not a detailed
syllabus) for the electives.
Academic Elective #1
1. Cloud computing
2. Distributed systems
3. Data Mining and Warehousing
Academic Elective #2
1. Cryptography
2. Internet of Things
3. System Design
Foundation Elective
1. Human Mind and Behaviour
2. Organization Behaviour
3. Foreign language (Global options provided such as French/ Spanish/ German/ Japanese
etc.)
4. Design Thinking 101
Credits are allocated to Integrated Work each semester, and the evaluation schema is as
follows.
Plan to track Progress
During the internship the student will report plans and progress in written and oral form. These
will be assessed formative.
Progress Report
During the course of the internship, the student has to submit fortnightly reports detailing their
progress for the month on the internship. This should cover:
This is evaluated by a supervisor mentor from Kalvium, and suitable feedback/ support is
provided.
Internship Report
After the internship, the student has to hand in his/her internship report before a predetermined
deadline. This report consists of the following.
● Analysis of the project done at the organization (matter-of-fact description of the work
carried out)
● Analysis and reflection of the learning process (this involves the progress in learning
over six months of the integrated work. This may include general as well as personal
competency-level learnings).
Internship Presentation
After handing in his/her report, the student presents his/her internship report to a panel. This
panel consists of unbiased assessors (not the supervising mentor) The supervising mentor may
also attend the internship presentation.
An assessment lasts one hour, consisting of a presentation of the student’s internship work (30
minutes), and a question round (30 minutes).
Assessment Methodology
The following will be provided as weightages for evaluating a student’s performance in this stint
of Integrated Work.
The monthly ratings could be based on various aspects of the student's performance such as
punctuality, professionalism, quality of work, ability to meet deadlines, willingness to learn, and
collaboration with team members.
1. The minimum duration of a Bachelor's in Engineering program should be four years, and
the maximum duration should not exceed six years.
- Kalvium proposes a Bachelor’s in Engineering that’s a 4 year program.
2. The program should comprise a minimum of 160 credits, including both theory and
practical components.
- The program scheme proposed by Kalvium includes 184 credits in total, covering
theory, practical and internship components.
3. The program curriculum should be designed in such a way that it covers the fundamental
principles, theoretical foundations, and practical applications of the subject.
- The course design pedagogy of Kalvium is extremely aligned with this
philosophy. Every course follows this process of students learning the
fundamental principles, the theoretical foundations (in the Kalvium context, we
call these ‘Learning Units’) followed by practical applications (in the Kalvium
program, we call these ‘Assignments/ Projects’). Every course is designed with
this pedagogy in mind.
4. The program should include mandatory courses in humanities, social sciences, and
management to ensure a holistic and well-rounded education.
- The Kalvium program has a whole pillar of courses (called the Foundation core)
that covers this.