0% found this document useful (0 votes)
58 views

B.tech CSE Data Science

Uploaded by

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

B.tech CSE Data Science

Uploaded by

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

SCHOOL OF ENGINEERING AND TECHNOLOGY

Programme Handbook
(Programme Study and Evaluation Scheme)

B.Tech (Computer Science & Engineering with


Specialization in Data Science)
Programme Code: 42

FOUR YEAR UNDERGRADUATE PROGRAMME


As per National Education Policy 2020
(Multiple Entry and Exit in Academic Programmes)
(with effect from 2024-25 session)

Approved in the 34th Meeting of Academic Council Held on


29 June 2024
Table of Contents
S.N. Content Page No.
1 Preface 3
2 NEP-2020 5
3 Categories of Courses 6
4 1. University Vision and Mission 8
5 2. About the School 8
6 School Vision & Mission 10
7 About the Program 11
8 Program Educational Objectives (PEO) 12
9 Program Objectives (PO) 12
10 Program Specific Objectives (PSO) 13
11 Career Avenues 13
12 Duration 14
13 Eligibility Criteria for Award of Degree 15
14 Student's Structured Learning Experience from Entry to Exit 15
in the Programme
15 Scheme of Studies 27
16 Evaluation Scheme 38
17 Syllabus 39
3. Preface

Welcome to the School of Engineering and Technology at K. R. Mangalam University. It is with


great enthusiasm that we introduce you to an institution dedicated to nurturing future leaders
in engineering and technology.

Established in 2013, our School has rapidly evolved into a premier center for innovation, quality
education, and skill development. With a focus on imparting advanced knowledge and fostering
creativity, we are committed to providing a transformative educational experience. Our state-
of-the-art infrastructure, cutting-edge laboratories, and a distinguished team of faculty
members collectively create an environment where academic and professional excellence
thrives.

Our diverse programs encompass undergraduate degrees (B.Tech, BCA, B.Sc), postgraduate
studies (M.Tech, MCA), and doctoral research across all engineering disciplines. Notably, we
offer specialized B.Tech programs in areas such as Artificial Intelligence & Machine Learning,
Data Science, Cyber Security, Full Stack Development, and UI/UX Development. These
programs are designed to equip students with both technical proficiency and a deep
understanding of emerging technologies.

At the heart of our mission is a commitment to a curriculum that integrates the best practices
from leading global institutions while also incorporating insights from the Open-Source Society
University. This curriculum emphasizes problem-solving, interdisciplinary learning, and
innovative teaching methodologies, all aligned with the National Education Policy (NEP) 2020.

Our emphasis on industry integration is reflected in our collaborations with renowned


organizations such as IBM, Samatrix, Xebia, E.C Council, and ImaginXP. These partnerships
ensure that our students gain practical experience and insights that are directly applicable to
industry demands. Elective options across diverse domains, including AI, Cloud Computing,
Cyber Security, and Full Stack Development, offer students the flexibility to tailor their
educational experience to their career aspirations.
We are also dedicated to fostering a culture of innovation and entrepreneurship through our
Entrepreneurship and Incubation Center and initiatives like 'MindBenders,' 'Hack-KRMU,' and
participation in the 'Smart India Hackathon.' These programs are designed to inspire and
prepare students to become forward-thinking leaders in the technology sector.

Our modern computing facilities and comprehensive infrastructure support advanced research,
simulations, and hands-on projects, ensuring that our students are well-prepared for the
challenges of the professional world. K. R. Mangalam University is recognized for its
commitment to providing quality education, and our alumni have made notable contributions
across various sectors, from multinational corporations to public sector enterprises.

We are excited to accompany you on this journey and look forward to supporting your academic
and professional growth. Welcome to a community where excellence and innovation are at the
core of everything we do.

School of Engineering & Technology


K.R Mangalam University

4. NEP-2020: K.R. Mangalam University has adopted the National Education Policy NEP-2020
to establish a holistic and multidisciplinary undergraduate education environment, aiming to
equip our students for the demands of the 21st century. Following the guidelines of NEP-2020
regarding curriculum structure and duration of the undergraduate programme, we now offer
a Four-Year Undergraduate Programme with multiple entry and exit points, along with re-
entry options, and relevant certifications.
▪ UG Certificate after completing 1 year (2 semesters with the required number of
credits) of study, and an additional vocational course/internship of 4 credits during
the summer vacation of the first year.
▪ UG Diploma after completing 2 years (4 semesters with the required number of
credits) of study, and an additional vocational course/internship of 4 credits during
the summer vacation of the second year.
▪ Bachelor’s Degree after completing 3-year (6 semesters with the required number
of credits) programme of study.
▪ 4-year Bachelor’s Degree (Honours) with the required number of credits after eight
semesters programme of study.
▪ Students who secure 75% marks and above in the first six semesters and wish to
undertake research at the undergraduate level can choose a research stream in the
fourth year. Upon completing a research project in their major area(s) of study in the
4th year, a student will be awarded Bachelor’s Degree (Honours with Research).

Advantage of pursuing 4-year Bachelor’s degree programme with Honours/Honours with


Research is that the Master’s degree will be of one year duration. Also, a 4-year degree
programme will facilitate admission to foreign universities.

S. No. Broad Categories of Courses Minimum Credit Requirement for


Four Year UG Program
1 Major (Core) 80
2 Minor 32
3 Multidisciplinary 09
4 Ability Enhancement Course (AEC) 08
5 Skill Enhancement Course (SEC) 09
6 Value-Added Course (VAC) 06-08
7 Summer Internship 02-04
8 Research Project/Dissertation 12
9 Total 160
2.1 Categories of Courses
Major: The major would provide the opportunity for a student to pursue in-depth study of a
particular subject or discipline.
Minor: Students will have the option to choose courses from disciplinary/interdisciplinary
minors and skill-based courses. Students who take a sufficient number of courses in a discipline
or an interdisciplinary area of study other than the chosen major will qualify for a minor in that
discipline or in the chosen interdisciplinary area of study.
Multidisciplinary (Open Elective): These courses are intended to broaden the intellectual
experience and form part of liberal arts and science education. These introductory-level courses
may be related to any of the broad disciplines given below:
• Natural and Physical Sciences
• Mathematics, Statistics, and Computer Applications
• Library, Information, and Media Sciences
• Commerce and Management
• Humanities and Social Sciences

A diverse array of Open Elective Courses, distributed across different semesters and aligned
with the aforementioned categories, is offered to the students. These courses enable students
to expand their perspectives and gain a holistic understanding of various disciplines. Students
can choose courses based on their areas of interest.
Ability Enhancement Course (AEC): Students are required to achieve competency in a
Modern Indian Language (MIL) and in the English language with special emphasis on language
and communication skills. The courses aim at enabling the students to acquire and demonstrate
the core linguistic skills, including critical reading and expository and academic writing skills,
that help students articulate their arguments and present their thinking clearly and coherently
and recognize the importance of language as a mediator of knowledge and identity.
Skills Enhancement Courses (SEC): These courses are aimed at imparting practical skills,
hands-on training, soft skills, etc., to enhance the employability of students.
Value-Added Course (VAC): The Value-Added Courses (VAC) are aimed at inculcating
Humanistic, Ethical, Constitutional and Universal human values of truth, righteous conduct,
peace, love, non-violence, scientific and technological advancements, global citizenship values
and life-skills falling under below given categories:
• Understanding India
• Environmental Science/Education
• Digital and Technological Solutions
• Health & Wellness, Yoga education, Sports, and Fitness
Research Project / Dissertation: Students choosing a 4-Year Bachelor’s degree (Honours
with Research) are required to take up research projects under the guidance of a faculty
member. The students are expected to complete the Research Project in the eighth semester.
The research outcomes of their project work may be published in peer-reviewed journals or
may be presented in conferences /seminars or may be patented.

5. University Vision and Mission


3.1 Vision
K.R. Mangalam University aspires to become an internationally recognized institution of higher
learning through excellence in inter-disciplinary education, research, and innovation, preparing
socially responsible life-long learners contributing to nation building.
3.2 Mission
➢ Foster employability and entrepreneurship through futuristic curriculum and progressive
pedagogy with cutting-edge technology
➢ Instill notion of lifelong learning through stimulating research, Outcomes-based education,
and innovative thinking
➢ Integrate global needs and expectations through collaborative programs with premier
universities, research centres, industries, and professional bodies.
➢ Enhance leadership qualities among the youth having understanding of ethical values and
environmental realities

6. About the School


The School of Engineering and Technology at K. R. Mangalam University started in 2013 to
create a niche of imparting quality education, innovation, entrepreneurship, skill development
and creativity. It has excellent infrastructure, state of the art Labs, and a team of qualified and
research-oriented faculty members.
The school is offering undergraduate programs (B.Tech, BCA, B.Sc), postgraduate programs
(M.Tech, MCA) and Ph.D (all disciplines of Engineering). We are offering B.Tech programs in
recent areas of specializations like AI & ML, Data Science, Cyber Security, Full stack
development, UI/UX development etc.
Our strength lies in our highly qualified, research oriented, and committed teaching faculty. We
believe in empowering minds through expert guidance, ensuring that our students receive a
world-class education that prepares them for the challenges of the ever-evolving technological
landscape.

The School of Engineering & Technology is committed to providing a cutting-edge curriculum


by integrating the best practices from top global universities and leveraging the rich knowledge
resources of the Open-Source Society University. The curriculum focuses on problem-solving,
design, development, interdisciplinary learning, skill development, research opportunities and
application of various emerging technologies with focus on innovative teaching learning
methodologies. Aligned with the National Education Policy (NEP) 2020, our curriculum is
designed to provide a holistic and contemporary learning experience.
We take pride in offering an industry-integrated curriculum that goes beyond traditional
education. Collaborations and training led by industry experts, along with partnerships with
renowned organizations such as IBM, Samatrix, Xebia, E.C Council, ImaginXP etc ensure that
our students gain practical insights and skills that align with real-world industry demands.
With elective options across various domains, including AI, Cloud Computing, Cyber Security,
and Full Stack Development, we empower students to customize their learning experience. Our
goal is to provide the flexibility needed for each student to shape their academic and
professional future.
We prioritize career growth by offering comprehensive training, placements, international
internships, and preparation for further studies. Our commitment to nurturing globally
competitive professionals is reflected in the diverse pathways we pave for our students.
SOET aims at transforming the students into competitive engineers with adequate analytical
skills, making them more acceptable to potential employers in the country. At our school, we
emphasize learning through doing. Whether it's project-based learning, field projects, research
projects, internships, or engaging in competitive coding, our students actively shape their
futures by applying theoretical knowledge to practical scenarios. We provide opportunities for
industrial projects, R&D projects, and start-up projects in the final year, ensuring that our
students engage in real-world innovation.

We are dedicated to fostering a culture of innovation and entrepreneurship, recognizing these


as essential pillars for the success of our students in the rapidly evolving world of technology.
We inspire innovation and entrepreneurship through our dynamic Entrepreneurship and
Incubation Center, engaging contests like 'MindBenders' ,'Hack-KRMU,' participation in ‘Smart
India Hackathon’, International Conference ‘MRIE’ empowering students to become forward-
thinking leaders in the ever-evolving realm of technology.
We pride ourselves on providing state-of-the-art computing facilities and infrastructure. Our
modern labs and computing resources are equipped to support the diverse needs of our
students, enabling them to engage in advanced research, simulations, and hands-on projects.
K.R. Mangalam University has marked its presence in Delhi NCR as a value-based university,
successfully imparting quality education in all domains. Our alumni are working across all
sectors of technology, from MNCs to PSUs.

7. School Vision and Mission

Vision
To excel in scientific and technical education through integrated teaching, research, and
innovation.
Mission
▪ Creating a unique and innovative learning experience to enhance quality in the domain
of Engineering & Technology.
▪ Promoting Curricular, co-curricular and extracurricular activities that support overall
personality development and lifelong learning, emphasizing character building and
ethical behavior.
▪ Focusing on employability through research, innovation and entrepreneurial mindset
development.
▪ Enhancing collaborations with National and International organizations and institutions
to develop cross-cultural understanding to adapt and thrive in the 21st century.

8. About the Programme


8.1 Definitions
➢ Programme Outcomes (POs)
Programme Outcomes are statements that describe what the students are expected to
know and would be able to do upon the graduation. These relate to the skills, knowledge,
and behaviour that students acquire through the programme.
➢ Programme Specific Outcomes (PSOs)
Programme Specific Outcomes define what the students should be able to do at the time
of graduation and they are programme specific. There are two to four PSOs for a
programme.
➢ Programme Educational Objectives (PEOs)
Programme Educational Objectives of a degree programme are the statements that
describe the expected achievements of graduates in their career, and what the
graduates are expected to perform and achieve during the first few years after
graduation.
➢ Credit
Credit refers to a unit by which the course work is measured. It determines the
number of hours of instructions required per week. One credit is equivalent to 14-
15 periods for theory, or 28-30 periods for workshop/labs and tutorials

8.2 Programme Educational Objectives (PEO)


PEO1: Successful professionals in industry, government, academia, research,
entrepreneurial pursuits and consulting firms.
PEO2: Able to apply their knowledge of computer science & engineering principles to
solve societal problems by exhibiting a strong foundation in both theoretical and practical
aspects of the field.
PEO3: Dedicated to upholding professional ethics and social responsibilities, with a
strong commitment to advancing sustainability goals.
PEO4: Demonstrating strong leadership skills and a proven ability to collaborate
effectively in diverse, multidisciplinary teams to successfully achieve project objectives.

8.3 Programme Outcomes (PO)

Engineering Graduates will be able to:


PO1. Core Competencies in Engineering: Graduates will possess a strong foundation
in engineering knowledge, critical problem analysis, and solution design, equipped with
skills for conducting thorough investigations to solve complex challenges.
PO2. Modern tool usage: Create, select, and apply appropriate techniques, resources,
and modern engineering and IT tools including prediction and modeling to complex
engineering activities with an understanding of the limitations.
PO3. Societal and Environmental Responsibility
Apply contextual knowledge to evaluate societal, health, safety, legal, and cultural
issues, while understanding the impact of engineering solutions on the environment and
advocating for sustainable development.
PO4. Ethics: Apply ethical principles and commit to professional ethics and
responsibilities and norms of the engineering practice.
PO5. Effective Communication and Team Collaboration
Excel in both individual and team roles within diverse and multidisciplinary settings, while
communicating complex engineering concepts clearly through effective reports,
presentations, and interactions.
PO6. Project management
Apply engineering and management principles to lead and manage projects effectively
in computer science and engineering contexts.
PO7. Life-long learning: Embrace and actively pursue continuous learning to stay
current with technological advancements and evolving practices in computer science and
engineering.

8.4 Programme Specific Outcomes (PSO)

On completion of the program, students will be:


PSO1: Understanding the concepts, theories, tools, techniques, and methodologies of Data
Science.
PSO2: Applying Data Science principles to analyse and solve real-world data-driven challenges.
PSO3: Analysing data sets, methodologies, and algorithms to extract meaningful insights.
PSO4: Evaluating data models and analytical methods to optimize performance.
PSO5: Designing and developing innovative data-driven solutions to address complex
problems.

8.5 Career Avenues

Graduates of the B.Tech Computer Science & Engineering with specialization in Data
Science program have a wide array of career opportunities, including:
1. Software Developer: Design, code, and maintain software across various domains
such as web, mobile, game, and enterprise applications.
2. Systems Analyst: Evaluate and enhance organizational computer systems, design new
solutions, and optimize existing processes for improved efficiency.
3. Data Scientist: Analyze large datasets, apply statistical methods and machine learning,
and develop predictive models to drive data-informed decisions.
4. AI Engineer: Develop and implement AI algorithms, including natural language
processing, computer vision, and other intelligent systems.
5. Cybersecurity Analyst: Protect systems and data by identifying vulnerabilities,
implementing security measures, and responding to security incidents.
6. Network Engineer: Design, deploy, and maintain reliable and secure network
infrastructures, and troubleshoot network issues to ensure optimal performance.
7. IT Project Manager: Oversee technology projects from planning to execution, manage
teams, coordinate resources, and ensure timely and budget-compliant delivery.
8. Database Administrator: Maintain database systems, ensure data integrity and
security, and optimize performance for efficient data management.
9. Quality Assurance Engineer: Test and ensure the reliability and functionality of
software applications by developing test plans, identifying issues, and collaborating with
development teams.
10.Research and Development: Engage in cutting-edge research, explore emerging
technologies, and contribute to innovation in academia, industry labs, or R&D
departments.

8.6 Duration
4 Years (8 Semesters) - Full-Time Program

8.7 Eligibility Criteria


Passed 10+2 examination with Physics and Mathematics as mandatory course.

For remaining single course select any course from Chemistry/ Computer Science/
Electronics/ Information Technology/ Biology/ Informatics Practices/ Biotechnology/
Technical Vocational subject/ Agriculture/ Engineering Graphics/ Business Studies/
Entrepreneurship from any recognized Board/ University with minimum 50% aggregate
marks.

8.8 Eligibility Criteria for Award of Degree


Students must successfully complete the minimum required credits of 168 to be
eligible for award of degree without any backlog

9. Student's Structured Learning Experience from Entry to Exit in the Programme


9.1 University Education Objective
• Focus Employability and Entrepreneurship through Holistic Education
9.2 Importance of Structured Learning Experiences
▪ Holistic and Structured Academic Journey: The curriculum focuses on employability,
entrepreneurship, and personal development through a balanced education that
integrates major/minor selection, internships, projects, coding and hands-on industry
experience.
▪ Comprehensive Learning and Support: Students benefit from experiential learning
through labs, workshops, and guest lectures, while academic support, mentor-mentee
programs, and counselling services cater to the needs of both slow and advanced
learners.
▪ Continuous Evaluation and Growth: A robust assessment framework with regular
feedback, emphasis on academic integrity, and structured evaluation methods ensures
ongoing student development and success.
9.3 Educational Planning and Execution
Effective educational planning and execution is a cornerstone of delivering a high-quality
academic experience. At the School of Engineering & Technology, we focus on a
structured and dynamic approach to ensure that students gain the knowledge, skills, and
competencies required to excel in the rapidly evolving technological landscape. Our
planning and execution encompass the following key aspects:

o Curriculum Design: The curriculum is meticulously crafted, aligning with global


standards and the National Education Policy (NEP) 2020. It integrates theoretical
learning with practical application, focusing on interdisciplinary knowledge, skill
development, and the latest trends in technology, such as AI and ML, Cybersecurity,
Full Stack and Data Science etc
o Learning Objectives: Each course is designed with clear learning outcomes to
ensure students understand the relevance of their education to real-world
applications. The focus is on building foundational knowledge while advancing to
specialized skills that enhance employability and entrepreneurship.
o Academic Scheduling: A well-structured academic calendar is developed, ensuring
a balanced distribution of coursework, projects, internships, and examinations.
Students are guided in course registration, ensuring a smooth academic journey
through carefully timed assessments, practical experiences, and project work.
o Project-Based Learning: We emphasize experiential and project-based learning to
foster critical thinking, problem-solving, and innovation. Through real-world projects,
Internships, contests and collaborative opportunities, students gain practical insights
into engineering challenges.
o Continuous Evaluation: An ongoing evaluation system is employed with periodic
assessments, ensuring continuous learning and improvement. The system includes
practical exams, theoretical assessments, internships, and project evaluations,
providing a holistic view of student progress. Through strategic educational planning
and precise execution, we ensure that our students graduate with the skills and
knowledge required to meet the demands of industry and society.

9.4 Academic Journey


9.5 Curriculum Structure and Degree Requirements
The B.Tech Computer Science & Engineering (CSE) program at the School of Engineering
& Technology offers a comprehensive, structured curriculum designed to meet the
demands of the rapidly evolving field of computer science. The program is spread across
eight semesters, balancing foundational knowledge, advanced topics, practical skills, and
interdisciplinary learning. The total credit requirement for the B.Tech CSE program is
168 credits.

Course Categories and Credit Distribution:


1. Ability Enhancement Courses (AEC) – 9 credits
Courses focused on enhancing students’ communication skills, critical thinking, and
other fundamental abilities required for academic and professional success.
2. Audit Courses – 0 credits
Four non-credit audit courses focused on Competitive Programming, providing
students with the opportunity to sharpen their coding skills through regular practice
and participation in coding challenges, helping them excel in technical interviews and
competitions like ACM ICPC.
3. Internships – 6 credits
Hands-on industry experience is integral to the curriculum, with mandatory internships
helping students apply theoretical knowledge to real-world scenarios.
4. Major Courses – 88 credits
Core technical courses in computer science that cover essential topics such as
programming, data structures, algorithms, databases, operating systems, networking,
AI, machine learning, and cybersecurity.
5. Minor Courses – 20 credits
Elective courses that allow students to specialize in areas outside their major,
encouraging interdisciplinary knowledge and flexibility in learning.
6. Open Electives – 9 credits
Courses from other disciplines offered to provide students with an opportunity to
explore subjects of interest beyond computer science.
7. Skill Enhancement Courses (SEC) – 10 credits
Practical and hands-on courses focused on specific skills, including programming
languages, software development, and other technical proficiencies.
8. Projects (PROJ) – 18 credits
A substantial component of the curriculum dedicated to individual and group projects,
ensuring students gain practical problem-solving experience and engage in innovation.
9. Value-Added Courses (VAC) – 8 credits
Courses aimed at holistic development, focusing on ethics, social responsibility,
entrepreneurship, and leadership skills.

Course category Credits

AEC 9

AUDIT 0

Internship 6

Major 88

Minor 20

Open Elective 9

SEC 10

PROJ 18

VAC 8
Total
Program Name I II III IV V VI VII VIII
Credits
B.Tech CSE specialization in
20 25 26 27 23 21 14 12 168
Data Science

9.6 Course Registration and Scheduling


9.6.1 Major and Minor Selection
In the B.Tech CSE specialization in Data Science program, students have the
opportunity to specialize in their field through Major and Minor selections, which allow
them to tailor their academic journey according to their interests and career
aspirations.

The Major component comprises core Computer Science and Engineering courses,
providing a strong foundation in fundamental concepts such as algorithms, data
structures, software engineering, and computer networks.

For the Minor component, students can choose from department-specific electives
offered in four cutting-edge domains: Artificial Intelligence, Full Stack Development
(FSD), Cyber Security, and Cloud Computing. This flexibility empowers students to
gain specialized knowledge and skills in areas of their choice, enabling them to pursue
diverse career paths or advanced studies in these high-demand fields. The Minor
selection allows students to complement their major coursework with focused
expertise, preparing them for dynamic roles in the evolving tech industry.

9.6.2 Internships/Projects/Dissertations/Apprenticeships
In alignment with our commitment to providing practical, hands-on experiences that
complement academic learning, our curriculum incorporates a range of internships,
projects, and other experiential learning opportunities. These components are
designed to enhance students' skills, apply theoretical knowledge in real-world
settings, and prepare them for successful careers in engineering and technology.
Below is an overview of the related courses offered:
1. Summer Internships: Summer internships are integrated into our curriculum at
various stages to ensure students gain relevant industry experience. These internships
are structured as follows:
• ENSI251: Summer Internship I (2 Credits)
o Objective: To provide students with their first exposure to a professional work
environment, where they can apply fundamental concepts learned in their
coursework.
o Duration: Summer term, typically spanning 6-8 weeks.
o Focus: Gaining initial industry experience, understanding professional
practices, and developing workplace skills.
• ENSI351: Summer Internship II (2 Credits)
o Objective: To deepen students' industry experience by engaging them in more
complex tasks and projects.
o Duration: Summer term, typically spanning 6-8 weeks.
o Focus: Applying advanced concepts and techniques, participating in
meaningful projects, and refining technical and soft skills.
• ENSI451: Summer Internship III (2 Credits)
o Objective: To further advance students' practical knowledge and skills by
immersing them in high-impact projects and professional challenges.
o Duration: Summer term, typically spanning 6-8 weeks.
o Focus: Taking on significant responsibilities, contributing to substantial
projects, and preparing for career readiness.
2. Minor Projects: Minor projects offer students the opportunity to engage in focused,
short-term projects that emphasize application of core concepts in practical scenarios:
• ENSI152: Minor Project-I (2 Credits)
o Objective: To introduce students to project-based learning, where they work
on small-scale projects that require application of fundamental principles.
o Focus: Developing project planning, execution, and presentation skills.
• ENSI252: Minor Project-II (2 Credits)
o Objective: To build on the skills acquired in Minor Project-I, with increased
complexity and scope.
o Focus: Enhancing problem-solving abilities, project management skills, and
technical proficiency.
• ENSI352: Minor Project-III (2 Credits)
o Objective: To further advance students' project work by involving them in
more complex and multi-disciplinary projects.
o Focus: Integrating diverse concepts, collaborating with peers, and presenting
findings.
3. Industrial Project/R&D Project/Start-up Project: This capstone project is
designed for students to engage in extensive, real-world problem-solving in a
professional context:
• ENSI452: Industrial Project/R&D Project/Start-up Project (12 Credits)
o Objective: To provide a comprehensive, in-depth project experience in
collaboration with industry partners, research institutions, or start-ups.
o Focus: Addressing complex engineering problems, engaging in innovative
research, or contributing to entrepreneurial ventures. This project requires a
significant time commitment and culminates in a detailed report and
presentation.

These experiential learning components are integral to our educational philosophy,


ensuring that students not only acquire theoretical knowledge but also develop practical
skills and gain valuable industry experience. Our structured approach to internships and
projects prepares students to meet the demands of the engineering profession and excel
in their future careers.

9.6.3 Academic Support Services (Slow & Advanced Learners)


Identifying slow and advanced learners is crucial for providing personalized and effective
education. By assessing students' performance through mid-term evaluations and internal
assessments, institutions can tailor support to meet individual learning needs. Slow learners
benefit from remedial classes, extra assignments, and personalized attention, helping them
bridge knowledge gaps and progress academically. Meanwhile, advanced learners are
offered opportunities for academic enrichment, including participation in technical events,
research projects, and career counseling. This structured approach ensures holistic
development, fosters individual growth, and enhances overall academic performance.
Mechanism for identifying slow and advanced learners
➢ Mid-term Evaluation: Conduct mid-term exams with a weightage of 20%.
➢ Assessment of Learning Levels: Evaluate students based on their performance in
the mid-term and other internal assessments.
➢ Slow Learners Identification:
• If a student's marks are ≤55%, they are categorized as slow learners.
• Remedial support includes additional classes, extra assignments, and notes.
➢ Advanced Learners Identification:
• If a student's marks are ≥80%, they are categorized as advanced learners.
• They are provided with opportunities for career counseling, participation in
technical events, and advanced courses.

9.7 Student Support Services


• Mentor-Mentee
• Counselling and Wellness Services
• Career Services and Training
9.8 Learning and Development Opportunities
• Laboratories and Practical Learning
• Experiential Learning
• Case-Based Learning/Problem-Based Learning/Project Based Learning
• Workshops, Seminars, Guest Lectures
• Inside & Outside Classroom Learning
• Holistic Education
9.9 Assessment and Evaluation
9.9.1 Grading Policies and Procedures for theory courses, practical courses,
projects, Internships, Dissertation

Theory Courses:
Grading for theory courses is based on a comprehensive evaluation scheme designed
to assess both continuous performance and final examination results. The assessment
is divided as follows:
Continuous Assessment (30 Marks): Includes diverse components such as project
work, quizzes, assignments, essays, presentations, participation, case studies, and
reflective journals. These components are evenly spaced throughout the semester to
gauge ongoing student performance.
Mid-Term Exam (20 Marks): A formal examination conducted midway through the
semester to assess understanding and retention of the material covered up to that
point.
End-Term Examination (50 Marks): A comprehensive exam covering the entire
syllabus, designed to evaluate students' overall understanding and application of the
course content.
Practical Courses:
Practical assessments focus on the students' ability to apply theoretical knowledge to
practical tasks. The evaluation components include:

Conduct of Experiment (10 Marks): Assessment of the student's practical skills


and ability to follow experimental procedures.
Lab Records (10 Marks): Evaluation of the completeness and accuracy of lab
documentation.
Lab Participation (10 Marks): Involvement and engagement in laboratory
activities.
Lab Project (20 Marks): Performance and results of a project-based laboratory
assignment.
End-Term Practical Exam and Viva Voce (50 Marks): A comprehensive practical
examination and oral assessment to evaluate the application of lab skills and
theoretical knowledge.

Note: Students must secure at least 40% in both internal and external components
(theory and practical) to pass the course.

9.9.2 Feedback and Continuous Improvement Mechanisms (Details to be provided


by school)
Feedback is integral to fostering continuous improvement and enhancing the learning
experience. Our feedback mechanisms include:

➢ Student Feedback Surveys: Regular surveys to collect student opinions on course


content, teaching methods, and overall learning experience.
➢ Peer Reviews: Evaluation of teaching practices by peers to ensure adherence to
educational standards and continuous improvement.
➢ Faculty Reviews: Periodic reviews of faculty performance based on feedback and
assessment outcomes to support professional development.
➢ Continuous improvement is driven by analysing feedback, implementing
necessary changes, and reviewing the effectiveness of modifications.
9.9.3 Academic Integrity and Ethics
Upholding academic integrity and ethical standards is crucial in maintaining the
quality of education. Our policies include:

➢ Cheating Prevention: Procedures to prevent and address cheating during


exams and assignments.
➢ Ethical Conduct: Clear guidelines on academic conduct and ethics, with
emphasis on honesty and responsibility in all academic work.

9.9.4 Examination and Evaluation Methods (Details to be provided by school)

Our examination and evaluation methods ensure a fair and comprehensive


assessment of student performance:

o Theory Examinations: A mix of continuous assessments and formal exams to


evaluate students' understanding and application of course material.
o Practical Examinations: Assessment of hands-on skills and practical knowledge
through lab experiments and projects.
o ICT Tools: Utilization of Moodle LMS and interactive teaching boards to support
teaching and assessment, providing students with access to course materials,
assignments, and feedback.
Evaluation Components:

o Lecture PPTs and Video Lectures: Used to deliver course content and reinforce key
concepts.
o Problem-Based and Project-Based Assignments: Encourage practical application
of theoretical knowledge and critical thinking.
o Question Banks and Model Papers: Provide practice and preparation for exams.
o Continuous Assessment and Support: Regular assessments and feedback to
monitor and support student progress throughout the semester.
o These evaluation methods are designed to provide a holistic assessment of
students' knowledge and skills, ensuring they meet the required learning
outcomes and standards.
Scheme of Studies
Program Name B.Tech CSE specialization in Data Science
Total Credits 168
Total Semesters 8

Semester I (Odd Semester)

SN Category Course Code Course Title L T P C

1 Major ENMA101 Engineering Calculus 3 1 - 4

2 Minor ENSP101 Clean Coding with Python 4 0 0 4

Engineering Physics /
3 Major ENPH101/ENCH101 3 1 - 4
Engineering Chemistry

Engineering Drawing &


4 SEC SEC033 - - 4 2
Workshop Lab

Clean Coding with Python


5 Minor ENSP151 0 0 2 1
Lab

Engineering Physics lab /


6 Major ENPH151/ENCH151 - - 2 1
Engineering Chemistry lab
Environmental Studies &
7 VAC I Disaster Management 2 - - 2
(Online Moodle)
Data Analysis with
8 SEC SEC041 - - 4 2
Tableau & KNIME

TOTAL 12 2 12 20
Semester II (Even Semester)
Course
SN Category Course Title L T P C
Code
Linear Algebra and Ordinary
1 Major ENMA102 3 1 - 4
Differential Equations
Object Oriented Programming
2 Major ENCS102 3 1 - 4
using C++

ENCH101/ Engineering Chemistry /


3 Major 1 1 - 4
ENPH101 Engineering Physics

Engineering Drawing & Workshop


4 SEC SEC033 - - 4 2
Lab

Data Visualization using Python


5 Minor ENSP154 - - 4 2
Lab

Object Oriented Programming


6 Major ENCS152 - - 2 1
using C++ Lab

ENCH151/ Engineering Chemistry Lab /


7 Major - - 2 1
ENPH151 Engineering Physics lab

Open
8 Open Elective-I 3 - - 3
Elective
Extention
9 VAC VAC-II Activities(community 2 - - 2
engagement service)
Applied Generative AI: Practical
10 SEC - - 4 2
Tools and Techniques

11 Proj ENSI152 Minor Project-I - - - 2

TOTAL 14 3 12 25
Semester III (Odd Semester)

Course
SN Category Course Title L T P C
Code

1 Major ENCS203 Discrete Mathematics 3 1 - 4

2 Major ENCS205 Data Structures 3 1 - 4

3 Major ENCS201 Java Programming 4 - - 4

R Programming for Data


4 Minor ENSP251 - 4 2
Science and Data Analytics Lab

5 Major ENCS253 Data Structures Lab - - 2 1

6 Major ENCS251 Java Programming Lab - - 2 1

Open
7 Open Elective -II 3 - - 3
Elective

8 VAC III VAC III 2 - - 2

9 AEC AEC011 Life Skills for Professionals-I 3 - - 3

10 INT ENSI251 Summer Internship-I - - - 2

11 AUDIT Competitive Coding Bootcamp- I 3 - - 0

TOTAL 21 2 8 26

*VAC-III
CODE COURSE TITLE L T P C
Design thinking & Innovations for
VAC170 - - - 2
Engineers

VAC171 AWS Cloud Fundamentals - - - 2

Web Development with open-source


VAC172 - - - 2
Frameworks
VAC173 Google Data Analytics - - - 2

Software Testing using Open-Source


VAC174 - - - 2
Frameworks
Database Management with Open-
VAC175 - - - 2
Source Frameworks
Cyber Security with Open-source
VAC176 - - - 2
Frameworks
Practical Robotics and UAV
VAC185 - - - 2
Applications
Applied Automotive Engineering:
VAC186 - - - 2
Hands-On Practices and Innovations
Practical Research Methodology for
VAC187 Engineers - - - 2
Semester IV (Even Semester)

Course
SN Category Course Title L T P C
Code

1 Major ENMA202 Probability & Statistics 3 1 - 4

Analysis and Design of


2 Major ENCS202 3 1 - 4
Algorithms

3 Major ENCS204 Database Management Systems 3 1 - 4

4 Minor ENSP204 Introduction to Data Science 4 - - 4

Analysis and Design of


5 Major ENCS256 - - 2 1
Algorithms Lab
Database Management Systems
6 Major ENCS254 - - 2 1
Lab

7 AEC Life Skills for Professionals-II 3 - - 3

Open
8 Open Elective -III 3 - - 3
Elective

9 Minor ENSP254 Data Science lab - - 2 1

10 PROJ ENSI252 Minor Project-II - - - 2

Competitive Coding Bootcamp-


11 AUDIT 3 - - 0
II

TOTAL 22 3 6 27
Semester V (Odd Semester)

Course
SN Category Course Title L T P C
Code

1 Major ENCS301 Theory of Computation 3 1 - 4

2 Major ENCS303 Operating Systems 3 1 - 4

3 Minor ENSP311 Machine Learning with Python 4 0 - 4

4 Major ENCS351 Operating System Lab - - 2 1

Machine Learning with Python


5 Minor ENSP361 - - 2 1
Lab

6 AEC AEC013 Life Skills for Professionals-III 3 - - 3

7 INT ENSI351 Summer Internship-II - - - 2

8 Major ENCS305 Software Engineering 4 - - 4

Competitive Coding Bootcamp-


9 AUDIT 3 - - 0
III

TOTAL 20 2 4 23
Semester VI (Even Semester)

Course
SN Category Course Title L T P C
Code
Computer Organization &
1 Major ENCS302 3 1 - 4
Architecture

2 Minor Discipline Specific Elective-I 4 - - 4

3 Major ENCS304 Computer Networks 3 1 - 4

Introduction of Neural Network


4 Major ENCS306 4 - - 4
and Deep Learning

5 Minor Discipline Specific Elective-I Lab - - 2 1

6 Major ENCS352 Computer Networks Lab - - 2 1

Introduction to Neural Networks


7 Major ENCS354 - - 2 1
& Deep Learning Lab

8 PROJ ENSI352 Minor Project-III - - - 2

9 AUDIT Competitive Coding Bootcamp IV 3 - - 0

TOTAL 17 2 6 21

Students can choose one of the following Discipline Specific Electives


Discipline Specific Elective I (Artificial Intelligence)

Minor ENSP302 Natural Language Processing 4 - - 4


(i)
Minor ENSP352 Natural Language Processing lab - - 2 1

Minor ENSP304 Image Processing & Computer Vision 4 - - 4


(ii)
Image Processing & Computer Vision
Minor ENSP354 - - 2 1
lab

Minor ENSP306 Introduction to Generative AI 4 - - 4


(iii)
Minor ENSP356 Generative AI lab - - 2 1

Minor ENSP308 Transfer Learning 4 - - 4


(iv)
Minor ENSP358 Transfer Learning lab - - 2 1
Semester VII (Odd Semester)

Course
SN Category Course Title L T P C
Code

1 Minor Discipline Specific Elective-II 4 - - 4

2 Minor Discipline Specific Elective-III 4 - - 4

3 Minor Discipline Specific Elective-II Lab - - 2 1

Discipline Specific Elective III


4 Minor - - 2 1
Lab

5 INT ENSI451 Summer Internship-III - - - 2

6 VAC VAC IV Career Readiness Boot Camp - - - 2

TOTAL 8 0 4 14

Note:
• Students can choose among the following Discipline Specific Electives:

Discipline Specific Elective II (Cyber Security)

Minor ENSP301 Secure Coding and Vulnerabilities 4 - - 4


(i) Secure Coding and Vulnerabilities
Minor ENSP351 - - 2 1
lab
Cyber Crime Investigation & Digital
Minor ENSP303 4 - - 4
Forensics
(ii)
Cyber Crime Investigation & Digital
Minor ENSP353 - - 2 1
Forensics lab
Minor ENSP305 AI in Cyber Security 4 - - 4
(iii)
Minor ENSP355 AI in Cyber Security Lab - - 2 1

Minor ENSP307 Social Media Security 4 - - 4


(iv)
Minor ENSP357 Social Media Security Lab - - 2 1

Discipline Specific Elective - III (Full Stack Development)

Mobile Application Development


Minor ENSP409 4 - - 4
using iOS
(i)
Mobile Application Development
Minor ENSP459 - - 2 1
using iOS Lab

Minor ENSP411 DevOps & Automation 4 - - 4


(ii)
Minor ENSP461 DevOps & Automation Lab - - 2 1

Minor ENSP413 .Net FRAMEWORK 4 - - 4


(iii)
Minor ENSP463 .Net FRAMEWORK Lab - - 2 1

Minor ENSP415 New Age Programming languages 4 - - 4


(iv)
New Age Programming languages
Minor ENSP465 - - 2 1
Lab
Semester VIII (Even Semester)

Course
SN Category Course Title L T P C
Code
Industrial Project/R&D
1 PROJ ENSI452 - - - 12
Project/Start-up Project

TOTAL 12
Evaluation Scheme (Theory):
Evaluation Components Weightage
Internal Marks (Theory)
1. Continuous Assessment (30 Marks)
(All the components to be evenly spaced)
Project/ Quizzes/ Assignments and Essays/ Presentations/
Participation/ Case Studies/ Reflective Journals (minimum
of five components to be evaluated) 30 Marks
2. Internal Marks (Theory) – Mid Term Exam 20 Marks
External Marks (Theory): - 50 Marks
End term Examination
Total 100 Marks

*Note: (It is compulsory for a student to secure 40% marks in Internal and End Term
Examination separately to secure minimum passing grade).

Evaluation Scheme (Laboratory):


Evaluation Components Weightage
Internal Marks (Practical) –
1. Conduct of Experiment 10 Marks
2. Lab Records 10 Marks
3. Lab Participation 10 Marks
4. Lab Project 20 Marks
External Marks (Practical): - 50 Marks
End term Practical Exam and Viva Voce
Total 100 Marks

*Note: (It is compulsory for a student to secure 40% marks in Internal and End Term Practical
Exam and Viva Voce separately to secure minimum passing grade).
Syllabus
Semester: 1

ENGINEERING CALCULUS
B. Tech (Computer Science and Engineering with
Program Name
specialization in Data Science)
Course Name: Course Code L-T-P Credits
Engineering Calculus ENMA101 3-1-0 4

Type of Course: Major


Version
Total Contact Hours
Pre-requisite(s): Calculus knowledge at higher secondary level

Course Perspective. This course is to familiarize students with techniques in calculus,


multivariate calculus, vector calculus, and their applications. It aims to equip students with
standard concepts and tools from intermediate to advanced levels that will enable them to
tackle more advanced mathematical and engineering problems relevant to their disciplines. The
course is divided into 4 modules:
a) Differential Calculus- I
b) Multivariable Calculus (Partial Differentiation and applications)
c) Multivariable Calculus-II (Integration)
d) Vector Calculus

The Course Outcomes (COs). On completion of the course the participants will be:
COs Statements

Recall fundamental concepts such as limits, derivatives, integrals, and convergence


CO 1
tests for series and sequences

Understand and interpret the geometric interpretations of calculus theorems like


CO 2
Mean Value Theorem and Taylor's Theorem

Apply differential calculus techniques to optimize engineering solutions, including


finding maxima and minima of functions. Use multivariable calculus methods to
CO 3
calculate volumes, surface areas, and centers of mass in practical engineering
scenarios

Analyze complex functions using Taylor and Maclaurin series for approximation and
CO 4
representation

CO = Course outcomes. A student is expected to have learnt concepts and


demonstrated/developed abilities or skills related to strategic management at the end of the
course.

Course Outline:

Unit Number: 1 Title: Differential Calculus- I No. of hours: 10

Content:
▪ Introduction to limits, continuity, and differentiability.
▪ Rolle’s Theorem, Lagrange’s Mean value theorem with geometrical interpretation and
applications.
▪ Cauchy’s Mean value Theorem.
▪ Taylor’s Series.
▪ Applications of definite integrals to evaluate surface areas and volumes of revolutions of
curves (Cartesian coordinates).
▪ Successive Differentiation, Leibnitz theorem and its application.
▪ Curve tracing in Cartesian and Polar coordinates.
▪ Infinite series: Tests for convergence of series (Comparison, Ratio, Root test)
▪ Alternating series
▪ Absolute convergence
▪ Conditional convergence.
Title: Multivariable Calculus (Partial
Unit Number: 2 No. of hours: 10
Differentiation and applications)
Content:
▪ Partial derivatives.
▪ Total derivative.
▪ Euler’s Theorem for homogeneous functions.
▪ Taylor and Maclaurin theorems for functions of one and two variables.
▪ Maxima and Minima of functions of several variables.
▪ Lagrange Method of Multipliers.

Unit Number: 3 Title: Multivariable Calculus-II (Integration) No. of hours: 10

Content:
▪ Area between two curves; Polar Coordinates.
▪ Volumes by slicing, Washer and Shell Methods.
▪ Length of a plane curve.
▪ Areas of Surfaces of Revolution.
▪ Evaluation of Double Integrals (Cartesian and polar coordinates).
▪ Change of order of integration (Cartesian form).
▪ Evaluation of Triple Integrals: Change of variables (Cartesian to polar for double,
Cartesian to Spherical and Cylindrical polar for triple integrals).
▪ Applications: Areas (by double integrals) and volumes (by double and triple integrals).
▪ Centre of mass and centre of gravity (Constant and variable densities).

Unit Number: 4 Title: Vector Calculus No. of hours: 10

Content:
▪ Vector differentiation: Gradient, Curl, and Divergence with physical interpretation.
▪ Directional derivatives, Tangent and Normal planes.
▪ Vector Integration: Line integral, Surface integral, Volume integral.
▪ Applications to work done by the force
▪ Gauss’s Divergence theorem, Green’s theorem, Stoke’s theorem (without proof) and
applications.

Learning Experience
▪ Interactive Lectures: Utilize PPTs and visual aids to introduce and illustrate key calculus
concepts with software tools like MATLAB.
▪ Theory Assignments: Challenge students with problem-based assignments that apply
calculus to real engineering problems.
▪ Lab Projects: Apply calculus in hands-on lab sessions and projects, solving real-world
scenarios.
▪ Question Bank & Model Papers: Provide a question bank and model papers for continuous
assessment and exam preparation.
▪ Group Work: Facilitate collaborative projects and problem-solving to enhance peer
learning and teamwork.
▪ Continuous Feedback: Offer regular assessments and feedback, with support available
through office hours and online forums.
▪ Case Studies: Use real-world case studies to connect theoretical concepts with practical
applications.

Textbooks:
• G.B. Thomas and R.L. Finney, Calculus and Analytic Geometry, 9th Edition, Pearson,
Reprint, 2002.
Reference Books:
• B. V. Ramana, Higher Engineering Mathematics, Tata Mc Graw-Hill, 2008.
• B. S. Grewal, Higher Engineering Mathematics, Khanna Publisher, 2005.
• R K. Jain & S R K. Iyenger, Advance Engineering Mathematics, Narosa Publishing House,
2002.
• E. Kreyszig, Advanced Engineering Mathematics, John Wiley & Sons, 2005.
• Ray Wylie C and Louis C Barret, Advanced Engineering Mathematics, Tata Mc-Graw-
Hill, Sixth Edition.
Additional Readings:
1. Link to NPTEL course contents: https://onlinecourses.nptel.ac.in/noc18_ma05/preview
2. Link to topics related to course:
https://www.whitman.edu/mathematics/calculus_online/chapter14.html
ENGINEERING PHYSICS

B. Tech (Computer Science and Engineering


Program Name
with specialization in Data Science)
Course Name: Course Code L-T-P Credits
Engineering Physics ENPH101 4-0-0 4

Type of Course: Major


Version
Total Contact Hours
Pre-requisite(s), if any: Integration/Differentiation

Course Perspective. This course introduces students to the fundamental concepts of


Engineering Physics, bridging the gap between theoretical physics principles and practical
engineering applications. Engineering Physics is crucial for understanding and designing new
technologies and systems in various engineering fields such as electronics, materials science,
and mechanical engineering. Students will explore core topics including mechanics, Optics,
Polarization, and modern physics, with a special emphasis on their relevance to real-world
engineering problems. The course is divided into 4 modules:
a) Mechanics
b) Optics
c) Polarization
d) New Engineering Materials

The Course Outcomes (COs). On completion of the course the participants will be:

COs Statements

Understand the principles and applications of lasers, fiber optics, and


CO 1
electromagnetic waves.

Apply the concepts of polarization to analyze and manipulate light in various optical
CO 2
systems.
Evaluate the properties and applications of dielectric materials, superconducting
CO 3
materials, and nanomaterials in engineering contexts.

Design and propose innovative applications of lasers, fiber optics, and smart
CO 4
materials for specific engineering challenges.

Analyze and solve problems related to the behavior of electromagnetic waves,


CO 5
polarization, and optical communication systems.

CO = Course outcomes. A student is expected to have learnt concepts and


demonstrated/developed abilities or skills related to strategic management at the end of the
course.

Course Outline:

Unit Number: 1 Title: Mechanics No. of hours: 10

Content:
Centre of mass, centre of mass of two particle system and a rigid body, Rotational motion,
Moment of Inertia and its physical significance, Radius of gyration, Acceleration due to gravity,
simple harmonic motion, differential equation of S.H.M., Examples of S.H.M. (simple and
compound pendulum)

Unit Number: 2 Title: Optics No. of hours: 10

Content:
Light: Introduction of light, properties of light, Dual Nature of light, refraction, Refraction by
prism, Interference of light, interference by divison of wavefront (Young’s double slit
experiment), Interference by division of wave amplitude (Newton’s ring), difference between
diffraction and interference, types of diffraction, Fraunhoffer diffraction (single and double slit),
theory of plane diffraction grating, determination of wavelength of a spectral line using
transmission grating
Laser: Introduction, principle of Laser, stimulated and spontaneous emission, Ruby laser, He-
Ne Laser, Application of Lasers.

Unit Number: 3 Title: Polarization No. of hours: 10


Content:
Polarization: Polarization by reflection and refraction, Brewster's law, double refraction, nicol
prism, quarter and half-wave plates, Production and analysis of circularly and elliptically
polarized light

Unit Number: 4 Title: New Engineering Materials No. of hours: 10

Content:
Dielectric materials: Definition – Dielectric Breakdown – Dielectric loss – Internal field –
Claussius Mossotti relation.
Superconducting materials: Introduction – Properties- Meissner effect – Type I & Type II
superconductors – BCS theory-Applications.
Nanomaterials: Introduction – Synthesis of nano materials – Top down and Bottom-up
approach- Ball milling- PVD method- Applications. Smart materials: Shape memory alloys-
Biomaterials (properties and applications)

Learning Experience for Engineering Physics


• Interactive Lectures: Use simulations and visual aids to explain key concepts in
mechanics, optics, polarization, and new materials.
• Hands-On Labs: Conduct experiments with lasers, optics, and materials. Students
measure properties and analyze results in practical settings.
• Group Projects: Apply concepts to design optical systems, analyze material behavior,
and explore smart material applications.
• Assignments & Case Studies: Solve problems and study real-world applications, such
as superconductors and nanomaterials.
• Support & Feedback: Provide ongoing support through office hours and online forums.
Offer detailed feedback on assignments and projects.
• Assessments: Include quizzes, lab reports, and exams to evaluate understanding and
application of course content.

Text and Reference Book


1. Fundamentals of Physics" by David Halliday, Robert Resnick, and Jearl Walker
2. University Physics with Modern Physics" by Hugh D. Young and Roger A. Freedman
3. Engineering Physics" by Gaur and Gupta
4. Concepts of Modern Physics" by Arthur Beiser
5. Physics for Scientists and Engineers" by Raymond A. Serway and John W. Jewett

Additional Readings:
Online Learning Resources for Engineering Physics
R 1. MIT OpenCourseWare - Physics
• MIT offers a variety of free courses in physics that cover topics from classical
mechanics to quantum physics.
• Link: MIT OpenCourseWare Physics
R 2. Physics LibreTexts
• A comprehensive online library covering numerous topics in physics at various
levels of complexity. It's part of the LibreTexts project, which aims to develop
freely accessible textbooks.
• Link: Physics LibreTexts
ENGINEERING PHYSICS LAB
B. Tech (Computer Science and Engineering with
Program Name
specialization in Data Science)
Course Name: Course Code L-T-P Credits
Engineering Physics Lab ENPH151 0-0-2 1

Type of Course: Major


Contact Hours
Version
Pre-requisite(s), if any: Integration/Differentiation

Defined Course Outcomes

COs

Understand the principles and concepts related to the experiments involving bar
CO 1 pendulum, flywheel, Kater's pendulum, Newton's ring apparatus, plane diffraction
grating, spectrometer, and half shade polarimeter.
Apply the principles and concepts learned to conduct experiments and analyze
CO 2 experimental data, plot graphs, and interpret the results to determine various
physical quantities.
Evaluate the accuracy and reliability of experimental measurements and results
CO 3
obtained from the conducted experiments.
Apply critical thinking and problem-solving skills to troubleshoot experimental
CO 4 setups, identify sources of errors, and propose solutions to improve the accuracy
and precision of measurements
Lab Experiments
Ex. Experiment Title Mapped
No CO/COs
1 To plot a graph between the distance of the knife edge from CO2, CO3
the center of gravity and the time period of the bar
pendulum. From the graph, find the acceleration due to
gravity, the radius of gyration and the moment of inertia of
the bar about an axis.
2 To determine the moment of inertia of a flywheel about its CO1, CO2,
own axis of motion. CO3, CO4
3 To determine the value of acceleration due to gravity using CO1, CO2,
Kater`s pendulum. CO3, CO4
4 To determine the wavelength of sodium light using CO1, CO2,
Newton`s ring apparatus. CO3
5 To determine the wavelength of prominent lines of mercury CO1, CO2,
by plane diffraction grating. CO3
6 To determine the refractive index of the material of the CO1, CO2,
prism for the given colours (wavelengths) of mercury light CO3
with the help of spectrometer.
7 To determine the specific rotation of cane sugar solution CO1, CO2,
with the help of half shade polarimeter. CO3, CO4
8 To determine the wavelength of He-Ne LASER using CO1, CO2,
transmission diffraction grating. CO3
CLEAN CODING WITH PYTHON

B. Tech (Computer Science and Engineering


Program Name
with specialization in Data Science)

Course Name: Course Code L-T-P Credits

CLEAN CODING WITH PYTHON ENSP101 4-0-0 4

Minor
Type of Course:

Pre-requisite(s), if any:

Course Perspective: This course covers essential Python concepts, data structures, functions,
error handling, advanced modules, and real-world applications like web scraping and database
handling. Students will gain a strong foundation in Python programming and be equipped to
work on a variety of projects and applications.

The course is structured into four comprehensive modules:


▪ Introduction to Python
▪ Python Data Structure
▪ Python Decorators and generators
▪ Python advanced modules

The Course Outcomes (COs). On completion of the course the participants will be able to:

COs Statements

CO 1 Work with user input to create fun and interactive programs.

CO 2 Develop, run and manipulate Python programs using Core data structures like Lists,
Dictionaries, and use of Strings Handling methods.

CO 3 Develop, run and manipulate Python programs using File Operations and searching pattern
using regular expressions.

CO 4 Determine the need for scraping websites and working with CSV, JSON and other file formats.

CO5 Create simple games with images, animations, and audio using our custom beginner-friendly
programming library.
CO = Course outcomes. A student is expected to have learnt concepts and demonstrated/developed
abilities or skills related to strategic management at the end of the course.

Course Outline:

Unit Number: 1 Title: Introduction to Python No. of hours: 8

Content:

Python Introduction and Setup: Command Line Basics, Installation of Python. TextEditor (VS Code,
PyCharm, Anaconda)
Python basics and control structures: Python data types,Numbers, Variables, Getting input from the
user, Operators,Statements (If, else, elif), Nested statements,Loops and loop control statements (Break,
continue and pass), Strings (Indexing, slicing and formatting).

Unit Number: 2
Title: Python Data Structure No. of hours: 8

Content:
Python Data Structures: Lists, Tuples, Sets, Dictionaries.
Methods and Functions: Introduction to functions, def keyword, *args and **kwargsin python, exercise
on functions, Lambda expressions, Map and Filter functions.

Unit Number: 3 Title: Python Decorators and generators


No. of hours: 8

Content :

Modules and Package : Installation using pip


Errors and Exception Handling: Errors, Exceptions, Try and Except Statement,Catching Specific
Exception, Try with else, Finally, Keyword, Raising an exception.
File Handling using Python

Unit Number: 4 Title: Python advanced modules


No. of hours: 8

Content:

Python advanced modules: Datetime module, Math and Random module, OSmodule
Regular Expressions: RE module

Web Scraping using Python: Web Scraping libraries and practical implementationWorking with images using
python
Unit Number: 5 Title: Working with Excelsheets and CSV files No. of hours: 8
Content:

Python GUI programming: Tkinter, Adding Widgets, Buttons etc.SQL queries (DDL, DML, DCL, TCL) – Joins,
Sub-Queries, Constraints and Inbuilt functions (Date, String, Math)Database handling in python using MySQL
db. – Fetching and Inserting datausing MySQL db

Evaluation Scheme:

Evaluation Components Weightage

Internal Marks (Theory)

I) Continuous Assessment (30


Marks)

(All the components to be evenly spaced)

Project/ Quizzes/ Assignments and Essays/


Presentations/ Participation/ Case Studies/
Reflective Journals (minimum of five
components to be evaluated) 30 Marks

II) Internal Marks (Theory) – Mid 20 Marks


Term Exam

External Marks (Theory): - 50 Marks

End term Examination

Total 100 Marks

Note: (It is compulsory for a student to secure 40% marks in Internal and End Term Examination separately to
secure minimum passing grade).

Text & References

1. R. Nageswara Rao, “Core Python Programming”, Dreamtech

2. Wesley J. Chun. “Core Python Programming, Second Edition”, Prentice Hall

3. Michael T. Goodrich, Roberto Tamassia, Michael H. Goldwasser, “Data Structures and


Algorithms in Python”, Wiley

Additional Readings:

R 1. https://www.tutorjoes.in/python_programming_tutorial/
R 2. https://www.udemy.com/course/100-days-of-code/
R 3. https://favtutor.com/blog-details/7-Python-Projects-For-Beginners
R 4. https://github.com/NaviRocker/100-days-of-python
R 5. https://hackr.io/blog/python-projects
Online Learning Resources

1. Codecademy

• Offers interactive Python courses that cover basic to advanced programming


concepts, including data types, control structures, functions, and object-oriented
programming.

• Link: Codecademy Python

2. Python.org

• The official Python website provides a comprehensive beginner's guide,


documentation, and tutorials to get started with Python programming.

• Link: Python Beginner's Guide


CLEAN CODING WITH PYTHON LAB

Programme Name: B. Tech (Computer Science and Engineering with


specialization in Data Science)
Course Code L-T-P Credits
Course Name:
ENSP151 0-0-2 1
Clean Coding with Python
Lab

Type of Course: Minor

Pre-requisite(s), if any: Concepts of Python

Proposed Lab Experiments


Defined Course Outcomes

Statements
COs

Develop solutions to simple computational problems using


CO 1
Pythonprograms.
Solve problems using conditionals and loops in Python.
CO 2
DevelopPython programs by defining functions and calling them.
Implement Python lists, tuples and dictionaries for
CO 3
representingcompound data.
CO 4 Understand the Machine Learning Algorithms.

List of Experiments:

Ex. No Experiment Title Mappe


d
CO/CO
s
1 Develop programs to understand the control structures CO 1
ofpython
2 Develop programs to implement list CO 3
3 Develop programs to implement Dictionary CO 3
4 Develop programs to implement tuples CO 3
5 Develop programs to implement function with stress on CO 2
scoping
6 Develop programs to implement classes and objects CO 3
7 Develop programs to implement exception handling. CO 1
8 Develop programs to implement linear search and CO 2
binarysearch.
9 Develop programs to implement insertion sort CO 2
10 Develop programs to implement bubble sort. CO 2
11 Develop programs to implement quick sort. CO 2
12 Develop programs to implement heap sort. CO 2

Online learning resources


• Codecademy

o Interactive coding platform that offers hands-on Python courses, teaching both
the basics and more advanced topics in Python. Ideal for practicing specific
programming tasks.

o Link: Codecademy Python Course

• HackerRank

o Provides a vast range of programming problems across various domains of


computer science, along with a dedicated Python domain. Great for practicing
coding skills and understanding algorithms.

o Link: HackerRank Python

• LeetCode

o Known for its extensive array of programming challenges that can help improve
your understanding of data structures and algorithms. It's particularly good for
preparing for technical job interviews.

o Link: LeetCode
DATA ANALYSIS WITH TABLEAU AND KNIME

B. Tech (Computer Science and Engineering


Program Name
with specialization in Data Science)

Course Name: Course Code L-T-P Credits

Data Analysis with Tableau & SEC041 0-0-4 2


KNIME
SEC
Type of Course:

Pre-requisite(s), if any: Basic knowledge of Excel & data numbers

Course Perspective. This course provides a comprehensive understanding of how to


transform raw data into meaningful insights through visual representation using Tableau. It
begins with the fundamentals of data visualization, emphasizing its importance in decision-
making and comparing various tools, with a special focus on Tableau. Students learn to
navigate the Tableau interface, connect to diverse data sources, and utilize Tableau Prep for
data transformation. The course covers creating and customizing a wide range of visualizations,
including charts, maps, and dashboards, to effectively communicate data insights.

The course is divided into 4 modules:

a) Introduction to Business Analytics and Business Intelligence

b) Information Design using Tableau Software

c) Advanced Visualization

d) Data Analytics Using KNIME Analytics Platform

e) Advance Function

The Course Outcomes (COs). On completion of the course the participants will be:

COs Statements

Demonstrate the ability to use technical skills in descriptive analytics to support


CO 1
business decision- making.

CO 2 Develop proficiency using Tableau software for data visualisation at a basic level.
Use Tableau to load and visualise data to produce insightful and helpful reports from
CO 3
the data.

Design, create, test, and evaluate predictive models utilising KNIME Analytics and
CO 4
Create effective Machine Learning workflows.

CO = Course outcomes. A student is expected to have learnt concepts and


demonstrated/developed abilities or skills related to strategic management at the end of the
course.

Course Outline:

Unit Title: Introduction to Business


No. of hours: 8
Number: 1 Analytics and Business
Intelligence
Content Summary:
Brief Introduction of course, Introduction to Data Analysis, Types of Business Analytics,
Business Intelligence, Business Analytics and Intelligence in decision making process,
What is Data Visualization and why is it important?, Visual Perception, Brief History of
Data Visualization, Design Principles – Pre-attentive Attributes and Thinking Systems,
Data Processing, Descriptive statistics introduction for problem solving, correlation,
Statistical test.
Unit Title: Information Design using
No. of hours: 8
Number: 2 Tableau Software
Content Summary:
Six steps of data science processes, define research goals, data retrieval,cleansing data,
and correct errors as early as possible, integrating – combine data from different sources,
transforming data, exploratory data analysis, Data modelling, model and variable
selection, model execution, model diagnostic and
model comparison, presentation and automation.

Unit
Title: Advanced Visualization No. of hours: 8
Number: 3
Content Summary:
Multidimensional Visualization, Infographics, Level of Details, Building Gapminder in
Tableau, Basic Geo-Coding for Tableau, Animations, Capstone Calculated Field, Capstone
Story UK Bank, Capstone Nyc Salary Viz, Capstone Grouping.
Title: Data Analytics Using
Unit Number: 4
KNIME Analytics Platform No. of hours: 8

Content Summary:
Type of Analytics, Predictive analytics, regression, classification and clustering,
Introduction to KNIME Analytics Platform, data blending, Data manipulation and
aggregation, data mining, KNIME workbook, Data exploration, modeling and reporting in
KNIME, Database operation, web, date and time, Flow Variable, loops in KNIME, advance
reporting. Introduction to SQL, Joins, subqueries, store routine, SQL and Tableau
problems, Case Study

Text and Reference Book

DATA ANALYSIS WITH TABLEAU AND KNIME Complete Reference: Bring Your Data to Life
Book by Brian Knight, Devin Knight, and Mitchell Pearson.
ENGINEERING DRAWING & WORKSHOP
LAB
B. Tech (Computer Science and
Program Name Engineering with specialization in Data
Science)
Course Name: Course Code L-T-P Credits
Engineering Drawing and
SEC033 0-0-4 2
Workshop Lab
Type of Course: SEC

Version

Contact Hours 30

Pre-requisite(s), if any:

Lab Experiments

Defined Course Outcomes

COs Statements

CO1 Understand the polygons, circles and lines with different geometric conditions

Draw the projection of points, lines and planes under different conditions and
CO2
orthographic views from isometric views of simple objects

Determine manufacturing methods in different fields of engineering and


CO3
Practical exposure to different fabrication techniques

CO4 Creation of simple components using different materials

Exposure to some of the advanced and latest manufacturing techniques being


CO5
employed in the industry.
EXPERI EXPERIMENT TITLE
MENT
NO.
Engineering Graphics
1 Manual drafting of basic geometric constructions and shapes using set squares,
and compass.

2 Understand and draw different projections, apply to create points and lines, in all
quadrants.
3 Draw orthographic projections of simple objects like cubes, cylinders, and prisms.
4 Create isometric drawings of simple assemblies.
5 Introduction to CAD System & AutoCAD and understand basic commands.
6 Use AutoCAD to recreate the manually drawn orthographic projections.
7 Create similar drawings using an open-source tool like LibreCAD.
8 Model simple objects (like a nut and bolt) in 3D using AutoCAD or similar software.
9 Draw and assemble a small mechanical device (like a piston or gear assembly)
using CAD software
10 Design and draw an entire machine or a significant part of it, incorporating all the
skills learned (Mini Project)
Workshop Technology
1 Demonstrate safe handling and use of various hand tools and power tools.
2 File, saw, and drill a metal piece to create a simple object such as a fitting job.
3 Create a joint or assemble parts using hand tools, ensuring tight fit and proper
alignment.
4 Perform simple welding and brazing tasks to join metal pieces.
5 Design and create a shaft on lathe machine using MS Rod.
6 Design and create a flat V Job on Shaper machine using MS Block.
7 Design and manufacture a sheet metal tray, In sheet Metal Shop.
8 Measure, cut, and assemble wooden parts to create a simple structure, such as
frame or T-Joint.
9 Ability to program basic CNC machine operations and understand CNC machining
processes.
10 Design and 3D print a small part or model using CAD software.

Learning Experiences

▪ Hands-on practice with manual drafting, fabrication, and CAD tools enhances real-world
engineering skills.
▪ Technology integration using AutoCAD, CNC machines, and 3D printing prepares students for
modern industry standards.
▪ Collaborative projects foster teamwork and problem-solving in practical engineering
applications.
▪ Continuous assessment and personalized feedback ensure consistent progress and
improvement.
▪ Access to digital resources via Moodle LMS and video lectures supports flexible and self-paced
learning.
▪ Emphasis on safety teaches proper use of tools and equipment, ensuring professional
practices.
▪ Exposure to latest techniques keeps students updated with advanced manufacturing methods
and technologies.
SEMESTER: 2

LINEAR ALGEBRA AND ORDINARY


DIFFERENTIAL EQUATIONS

B. Tech (Computer Science and Engineering with


Program Name
specialization in Data Science)
Course Name: Course Code L-T-P Credits
Linear Algebra and Ordinary
Differential Equations ENMA102 3-1-0 4
Major
Type of Course:

Pre-requisite(s): Single variable calculus, Matrices, Differentiation and Integration

Course Perspective. This course aims to equip engineering students with the fundamental
mathematical tools of linear algebra and ordinary differential equations (ODEs) for solving
various engineering problems. By the end of the course, students will be able to: Analyze and
solve systems of linear equations using matrix operations and numerical techniques, understand
eigenvalues, eigenvectors, and their applications in engineering problems, work with vector
spaces, linear transformations, and inner product spaces, and solve first-order and second-order
ODEs using various analytical and numerical methods. The course is divided into 4 modules:
a) Matrices and Systems of Linear Equations
b) Eigenvalues and Eigenvectors
c) Vector Spaces and Numerical Linear Algebra
d) First-Order and Second-Order Ordinary Differential Equations

The Course Outcomes (COs). On completion of the course the participants will be:

COs Statements

Remember basic concepts in linear algebra and ODEs (e.g., matrices, determinants,
CO 1
eigenvalues, eigenvectors, differential equations).

Understand and explain the properties and relationships between different concepts
CO 2
in linear algebra and ODEs.
Apply matrix operations, solve systems of linear equations, and analyze eigenvalues
CO 3
and eigenvectors in engineering contexts.

Analyze and identify the appropriate methods to solve first-order and second-order
CO 4
ODEs based on the problem type.

CO 5 Assess the accuracy and stability of numerical solutions to linear systems and ODEs.

Course Outline:
Title: Matrices and Systems of Linear
Unit Number: 1 No. of hours: 10
Equations
Content:
• Introduction to matrices and their operations (addition, subtraction, scalar multiplication,
multiplication).
• Types of Matrices (Symmetric, Skew-Symmetric, Hermitian, Skew-Hermitian, Unitary,
Orthogonal).
• Introduction to Determinants and their properties.
• Systems of Linear Equations: Homogeneous and non-homogeneous systems.
• Gaussian Elimination and Row Echelon Form for solving systems of linear equations.
• Rank of a matrix and its connection to solvability of systems.

Unit Number: 2 Title: Eigenvalues and Eigenvectors No. of hours: 10

Content:
• Definition and properties of eigenvalues and eigenvectors.
• Importance of eigenvalues and eigenvectors in engineering problems (e.g., stability
analysis, vibration modes).
• Diagonalization of matrices (when possible).
• Properties of eigenvalues and eigenvectors of special matrices (Symmetric, Skew-
Symmetric, Hermitian, Skew-Hermitian, Unitary, Orthogonal).
• Introduction to minimal polynomial and characteristic polynomial.
• Cayley Hamilton theorem

Unit Number: 3 Title: Vector Spaces No. of hours: 10


Content:
• Introduction to vector spaces: Definition, axioms, subspaces, spanning sets, linear
independence, basis, and dimension.
• Row space, column space, and null space of a matrix.
• Introduction to linear transformations and their representation using matrices.
• Numerical Methods for Linear Algebra:
o Gaussian elimination with LU decomposition for efficient solution of linear systems.
o Iterative methods (Jacobi, Gauss-Seidel) for solving large systems.
o Introduction to condition number and its implications for numerical stability.

Unit Number: 4 Title: Ordinary Differential Equations No. of hours: 10

Content:
Introduction to ordinary differential equations (ODEs) and their classification.
First-Order Differential Equations:
o Separable differential equations and methods for solving them.
o Exact differential equations and integrating factors.
o Applications of first-order ODEs in engineering (e.g., population growth, decay
models).
Second-Order Linear Differential Equations:
o Homogeneous and non-homogeneous equations.
o Method of undetermined coefficients for solving non-homogeneous equations.
o Variation of parameters for solving non-homogeneous equations.
o Applications of second-order ODEs in engineering (e.g., spring-mass systems,
electrical circuits).

Learning Experiences
▪ Understand matrix operations and types through lecture PPTs and theory assignments,
solving linear systems using Gaussian Elimination and Rank analysis.
▪ Explore eigenvalues and eigenvectors using course materials and problem-based
assignments, focusing on their engineering significance and matrix diagonalization.
▪ Learn and solve ordinary differential equations (ODEs) using theory and lab assignments,
emphasizing first-order and second-order equations and their engineering applications.
▪ Reinforce understanding of matrix and ODE techniques with sample question papers and
a comprehensive question bank, ensuring application of theoretical concepts in practical
scenarios.
▪ Utilize course packet resources to integrate theoretical knowledge with practical problem-
solving skills, enhancing the learning experience through varied instructional materials.

Textbooks
1. Linear Algebra and Its Applications" by David C. Lay, Steven R. Lay, and Judi J.
McDonald.
2. "Linear Algebra" by Gilbert Strang.
3. Advanced engineering mathematics: Kreyszig; Wiley. ISBN : 978-81-265-3135-6
4. Advanced engineering mathematics: Peter V. O’Neil Cengage Learning. ISBN : 978-81-
315-0310-2
5. "Differential Equations with Boundary-Value Problems" by Dennis G. Zill and Michael R.
Cullen.
6. "Ordinary Differential Equations" by Morris Tenenbaum and Harry Pollard.

Reference Books
1. "Matrix Analysis" by Roger A. Horn and Charles R. Johnson.
2. "Numerical Linear Algebra" by Lloyd N. Trefethen and David Bau III.
3. "Theory and Problems of Linear Algebra" (Schaum's Outline) by Seymour Lipschutz and
Marc Lipson.
4. "Ordinary Differential Equations and Stability Theory" by David A. Sanchez.
OBJECT ORIENTED PROGRAMMING
USING C++
B. Tech (Computer Science and Engineering with
Program Name
specialization in Data Science)
Course Name: Course Code L-T-P Credits
Object Oriented
ENCS102 4-0-0 4
Programming using C++

Type of Course: Major

Contact Hours 40

Version

Pre-requisite(s), if any: Fundamental knowledge of computers will be added


advantage

Course Perspective. This course introduces students to the advanced principles and
techniques of object-oriented programming (OOP) using C++. It is designed to build upon
foundational programming knowledge, particularly for those who have a basic understanding of
C programming. The course focuses on teaching students how to think about software
development in an object-oriented way, enabling them to design and implement software
solutions that are modular, extensible, and maintainable. The course is divided into 4 modules:
a) Foundations of Object-Oriented Programming
b) Classes, Objects, and Advanced Features
c) Inheritance, Polymorphism, and Software Engineering Principles
d) File Handling, Exception Management, and Unit Testing

The Course Outcomes (COs). On completion of the course the participants will be able to:

COs Statements
Understand the procedural and object-oriented paradigm with concepts of
CO 1
streams, classes, functions, data and objects.

Analyze dynamic memory management techniques using pointers, constructors,


CO 2
destructors, etc

Apply the concept of function overloading, operator overloading, virtual functions


CO 3
and polymorphism

Classify inheritance with the understanding of early and late binding, usage of
CO 4
exception handling, file handling and generic programming.

CO = Course outcomes. A student is expected to have learnt concepts and


demonstrated/developed abilities or skills related to strategic management at the end of the
course.

Course Outline:
Unit Title: Foundations of Object-Oriented
No. of hours: 10
Number: 1 Programming
Content Summary:

▪ Programming Approaches: Procedure-Oriented Approach vs. Object-Oriented


Approach
▪ Introduction to C++: Basic syntax and structure of a C++ program, Data Types and
Variables, Operators and Expressions, Control Structures, Functions, Arrays and Strings,
Pointers
▪ Basic Concepts of Object-Oriented Programming: Objects and Classes, Principles of
OOP: Abstraction, Encapsulation, Inheritance, Polymorphism, Dynamic Binding and
Message Passing
▪ Characteristics of Object-Oriented Languages: Benefits and features of OOP
languages

Unit
Title: Classes and Objects No. of hours: 10
Number: 2
Content Summary:
▪ Abstract Data Types and Classes: Concept of abstract data types, Objects and classes,
attributes, and methods
▪ C++ Class Declaration: Declaring classes in C++, State, identity, and behaviour of
objects
▪ Objects: Local Objects and Global Objects, Scope resolution operator
▪ Functions in C++: Friend Functions, Inline Functions
▪ Constructors and Destructors: Instantiation of objects, Types of constructors (default,
parameterized, copy), Static Class Data, Array of Objects, Constant member functions
and objects
▪ Memory Management Operators: New and delete operators for dynamic memory
allocation

Unit
Title: Inheritance and Polymorphism No. of hours: 10
Number: 3
Content Summary:
▪ Inheritance: Types of inheritance (single, multiple, hierarchical, multilevel, hybrid),
Access specifiers: public, private, and protected, Abstract Classes, Ambiguity resolution
using scope resolution operator and virtual base class
▪ Advanced Inheritance Concepts: Aggregation and composition vs. classification
hierarchy, Overriding inheritance methods
▪ Polymorphism: Types of Polymorphism (compile-time and run-time), Function
Overloading, Operator Overloading
▪ Pointers and Virtual Functions: Pointer to objects, this pointer, Virtual Functions and
pure virtual functions

Unit
Title: Advanced C++ Features No. of hours: 10
Number: 4
Content Summary:
▪ Strings and Streams: Manipulating strings, Streams and file handling, File streams and
string streams
▪ Operators and Error Handling: Overloading operators, Error handling during file
operations, Formatted I/O
▪ Generic Programming: Function templates, Class templates
▪ Exception Handling: Throwing an exception, The try block, Catching an exception,
Exception objects, Exception specifications, Rethrowing an exception, Catching all
exceptions

Learning Experience
▪ Lecture PPTs: Structured slides covering key concepts with embedded problem-solving
examples.
▪ Problem-Based Theory Assignments: Assignments integrating theory and practical
scenarios for concept application.
▪ Lab Assignments with Mini Projects: Hands-on coding tasks and mini projects to
implement OOP principles.
▪ Question Bank: Comprehensive set of practice questions and coding problems for self-
assessment.
▪ Sample Question Papers: Practice papers to simulate final exams and test understanding.
▪ Discussion Forums: Online forums for peer discussion and instructor support on
assignments and projects.

▪ Instructor-Led Clarification Sessions: Recorded Q&A sessions to address common


challenges and complex topics.
▪ Mini Projects: Capstone projects to integrate and apply all course concepts in a practical
context.

Text books:
T1: Robert Lafore, “Object-Oriented Programming in C++”, Sams Publishing, 4th Edition, 2004.
T2: E. Balagurusamy, “Object-Oriented Programming with C++”, McGraw Hill Education, 6th
Edition, 2017.

Reference Book
1. Schildt Herbert, “C++: The Complete Reference”, Wiley DreamTech, 2005.Parasons,
“Object Oriented Programming with C++”, BPB Publication, 1999.
2. Steven C. Lawlor, “The Art of Programming Computer Science with C++”, Vikas
Publication, 2002.
3. Yashwant Kanethkar, “Object Oriented Programming using C++”, BPB, 2004

Additional Readings:
Online Learning
R 1. C++ Documentation on cppreference.com
• A comprehensive reference that includes detailed documentation of C++ syntax,
library functions, and features organized by version.
• Link: cppreference.com

R 2. LearnCpp.com
• A free website that teaches the basics and subtleties of C++ programming. It
covers everything from basic syntax to advanced features.
• Link: LearnCpp.com
• Link: Pluralsight C++ Path
R 3. GitHub
• Explore and contribute to open-source C++ projects, which can provide
practical experience and exposure to real-world coding practices and
collaboration.
• Link: GitHub
OBJECT ORIENTED PROGRAMMING
USING C++ LAB
B. Tech (Computer Science and Engineering
Program Name
with specialization in Data Science)
Course Name: Course Code L-T-P Credits
Object Oriented Programming using ENCS152 0-0-2 1
C++ Lab
Type of Course: Major

Pre-requisite(s), if any: Basics of C programming

Lab Experiments
Defined Course Outcomes

COs Lab tasks

Implement a simple calculator in C++ that can perform basic arithmetic operations such
as addition, subtraction, multiplication, and division. The program should prompt the
CO 1
user to enter two numbers and an operator, then display the result. Use appropriate
data types and control structures to handle the calculations and validate user inputs.
Create a C++ program that checks if a given number is a prime number. The program
CO1 should prompt the user to enter a number, then use control structures and functions to
determine if the number is prime. Display an appropriate message indicating the result.
Implement a C++ program that sorts an array of integers using the bubble sort
CO1 algorithm. The program should allow the user to input the array elements, then use a
function to sort the array in ascending order. Display the sorted array as the output.
Write a C++ program to demonstrate pointer arithmetic by creating an array of integers
and using pointers to traverse and manipulate the array elements. Implement functions
CO1
to calculate the sum, average, and maximum value of the array using pointer
arithmetic.
Write a C++ program to perform basic matrix operations such as addition, subtraction,
CO1
and multiplication. Use two-dimensional arrays to represent the matrices and
implement functions for each operation. Ensure the program handles matrices of
appropriate sizes and displays the results accurately.
Create a C++ program that generates the Fibonacci sequence up to a specified number
CO1 of terms. Use a loop and control structures to generate the sequence and store the
terms in an array. Display the generated sequence as the output.
Write a C++ program to evaluate a string expression containing numbers, arithmetic
CO1 operators (+, -, *, /), and parentheses. Implement a function that parses the expression
and computes the result, considering operator precedence and parentheses.
Write a C++ program to find all unique palindromic substrings in a given string. The
CO1 function should take a string as input and return a set of strings containing all unique
palindromic substrings.
Create a class Rational to represent rational numbers with attributes numerator and
denominator, implementing default, parameterized, and copy constructors, methods to
CO2
add, subtract, multiply, and divide rational numbers, overloading the << and >>
operators for input and output, and a friend function to compare two rational numbers.
Create a class Matrix that represents a 2D matrix with dynamic memory allocation,
implementing default, parameterized constructors, and a destructor, methods to add,
CO2
subtract, and multiply matrices, overloading the [] operator to access matrix elements,
and inline functions for basic matrix operations.
Create a class Student with attributes studentID, name, and grades (an array of
integers), implementing default, parameterized constructors, and a destructor,
CO2 methods to calculate the average grade and display student details, using constant
member functions to display details, and implementing dynamic memory allocation for
the grades array.
Create an abstract class Shape with a pure virtual function calculateArea(), deriving
classes Circle, Rectangle, and Triangle each with attributes relevant to their shapes,
CO2 implementing default and parameterized constructors, methods to calculate and display
the area of each shape, and an array of Shape pointers to store different shapes and
calculate their areas.
Create a class InventoryItem with attributes itemID, itemName, and quantity,
CO2 implementing default, parameterized, and copy constructors, methods to add, remove,
and display inventory items, overloading the ++ and -- operators to increase and
decrease item quantity, and implementing dynamic memory allocation for inventory
items.
Create a class Polynomial to represent a polynomial with dynamic memory allocation
for coefficients, implementing default, parameterized constructors, and a destructor,
CO2 methods to add, subtract, and multiply polynomials, overloading the +, -, and *
operators for polynomial operations, and friend functions to input and output
polynomials.
Develop a Vehicle Management System that demonstrates different types of inheritance
and polymorphism in C++. The system should manage various types of vehicles,
CO3
including cars, trucks, and motorcycles, and should be able to perform operations such
as adding new vehicles, displaying vehicle details, and comparing vehicles.
Create a base class Account with methods deposit() and withdraw(). Derive classes
SavingsAccount and CurrentAccount from Account. Overload the deposit() and
CO3
withdraw() methods in the derived classes to include additional parameters like interest
rate for SavingsAccount and overdraft limit for CurrentAccount.
Create a class ComplexNumber to represent complex numbers. Implement operator
overloading for +, -, *, and / operators to perform arithmetic operations on complex
CO3
numbers. Use inheritance to extend the class with additional functionality for polar
representation.
Create a base class Animal with a virtual function makeSound(). Derive classes Dog and
Cat from Animal, each implementing makeSound(). Write a function playWithAnimal()
CO3
that takes a pointer to Animal and calls makeSound(). Demonstrate polymorphism by
calling playWithAnimal() with pointers to Dog and Cat.
Create a base class Person with attributes name and age. Derive classes Student and
CO3 Teacher from Person. Further derive a class TeachingAssistant from both Student and
Teacher. Use a virtual base class to avoid ambiguity in accessing attributes of Person.
Create a base class Vehicle with attributes make and model, and methods start() and
stop(). Derive classes Car, Truck, and Motorcycle from Vehicle. Use dynamic memory
CO3
allocation (new and delete operators) to create and manage objects of these classes.
Implement a function to display details of all vehicles.
Write a C++ program that compresses a string using the counts of repeated characters.
CO4
For example, the string "aabcccccaaa" would become "a2b1c5a3". If the "compressed"
string would not become smaller than the original string, the function should return the
original string. Use streams for efficient string manipulation.
Write a template-based function in C++ to sort an array of any data type using the
CO4 quicksort algorithm. Ensure the function works with different data types such as
integers, floating-point numbers, and strings.
Create a custom exception class InvalidInputException in C++ to handle invalid inputs.
Implement a function that takes user input and throws an InvalidInputException if the
CO4
input is not valid. Use try, catch, and throw blocks to handle the exception and display
an appropriate error message.
Write a C++ program that reads a text file, processes the text to remove punctuation,
CO4 convert to lowercase, and count the frequency of each word. Use string streams for text
manipulation and file streams for reading and writing files.
Implement a template-based stack class in C++ that supports basic stack operations
CO4 such as push, pop, top, and isEmpty. Ensure the class works with different data types
and includes appropriate exception handling for stack underflow and overflow.
Write a C++ program that reads data from a file and processes it. Implement error
CO4 handling to catch exceptions if the file does not exist, is empty, or cannot be read. Use
exception specifications to define the exceptions that the functions might throw.
ENGINEERING CHEMISTRY
B. Tech (Computer Science and Engineering with
Program Name
specialization in Data Science)
Course Name: Course Code L-T-P Credits
ENGINEERING CHEMISTRY ENCH101 4-0-0 4
Type of Course: Major

Pre-requisite(s), if any: Nil

Course Perspective. This course introduces students to the fundamental concepts and
applications of chemistry in engineering. It is tailored specifically for engineering students to
understand the chemical principles underlying various technological processes and materials
essential in modern engineering. By exploring topics like water technology, chemical fuels,
battery technology, and polymers, the course aims to provide students with a robust foundation
in the chemical sciences that directly relates to their future fields of work. The course is divided
into 4 modules:
a) Water technology
b) Chemical Fuels
c) Battery Technology
d) Polymer

The Course Outcomes (COs). On completion of the course the participants will be:

COs Statements

Understand the methods for water hardness and alkalinity testing, and the basics
CO 1
of boiler water treatment.

Explain the process of dissolved oxygen determination and chemical oxygen


CO 2
demand analysis.

CO 3 Determine various methods to enhance the quantity & quality of Fuel.


Identify between hard and soft water, solve the related numerical problems on
CO 4
water purification and its significance in industry and daily life.

CO 5 Articulate basic concepts of chemistry in daily life.

CO 6 Design efficient process for water analysis and purification

Course Outline:

Unit Number: 1 Title: Water technology No. of hours: 10

Content Summary:
Introduction to Water Technology: Importance and applications of water in various
industries.
Water Analysis: Hardness: Determination by EDTA method, Alkalinity: Determination by
double indicator method.
Treatment of Boiler Feed Water
Internal Treatment: Phosphate conditioning, Colloidal conditioning, Calgon conditioning
External Treatment: on exchange process, Lime-soda process, Zeolite process
Determination of Dissolved Gases: Dissolved oxygen: Determination by Winkler’s method,
Chemical oxygen demand: Determination.
Boiler Scales Formation and Prevention: Formation and ill effects of boiler scales.,
Methods of prevention of scales.
Numerical Problems: Calculations related to water analysis and treatments.

Unit Number: 2 Title: Chemical Fuels No. of hours: 10

Content Summary:
Fuels: Introduction, classification, calorific value (HCV & LCV), Determination of calorific value
of fuel using Bomb calorimeter.
Solid fuel: Coal- its analysis by proximate and ultimate analysis, Numerical problems.
Liquid fuels: Refining of petroleum, Petroleum cracking, Reformation of petrol-explanation
with reactions, Knocking in IC engine, its ill effects and prevention of knocking. Anti-knocking
agent: Leaded and unleaded petrol. Power alcohol and its advantages. Synthetic petrol -
Bergius process.
Gaseous fuels: LPG, CNG and their applications.

Unit Number: 3 Title: Battery Technology No. of hours: 10

Content Summary:
Introduction to Battery Technology: Galvanic cell, Electrode potential, EMF of the cell, Cell
representation.
Batteries and Their Importance: Classification of batteries: Primary, Secondary, and
Reserve batteries. Examples of each type.
Battery Characteristics: Voltage, Capacity, Energy density, Power density, Energy
efficiency, Cycle life, Shelf life.
Commercial Batteries: Basic requirements for commercial batteries.
Construction, Working, and Applications: Ni-Cd battery, Lithium-ion battery.
Fuel Cells: Differences between batteries and fuel cells. Classification of fuel cells based
on: Type of fuel, Electrolyte, Temperature.

Unit Number: 4 Title: Polymer No. of hours: 10

Content Summary:
Basic Concepts of Polymers: Definition and types of polymers.
Types of Polymers: Thermoplastic polymers, Thermosetting plastics.
Preparation and Applications of Industrially Important Polymers: Natural rubber, Buna
S, Buna-N, Neoprene, Isoprene, Nylon-6, Nylon-6,6, Dacron, Terylene.
Advanced Polymers: Conducting polymers, Biodegradable polymers.

Learning Experiences:
▪ Hands-on Labs: Perform water hardness and alkalinity tests, and analyze fuels using
practical lab experiments.
▪ Interactive Simulations: Use simulations for water treatment processes and fuel
refinement to connect theory with real-world applications.
▪ Project-Based Learning: Design and propose solutions for water purification or battery
systems through hands-on projects.
▪ Problem-Based Assignments: Solve numerical problems related to water analysis, fuel
values, and polymers to reinforce learning.
▪ Group Discussions: Engage in discussions and peer reviews on environmental impacts
and technological advancements in fuels and batteries.
▪ ICT Integration: Access lecture materials, video content, and resources via Moodle LMS
for enhanced self-study and lab preparation.
▪ Continuous Feedback: Receive regular feedback and support through continuous
assessments and dedicated office hours for better understanding and improvement.

Text Books
T1: Principles of Physical Chemistry by B. R. Puri, L. R. Sharma and M. S. Pathania, S. Nagin
Chand and Co.
T2: Text book of Physical Chemistry by Soni and Dharmatha, S. Chand & Sons.
T3: Text book of Polymers science by Gowarikar and Vishwanathan.

Reference Books:
R 1. Corrosion Engineering by M. G. Fontana, Mc Graw Hill Publications.
R 2. Engineering Chemistry by Jain and Jain.

Additional Readings:
Basics of electrochemistry:
https://mrcet.com/downloads/digital_notes/HS/4%20ENGINEERING%20CHEMISTRY.pdf
Basics of polymer:
https://gnindia.dronacharya.info/APS/Downloads/SubjectInformation/Chemistry/Unit2/Lecture
_1_13022019.pdf
ENGINEERING CHEMISTRY LAB
B. Tech (Computer Science and
Program Name Engineering with specialization in Data
Science)
Course Name: Course Code L-T-P Credits
ENGINEERING CHEMISTRY LAB ENCH151 0-0-2 1
Type of Course: Major

Proposed Lab Experiments


Defined Course Outcomes
Students will learn and apply various experimental techniques commonly used in
CO1 chemistry labs, such as titrations, distillations, extractions, chromatography,
spectroscopy, and electrochemical methods.
Students will acquire proficiency in handling and operating laboratory equipment,
CO2 including but not limited to balances, pipettes, burettes, spectrophotometers, pH
meters, and other analytical instruments.
Students will develop skills in recording and analysing experimental data, including
CO3
data interpretation of results.
Students will gain hands-on experience in synthesizing various chemical compounds
CO4
and organic polymers
Students will learn to write concise and accurate laboratory reports, including
CO5
experimental procedures, observations, results, and conclusions.
Students will understand the ethical responsibilities and laboratory safety
CO6
protocols associated with conducting experiments.
Ex. No Experiment Title Mapped
CO/COs
1 Determination of temporary and permanent hardness in CO1, CO3, CO5
water sample using EDTA.
2 Determination of alkalinity in the given water sample. CO1, CO3, CO5
3 Determination of viscosity of given liquid. CO2, CO3, CO5
4 Determination of surface tension of given liquid. CO2, CO3, CO5
5 Determination of pH by pH-metric titration. CO1, CO3, CO5
6 Preparation of Phenol-formaldehyde and Urea- CO4, CO5, CO6
formaldehyde resin
7 To determine the iron concentration in the given water CO1, CO3, CO5
sample by Spectrophotometer using potassium
thiocyanate as colour developing agent.
8 Determination of chloride content in water sample. CO1, CO3 CO5,
CO6
9 Estimation dissolved oxygen (DO) content in the given CO1, CO3, CO5
water sample by Winkler’s method.
10 Determination of iron content in the given solution by CO1, CO3, CO5
Mohr’s method.
11 Determination of rate constant of hydrolysis of esters. CO3, CO5
12 To determine the Iron content in the given salt by using CO1, CO3, CO5
external indicator
13 Determination of wavelength of absorption maximum CO2, CO3, CO5
and colorimetric estimation of Fe3+ in solution
14 Determination of molar absorptivity of a compound CO2, CO3, CO5
(KMnO4 or any water-soluble food colorant).
15 Preparation of a nickel complex [Ni(NH3)6]Cl2 and CO4, CO5, CO6
estimation of nickel by complexometric titration.
16 Synthesis of drug like Aspirin, /Paracetamol etc. CO4, CO5, CO6
Applied Generative AI: Practical Tools
and Techniques
B. Tech (Computer Science and
Program Name Engineering with specialization in
Data Science)
Course Name: Course Code L-T-P Credits
Applied Generative AI: Practical 0-0-4 2
Tools and Techniques for the
Modern Professional
Type of Course: SEC

Defined Course Outcomes


CO Statements
1 Apply basic functionalities of Hugging Face and LangChain to generate text-
based applications and automate simple tasks
2 Analyze ethical dilemmas and create basic data visualizations using GenAI
tools, automating standard business communications and financial
predictions.
3 Create roleplaying chatbots, automate market insights extraction, and
generate social media content using GenAI.
4 Evaluate advanced GenAI models for automating complex tasks, generating
interactive visualizations, and conducting ethical analyses.

Proposed Lab Experiments


Experiment Title Mapped
CO/COs
Experiment 1: Introduction to Generative AI: Overview of
Generative AI, Hugging Face, and LangChain.
a. Explore basic functionalities of Hugging Face and LangChain by
creating a simple text generation application.
b. Learn to create simple prompts for GenAI models to generate
various types of text outputs.
c. Automate tasks such as scheduling and data entry using GenAI.
d. Perform basic data analysis and generate summary reports with
GenAI.
e. Generate automated content such as emails and reports using
GenAI.
Experiment 2: Ethical Considerations and Data Visualization CO2
a. Create a presentation or report outlining ethical issues and
potential solutions.
b. Develop scripts for generating data visualizations like bar charts
and pie charts using GenAI.
c. Automate business communications such as appointment
reminders
d. Use GenAI for financial predictions based on historical data
e. Plan and manage tasks using GenAI for project scheduling
Experiment 3: Advanced GenAI Applications and Customer CO3
Interaction
a. Create a chatbot to handle basic customer queries.
b. Automate market insights extraction with GenAI.
c. Generate presentations and reports using GenAI.
d. Develop roleplaying chatbots for customer service training.
e. Generate social media posts and content using GenAI.
Complex Applications and Ethical Frameworks CO4
Experiment 4: Explore Advanced GenAI Models and Their
Applications in Various Industries
Explore Advanced GenAI Models and Their Applications in Various
Industries. Explore advanced Generative AI models such as GPT-4,
DALL-E, and BERT. Develop a comprehensive report or presentation
detailing these models and their potential uses in various industries,
including healthcare, finance, marketing, and customer service.
Example models like GPT-4 (OpenAI), DALL-E (OpenAI), BERT
(Google), T5 (Google), and CLIP (OpenAI) will be covered. The outcome
will be a thorough understanding of how these models can be applied
to natural language processing, image generation, conversational
agents, and automated content creation.

Project 1: Intelligent Email Assistant


Problem Statement: Develop an intelligent email assistant that uses
Hugging Face and LangChain to draft, respond to, and organize emails.
This project aims to streamline email management for professionals by CO1,CO2,
leveraging generative AI tools. CO3,CO4
Project 2: Social Media Content Generator
Problem Statement: Design a social media content generator that
uses generative AI models to create posts, captions, and hashtags for
different platforms. This project will help social media managers CO1,CO2,
generate engaging content efficiently. CO3,CO4
Project 3: Ethical AI Implementation Framework for Healthcare
Problem Statement: Develop a comprehensive ethical AI
implementation framework for healthcare organizations to ensure the
responsible use of generative AI in medical applications. This project
addresses the ethical challenges and ensures that AI is used in a fair, CO1,CO2,
transparent, and accountable manner. CO3,CO4
Project 4: Financial Report Generation System
Problem Statement: Create a financial report generation system that
uses generative AI models to analyze financial data and generate
comprehensive reports. This project will assist financial analysts in CO1,CO2,
making informed decisions based on accurate and data-driven insights. CO3,CO4
Learning Experiences
➢ Interactive Learning: Utilize lecture PPTs, video lectures, and interactive teaching boards to
engage with fundamental concepts and practical applications in real-time.
➢ Hands-On Practice: Participate in project-based lab assignments and problem-based theory
assignments to apply theoretical knowledge to practical scenarios, enhancing understanding
through hands-on experience.
➢ Continuous Assessment: Engage in continuous assessment through quizzes, assignments,
and projects to track progress and receive timely feedback, allowing for iterative
improvement.
➢ Collaborative Projects: Work on collaborative group projects and case studies, promoting
teamwork and peer-to-peer learning while tackling complex problems.
➢ ICT Integration: Leverage Moodle LMS for accessing course materials, submitting
assignments, and receiving feedback, enhancing the learning experience through technology
integration.
➢ Support & Feedback: Benefit from regular support and feedback from the course instructor,
available for additional help and clarification, ensuring personalized learning support.
➢ Practical Applications: Develop skills through real-world projects and applications, such as
creating text-based applications and ethical AI frameworks, preparing students for practical
and industry-related challenges.

Text Books:

▪ "Generative Deep Learning: Teaching Machines to Paint, Write, Compose, and Play" by David
Foster
▪ "Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow" by Aurélien Géron

Online References

General Introduction to Generative AI


1. OpenAI Blog: Articles and research updates on advancements in AI - OpenAI Blog
2. DeepMind Publications: Research and analysis on the latest AI technologies - DeepMind
Research
Tools and Libraries
1. Hugging Face Documentation: Comprehensive guide and API references for using
transformer models - Hugging Face Docs
2. LangChain Documentation: Tools and libraries for building language applications -
LangChain GitHub

Ethical Frameworks for AI


1. AI Ethics Guidelines by the European Commission: Framework for trustworthy AI -
Ethics Guidelines for Trustworthy AI
2. Partnership on AI: Research and partnership initiatives on AI ethics - Partnership on AI
Prompt Engineering and Usage
3. Practical Prompt Engineering Guide by OpenAI: Guidelines on effective prompt
engineering - Prompt Engineering with OpenAI
4. Prompt Engineering Workshop: Online courses and tutorials on prompt engineering -
Prompt Engineering Course
DATA VISUALIZATION USING PYTHON
LAB

Department: B. Tech (Computer Science and Engineering


with specialization in Data Science)
Course Name: Course Code L-T-P Credits

Data Visualization
ENSP154 0-0-2 1
using Python Lab

Type of Course: Minor

Proposed Lab Experiments

Defined Course Outcomes

COs By the end of this lab, the learners will be able to

Decision-centred Visualization begins with understanding the purpose,


CO 1
data and context

Use common graphs like Bar chats, treemaps, line charts, radars,
CO 2
bubble charts and heatmaps.

CO 3 Design and implement data models on their own using techniques.

Analyze and Select visualization using accuracy techniques for data


CO 4
shape and flow
Ex. No Experiment Title Mapped
CO/COs

1 To study and implement line plot and multiple line chart 2


using Matplotlib

2 To study and implement bar plot using Matplotlib 2

3 To study and implement stacked bar plot using Matplotlib 2

4 To study and implement histogram plot using Matplotlib 2

5 To study and implement two histograms together using 1


Matplotlib
6 To study and implement scatter plot using Matplotlib 2

7 To study and implement pie chart using Matplotlib 2

8 To study and implement tree map using Matplotlib 2

9 To study and implement box plot using Matplotlib 2

10 To study and implement area plot using Matplotlib 2

11 To study and implement Three-dimensional Plotting in 2


Python using Matplotlib
12 To study and implement 3D Scatter Plotting in Python 2
using Matplotlib using Matplotlib
13 To study the functions of axes and subplots in Matplotlib 2

14 Working with Images in Python using Matplotlib 4

15 To study and plotting graph using Seaborn 1

16 1
To study and implement relation plot using seaborn
17 To study and implement categorial plot using seaborn 1

18 To study the concept of kdeplot, distplot and joint plot 1


using Seaborn.
19 To study and perform the combination plots using 1
seaborn.
20 To study and implement distribution plot using seaborn 1

21 To study and provision Watson Studio and its API 3

22 To study and understand the Raw Data, Preparation of 3


23 To study and implementation of data-on-Data Refinery. 3

24 To study Model selection manual and automated using 4


datasets
25 Study Data pre-processing through tools and techniques 4
using Watson Studio

Projects to be covered: (atleast 4-5 projects). Please provide objectives of the project

Project Titles

1. Jupyter Book: Creating Beautiful Reports


2. Analyzing Spreadsheet Data with Python
3. Exploratory Data Analysis with Python
4. Statistical Analysis and Visualization for Market
B. Tech (Computer Science and Engineering
Program Name
with specialization in Data Science)
Course Name: Course Code L-T-P Credits Semester
Community Engagement II
VAC II 2-0-0 2
Service
Type of Course: Value Added Course

Duration 30 Hrs

Course Objectives:
• To engage students in meaningful social service activities.
• To develop socially responsible engineers.
• To apply technical and non-technical skills for the benefit of society.
• To foster community engagement and support.

Course Outcomes (COs) for Community Engagement Program:


1. CO1: Demonstrate understanding of societal challenges through active
participation in community projects.
2. CO2: Apply technical skills to design and implement practical solutions
for local problems.
3. CO3: Analyze community needs and propose sustainable interventions
based on data collection.
4. CO4: Develop teamwork and communication skills by collaborating
with diverse community stakeholders.
5. CO5: Evaluate the impact of implemented solutions and suggest
improvements for future initiatives.

Course Outline:
1. Introduction

86 | P a g e
Overview of the Course: The Community Engagement Service (VAC II) course
at K.R. Mangalam University is designed to integrate social responsibility with
technical education. This 30-hour value-added course encourages students to engage
in meaningful social service activities, applying their technical and non-technical skills
to benefit various sections of society. Through hands-on involvement, students will
develop a deeper understanding of community needs and contribute positively to
societal development.
Importance of Social Service in Engineering Education: Incorporating social
service into technical education is crucial for nurturing well-rounded professionals
who are not only technically proficient but also socially conscious. By participating in
community-oriented projects, students can bridge the gap between theory and
practice, gaining real-world experience that enhances their problem-solving skills.
Engaging in social service fosters empathy, teamwork, and leadership qualities, which
are essential attributes for successful engineers dedicated to making a positive
impact on society.
Expectations and Requirements: Students enrolled in this course are expected to
actively participate in chosen social service activities, dedicating at least 30 hours
over weekends. They must document their engagement through video clips and
photographs, maintaining a detailed logbook of their activities. Additionally, students
are required to prepare a comprehensive report and a 10-minute video presentation
demonstrating their engagement, learning experiences, and the impact of their
initiatives. Evaluation will be based on the quality and relevance of documentation,
the depth of the report, and the effectiveness of the video presentation in showcasing
their contributions and outcomes.
2. Possible Engagement Activities
Students can choose from a variety of activities, including but not limited to:
Development and Innovation
Develop Innovative Tools: Create solutions such as mobile apps and web-based
platforms to address societal needs.
1. Lever-Powered Wheelchairs: Develop control applications to enhance
mobility for differently-abled individuals.
87 | P a g e
2. Assistive Devices: Design simple devices using basic sensors to improve
daily living for people with disabilities.
3. Environmental Monitoring: Build introductory systems using Arduino and
web dashboards to raise community awareness about air and water quality.
4. Eco-Friendly Practices: Create web applications that promote sustainable
living and track user participation.
5. Waste Management: Implement basic data management systems for
efficient waste management in local communities.
6. Energy Optimization: Develop algorithms to optimize energy consumption
in households and public buildings.
7. Water Quality Monitoring: Design systems with sensors and mobile apps to
ensure safe drinking water in rural areas.
8. Smart Agriculture: Create tools using microcontrollers to support farmers
with automated irrigation and soil condition monitoring.
9. Cybersecurity: Implement basic practices to protect sensitive data in
sustainable technology applications.
10.Health Tracking: Develop simple mobile applications to monitor fitness and
wellness metrics, benefiting public health initiatives.
11.Recycling Sorters: Create introductory computer vision projects for sorting
recyclables to aid municipal recycling programs.
12.Environmental Data Analysis: Conduct basic projects on environmental
data sets to identify trends and propose solutions for urban planning and
conservation efforts.
13.Chemical Analysis Programs: Create Python programs to support
educational institutions.
14.Electronic Circuits for Physics: Develop circuits to aid students in
experiments.
15.Engineering Mathematics Tools: Design simulation tools to assist in
academic research.

Education and Mentorship


88 | P a g e
1. Tutoring and Mentorship: Provide tutoring and mentorship to
underprivileged children.
2. Day Camps: Organize and run day camps for low-income children during
weekends.
3. Educational Opportunities for Incarcerated Individuals: Volunteer to
provide educational programs and mentorship to incarcerated individuals.
4. Skill Development Workshops: Conduct workshops to teach various skills
to children based on students' expertise.
Community Service and Development
1. Local Charities and Community Projects: Volunteer with local charities to
support community development projects.
2. Entrepreneurship Initiatives: Help villagers improve their livelihood
through entrepreneurship initiatives.
3. Women Empowerment Programs: Empower women through skill
enhancement, awareness programs, and entrepreneurship training.
4. Digital Awareness Programs: Conduct programs on cybersecurity and
social media safety to protect against digital frauds.
Cultural and Traditional Skills
1. Traditional Skills Learning: Spend time with villagers to learn traditional
skills such as pottery, carpentry, weaving, etc.
2. Artisan Marketing Assistance: Help artisans market their crafts through
digital platforms and e-commerce.
Technology for Social Good
1. Problem-Solving with Technology: Use technology to solve specific
problems faced by certain sections of society, such as developing apps for
community support.
2. Community Development Tools: Create tools and resources to assist in
community development and problem-solving.
Healthcare Domain
1. Health Awareness Campaigns: Organize campaigns to raise awareness
about hygiene, nutrition, and preventive healthcare.
89 | P a g e
2. Medical Camp Assistance: Volunteer at medical camps to support
healthcare delivery in underserved areas.
3. Mental Health Support: Conduct workshops and support groups focusing
on mental health awareness and assistance.
4. Telemedicine Services: Assist in setting up and running telemedicine
services for remote communities.
Print Media and Social Platforms
1. Community Newsletters: Create and distribute newsletters to share
important community news and stories.
2. Social Media Campaigns: Run social media campaigns to raise awareness
on various social issues and promote community initiatives.
Other Possible Domains
1. Environmental Conservation: Participate in tree planting drives, clean-up
campaigns, and conservation projects.
2. Disaster Relief Support: Assist in disaster relief efforts, providing aid and
support to affected communities.
3. Animal Welfare: Volunteer at animal shelters, support animal rescue
operations, and promote animal welfare initiatives.
4. Cultural Preservation: Work on projects to preserve and promote local
cultural heritage and traditions.

3. Documentation and Proof of Engagement


• Students must provide relevant proofs in the form of video clips and day-
wise photographs.
• Maintain a logbook detailing the hours spent and activities undertaken.
4. Reporting and Presentation
• Prepare a detailed report on the engagement activities.
• Create a 10-minute video demonstrating the overall engagement, learning
experiences, and impact.
• The video should include testimonials from beneficiaries showcasing the
outcomes and benefits.
90 | P a g e
Evaluation Criteria:
The evaluation of the VAC will be based on the following rubrics, totaling 100 marks:

Criteria Marks

Relevant Proofs (video clips, day-wise photographs) 20

Detailed Report 30

Video Presentation (10 minutes) 50

- Demonstration of overall engagement

- Learning experiences

- Initiative impact on society

- Testimonials from beneficiaries

Rubrics for Evaluation:

Needs
Evaluation Satisfactory
Excellent (10) Good (7-9) Improvement
Criteria (5-6)
(1-4)

Comprehensive Basic Inadequate or


Relevant Adequately
and well- documentation missing
Proofs documented
documented provided documentation

Thorough, well-
Clear and Basic structure Lacks detail and
Detailed Report structured,
informative and content structure
insightful

Engaging Basic Lacks


Video Highly engaging
and engagement engagement
Presentation and impactful
informative and clarity and clarity

Clearly Demonstrates Lacks clear


Demonstration Shows active
demonstrates some demonstration
of Engagement involvement
active and involvement of involvement

91 | P a g e
Needs
Evaluation Satisfactory
Excellent (10) Good (7-9) Improvement
Criteria (5-6)
(1-4)

meaningful
engagement

Clear
Learning Profound insights Basic Lacks depth in
insights and
Experiences and reflections reflections reflections
reflections

Initiative Significant Evident


Some positive Minimal or
Impact on positive impact positive
impact unclear impact
Society shown impact

Testimonials Strong and Clear and


Basic Lack of or weak
from compelling supportive
testimonials testimonials
Beneficiaries testimonials testimonials

Implementation Plan:
1. Orientation Session: Introduce students to the VAC and explain the
objectives and expectations.
2. Activity Selection: Students select their preferred engagement activities.
3. Engagement Phase: Students actively participate in the chosen activities,
documenting their involvement.
4. Reporting Phase: Students prepare their detailed report and video
presentation.
5. Evaluation: Faculty evaluates students based on the provided rubrics.
6. Feedback Session: Provide constructive feedback to students for
continuous improvement.
Conclusion:
This Value-Added Course aims to instill a sense of social responsibility in engineering
students, encouraging them to apply their skills for the betterment of society. By

92 | P a g e
engaging in various social service activities, students will gain valuable experiences
that complement their technical education, fostering holistic development and
community engagement.
Student Report Template

Title Page:
• Course Title: Community Engagement Service (VAC-II)
• Student Name:
• Enrollment Number:
• Semester: II
• Program: B.Tech (CSE) including all Specializations, BCA, B.Sc
• Date:
1. Introduction:
• Overview of the Course: Provide a brief overview of the Community
Engagement Service (VAC II) course, highlighting its purpose and importance.
• Importance of Social Service in Engineering Education: Discuss why
incorporating social service into engineering education is crucial for developing
well-rounded professionals.
• Expectations and Requirements: Outline the course expectations, including
participation, documentation, and reporting requirements.
2. Chosen Activity:
• Activity Name: State the name of the chosen social service activity.
• Description of the Activity: Provide a detailed description of the activity.
• Objectives and Goals: List the objectives and goals of the activity.
3. Methodology:
• Steps Taken: Describe the steps taken to complete the activity.
• Tools and Techniques Used: Mention any tools or techniques used, such as
mobile apps, web-based platforms, etc.
• Duration of Engagement: Specify the duration of the engagement (at least 30
hours).
4. Implementation:
93 | P a g e
• Detailed Description of Engagement Activities: Provide a detailed log of the
engagement activities, including day-wise descriptions.
• Proof of Engagement: Include video clips, photographs, and other relevant
proofs of engagement.
5. Impact Analysis:
• Impact on Society: Analyze the impact of the activity on society.
• Benefits to the Community: Discuss the benefits provided to the community.
• Testimonials from Beneficiaries: Include testimonials from beneficiaries
showcasing the outcomes and benefits.
6. Learning Experiences:
• Skills and Knowledge Gained: Detail the skills and knowledge gained through
the activity.
• Reflections on the Experience: Reflect on the overall experience.
• Challenges Faced and Overcome: Describe any challenges faced and how they
were overcome.
7. Ethical Considerations:
• Ethical Issues Encountered: Discuss any ethical issues encountered during the
activity.
• Solutions and Best Practices: Provide solutions and best practices for
addressing these ethical issues.
• Reflections on Social Responsibility: Reflect on the importance of social
responsibility.
8. Conclusions:
• Summary of the Experience: Summarize the overall experience.
• Personal Growth and Development: Discuss personal growth and development
resulting from the activity.
• Future Recommendations: Provide recommendations for future engagements.
9. Appendices:
• Additional Documents and Proofs: Include any additional supporting
documents, such as logbook entries and extra photographs.
• Video Presentation Link: Provide a link to the video presentation.
94 | P a g e
Learning Experiences:

Methodologies for Experiential Learning:


▪ Fieldwork: Hands-on community service.
▪ Mentorship: Guiding underprivileged students.
▪ Workshops: Conduct skill-building sessions.
▪ Tech Solutions: Develop apps and tools for social causes.
▪ Survey & Research: Analyze community needs through data collection.
▪ Problem-solving: Apply technology to real-world issues.
▪ Collaboration: Work with local NGOs and community centers.

Types of Engagement Activities:


Development and Innovation
• Build apps, assistive devices, and smart solutions for community problems.
• Innovate tools for healthcare, agriculture, or education.
Education and Mentorship
• Offer tutoring and skill-development workshops.
• Organize day camps and educational sessions for children.
Community Service
• Volunteer with local charities.
• Support women empowerment and digital awareness programs.
Environmental & Health Initiatives
• Participate in tree plantation, clean-ups, and conservation drives.
• Organize health awareness campaigns and assist in medical camps.
Technology for Social Good
• Use technology to solve community issues.
• Develop tools for environmental monitoring and waste management.

95 | P a g e
Minor Project-I
B. Tech (Computer Science and Engineering
Program Name
with specialization in Data Science)
COURSE NAME: COURSE
L-T-P CREDITS
Minor Project-I CODE
ENSI152 0-0-0 2
Project
TYPE OF COURSE:

PRE-REQUISITE(S), IF ANY: NA

Course Perspective:
The objective of Minor Project-I for the B. Tech (Computer Science and Engineering)
program is to provide students with the opportunity to apply theoretical knowledge
to real-world societal problems. This course aims to develop students' ability to
identify and understand complex societal issues relevant to computer science, engage
in critical thinking to formulate and analyze problems, and conduct comprehensive
literature reviews to evaluate existing solutions. Through this project, students will
enhance their research skills, document their findings in a well-structured manner,
and effectively present their analysis and conclusions. The course fosters professional
development by encouraging students to approach problems from multiple
perspectives, develop innovative solutions, and improve their communication and
documentation skills. Ultimately, the Minor Project-I course seeks to prepare students
for future professional challenges by integrating academic knowledge with practical
problem-solving experiences.

Duration: 6 weeks.
Project must focus on following aspects:
Project Requirements:

96 | P a g e
1. Understanding of Societal Problems:
o Students must have a basic understanding of societal problems, the
concerned domain, and relevant issues.
2. Critical Thinking and Problem Formulation:
o Students are expected to think critically about formulated problems and
review existing solutions.
3. Presentation of Findings:
o Students must be able to present findings from existing solutions in an
appropriate format.
4. Implementation:
o Students are not strictly expected to provide or implement these
existing solutions.
Guidelines:
1. Project Selection:
o Choose a societal problem relevant to the field of computer science and
engineering.
o Ensure the problem is specific and well-defined.
2. Literature Review:
o Conduct a thorough review of existing literature and solutions related to
the problem.
o Identify gaps in existing solutions and potential areas for further
investigation.
3. Analysis and Critical Thinking:
o Analyze the problem critically, considering various perspectives and
implications.
o Evaluate the effectiveness and limitations of current solutions.
4. Documentation:
o Document the entire process, including problem identification, literature
review, analysis, and findings.
o Use appropriate formats and standards for documentation.
5. Presentation:
97 | P a g e
o Prepare a presentation summarizing the problem, existing solutions,
analysis, and findings.
o Ensure the presentation is clear, concise, and well-structured.

Evaluation Criteria for Minor Project (Out of 100 Marks):


1. Understanding of Societal Problems (20 Marks):
o Comprehensive understanding of the problem: 20 marks
o Good understanding of the problem: 15 marks
o Basic understanding of the problem: 10 marks
o Poor understanding of the problem: 5 marks
o No understanding of the problem: 0 marks
2. Critical Thinking and Analysis (30 Marks):
o Exceptional critical thinking and analysis: 30 marks
o Good critical thinking and analysis: 25 marks
o Moderate critical thinking and analysis: 20 marks
o Basic critical thinking and analysis: 10 marks
o Poor critical thinking and analysis: 5 marks
o No critical thinking and analysis: 0 marks
3. Literature Review (20 Marks):
o Comprehensive and detailed literature review: 20 marks
o Good literature review: 15 marks
o Moderate literature review: 10 marks
o Basic literature review: 5 marks
o Poor literature review: 0 marks
4. Documentation Quality (15 Marks):
o Well-structured and detailed documentation: 15 marks
o Moderately structured documentation: 10 marks
o Poorly structured documentation: 5 marks
o No documentation: 0 marks
5. Presentation (15 Marks):
o Clear, concise, and engaging presentation: 15 marks
98 | P a g e
o Clear but less engaging presentation: 10 marks
o Somewhat clear and engaging presentation: 5 marks
o Unclear and disengaging presentation: 0 marks
Total: 100 Marks

Course Outcomes:
By the end of this course, students will be able to:
1. Understand Societal Issues:
o Demonstrate a basic understanding of societal problems and relevant
issues within the concerned domain.
2. Critical Thinking:
o Think critically about formulated problems and existing solutions.
3. Literature Review:
o Conduct comprehensive literature reviews and identify gaps in existing
solutions.
4. Documentation:
o Document findings and analysis in a well-structured and appropriate
format.
5. Presentation Skills:
o Present findings and analysis effectively, using clear and concise
communication skills.
6. Problem Analysis:
o Analyze problems from various perspectives and evaluate the
effectiveness of existing solutions.
7. Professional Development:
o Develop skills in research, analysis, documentation, and presentation,
contributing to overall professional growth.

99 | P a g e
Learning Experiences

▪ Real-World Application: Students will apply theoretical knowledge to analyze


societal problems, gaining hands-on experience in tackling real-world issues
related to computer science.
▪ Critical Thinking and Problem Solving: By identifying, formulating, and evaluating
complex problems, students will enhance their critical thinking and analytical
skills.
▪ Research Skills: Students will conduct comprehensive literature reviews, learning
to assess existing solutions and identify research gaps for future exploration.
▪ Effective Communication: Through structured documentation and presentations,
students will develop clear and concise communication skills essential for
professional settings.
▪ Multi-Perspective Analysis: Students will learn to evaluate problems from diverse
perspectives, fostering innovative thinking and problem-solving abilities.
▪ Professional Development: The project encourages research, analysis, and
presentation skills, preparing students for future professional challenges in the
tech industry.

100 | P a g e
SEMESTER: III

JAVA PROGRAMMING
B. Tech (Computer Science and Engineering with
Program Name
specialization in Data Science)
COURSE NAME: COURSE CODE L-T-P CREDITS
JAVA PROGRAMMING
ENCS201 4-0-0 4

Major
TYPE OF COURSE:

PRE-REQUISITE(S), IF ANY: C PROGRAMMING

Course Perspective. This course provides a comprehensive introduction to Java,


one of the most popular and widely used programming languages in the world,
particularly known for its portability across platforms from mainframe data centers
to smartphones. The "Java Programming" course is meticulously designed to
introduce students to the core concepts of object-oriented programming using Java,
covering everything from basic constructs to advanced programming features. The
curriculum is structured to not only impart theoretical knowledge but also to enhance
practical skills through extensive lab sessions, thereby preparing students for real-
world software development. The course is divided into 4 modules:
a) Introduction to Java and OOP
b) Inheritance and Polymorphism (Abstract Class, Packages, and Interfaces)
c) Exception Handling, Multithreading and Wrapper Class
d) I/O Stream, File Handling, and Collections

101 | P a g e
The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

CO 1 Apply Java fundamentals and basic constructs to write Java programs.

Design object-oriented solutions using classes, objects, inheritance, and


CO 2
polymorphism.

CO 3 Utilize interfaces and packages for code structure and reusability.

CO 4 Implement error handling with try-catch-finally and custom exceptions.

CO 5 Design multithreaded applications using synchronization.

Perform file I/O, work with Java Collections Framework, and manipulate
CO 6
data using collections

CO = Course outcomes. A student is expected to have learnt concepts and


demonstrated/developed abilities or skills related to strategic management at the
end of the course.

Course Outline:
Unit
Title: Introduction to Java and OOP No. of hours: 10
Number: 1
Content:
Introduction to Java –
Features, and Importance, Java Virtual Machine, Byte Code; Keywords, constants,
variables and Data Types, Operators and Expressions, Type casting and conversion;

102 | P a g e
Java Control Structure - Decision making – if, if-else, if-else-if ladder, nested if,
switch-case, Loop – do, while, for, jump statements – break and continue;
Simple Input and Output - Scanner Class; Arrays Handling - Single and Multi-
dimensional, Referencing Arrays Dynamically;
Java Strings: String class, Creating & Using String Objects, Manipulating Strings,
String Immutability & Equality, Passing Strings To & From Methods.
OOP Paradigm: Features of OOP, Class and Object in Java: Creating Classes and
Objects. Defining Data Members and Member Methods, Overloading Member Methods,
Static Members, this Keyword. Constructors: default, parameterized and copy
constructors.
Title: Inheritance and Polymorphism
Unit
(Abstract Class, Packages, and No. of hours: 10
Number: 2
Interfaces)
Content:
Access Specifies, Introduction to Inheritance – Derived Class and Super class,
super Keyword;
Types of inheritance – simple, multilevel, multilevel, hierarchical, and hybrid;
Polymorphism – Static (Method overloading), Dynamic (Method Overriding);
Final Class and Method, finalize keyword, Garbage Collection;
Abstract Method and Abstract Class. Interfaces - Defining an Interface,
Implementing an Interface;
Packages - Creating Package, Naming a Package, Using Package Members, Extending
Interfaces and Packages, Package and Class Visibility.
Unit Title: Exception Handling,
No. of hours: 10
Number: 3 Multithreading and Wrapper Class
Content:
Exception Handling - Definition, Dealing with Errors, The Classification of Exceptions,
Declaring Checked Exceptions, Throw an Exception, Creating Exception Classes, Catching
Exceptions, finally clause;
Multithreaded Programming - Fundamentals, Java thread model: priorities,

103 | P a g e
synchronization, messaging, thread classes, Runnable interface, inter thread
Communication, suspending, resuming, and stopping threads.
Wrapper Classes - Autoboxing/Unboxing, Enumerations.
Unit Title: I/O Stream, File Handling, and
No. of hours: 10
Number: 4 Collections
Content:
File Handling: File Class Methods, Reading from a File, Writing to a File, Buffered I/O,
Character Streams, Byte Streams, File Input/Output Stream, FileReader, FileWriter,
BufferedWriter, BufferedReader, FileInputStream, FileOutputStream, File Navigation, File
Permissions, Directory Operations, File and Directory Attributes
Java Collections Framework: Introduction to Java Collections Framework
Collection Interfaces: List (ArrayList, LinkedList, Vector), Set (HashSet,
LinkedHashSet, TreeSet), Queue (PriorityQueue), Map (HashMap, LinkedHashMap,
TreeMap), Iterators, Comparable and Comparator Interfaces, Sorting Collections,
Generics in Collections
Working with Collections: Adding, Removing, Searching Elements, Iterating Elements

Learning Experiences

▪ Interactive Lecture Sessions: Students will engage with lecture PPTs and
interactive teaching boards, enhancing their understanding of Java concepts
through visual aids and active participation during class discussions.
▪ Problem-Based Learning: Regular theory assignments will encourage students to
apply their knowledge to real-world programming problems, reinforcing key topics
and promoting critical thinking.
▪ Project-Based Lab Work: Students will complete hands-on, project-based lab
assignments, applying Java concepts to develop functional programs. This will
simulate real-world coding experiences, fostering practical skills.
▪ Comprehensive Study Support: A question bank covering the entire syllabus and
model question papers will be provided, allowing students to self-assess their
progress and prepare for exams effectively.
104 | P a g e
▪ Continuous Assessment & Feedback: Ongoing evaluations through quizzes,
assignments, and lab projects will keep students engaged, while timely feedback
ensures improvement in understanding and problem-solving abilities.
▪ Technology-Enhanced Learning: Moodle LMS will serve as a platform for students
to access all course materials, including assignments, question banks, and support
resources, ensuring continuous learning beyond the classroom.
▪ Collaborative Learning & Peer Support: Group projects and peer review activities
will allow students to collaborate, share knowledge, and support each other’s
learning, fostering teamwork and communication skills.

Text Book
1. Herbert Schildt, ―java – the complete reference‖, oracle press.
2. Cay s. Horstmann, ―core java volume – i fundamentals‖, pearson.

Additional Readings:
Online Learning Resources
1. Oracle Java Tutorials
• The official tutorials from Oracle, which owns Java, are a great starting
point. These cover the basics and advanced features of Java.
• Link: Oracle Java Tutorials
2. Java Code Geeks
• A community-driven site that offers free Java tutorials, articles, and
examples. It’s a valuable resource for practical tips and best practices.
• Link: Java Code Geeks
3. LeetCode
• Excellent for practicing Java coding problems, LeetCode helps in
enhancing problem-solving skills in Java, which is crucial for technical
interviews.
• Link: LeetCode

105 | P a g e
JAVA PROGRAMMING LAB

106 | P a g e
B. Tech (Computer Science and
Program Name Engineering with specialization in Data
Science)
COURSE NAME: COURSE
L-T-P CREDITS
JAVA PROGRAMMING LAB CODE
ENCS251 0-0-2 1

TYPE OF COURSE: Major

Contact Hours

Version

PRE-REQUISITE(S), IF ANY: basic working knowledge of C++ programming will


be an added advantage

PROPOSED LAB EXPERIMENTS

DEFINED COURSE OUTCOMES

COS

Demonstrate the use of primitive data types, type casting, and basic
CO 1
input/output operations in Java.
Implement control structures such as conditional statements and loops
CO 2
to perform arithmetic operations and generate sequences.
Create and manipulate arrays and demonstrate basic inheritance,
CO 3
polymorphism, and class hierarchies in Java applications.
Develop and test advanced Java applications using multithreading, file
CO 4 handling, collections, and exception handling to solve real-world
problems.

107 | P a g e
Lab Task MAPPED
CO/COS
1 A Java Application that manages a small library system CO1
2 A Java Application to manage a simple bank account system CO1
3 A Java class hierarchy for a simple educational institution system CO2
4 A system for managing different types of vehicles in a rental CO2
service
4 A Java Application for a basic shape drawing application CO3
5 A Java multithreaded application that simulates a banking system CO3
6 A file management system that supports operations such as CO4
reading,writing, copying, and navigating files and directories

7 A contact management system that utilizes different data CO4


structures
like Lists, Sets, Queues, and Maps

108 | P a g e
DISCRETE MATHEMATICS
B. Tech (Computer Science and Engineering
Program Name
with specialization in Data Science)
Course Name: Course Code L-T-P Credits
Discrete Mathematics ENCS203 3-1-0 4
Type of Course: Major

Pre-requisite(s), if any: Basic of Mathematics

Course Perspective. The Discrete Mathematics course offers a foundational


exploration into key mathematical concepts essential for computer science and
engineering. Covering topics such as set theory, logic, relations, functions,
combinatorics, recurrence relations, and graph theory, the course equips students
with critical problem-solving skills. By emphasizing both theoretical understanding
and practical application, students learn to tackle complex problems in algorithm
design, data analysis, and system modeling. Through this comprehensive curriculum,
students gain a robust grasp of discrete structures, which are pivotal in computational
fields, enhancing their analytical capabilities and preparing them for advanced studies
and professional challenges.

The Course Outcomes (COs).

COs Statements

CO 1 Explain and apply set theory, logic, and Boolean algebra.

CO 2 Analyze and evaluate properties of relations and functions.

CO 3 Develop and apply combinatorial techniques and generating functions.

CO 4 Evaluate and apply graph theory concepts and algorithms.

109 | P a g e
Course Outline:

Title: Set Theory, Logic, and


Unit Number: 1 No. of hours: 10
Proofs
Set Theory: Definitions, Venn Diagrams, Operations on Sets, Cartesian Products,
Power Sets.
Logic: Propositions, Logical Connectives, Truth Tables, Tautologies, Contradictions,
Logical Equivalence, Conditional and Biconditional Statements.
Predicate Logic: Quantifiers, Proof Methods (Direct, Indirect, Contradiction, and
Induction).
Boolean Algebra: Basic Operations, Boolean Expressions, Simplification, Logic
Gates, Applications to Digital Circuits. Proofs using mathematical induction

Unit Number: 2 Title: Relations and Functions No. of hours: 10

Relations: Definition, Properties (Reflexive, Symmetric, Transitive), Equivalence


Relations, Partial Orderings.
Functions: Types of Functions (Injective, Surjective, Bijective), Composition of
Functions, Inverses, Pigeonhole Principle.
Matrices and Relations: Matrix Representation, Warshall's Algorithm for
Transitive Closure.
Counting: Permutations and Combinations, Pigeonhole Principle, Principle of
Inclusion and Exclusion.
Title: Combinatorics and
Unit Number: 3 No. of hours: 10
Recurrence Relations
Basic Counting Principles: Multiplication and Addition Principles, Permutations,
Combinations.
Recurrence Relations: Solving Linear Recurrence Relations, Homogeneous and
Non-Homogeneous Recurrences.
Generating Functions: Basics, Solving Recurrences using Generating Functions.
Binomial Theorem: Applications, Generalizations, Multinomial Theorem.

110 | P a g e
Unit Number: 4 Title: Graph Theory and Trees No. of hours: 10

Graph Theory: Definitions, Types of Graphs (Undirected, Directed, Weighted),


Graph Terminology (Degree, Path, Cycle, Connectedness), Adjacency Matrix,
Incidence Matrix.
Graph Algorithms: Shortest Path (Dijkstra's Algorithm), Minimum Spanning Tree
(Kruskal’s and Prim’s Algorithms).
Trees: Properties, Tree Traversals (Preorder, Inorder, Postorder), Binary Trees,
Spanning Trees.
Planar Graphs: Euler's Formula, Graph Coloring, Applications in Networks.

Learning Experiences:
▪ Interactive Problem-Solving: Group discussions and collaborative exercises on
set theory and logic.
▪ Graph Theory Projects: Hands-on projects implementing graph algorithms like
shortest path and spanning trees.
▪ Combinatorics Applications: Real-world problem-solving using combinatorial
techniques and recurrence relations.
▪ Continuous Assessment: Regular quizzes and assignments with immediate
feedback.
▪ Moodle LMS Support: Access to lecture notes, question banks, and video
tutorials for self-paced learning.
▪ Proof Technique Workshops: Focused sessions on proof methods like induction
and contradiction.
▪ Graph Theory Simulations: Use of visual tools to explore graph algorithms and
network modeling.

111 | P a g e
Text Books:
1. Lipschutz, S., & Lipson, M. (2007). Schaum's Outline of Discrete
Mathematics. McGraw-Hill Education.
2. Rosen, K. H. (2011). Discrete Mathematics and Its Applications. McGraw-Hill
Education.
3. Graham, R. L., Knuth, D. E., & Patashnik, O. (1994). Concrete Mathematics:
A Foundation for Computer Science. Addison-Wesley.
4. Johnsonbaugh, R. (2010). Discrete Mathematics. Pearson.
5. Grimaldi, R. P., & Ramana, B. V. (2014). Discrete and Combinatorial
Mathematics: An Applied Introduction. Pearson.

References
R 1. Elements of Discrete Mathematics, C. L Liu, McGraw-Hill Inc, 1985. Applied
Combinatorics, Alan Tucker.
R 2. Concrete Mathematics, Ronald Graham, Donald Knuth, and Oren Patashnik,
2nd Edition - Pearson Education Publishers.

112 | P a g e
DATA STRUCTURES
B. Tech (Computer Science and Engineering
Program Name
with specialization in Data Science)
Course Name: Course Code L-T-P Credits
Data Structures
ENCS205 4-0-0 4

Type of Course: Major

Pre-requisite(s), if any: Basics of Computer Programming

Course Perspective. This course provides a comprehensive introduction to data


structures and algorithms, essential components in the field of computer science that
are critical for designing efficient software systems. Data structures serve as the
building blocks for data management and organization, crucial for implementing
effective algorithms that solve real-world computational problems. The course is
structured to not only impart theoretical knowledge but also practical skills through
hands-on implementation and problem-solving.
The curriculum is meticulously designed to cover a range of topics from basic to
advanced data structures, enabling students to understand and apply various data
management techniques effectively.

The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

Understand the fundamental concepts of data structures and their


CO 1
significance in algorithm design

Implement various linear and non-linear data structures for effective


CO 2
problem solving.

113 | P a g e
Analyze the time and space complexities of different data structures and
CO 3
algorithms.

Apply graph and tree algorithms to solve real-world computational


CO 4
problems

Course Outline:
Unit
Title: Foundations of Data Structures No. of hours: 9
Number: 1
Introduction: Abstract Data Type, Elementary Data Organization.
Measuring efficiency of an Algorithm: Time and Space Complexity Analysis,
Asymptotic notations.
Arrays: Single and Multidimensional Arrays, Representation of Arrays: Row Major
Order, and Column Major Order, Application of arrays, Sparse Matrices.
Unit
Title: Linear Data Structures No. of hours: 11
Number: 2
Linked lists: Array and Dynamic Implementation of Single Linked Lists, Doubly
Linked List, Circularly Linked List, Operations on a Linked List. Insertion, Deletion,
Traversal, Polynomial Representation, Addition and Multiplication.
Stacks: Stack operations: Push & Pop, Array and Linked list implementation of
Stack, Applications: Prefix and Postfix Expressions, Evaluation of postfix
expression, Recursion.
Queues: Queue operations: Create, Add, Delete, full and empty queues, Array and
linked implementation of queues, Dequeue, Circular queues and Priority Queue.
Unit
Title: Searching and Sorting No. of hours: 10
Number: 3

114 | P a g e
Searching: Sequential search, Binary Search.
Sorting: Insertion Sort, Selection, Bubble Sort, Quick Sort, Merge Sort, Heap Sort,
Radix Sort, Bucket Sort, Shell Sort.
Hashing: Hash Function, Hash Table, Collision Resolution Strategies.
Unit
Title: Trees & Graph Algorithms No. of hours: 10
Number: 4
Trees: Basic terminology, Binary Trees, Array and linked list implementation,
Types of Binary Tree, Extended Binary Trees, Algebraic Expressions, Tree Traversal
algorithms: Inorder, Preorder and Postorder, Threaded Binary trees, Search,
Addition and deletion of an element in a binary tree, AVL Trees, Heaps, B Trees,
B+ Trees and their applications, Evaluating an expression tree
Graphs: Representation (Matrix and Linked), Traversals, Shortest path,
Topological sort. Dijkstra’s Algorithm, Floyd Warshall’s Algorithm, Minimum
Spanning Tree Algorithms (Kruskal’s Algorithm, Prim’s Algorithm).

Learning Experiences
▪ Hands-On Coding Labs: Engage in project-based assignments where students
implement various data structures and algorithms. Use interactive teaching
boards and video lectures for guidance on complex topics.
▪ Problem-Based Theory Assignments: Solve problems related to algorithm
efficiency, data structure implementation, and real-world applications.
Assignments will be supported by a question bank and model question papers.
▪ Group Projects: Collaborate on group projects that involve designing and
implementing data structures for practical problems. Peer reviews will foster
teamwork and collective problem-solving.
▪ Continuous Assessment: Regular quizzes and assignments will assess
understanding and provide timely feedback. Use Moodle LMS for accessing
support materials and submitting assignments.

115 | P a g e
▪ Algorithm Analysis: Analyze the time and space complexity of algorithms through
hands-on exercises and theory-based assignments. Use lecture PPTs and video
lectures to deepen understanding.
▪ Tree and Graph Algorithms: Apply tree and graph algorithms in practical
scenarios. Participate in lab sessions and group discussions to explore these
concepts in depth.
▪ Support and Feedback: Seek additional help from the course instructor as needed.
The instructor will be available for support, and continuous feedback will be
provided to guide students' progress.

Textbooks
1. Seymour Lipschutz, “Data Structures”, 2nd Edition, 2015
2. Aaron Tanenbaum, “Data Structures Using C”, 2nd edition, 2016
3. Ellis Horowitz and Sartaj Sahni, “Fundamentals of data structures” 2nd
edition, 2017
4. Data Structures Using C (2nd. ed.). Reema Thareja. Oxford University Press,
Inc., USA. 2018.
References
1. E. Horowitz and S. Sahani, “Fundamentals of Data Structures”, Galgotia Book
source Pvt. Ltd.
2. Data Structures & Algorithms in Python by John Canning, Alan Broder, Robert
Lafore Addison-Wesley Professional ISBN: 9780134855912.
3. "Introduction to Algorithms" by Thomas H. Cormen, Charles E. Leiserson,
Ronald L. Rivest, and Clifford Stein.
4. Problem Solving with Algorithms and Data Structures Using Python" by Brad
Miller and David Ranum.

116 | P a g e
Additional Readings:
Online References for Learning Data Structures
I) MIT OpenCourseWare - Introduction to Algorithms (6.006)
a. Free course materials from MIT's undergraduate course on algorithms,
which includes data structures. Lectures, assignments, and exams are
available online.
b. Link: MIT OpenCourseWare - Introduction to Algorithms
II) LeetCode - Data Structures
a. A platform for practicing coding problems. It provides numerous
problems related to data structures, complete with solutions and
discussions.
b. Link: LeetCode - Data Structures

117 | P a g e
DATA STRUCTURES LAB
B. Tech (Computer Science and Engineering
Program Name
with specialization in Data Science)
Course Name: Course Code L-T-P Credits
Data Structures lab ENCS253 0-0-2 1
Type of Course: Major

Version

Contact Hours 40

Pre-requisite(s), if any: Basics of Computer Programming with C++

Lab Experiments
Defined Course Outcomes

COs

Analyze and evaluate the time and space complexity of algorithms for
CO 1 various scenarios, demonstrating an understanding of asymptotic
notations.
Implement and manipulate single-dimensional and multi-dimensional
CO 2
arrays, including operations like insertion, deletion, and traversal.
Develop and perform operations on linked lists (single, doubly, and
CO 3 circularly linked), stacks, and queues using both array and linked list
representations.
Design and analyze the efficiency of different sorting and searching
CO 4 algorithms, as well as implement and compare advanced data structures
like binary search trees, AVL trees, and graph algorithms.

118 | P a g e
S.N Experiment Title Mapped
CO/COs
1 Given an array of integers, perform the following operations: CO1
reverse the array, find the maximum and minimum elements, and
calculate the sum and average of the elements. Implement
functions to perform each operation and ensure the time
complexity is optimal.
2 Given an array, rotate the array to the right by k steps, where k CO1
is non-negative. Implement the rotation in-place with O(1) extra
space.
3 Write a function to merge two sorted arrays into a single sorted CO1
array. The function should handle arrays of different lengths and
ensure the final array is sorted.
4 Given an array containing n distinct numbers taken from 0, 1, 2, CO1
..., n, find the one that is missing from the array. Implement an
efficient algorithm with O(n) time complexity.
5 Find the kth largest element in an unsorted array. Note that it is CO1
the kth largest element in sorted order, not the kth distinct
element. Implement an efficient algorithm with O(n log n) time
complexity.
6 Given an unsorted array of integers, find the length of the longest CO1
consecutive elements sequence. Your algorithm should run in
O(n) time complexity.
7 Suppose an array sorted in ascending order is rotated at some CO1
pivot unknown to you beforehand. Write a function to search for
a target value in the array. If found, return its index; otherwise,
return -1. Your algorithm should run in O(log n) time complexity.
8 Given an integer array nums, find the contiguous subarray CO1
(containing at least one number) which has the largest sum and

119 | P a g e
return its sum. Implement an efficient algorithm with O(n) time
complexity using Kadane’s Algorithm.
9 Write a function to move all zeros to the end of an array while CO2
maintaining the relative order of the non-zero elements.
Implement the function with O(n) time complexity and O(1) extra
space.
10 Write a class to implement a singly linked list with methods to CO2
insert an element at the head, insert an element at the tail, delete
an element by value, and traverse the list to print all elements.
11 Using linked lists, write a function to add two polynomials. Each CO2
node in the linked list represents a term in the polynomial with its
coefficient and exponent. Implement the function to handle
polynomials of different degrees.
12 Implement a doubly linked list with methods to insert an element CO2
at the head, insert an element at the tail, delete an element by
value, and reverse the list. Ensure that all operations handle edge
cases appropriately.
13 Create a circular linked list with methods to insert an element, CO2
delete an element by value, and traverse the list. Ensure that the
list maintains its circular nature after each operation.
14 Write a function to evaluate a given postfix expression using a CO2
stack. The function should support basic arithmetic operations (+,
-, *, /) and handle invalid expressions gracefully.
15 Implement a stack using a singly linked list with methods for CO2
push, pop, and peek operations. Ensure that the stack handles
edge cases, such as popping from an empty stack, appropriately.
16 Write a function to convert an infix expression to a postfix CO2
expression using a stack. The function should handle parentheses
and operator precedence correctly.

120 | P a g e
17 Create a circular queue using an array with methods for enqueue, CO2
dequeue, and checking if the queue is empty or full. Ensure that
the circular nature of the queue is maintained after each
operation.
18 Given a sorted array that has been rotated at an unknown pivot, CO2
write a function to search for a target value in the array. If the
target exists, return its index; otherwise, return -1. Implement an
efficient algorithm with O(log n) time complexity using binary
search.
19 Find the kth largest element in an unsorted array. Note that it is CO2
the kth largest element in sorted order, not the kth distinct
element. Implement an efficient algorithm with O(n log n) time
complexity.
20 Given a collection of intervals, merge all overlapping intervals and CO2
return an array of the non-overlapping intervals that cover all the
intervals in the input. Implement an efficient algorithm with O(n
log n) time complexity.
21 Given a non-empty array of integers, return the k most frequent CO2
elements. Implement an efficient algorithm with O(n log k) time
complexity.
22 Given an array of integers that is already sorted in ascending CO2
order, find two numbers such that they add up to a specific target
number. Return the indices of the two numbers (1-indexed) as an
integer array. Implement an algorithm with O(n) time complexity.
23 Given an array that has been rotated at an unknown pivot, write CO3
a function to search for a target value in the array. Implement the
solution using binary search with O(log n) time complexity.
24 Write a function to merge k sorted linked lists and return it as one CO3
sorted list. Implement an efficient solution using a min-heap with
O(N log k) time complexity, where N is the total number of nodes.

121 | P a g e
25 Given a non-empty array of integers, return the k most frequent CO3
elements. Implement the solution with O(n log k) time complexity
using a min-heap and a hash map.
26 Implement various sorting algorithms including Quick Sort, Merge CO3
Sort, Heap Sort, and analyze their performance on different input
sizes. Ensure the implementation handles edge cases such as
duplicate values and nearly sorted arrays.
27 Given preorder and inorder traversal of a tree, construct the CO4
binary tree. Implement an efficient algorithm with O(n) time
complexity using a hash map to store the index of elements in the
inorder traversal.
28 Implement Dijkstra’s algorithm to find the shortest path from a CO4
source vertex to all other vertices in a weighted graph. Use both
adjacency matrix and adjacency list representations for the graph.
Ensure the algorithm handles negative weights appropriately.
29 Implement Kruskal’s algorithm to find the minimum spanning tree CO4
of a graph. Use a union-find data structure to detect cycles and
ensure the algorithm runs in O(E log E) time complexity.
30 Given a binary tree representing an arithmetic expression, write CO4
a function to evaluate the expression and return the result. Each
leaf node is an operand, and each internal node is an operator.
Implement an efficient recursive algorithm.

122 | P a g e
LIFE SKILLS FOR
PROFESSIONALS-I
B. Tech (Computer Science and
Program Name Engineering with specialization in Data
Science)
Course Name: Course Code L-T-P Credits
Life Skills for Professionals - I AEC011 3-0-0 3

Type of Course: AEC

Contact Hours

Version
Pre-requisite(s), if any:

Course Perspective. This course is designed to provide students with essential


skills in communication and numerical reasoning, critical for both personal and
professional development. The curriculum is structured to encompass fundamental
concepts of communication, enhance non-verbal communication abilities, and build
a strong foundation in basic and advanced number systems. Additionally, the course
integrates time management strategies to equip students with the tools necessary
for effective personal and academic planning. The course is divided into 5 modules:
a) Communication: An Introduction
b) Non-Verbal Communication
c) Basic number system
d) Number system
e) Time Management

123 | P a g e
The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

Perform calculations related to number systems, percentages and


CO 1
averages, quickly and accurately.

Exhibit confidence in tackling multiple-choice questions, time-constrained


CO 2
tests and competitive examinations.

Demonstrate active listening techniques, including attentive listening


CO 3
and reflection

Articulate and speak with confidence and express ideas clearly and
CO 4
coherently.

Improve confidence and display open and positive non-verbal


CO 5
communication.

Course Outline:
Title: Communication: An
Unit Number: 1 No. of hours: 6
Introduction
Content:
Definition, Nature and Scope of Communication, Importance and Purpose of
Communication, Process of Communication, Types of Communication, Barriers to
Communication, Essentials of Effective Communication
Title: Non-Verbal
Unit Number: 2 No. of hours: 6
Communication

124 | P a g e
Content:
Personal Appearance, Gestures, Postures, Facial Expression, Eye Contacts, Body
Language (Kinesics) Time language, Tips for Improving Non-Verbal Communication

Unit Number: 3 Title: Basic number system No. of hours: 6

Content:
Divisibility, Unit digit, Last two-digit, Remainder, Number of zero, Factor, LCM & HCF,
Simplification, Mixture, Average, Ratio, and Partnership.

Unit Number: 4 Title: Number system No. of hours: 6

Content:Factor, LCM & HCF, Simplification, Mixture, Average, Ratio, and


Partnership.
Unit Number: 5 Title: Time Management No. of hours: 6
Content:Time management strategies, setting goals, organizing, and planning
ahead, Making the most of your time Deal with distractions, Procrastination and
Avoiding distractions

Learning Experiences
▪ Interactive sessions for improving verbal and non-verbal communication
through discussions and role-playing.
▪ Hands-on problem-solving with numerical reasoning and time-bound
exercises.
▪ Non-verbal communication activities to practice body language, gestures,
and facial expressions.
▪ Time management simulations for goal setting, planning, and overcoming
distractions.
▪ Continuous feedback from instructors with personalized support through
Moodle LMS.
▪ Group work to promote peer learning and solve real-life communication
problems.
▪ Use of ICT tools like interactive boards and video tutorials for enhanced
learning.
125 | P a g e
Textbooks
• McKay, M., Davis, M., & Fanning, P. (2009). Messages: The Communication
Skills Book (3rd ed.). New Harbinger Publications.
• Bovee, C. L., & Thill, J. V. (2019). Business Communication Today (14th ed.).
Pearson Education.
• Covey, S. R. (2004). The 7 Habits of Highly Effective People. Simon &
Schuster.
• Agarwal, R. S. (2020). Quantitative Aptitude for Competitive Examinations.
S. Chand Publishing.

Additional Readings:
Communication Resources
I) LinkedIn Learning - Communication Foundations
a. This course offers foundational knowledge on effective communication
strategies, including verbal and non-verbal communication.
b. Link: LinkedIn Learning - Communication Foundations
II) Khan Academy - Grammar
a. Khan Academy provides a detailed course on grammar which is
fundamental to clear and effective communication.
b. Link: Khan Academy - Grammar
Non-Verbal Communication Resources
R 1. LinkedIn Learning - Developing Your Emotional Intelligence
• Enhancing emotional intelligence is key to improving non-verbal
communication skills. This course covers practical strategies.
• Link: LinkedIn Learning - Developing Your Emotional Intelligence
R 2. YouTube - TED Talks on Body Language
• TED Talks provide insightful videos on the importance of body
language and how to master it.
• Link: YouTube - TED Talks on Body Language
Number Systems and Basic Mathematics Resources
1. Khan Academy - Arithmetic and Pre-Algebra
126 | P a g e
• Comprehensive lessons on basic arithmetic and pre-algebra, including
number systems, divisibility, and more.
• Link: Khan Academy - Arithmetic and Pre-Algebra
2. Coursera - Introduction to Mathematical Thinking
• This course introduces mathematical thinking, including logic, which is
fundamental to understanding number systems.
• Link: Coursera - Introduction to Mathematical Thinking
3. edX - Introduction to Algebra
• Offers a strong foundation in algebra, covering topics such as factors,
LCM, HCF, and simplification.
• Link: edX - Introduction to Algebra
Time Management Resources
1. Coursera - Work Smarter, Not Harder: Time Management for Personal
& Professional Productivity
• This course provides practical strategies for effective time
management and productivity.
• Link: Coursera - Time Management
2. edX - Time Management Strategies for Project Management
• Focuses on time management within the context of project
management, offering valuable insights and techniques.
• Link: edX - Time Management Strategies
3. LinkedIn Learning - Time Management Fundamentals
• A course designed to help you master time management skills and
boost productivity.
• Link: LinkedIn Learning - Time Management Fundamentals

127 | P a g e
Summer Internship-I
B. Tech (Computer Science and
Program Name Engineering with specialization in Data
Science)
Course Name: Course Code L-T-P Credits
Summer Internship-I ENSI251 0-0-0 2

Type of Course: INT

Pre-requisite(s), if any: NA

Duration:
The internship will last for six weeks. It will take place after the completion of the
2nd semester and before the commencement of the 3rd semester.
Internship Options:
Students can choose from the following options:
1. Industry Internship (Offline):
1. Students must produce a joining letter at the start and a relieving letter
upon completion.
2. Global Certifications:
1. Students can opt for globally recognized certification programs relevant
to their field of study.
3. Research Internship:
1. Students can engage in a research internship under the mentorship of
a faculty member for six weeks.
4. On-Campus Industry Internship Programs:
1. The university will offer on-campus internships in collaboration with
industry partners.
5. Internships at Renowned Institutions:
1. Students can pursue summer internships at esteemed institutions such
as IITs, NITs, Central Universities, etc.
128 | P a g e
Report Submission and Evaluation:
1. Report Preparation:
1. Students must prepare a detailed report documenting their internship
experience and submit it to the department. A copy of the report will be
kept for departmental records.
2. Case Study/Project/Research Paper:
1. Each student must complete one of the following as part of their
internship outcome:
1. A case study
2. A project
3. A research paper suitable for publication
3. Presentation:
1. Students are required to present their learning outcomes and results
from their summer internship as part of the evaluation process.

Evaluation Criteria for Summer Internship (Out of 100 Marks)


1. Relevance to Learning Outcomes (30 Marks)
1. Case Study/Project/Research Paper Relevance (15 Marks):
o Directly relates to core subjects: 15 marks
o Partially relates to core subjects: 10 marks
o Minimally relates to core subjects: 5 marks
o Not relevant: 0 marks
2. Application of Theoretical Knowledge (15 Marks):
o Extensive application of theoretical knowledge: 15 marks
o Moderate application of theoretical knowledge: 10 marks
o Minimal application of theoretical knowledge: 5 marks
o No application of theoretical knowledge: 0 marks
2. Skill Acquisition (30 Marks)
1. New Technical Skills Acquired (15 Marks):
o Highly relevant and advanced technical skills: 15 marks
129 | P a g e
o Moderately relevant technical skills: 10 marks
o Basic technical skills: 5 marks
o No new skills acquired: 0 marks
2. Professional and Soft Skills Development (15 Marks):
o Significant improvement in professional and soft skills: 15 marks
o Moderate improvement in professional and soft skills: 10 marks
o Basic improvement in professional and soft skills: 5 marks
o No improvement: 0 marks
3. Report Quality (20 Marks)
• Structure and Organization (10 Marks):
o Well-structured and organized report: 10 marks
o Moderately structured report: 7 marks
o Poorly structured report: 3 marks
o No structure: 0 marks
• Clarity and Comprehensiveness (10 Marks):
o Clear and comprehensive report: 10 marks
o Moderately clear and comprehensive report: 7 marks
o Vague and incomplete report: 3 marks
o Incomprehensible report: 0 marks
4. Presentation (20 Marks)
• Content Delivery (10 Marks):
o Clear, engaging, and thorough delivery: 10 marks
o Clear but less engaging delivery: 7 marks
o Somewhat clear and engaging delivery: 3 marks
o Unclear and disengaging delivery: 0 marks
• Visual Aids and Communication Skills (10 Marks):
o Effective use of visual aids and excellent communication skills: 10 marks
o Moderate use of visual aids and good communication skills: 7 marks
o Basic use of visual aids and fair communication skills: 3 marks
o No use of visual aids and poor communication skills: 0 marks
Total: 100 Marks
130 | P a g e
Course Outcomes:
By the end of this course, students will be able to:
• Apply Theoretical Knowledge:
o Integrate and apply theoretical knowledge gained during coursework to
real-world industry or research problems.
• Develop Technical Skills:
o Acquire and demonstrate advanced technical skills relevant to the field
of computer science and engineering through practical experience.
• Conduct Independent Research:
o Execute independent research projects, including problem identification,
literature review, methodology design, data collection, and analysis.
• Prepare Professional Reports:
o Compile comprehensive and well-structured reports that document the
internship experience, project details, research findings, and
conclusions.
• Enhance Problem-Solving Abilities:
o Develop enhanced problem-solving and critical thinking skills by tackling
practical challenges encountered during the internship.
• Improve Professional and Soft Skills:
o Exhibit improved professional and soft skills, including communication,
teamwork, time management, and adaptability in a professional setting.
• Present Findings Effectively:
o Deliver clear and engaging presentations to effectively communicate
project outcomes, research findings, and acquired knowledge to peers
and faculty members.
• Pursue Lifelong Learning:
o Demonstrate a commitment to lifelong learning by engaging in
continuous skill development and staying updated with emerging trends
and technologies in the field.

131 | P a g e
Learning Experiences

▪ Real-world Application of Knowledge: Students will apply theoretical concepts


from their coursework to solve industry problems or research tasks in a practical
setting.
▪ Hands-on Experience in Professional Environments: Through industry or research
internships, students will gain hands-on technical experience, enhancing their
problem-solving abilities and technical competencies.
▪ Collaboration and Networking: Students will work with industry professionals or
academic mentors, fostering collaboration and expanding their professional
networks.
▪ Independent Research and Skill Development: The internship encourages
independent learning, allowing students to develop new technical skills and
conduct research, resulting in a project, case study, or publishable research paper.
▪ Structured Feedback and Assessment: Continuous feedback from mentors will
help students refine their professional skills, culminating in a well-organized
internship report and presentation.
▪ Presentation and Communication: Students will improve their presentation skills
by effectively communicating their findings, using visual aids, and demonstrating
their understanding of the work completed during the internship.
▪ Exposure to Emerging Trends: Engaging with current industry or research projects
helps students stay updated with emerging trends and technologies, fostering
lifelong learning.

132 | P a g e
R PROGRAMMING FOR DATA SCIENCE AND DATA
ANALYTICS LAB

B. Tech (Computer Science and Engineering with


Program Name:
specialization in Data Science)
Course Name:
Course Code L-T-P Credits
R Programming for Data
Science and Data SEC039 0-0-4 2
Analytics Lab
Type of Course: SEC

Pre-requisite(s), if any: Basic knowledge of the programming and statistics

Course Perspective. The course is designed to equip students with the essential
skills needed to manipulate, analyze, and visualize data using R. Students will learn
fundamental programming concepts, data structures, and functions in R, while also
exploring advanced topics such as statistical analysis, machine learning, and data
visualization techniques. Through hands-on lab sessions, students will gain practical
experience by working on real-world datasets, allowing them to apply theoretical
knowledge to solve complex data problems. This course aims to build a solid
foundation in R, preparing students for careers in data science, analytics, and related
fields, where they can leverage their skills to derive insights and make data-driven
decisions. The course is divided into 4 modules:

a) Getting Started with R and R Workspace

b) Basic Objects and Basic Expressions

c) Working with Basic Objects and Strings

d) Working with Data –Visualize and Analyze Data

The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

133 | P a g e
Experiment with basic R code, including creating variables, data types, and
CO 1
functions.

Examine and manipulate data using R, including importing and exporting


CO 2
data, subsetting data, merging data sets, and cleaning data

Build visualizations using R, including basic and advanced plots, graphs,


CO 3
and charts

Examine data with the help of statistical analysis using R, including


CO 4
descriptive statistics, regression analysis

CO = Course outcomes. A student is expected to have learnt concepts and


demonstrated/developed abilities or skills related to strategic management at the
end of the course.

Ex. No Experiment Title Mapped


CO/COs
1. Installation of R and Rstudio CO1
2. Create Matrix in R and perform following operations CO1, CO2
3. Create a matrix A and fill with values from 1 to 12. CO1, CO2
4. Create a matrix B and fill with values from 1 to 12. CO1, CO2
5. Find the transpose of matrix A and matrix B. CO1, CO2
6. Find the multiplication of matrix A and matrix B. CO1, CO2
7. Find the addition of matrix A and matrix B. CO1, CO2
8. Find the substation of matrix A and matrix B. CO1, CO2
9. Subsetting a Matrix. CO1, CO2
10. Create a matrix A and fill with values from 4 to 16 CO1, CO2
11. Get first 2 rows CO1, CO2
12. Subset top 2 row and left 2 columns CO1, CO2
13. Subset 3 row and 2 column CO1, CO2
14. Write a R Program to create a list a_list that contains CO1, CO2
numbers, strings, logical value, and vectors

134 | P a g e
15. Add names to the list a_list CO1, CO2
16. Add an element at the end of the list a_list CO1, CO2
17. Create a function calc This function will accept three arguments CO1, CO2
that include two numeric vectors x and y and one character
vector type. The character vector type will define the kind s
operation, the user wants to
perform.
18. Write a R program to find the numbers between 1000 CO1, CO2
and 1100 that satisfy (i ^ 2) %% 11 equals (i ^ 3) %%17,
where ^ is a power operator and %% (modulo operator)
returns the remainder of a division.
19. Develop a function that can behave CO1, CO2
differentlyaccording to the type of input object.

20. Create scatter plot using more than one dataset usevarious CO1, CO3
point styles and colors.

21. Create multi-period line plot, with mix different linetypes and CO1, CO3
create Multi Series Chart with Legend.

22. Create bar chart, pie chart and histogram with random CO1, CO3
data

Text Books/Reference Books:

I) "R in Action: Data Analysis and Graphics with R" by Robert I. Kabacoff

II) "R for Data Science" by Hadley Wickham and Garrett Grolemund

Additional Readings:

Online Learning Resources for " R PROGRAMMING FOR DATA SCIENCE AND
DATA ANALYTICS "

1. Coursera

"R Programming" by Johns Hopkins University: Part of the Data Science


Specialization, this course covers the basics of R programming.

Link- https://www.coursera.org/learn/r-programming

135 | P a g e
136 | P a g e
COMPETITIVE CODING
BOOTCAMP-I

B. Tech (Computer
Science and Engineering
Program Name:
with specialization in
Data Science)
Course Name: L-
Course
COMPETITIVE T- Credits
Code
CODING P
BOOTCAMP-I 3- 0
0-
0
Type of Course: AUDIT COURSE

Contact Hours 30

Version

Course Outcomes
CO1 Understand and apply problem-solving strategies and techniques relevant
to competitive programming
CO2 Analyze the efficiency of algorithms in terms of time and space complexity
using asymptotic notations
CO3 Apply core programming concepts such as functions, recursion, and
dynamic memory allocation to solve computational problems
CO4 Implement and analyze solutions for problems involving arrays and strings,
utilizing efficient operations and algorithms

137 | P a g e
Course Outline:
Title: Foundations of Competitive No. of hours: 8
Unit Number: 1
Programming
Content:
Introduction to Competitive Programming Platforms
▪ Overview of major platforms: Codeforces, LeetCode, HackerRank etc.
▪ Setting up accounts and environment for competitive programming.
▪ Solving introductory problems to get familiar with the platforms.
Problem-Solving Strategies
▪ Techniques for solving problems
▪ Greedy Algorithms: Understanding local optimality leading to global solutions.
▪ Divide and Conquer: Solving problems by breaking them into subproblems (with
examples like Merge Sort).
▪ Brute Force: Iterative approach to solve problems when constraints are small.

No. of hours: 8
Unit Number: 2 Title: Time and Space Complexity of Algorithms

Content:
Time and Space Complexity:
▪ Big O Notation: Definition, examples, and practical importance.
▪ Common Complexities: O(1), O(log n), O(n), O(n log n), O(n^2), etc.
▪ Impact of time and space complexity on algorithm performance.
▪ Asymptotic notations
▪ Best, Average and worst case analysis of Algorithms

No. of hours: 8
Unit Number: 3 Title: Core Programming Concepts

Content:

138 | P a g e
Functions: Definition and Declaration, Function Overloading, Recursion and
Backtracking
Pointers: Basics of Pointers and References, Pointer Arithmetic, Dynamic Memory
Allocation (malloc, free, new, delete)
Files: File I/O Operations (Reading/Writing), File Handling in C++/Java/Python, Vectors
(in C++/ArrayLists in Java): Declaration, Initialization, and Operations, Dynamic
Resizing

Unit Number: 4 Title: Arrays and Strings No. of hours: 6

Content:
Arrays: Operations, Manipulations
Strings: Operations, Substrings, Pattern Matching
Operations on arrays: Insertion, deletion, and traversal.
String operations: Concatenation, substring search.
Key Problems: Rotating arrays, reversing strings, finding longest substrings without
repeating characters

Experiment List

Mapped
Problem Statement
COs

1. Two Sum: Find two numbers that add up to a specific target. CO1

2. Best Time to Buy and Sell Stock: Maximize profit from stock prices. CO1

3. Valid Parentheses: Check if a string contains valid parentheses. CO1

4. Greedy Algorithm: Jump Game - Can you reach the end of the array? CO1

139 | P a g e
Mapped
Problem Statement
COs

5. Divide and Conquer: Merge Sort implementation to sort an array. CO1

6. Brute Force: Find all subsets of a given set. CO1

7. Greedy Algorithm: Minimum Number of Platforms Required for


CO1
Trains

8. Divide and Conquer: Maximum Subarray (Kadane's Algorithm) CO1

9. Brute Force: Count number of occurrences of a substring in a string. CO1

10. Greedy Algorithm: Coin Change Problem (Minimum Coins) CO1

11. Time Complexity: Check if a number is prime using O(√n)


CO2
complexity.

12. Sorting: QuickSort algorithm with O(n log n) complexity. CO2

13. Big O Notation: Analyze time complexity of an algorithm. CO2

14. Space Complexity: Fibonacci with O(n) space complexity. CO2

15. Time Complexity: Find first duplicate element in an array with O(n)
CO2
time.

16. Time Complexity: Search an element in a rotated sorted array in


CO2
O(log n) time.

17. Complexity Analysis: Binary Search Tree operations with


CO2
complexity O(log n).

18. Analyze best, average, and worst case for Insertion Sort. CO2

19. Time and Space Complexity: Check the complexity of an algorithm


CO2
(recurrences).

140 | P a g e
Mapped
Problem Statement
COs

20. Time Complexity: Compute factorial recursively with complexity


CO2
analysis.

21. Recursion: Generate all permutations of a string. CO3

22. Dynamic Memory Allocation: Implement a dynamic array (vector)


CO3
from scratch.

23. Backtracking: Solve the N-Queens problem using recursion. CO3

24. Pointers: Swap two numbers using pointers in C++. CO3

25. File Handling: Read and write data to a file in Python/C++/Java. CO3

26. Function Overloading: Implement overloaded functions for adding


CO3
integers and floats.

27. Dynamic Memory Allocation: Use malloc and free to manage


CO3
memory in C.

28. Recursion: Solve Tower of Hanoi using recursion. CO3

29. Arrays: Rotate an array to the right by k steps. CO4

30. Strings: Find the longest substring without repeating characters. CO4

Learning Experiences:

▪ Understanding Memory Management: Students grasp the concept of memory


allocation and deallocation through pointers, gaining insights into how data is
stored and accessed in memory.
▪ Pointer Arithmetic: Learners practice pointer arithmetic to navigate arrays and
structures, enhancing their ability to perform low-level data manipulations
efficiently.
▪ Dynamic Memory Allocation: Students experience dynamic memory allocation
with functions like malloc, calloc, and free, learning to manage memory
dynamically during runtime.

141 | P a g e
▪ Pointer and Function Interactions: Students explore how pointers are used to
pass arguments by reference, leading to more efficient function calls and
manipulation of data within functions.
▪ Pointer to Pointer Concepts: Learners work with pointer to pointer (double
pointers) to understand multi-level indirection and its applications in complex
data structures and dynamic memory management.
▪ Debugging with Pointers: Students enhance their debugging skills by
identifying and fixing pointer-related issues such as memory leaks, dangling
pointers, and segmentation faults.

Textbooks:
• "Introduction to Algorithms" by Thomas H. Cormen, Charles E. Leiserson,
Ronald L. Rivest, and Clifford Stein.
• "Algorithm Design" by Jon Kleinberg and Éva Tardos.
Online Resources:
• LeetCode (https://leetcode.com/)
• HackerRank (https://www.hackerrank.com/)
• GeeksforGeeks (https://www.geeksforgeeks.org/)

List of Suggested Competitive Programming Courses:


1. Algorithms and Data Structures by MIT OpenCourseWare
2. Introduction to Competitive Programming by NPTEL
3. Competitive Programming by HackerRank
4. The Bible of Competitive Programming & Coding Interviews
All students must complete one online course from the suggested programs.

Web References
▪ https://www.geeksforgeeks.org/competitive-programming-a-complete-
guide/
▪ https://www.geeksforgeeks.org/must-do-coding-questions-for-companies-
like-amazon-microsoft-adobe/
▪ https://github.com/parikshit223933/Coding-Ninjas-Competitive-
Programming

142 | P a g e
▪ https://www.hackerearth.com/getstarted-competitive-programming/
References to Interview Questions
▪ https://www.simplilearn.com/coding-interview-questions-article
▪ https://www.csestack.org/competitive-coding-questions/
▪ https://www.geeksforgeeks.org/a-competitive-programmers-interview/

143 | P a g e
SEMESTER: IV

PROBABILITY AND STATISTICS


B. Tech (Computer Science and Engineering
Program Name
with specialization in Data Science)
Course Name: Course Code L-T-P Credits
Probability and Statistics ENMA202 3-1-0 4
Type of Course: Major

Pre-requisite(s), if any:

Course Perspective. This course equips students with the fundamental tools of
probability and statistics to analyze and solve real-world engineering problems. This
Course Covers Probability, conditional probability, independence, random variables,
expected value, moment generating function, probability generating function,
characteristic function, specific discrete and continuous distributions, covariance,
correlation coefficient, central limit theorem. Sampling distributions, point and
interval estimation, testing of hypothesis, goodness of fit and contingency tables,
ANOVA, Correlation v/s Causation, linear regression, multiple Regression, Linear and
Non-Linear Regression, Parameters estimation via LSE. The course is divided into 5
modules:
a) Foundations of Probability
b) Engineering Applications of Probability Distributions
c) Descriptive Statistics and Regression Analysis
d) Inferential Statistics for Engineers

144 | P a g e
The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

Apply probability concepts (conditional probability, Bayes' theorem) to


CO 1 model uncertainties in engineering systems (e.g., system failures, signal
noise).

Utilize probability distributions (Bernoulli, Binomial, Poisson, etc.) to


CO 2 analyze random variables encountered in engineering processes (e.g.,
component lifetimes, machine errors).

Perform statistical analysis (descriptive statistics, correlation, regression)


CO 3
to summarize and interpret engineering data.

Conduct hypothesis testing (parametric and non-parametric) to draw


CO 4 statistically sound conclusions from engineering experiments (e.g.,
compare design performance, validate new materials).

Estimate unknown parameters in engineering models using techniques


CO 5
like least squares and maximum likelihood estimation.

Communicate results effectively using graphical techniques and


CO 6
statistical measures to support engineering decision-making.

Course Outline:

Unit
Title: Foundations of Probability No. of hours: 8
Number: 1
Content:
• Basic notions of probability, events, and set operations.

145 | P a g e
• Conditional probability and independence of events.
• Applications of Bayes' theorem in engineering problems (e.g., system
reliability, fault diagnosis).
• Random variables: Discrete and continuous types.
• Cumulative distribution functions (CDF) and probability mass/density
functions (PMF/PDF).
• Transformations of random variables and their impact on probability
distributions.
• Mathematical expectation, moments, and moment generating functions for
characterizing probability distributions.
Unit Title: Engineering Applications of
No. of hours: 8
Number: 2 Probability Distributions
Content:
• Joint and marginal distributions for analyzing multiple random variables in
engineering systems.
• Discrete distributions: Bernoulli, Binomial, Geometric, and Poisson
distributions and their applications in engineering (e.g., defect rates, service
arrivals).
• Continuous distributions: Uniform, Exponential, Gamma, and Normal
distributions and their applications in engineering (e.g., component lifetimes,
sensor measurements).
• Central Limit Theorem and its implications for approximating probability
distributions in engineering.
• Law of Large Numbers and its role in understanding statistical convergence in
engineering experiments.
Unit Title: Descriptive Statistics and
No. of hours: 8
Number: 3 Regression Analysis
Content:
• Descriptive statistics: Measures of central tendency (mean, median, mode)
and variability (variance, standard deviation).

146 | P a g e
• Visualization techniques (histograms, scatter plots) to explore and
communicate engineering data.
• Correlation coefficient and covariance to quantify relationships between
engineering variables.
• Linear regression for modeling the relationship between a dependent variable
and one or more independent variables in engineering contexts.
• Least squares method for fitting regression models and interpreting the results
in engineering applications.
Unit Title: Inferential Statistics for
No. of hours: 8
Number: 4 Engineers
Content:
• Introduction to statistical inference and the concept of sampling in engineering
experiments.
• Sampling distributions of mean and variance, and their role in statistical
inference.
• Estimation techniques: Point estimation and confidence intervals for unknown
parameters in engineering models.
• Hypothesis testing: Parametric (Z-test, T-test, ANOVA) and non-parametric
tests for making data-driven decisions in engineering.

Learning Experiences:
▪ Interactive Lectures: Participate in lectures using interactive PPTs and video
lectures to grasp fundamental concepts, supplemented by real-world
engineering applications of probability and statistics.

▪ Problem-Based Assignments: Solve problem-based theory assignments to


apply probability concepts and statistical techniques to model and analyze
engineering problems.
▪ Project-Based Labs: Engage in hands-on lab assignments where students will
work on real engineering datasets to perform statistical analysis, regression
modeling, and hypothesis testing.
147 | P a g e
▪ Collaborative Learning: Collaborate in group activities to tackle complex
engineering problems, analyze data, and interpret results, fostering teamwork
and peer learning.
▪ Continuous Assessment: Receive regular feedback through continuous
assessments, quizzes, and model question papers, with support available from
the course instructor for additional help.
▪ Use of Technology: Utilize ICT tools like Moodle LMS for accessing course
materials, submitting assignments, and participating in online discussions,
enhancing learning efficiency.
▪ Practical Application: Apply statistical techniques and probability distributions
to engineering scenarios through case studies, ensuring practical
understanding and real-world relevance.

Text Book
1. Sheldon M Ross, Introduction to Probability and Statistics for Engineers and
Scientists, Elsevier
Reference Books/Materials
1. Robert V. Hogg, Joseph W. McKean & Allen T. Craig (2013). Introduction to
Mathematical Statistics (7th edition), Pearson Education.
2. Irwin Miller &Marylees Miller (2014). John E. Freund’s Mathematical Statistics
with
Applications (8thedition). Pearson. Dorling Kindersley Pvt. Ltd. India.
3. Jim Pitman (1993). Probability, Springer-Verlag.
4. A. M. Yaglom and I. M. Yaglom (1983). Probability and Information. D. Reidel
Publishing Company. Distributed by Hindustan Publishing Corporation (India)
Delhi
Online NPTL lecture https://archive.nptel.ac.in/courses/111/105/111105090/
E-book: https://www.utstat.toronto.edu/mikevans/jeffrosenthal/book.pdf

Additional Readings:
148 | P a g e
I) Data Analysis using R: Students can learn and apply statistical techniques
using R, an open-source statistical programming language, to analyze real-
world datasets.
https://www.coursera.org/learn/data-analysis-r
https://www.udemy.com/course/data-analysis-with-r/
II) Hypothesis Testing with Excel: Students can learn how to perform
hypothesis testing using Excel's built-in statistical functions and conduct
statistical analyses on data sets.
https://www.coursera.org/learn/hypothesis-testing-python-excel

149 | P a g e
WEB PROGRAMMING WITH
PYTHON AND JAVASCRIPT LAB
B. Tech (Computer Science and
Program Name
Engineering)
Course Name: Course Code L-T-P Credits
Web programming with SEC035 0-0-4 2
Python and JavaScript lab
Type of Course: SEC

Pre-requisite(s), if any: Basics of Python

Defined Course Outcomes

COs Statements

CO 1 Understand the Fundamentals of Web Development

CO 2 Develop Dynamic Web Pages using JavaScript

CO 3 Build Backend Applications using Python and Flask


Integrate Frontend and Backend Technologies to Develop Full-Stack Web
CO 4 Applications

Course Objective: The objective of this course is to provide hands-on experience in


web programming using Python for backend development and JavaScript for frontend
development. Students will learn how to integrate these technologies to build
dynamic, interactive web applications.

150 | P a g e
Course Outline:
Week 1-2: Introduction to Web Development
• Lab Activities:
o Setting up the development environment (VS Code, Python, Node.js)
o Basics of HTML and CSS
o Introduction to JavaScript
o Creating simple static web pages
Week 3: JavaScript Basics
• Lab Activities:
o Variables, data types, and operators
o Control structures (if-else, loops)
o Functions and scope
o DOM manipulation
Week 4: Introduction to Python and Flask
• Lab Activities:
o Python basics (variables, control structures, functions)
o Introduction to Flask
o Setting up a Flask project
o Creating basic routes and templates
Week 5: Dynamic Web Pages with JavaScript
• Lab Activities:
o Working with JSON
o Making AJAX requests
o Fetch API
o Building a dynamic web page that interacts with a server
Week 6: Database Integration
• Lab Activities:
o Introduction to SQL and SQLite
o Connecting Flask to a SQLite database
o Performing CRUD operations (Create, Read, Update, Delete)
151 | P a g e
o Simple data-driven web application
Week 7: User Authentication
• Lab Activities:
o Implementing user registration and login
o Hashing passwords
o Session management in Flask
o Protecting routes with authentication
Week 8: Frontend Frameworks Introduction
• Lab Activities:
o Introduction to a frontend framework (React.js or Vue.js)
o Setting up a simple project
o Creating reusable components
Week 9: Integrating Frontend with Backend
• Lab Activities:
o Connecting the frontend framework with Flask backend
o Building a single-page application (SPA)
o Data fetching and state management
Week 10: Real-Time Features
• Lab Activities:
o Introduction to WebSocket
o Setting up real-time communication with Flask-SocketIO
o Creating a real-time chat application
Week 11-12: Final Project Development and Presentation
• Lab Activities:
o Planning and developing a final project
o Implementing features learned throughout the course
o Testing and debugging the application
o Preparing a project presentation
o Demonstrating the project to the class

152 | P a g e
Couse Outcomes (COs):
▪ Apply: Create functional static web pages using HTML and CSS, and enhance
them with basic JavaScript interactivity.

▪ Analyze: Debug and evaluate JavaScript and Python code to resolve issues in
dynamic web applications and server-side integration.

▪ Create: Develop a dynamic web application integrating Flask and a frontend


framework, implementing complex features and functionalities.

▪ Evaluate: Assess the performance and effectiveness of a final project, and


present it effectively, highlighting key functionalities and technical aspects.

Learning Experiences:
▪ Hands-On Lab Activities: Engage in lab sessions to set up development
environments, create static web pages with HTML/CSS, and build dynamic pages
using JavaScript, providing a practical foundation in web development tools and
technologies.
▪ Interactive JavaScript and Python Sessions: Gain experience with JavaScript
basics, including variables, control structures, and DOM manipulation, and learn
Python programming and Flask basics to build and manage web applications.
▪ Dynamic Web Development: Learn to work with JSON, make AJAX requests, and
use the Fetch API to build interactive, data-driven web pages that communicate
with servers.

▪ Database Integration: Explore SQL and SQLite, connect Flask to a database, and
perform CRUD operations, allowing students to create simple, data-driven web
applications.
153 | P a g e
▪ User Authentication: Implement user registration, login functionalities, password
hashing, and session management in Flask, focusing on securing web applications.
▪ Frontend Framework Introduction: Get introduced to frontend frameworks like
React.js or Vue.js, set up projects, and create reusable components to enhance
the development of dynamic user interfaces.
▪ Final Project: Apply learned concepts by planning, developing, and presenting a
comprehensive final project, including testing, debugging, and demonstrating the
application, integrating both frontend and backend skills.

Lab Experiments

Course
Project Problem Statement
Outcome

Develop a personal portfolio website using HTML, CSS,


Project 1: Personal
and basic JavaScript. The website should showcase the
Portfolio Website
user's skills, projects, and contact information.
Apply Create a landing page for a fictitious company using
Project 2: Basic
HTML and CSS. The landing page should include sections
Company Landing
such as an introduction, services, testimonials, and
Page
contact information.

Project 4:
Create a dynamic to-do list application where users can
Dynamic To-Do
add, edit, and delete tasks.
List
Analyze
Project 3:
Develop an interactive quiz application where users can
Interactive Quiz
answer multiple-choice questions.
Application

154 | P a g e
Course
Project Problem Statement
Outcome

Project 5: Simple Develop a simple blog platform using Flask where users
Blog Platform can create, read, update, and delete blog posts.
Create Project 6: Contact
Create a contact management system using Flask where
Management
users can store and manage their contacts.
System

Project 7: Develop an e-commerce website where users can


Evaluate E-Commerce browse products, add items to a shopping cart, and
Website complete purchases.

155 | P a g e
ANALYSIS AND DESIGN OF
ALGORITHMS
B. Tech (Computer Science and Engineering
Program Name
with specialization in Data Science)
Course Name: Course Code L-T-P Credits
Analysis and Design of ENCS202 4-0-0 4
Algorithms
Type of Course: Major

Pre-requisite(s), if any: - basic understanding of Data Structure and any


programming language

Course Perspective The course provides a comprehensive introduction to the


fundamental concepts of algorithm analysis and design, essential for various fields
such as computer science, engineering, data science, and artificial intelligence. This
course equips students with the tools to understand, analyze, and develop efficient
algorithms for solving complex computational problems. By covering both theoretical
foundations and practical applications, the course ensures a balanced approach to
learning. The course is divided into 5 modules:
a) Introduction and Complexity Analysis
b) Divide and Conquer, Greedy Algorithms, and Dynamic Programming
c) Graph Algorithms
d) Advanced Algorithms and Techniques
e) Advanced Topics and Implementation Techniques

156 | P a g e
The Course Outcomes (COs).

COs Statements

Understand fundamental algorithmic concepts and analyze their


CO 1
complexities.

CO 2 Analyze and evaluate the performance of various algorithms.

CO 3 Design efficient algorithms considering both time and space complexities.

Apply algorithmic problem-solving strategies to a variety of computational


CO 4
problems.

Develop skills to implement and optimize algorithms for real-world


CO 5
applications.

Course Outline:

Unit Number: 1 Title: Introduction and Complexity Analysis No. of hours: 10

Content Summary:
Introduction to Algorithms: Definition, importance, specification and role in problem-
solving.
Algorithm Analysis: RAM computational models, Time and space complexity, Asymptotic
Notations, best, average, and worst-case analysis, Performance measurement of
algorithms, rate of growth of algorithms
Recurrence Relations: Solving recurrences using substitution, recursion tree, and master
theorem.
Sorting: Analysis of Time complexities of comparison and Linear sorting Algorithms
Title: Divide and Conquer, Greedy
Unit Number: 2 No. of hours: 10
Algorithms, and Dynamic Programming

157 | P a g e
Content Summary:
Divide and Conquer: General method, Merge Sort, Quick Sort, Binary Search, Strassen’s
Matrix Multiplication, finding maximum and minimum.
Greedy Algorithms: Concept and characteristics, Fractional Knapsack, Activity Selection,
Huffman Coding.
Dynamic Programming: General Method, Longest Common Subsequence, 0/1 Knapsack
problem, Matrix Chain Multiplication, Travelling salesman problem.

Unit Number: 3 Title: Graph Algorithms No. of hours: 10

Content Summary:
Graph Representation: Adjacency matrix, adjacency list.
Graph Traversal Algorithms: Depth First Search (DFS), Breadth First Search (BFS),
Applications of graph (Topological sorting).
Shortest Path Algorithms: Dijkstra’s algorithm, Bellman-Ford algorithm, Floyd-Warshall
algorithm.
Minimum Spanning Tree Algorithms: Kruskal’s algorithm, Prim’s algorithm.

Unit Number: 4 Title: Advanced Algorithms and Techniques No. of hours: 10

Content Summary:
Backtracking: Concept, examples (N-Queens problem, Sum of subsets).
Branch and Bound: Concept, examples (Traveling Salesman Problem, 0/1 Knapsack
Problem).
String Matching Algorithms: Naive algorithm, Rabin-Karp algorithm, String matching
with finite automata, Knuth-Morris-Pratt (KMP) algorithm.
Introduction to NP-Completeness: The class P and NP, Polynomial time, NP-complete
and NP-hard.
Introduction to Approximation Algorithms and Randomized Algorithms

Learning Experiences
▪ Interactive Lectures and Assignments: Utilize lectures and problem-based
assignments to understand fundamental algorithm concepts and complexity
analysis.
158 | P a g e
▪ Hands-On Lab Sessions: Implement and test various algorithms through lab
projects to gain practical experience.

▪ Group Projects: Collaborate on projects to solve complex algorithmic problems


and develop advanced techniques.
▪ Case Studies: Apply algorithmic strategies to real-world problems through case
studies and discussions.
▪ ICT Tools: Use Moodle LMS for course materials and interactive boards for
algorithm visualization.
▪ Continuous Assessment: Engage in regular quizzes, assignments, and project
evaluations with detailed feedback.

Text Books
1. Introduction to Algorithms, 4TH Edition, Thomas H Cormen, Charles E
Lieserson, Ronald L Rivest and Clifford Stein, MIT Press/McGraw-Hill.
2. Fundamentals of Algorithms – E. Horowitz et al.

Additional Readings:
Online Learning Resources :
I) MIT OpenCourseWare - Introduction to Algorithms (6.006)
a. A comprehensive resource from MIT covering fundamental and
advanced algorithms.
b. Link: MIT OpenCourseWare - Introduction to Algorithms
II) HackerRank - Algorithms Practice
a. Provides a platform to practice and compete in coding challenges related
to algorithms.
b. Link: HackerRank - Algorithms Practice
III) LeetCode - Algorithm Problems
a. A platform offering a vast array of problems to practice algorithms and
data structures.
b. Link: LeetCode - Algorithm Problems
159 | P a g e
ANALYSIS AND DESIGN OF
ALGORITHMS LAB
B. Tech (Computer Science and
Program Name Engineering with specialization in Data
Science)
Course Name: Course Code L-T-P Credits
Analysis and Design of Algorithms ENCS256 0-0-2 1
Lab
Type of Course: Major

Pre-requisite(s), if any: - Data Structure

Defined Course Outcomes

COs

Analyze the time and space complexity of algorithms, demonstrating an


CO 1
understanding of asymptotic notations and performance metrics.
Implement and compare sorting algorithms, such as bubble sort and
CO 2 insertion sort, and apply the divide and conquer technique to algorithms
like merge sort and quick sort
Solve optimization problems using greedy and dynamic programming
CO 3 algorithms, such as the fractional knapsack problem and longest common
subsequence
Develop graph algorithms for traversal, shortest path, and minimum
CO 4 spanning tree, applying techniques like DFS, BFS, Dijkstra’s, and Kruskal’s
algorithms
Implement advanced algorithms for problems like N-Queens, traveling
CO 5 salesman, and string matching using backtracking, branch and bound,
and pattern matching techniques

160 | P a g e
Lab Experiments

Mapped
S.N Lab Task
CO/COs
Conduct a case study on the efficiency of different sorting algorithms (e.g., Insertion CO1
1 Sort, Bubble Sort, Merge Sort, Quick Sort, Counting Sort, Radix sort, Bucket sort).
Develop a tool in your preferred programming language to measure the performance CO1
2 of various algorithms.
Develop a resource allocation system for a fictional company using greedy CO2
3 algorithms.
Implement solutions for the Longest Common Subsequence, 0/1 Knapsack Problem, CO2

4 and Matrix Chain Multiplication.

Create a file compression tool using the Huffman Coding algorithm. Allow users to CO2
5 input a text file and generate the corresponding Huffman tree and encoded output
Create a program to represent a social network using both adjacency matrix and CO3
6 adjacency list representations.
Develop a application that uses Depth First Search (DFS) and Breadth First Search CO3
7 (BFS) algorithms.
Design a city navigation system that calculates the shortest path between locations CO3
8 using Dijkstra’s algorithm, Bellman-Ford algorithm, and Floyd-Warshall algorithm.
Implement a solution to the N-Queens problem using backtracking. Allow the user CO4
9 to input the size of the chessboard (N) and display all possible solutions
Write a program to find all subsets of a given set of positive integers that sum up CO4
10 to a given value using the backtracking technique.
Develop the simulation of various string matching algorithms and compare their CO4
runtime complexities. Display their time complexity graphs
11
Implement the Branch and Bound technique to solve the Traveling Salesman CO4
Problem (TSP) and compare it with brute-force solutions.
12

161 | P a g e
DATABASE MANAGEMENT
SYSTEMS
B. Tech (Computer Science and
Program Name Engineering with specialization in Data
Science)
Course Name: Course Code L-T-P Credits
Database Management System ENCS204 4-0-0 4
Major
Type of Course:

Pre-requisite(s), if any: Nil

Course Perspective. This course provides a comprehensive introduction to the


fundamental concepts and advanced techniques of database management systems
(DBMS). It is designed to equip students with the knowledge and skills required to
design, implement, and manage databases effectively. The course covers a broad
range of topics, including database architecture, data models, SQL, transaction
management, concurrency control, database recovery, and security.

The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

Understand the fundamental concepts and architecture of database


CO 1
management systems, including data models and ER modeling.

Utilize Structured Query Language (SQL) and relational algebra for


CO 2
effective database querying and manipulation.

162 | P a g e
Apply database design principles, including normalization and integrity
CO 3
constraints, to develop well-structured databases.

Analyze storage structures, transaction processing, concurrency control,


CO 4
and recovery protocols in databases.

Implement security measures and explore advanced database concepts


CO 5
such as distributed databases, data warehousing, and data mining.

Course Outline:

Unit
Title: Introduction No. of hours: 12
Number: 1
Content:
Introduction to DBMS: Overview, benefits, and applications.
Database System Architecture: Schemas, Instances, Data abstraction, data
models (network model, relational model, object-oriented data model), Three
schema architecture and data independence
Entity-Relationship Model: Entity Types, Entity Sets, Attributes, and Keys,
Relationship Types, Relationship Sets, ER diagrams, Naming Conventions, Design
issues.
Integrity Constraints: Primary key, foreign key, unique, not null, check
constraints.
Unit
Title: Relational Query Languages No. of hours: 8
Number: 2
Content:
Relational Database Design, Relational query languages, Relational algebra, Tuple
and domain relational calculus.
SQL: DDL (Data Definition Language), DML (Data Manipulation Language), DCL
(Data Control Language).

163 | P a g e
Query Processing and Optimization: Evaluation of relational algebra expressions,
query equivalence, join strategies, query optimization algorithms.
Database Design: Functional dependencies, normalization (1NF, 2NF, 3NF, BCNF,
4NF), dependency preservation, lossless decomposition.
Open Source and Commercial DBMS: Overview of MySQL, Oracle, DB2, SQL
Server.
Unit Title: Transaction Processing and
No. of hours: 12
Number: 3 Storage Strategies
Content:
Transaction Management: ACID properties, transaction states, serializability,
conflict and view serializability.
Concurrency Control: Lock-based protocols, timestamp-based protocols, multi-
version concurrency control, deadlock handling.
Database Recovery: Recovery concepts, recovery techniques (log-based recovery,
shadow paging), checkpoints.
Storage Strategies: File organization, indexing (single-level, multi-level), B-tree,
B+ tree, hashing (static and dynamic).
Unit Title: Advanced Topics and
No. of hours: 8
Number: 4 Database Security
Content:
Open-Source DBMS: Hands-on experience with MySQL and PostgreSQL,
Installation, Configuration, and Basic Operations, Hands-on: Create and manage
databases, tables, and user privileges, Perform queries, and data manipulations,
and use built-in functions
Fundamentals of MongoDB: Introduction to MongoDB, document-oriented
storage, CRUD operations, indexing, aggregation framework, Implement CRUD
operations, design schemas, and optimize queries in MongoDB
Advanced Database Topics: Object-oriented databases, object-relational
databases, logical databases, web databases.

164 | P a g e
Distributed Databases: Concepts, architecture, data fragmentation, replication,
distributed query processing.

Learning Experiences:

▪ Hands-on Lab Work: Apply DBMS concepts through practical lab assignments
with MySQL, PostgreSQL, and MongoDB.
▪ Interactive Lectures: Use PPTs and interactive boards for engaging lectures;
watch video lectures on key topics.
▪ Problem-Based Assignments: Solve theory assignments focused on database
design and query optimization.
▪ Group Projects: Collaborate on projects to design and implement databases
for simulated business cases.
▪ Case Studies: Analyze industry case studies to understand real-world DBMS
applications and challenges.
▪ Continuous Assessment: Engage in quizzes, assignments, and peer reviews
for ongoing evaluation and feedback.
▪ ICT Tools: Access course materials and resources on Moodle LMS for study
and revision.
▪ Instructor Support: Seek help and feedback from the instructor during office
hours and consultations.

Textbooks
1. R. Elmasri and S.B. Navathe, 2000, Fundamentals of Database Systems, 3rd
Ed, AW.
2. C.J. Date, 2000, An Introduction to Database Systems, 7th ED., Addison-
Wesley.
3. Database System Concepts”, 6th Edition by Abraham Silberschatz, Henry F.
Korth, S. Sudarshan, McGraw-Hill.

Additional Readings:

165 | P a g e
Online Learning Resources for "Database Management Systems"
1. NPTEL-Database Management System

2. MIT OpenCourseWare - Database Systems (6.830)


• Advanced course materials from MIT covering database system internals
and advanced topics.
• Link: MIT OpenCourseWare - Database Systems
3. Oracle - Database 2-Day Developer's Guide
• Official documentation and guide for Oracle database developers.
• Link: Oracle - Database 2-Day Developer's Guide
4. SQLBolt - Learn SQL with interactive exercises
• Interactive SQL tutorials and exercises to practice database querying.
• Link: SQLBolt - Learn SQL

166 | P a g e
DATABASE MANAGEMENT
SYSTEMS LAB
B. Tech (Computer Science and Engineering
Program Name
with specialization in Data Science)
Course Name: Course Code L-T-P Credits
Database Management
System Lab ENCS254 0-0-2 1

Type of Course: Major

Defined Course Outcomes

COs

Design and implement database schemas using both open-source and


CO 1
commercial DBMS, defining tables, relationships, and integrity constraints
Develop and analyze Entity-Relationship diagrams, relational schemas,
CO 2 and enforce normalization techniques to ensure database efficiency and
integrity
Write and execute SQL queries for data definition, manipulation, and
CO 3 complex data retrieval, demonstrating proficiency in relational algebra
and transaction processing
Implement advanced database concepts including indexing, concurrency
CO 4 control, recovery techniques, security features, and distributed database
processing

167 | P a g e
LIFE SKILLS FOR
PROFESSIONALS-II
B. Tech (Computer Science and Engineering with
Program Name: specialization in Data Science)
Course Name: Course Code L-T-P Credits
Life Skills for
Professionals - II AEC012 3-0-0 3
Type of Course: AEC

Contact Hours

Pre-requisite(s), if any:

Course Perspective. This course is designed to equip students with essential life
skills that are critical for personal and professional success. "Life Skills for
Professionals-II" builds on foundational skills and introduces advanced techniques
and practices that enhance personality, arithmetic proficiency, presentation
capabilities, and leadership qualities. The course focuses on practical application and
real-world scenarios to ensure students can effectively navigate professional
environments. The course is divided into 5 modules:
a) Personality Improvement:
b) Ratio & Its Application
c) Arithmetic
d) Presentation Skills
e) Leadership Skills

168 | P a g e
The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

Understand and apply the fundamental theories, models, and principles


CO 1
of communication.

Apply ability to communicate effectively through spoken and written


CO 2 forms. It includes developing skills in public speaking, interpersonal
communication, professional writing, and persuasive communication.

Evaluate the development of teamwork and collaboration skills. It


includes activities such as group projects, team-building exercises, and
CO 3
simulations that allow students to practice effective communication and
collaboration within diverse teams

Improve their communication skills in different professional and personal


CO 4 contexts, such as interviews, networking events, customer interactions,
and interpersonal relationships

Analyze ideas and information clearly and concisely through spoken


CO 5 language. They will develop the ability to articulate their thoughts, use
appropriate vocabulary, and convey their message with clarity.

CO = Course outcomes. A student is expected to have learnt concepts and


demonstrated/developed abilities or skills related to strategic management at the
end of the course.

169 | P a g e
Course Outline:
Unit
Title: Personality Improvement No. of hours: 6
Number: 1
Content Summary: Asking for and giving information, Offering and responding to
offers, Requesting and responding to requests, Congratulating people on their
success, Asking questions and responding politely, Apologizing and forgiving

Unit
Title: Ratio & its application No. of hours: 6
Number: 2
Content Summary: Time & Work, Time & Distance, Train, Boat & Stream,
Permutation & combination, Probability

Unit
Title: Arithmetic No. of hours: 6
Number: 3

Content Summary: Inequalities, Log, progression, Mensuration, BODMAS

Unit
Title: Presentation Skills No. of hours: 6
Number: 4
Content Summary: Presentation Skills, Telephone etiquettes, LinkedIn Profile and
professional networking, Video resumes & Mock interview sessions.

Unit
Title: Leadership skills No. of hours: 6
Number: 5
Content Summary: Nurturing future leaders, increasing productivity of the
workforce, Imparting Self-leadership, Executive leadership.

170 | P a g e
Learning Experiences
▪ Lectures will use PPTs, interactive boards, and video lectures for enhanced
engagement.
▪ Problem-based theory assignments will promote critical thinking and application.
▪ Project-based lab assignments will allow hands-on, real-world learning.
▪ Moodle LMS will provide access to course materials, question banks, and model
papers.
▪ Continuous assessments with feedback will track progress and offer personalized
guidance.
▪ Group activities and peer reviews will foster collaboration and teamwork.
▪ Instructor support will be available for additional feedback and assistance.

Textbooks
I) Aggarwal, R. S. (2014). Quantitative aptitude (Revised edition).
II) Gladwell, M. (2021). Talking to strangers.
III) Scott, S. (2004). Fierce conversations.
References
• "The 7 Habits of Highly Effective People" by Stephen R. Covey
• "Presentation Skills: The Essential Guide for Students" by Joan van Emden
and Lucinda Becker
• "Emotional Intelligence: Why It Can Matter More Than IQ" by Daniel Goleman
• "Arithmetic for Competitive Examinations" by R.S. Aggarwal
• "The Art of Public Speaking" by Dale Carnegie

171 | P a g e
MINOR PROJECT-II
B. Tech (Computer Science and Engineering with
Program Name:
specialization in Data Science)
Course Name: Course Code L-T-P Credits
Minor Project-II ENSI252 --- 2
Type of Course: Project

Pre-requisite(s), if any: NA

Duration:
The minor project will last for three months.
Project Requirements:
1. Understanding of Societal Problems:
o Students must have a basic understanding of societal problems, the
concerned domain, and relevant issues.
2. Critical Thinking and Problem Formulation:
o Students are expected to think critically about formulated problems and
review existing solutions.
3. Data Gathering and ETL Activities:
o Students should gather relevant data and perform ETL (Extract,
Transform, Load) activities to prepare the data for analysis.
4. Innovation and Entrepreneurship Focus:
o Students should develop innovative ideas or entrepreneurial solutions
to address the identified problems.
5. Implementation (Optional):
o While implementation of the proposed solutions is encouraged, it is not
strictly required. The focus should be on idea development.
Guidelines:
1. Project Selection:
o Choose a societal problem relevant to the field of computer science and
engineering.
172 | P a g e
o Ensure the problem is specific and well-defined.
2. Literature Review:
o Conduct a thorough review of existing literature and solutions related to
the problem.
o Identify gaps in existing solutions and potential areas for further
investigation.
3. Data Gathering and ETL:
o Collect relevant data from various sources.
o Perform ETL activities to clean, transform, and load the data for analysis.
4. Analysis and Critical Thinking:
o Analyze the problem critically, considering various perspectives and
implications.
o Evaluate the effectiveness and limitations of current solutions.
5. Innovation and Idea Development:
o Develop innovative ideas or entrepreneurial solutions to address the
identified problem.
o Focus on the feasibility, impact, and potential of the proposed solutions.
6. Documentation:
o Document the entire process, including problem identification, literature
review, data gathering, ETL activities, analysis, and ideas.
o Use appropriate formats and standards for documentation.
7. Presentation:
o Prepare a presentation summarizing the problem, existing solutions,
data analysis, and proposed ideas.
o Ensure the presentation is clear, concise, and well-structured.
Evaluation Criteria for Minor Project (Out of 100 Marks):
1. Understanding of Societal Problems (15 Marks):
o Comprehensive understanding of the problem: 15 marks
o Good understanding of the problem: 12 marks
o Basic understanding of the problem: 9 marks
o Poor understanding of the problem: 5 marks
173 | P a g e
o No understanding of the problem: 0 marks
2. Critical Thinking and Analysis (20 Marks):
o Exceptional critical thinking and analysis: 20 marks
o Good critical thinking and analysis: 15 marks
o Moderate critical thinking and analysis: 10 marks
o Basic critical thinking and analysis: 5 marks
o Poor critical thinking and analysis: 0 marks
3. Data Gathering and ETL Activities (20 Marks):
o Comprehensive and effective ETL activities: 20 marks
o Good ETL activities: 15 marks
o Moderate ETL activities: 10 marks
o Basic ETL activities: 5 marks
o Poor ETL activities: 0 marks
4. Innovation and Idea Development (25 Marks):
o Highly innovative and feasible ideas: 25 marks
o Good innovative ideas: 20 marks
o Moderate innovative ideas: 15 marks
o Basic innovative ideas: 10 marks
o Poor innovative ideas: 5 marks
o No innovative ideas: 0 marks
5. Documentation Quality (10 Marks):
o Well-structured and detailed documentation: 10 marks
o Moderately structured documentation: 7 marks
o Poorly structured documentation: 3 marks
o No documentation: 0 marks
6. Presentation (10 Marks):
o Clear, concise, and engaging presentation: 10 marks
o Clear but less engaging presentation: 7 marks
o Somewhat clear and engaging presentation: 3 marks
o Unclear and disengaging presentation: 0 marks
Total: 100 Marks
174 | P a g e
Course Outcomes:
By the end of this course, students will be able to:
1. Understand Societal Issues:
o Demonstrate a basic understanding of societal problems and relevant
issues within the concerned domain.
2. Critical Thinking:
o Think critically about formulated problems and existing solutions.
3. Data Management:
o Gather relevant data and perform ETL activities to prepare the data for
analysis.
4. Innovation and Entrepreneurship:
o Develop innovative ideas or entrepreneurial solutions to address
identified problems.
5. Literature Review:
o Conduct comprehensive literature reviews and identify gaps in existing
solutions.
6. Documentation:
o Document findings and analysis in a well-structured and appropriate
format.
7. Presentation Skills:
o Present findings and analysis effectively, using clear and concise
communication skills.
8. Problem Analysis:
o Analyze problems from various perspectives and evaluate the
effectiveness of existing solutions.
9. Professional Development:
o Develop skills in research, analysis, documentation, and presentation,
contributing to overall professional growth.

175 | P a g e
Learning Experiences

▪ Hands-on Project-Based Learning: Students will work on real-world societal


problems, applying their technical skills in data gathering, ETL processes, and
innovative problem-solving.

▪ Critical Thinking through Problem Formulation: Students will critically analyze


problems, review literature, and evaluate existing solutions, fostering a deeper
understanding of complex societal challenges.

▪ Collaboration and Peer Support: Group work will encourage peer collaboration,
allowing students to exchange ideas and provide feedback to one another,
enhancing teamwork and leadership skills.

▪ Innovation and Entrepreneurship Focus: The project will push students to


develop novel ideas and entrepreneurial solutions, promoting creativity and
out-of-the-box thinking.

▪ Continuous Support and Feedback: The course in charge will provide regular
feedback and support throughout the project, ensuring students stay on track
and improve their work iteratively.

▪ Use of ICT and Interactive Tools: Technology will be integrated through the
use of interactive boards, Moodle LMS for resource sharing, and video lectures
to aid students in understanding key project elements.

▪ Structured Assessments and Evaluations: Continuous assessment,


presentations, and final evaluations will provide students with structured
feedback, helping them improve their critical thinking, documentation, and
communication skills.

176 | P a g e
Introduction to Data Science

B. Tech (Computer Science and Engineering


Program Name with specialization in Data Science)

Course Name: Course Code L-T-P Credits


Introduction to Data Science ENSP204 4-0-0 4

Minor
Type of Course:

Pre-requisite(s), if any: Basic knowledge of the Statistics & Python.

Course Perspective. This course provides a foundational understanding of data


science, covering the essential concepts, tools, and techniques used to analyze and
interpret complex data. It begins with an overview of the data science lifecycle,
followed by an in-depth exploration of data collection, cleaning, analysis, and
visualization. Students will gain hands-on experience with key data science tools and
libraries, including Python, Pandas, NumPy, and Scikit-learn, to solve real-world
problems. The course is divided into 4 modules:

a) Introduction to Data Science

b) Python Libraries for data science

c) Data Visualization and Machine Learning

d) Introduction to Watson Studio

e) Working with Watson Studio

The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

Explore end-to-end data science industry use cases using the data
CO 1
analytics lifecycle.

Understand the scientific method for science projects, and the data science
CO 2
team key roles

177 | P a g e
Acquire technical expertise using popular open source data science
CO 3
frameworks including Jupyter notebooks and Python.

Gain a competitive edge using low-code cloud- based platform for data
CO 4
science - IBM Watson Studio

Data engineering and data modeling practices using machine learning


CO 5

CO = Course outcomes. A student is expected to have learnt concepts and


demonstrated/developed abilities or skills related to strategic management at the
end of the course.

Course Outline:

Unit Number:
Title: Introduction to No. of hours: 8
1
Data Science
Content Summary:

Introduction to Data Science


What is Data Science, what does a data scientist do? Various examples of Data Science in
the industries. How Python is deployed for Data Science applications. Various steps in the
Data Science process like data wrangling, data exploration and selecting the model.
Basic Python: History of Python, Features of python, Installation of jupyter notebook,
Python operators, Python Data types and its inbuilt functions, Conditional statement, Loops
Unit Number: Title: Python Libraries for
No. of hours: 8
2 data science
Content Summary:

Data Wrangling and Cleaning using pandas


Understanding the importance of data wrangling and cleaning in data science. Identifying
common challenges in data wrangling and cleaning. Handling missing data. Dealing with
outliers. Handling duplicates. Addressing inconsistent data. Normalization and scaling.
Data discretization. Data aggregation. Tools for data
wrangling and cleaning: Data cleaning in Python using Pandas
Unit Number:
Title: Data Visualization No. of hours: 8
3
and Machine Learning

178 | P a g e
Content Summary:

Data visualization principles and best practices Data


visualization with Matplotlib
and Seaborn, Introduction to Matplotlib. Using Matplotlib for plotting graphs and charts
like Scatter, Bar, Pie, Line, Histogram and more.
Supervised Learning
Understanding linear regression, Simple linear regression, Multiple linear regression, Model
building and evaluation, Feature selection and regularization, Understanding logistic
regression, Model building and evaluation, Feature selection and regularization, Confusion
matrix and classification report, Understanding decision trees, Building decision trees,
Pruning, Random forests, Ensemble methods, Understanding SVM, Kernel functions, Soft
margin SVM, Model building and evaluation, Hyperparameter tuning, Understanding Naive
Bayes, Bayesian probability, Building a Naive Bayes model, Multinomial Naive Bayes,
Bernoulli Naive Bayes
Unsupervised Learning
Use cases of unsupervised learning, What is clustering and Types of clustering. What is K-
means clustering and Hierarchical Clustering? Step by step calculation of k-means
algorithm.
Unit Number:
Title: Introduction to No. of hours: 8
4
Watson Studio
Content Summary:
Exploring IBM cloud and its catalog, Exploring Watson Services, understanding of Watson
Studio, Watson Machine Learning, Exploring Collaborators and Asset, Understanding Data
Mining, Exploring CRISP-DM, Represent and Transform Data, Data Visualization using
Watson, Working with Data Refinery Flow.

Unit Number:
Title: Working with No. of hours: 8
5
Watson Studio
Content Summary:
Overview of modelling techniques, Machine learning techniques, Accuracy, precision and
recall, Model building, Model Training, and Testing, Creating Jobs, Spaces, and Deployment,
Working with Jupyter Notebooks, and other Environments.

References

1. Machine Learning by Tom M. Mitchell - McGraw Hill Education; First edition


2. Pattern Recognition and Machine Learning (Information Science and Statistics) by
Christopher M. Bishop - Springer; 1st ed. 2006, Corr. 2nd printing 2011 edition
3. The Elements of Statistical Learning: Data Mining, Inference, and Prediction by Trevor
Hastie, Robert Tibshirani, Jerome Friedman - Springer; 2nd ed. 2009, Corr. 9th printing 2017
edition
179 | P a g e
Data Science LAB

Program Name Bachelor of Technology (CSE) with


specialization in Data Science

Course Code L-T-P Credits


Course Name:

Data Science lab ENSP254 0-0-2 1

Type of Course: Major

Pre-requisite(s), if any: -

Defined Course Outcomes

COs

CO 1 Learning numbers of Data Science related Phases on cloud.

CO 2 Implementing Data Exploration and Understanding on any data.

CO 3 Implementing Data Preparation and Conversion on any data.

CO 4 Understand various visualization chart and their characteristics.

Lab Experiments

Mapped
S.N Lab Task
CO/COs
1 Implement data cleaning and wrangling using pandas. CO2
2 Implement all data pre-processing steps in python. CO2
3 Implementation of linear and logistic regression. CO2
Implementation of Random forest algorithm CO2

4
Implementation of K-means clustering algorithm CO4

5
180 | P a g e
To Study About Data Refinery Tool in IBM Watson Studio CO2
6
To Study about different type of Visualization graph using DataRefinery Visualization CO2
features.
7
To Study About Different ML Algorithm/Estimator using scikit-learn. CO2

8
Introduction to AutoAI . CO2
9
Build Models using AutoAI and study about their different Hyperparameters. CO6
10
Deploying AutoAI Model. CO3

11
Do Fraud Analysis on Auto Insurance Datasets. CO4

12
To Study about different type of Visualization graph using DataRefinery CO2
Visualization features.
13
To Study About Different ML Algorithm/Estimator using scikit-learn. CO2

14

181 | P a g e
COMPETITIVE CODING
BOOTCAMP-II

B. Tech (Computer
Science and Engineering
Program Name:
with specialization in
Data Science)
Course Name: L-
Course
COMPETITIVE T- Credits
Code
CODING P
BOOTCAMP- 3- 0
II 0-
0
Type of Course: AUDIT COURSE

Contact Hours 30

Version

Course Outcomes
CO1 Understand fundamental tree structures, including AVL trees, and their
balancing mechanisms.
CO2 Apply graph representations (adjacency matrix and adjacency list) to solve
basic graph traversal problems.
CO3 Implement shortest path algorithms such as Dijkstra’s algorithm and
Bellman-Ford.
CO4 Explore dynamic programming concepts, including memoization and
tabulation, to solve classic problems.

182 | P a g e
No. of
Title: Object-Oriented Programming
Unit Number: 1 hours: 8
Concepts

Content:
OOP Basics: Encapsulation, Inheritance, Polymorphism, Class Design and
Object Creation
C++ OOP Concepts: Classes and Objects, Constructors/Destructors, Operator
Overloading, Inheritance, Virtual Functions
Java OOP Concepts: Classes and Objects, Constructors, Method Overloading,
Inheritance, Polymorphism, Abstract Classes, Interfaces
Python OOP Concepts: Classes and Objects, Constructors, Method Overloading
(via default arguments), Inheritance, Polymorphism, Multiple Inheritance
No. of
Title: Linked Lists, Stacks and Queues
Unit Number: 2 hours: 8

Content:
Linked Lists
▪ Singly and doubly linked lists: Creation, insertion, deletion, traversal.
▪ Key Problems: Reversing a linked list (iterative and recursive), detecting
cycles using Floyd’s cycle-finding algorithm.
Stacks and Queues :
▪ Stack operations: Push, pop, top, isEmpty.
▪ Queue operations: Enqueue, dequeue, front, isEmpty.
▪ Applications: Parentheses matching, queue-based problems (LeetCode
challenge - sliding window problems).

No. of
Unit Number: 3 Title: Sorting & Searching hours: 8

183 | P a g e
Content
Basic Sorting Algorithms
• Implementing Bubble Sort, Selection Sort, Insertion Sort.
• Understanding the time complexities and use cases of each algorithm.
• Key Problems: Sorting small arrays, finding the median, custom sorting
based on conditions (frequent LeetCode challenge).
Advanced Sorting Algorithms
• Implementing Merge Sort, Quick Sort, Heap Sort.
Binary Search
• Implementing binary search for sorted arrays.
• Applications: Finding an element in a sorted array, finding the position to
insert an element, LeetCode challenges like searching for ranges.
No. of
Unit Number: 4 Title: Trees
hours: 6
Content:
Basic Tree Concepts
• Introduction to tree terminology and operations.
• Tree Traversals: Preorder, inorder, postorder.
• Key Problems: Printing all elements in a tree, finding the depth of a tree.
Binary Trees
• Basic operations on binary trees: Insertion, deletion, searching.
• Key Problems: Finding the height of a binary tree, counting leaf nodes,
lowest common ancestor (common LeetCode challenges).
Binary Search Trees
Understanding BST properties: Every left subtree is smaller, and every right
subtree is larger.

Learning Experiences:

▪ Interactive Lectures: Engage students with visual PPTs, encourage questions,


and simplify complex concepts.

184 | P a g e
▪ Problem-Based Assignments: Assign theory problems and practical lab tasks
(e.g., segment trees, shortest path algorithms).
▪ Continuous Assessment: Regular quizzes, mini-projects, and formative
assessments to reinforce learning.
▪ Peer Collaboration: Group activities, case studies, and peer reviews for diverse
perspectives.
▪ Feedback and Support: Instructors provide timely feedback, and students seek
help as needed.
▪ Life-Long Learning: Foster curiosity, critical thinking, and skills beyond the
syllabus.

Textbooks:

▪ “Introduction to Algorithms” by Thomas H. Cormen, Charles E. Leiserson,


Ronald L. Rivest, and Clifford Stein
▪ “Data Structures and Algorithms Made Easy” by Narasimha Karumanchi

Online References:

1. GeeksforGeeks:

o Offers articles on advanced data structures like self-balancing trees,


segment trees, tries, and more1.

o Link to GeeksforGeeks

2. Coursera:

o Various data structures and algorithms courses available online.

o Examples include “Data Structures and Algorithms” from the University


of California San Diego and “Algorithms, Part I” from Princeton
University3.

o Link to Coursera

3. Princeton University References:

o Provides a list of seminal papers and advanced resources.

o Includes textbooks like “Algorithms, 4th Edition” by Robert Sedgewick


and Kevin Wayne4.

185 | P a g e
Lab Experiments

Mapped
Problem Statement
COs

Object-Oriented Programming Concepts

1. Design a Parking Lot System using OOP concepts (Classes, Objects,


CO1
Inheritance, Polymorphism).

2. Implement a Student Management System with Classes and


CO1
Objects.

3. Create a Banking System with Constructors and Destructors. CO1

4. Implement Method Overloading and Overriding in a chosen


CO1
language.

5. Demonstrate Multiple Inheritance with a practical example. CO1

6. Design a Library Management System with OOP principles. CO1

7. Use Virtual Functions to implement polymorphism. CO1

8. Implement Abstract Classes and Interfaces for a Payment System. CO1

9. Create a simple calculator with Operator Overloading. CO1

10. Build a Polymorphic class hierarchy (e.g., Shapes) to showcase


CO1
polymorphism.

Linked Lists, Stacks, and Queues

11. Reverse a Linked List (Iterative and Recursive). CO2

12. Detect a cycle in a Linked List using Floyd's Cycle-Finding


CO2
Algorithm.

13. Implement basic operations on a Singly Linked List (Insertion,


CO2
Deletion).

186 | P a g e
Mapped
Problem Statement
COs

14. Implement and traverse a Doubly Linked List. CO2

15. Implement Stack operations (Push, Pop, Top) using arrays or


CO2
linked lists.

16. Implement Queue operations (Enqueue, Dequeue, Front) using


CO2
arrays or linked lists.

17. Solve the Parentheses Matching problem using Stack. CO2

18. Implement Sliding Window Maximum using Deque. CO2

19. Check for balanced parentheses using Stack. CO2

20. Design a Circular Queue using linked list or array. CO2

Sorting & Searching

21. Implement Bubble Sort and analyze its time complexity. CO3

22. Implement Merge Sort to sort an array of integers. CO3

23. Find the Kth largest element in an array using Quick Sort. CO3

24. Perform Binary Search to find an element in a sorted array. CO3

25. Implement Heap Sort to sort a list of elements. CO3

26. Find the position to insert an element in a sorted array using


CO3
Binary Search.

27. Implement a custom sort based on frequency of elements. CO3

28. Compare sorting results using Insertion Sort and Bubble Sort. CO3

Trees

187 | P a g e
Mapped
Problem Statement
COs

29. Perform Preorder, Inorder, and Postorder Traversal on a Binary


CO4
Tree.

30. Find the Lowest Common Ancestor in a Binary Search Tree. CO4

Mapped
Problem Statement
COs

Trees

31. Implement an algorithm to check if a Binary Tree is balanced. CO4

32. Determine if two Binary Trees are identical. CO4

33. Find the maximum path sum in a Binary Tree. CO4

34. Convert a Binary Search Tree to a Greater Tree (where each


CO4
node's value is replaced by the sum of all greater values).

35. Count the number of nodes in a complete Binary Tree. CO4

36. Flatten a Binary Tree to a linked list using preorder traversal. CO4

37. Serialize and deserialize a Binary Tree. CO4

38. Find the diameter of a Binary Tree (the longest path between any
CO4
two nodes).

39. Check if a Binary Tree is a subtree of another Binary Tree. CO4

40. Find the level order traversal of a Binary Tree (Breadth-First


CO4
Search).

188 | P a g e
Semester: 5

THEORY OF COMPUTATION
B. Tech (Computer Science and Engineering
Program Name:
with specialization in Data Science)
Course Name: Theory of Course Code L-T-P Credits
Computation ENCS301 3-1-0 4
Type of Course: Major

Pre-requisite(s), if any: NA

Course Perspective. The course provides a comprehensive foundation in the


theoretical aspects of computer science, essential for understanding the underlying
principles of various computational processes and languages. This course delves into
the formalization and analysis of computation, encompassing finite automata,
pushdown automata, context-free grammars, Turing machines, and the Chomsky
hierarchy. The course is divided into 4 modules:
a) Introduction to Finite Automata
b) Pushdown Automata and Context-Free Languages
c) Chomsky Hierarchy and Turing Machines
d) Code Generation and Optimization

The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

Remember the fundamental concepts and terminology of automata


CO 1
theory..

Understand the relationships and equivalences between various


CO 2
computational models.

189 | P a g e
Apply conversion techniques between different forms of automata and
CO 3
grammars.

Analyze the properties and limitations of formal languages using


CO 4
theoretical tools.

CO 5 Evaluate the decidability and complexity of computational problems.

CO = Course outcomes. A student is expected to have learnt concepts and


demonstrated/developed abilities or skills related to strategic management at the
end of the course.

Course Outline:
Unit Title: Introduction to Finite
No. of hours: 10
Number: 1 automata
Content:
Finite Automata: Review of Automata, Description of Finite automata,
representation of FA,
Deterministic Finite Automata(DFA), Non-deterministic Finite
Automata(NFA),Equivalence of NFA and DFA Finite Automata with Epsilon
Transitions, Minimization of Deterministic Finite Automata
Finite Automata with output: - Moore machine and Mealy Machine, Conversion of
Moore machine to Mealy Machine & Vice-Versa
Applications of Finite Automata
Unit Title: Regular Expression and
No. of hours: 10
Number: 2 Languages
Content:
Regular Expressions: Introduction, Identities of Regular Expressions, Arden’s
theorem state and prove

190 | P a g e
Finite Automata and Regular Expressions: Converting from DFA’s to Regular
Expressions and Vive-Versa
Pumping Lemma for Regular Sets: Introduction, Applications of the pumping
lemma- Proving languages not to be regular, Closure properties of regular languages
Introduction to Formal languages: Definition of a Grammar, Derivations and the
Language Generated by a Grammar, Chomsky Classification of Languages
Unit Title: Context-Free Languages and
No. of hours: 12
Number: 3 Pushdown Automata (PDA)
Content:
Context Free Grammar (CFG): Properties of context free grammar, Derivations
using a grammar, Parse Trees, Ambiguity in context free grammar
Simplification of Context Free grammar: Reduced grammar, Removal of useless
Symbols and unit production
Normal Forms of CFG: Chomsky Normal Form (CNF), Greibach Normal Form (GNF)
Pumping lemma for CFG.
Push down Automata (PDA): Definition, acceptance by PDA, Types of PDA:
Deterministic PDA, Non-Deterministic PDA
Equivalence of CFL and PDA, interconversion
Unit Title: Turing Machine and
No. of hours: 8
Number: 4 Undecidability
Content Summary:
Turing Machines: Definition, types, and language acceptors, Design of Turing
Machines
Universal Turing Machine and its implications
Decidability and Undecidability
Halting problem of Turing Machine, Post-Correspondence Problem.
Properties of Recursive and Recursively Enumerable Languages

191 | P a g e
Learning Experiences:

▪ Problem-Solving: Engage in regular exercises designing finite automata and


Turing machines.
▪ Simulations: Use computational tools to simulate automata and visualize
operations.
▪ Critical Thinking: Analyze computation limits, including undecidability and the
Halting Problem.
▪ Mathematical Rigor: Practice theorem proofs, including the Pumping Lemma and
Arden’s Theorem.
▪ Computability Case Studies: Explore real-world computational challenges and
limits.
▪ Assessment on Applications: Evaluate through practical conversions and problem-
solving tasks.
▪ Peer Presentations: Present on key topics like the Chomsky hierarchy and
DFA/NFA conversions.
▪ Continuous Feedback: Quizzes and discussions with immediate feedback to track
progress.

Text Books/Reference Books:


III) Hopcroaft J.E., Ullman, J.D., and Rajiv Motwani, 2001, Introduction to
Automata Theory, Language & Computations, 3rdEd.,AW.
IV) Mishra K.L.P.& N. Chandrasekaran, 2000, Theory of Computer Science
Automata, Languages and Computation,5th Ed. , 2000, PHI
V) H.R. Lewis and C.H. Papadimitriou, “Elements of the theory of
Computation”, Second Edition, Pearson Education.
VI) Peter Linz, 2001, Introduction to formal Languages & Automata, 3rd Ed.,
NarosaPubl.
VII) J. Martin, “Introduction to Languages and the Theory of computation”
Third Edition, Tata Mc Graw Hill.

192 | P a g e
Additional Readings:
Online Learning Resources for "Theory of Computation"
2. NPTEL - Theory of Computation
• Online course by IITs on the fundamentals of the theory of computation.
• Link: NPTEL-Theory of Computation
3. Coursera - Automata Theory by Stanford University
• This course covers the fundamentals of automata theory, including finite
automata, regular expressions, and Turing machines.
• Link: Coursera - Automata Theory
4. MIT OpenCourseWare - Theory of Computation
• Advanced course materials from MIT covering various topics in the
theory of computation.
• Link: MIT OpenCourseWare - Theory of Computation

193 | P a g e
OPERATING SYSTEMS
B. Tech (Computer Science and Engineering
Program Name:
with specialization in Data Science)
Course Name: OPERATING Course Code L-T-P Credits
SYSTEMS ENCS303 4-0-0 4
Type of Course: Major

Pre-requisite(s), if any: Basics of programming

Course Perspective. This course provides a comprehensive introduction to the


fundamental principles and practices of operating systems. It covers essential
concepts such as process management, memory management, file systems, and I/O
systems, as well as more advanced topics like distributed operating systems and
concurrent systems. Through this course, students will gain a deep understanding of
how operating systems function, how they manage hardware resources, and how
they provide services to applications. The course also emphasizes practical skills in
implementing and managing operating system components and handling challenges
such as process synchronization, deadlocks, and system security. By the end of the
course, students will be well-equipped to apply these concepts in designing and
optimizing operating systems in various computing environments. The course is
divided into 4 modules:
a) Introduction to Operating Systems and Process
b) Memory & File Management
c) Process Synchronization, Deadlocks & I/O Systems
d) Distributed Operating Systems & Concurrent Systems

194 | P a g e
The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

Understand the fundamental concepts of operating systems, including


CO 1
their structure and types.

Analyze process scheduling algorithms and their impact on system


CO 2
performance.

Implement and manage memory allocation, paging, and virtual memory


CO 3
techniques.

Examine process synchronization mechanisms and handle deadlocks in an


CO 4
operating system environment.

Develop distributed operating systems and concurrent systems with a


CO 5
focus on fault tolerance and recovery mechanisms.

Course Outline:
Unit Title: Introduction to Operating
No. of hours: 10
Number: 1 System, Process and CPU Scheduling
Introduction: Definition, Role, Types of Operating System, Batch Systems, multi
programming, time–sharing, parallel, distributed and real-time systems, Operating
system structure, Operating system components and services, System calls, System
programs, Virtual machines.
Processes: Process Concept, Process Scheduling, Operation on Processes,
Cooperating Processes, Threads.
CPU Scheduling: Basic Concepts, Scheduling Criteria, Scheduling Algorithms,
Multiple Processor Scheduling, Real-Time Scheduling.
Unit Title: Threads, Synchronization,
No. of hours: 10
Number: 2 Deadlock and Memory Management

195 | P a g e
Threads: overview, Benefits of threads, User and kernel threads, Multithreaded
Models, Precedence Graph, Fork-Join, Cobegin-Coend construct.
Inter-process Communication and Synchronization: Background, The Critical-
Section Problem, Synchronization Hardware, Semaphores, Classical Problems of
Synchronization, Critical Regions, Monitors, Message Passing.
Deadlocks: System Model, Deadlock Characterization, Methods for Handling
Deadlocks, Deadlock Prevention, Deadlock Avoidance, Deadlock Detection, Recovery
from Deadlock.
Memory Management: Background, Logical vs. Physical Address space, swapping,
Contiguous allocation, Paging, Segmentation, Segmentation with Paging.
Title: Virtual Memory, Device
Unit
Management and Secondary-Storage No. of hours: 10
Number: 3
Structure
Virtual Memory: Demand Paging and its performance, Page-replacement
Algorithms, Allocation of Frames, Thrashing, page size and other Considerations,
Demand Segmentation.
Device Management: Techniques for Device Management, Dedicated Devices,
Shared Devices, Virtual Devices, Independent Device Operation, Buffering, Device
Allocation Consideration.
Secondary-Storage Structure: Disk Structure, Disk Scheduling, Disk
Management, Swap Space Management, Disk Reliability.
Unit Title: File-System Interface,
No. of hours: 10
Number: 4 implementation and Security
File-System Interface: File Concept, Access Methods, Directory Structure.
File-System Implementation: Introduction, File-System Structure, Basic File
System, Allocation Methods, Free-Space Management, Directory Implementation.
Security: Security problems, Goals of protection, Access matrix, Authentication,
Program threats, System threats, Intrusion detection.

196 | P a g e
Learning Experiences:

▪ Hands-on Simulations: Practice process scheduling and memory management in


simulated environments.
▪ Collaborative Projects: Work in teams to implement CPU scheduling and memory
allocation algorithms.
▪ Problem-Solving: Tackle deadlock prevention and synchronization challenges in
labs.
▪ Interactive Discussions: Engage in class discussions on process synchronization,
file systems, and security.
▪ Application-Based Learning: Apply OS concepts to optimize performance in
distributed systems.
▪ Assessment of Real-World Systems: Evaluate different scheduling and memory
management techniques in practical systems.
▪ Critical Thinking: Solve classical synchronization problems like the producer-
consumer and dining philosophers.
▪ Peer Learning: Share and discuss solutions to OS challenges through group
presentations.

Textbooks
1. Operating System Concepts, Abraham Silberschatz, Peter Baer Galvin, Greg
Gagne, Wiley
2. Modern Operating Systems, Andrew S. Tanenbaum and Herbert Bos,
Pearson, 4th Edition, 2014.
3. Operating Systems: Internals and Design Principles, William Stallings,
Pearson, 9th Edition, 2017.
4. Operating Systems: Three Easy Pieces, Remzi H. Arpaci-Dusseau and Andrea
C. Arpaci-Dusseau Arpaci-Dusseau Books, 1st Edition, 2018

197 | P a g e
References
I) MukeshSinghal and N. G. Shivaratri, “Advanced Concepts in Operating
Systems”, McGrawHill, 2000
II) Abraham Silberschatz, Peter B. Galvin, G. Gagne, “Operating System
Concepts”, Sixth Addison Wesley Publishing Co., 2003.
III) Andrew S. Tanenbaum, “Modern Operating Systems”, Second Edition,
Addison Wesley, 2001.
IV) Tannenbaum, “Operating Systems”, PHI, 4th Edition.

Additional Readings:
Online Learning References :
I) MIT OpenCourseWare - Operating System Engineering
a. Advanced course materials from MIT covering various topics in
operating system design and implementation.
b. Link: MIT OpenCourseWare - Operating System Engineering
II) NPTEL - Operating System by IITs
a. Online course by IITs providing in-depth coverage of operating system
principles and practices.
b. Link: NPTEL - Operating System

198 | P a g e
OPERATING SYSTEM LAB
B. Tech (Computer Science and
Program Name: Engineering with specialization in Data
Science)
Course Name: OPERATING Course Code L-T-P Credits
SYSTEMS LAB ENCS351 0-0-2 1
Type of Course: Major

Pre-requisite(s), if any: Basics of programming

Proposed Lab Experiments


Defined Course Outcomes

COs

Implement and analyze process creation, management, and CPU


CO 1 scheduling algorithms, demonstrating the ability to simulate an operating
system environment.
Develop and evaluate multithreaded applications, demonstrating
CO 2 synchronization, deadlock handling, and memory management
techniques.
Simulate virtual memory management, device management, and disk
CO 3 scheduling algorithms, showcasing the application of operating system
concepts.
Design and implement secure file systems, demonstrating file
CO 4
operations, directory management, and access control mechanisms.

199 | P a g e
List of Experiments
Ex Experiment Title Mapped
No CO/COs
1 Implement a program that simulates system calls for basic operations such CO1
as process creation, file manipulation, and device management.
Demonstrate how system calls interact with the operating system
components and services.
2 Develop a process scheduling simulation that demonstrates different CPU CO1
scheduling algorithms (FCFS, SJF, Round Robin, Priority Scheduling).
Compare the performance of each algorithm based on scheduling criteria
such as turnaround time, waiting time, and response time.
3 Create a multi-threaded application to illustrate process operations, CO1
including creation, termination, and inter-process communication.
Implement thread management to demonstrate the concept of cooperating
processes and the benefits of threading.
4 Implement a multi-threaded program to demonstrate the benefits of CO2
threads over single-threaded processes. Use different multithreading
models such as user-level and kernel-level threads and simulate various
thread operations.
5 Design and implement solutions for classical synchronization problems such CO2
as the Producer-Consumer problem, Readers-Writers problem, and Dining
Philosophers problem using semaphores, critical regions, and monitors.
6 Create a simulation to detect and handle deadlocks in a system. Implement CO2
deadlock prevention, avoidance, and detection algorithms. Demonstrate
recovery from deadlock scenarios.
7 Develop a memory management simulator that demonstrates different CO2
memory allocation techniques such as contiguous allocation, paging, and
segmentation. Implement swapping and address translation between logical
and physical address spaces.

200 | P a g e
8 Implement a demand paging system to simulate virtual memory CO3
management. Evaluate the performance of different page-replacement
algorithms (FIFO, LRU, Optimal) and analyze the effects of thrashing.
9 Create a simulation for device management that includes buffering, device CO3
allocation, and handling dedicated, shared, and virtual devices.
Demonstrate techniques for independent device operation and
management.
10 Develop a disk scheduling simulator to compare the performance of different CO3
disk scheduling algorithms (FCFS, SSTF, SCAN, C-SCAN). Implement disk
management techniques and swap space management.
11 Implement a file system simulator to demonstrate different file access CO4
methods (sequential, direct, indexed). Design a directory structure and
simulate file operations such as creation, deletion, reading, and writing.
12 Develop a program to simulate file system implementation techniques, CO4
including different file allocation methods (contiguous, linked, indexed) and
free-space management techniques. Implement a basic file system and
directory structure.

201 | P a g e
Machine Learning with Python

B. Tech (Computer Science and Engineering


Program Name with specialization in Data Science)

Course Name: Course Code L-T-P Credits


Machine Learning with ENSP311 4-0-0 4
Python

Minor
Type of Course:

Pre-requisite(s), if any: Basic knowledge of the Statistics & Python.

Course Perspective. This course provides a comprehensive introduction to


machine learning using Python, focusing on practical implementation and theoretical
understanding. Students will learn the fundamentals of machine learning, explore
various algorithms, and apply them to real-world datasets using Python libraries such
as Scikit-learn, TensorFlow, and Keras. The course includes hands-on coding
exercises and projects to reinforce learning. The course is divided into 4 modules:

1. INTRODUCTION TO AI-ML
2. INTRODUCTION TO MACHINE LEARNING
3. DATA PRE-PROCESSING AND DATA
4. SUPERVISED LEARNING : REGRESSION AND CLASSIFICATION
5. UNSUPERVISED LEARNING

The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

To introduce students to the basic concepts and techniques of Machine


CO 1
Learning.

To develop skills of using recent machine learning software for solving


CO 2
practical problems.

CO 3 To gain experience of doing independent study and research.

202 | P a g e
Ability to identify the characteristics of datasets and compare the trivial
CO 4
data and big data for various applications.

CO = Course outcomes. A student is expected to have learnt concepts and


demonstrated/developed abilities or skills related to strategic management at the
end of the course.

Course Outline:

Unit Number: Title: INTRODUCTION TO


AI-ML No. of hours: 8
1
Content Summary:
Defining Artificial Intelligence and Machine learning, Artificial Intelligence Use cases, Tools used
in AI : Python , Jupyter Notebook, Anaconda, SKLearn, R language, Computer Vision, Natural
Language Processing, Data Visualization and its importance in understanding data.

Unit Number: Title: INTRODUCTION TO


No. of hours: 8
2 MACHINE LEARNING
Content Summary:
Application of Machine Learning, Supervised vs Unsupervised Learning, Python libraries
suitable for Machine Learning : sklearn, pytorch, tensorflow

Unit Number:
Title: DATA PRE- No. of hours: 8
3
PROCESSING AND DATA
Content Summary:
Identifying and handling the missing values, dealing with duplicates, Encoding the categorical
data, Normalization, Standardization, PCA

Unit Number:
Title: SUPERVISED No. of hours: 8
4
LEARNING : REGRESSION
AND CLASSIFICATION
Content Summary:
Linear Regression,Non-Linear Regression, Model evaluation methods, K-Nearest Neighbour,
Decision Tree, Logistic Regression, Support Vector Machines, Model Evaluation

Unit Number:
Title: UNSUPERVISED No. of hours: 8
5
203 | P a g e
LEARNING

Content Summary:
K-means Clustering, Hierarchical Clustering, Density-Based Clustering

References

1. Machine Learning by Tom M. Mitchell - McGraw Hill Education; First edition


2. Pattern Recognition and Machine Learning (Information Science and Statistics) by
Christopher M. Bishop - Springer; 1st ed. 2006, Corr. 2nd printing 2011 edition
3. The Elements of Statistical Learning: Data Mining, Inference, and Prediction by Trevor
Hastie, Robert Tibshirani, Jerome Friedman - Springer; 2nd ed. 2009, Corr. 9th printing 2017
edition.

204 | P a g e
Machine Learning with Python
Lab

B. Tech (Computer Science and


Program Name: Engineering with specialization in Data
Science)

Course Code L-T-P Credits


Course Name: OPERATING
SYSTEMS LAB ENSP361 0-0-2 1

Type of Course: Major

Pre-requisite(s), if any: Basics of programming

Proposed Lab Experiments

Defined Course Outcomes

COs

CO 1 Popular algorithms: Regression, Classification, and Clustering

Learn Latest ML Techniques and algorithms to encourage self-learning


CO 2

CO 3 Implement ML on music, images, etc.


CO 4 Paradigms of supervised and unsupervised learning

List of Experiments
Ex Experiment Title Mapped
No CO/COs
1 Data pre-processing using pandas CO1
2 Data Visualization using matplotlib and sklearn CO2

205 | P a g e
3 Data pre-processing using sklearn CO1
4 Implement Decision tree classifier on churn data CO4
5 Saving and loading a model CO3
6 Implementing Linear regression CO4
7 Implement Logistic regression algorithm CO3
8 Build a simple ANN using tensorflow CO1
9 Build a simple CNN using tensorflow CO1
10 MNIST Digit Classification CO4
11 Implement KNN algorithm on a real dataset CO2
12 Implement SVM algorithm for classification CO2
13 Take all previously built models and evaluate them. CO1
14 Implementing Random Forest algorithm for classification of churn customer data CO1
15 K-Means: clustering of Real dataset CO1
16 Basics of Image Processing using CV2 python library CO3
17 Fruit images classification using CNN CO2
18 Implement SVM algorithm for regression CO3
19 Creating a simple chat bot CO2
20 Machine Learning Model deployment CO3
21 Sentiment Analysis on Twitter Data CO2
22 Stock Market Prediction CO1
23 Bitcoin value Prediction CO1
24 Weather Prediction CO4
25 Cats vs Dogs image classifier CO3

206 | P a g e
Summer Internship-II
B. Tech (Computer Science and
Program Name: Engineering with specialization in Data
Science)
Course Name: Summer Course Code L-T-P Credits
Internship-II ENSI351 0-0-0 2

Type of Course: INT

Pre-requisite(s), if any: NA

Duration:
The internship will last for six weeks. It will take place after the completion of the 4th
semester and before the commencement of the 5th semester.
Internship Options:
Students can choose from the following options:
• Industry Internship (Offline) or Internship in Renowned Institutions
(Offline):
o Students must produce a joining letter at the start and a relieving letter
upon completion.
Report Submission and Evaluation:
1. Report Preparation:
o Students must prepare a detailed report documenting their internship
experience and submit it to the department. A copy of the report will be
kept for departmental records.
2. Case Study/Project/Research Paper:
o Each student must complete one of the following as part of their
internship outcome:
1. A case study
2. A project
3. A research paper suitable for publication
207 | P a g e
3. Presentation:
o Students are required to present their learning outcomes and results
from their summer internship as part of the evaluation process.
Evaluation Criteria for Summer Internship (Out of 100 Marks):
1. Relevance to Learning Outcomes (30 Marks)
o Case Study/Project/Research Paper Relevance (15 Marks):
1. Directly relates to core subjects: 15 marks
2. Partially relates to core subjects: 10 marks
3. Minimally relates to core subjects: 5 marks
4. Not relevant: 0 marks
o Application of Theoretical Knowledge (15 Marks):
1. Extensive application of theoretical knowledge: 15 marks
2. Moderate application of theoretical knowledge: 10 marks
3. Minimal application of theoretical knowledge: 5 marks
4. No application of theoretical knowledge: 0 marks
2. Skill Acquisition (40 Marks)
o New Technical Skills Acquired (20 Marks):
1. Highly relevant and advanced technical skills: 20 marks
2. Moderately relevant technical skills: 15 marks
3. Basic technical skills: 10 marks
4. No new skills acquired: 0 marks
o Professional and Soft Skills Development (20 Marks):
1. Significant improvement in professional and soft skills: 20 marks
2. Moderate improvement in professional and soft skills: 15 marks
3. Basic improvement in professional and soft skills: 10 marks
4. No improvement: 0 marks
3. Report Quality (15 Marks)
o Structure and Organization (8 Marks):
1. Well-structured and organized report: 8 marks
2. Moderately structured report: 6 marks
3. Poorly structured report: 3 marks
208 | P a g e
4. No structure: 0 marks
o Clarity and Comprehensiveness (7 Marks):
1. Clear and comprehensive report: 7 marks
2. Moderately clear and comprehensive report: 5 marks
3. Vague and incomplete report: 2 marks
4. Incomprehensible report: 0 marks
4. Presentation (15 Marks)
o Content Delivery (8 Marks):
1. Clear, engaging, and thorough delivery: 8 marks
2. Clear but less engaging delivery: 6 marks
3. Somewhat clear and engaging delivery: 3 marks
4. Unclear and disengaging delivery: 0 marks
o Visual Aids and Communication Skills (7 Marks):
1. Effective use of visual aids and excellent communication skills: 7
marks
2. Moderate use of visual aids and good communication skills: 5
marks
3. Basic use of visual aids and fair communication skills: 2 marks
4. No use of visual aids and poor communication skills: 0 marks
Total: 100 Marks
Course Outcomes:
By the end of this course, students will be able to:
1. Apply Theoretical Knowledge:
o Integrate and apply theoretical knowledge gained during coursework to
real-world industry or research problems.
2. Develop Technical Skills:
o Acquire and demonstrate advanced technical skills relevant to the field
of computer science and engineering through practical experience.
3. Conduct Independent Research:
o Execute independent research projects, including problem identification,
literature review, methodology design, data collection, and analysis.
209 | P a g e
4. Prepare Professional Reports:
o Compile comprehensive and well-structured reports that document the
internship experience, project details, research findings, and
conclusions.
5. Enhance Problem-Solving Abilities:
o Develop enhanced problem-solving and critical thinking skills by tackling
practical challenges encountered during the internship.
6. Improve Professional and Soft Skills:
o Exhibit improved professional and soft skills, including communication,
teamwork, time management, and adaptability in a professional setting.
7. Present Findings Effectively:
o Deliver clear and engaging presentations to effectively communicate
project outcomes, research findings, and acquired knowledge to peers
and faculty members.
8. Pursue Lifelong Learning:
o Demonstrate a commitment to lifelong learning by engaging in
continuous skill development and staying updated with emerging trends
and technologies in the field.

Learning Experiences:

▪ Real-World Application: Students apply theoretical concepts learned in their


coursework to practical problems in industry or research settings, providing a
hands-on approach to learning.
▪ Technical Skill Development: Through their internships, students acquire and
demonstrate new technical skills relevant to computer science and
engineering, enhancing their practical knowledge and expertise.
▪ Independent Research Projects: Students undertake research projects, which
include problem identification, literature review, methodology design, and data
analysis, fostering independent research skills.
210 | P a g e
▪ Professional Report Preparation: Students compile detailed reports
documenting their internship experiences, project outcomes, and research
findings, emphasizing report structure, clarity, and comprehensiveness.
▪ Presentation Skills: Students prepare and deliver presentations on their
internship projects, focusing on clear communication, effective use of visual
aids, and engaging delivery.
▪ Professional and Soft Skills Enhancement: Students develop key professional
skills such as teamwork, time management, and adaptability, as well as soft
skills like communication and problem-solving.
▪ Continuous Feedback and Support: Regular feedback sessions are held to
guide students, address challenges, and support their learning throughout the
internship, ensuring a continuous improvement process.
▪ Peer Collaboration: Students collaborate with peers to exchange insights,
provide feedback on each other's work, and support one another in their
internship projects and presentations.
▪ Industry Exposure: Students gain practical experience and insights into
industry practices, preparing them for future career opportunities and
enhancing their understanding of professional environments.
▪ Commitment to Lifelong Learning: Students are encouraged to engage in
continuous skill development and stay updated with emerging trends and
technologies in computer science and engineering, promoting lifelong learning.

211 | P a g e
LIFE SKILLS FOR
PROFESSIONALS-III
B. Tech (Computer Science and
Program Name: Engineering with specialization in Data
Science)
Course Name: Course Code L-T-P Credits
Life Skills for Professionals -III AEC013 3-0-0 3
Type of Course: AEC

Pre-requisite(s), if any:

Course Perspective. The course is designed to equip students with essential skills
for both professional and personal development. This course emphasizes the
importance of data interpretation, logical reasoning, stress management, and
employability skills, ensuring students are well-prepared to tackle real-world
challenges. Through a combination of theoretical knowledge and practical exercises,
students will enhance their analytical abilities, problem-solving skills, and emotional
intelligence. The course is structured into five comprehensive modules, each
targeting a specific skill set vital for professional success and personal well-being:
a) Data Interpretation
b) Logical Reasoning
c) Logical & Non-verbal Reasoning
d) Understanding Stress
e) Employability Skills

212 | P a g e
The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

Understand their critical thinking skills and become adept at analyzing


CO 1 and evaluating information, identifying problems, generating innovative
solutions, and making informed decisions.

Apply digital literacy skills necessary for the modern workplace and
CO 2
become proficient in using online platforms relevant to their field.

Evaluate Contribute positively, respect different perspectives, resolve


CO 3
conflicts, and achieve shared goals.

Improve skills related to career planning, job search strategies, and


CO 4
personal branding

Create leadership skills and to motivate and inspire others, manage


CO 5 projects effectively, and demonstrate a proactive and responsible
approach to their spoken language.

CO = Course outcomes. A student is expected to have learnt concepts and


demonstrated/developed abilities or skills related to strategic management at the
end of the course.

Course Outline:
Unit
Title: Data interpretation No. of hours: 6
Number: 1

Content Summary: Table chart, Line graph, Bar graph, Pie chart

213 | P a g e
Unit
Title: Logical Reasoning No. of hours: 6
Number: 2

Content Summary: Coding & Decoding, Sitting arrangement, Calendar, Clock,


Direction Sense, Blood relation, Syllogism.

Unit
Title: Logical & Non-verbal reasoning No. of hours: 6
Number: 3

Content Summary: Series, Puzzle Text, Statement & Arguments, Cube & Dice,
Non-verbal Reasoning

Unit
Title: Understanding Stress No. of hours: 6
Number: 4
Content Summary:
Introduction to Stress (i) Introduction to stress: Meaning, Definition, Eustress,
Distress, (ii) Types of stress: Acute stress, Episodic Acute stress and chronic stress,
signs and Symptoms
Sources of stress (i) Psychological, Social, Environmental (ii) Academic, Family and
Work stress
Impact of stress
Unit
Title: Employability skills No. of hours: 6
Number: 5
Content Summary: Identifying job openings, enhancing interpersonal skills,
including teamwork, Applying for a job, Preparing Cover letters, preparing a
CV/Resume and Effective Profiling, Group Discussions, Preparing for and Facing a
Job Interview, Mock Interview, Feed Back – Improvement

Learning Experiences
▪ Analyze Data: Interpret charts and graphs for data-driven decision-making.
▪ Sharpen Logic: Solve reasoning puzzles to enhance problem-solving skills.

214 | P a g e
▪ Improve Non-Verbal Reasoning: Tackle visual puzzles to boost analytical
thinking.
▪ Manage Stress: Learn techniques to identify and cope with stress.
▪ Build Employability Skills: Practice resume writing, interviews, and group
discussions.
▪ Enhance Critical Thinking: Apply logic to evaluate situations and make decisions.
▪ Develop Teamwork: Work in groups to improve collaboration and resolve
conflicts.
▪ Strengthen Leadership: Practice leadership and effective communication.
▪ Boost Digital Literacy: Use online tools relevant to the workplace.
▪ Plan Careers: Create resumes and personal branding strategies for job
readiness.

Text Book References


1. Aggarwal, R. S. (2014). Quantitative aptitude (Revised edition).
2. Gladwell, M. (2021). Talking to strangers.
3. Scott, S. (2004). Fierce conversations.

215 | P a g e
SOFTWARE ENGINEERING
B. Tech (Computer Science and Engineering
Program Name:
with specialization in Data Science)
Course Name: Course Code L-T-P Credits
Software Engineering
ENCS305 4-0-0 4

Type of Course: Major

Pre-requisite(s), if any: Fundamentals of Computers

Course Perspective. The course offers a comprehensive overview of the


fundamental principles, methodologies, and tools used in the development and
maintenance of software systems. This course emphasizes the importance of a
disciplined approach to software engineering, covering various lifecycle models,
requirements engineering, software design, metrics, and testing methodologies.
Students will learn how to apply these principles to develop high-quality,
maintainable software systems.

The Course Outcomes (COs). On completion of the course the participants will
be able to :

COs Statements

Understand software engineering as an iterative and systematic


CO 1
process and the software development lifecycle models.

Design the software development process to complement technical


CO 2
understanding of software products using UML diagram

Estimate the cost/effort of the software development processes using


CO 3
different metrics

Generate test case specifications and test cases from given


CO 4
requirements.

216 | P a g e
CO = Course outcomes. A student is expected to have learnt concepts and
demonstrated/developed abilities or skills related to strategic management at the
end of the course.

Course Outline:

UNIT WISE DETAILS


Title: Introduction to Software
Unit Number: 1 No. of hours: 10
Engineering
Content Summary:
Introduction to Software Engineering, Software Evolution, Software Characteristics,
Software Crisis: Problem and Causes, Software process models (Waterfall, Incremental, and
Evolutionary process models and Agile), Software quality concepts, process improvement,
software process capability maturity models, Personal Software process and Team Software
Process, Overview of Agile Process.
Title: Software Requirement analysis,
Unit Number: 2 No. of hours: 10
Design & Construction
Content Summary:
Problem Analysis, Requirement elicitation and Validation, Requirements modeling:
Scenarios, Information and analysis classes, flow and behavioral modeling, documenting
Software Requirement Specification (SRS). System design principles: levels of abstraction,
separation of concerns, information hiding, coupling and cohesion, Structured design, object-
oriented design, event driven design, component-level design, test driven design, aspect
oriented design, Design patterns, Coding Practices: Techniques, Refactoring
Title: Software Project Management and
Unit Number: 3 No. of hours: 10
UML
Content Summary:
Software Project Management: SP Estimation of scope (LOC, FP etc), time (PERT/CPM
Networks), and cost (COCOMO models), Quality Management, Plan for software Quality
Control and Assurance, Earned Value Analysis.
UML: UML Structural Diagrams, UML Behavioural Diagrams.

217 | P a g e
Unit Number: 4 Title: Software Testing & Maintenance: No. of hours: 10

Content Summary:
Testing: Levels of Testing, Functional Testing, Structural Testing, Test Plan, Test Case
Specification, Software Testing Strategies, Verification & Validation, Unit, Integration
Testing, Top Down and Bottom-Up Integration Testing, Alpha & Beta Testing, White box and
black box testing techniques, System Testing and Debugging.

Software Maintenance: Maintenance Process, Maintenance Models, Reverse Engineering,


Software RE-engineering.

Learning Experiences:
▪ Interactive Lectures with PPTs: Students will engage in dynamic classroom
sessions using Lecture PPTs and interactive teaching boards, fostering a deeper
understanding of software engineering concepts.
▪ Problem-Based Theory Assignments: Regular assignments will focus on real-world
software problems, enhancing analytical thinking and critical problem-solving
skills.
▪ Project-Based Lab Assignments: Hands-on projects will encourage students to
apply theoretical concepts in practical scenarios, reinforcing their learning through
experience.
▪ Comprehensive Question Bank: Students will have access to a detailed question
bank covering the entire syllabus, aiding in thorough revision and preparation for
assessments.
▪ Model Question Papers for Exam Practice: Model question papers will help
students familiarize themselves with exam patterns, improving their confidence
and time management skills during assessments.
▪ Continuous Assessment & Feedback: Ongoing assessments will track progress,
and timely feedback will be provided to support student growth. Additional support
will be available for those seeking extra guidance.

218 | P a g e
▪ Use of ICT Tools (Moodle LMS): All learning materials, assignments, and
resources, including video lectures on key topics, will be available through Moodle
LMS, ensuring easy access and continuous learning.

Textbooks References:
T1: R. S. Pressman, “Software Engineering – A practitioner’s approach”, 7th Ed.,
McGraw Hill Int. Ed., 2010.
T2: K. K. Aggarwal & Yogesh Singh, “Software Engineering”, 4th Ed, New Age
International, 2022.
T3: Rajib Mall, Fundamentals of Software Engineering, PHI Learning, 5th Edition,
2018.

Additional Readings:
R 1. MIT OpenCourseWare - Software Engineering for Web
Applications
• Link: MIT OCW Software Engineering for Web Applications
• Description: This course explores software engineering principles with
a focus on web applications, including requirements analysis, design,
testing, and maintenance.
R 2. edX - Software Development Fundamentals
• Link: edX Software Development Fundamentals
• Description: This professional certificate program covers fundamental
software development concepts, including requirements engineering,
software design, and testing.

219 | P a g e
COMPETITIVE CODING
BOOTCAMP-III

B. Tech (Computer
Science and Engineering
Program Name:
with specialization in
Data Science)
Course Name: L-
Course
COMPETITIVE T- Credits
Code
CODING P
BOOTCAMP- 3- 0
III 0-
0
Type of Course: AUDIT COURSE

Contact Hours 30

Version

Course Outcomes
CO1 Analyze and write SQL queries to retrieve, modify, and optimize data in
relational databases.
CO2 Design and implement efficient tree-based data structures like AVL, B
Trees, and Splay Trees to solve computational problems.
CO3 Develop solutions for optimization problems using greedy algorithms and
dynamic programming approaches.
CO4 Implement and evaluate graph algorithms for traversing, searching, and
finding shortest paths in complex graph structures.

Unit Number: 1 Title: SQL & PL/SQL No. of hours: 8

220 | P a g e
Content:
Introduction to Databases and SQL:
o Understand relational databases, tables, and SQL queries.
o Practice SELECT, INSERT, UPDATE, DELETE statements.
Joins and Subqueries:
o Master INNER JOIN, LEFT JOIN, RIGHT JOIN, and self-joins.
o Learn about subqueries and correlated subqueries.
Indexes and Query Optimization:
o Explore indexing techniques (B-tree, hash indexes).
o Optimize SQL queries for performance.
PL/SQL Basics:
o Introduce PL/SQL (Procedural Language/Structured Query Language).
o Write basic PL/SQL blocks, loops, and conditional statements

No. of hours: 8
Unit Number: 2 Title: Height Balanced Tree Concepts

Content:
AVL Trees: Definition and Properties, Rotations , AVL Tree Operations (Insertion, Deletion,
Lookup), Complexity Analysis

B Trees : Definition and Properties, B Tree Operations, Complexity Analysis, Applications in


Databases and File Systems
B+ Trees: Definition and Properties, B+ Tree Operations, Complexity Analysis

Splay Trees: Definition and Properties, Splaying Operation, Splay Tree Operations
(Insertion, Deletion, Lookup), Complexity Analysis

Applications of Height Balanced Trees: Use in Databases (Indexing), Use in Memory


Management (Allocators)

221 | P a g e
Title: Greedy Design Strategy and Dynamic No. of hours: 8
Unit Number: 3
Programming
Content:
Greedy Algorithms: Definition and Characteristics, Greedy Choice Property, Optimal
Substructure
Dynamic Programming: Definition and Characteristics, Optimal Substructure, Overlapping
Subproblems, Comparison with Greedy Algorithms
Greedy Algorithms
Basic Greedy Algorithms: Activity Selection Problem, Huffman Coding, Kruskal’s
Algorithm, Prim’s Algorithm, Fractional Knapsack Problem
Complexity Analysis: Time Complexity, Proof of Optimality

Dynamic Programming
Basic Dynamic Programming Problems: Fibonacci Sequence (Memoization vs.
Tabulation), 0/1 Knapsack Problem, Longest Common Subsequence (LCS), Matrix Chain
Multiplication

Unit Number: 4 Title: Graph Algorithms No. of hours: 6

Content:
Graph Representations:
▪ Representing graphs using adjacency matrix and adjacency list.
▪ Solving basic graph traversal problems.
Breadth-First Search (BFS):
▪ Implementing BFS for finding the shortest path in unweighted graphs.
▪ Applications include finding connected components.
Depth-First Search (DFS):
▪ Implementing DFS for tasks like topological sorting and cycle detection.
Shortest Path Algorithms

222 | P a g e
Dijkstra’s Algorithm:
▪ Implementing Dijkstra’s algorithm for finding shortest paths in weighted graphs.
▪ Using priority queues for efficient computation.
Bellman-Ford Algorithm:
▪ Handling negative weights with the Bellman-Ford algorithm.
▪ Detecting negative weight cycles.

Lab Experiments

Mapped
Problem Statement
COs

SQL & PL/SQL

1. Write an SQL query to find the department with the highest average
CO1
salary.

2. Write a query to find all employees who earn more than their
CO1
managers.

3. Retrieve the top three salaries from the "employees" table. CO1

4. Write an SQL query to find employees who have been in the company
CO1
for more than 5 years.

5. Write a query to delete duplicate rows from a table without using


CO1
temporary tables.

6. Fetch all records where the customer ordered more than once from
CO1
the "orders" table.

223 | P a g e
Mapped
Problem Statement
COs

7. Find the name of departments with more than 10 employees using a


CO2
JOIN between "employees" and "departments".

8. Write a query to retrieve all customers who ordered more than the
CO2
average number of orders using subqueries.

9. Write a query to find the second highest salary of employees using a


CO2
subquery.

10. Optimize the performance of a query that fetches all orders placed
CO3
in the last 30 days from the "orders" table using indexing.

11. Use indexing to speed up searches on the "products" table and


CO3
compare the execution time before and after indexing.

12. Write a PL/SQL block to display the Fibonacci sequence up to a given


CO4
number using loops.

13. Create a PL/SQL block that calculates the factorial of a number using
CO4
recursion.

Height Balanced Tree Concepts

14. Implement an AVL Tree and insert a series of elements into it.
CO5
Ensure the tree remains balanced after each insertion.

15. Write a function to check if a given AVL Tree is height-balanced. CO5

16. Perform AVL Tree deletion and ensure rebalancing using rotations. CO5

17. Implement an AVL Tree lookup operation and calculate its time
CO5
complexity.

18. Implement insertion operations in a B Tree and verify the tree’s


CO6
structure after each insertion.

224 | P a g e
Mapped
Problem Statement
COs

19. Write a function to search for an element in a B Tree and trace the
CO6
steps of the search.

20. Implement deletion operations in a B Tree and verify rebalancing


CO6
after each deletion.

21. Perform insertion and deletion operations in a B+ Tree and trace the
CO6
changes in the tree structure.

22. Demonstrate the application of B Trees in database indexing with a


CO6
small dataset.

23. Implement a splay tree and observe the behavior of nodes being
CO6
splayed to the root after lookups.

24. Compare the performance of AVL Trees, B Trees, and Splay Trees
CO6
for a series of random insertions.

Greedy Design Strategy and Dynamic Programming

25. Solve the Activity Selection Problem using a greedy algorithm. CO7

26. Write a function to implement Huffman coding for a string of


CO7
characters and display the encoded output.

27. Implement Kruskal’s algorithm for finding the minimum spanning


CO7
tree of a graph.

28. Solve the Fractional Knapsack Problem using a greedy approach. CO7

29. Solve the 0/1 Knapsack Problem using dynamic programming. CO8

30. Write a program to find the nth Fibonacci number using memoization
CO8
and compare it with the iterative approach.

31. Implement dynamic programming to solve the Longest Common


CO8
Subsequence (LCS) problem.

225 | P a g e
Mapped
Problem Statement
COs

32. Solve the Matrix Chain Multiplication problem using dynamic


CO8
programming and analyze the time complexity.

Graph Algorithms

33. Implement a graph using an adjacency list and perform Depth-First


CO9
Search (DFS) to detect cycles.

34. Implement Breadth-First Search (BFS) to find all connected


CO9
components in an unweighted graph.

35. Solve a shortest-path problem in an unweighted graph using BFS. CO9

36. Write a program to implement Dijkstra’s algorithm to find the


CO10
shortest path in a weighted graph.

37. Implement Bellman-Ford algorithm to find shortest paths in a graph


CO10
with negative weights.

38. Detect negative weight cycles in a graph using the Bellman-Ford


CO10
algorithm.

39. Perform topological sorting of a directed graph using DFS. CO9

40. Solve a shortest-path problem using Dijkstra’s algorithm with


CO10
priority queues and analyze the time complexity.

226 | P a g e
Semester: VI

COMPUTER ORGANIZATION &


ARCHITECTURE
B. Tech (Computer Science and Engineering with
Program Name:
specialization in Data Science)
Course Name: Course Code L-T-P Credits
Computer Organization ENCS302 3-1-0 4
& Architecture

Type of Course: Major

Pre-requisite(s), if any: Concepts of Digital Electronics

Course Perspective. This course provides a foundational understanding of


computer organization and architecture. It covers essential concepts such as
computer components, memory hierarchy, and processor design. Students will
explore data representation, caching strategies, and I/O systems, focusing on
practical applications and performance optimization. By combining theoretical
knowledge with hands-on learning, the course aims to equip students with the skills
necessary to understand and improve computer systems.
The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

Understand the basic concepts of computer architecture and data


CO 1
representation.

CO 2 Apply memory hierarchy and caching techniques in computing systems.

CO 3 Analyze processor performance and optimization strategies.

227 | P a g e
Evaluate input/output systems and storage technologies for improved
CO 4
system

Course Outline:
Title: Introduction to Computer
Unit Number: 1 No. of hours: 10
Architecture
Content Summary:
Basics of Computer Architecture: Von Neumann architecture, CPU, memory, and
I/O subsystems.
Instruction Set Architecture (ISA): Registers, instruction execution cycle,
addressing modes.
Data Representation: Number systems (binary, octal, decimal, hexadecimal),
Arithmetic operations (addition, subtraction), Floating point representation (IEEE
754 standard).
Instruction Set Types: Introduction to RISC and CISC architectures.
Title: Memory Hierarchy and I/O
Unit Number: 2 No. of hours: 10
Systems
Content Summary:
Memory Hierarchy: RAM, ROM, Cache, and secondary storage.
Cache Memory: Direct-mapped, set-associative, fully associative caches, Write-
through vs. write-back caches.
Storage: Introduction to magnetic disks, Flash memory (NAND and NOR flash).
I/O Techniques: Programmed I/O, Interrupt-driven I/O, Direct Memory Access
(DMA).

Unit Number: 3 Title: Processor Design No. of hours: 10

Content Summary:
Processor Basics: Building a simple datapath, single-cycle and multi-cycle
processor designs.

228 | P a g e
Pipelining: Introduction, stages, hazards (data, control) and mitigation strategies.
Clocking Methodology: Basics of clocking, Amdahl’s Law.
Instruction Level Parallelism: Concept and basic strategies for parallelism.
Input/Output Systems and
Unit Number: 4 No. of hours: 10
Advanced Topics
Content Summary:
I/O Systems: Memory-mapped vs. I/O-mapped I/O, DMA.
Advanced Memory Concepts: Memory interleaving, processor-cache interactions.
Storage Technologies: Disk scheduling algorithms, flash memory structure.

Textbooks
▪ Stallings, W. (2016). Computer Organization and Architecture (10th ed.).
Pearson.
▪ Patterson, D. A., & Hennessy, J. L. (2020). Computer Organization and Design:
The Hardware/Software Interface (5th ed.). Morgan Kaufmann.
▪ Mano, M. M. (2017). Computer System Architecture (3rd ed.). Pearson.
▪ Tanenbaum, A. S., & Austin, T. (2013). Structured Computer Organization (6th
ed.). Pearson.
▪ Hennessy, J. L., & Patterson, D. A. (2017). Computer Architecture: A
Quantitative Approach (6th ed.). Morgan Kaufmann.

Additional Readings:
Online Learning References
a) MIT OpenCourseWare - Computer System Engineering
a. Link: MIT OCW
b. Description: This course provides a deep dive into computer system
architecture, exploring processor design, memory systems, and parallel
processing.
b) GeeksforGeeks - Computer Organization and Architecture
a. Link: GeeksforGeeks

229 | P a g e
b. Description: GeeksforGeeks provides detailed tutorials on various
topics in computer organization and architecture, such as instruction
sets, pipelining, and memory hierarchy.
c) NPTEL - Computer Architecture
a. Link: NPTEL
b. Description: This course from NPTEL covers the principles of computer
architecture, including instruction sets, CPU design, and memory
systems, with a focus on practical applications.

230 | P a g e
COMPUTER NETWORKS
B. Tech (Computer Science and
Engineering with specialization in Data
Program Name:
Science)
Course Name: Course Code L-T-P Credits
Computer Networks ENCS304 4-0-0 4
Type of Course: Major

Pre-requisite(s), if any:

Course Perspective. The Computer Networks course is designed to provide


students with a comprehensive understanding of network systems and their
components. The course explores the fundamental principles of data communication,
network architectures, and protocols essential for designing and managing modern
network systems. Emphasis is placed on both theoretical concepts and practical
applications, including network topologies, data link layer protocols, and network
layer functionalities. Students will gain insights into network performance metrics,
error control mechanisms, and network security practices. Through a combination of
lectures, hands-on labs, and project-based assignments, students will develop the
skills necessary to analyze, implement, and troubleshoot network systems
effectively. The course aims to equip students with the knowledge and skills required
to succeed in the field of network engineering and administration.

The Course Outcomes (COs). On completion of the course the participants will
be able to:

COs Statements

Understand the fundamental concepts of computer networks, including


CO 1 data communication components, network topologies, and the OSI
model.

231 | P a g e
Apply data link layer protocols and techniques for error detection, error
CO 2
correction, and flow control in practical networking scenarios.

Analyze network layer functions, including logical addressing (IPv4,


CO 3 IPv6), address mapping, and routing protocols, to design and
troubleshoot network architectures.

Evaluate and implement application layer protocols such as DNS, HTTP,


CO 4 and FTP, and assess their performance and security in network
environments.

Course Outline:
Title: Evolution of Computer
Unit Number: 1 No. of hours: 10
Networking
Content Summary:
Introduction to Computer Networks: Overview, Evolution, and Trends
Data Communication Components: Representation of data, data flow, and
network elements
Network Topologies: Star, Mesh, Bus, and Ring
Networking Models: OSI Model and TCP/IP Model
Protocols and Standards: Key protocols (e.g., Ethernet, IP) and standards
organizations
Physical Media: Transmission media (copper, fiber, wireless)
Network Architectures: Circuit switching, packet switching, and network of
networks
Performance Metrics: Packet delay, loss, and end-to-end throughput

Unit Number: 2 Title: Data Link Layer No. of hours: 10

Content Summary:
Data Link Layer Overview: Functions and services

232 | P a g e
Error Detection and Correction: Techniques like Block Coding, Hamming Code,
CRC
Flow Control and Error Control Protocols: Stop-and-Wait, Go-Back-N,
Selective Repeat ARQ, Sliding Window Protocols
Medium Access Control (MAC) Protocols: Pure ALOHA, Slotted ALOHA,
CSMA/CD, and CDMA/CA
Link Layer Technologies: Ethernet, PPP, and Frame Relay
Title: Introduction to Network
Unit Number: 3 No. of hours: 10
Layer and Transport Services
Content Summary:
Network Layer Functions: Routing, switching, and logical addressing
Addressing Schemes: IPv4, IPv6, and Address Resolution Protocols (ARP, RARP)
Dynamic Address Assignment: BOOTP and DHCP
Routing Protocols: Distance Vector (RIP), Link State (OSPF), and Path Vector
(BGP)
Transport Layer Protocols: UDP, TCP, SCTP
Congestion Control and Quality of Service (QoS): Techniques like Leaky
Bucket, Token Bucket, and congestion management.

Unit Number: 4 Title: Application Layer No. of hours: 10

Content Summary:
Application Layer Protocols: DNS, DHCP, TELNET, FTP, HTTP
Email Protocols: SMTP, IMAP, POP3
Web Technologies: WWW, HTML, and HTTP
Network Security Basics: Firewalls, Introduction to Cryptography (encryption
methods and security protocols)
Bluetooth Technology: Basics of Bluetooth and its applications

233 | P a g e
Learning Experiences
▪ Interactive Lectures: Utilize lecture PPTs and interactive teaching boards to
present core concepts and facilitate real-time discussions on data
communication, network layers, and protocols.
▪ Hands-on Labs: Engage in project-based lab assignments that involve
configuring network devices, implementing protocols, and analyzing network
traffic to gain practical experience.
▪ Problem-Based Assignments: Complete problem-based theory assignments
that challenge students to apply network layer and data link layer concepts to
solve real-world networking issues.
▪ Collaborative Group Work: Participate in group activities and peer reviews to
design and evaluate network architectures, fostering teamwork and
collaborative problem-solving skills.
▪ ICT Tools: Access course materials, submit assignments, and engage in online
discussions through Moodle LMS, ensuring seamless communication and
resource sharing.
▪ Continuous Assessment: Regularly assess understanding through quizzes,
assignments, and model question papers, with timely feedback provided to
track progress and guide improvement.
▪ Video Lectures: Watch video lectures on complex topics such as QoS and
advanced network protocols to reinforce learning and clarify difficult concepts.
▪ Support and Feedback: Receive additional support and feedback from the
course instructor, with encouragement to seek help as needed to ensure a
comprehensive learning experience.

Textbooks:
T1: " Data Communication and Networking”, 5th Edition, Behrouz A. Forouzan,
McGraw-Hill, 2012.
T2: “Computer Networks”, Andrew S. Tanenbaum and David J. Wetherall, Pearson,
5th Edition, 2010.

234 | P a g e
T3: “Computer Networking A Top-Down Approach”. 5th Edition, James F. Kurose-Keith
W. Ross (Pearson).

Additional Readings:
Online Learning References
I) MIT OpenCourseWare - Computer Networks
a. Link: MIT OCW
b. Description: This course provides a thorough exploration of computer
networks, focusing on network design, protocol layers, and network
management.
II) GeeksforGeeks - Computer Networks
a. Link: GeeksforGeeks
b. Description: GeeksforGeeks provides detailed tutorials on various
aspects of computer networks, such as the OSI model, data link layer,
network layer, and transport layer protocols.
III) NPTEL - Computer Networks
a. Link: NPTEL
b. Description: This course from NPTEL provides a comprehensive
overview of computer networking, including topics like error detection,
IP addressing, and routing protocols.

235 | P a g e
COMPUTER NETWORKS LAB
B. Tech (Computer Science and Engineering with
Program Name:
specialization in Data Science)
Course Name: Course Code L-T-P Credits
Computer ENCS352 0-0-2 1
Networks Lab
Type of Course: Major

Pre-requisite(s), if any:

Proposed Lab Experiments


Defined Course Outcomes

COs

Apply fundamental networking concepts and techniques to develop and


CO 1
analyze network topologies, protocols, and error detection mechanisms.
Design and implement network protocols and architectures for efficient
CO 2
data communication and management in various environments.
Utilize advanced networking techniques to implement, monitor, and
CO 3 optimize communication systems for real-time and multimedia
applications.
Integrate IoT devices and develop smart systems using networking
CO 4
principles for automation and efficient data management.

236 | P a g e
Ex. Experiment Title Mapped
No CO/COs
Design and simulate a simple computer network using various
connection topologies (bus, star, ring, mesh). Compare the
1 CO 1
advantages and disadvantages of each topology in terms of data
flow and network efficiency.
Create a network simulation to demonstrate packet switching and
2 circuit switching. Compare the performance and efficiency of both CO 1
methods by simulating a series of data transmission scenarios.
Develop a network simulator to analyze packet delay, loss, and
end-to-end throughput. Implement various routing algorithms and
3 CO1
measure their impact on network performance under different
traffic conditions.
Implement error detection and correction mechanisms using block
coding and CRC. Simulate a communication system that
4 CO2
demonstrates how errors are detected and corrected during data
transmission.
Design and simulate flow control and error control protocols such
as Stop and Wait, Go-Back-N ARQ, and Selective Repeat ARQ.
5 CO2
Compare their performance in terms of throughput and efficiency
under varying network conditions.
Develop a simulation to demonstrate multiple access protocols
such as Pure ALOHA, Slotted ALOHA, CSMA/CD, and CSMA/CA.
6 CO2
Analyze the performance of each protocol in handling network
collisions and maximizing data transmission efficiency
Implement a sliding window protocol with piggybacking for
efficient data transmission and error control. Simulate data
7 CO2
transfer between two nodes and visualize the window movements
and acknowledgments.

237 | P a g e
Create a simulation to demonstrate logical addressing using IPv4
and IPv6. Implement address mapping techniques such as ARP,
8 CO3
RARP, BOOTP, and DHCP to show how devices acquire and resolve
network addresses.
Implement a transport layer simulation to demonstrate process-
to-process communication using UDP, TCP, and SCTP. Compare
9 CO3
the protocols in terms of connection establishment, data
transmission, and congestion control.
Implement a DNS and DDNS simulation to demonstrate domain
10 name resolution and dynamic updates. Create a simple client- CO4
server application that queries and updates the DNS records.
Create a web server simulation to demonstrate the workings of
11 HTTP and WWW. Implement basic HTTP request and response CO4
handling, and simulate a simple web browsing session.

238 | P a g e
INTRODUCTION OF NEURAL
NETWORK AND DEEP LEARNING
B. Tech (Computer Science and
Engineering with specialization in Data
Program Name:
Science)
Course Name: Introduction to Course Code L-T-P Credits
Neural Network and Deep ENCS306 4-0-0 4
learning

Type of Course: Major

Pre-requisite(s), if any: Fundamentals of AI and Machine Learning,


Programming knowledge

Course Perspective. This course provides a comprehensive introduction to the


fundamental concepts of neural networks and deep learning, which are crucial for the
development of intelligent systems and advanced data analysis. Students will explore
core topics including the basic structure and function of neural networks, feedforward
neural networks, deep learning techniques, and probabilistic neural networks. The
course emphasizes both theoretical understanding and practical implementation,
preparing students to tackle real-world problems using advanced neural network
models.

The Course Outcomes (COs). On completion of the course the participants will
be able to:

COs Statements

Understand key concepts of neural networks and deep learning, including


CO 1
ANNs and their biological equivalents.

239 | P a g e
Implement basic neural network models and training algorithms using
CO 2
popular deep learning frameworks

Compare and contrast different deep learning architectures, such as CNNs,


CO 3
RNNs, and GANs, and their applications in various domain

Assess and optimize deep learning models by applying regularization


CO 4
techniques, tuning hyperparameters, and evaluating performance metrics.

Course Outline:
No. of hours: 10
Unit Number: 1 Title: Introduction to Neural Networks

Content:
▪ Human Brain and Artificial Neuron Models
▪ Biological vs. Artificial Neural Networks
▪ Evolution and Characteristics of Neural Networks
▪ Learning Methods: Supervised, Unsupervised, Reinforcement
▪ Taxonomy of Neural Network Architectures
Title: Supervised and Unsupervised No. of hours: 10
Unit Number: 2
Neural Networks
Content:
Supervised learning: - Supervised Learning Networks, Perceptron Networks, Adaptive
Linear Neuron, Back-propagation Network. Associative Memory Networks. Training
Algorithms for pattern association.
Unsupervised learning: - Introduction, Fixed Weight Competitive Nets, Maxnet, Hamming
Network, Kohonen Self-Organizing Feature Maps, Learning Vector Quantization, Counter
Propagation Networks, Adaptive Resonance Theory Networks.
Title: Deep learning and Regularization No. of hours: 10
Unit Number: 3
for Deep Learning

240 | P a g e
Content:
Introduction to Deep Learning: Historical Trends and Development, Deep Feed-Forward
Networks, Gradient-Based Learning, Architecture Design and Hidden Units, Back-
Propagation and Differentiation Algorithms
Regularization Techniques: Parameter Norm Penalties, Data Augmentation and Noise
Robustness, Semi-Supervised Learning and Multi-Task Learning, Early Stopping, Sparse
Representations, Bagging and Ensemble Methods

Title: Optimization for Train Deep


Unit Number: 4 No. of hours: 10
Models
Content:
Convolutional Neural Networks (CNNs), Recurrent Neural Networks (RNNs) and
Long Short-Term Memory (LSTM), Generative Adversarial Networks (GANs);

Optimization Techniques: Parameter Initialization Strategies, Adaptive Learning Rates


(Adam, RMSprop), Regularization Techniques (Dropout, Batch Normalization), Advanced
Optimization Algorithms (Stochastic Gradient Descent, Mini-Batch Gradient Descent)
Applications and Trends: Large-Scale Deep Learning Applications, Computer Vision,
Speech Recognition, Natural Language Processing, Recent Trends and Research in Deep
Learning

Learning Experiences:
▪ Interactive Lectures and PPTs: Students will engage with concept-focused
lectures, supported by clear and concise PowerPoint presentations to aid
understanding of neural network and deep learning fundamentals.
▪ Hands-on Lab Assignments: Through project-based lab assignments, students will
implement key algorithms like CNNs, RNNs, and GANs, enhancing their practical
skills in deep learning.

241 | P a g e
▪ Problem-Based Assignments: Theory assignments will challenge students to solve
real-world problems, encouraging critical thinking and the application of
theoretical knowledge to practical scenarios.
▪ Collaborative Learning: Group projects and peer-to-peer learning will foster
teamwork and collaborative problem-solving, with opportunities for peer reviews
and group discussions.
▪ Continuous Assessment & Feedback: Regular quizzes, assignments, and lab
assessments will provide timely feedback, with additional support available from
the course instructor as needed.
▪ Use of Technology & ICT Tools: Moodle LMS will be used for uploading lecture
notes, assignments, and additional learning resources, allowing students to access
material anytime and stay organized.
▪ Case Studies and Recent Trends: Students will analyze case studies on neural
network applications, staying updated with the latest research and industry trends
in deep learning, making the learning experience industry-relevant.

Textbooks:
▪ Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep Learning. MIT Press.
▪ Aggarwal, C. C. (2018). Neural Networks and Deep Learning: A Textbook.
Springer.
▪ Bishop, C. M. (2006). Pattern Recognition and Machine Learning. Springer.
▪ Shanmugamani, R. (2018). Deep Learning for Computer Vision. Packt Publishing.
▪ Géron, A. (2019). Hands-On Machine Learning with Scikit-Learn, Keras, and
TensorFlow. O'Reilly Media.

242 | P a g e
Online Learning References
1. Deep Learning by Ian Goodfellow, Yoshua Bengio, and Aaron Courville
• Deep Learning Book
2. Neural Networks and Deep Learning by Michael Nielsen
• Neural Networks and Deep Learning
3. CS231n: Convolutional Neural Networks for Visual Recognition by
Stanford University
• CS231n Course
4. Deep Learning Specialization by Andrew Ng on Coursera
• Deep Learning Specialization
5. Introduction to Deep Learning by MIT OpenCourseWare
• MIT OpenCourseWare

243 | P a g e
INTRODUCTION TO NEURAL
NETWORKS & DEEP LEARNING
LAB
B. Tech (Computer Science and
Program Name: Engineering with specialization in
Data Science)
Course Name: Introduction to Course Code L-T-P Credits
Neural Network and Deep learning
Lab ENCS354 0-0-2 1
Type of Course: Major

Pre-requisite(s), if any: fundamentals of AI and programming.

Defined Course Outcomes

COs

Demonstrate the ability to implement and analyze basic artificial neural


CO 1
network models and classical machine learning algorithms.
Develop and evaluate advanced neural network architectures and
CO 2
unsupervised learning models for complex data analysis.
Apply deep learning techniques to real-world applications, including
CO 3
image and speech recognition, and optimize model performance.
Implement and optimize neural network models using advanced
CO 4 techniques such as adaptive learning rates, regularization, and meta-
optimization for enhanced performance.

244 | P a g e
Lab Experiments

Experiment Mapped
Problem Statement
No. COs

Basic Neural Network Implementation: Implement a


1 simple feedforward neural network to classify handwritten CO 1, CO 2
digits from the MNIST dataset.

Perceptron Algorithm: Develop and train a Perceptron to


2 perform binary classification on a given dataset, and CO 1, CO 2
visualize the decision boundary.

Backpropagation Network: Implement a neural network


CO 1, CO 2,
3 with backpropagation to predict house prices based on
CO 3
features like size, location, etc.

Kohonen Self-Organizing Maps (SOM): Apply a Self-


4 Organizing Map to cluster and visualize a dataset with CO 1, CO 2
multiple features.

Convolutional Neural Network (CNN): Build and train a CO 2, CO 3,


5
CNN for image classification on the CIFAR-10 dataset. CO 4

Recurrent Neural Network (RNN) for Text Prediction:


6 Develop an RNN to predict the next word in a sentence CO 2, CO 3
using the IMDB movie reviews dataset.

Regularization Techniques: Implement dropout and L2


7 regularization in a neural network to improve model CO 3, CO 4
performance on the MNIST dataset.

Optimization Algorithms: Compare the performance of


8 different optimization algorithms (SGD, Adam, RMSprop) CO 4
in training a CNN on a benchmark dataset.

245 | P a g e
Experiment Mapped
Problem Statement
No. COs

Generative Adversarial Network (GAN): Create and train a


9 GAN to generate new images similar to a given dataset CO 2, CO 3
(e.g., faces, landscapes).

Transfer Learning: Use a pre-trained deep learning model


10 (e.g., VGG16, ResNet) and fine-tune it for a new image CO 2, CO 4
classification task with a smaller dataset.

Online Learning References


1. Deep Learning Specialization by Andrew Ng on Coursera
• Deep Learning Specialization
2. Neural Networks and Deep Learning by Michael Nielsen
• Neural Networks and Deep Learning
3. CS231n: Convolutional Neural Networks for Visual Recognition by Stanford
University
• CS231n Course
4. Deep Learning by Ian Goodfellow, Yoshua Bengio, and Aaron Courville
• Deep Learning Book
5. MIT OpenCourseWare - Introduction to Deep Learning
• MIT OpenCourseWare

246 | P a g e
(DEPARTMENT ELECTIVE -I)
NATURAL LANGUAGE
PROCESSING
B. Tech (Computer Science and Engineering with
Program Name:
specialization in Data Science)
Course Name: Course Code L-T-P Credits
NATURAL ENSP302 4-0-0 4
LANGUAGE
PROCESSING

Type of Course:
Minor (Department Elective II)
Pre-requisite(s), if any: Strong programming skills, particularly in Python.

Course Perspective. This course offers a comprehensive introduction to the


principles and techniques of Natural Language Processing (NLP). It bridges the gap
between theoretical linguistics and practical implementation using machine learning
and deep learning algorithms. NLP is pivotal in developing applications that can
interpret and respond to human language, impacting areas such as artificial
intelligence, data analysis, and information retrieval. The course emphasizes hands-
on learning through real-world applications, ensuring that students gain practical
skills in processing and analyzing natural language. The course is divided into 4
modules:
• Foundations of Natural Language Processing
• Machine & Deep Learning in Natural Language Processing
• Advanced Text and Speech Processing
• Ethics, Fairness, and Practical Applications in NLP

The Course Outcomes (COs). On completion of the course the participants will
be:

247 | P a g e
COs Statements

Grasp NLP fundamentals, resolve linguistic ambiguities, and employ


CO 1
ML/DL in NLP for both text and speech.

Apply techniques for processing and analyzing natural language to


CO 2
develop intelligent interpretation systems.

Design and assess advanced NLP models for essential tasks, utilizing
CO 3
transformers, GRUs, and more.

Innovate with NLP and speech recognition for real-world applications,


CO 4
incorporating cutting-edge concepts.

Evaluate NLP and speech technologies' fairness and ethics, striving for
CO 5
inclusive and meaningful solutions.

Course Outline:
Unit Title: Foundations of Natural Language
No. of hours: 10
Number: 1 Processing
Content Summary:
Introduction to NLP and its applications
Basic text processing and analysis
Python programming for NLP
Language Modeling:
• N-grams
• Smoothing techniques
Morphology and Parts of Speech (PoS) Tagging
Syntax:
• Probabilistic Context-Free Grammars (PCFGs)
• Dependency Parsing
Lexical Semantics and Word Sense Disambiguation
Distributional Semantics:
248 | P a g e
• Vector Space Models
• Word2Vec
• Introduction to GloVe
Topic Models:
• Latent Dirichlet Allocation (LDA)

Unit Title: Machine & Deep Learning in


No. of hours: 12
Number: 2 Natural Language Processing
Content Summary:
Neural Networks for NLP
Recurrent Neural Networks (RNNs) and Long Short-Term Memory (LSTM)
Networks
Gated Recurrent Units (GRUs) and comparison with LSTMs
Deep Learning Architectures for NLP
Neural and Pre-Trained Language Models:
• Introduction and Applications
• Advanced Pre-training Techniques
Generative Models:
• Few-Shot Learning
• Prompt Learning
• Applications
Recursive Neural Networks
Unit Title: Advanced Text and Speech
No. of hours: 10
Number: 3 Processing
Content Summary:
Advanced Text Classification Techniques:
• Naïve Bayes
• Logistic Regression
• Support Vector Machines (SVMs)
Applications in:

249 | P a g e
• Sentiment Analysis
• Opinion Mining
• Text Summarization
N-gram Features and Enhancements through CNNs
Multilingual NLP Challenges
Advanced Entity Linking
Introduction to Speech Processing:
• Speech Recognition
• Speech Synthesis
• Speech-to-Text and Text-to-Speech Technologies
• Speaker Recognition and Verification

Unit Title: Ethics, Fairness, and Practical


No. of hours: 8
Number: 4 Applications in NLP
Content Summary:
Fairness and Ethics in NLP
Development of Real-World NLP Solutions:
• Application-Oriented Projects
• Spelling Correction
• Robust Language Modeling
• Ethical Speech Recognition Design
Multilingual Speech Processing
Applications of Large Language Models:
• Creative Text Generation
• Summarization
• Code Generation
Practical Applications of Speech Recognition:
• Assistive Technologies
• Automated Customer Service
• Real-Time Transcription Services

250 | P a g e
Learning Experiences:

▪ Lecture PPTs provide clear explanations of core NLP concepts.


▪ Problem-based assignments enhance critical thinking and real-world
application.
▪ Project-based lab assignments offer hands-on experience with practical NLP
tools.
▪ Question banks ensure thorough syllabus coverage and exam readiness.
▪ Model question papers prepare students for exam formats and question types.
▪ Continuous assessment tracks progress and identifies areas for improvement.
▪ ICT tools like Moodle LMS and interactive boards support seamless access to
learning materials.

Text Books:
1. Daniel Jurafsky and James H. Martin, Speech and Language Processing: An
Introduction to Natural Language Processing, Computational Linguistics and
Speech Recognition, Pearson Education India.
2. Steven Bird, Ewan Klein, and Edward Loper, Natural Language Processing
with Python, O'Reilly Media.
References

1. "Speech and Language Processing" by Dan Jurafsky and James H. Martin


2. "Natural Language Processing in Action: Understanding, Analyzing, and
Generating Text with Python" by Hobson Lane, Cole Howard, and Hannes
Hapke
3. "Neural Network Methods for Natural Language Processing" by Yoav Goldberg

251 | P a g e
4. "Introduction to Information Retrieval" by Christopher D. Manning, Prabhakar
Raghavan, and Hinrich Schütze
5. "Practical Natural Language Processing: A Comprehensive Guide to Building
Real-World NLP Systems" by Sowmya Vajjala, Bodhisattwa Majumder, Anuj
Gupta, and Harshit Surana

Additional Readings:
Online Learning Resources:
1. Stanford University - Natural Language Processing with Deep
Learning (CS224N)
• Offered by Stanford University, this course covers the foundational
concepts of NLP along with the application of deep learning models in
NLP tasks. The lectures are available for free.
• Link: Stanford CS224N
2. NLTK Book - Natural Language Processing with Python
• An excellent resource for beginners, this book provides a practical
introduction to NLP with Python, using the Natural Language Toolkit
(NLTK). It's available for free online.
• Link: NLTK Book
3. fast.ai - Practical Deep Learning for Coders
• Though not exclusively focused on NLP, this course includes several
lessons on applying deep learning to natural language processing. It is
practical, with a focus on coding and real-world applications.
• Link: fast.ai Course
Open-Source Society University (OSSU)
I) OSSU Computer Science
a. OSSU provides an open-source curriculum for learning computer
science. While it covers a broad range of topics in computer science, it
includes resources for learning about artificial intelligence and machine
learning, which are relevant to students interested in NLP.
b. Link: OSSU Computer Science
252 | P a g e
NATURAL LANGUAGE
PROCESSING LAB
B. Tech (Computer Science and
Program Name: Engineering with specialization in Data
Science)
Course Name: Course Code L-T-P Credits
NATURAL LANGUAGE ENSP352 0-0-2 1
PROCESSING LAB

Type of Course: Minor (Department Elective II)

Pre-requisite(s), if any: Strong programming skills, particularly in Python.

Lab Experiments
Defined Course Outcomes

COs

Demonstrate proficiency in implementing and utilizing basic and


CO 1 advanced natural language processing (NLP) techniques for text analysis
and processing.
Develop, fine-tune, and evaluate machine learning and deep learning
CO 2 models for various NLP tasks, including text classification, named entity
recognition, and sentiment analysis.
Implement and assess advanced text and speech processing models,
CO 3 focusing on performance improvement and practical applications in real-
world scenarios.
Analyze and address ethical considerations, fairness, and privacy
CO 4 implications in NLP applications, ensuring responsible and unbiased
technology deployment.

253 | P a g e
List of Experiments

CO
Project Title Project Statement
Mapped

Develop a Python-based tool for basic text


processing and analysis. Implement functionalities
Text Processing such as tokenization, stemming, lemmatization,
CO1
and Analysis Tool and Parts of Speech (PoS) tagging. Include
language modeling using N-grams and smoothing
techniques.

Create a Python application to perform word


Word representation using Word2Vec and GloVe.
Representation and Implement a topic modeling system using Latent CO1
Topic Modeling Dirichlet Allocation (LDA) to analyze and categorize
a given corpus of text data.

Build a sentiment analysis application using


Sentiment Analysis
Recurrent Neural Networks (RNNs) and Long Short-
using Recurrent
Term Memory (LSTM) networks. Train the model on CO2
Neural Networks
a labeled dataset and evaluate its performance in
(RNNs)
classifying sentiments.

Develop a language model using Gated Recurrent


Language Model
Units (GRUs). Compare its performance with LSTM-
with Gated
based models on the same dataset. Implement CO2
Recurrent Units
applications for text generation based on the
(GRUs)
trained language model.

Advanced Text Implement text classification techniques using


Classification and Naïve Bayes, Logistic Regression, and SVMs. Apply CO3
Sentiment Analysis these techniques to sentiment analysis, opinion

254 | P a g e
CO
Project Title Project Statement
Mapped

mining, and text summarization tasks. Enhance


feature extraction using N-grams and CNNs.

Develop a basic speech recognition and synthesis


Speech system. Implement speech-to-text and text-to-
Recognition and speech functionalities using available libraries. CO3
Synthesis System Extend the system to include speaker recognition
and verification.

Design an NLP system focusing on ethical


Ethical NLP System considerations and fairness. Implement language
for Fair Language modeling for robust applications like spelling CO4
Modeling correction. Ensure the system avoids biases and
treats all user inputs fairly.

Create an automated customer service application


Real-World NLP
using advanced language models. Implement
Application:
functionalities such as real-time transcription CO4
Automated
services and multilingual speech processing. Ensure
Customer Service
ethical and fair use of NLP technologies.

255 | P a g e
IMAGE PROCESSING &
COMPUTER VISION
B. Tech (Computer Science and Engineering
Program Name:
with specialization in Data Science)
Course Name: L-T-
Course Code Credits
Image Processing & P
Computer Vision ENSP304 4-0-0 4
Type of Course: Minor (Department Elective II)

Pre-requisite(s), if any: (1) Linear Algebra and (2) programming in python

Course Perspective. This course introduces students to the essential concepts and
techniques of image processing and computer vision. It bridges theoretical knowledge
with practical applications, enabling students to understand and implement various
algorithms for image enhancement, restoration, segmentation, and object
recognition. The course is designed to equip students with the skills required to tackle
real-world challenges in fields such as robotics, medical imaging, surveillance, and
multimedia applications.

The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

Remember key concepts, definitions, and algorithms in image processing


CO 1
and computer vision.

Understand the principles and applications of essential techniques like


CO 2
edge detection and feature extraction.

Apply Use image processing methods to enhance digital images and


CO 3
analyze the effects.

256 | P a g e
Evaluate the effectiveness of various computer vision models in different
CO 4
contexts

Design and implement projects that integrate multiple image processing


CO 5
algorithms to solve complex problems.

Course Outline:
Title: Title: Introduction to Basic
Unit Number: 1 No. of hours: 10
Concepts of Image Formation
Content Summary:
Fundamentals and Applications of Image Processing:
• Overview of Image Processing and its applications.
• Components of Image Processing Systems.
Image Sensing and Acquisition:
• Image sensing techniques.
• Image acquisition methods.
Sampling and Quantization:
• Concept of sampling and quantization.
• Neighbors of pixel adjacency and connectivity.
• Regions and boundaries.
• Distance measures.
Image Enhancement:
• Frequency and Spatial Domain techniques.
• Contrast Stretching.
• Histogram Equalization.
• Low pass and High pass filtering.

Unit Number: 2 Title: Image Restoration and coloring No. of hours: 12

257 | P a g e
Content Summary:
Image Restoration:
• Model of the Image Degradation/Restoration Process.
• Noise Models.
• Restoration in the presence of noise using spatial filtering.
• Periodic Noise Reduction using frequency domain filtering.
• Linear Position Invariant Degradations.
• Estimation of Degradation Function.
• Inverse Filtering.
• Wiener Filtering.
• Constrained Least Square Filtering.
• Geometric Mean Filter.
• Geometric Transformations.
Color Image Processing:
• Color models and transformations.
• Image Segmentation using color.
• Texture Descriptors.
• Color Features.
• Edge/Boundary detection.
• Object Boundary and Shape Representations.
• Interest or Corner Point Detectors.
• Speeded-Up Robust Features (SURF).
• Saliency detection.

Title: Image Compression and


Unit Number: 3 No. of hours: 10
Segmentation
Content Summary:
Image Compression:
• Data Redundancies.
• Image Compression models.

258 | P a g e
• Elements of Information Theory.
• Lossless and Lossy Compression.
• Huffman Coding.
• Shanon-Fano Coding.
• Arithmetic Coding.
• Golomb Coding.
• LZW Coding.
• Run Length Coding.
• Lossless Predictive Coding.
• Bit Plane Coding.
• Image compression standards.
Image Segmentation and Morphological Image Processing:
• Discontinuity-based segmentation.
• Similarity-based segmentation.
• Edge linking and boundary detection.
• Thresholding.
• Region-based Segmentation.
• Introduction to Morphology.
• Dilation and Erosion.
• Basic Morphological Algorithms.

Title: Object Representation and


Unit Number: 4 No. of hours: 8
Computer Vision Techniques
Content Summary:
Representation and Description:
• Introduction to Morphology.
• Basic Morphological Algorithms.
• Representation Techniques.
• Boundary Descriptors.
• Regional Descriptors.

259 | P a g e
• Chain Code.
• Structural Methods.
Computer Vision Techniques:
• Review of Computer Vision Applications.
• Artificial Neural Networks for Pattern Classification.
• Convolutional Neural Networks (CNNs).
• Machine Learning Algorithms and their Applications

Learning Experiences:
▪ Lecture PPTs will offer clear, structured explanations to introduce and reinforce
key concepts.
▪ Problem-based assignments will encourage deep thinking and application of
theory to real-world scenarios.
▪ Project-based lab assignments will provide hands-on experience, making learning
practical and engaging.
▪ Question banks will help students thoroughly review and self-assess their
understanding of the entire syllabus.
▪ Model question papers will simulate exam conditions, helping students prepare
effectively.
▪ Continuous assessment will track progress, providing regular feedback to guide
student improvement.
▪ Support and feedback will be readily available, with the course instructor offering
additional guidance as needed.
▪ Moodle LMS and interactive boards will ensure easy access to resources and foster
an interactive learning environment.
▪ Video lectures will cover complex topics in detail, allowing students to review
content at their own pace.

260 | P a g e
Textbooks
1. Gonzalez Rafael C. and Woods Richard E., Digital Image Processing, New
Delhi: Prentice– Hall of India.
2. Computer Vision: Algorithms and Applications by Richard Szeliski

Online Learning References:


I) Fast.ai: Practical Deep Learning for Coders
a. Practical course on deep learning, including applications in image
processing and computer vision.
b. Link: Fast.ai - Practical Deep Learning for Coders
II) Deep Learning for Computer Vision with Python by Adrian
Rosebrock
a. A comprehensive book on deep learning techniques for computer vision
applications.
b. Link: PyImageSearch - Deep Learning for Computer Vision with Python
III) GitHub: OpenCV Projects and Tutorials
a. Repository of projects and tutorials on OpenCV, a popular library for
computer vision.
b. Link: GitHub - OpenCV

IV) Towards Data Science: Image Processing Tutorials


a. A collection of tutorials on various image processing techniques and
applications.
b. Link: Towards Data Science - Image Processing
V) IEEE Xplore Digital Library: Image Processing and Computer Vision
Papers
a. Access to research papers and articles on the latest developments in
image processing and computer vision.
b. Link: IEEE Xplore Digital Library

261 | P a g e
IMAGE PROCESSING &
COMPUTER VISION LAB
B. Tech (Computer Science and Engineering
Program Name:
with specialization in Data Science)
Course Name: Course Code L-T-P Credits
Image Processing & ENSP354 0-0-2 1
Computer Vision Lab
Type of Course: Minor (Department Elective II)

Pre-requisite(s), if any: (1) Linear Algebra and (2) programming in python

Defined Course Outcomes

COs Statements

CO 1 Apply image processing techniques using Python libraries.


Analyze and evaluate the effectiveness of different image enhancement
CO 2
algorithms.
Implement image restoration algorithms and evaluate their performance
CO 3
in the presence of noise.
Develop image compression algorithms and analyze their impact on
CO 4
image quality.
Formulate computer vision techniques such as object detection and
CO 5 tracking, gesture recognition, and facial expression recognition using
Python.

262 | P a g e
Lab Experiments
S.N Experiment CO
1 Implement a program to acquire and display an image. Demonstrate the CO1
process of image sensing and acquisition, and explain the components
involved in an image processing system
2 Develop a program to perform sampling and quantization on a given CO1
image. Visualize the effects of different sampling rates and quantization
levels on image quality.
3 Implement image enhancement techniques in the spatial domain, CO1
including contrast stretching and histogram equalization. Compare the
results before and after enhancement.
4 Apply frequency domain filtering to an image. Implement both low pass CO1
and high pass filters, and demonstrate their effects on the image in terms
of noise reduction and edge enhancement.
5 Implement a noise model to simulate different types of noise (Gaussian, CO2
salt-and-pepper) in an image. Apply spatial filtering techniques to restore
the image from the noisy version.
6 Develop a program to perform periodic noise reduction using frequency CO2
domain filtering. Implement and compare inverse filtering and Wiener
filtering for image restoration
7 Implement geometric transformations on an image, such as rotation, CO2
scaling, and translation. Demonstrate how these transformations affect
the image quality and geometry.
8 Perform color image processing by converting an image from RGB to CO2
another color model (e.g., HSV, YCbCr). Implement and visualize color-
based image segmentation techniques.
9 Implement Huffman Coding and Run Length Coding for image CO3
compression. Compare the compression ratios and efficiency of these
techniques on different types of images.

263 | P a g e
10 Develop a program to perform image segmentation using edge detection CO3
techniques. Implement edge linking and boundary detection algorithms
to segment objects within an image.
11 Apply morphological operations, such as dilation and erosion, on a CO3
binary image. Implement basic morphological algorithms to enhance the
structure and features of the objects in the image.
12 Implement threshold-based and region-based segmentation techniques. CO3
Compare their effectiveness in segmenting different types of images
and objects.
13 Implement boundary and regional descriptors to represent the shape CO4
and features of objects in an image. Use chain codes and structural
methods to describe object
14 Develop a basic convolutional neural network (CNN) for image CO4
classification. Train the CNN on a dataset and evaluate its performance
in recognizing different classes of images.
15 Implement a motion estimation algorithm to track moving objects in a CO4
video sequence. Demonstrate object tracking by visualizing the
trajectories of the tracked objects.
16 Create a system for face and facial expression recognition using CO4
machine learning algorithms. Implement feature extraction techniques
and train a classifier to recognize different expressions and identities.

264 | P a g e
INTRODUCTION TO
GENERATIVE AI
B. Tech (Computer Science and Engineering with
Program Name:
specialization in Data Science)
Course Name: Course Code L-T-P Credits
Introduction to 4-0-0 4
Generative AI ENSP306

Type of Course: Minor (Department Elective II)

Pre-requisite(s), if any:

Course Perspective. This course provides an in-depth introduction to the


principles, techniques, and applications of Generative Artificial Intelligence (AI).
Generative AI is a rapidly evolving field that has the potential to transform numerous
industries by enabling machines to create content, predict outcomes, and enhance
decision-making processes. This course will cover foundational concepts, the latest
advancements in generative models, and practical applications, ensuring students
gain a comprehensive understanding of the subject.

The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

Understand generative AI principles, recent advancements, and


CO 1
applications.

CO 2 Apply probability theory and statistics in generative AI tasks.

CO 3 Design deep learning models for generative tasks..

265 | P a g e
Evaluate generative models for specific applications.
CO 4

Critically assess ethical implications and propose solutions for generative


CO 5
AI.

Course Outline:

Unit Number: 1 Title: Foundations of Generative AI No. of hours: 10

Content:
Introduction to Generative AI: Definition, working principles, and recent
advancements.
Generative Modeling:
• Overview of Generative vs. Discriminative Models.
• Introduction to Probabilistic Generative Models.
• Naive Bayes as a basic generative model.
• Challenges in Generative Modeling.
• Introduction to Representation Learning.

Unit Number: 2 Title: Deep Learning No. of hours: 10

Content:
Overview of Structured and Unstructured Data.
Introduction to Deep Neural Networks using Keras and TensorFlow.
Building and Training Deep Neural Networks:
• Loading, building, compiling, training, and evaluating models.
• Techniques to improve models: Convolutional layers, Batch normalization, and
Dropout layers.

266 | P a g e
Introduction to Autoencoders:
• Building and understanding Variational Autoencoders (VAEs).
• Using VAEs for tasks like face generation.
Unit Number: 3 Generative Adversarial Networks No. of hours: 10

Content:
Introduction to GANs:
• Roles of the Discriminator and Generator.
• Training processes and challenges in GANs.
Advanced GAN Techniques:
• Wasserstein GAN (WGAN) and WGAN-GP.
Evaluation of GANs:
• Qualitative and Quantitative methods.
GAN Architectures and Applications..
Unit Number: 4 Applications and Future Directions No. of hours: 10

Content:
Real-World Applications of Generative AI:
• Image synthesis, data augmentation, healthcare, gaming, and art.
Ethical Considerations:
• Addressing bias, fairness, deepfakes, and responsible AI practices.
Emerging Trends:
• Overview of reinforcement learning, meta-learning, and tools like OpenAI's DALL-E.

Learning Experiences:
▪ Lecture PPTs will provide clear explanations and visual aids to reinforce key
concepts in Generative AI.
▪ Problem-based theory assignments will encourage students to apply
theoretical knowledge to real-world challenges in generative modeling.

267 | P a g e
▪ Project-based lab assignments will offer hands-on experience in building and
evaluating AI models, making learning practical and interactive.
▪ Question banks will help students thoroughly review the entire syllabus,
ensuring a solid understanding of all topics covered.
▪ Model question papers will prepare students for exams by familiarizing them
with the format and types of questions they may encounter.
▪ Continuous assessment will track student progress and provide ongoing
feedback, helping to identify areas for improvement.
▪ Support & Feedback will be readily available, with opportunities for one-on-
one guidance and peer collaboration to enhance learning outcomes.
Textbooks
1. Generative Deep Learning: Teaching Machines to Paint, Write, Compose, and
Play by David Foster
2. Hands-On Generative Adversarial Networks with Keras: Create Powerful
Neural Networks for Real-World Applications by Rafael Valle
References
1. Generative Deep Learning, by David Foster, 2nd Edition, O'Reilly Media, Inc.
2. Deep Learning by Ian Goodfellow, Yoshua Bengio and Aaron Courville, The MIT
Press
3. Pattern recognition and machine learning by Christopher M. Bishop

268 | P a g e
INTRODUCTION TO
GENERATIVE AI LAB
B. Tech (Computer Science and
Program Name: Engineering with specialization in
Data Science)
Course Name: Course Code L-T-P Credits
Introduction to Generative AI Lab 0-0-2 1
ENSP356

Type of Course: Minor (Department Elective II)

Pre-requisite(s), if any: NA

Defined Course Outcomes

COs

Design, develop, and evaluate deep neural networks for complex image
CO 1
classification tasks using advanced model improvement techniques.
Implement and analyze variational autoencoders (VAEs) for anomaly
CO 2
detection in network traffic data, focusing on security threat identification.
Develop and enhance generative adversarial networks (GANs) for
CO 3 realistic image synthesis, emphasizing model architecture and
performance improvement.
Utilize generative AI techniques for data augmentation in healthcare and
CO 4 other creative fields, assessing the impact on model performance and
addressing ethical considerations.

269 | P a g e
Lab Experiments

S.N Experiments COs


1 Implement a basic probabilistic generative model using the CO1
Naive Bayes classifier. Train the model on a simple dataset and
evaluate its performance. Discuss the challenges faced during
the implementation and how they were addressed.
2 Develop a representation learning model to learn and visualize CO1
the latent features of a given dataset. Implement the model
using a suitable machine learning framework and analyze the
results.
3 Create a generative modeling framework to generate synthetic CO1
data from a given dataset. Compare the performance of
generative versus discriminative modeling approaches on the
same dataset.
4 Implement a simple generative model to generate new data CO1
points from a probabilistic distribution. Discuss the working
principles of generative AI and recent advancements in the
field.
5 Build and train a deep neural network using Keras and CO2
TensorFlow to classify images from the MNIST dataset. Evaluate
the model's performance and improve it using techniques like
convolutional layers, batch normalization, and dropout layers.
6 Implement an autoencoder and a variational autoencoder (VAE) CO2
to compress and reconstruct images from a given dataset.
Analyze the differences between the autoencoder and VAE in
terms of performance and latent space representation.
7 Design and implement a convolutional neural network (CNN) to CO3
classify images from the CIFAR-10 dataset. Train the model,

270 | P a g e
evaluate its performance, and use techniques like data
augmentation to improve its accuracy.
8 Implement a basic GAN to generate synthetic images. Train the CO3
GAN on a simple image dataset, and evaluate the quality of the
generated images using both qualitative and quantitative
methods.
9 Develop a Wasserstein GAN (WGAN) and train it on a dataset CO3
of images. Compare the performance of the WGAN with a
standard GAN in terms of stability and quality of generated
images.
10 Implement and compare different GAN architectures and loss CO3
functions. Train each GAN on the same dataset and evaluate
their performance using qualitative and quantitative methods.
11 Implement a generative AI model for image synthesis. Train the CO4
model on a dataset of images and evaluate the quality of the
synthesized images. Discuss the potential applications of image
synthesis in various fields.
12 Develop a generative AI model for data augmentation and data CO4
generation. Train the model on a dataset with limited data and
analyze how data augmentation improves the performance of a
classifier trained on the augmented dataset.
13 Create a generative AI application for healthcare, such as CO4
generating synthetic medical images for training purposes.
Discuss the ethical considerations and challenges associated
with using generative AI in healthcare.

271 | P a g e
TRANSFER LEARNING
B. Tech (Computer Science and Engineering with
Program Name:
specialization in Data Science)
Course Name: Course Code L-T-P Credits
Transfer Learning ENSP308 4-0-0 4
Type of Course: Minor (Department Elective II)

Pre-requisite(s), if any:

Course Perspective. This course introduces students to the fundamental concepts


and advanced techniques of transfer learning, an essential area in machine learning
and deep learning. Transfer learning focuses on leveraging knowledge gained from
one domain to improve learning in another domain. This course covers theoretical
foundations, practical implementations, and applications across various domains,
providing students with the skills necessary to apply transfer learning to real-world
problems.

The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

Understand the theoretical foundations, motivations, and applications of


CO 1
transfer learning.

Implement transfer learning algorithms proficiently using Python and


CO 2
deep learning libraries.

Apply fine-tuning, feature extraction, and model adaptation techniques


CO 3
effectively across different domains and tasks.

Evaluate transfer learning models using standard metrics and


CO 4
methodologies.

272 | P a g e
Analyze real-world applications and ethical implications of transfer
CO 5
learning for inclusive and meaningful solutions.

Course Outline:

Unit Number: 1 Title: Foundations of Transfer Learning No. of hours: 10

Content Summary:
Introduction to Transfer Learning:
• Overview of AI, Machine Learning, and Transfer Learning
• Relationship to Existing Machine Learning Paradigms
• Fundamental Research Issues and Applications
Instance-Based Transfer Learning:
• Instance-Based Noninductive Transfer Learning
• Instance-Based Inductive Transfer Learning
Feature-Based Transfer Learning:
• Minimizing Domain Discrepancy
• Learning Universal Features
• Feature Augmentation
Model-Based Transfer Learning:
• Transfer through Shared Model Components
• Transfer through Regularization

Title: Advanced Transfer Learning


Unit Number: 2 No. of hours: 10
Techniques
Content Summary:
Relation-Based Transfer Learning:
• Markov Logic Networks (MLNs)
• Relation-Based Transfer Learning with MLNs
Heterogeneous Transfer Learning:

273 | P a g e
• Problem Definition and Methodologies
• Applications of Heterogeneous Transfer Learning
Adversarial Transfer Learning:
• Generative Adversarial Networks (GANs)
• Transfer Learning with Adversarial Models
Transfer Learning in Reinforcement Learning:
• Inter-task and Inter-domain Transfer Learning

Title: Multi-task and Theoretical


Unit Number: 3 No. of hours: 12
Aspects of Transfer Learning
Content Summary:

Multi-task Learning:
• Supervised, Unsupervised, and Semi-supervised Learning
• Active, Reinforcement, and Online Learning
• Multi-view and Distributed Multi-task Learning
Transfer Learning Theory:
• Generalization Bounds for Multi-task Learning
• Generalization Bounds for Supervised and Unsupervised Transfer Learning
Transitive Transfer Learning (TTL):
• TTL over Mixed Graphs
• TTL with Hidden Feature Representations and Deep Neural Networks
AutoTL: Learning to Transfer Automatically:
• The L2T Framework
• Parameterizing and Inferring What to Transfer
• Connections to Other Learning Paradigms

Unit Number: 4 Title: Applications of Transfer Learning No. of hours: 8

274 | P a g e
Content Summary:
Specialized Learning Techniques:
• Few-Shot, Zero-Shot, and One-Shot Learning
• Bayesian Program Learning and Poor Resource Learning
Transfer Learning Applications:
• Computer Vision and Medical Image Analysis
• Natural Language Processing and Sentiment Analysis
• Dialogue Systems and Spoken Language Understanding
• Natural Language Generation

Learning Experiences:

▪ Lecture PPTs will deliver foundational knowledge on transfer learning,


providing clear explanations of key concepts and advanced techniques.
▪ Problem-based theory assignments will engage students in applying transfer
learning concepts to solve real-world problems, enhancing critical thinking.
▪ Project-based lab assignments will offer hands-on experience with
implementing transfer learning models, making learning practical and relevant.
▪ Question banks will help students review the entire syllabus, reinforcing their
understanding of both foundational and advanced transfer learning topics.
▪ Model question papers will prepare students for exams by familiarizing them
with typical question formats and challenges.
▪ Continuous assessment will provide regular feedback on student progress,
helping them identify strengths and areas for improvement.
▪ Support & Feedback will be available through the course instructor,
encouraging collaboration and peer reviews to deepen understanding and
improve performance.

275 | P a g e
Textbook
1. “Transfer Learning” by Qiang Yang, Yu Zhang, Wenyuan Dai, Sinno Jialin
Pan
Reference Books:
1. "Deep Learning" by Ian Goodfellow, Yoshua Bengio, and Aaron Courville
2. "Transfer Learning in Action" by Yuxi (Hayden) Liu
3. "Transfer Learning for Natural Language Processing" by Paul Azunre
4. "Deep Learning for Computer Vision" by Rajalingappaa Shanmugamani
5. "Hands-On Transfer Learning with Python" by Dipanjan Sarkar and Raghav
Bali

Additional Readings:
I) Open Source Projects:
a. TensorFlow Hub: GitHub Repository
b. PyTorch Hub: GitHub Repository
II) Community Forums and Discussions:
a. Reddit: r/MachineLearning
b. Stack Overflow: Transfer Learning Tag
III) OSSU Link:
Open Source Society University - Data Science Curriculum

276 | P a g e
TRANSFER LEARNING LAB
B. Tech (Computer Science and Engineering with
Program Name:
specialization in Data Science)
Course Name: Course Code L-T-P Credits
Transfer Learning ENSP358 0-0-2 1
Lab
Type of Course: Minor (Department Elective II)

Pre-requisite(s), if any: NA

Defined Course Outcomes

COs Statement

Apply and evaluate basic transfer learning models and techniques to


CO 1
solve image and text classification tasks using pre-trained models.
Implement and analyze advanced transfer learning techniques, including
CO 2 relation-based, adversarial, and heterogeneous transfer learning, to
improve model performance across different domains.
Develop and assess multi-task learning models and theoretical aspects
CO 3 of transfer learning, focusing on improving model generalization and
performance in multi-domain tasks.
Utilize transfer learning for practical applications, including few-shot
CO 4 learning, zero-shot learning, sentiment analysis, and privacy-preserving
techniques, to address real-world problems effectively.

277 | P a g e
Lab Experiments
S.N Experiment CO
1 Implement an instance-based transfer learning model using a CO1
simple dataset to demonstrate the concepts of noninductive and
inductive transfer learning.
2 Develop a feature-based transfer learning model to minimize CO1
domain discrepancy and learn universal features. Use a dataset with
different domains to showcase the effectiveness of feature
augmentation.
3 Create a model-based transfer learning application by sharing CO1
model components and applying regularization techniques. Evaluate
the performance of the model on a target task with limited data.
4 Compare the performance of a naive machine learning model with a CO1
transfer learning model on the same dataset. Discuss the
advantages and challenges of transfer learning in this context.
5 Implement a relation-based transfer learning model using Markov CO2
Logic Networks (MLNs). Apply the model to a dataset with relational
data and evaluate its performance.
6 Develop a heterogeneous transfer learning application that addresses CO2
the challenges of transferring knowledge between different feature
spaces or distributions. Demonstrate the application on a real-world
dataset.
7 Create an adversarial transfer learning model using GANs. Train the CO2
model on a source domain and evaluate its ability to generate or
classify data in a target domain.
8 Implement transfer learning in a reinforcement learning context by CO2
transferring knowledge from one task to another. Compare the
performance of the transfer learning model with a model trained
from scratch.

278 | P a g e
9 Develop a multi-task learning model that simultaneously trains on CO3
multiple tasks. Evaluate the performance improvements achieved
through shared learning compared to individual task training.
10 Create a transitive transfer learning model using mixed graphs and CO3
hidden feature representations. Apply the model to a dataset with
multiple related tasks and analyze the results.
11 Implement transfer learning models for various applications, such CO4
as computer vision, medical image analysis, and natural language
processing. Compare the effectiveness of transfer learning across
these different domains

279 | P a g e
MINOR PROJECT-III
B. Tech (Computer Science and Engineering with
Program Name:
specialization in Data Science)
Course Name: Course Code L-T-P Credits
Minor Project-III ENSI352 --- 2
Type of Course: Project

Pre-requisite(s), if any: NA

Duration:
The minor project will last for three months.
Project Requirements:
1. Problem Identification and Analysis:
o Identify a relevant problem in society or industry.
o Conduct a thorough analysis of the problem, considering various
perspectives and implications.
2. Implementation:
o Develop and implement a solution to address the identified problem.
3. Data Visualization:
o Utilize appropriate data visualization techniques to represent the
problem, solution, and outcomes effectively.
4. Presentation of Solutions:
o Prepare a comprehensive presentation of the implemented solution,
including its development process, outcomes, and impact.
5. Case Studies:
o Conduct case studies related to the problem and solution, analyzing
existing examples and drawing relevant insights.

Guidelines:
1. Project Selection:
280 | P a g e
o Choose a societal or industrial problem relevant to the field of computer
science and engineering.
o Ensure the problem is specific and well-defined.
2. Literature Review:
o Conduct a thorough review of existing literature and solutions related to
the problem.
o Identify gaps in existing solutions and potential areas for further
investigation.
3. Implementation:
o Develop a detailed plan for implementing the solution.
o Execute the implementation using appropriate tools, technologies, and
methodologies.
4. Data Visualization:
o Collect relevant data and use visualization techniques to represent the
problem, solution, and outcomes.
o Ensure the visualizations are clear, accurate, and effectively
communicate the information.
5. Documentation:
o Document the entire process, including problem identification, literature
review, implementation, data visualization, and case studies.
o Use appropriate formats and standards for documentation.
6. Presentation:
o Prepare a presentation summarizing the problem, existing solutions,
implementation process, data visualization, and case studies.
o Ensure the presentation is clear, concise, and well-structured.
Evaluation Criteria for Minor Project (Out of 100 Marks):
1. Problem Identification and Analysis (15 Marks):
o Comprehensive identification and analysis of the problem: 15 marks
o Good identification and analysis of the problem: 12 marks
o Basic identification and analysis of the problem: 9 marks
o Poor identification and analysis of the problem: 5 marks
281 | P a g e
o No identification and analysis of the problem: 0 marks
2. Implementation (30 Marks):
o Successful and thorough implementation: 30 marks
o Good implementation: 25 marks
o Moderate implementation: 20 marks
o Basic implementation: 15 marks
o Poor implementation: 10 marks
o No implementation: 0 marks
3. Data Visualization (20 Marks):
o Effective and clear data visualization: 20 marks
o Good data visualization: 15 marks
o Moderate data visualization: 10 marks
o Basic data visualization: 5 marks
o Poor data visualization: 0 marks
4. Presentation of Solutions (15 Marks):
o Clear, concise, and engaging presentation: 15 marks
o Clear but less engaging presentation: 12 marks
o Somewhat clear and engaging presentation: 9 marks
o Unclear and disengaging presentation: 5 marks
o No presentation: 0 marks
5. Case Studies (20 Marks):
o Comprehensive and insightful case studies: 20 marks
o Good case studies: 15 marks
o Moderate case studies: 10 marks
o Basic case studies: 5 marks
o Poor case studies: 0 marks
Total: 100 Marks
Course Outcomes:
By the end of this course, students will be able to:
1. Identify and Analyze Problems:

282 | P a g e
o Identify relevant societal or industrial problems and conduct a thorough
analysis of these problems.
2. Implement Solutions:
o Develop and implement effective solutions to address identified
problems using appropriate tools and technologies.
3. Visualize Data:
o Utilize data visualization techniques to represent problems, solutions,
and outcomes clearly and effectively.
4. Present Solutions:
o Prepare and deliver comprehensive presentations summarizing the
implementation process, outcomes, and impact of their solutions.
5. Conduct Case Studies:
o Conduct case studies related to the problem and solution, analyzing
existing examples and drawing relevant insights.
6. Literature Review:
o Conduct comprehensive literature reviews to identify gaps in existing
solutions and potential areas for further investigation.
7. Documentation:
o Document the entire process, including problem identification, literature
review, implementation, data visualization, and case studies, using
appropriate formats and standards.
8. Professional Development:
o Develop skills in research, analysis, implementation, data visualization,
documentation, and presentation, contributing to overall professional
growth.

283 | P a g e
COMPETITIVE CODING
BOOTCAMP-IV

B. Tech (Computer Science and


Program Name: Engineering with specialization in Data
Science)
Course Name: Course Code L-T-P Credits
COMPETITIVE
CODING 3-0-0 0
BOOTCAMP-IV

Type of Course: AUDIT COURSE

Contact Hours 30

Version

Course Outcomes
CO1 understand system design principles and identify functional and non-
functional requirements for projects.
CO2 apply scaling and load balancing techniques and evaluate caching
strategies for system optimization.
CO3 design efficient database schemas and implement ACID transactions in SQL
and NoSQL.
CO4 solve algorithmic problems using advanced techniques and apply string
matching algorithms in coding challenges.

Title: Foundations and Advanced Concepts No. of hours: 8


Unit Number: 1
in System Design

Content:
Introduction to System Design

284 | P a g e
• Principles of System Design: Basics of system design: modularity, scalability,
and maintainability, Hands-on: Design a simple e-commerce or social media
system blueprint.
• Functional vs. Non-Functional Requirements: Understand key differences,
Hands-on: Identify functional and non-functional requirements for a simple
project.

Scalability and Load Balancing

• Scaling Techniques: Vertical Scaling: Adding resources to a single server,


Horizontal Scaling: Distributing load across multiple servers, Hands-on: Set up
vertical and horizontal scaling scenarios using cloud tools.
• Load Balancing: Round-robin, least connections, and IP hashing strategies,

Caching Strategies:
• Client-Side vs. Server-Side Caching: Comparison of caching techniques.
• Eviction Policies: LRU and LFU policies for cache eviction.
No. of hours: 8
Unit Number: 2 Title: Advanced Database concepts

Content:
Database Indexing: different types of indexes (e.g., B-tree, hash, bitmap), how
indexes improve query performance, create indexes and their impact on write
operations.
Database Transactions: ACID properties (Atomicity, Consistency, Isolation,
Durability), implementing transactions in both SQL and NoSQL databases, scenarios
like rollbacks and savepoints.
Database Sharding: partitioning techniques, sharding, sharding strategies for
scalability.
Data Modeling: entity-relationship diagrams (ERDs), Normalize data models based
on business requirements, Design efficient schemas for different use cases.
No. of hours: 8
Unit Number: 3 Title: Advanced Concepts

285 | P a g e
Content:
Bit Manipulation: XOR operations, Bitwise AND, OR, NOT, Counting set bits, Power
of two, Bit masking
Divide and Conquer: Matrix exponentiation, Strassen’s algorithm for matrix
multiplication, Closest pair of points
Two Pointers: Fast and slow pointer, Merging sorted arrays, Triplets, pairs with given
sum
Sliding Window : Maximum in a sliding window, Smallest subarray with sum greater
than a given value
Union-Find (Disjoint Set Union - DSU) : Union by rank, Path compression
String Matching: KMP algorithm, Rabin-Karp, Z-algorithm

Unit Number: 4 Title: Miscellaneous No. of hours: 6

Content:
Hashing: Hash tables, Hash maps and sets, Collision handling, Anagram
checks
Simulation and Design Problems: LRU cache design, Parking lot simulation,
Elevator design, Rate limiter
Concurrency: Multithreading problems, Deadlock detection
Graphical Algorithms: Flood fill, Convex hull, Image rendering algorithms

286 | P a g e
Lab Experiments

S. Mapped
Problem Statement
No. CO

Design a simple e-commerce system with modularity, scalability,


1 CO1
and maintainability.

Identify functional and non-functional requirements for a social


2 CO1
media platform.

Implement vertical scaling on a single server and measure


3 CO2
performance.

Set up horizontal scaling across multiple servers using a cloud


4 CO2
platform.

Implement a round-robin load balancer for distributing requests


5 CO2
across multiple servers.

Compare client-side and server-side caching strategies for a web


6 CO2
application.

7 Implement Least Recently Used (LRU) cache eviction policy. CO2

8 Create a B-tree index for a database to optimize search queries. CO3

9 Implement ACID-compliant transactions in an SQL database. CO3

10 Implement database sharding for scalability in a NoSQL database. CO3

Normalize a database schema to 3NF based on given business


11 CO3
requirements.

12 Use bitwise operations to check if a number is a power of two. CO4

13 Implement matrix multiplication using Strassen’s algorithm. CO4

14 Find the closest pair of points in a set using divide and conquer. CO4

287 | P a g e
S. Mapped
Problem Statement
No. CO

15 Merge two sorted arrays using the two-pointer technique. CO4

16 Find the maximum element in a sliding window of size k. CO4

Solve the union-find problem using path compression and union


17 CO4
by rank.

Implement the KMP string matching algorithm to find a pattern in


18 CO4
a text.

Implement Rabin-Karp algorithm for string matching in a large


19 CO4
document.

20 Design a hash table with collision handling using chaining. CO4

21 Implement an anagram checker using hash maps. CO4

22 Simulate an LRU cache system design. CO2, CO4

23 Design a rate limiter using a sliding window algorithm. CO4

24 Implement deadlock detection using multithreading. CO4

25 Solve the flood fill problem using depth-first search (DFS). CO4

26 Implement the convex hull algorithm for a set of 2D points. CO4

27 Design a simple elevator simulation system with multithreading. CO4

Implement a parking lot simulation with object-oriented design


28 CO2, CO4
principles.

Design a system to detect and recover from transaction rollbacks


29 CO3
in a database.

Optimize an e-commerce website with horizontal scaling and


30 CO2
caching strategies.

288 | P a g e
Learning Experiences

▪ Engagement through Lecture PPTs: Students will grasp key concepts of


system design, database indexing, and algorithmic techniques through well-
structured lecture presentations, ensuring clarity and retention.
▪ Problem-Based Theory Assignments: Assignments will focus on real-world
challenges like load balancing and caching strategies, allowing students to apply
theoretical knowledge and develop problem-solving skills.
▪ Project-Based Lab Work: Students will design and implement system
blueprints, databases, and caching mechanisms through hands-on lab
assignments, enhancing practical skills in a collaborative environment.
▪ Comprehensive Question Bank: A diverse question bank covering the entire
syllabus will allow students to practice systematically and prepare thoroughly for
exams and competitive coding interviews.
▪ Model Question Papers and Assessments: Continuous assessments through
quizzes, model papers, and coding challenges will test students’ understanding
and application of complex concepts like bit manipulation, string matching, and
scalability techniques.
▪ Support & Feedback System: Instructors will provide timely feedback on
assignments and projects. Students will have access to the course in charge for
additional support, ensuring they can clarify doubts and improve performance.
▪ Use of ICT Tools & Interactive Boards: Moodle LMS will host all course
materials, assignments, and video lectures, enabling students to access resources
anytime. Interactive teaching boards will be used for live demonstrations,
enhancing participation.
▪ Video Lectures for Critical Topics: Pre-recorded video lectures on advanced
topics like ACID transactions and multithreading will offer students the flexibility
to learn at their own pace and review difficult concepts.

Text Books:

▪ Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2009). Introduction
to Algorithms (3rd ed.). MIT Press. ISBN: 978-0262033848.
▪ McDowell, G. L. (2015). Cracking the Coding Interview: 189 Programming
Questions and Solutions (6th ed.). CareerCup. ISBN: 978-0984782857.

Online References

▪ LeetCode (www.leetcode.com)
▪ HackerRank (www.h System Design Primer
(https://github.com/donnemartin/system-design-primer)ackerrank.com)

289 | P a g e
Semester: VII

(DEPARTMENT ELECTIVE-II)
SECURE CODING AND
VULNERABILITIES
B. Tech (Computer Science and
Program Name: Engineering with specialization in Data
Science)
Course Name: Course Code L-T-P Credits
Secure Coding & Vulnerabilities ENSP301 4-0-0 4

Type of Course: Minor (DEPARTMENT ELECTIVE-I)

Pre-requisite(s), if any:

Course Perspective. This course provides an in-depth exploration of secure coding


practices and the identification and mitigation of common vulnerabilities in software
development. Students will gain a solid foundation in security concepts, secure
application design, and the implementation of security best practices throughout the
software development lifecycle. By understanding the principles of secure coding and
the types of vulnerabilities that can compromise applications, students will be
equipped to develop robust, secure software. The course covers essential topics such
as input validation, authentication, cryptography, buffer overflows, SQL injection, and
application security testing. The course is divided into four modules:
a) Introduction to Coding and Security
b) Secure Application Design and Architecture
c) Secure Coding Practices and Vulnerabilities
d) Application Security Testing and Deployment

290 | P a g e
The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

Understand different types of application security threats and their


CO 1
potential impact.

Apply secure design principles and architectures to develop robust and


CO 2
secure applications.

Implement secure coding practices for input validation, authentication,


CO 3
cryptography, session management, and error handling.

Conduct static and dynamic application security testing to identify


CO 4 vulnerabilities and implement secure deployment and maintenance
practices.

CO = Course outcomes. A student is expected to have learnt concepts and


demonstrated/developed abilities or skills related to strategic management at the
end of the course.

Course Outline:
Unit Title: Introduction to coding and
No. of hours: 10
Number: 1 Security
Content Summary:
Introduction-security concepts-CIA Triad, Viruses, Trojans, and Worms, threat,
vulnerability, risk, attack. Coding Standards: Dirty Code and Dirty Compiler,
Dynamic Memory Management functions, Common memory management Errors
(Initialization Errors, Forget to Check Return Values, accessing already freed
memory, Freeing the same memory multiple times, Forget to free the allocated
memory), Integer Security –Introduction to integer types: Integer Data Types, data
type conversions, Integer vulnerabilities and mitigation strategies

291 | P a g e
Unit Title: Secure Application Design and
No. of hours: 10
Number: 2 Architecture
Content Summary:
Security requirements gathering and analysis, Secure software development life
cycle (SSDLC), Security issues while writing SRS, Design phase security,
Development Phase, Test Phase, Maintenance Phase, Writing Secure Code – Best
Practices SD3 (Secure by design, default and deployment), Security principles and
Secure Product Development Timeline.
Unit Title: Secure Coding Practices and
No. of hours: 10
Number: 3 Vulnerabilities
Content Summary:
Input validation Techniques-whitelist validation, regular expressions, authentication
and authorization, Cryptography, buffer overflows, Session management and
protection against session-related attacks, Secure error handling and logging
practices, SQL Injection Techniques and Remedies, Race conditions
Unit Title: Application Security Testing and
No. of hours: 10
Number: 4 Deployment
Content Summary:
Security code overview, Secure software installation. The Role of the Security Tester,
Building the Security Test Plan. Testing HTTP-Based Applications, Testing File-Based
Applications, Testing Clients with Rogue Servers, Static and Dynamic Application
Security Testing (SAST & DAST), Secure Deployment and Maintenance, Patch
management and software updates, Vulnerability scanning and penetration testing.

Learning Experiences:

▪ Hands-on Vulnerability Testing: Practice identifying and mitigating common


software vulnerabilities.

292 | P a g e
▪ Code Review Sessions: Conduct peer code reviews to identify potential security
flaws and improve secure coding practices.
▪ Case Studies: Analyze real-world security breaches to understand how
vulnerabilities are exploited.
▪ Interactive Labs: Implement secure coding techniques like input validation and
buffer overflow protection.
▪ Security Audits: Perform security audits on sample applications to assess their
vulnerability to SQL injection, session hijacking, and more.
▪ Role Play: Simulate the role of both attacker and defender in vulnerability
exploitation and mitigation scenarios.
▪ Project-Based Learning: Develop secure applications using best practices in
secure design, coding, and testing.
▪ Tools Exploration: Learn to use static and dynamic application security testing
tools (SAST & DAST) for real-world applications.
▪ Collaborative Learning: Work in groups to design security testing plans and
assess security risks in various application environments.
▪ Real-World Simulations: Conduct vulnerability scanning and penetration
testing in simulated deployment environments.

Text Books and References


1. Secure Coding: Principles and Practices, Mark G. Graff, Kenneth R. Van Wyk,
O'Reilly Media
2. Writing Secure Code, Michael Howard and David LeBlanc,Microsoft Press, 2nd
Edition, 2004
3. Buffer Overflow Attacks: Detect, Exploit, Prevent by Jason Deckard
,Syngress,1st Edition, 2005
4. Threat Modeling, Frank Swiderski and Window Snyder,Microsoft Professional,
1st Edition ,2004
5. Secure Coding: Principles and Practices by Mark G. Graff, Kenneth R. van
Wyk, Publisher(s): O'Reilly Media, Inc., 2003
293 | P a g e
6. The Software Vulnerability Guide (Programming Series) by H. Thompson
(Author), Scott G. Chase, 2005

Additional Readings:
Online Learning References for "Secure Coding and Vulnerabilities"
1. OWASP - Secure Coding Practices - Quick Reference Guide
• This guide provides a quick reference to secure coding practices based
on OWASP's recommendations for secure software development.
• Link: OWASP - Secure Coding Practices
2. NPTEL - Secure Coding
• Offered by IITs through NPTEL, this course covers secure coding
practices and principles for writing secure software.
• Link: NPTEL - Secure Coding
3. Mozilla Developer Network (MDN) - Web Security
• Comprehensive documentation on web security principles, secure
coding practices, and common vulnerabilities in web applications.
• Link: MDN - Web Security
4. Google Code University - Web Security
• Learn about web security from Google, including secure coding
practices and how to protect web applications from common threats.
• Link: Google Code University - Web Security

294 | P a g e
SECURE CODING AND
VULNERABILITIES LAB
B. Tech (Computer Science and
Program Name: Engineering with specialization in
Data Science)
Course Name: Course Code L-T-P Credits
Secure Coding & Vulnerabilities
ENSP351 0-0-2 1
Lab
Type of Course: Minor (DEPARTMENT ELECTIVE-I)

Pre-requisite(s), if any:

Lab Experiments
Defined Course Outcomes

COs

Implement fundamental security concepts such as the CIA Triad


CO 1 (Confidentiality, Integrity, Availability) and demonstrate secure coding
practices to prevent common vulnerabilities.
Analyze and fix memory management errors and integer vulnerabilities,
CO 2
applying mitigation strategies to enhance software security.
Develop secure software by following the Secure Software Development
CO 3 Life Cycle (SSDLC), incorporating security principles and best practices
throughout the development process.
Design and test secure applications, performing vulnerability scanning,
CO 4 penetration testing, and implementing security measures to protect
against attacks such as SQL injection and buffer overflow.

295 | P a g e
Ex. No Experiment Title Mapped
CO/COs

P1 Project Title: Secure Memory Management System CO1

Problem Statement: Develop a secure memory management


system for a critical application such as a healthcare
management system. This system should handle dynamic
memory allocation and deallocation securely, preventing
common memory management vulnerabilities.

P2 Project Title: Secure E-commerce Platform Design CO2

Problem Statement: Design and implement a secure e-


commerce platform that ensures data security throughout the
software development life cycle (SDLC). The platform should
handle sensitive user information securely and provide a robust
security architecture.

P3 Project Title: Secure Banking Application CO3


Problem Statement: Develop a secure online banking
application that ensures the protection of user data and
prevents common vulnerabilities such as SQL injection, buffer
overflow, and session hijacking.

P4 Project Title: Comprehensive Security Testing and CO4


Deployment for a Social Media Platform

Problem Statement: Develop a social media platform with a


focus on security testing and secure deployment. The platform
should protect user data and provide a secure environment for
social interactions.

296 | P a g e
CYBER CRIME INVESTIGATION
& DIGITAL FORENSICS
B. Tech (Computer Science and
Program Name: Engineering with specialization in Data
Science)
Course Name: Course Code L-T-P Credits
Cyber Crime Investigation & 4-0-0 4
ENSP303
Digital Forensics
Type of Course: Minor (DEPARTMENT ELECTIVE-I)

Pre-requisite(s), if any:

Course Perspective. The course offers an in-depth exploration of the


methodologies and techniques employed in identifying, investigating, and
prosecuting cybercrimes. As digital technologies permeate every aspect of modern
life, understanding how to safeguard and investigate electronic evidence becomes
crucial for ensuring security and justice. This course covers the foundational concepts
of digital forensics, types of cybercrimes, investigation procedures, and the utilization
of forensic tools. It prepares students to handle and analyze digital evidence
proficiently, contributing to the effective enforcement of cyber laws. The course is
divided into four comprehensive units:
a) Introduction
b) Types of Cyber Crimes
c) Investigation of Cyber Crimes
d) Forensic Tools and Processing of Electronic Evidence

297 | P a g e
The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

Understand the nature and classification of conventional and cyber-crimes.


CO 1

Analyze and identify various types of cyber-crimes and their modes of


CO 2
operation.

Evaluate the impact of cyber-crimes on individuals, organizations, and


CO 3
society.

Develop an understanding of digital forensics and the investigative


CO 4
procedures used in cyber-crime cases.

Apply forensic tools and techniques to retrieve and analyze digital


CO 5
evidence.

Course Outline:
Unit
Title: Title: Introduction No. of hours: 10
Number: 1
Content:
Introduction to Digital Forensics, Definition and types of cybercrimes, electronic
evidence and handling, electronic media, collection, searching and storage of
electronic media, introduction to internet crimes, hacking and cracking, credit card
and ATM frauds, web technology, cryptography, emerging digital crimes and
modules.
Unit
Title: Types of Cyber Crimes No. of hours: 10
Number: 2

298 | P a g e
Content:
Crimes targeting Computers: Unauthorized Access Packet Sniffing Malicious Codes
including Trojans, Viruses, Logic Bombs, etc. Online based Cyber Crimes: Phishing
and its variants Web Spoofing and E-mail Spoofing Cyber Stalking Web
defacement financial crimes, ATM and Card Crimes etc. Spamming Commercial
espionage and Commercial Extortion online Software and Hardware Piracy Money
Laundering Fraud& Cheating Other Cyber Crimes.
Unit
Title: Investigation of Cyber Crimes No. of hours: 10
Number: 3
Content:
Investigation of malicious applications Agencies for investigation in India,
their powers and their constitution as per Indian Laws Procedures followed by
First Responders; Evidence Collection and Seizure Procedures of Digital
mediums Securing the Scene, Documenting the Scene, Evidence Collection
and Transportation Data Acquisition Data Analysis Reporting
Unit Title: Forensic Tools and Processing of
No. of hours: 10
Number: 4 Electronic Evidence
Content:
Introduction to Forensic Tools, Usage of Slack space, tools for Disk Imaging, Data
Recovery, Vulnerability Assessment Tools, Encase and FTK tools, Anti Forensics and
probable counters, retrieving information, process of computer forensics and digital
investigations, processing of digital evidence, digital images, damaged SIM and
data recovery, multimedia evidence, retrieving deleted data: desktops, laptops and
mobiles, retrieving data from slack space, renamed file, ghosting, compressed files.

Learning Experiences

▪ Interactive Lectures and Video Sessions:Students will engage with interactive


PowerPoint presentations and video lectures for critical concepts in cyber crime

299 | P a g e
and digital forensics, enhancing understanding through visual and auditory
learning.
▪ Problem-Based Theory Assignments:Theory assignments will focus on real-
world cyber crime scenarios, encouraging students to analyze and solve
complex problems, thus bridging the gap between theory and practical
application.
▪ Project-Based Lab Assignments:Hands-on lab projects will involve using
forensic tools and techniques to investigate simulated cyber crimes, providing
practical experience in evidence collection, data analysis, and the application
of forensic methodologies.
▪ Collaborative Group Work:Students will work in groups to tackle case studies
and forensic investigations, promoting teamwork, critical thinking, and peer
learning. Group activities will include collaborative problem-solving and
sharing insights on cyber security issues.
▪ Continuous Assessment and Feedback:Ongoing assessments, including
quizzes, assignments, and practical labs, will monitor progress. Students will
receive regular feedback from the course in charge, with opportunities for
additional support and guidance as needed.
▪ Use of ICT Tools and Moodle LMS:All course materials, including lecture notes,
assignments, and model question papers, will be accessible through Moodle
LMS. Students will also use interactive teaching boards during lectures to
visualize complex concepts and engage in real-time discussions.
▪ Engagement with a Question Bank and Model Papers:A comprehensive
question bank and model question papers will be provided to aid in exam
preparation, helping students familiarize themselves with potential exam
questions and assess their understanding of the syllabus.
▪ Application of Theoretical Knowledge to Practical Scenarios:Students will apply
theoretical knowledge to practical cases and simulations, enabling them to
experience the full cycle of a cyber crime investigation, from evidence
collection to analysis and reporting.

300 | P a g e
Text Books & References
1. Moore, Robert, (2011). Cybercrime, investigating high-technology computer
crime(2nd Ed.). Elsevie
2. C. Altheide& H. Carvey Digital Forensics with Open Source Tools, Syngress,
2011.
3. Majid Yar, “Cybercrime and Society”, SAGE Publications Ltd, Hardcover, 2nd
Edition, 2013.
4. Robert M Slade, “Software Forensics: Collecting Evidence from the Scene of a
Digital Crime”, Tata McGraw Hill, Paperback, 1st Edition, 2004.

Additional Readings:
Online Learning References:
I) Cybrary - Digital Forensics
a. A free online course that covers various aspects of digital forensics,
including tools, techniques, and procedures for investigating
cybercrimes.
b. Link: Cybrary - Digital Forensics
II) Pluralsight - Digital Forensics Fundamentals
a. This course offers a thorough understanding of digital forensics,
covering the fundamentals, tools, and techniques used in the field.
b. Link: Pluralsight - Digital Forensics Fundamentals
III) SANS Institute - Digital Forensics and Incident Response Blog
a. A blog providing insights, case studies, and updates on the latest in
digital forensics and incident response.
b. Link: SANS Institute - Digital Forensics Blog
IV) OWASP - Open Web Application Security Project
a. Provides resources on web security, including best practices for secure
coding and tools for vulnerability assessment, which are essential for
investigating cybercrimes.
b. Link: OWASP - Open Web Application Security Project

301 | P a g e
CYBER CRIME INVESTIGATION
& DIGITAL FORENSICS LAB
B. Tech (Computer Science and
Program Name: Engineering with specialization in Data
Science)
Course Name: Course Code L-T-P Credits
Cyber Crime Investigation & 0-0-2 1
ENSP353
Digital Forensics Lab
Type of Course: Minor (DEPARTMENT ELECTIVE-I)

Pre-requisite(s), if any:

Proposed Lab Experiments


Defined Course Outcomes

COs

Understand the fundamental concepts and principles of digital forensics


CO 1
and cybercrimes.
Apply the knowledge of digital forensics techniques and procedures to
CO 2 collect, analyse, and preserve electronic evidence in various types of
cybercrimes.
Evaluate and utilize forensic tools and technologies for data acquisition,
CO 3
analysis, and recovery in the investigation of cybercrimes.
Analyse and interpret digital evidence obtained from different sources,
CO 4 such as electronic media, internet crimes, malicious applications, and
various forms of cybercrimes.

302 | P a g e
Experiment Title Mapped
CO/COs
1 Project Title: Comprehensive Study on Cybercrime and Digital CO1
Forensics
Problem Statement: Conduct a comprehensive study on various types
of cybercrimes and the role of digital forensics in investigating these
crimes. The project will involve collecting electronic evidence,
understanding cybercrime techniques, and applying digital forensics
methodologies.
2 Project Title: Simulation and Prevention of Cyber Crimes CO2
Problem Statement: Develop a comprehensive simulation and
prevention strategy for various types of cybercrimes. The project will
involve creating scenarios for unauthorized access, phishing, and
malware attacks, and implementing preventive measures.
3 Project Title: Investigation and Reporting of Cyber Crime CO3
Incidents
Problem Statement: Investigate a simulated cybercrime incident,
collect and analyze digital evidence, and report the findings. The project
will cover the entire investigation process from securing the scene to
data analysis and reporting.
4 Project Title: Advanced Digital Forensics and Evidence CO4
Processing
Problem Statement: Develop a system for advanced digital forensics
and processing of electronic evidence. The project will involve using
forensic tools for data recovery, vulnerability assessment, and
processing digital evidence from various devices.

303 | P a g e
AI IN CYBER SECURITY
B. Tech (Computer Science and Engineering with
Program Name:
specialization in Data Science)
Course Name: Course Code L-T-P Credits
AI in Cyber Security ENSP305 4-0-0 4
Type of Course: Minor (DEPARTMENT ELECTIVE-I)

Pre-requisite(s), if any:

Course Perspective. The course delves into the integration of Artificial Intelligence
(AI) techniques within the realm of cyber security, highlighting the transformative
potential of AI in detecting, preventing, and responding to cyber threats. As cyber
threats evolve in complexity and scale, AI offers advanced methodologies to enhance
security measures and mitigate risks effectively. This course provides a
comprehensive understanding of the applications of AI in cyber security, from
fundamental machine learning and deep learning techniques to their practical
implementations in threat detection and prevention.
Students will explore the history, evolution, and current trends of AI in cyber security,
gaining insights into the ethical considerations and challenges associated with the
adoption of AI technologies in this critical field. Through detailed case studies and
practical examples, the course bridges theoretical concepts with real-world
applications, equipping students with the skills necessary to leverage AI for robust
cyber defense strategies.

304 | P a g e
The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

Understand the concepts and applications of AI in the field of cyber


CO 1
security.

Express the ethical and legal considerations associated with the use of AI
CO 2
in cyber security.

Determine emerging trends and technologies in AI for cyber security, and


CO 3
their potential impact on the field.

Identify strategies for integrating AI-driven solutions into existing cyber


CO 4
security frameworks, policies, and practices.

Articulate critical thinking and problem-solving skills to address real-


CO 5
world cyber security challenges using AI techniques.

Design machine learning techniques for threat detection and prevention


CO 6
in cyber security, including supervised and unsupervised algorithms.

Course Outline:
Unit Title: Introduction to AI and Cyber
No. of hours: 10
Number: 1 Security
Content:
Overview of Artificial Intelligence and its applications in Cyber Security
Evolution and impact of AI on Cyber Security
Understanding Cyber Security threats and the role of AI
Basic principles of Machine Learning (ML) and Deep Learning (DL) in Cyber Security
Ethical considerations and challenges of AI in Cyber Security

305 | P a g e
Unit Title: Machine Learning Techniques for
No. of hours: 10
Number: 2 Cyber Security
Content:
▪ Introduction to Machine Learning techniques relevant to Cyber Security
▪ Overview of supervised and unsupervised ML models
▪ Feature engineering and data preparation for ML models
▪ Practical applications and case studies of ML in Cyber Security.
Unit Title: Deep Learning Techniques for
No. of hours: 10
Number: 3 Cyber
Content:
Introduction to Deep Learning and its significance in Cyber Security
Applications of Convolutional Neural Networks (CNNs) and Recurrent Neural
Networks (RNNs)
Overview of Generative Adversarial Networks (GANs) and their use in Cyber Security
Case studies illustrating the use of DL techniques for Cyber Security problems
Unit Title: AI for Cyber Security: Threat
No. of hours: 10
Number: 4 Detection and Prevention
Content:
AI applications in threat detection and prevention
Overview of traditional vs. AI-driven threat detection methods
Fundamentals of supervised and unsupervised ML algorithms for threat detection
Advanced deep learning techniques for threat detection (CNNs, RNNs)
Feature selection, emerging trends, and challenges in AI for Cyber Security

Learning Experiences:

▪ Interactive Lectures: Engage with multimedia-rich lectures using PPTs and video
materials, providing a thorough overview of AI applications in Cyber Security and
foundational concepts of Machine Learning and Deep Learning.

306 | P a g e
▪ Hands-On Assignments: Apply theoretical knowledge through problem-based
assignments and lab exercises, focusing on real-world scenarios of AI in Cyber
Security, such as threat detection and prevention using ML and DL techniques.

▪ Case Studies and Discussions: Analyze and discuss case studies that demonstrate
the practical application of ML and DL in Cyber Security, encouraging critical
thinking and application of concepts to solve complex problems.

▪ Group Projects: Collaborate in groups to work on projects involving AI-driven


Cyber Security solutions, fostering teamwork and peer learning, and providing
practical experience in developing and implementing secure systems.

▪ Continuous Assessment: Participate in regular quizzes and assignments to assess


understanding and application of course material, with opportunities for feedback
and improvement based on performance.

▪ Use of ICT Tools: Utilize Moodle LMS for accessing course materials, submitting
assignments, and engaging in interactive discussions, enhancing the learning
experience with technology.

▪ Support and Feedback: Benefit from regular feedback and additional support from
the course instructor, with opportunities to seek help and clarify doubts, ensuring
a thorough understanding of complex topics.

307 | P a g e
Text Book References
1. Artificial Intelligence for Cybersecurity" by Bhaskar Sinha (Auerbach
Publications)
2. Machine Learning and Security: Protecting Systems with Data and
Algorithms" by Clarence Chio and David Freeman (O'Reilly Media)

Additional Readings:
Online Learning Resources:
I) Cybrary - Introduction to Artificial Intelligence for Cyber Security
a. This course offers insights into how AI can be applied to cyber security,
including threat detection and response.
b. Link: Cybrary - Introduction to Artificial Intelligence for Cyber Security
II) Pluralsight - Machine Learning and AI for Cybersecurity
a. This course provides an in-depth look at how machine learning and AI
can be used to enhance cyber security measures.
b. Link: Pluralsight - Machine Learning and AI for Cybersecurity
III) FutureLearn - Artificial Intelligence for Cyber Security by Coventry
University
a. This course explores the application of AI in cyber security, covering
topics like threat detection, response, and mitigation.
b. Link: FutureLearn - Artificial Intelligence for Cyber Security
IV) MIT OpenCourseWare - Artificial Intelligence
a. Lecture notes, assignments, and exams from MIT’s course on Artificial
Intelligence, providing a deep dive into AI concepts applicable to cyber
security.
b. Link: MIT OpenCourseWare - Artificial Intelligence
V) IBM - Introduction to Cyber Security Tools & Cyber Attacks
a. A course that covers various cyber security tools and techniques,
including the use of AI and machine learning for threat detection and
prevention.
b. Link: IBM - Introduction to Cyber Security Tools & Cyber Attacks
308 | P a g e
AI IN CYBER SECURITY LAB
B. Tech (Computer Science and Engineering with
Program Name:
specialization in Data Science)
Course Name: Course Code L-T-P Credits
AI in Cyber Security 0-0-2 1
ENSP355
Lab
Type of Course: Minor (DEPARTMENT ELECTIVE-I)

Pre-requisite(s), if any: basic understanding of web development technologies


such as HTML, CSS, and JavaScript. Additionally, students should have some
familiarity with networking concepts, operating systems, and databases.

Defined Course Outcomes

COs Statement

Analyze the history, evolution, and ethical considerations of AI in cyber


CO 1 security, documenting key milestones and advancements, and discussing
the implications of AI applications.
Implement and evaluate machine learning models for classifying and
detecting cyber threats, using various datasets and techniques such as
CO 2
supervised and unsupervised learning, deep learning, and anomaly
detection.
Develop and apply feature engineering, data preparation, and model
CO 3 training techniques to enhance the performance and accuracy of cyber
security models.
Conduct comprehensive case studies and surveys on the application of
CO 4 AI in cyber security, identifying emerging trends, challenges, and
documenting methodologies and findings.

309 | P a g e
Lab Experiments

Ex. Experiment Title Mapped


No CO/COs
P1 Project Title: Comprehensive Analysis of AI in Cyber CO1
Security
Problem Statement: Conduct a comprehensive analysis of the
role of AI in cyber security. The project will involve studying the
history, evolution, and current trends in AI applications for cyber
security, and understanding the basic principles of machine
learning and deep learning in this context.
P2 Project Title: Machine Learning Models for Cyber Threat CO2
Detection
Problem Statement: Develop and evaluate different machine
learning models for detecting cyber threats. The project will
involve implementing supervised and unsupervised learning
techniques, performing feature engineering, and analyzing case
studies.
P3 Project Title: Deep Learning Models for Advanced Cyber CO3
Threat Detection
Problem Statement: Develop and evaluate deep learning
models for advanced cyber threat detection. The project will
involve implementing CNNs, RNNs, and GANs, and analyzing
their applications in cyber security.
P4 Project Title: AI-Based Comprehensive Threat Detection CO4
System
Problem Statement: Develop a comprehensive AI-based
system for threat detection and prevention in cyber security. The
project will involve implementing machine learning and deep

310 | P a g e
learning models and addressing the challenges of traditional
threat detection methods.

311 | P a g e
SOCIAL MEDIA SECURITY
B. Tech (Computer Science and Engineering
Program Name:
with specialization in Data Science)
Course Name: Course Code L-T-P Credits
Social Media Security ENSP307 4-0-0 4

Type of Course: Minor (DEPARTMENT ELECTIVE-I)

Pre-requisite(s), if any:

Course Perspective. This course introduces students to the critical concepts of


social media security, addressing the growing need to understand and manage
security and privacy issues in the digital age. Social media platforms have become
integral to personal, professional, and commercial interactions, creating a complex
landscape of potential security threats and privacy concerns. This course aims to
equip students with the knowledge and skills required to navigate and mitigate these
risks effectively. Students will explore the technical, legal, and social dimensions of
social media security, developing strategies to safeguard personal information,
ensure user trust, and comply with legal standards.

312 | P a g e
The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

Demonstrate an understanding of the different types of social media


CO 1 platforms, their features, and their impact on communication, marketing,
and society.

Acquire knowledge and skills in social media monitoring techniques,


CO 2 including data collection, analysis, and the use of relevant tools and
technologies.

Develop the ability to analyze and evaluate viral content on social media,
CO 3 understand the factors contributing to its spread, and recognize its
implications for marketing and online engagement.

Identify the challenges, opportunities, and pitfalls associated with social


CO 4 media marketing, and formulate strategies for effective audience
targeting, engagement, and brand promotion.

Develop strategies to safeguard personal information, foster user trust,


CO 5
and mitigate associated risks.

Course Outline:
Unit
Title: Social Media Overview No. of hours: 10
Number: 1
Content Summary:
Overview of Social Media
Types and Platforms
Social Media Monitoring and Analysis
Data Collection and Analysis Methods: BoW Model, TF-IDF

313 | P a g e
Network Analysis Basics: Node Centrality, Degree Distribution, Clustering Coefficient
Introduction to Synthetic Networks: Random Graphs, Preferential Attachment
Unit Title: Social Media Management and
No. of hours: 10
Number: 2 Marketing
Content Summary:
Strategies for Recruitment and Employment Screening
Customer Engagement and Content Management
Evaluating Social Media Campaigns: Effective vs. Ineffective
Ethical Considerations and Privacy in Crowdsourcing
Managing and Promoting Social Media Presence
Unit
Title: Privacy Issues in Social Media No. of hours: 10
Number: 3
Content Summary:
Privacy Settings and Personal Identifiable Information (PII) Leakage
Types of Privacy Attacks: Identity Disclosure, Inference Attacks, De-anonymization
Privacy Metrics: k-anonymity, l-diversity, Differential Privacy
Balancing Personalization and Privacy
Impact of Privacy on User Trust
Unit Title: Social Media Security: Laws,
No. of hours: 10
Number: 4 Best Practices, and Case Studies
Content Summary:
Legal Aspects: Posting and Content Regulations
Best Practices: Content Moderation, User Authentication
Security Awareness and Education
Case Studies: Facebook, Twitter, Instagram, YouTube, LinkedIn, and others

Learning Experiences
▪ Interactive Lectures and Discussions: Use Lecture PPTs and video lectures to
introduce topics, followed by class discussions on current social media trends.

314 | P a g e
▪ Hands-on Data Analysis: Conduct practical sessions where students collect and
analyze social media data using tools like BoW and TF-IDF.

▪ Group Social Media Campaign Projects: Students design, implement, and


evaluate a mock social media campaign in teams, applying marketing
strategies and content management principles.

▪ Case Study Analysis: Review and present case studies of social media
platforms to understand real-world applications and issues.

▪ Privacy and Security Workshops: Use interactive tools and workshops to


explore privacy settings, privacy metrics, and security measures.

▪ Ethical Dilemma Debates: Engage in debates on ethical issues and privacy


concerns related to social media usage.

▪ Practical Management Tools Sessions: Train students on social media


management tools and practices for content moderation and promotion.

▪ Continuous Assessment and Feedback: Implement regular quizzes,


assignments, and peer reviews, with ongoing feedback to track progress.

▪ Moodle LMS and ICT Integration: Utilize Moodle LMS for course materials,
assignments, and discussions, and encourage use of ICT tools for learning.
References
1. Mastering Social Media Mining, Bonzanini Marco, Packt Publishing Limited
2. Mining the Social Web, Mikhail Klassen and Matthew A. Russell, O’Reilly
Media, Inc
3. Social media mining: an introduction, Zafarani, Reza, Mohammad Ali Abbasi,
and Huan Liu, Cambridge University Press

315 | P a g e
4. Social Media Security: Leveraging Social Networking While Mitigating Risk,
Michael Cross, Syngress
5. Social Media and the Law: A Guidebook for Communication Students and
Professionals, Daxton R. Stewart, Taylor & Francis Ltd
6. Security in the Digital Age: Social Media Security Threats and Vulnerabilities
by Henry A. Oliver, Create Space Independent Publishing Platform.

Additional Readings:
Online Learning Resources for Social Media Security
R 1. Coursera - Social Media Marketing Specialization
• Provider: Northwestern University
• Description: This specialization covers the major social media
platforms, marketing strategies, and data analysis tools.
• Link: Coursera Social Media Marketing Specialization
R 2. edX - Cybersecurity Fundamentals
• Provider: Rochester Institute of Technology
• Description: This course offers foundational knowledge in
cybersecurity, including threats, vulnerabilities, and defense strategies.
• Link: edX Cybersecurity Fundamentals
R 3. Udemy - The Complete Cyber Security Course: Network Security!
• Instructor: Nathan House
• Description: This comprehensive course covers network security,
including how to secure your network, protect your devices, and more.
• Link: Udemy Cyber Security Course

316 | P a g e
SOCIAL MEDIA SECURITY LAB
B. Tech (Computer Science and Engineering with
Program Name:
specialization in Data Science)
Course Name: Course Code L-T-P Credits
Social Media ENSP357 0-0-2 1
Security Lab

Type of Course: Minor (DEPARTMENT ELECTIVE-I)

Pre-requisite(s), if any:

Course Outcomes (CO)

COs Statements

Analyze different social media platforms, their features, and the ethical
CO1
and privacy considerations in crowdsourcing and data handling.

Implement data collection, text analysis, and network analysis


CO2 techniques on social media datasets, demonstrating proficiency in using
APIs and various models.

Develop strategies and plans for using social media in various contexts
CO3 such as employment screening, customer engagement, and small business
promotion.

Evaluate privacy settings, metrics, and security incidents on social media


CO4 platforms, applying best practices for user authentication, access control,
and content moderation.

317 | P a g e
Lab Experiments
Ex. Mapped
Experiment Title
No CO/COs
P1 Project Title: Comprehensive Analysis of Social Media CO1
Platforms
Problem Statement: Conduct a comprehensive analysis of
different social media platforms, their features, and the data they
generate. The project will involve collecting and analyzing data from
social media, performing content analysis, and understanding
network properties.
P2 Project Title: Effective Social Media Management and CO2
Marketing Strategy
Problem Statement: Develop an effective social media
management and marketing strategy for a small business. The
project will involve analyzing customer engagement, creating
marketing strategies, and addressing ethical considerations in
social media use.
P3 Project Title: Privacy Protection in Social Media CO3
Problem Statement: Develop strategies and tools to protect user
privacy on social media platforms. The project will involve analyzing
privacy settings, simulating privacy attacks, and evaluating privacy
metrics.
P4 Project Title: Enhancing Security and Compliance on Social CO4
Media Platforms
Problem Statement: Develop a comprehensive approach to
enhance security and ensure compliance with laws on social media
platforms. The project will involve researching laws, developing
best practices, and analyzing case studies of security incidents.

318 | P a g e
(DEPARTMENT ELECTIVE-III)
MOBILE APPLICATION
DEVELOPMENT USING IOS
B. Tech (Computer Science and Engineering with
Program Name:
specialization in Data Science)
Course Name: Credit
Course Code L-T-P
Mobile Application s
Development using ENSP409 4-0-0 4
iOS

Type of Course: Minor (Department Elective IV)

Pre-requisite(s), if any: Basics of Android

Course Perspective. The objective of the course is to provide skills to develop


applications for OS X and iOS. It includes an introduction to the development
framework Xcode. Objective-C is used as a programming language to develop
applications. Objective-C is the superset of the C programming language and
provides object-oriented capabilities and a dynamic runtime. Objective-C inherits the
syntax, primitive types, and flow control statements of C and adds syntax for defining
classes and methods. The course is divided into 4 modules:
1. Introduction to IDE and SDK of iOS App Development
2. Swift Programming
3. Encapsulating Data
4. Developing iOS Applications

The Course Outcomes (COs). On completion of the course the participants will
be:

319 | P a g e
COs Statements

Understand the fundamental concepts of variables, constants, and basic


CO 1
data types in SWIFT.

Analyze the use of control flow statements such as for, if, and switch in
CO 2
various programming scenarios.

Apply object-oriented concepts in SWIFT, including the use of classes,


CO 3
structures, and protocols.

Create functions, closures, and extensions to enhance code modularity


CO 4
and reuse.

Evaluate error handling techniques and type checking mechanisms to


CO5
develop robust SWIFT applications

CO = Course outcomes. A student is expected to have learnt concepts and


demonstrated/developed abilities or skills related to strategic management at the
end of the course.

Course Outline:
Title: Introduction to SWIFT No. of hours:
Unit Number: 1
Language 10
Content Summary:
Variables & Constants, Introduction to functions (methods), Arrays, Dictionaries,
Data, Date and other basic data types, Enums, structures, closuresFor, If, switch
statement, Object oriented concepts with SWIFT, Type check, AnyObject, Any
Protocols, Extensions, Error handling, Working with classes
No. of hours:
Unit Number: 2 Title: Working with Xcode
8

320 | P a g e
Content Summary:
Introduction to XCODE, COCOA touch framework, iOS application architecture,
Application lifecycle
Title: Introduction to view controllers No. of hours:
Unit Number: 3
and Views 12
Content Summary: View Controllers, view, view lifecycle, Basic Controls –
Label, Buttons, Text field, image View, Table view with default cells and
customized cells, Collection view with default cells and customized cells, Picker
view, Date picker, scroll view, navigation and Tab bar controller, Understanding
Interface builder, XIB files, Creating outlets and Actions, Handling touch and
gesture events, Segment and Page control, switch view, UIAlertView
No. of hours:
Unit Number: 4 Title: Integrating with Database
10
Content Summary:
Introduction to data storage methods in iOS, Using Core Data, SQLite database,
User Defaults, Property List

Learning Experiences:
5. Lecture PPTs will introduce core iOS development concepts, covering Swift
programming and iOS app architecture in detail.
6. Problem-based theory assignments will engage students in applying Swift
programming concepts, such as control flow and object-oriented principles,
to real-world scenarios.
7. Project-based lab assignments will offer hands-on experience in developing
iOS applications using Xcode, view controllers, and integrating with
databases.
8. Question banks will reinforce key concepts, helping students prepare for
exams and master the development of iOS applications.
9. Model question papers will simulate exam scenarios, enabling students to
practice and prepare effectively for assessments on iOS app development.

321 | P a g e
10.Continuous assessment will provide regular feedback, ensuring students stay
on track and improve their skills in Swift programming and iOS app
development.
11.Support & Feedback will be available through the course instructor,
encouraging collaboration and peer review, particularly in building robust and
user-friendly iOS applications.

References
1. iOS 14 Programming for Beginners: Kickstart your iOS app development
journey with the Swift programming language and Xcode 12, 6th Edition,
Ahmad Sahar and Craig Clayton
2. Mastering iOS 14 Programming: Build professional-grade iOS applications
with Swift 5 and Xcode 12

Additional Readings:
Online Learning Resources for Mobile Application Development Using iOS
• Apple Developer Documentation
o Description: Comprehensive documentation and tutorials for iOS app
development using Swift and Xcode.
o Link: Apple Developer Documentation
• Ray Wenderlich: iOS and Swift Tutorials
o Description: A collection of high-quality tutorials and courses on iOS
app development, covering Swift, Xcode, and various iOS frameworks.
o Link: Ray Wenderlich iOS Tutorials
• GitHub: iOS Development Resources
o Description: A curated list of open-source projects, libraries, and
resources for learning and improving iOS development skills.
o Link: GitHub - iOS Development Resources

322 | P a g e
MOBILE APPLICATION
DEVELOPMENT USING IOS LAB
B. Tech (Computer Science and
Program Name: Engineering with specialization in Data
Science)
Course Name: Course Code L-T-P Credits
Mobile Application ENSP459 0-0-2 1
Development using iOS Lab

Type of Course: Minor (Department Elective IV)

Pre-requisite(s), if any: Basics of Android

Lab Experiments
Defined Course Outcomes

COs

Understand and apply fundamental concepts of iOS development


CO 1 using Xcode and the Cocoa Touch framework to build robust and user-
friendly applications.
Develop interactive and dynamic user interfaces in iOS applications
CO 2
using view controllers, views, and gesture recognizers.
Create and manage user interfaces and view controllers in iOS
CO 3 applications using Xcode, demonstrating proficiency in Interface
Builder and UIKit components.
Develop interactive and dynamic user interfaces in iOS applications
CO 4
using view controllers, views, and gesture recognizers.

323 | P a g e
S.N Experiment COs
1 Set up the iOS development environment by installing Xcode. CO1
Create a simple "Hello, World!" iOS application to familiarize with
the Xcode IDE and Swift programming basics.
2 Develop a basic iOS application that demonstrates the use of Swift CO1
syntax, variables, data types, and control flow. Create a simple
calculator app to perform basic arithmetic operations.
3 Use Xcode and Interface Builder to design a user interface for an CO1
iOS app. Create a simple user interface with labels, buttons, and
text fields, and handle user interactions.
4 Implement a simple iOS app to demonstrate the app lifecycle and CO1
navigation between view controllers. Create a multi-screen app
that navigates between different views using navigation
controllers.
5 Design a responsive user interface using Auto Layout and the CO2
constraint system. Create an iOS app with a login screen that
adjusts to different screen sizes and orientations.
6 Implement navigation between different views using storyboards CO2
and segues. Create a multi-screen app with a main menu and
detailed views for each menu item.
7 Implement gesture recognition and touch event handling in an iOS CO2
app. Create an app that responds to tap, swipe, and pinch
gestures to perform different actions.
8 Implement data persistence using Core Data. Create an iOS app CO3
that allows users to add, edit, and delete notes, and save them to
a local database.
9 Use User Defaults and the file system to store and retrieve user CO3
preferences and data. Create an app that saves user settings and
displays them when the app is reopened.

324 | P a g e
10 Implement offline data storage and synchronization. Create an CO3
iOS app that allows users to add data while offline and syncs with
a remote server when the device is back online.
11 Implement advanced UI components and animations in an iOS CO4
app. Create a visually appealing app with custom views,
animations, and transitions between screens.
12 Access and use iOS sensors and hardware features. Create an app CO4
that uses the camera to take photos, and the GPS to display the
user's current location on a map.
13 Debug and test an iOS app using Xcode's debugging tools. CO4
Implement unit tests and UI tests to ensure the app functions
correctly under different scenarios.

325 | P a g e
DEVOPS & AUTOMATION
B. Tech (Computer Science and
Program Name: Engineering with specialization in Data
Science)
Course Name: Course Code L-T-P Credits
DevOps & Automation ENSP411 4-0-0 4
Type of Course: Minor (Department Elective IV)
Pre-requisite(s), if any: Nil

Course Perspective. Throughout the subject, students will engage in hands-on


exercises and projects to gain practical experience with various DevOps tools and
practices. By the end of the course, students will be well-equipped to embrace the
DevOps culture and apply automation techniques to enhance software development,
delivery, and operations processes.

The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

Understand the principles and benefits of DevOps, and its role in


CO 1 enhancing collaboration and efficiency between development and
operations teams.

Acquire hands-on experience with popular DevOps tools such as Git,


CO 2 Jenkins, Docker, Kubernetes, and Ansible for implementing continuous
integration, continuous delivery, and automated deployment processes.

Demonstrate proficiency in containerization and orchestration techniques


CO 3 using Docker and Kubernetes for efficient and scalable application
deployment and management.

326 | P a g e
Implement configuration management and Infrastructure as Code (IaC)
CO 4 using Ansible and Terraform to automate the provisioning and
management of infrastructure resources.

Develop skills in monitoring, logging, and security practices in the context


CO 5 of DevOps, ensuring application performance, resilience, and adherence to
security best practices.

CO = Course outcomes. A student is expected to have learnt concepts and


demonstrated/developed abilities or skills related to strategic management at the
end of the course.

Course Outline:
Unit Number: 1 Title: Introduction to DevOps No. of
hours: 12
Content Summary:

DevOps Principles and Culture: Understand the core principles of DevOps and its
cultural impact. Collaboration, automation, continuous integration, continuous
delivery, and continuous deployment.
DevOps Toolchain: Overview of tools and technologies used in DevOps practices.
Introduction to popular DevOps tools like Git, Jenkins, Docker, Kubernetes, and
Ansible.
Version Control with Git: Branching, merging, and collaborative development using
Git. Continuous Integration (CI): Setting up CI pipelines with Jenkins for
automated building and testing.
Continuous Delivery and Deployment: Implementing CD pipelines for deploying.

Unit Number: 2 Title: Version Control and CI/CD No. of


hours: 8

327 | P a g e
Content Summary:

Version Control with Git: Version control concepts, Git workflows, and collaboration
strategies.
Continuous Integration with Jenkins: Setting up Jenkins pipelines, automated
testing, and deployment.
Maven Integration: Integrate Maven for dependency management and building
projects.

Unit Number: 3 Title: Containerization and No. of


Orchestration hours: 8

Content Summary:

Introduction to Docker: Docker concepts, container management, and Docker file


creation.
Container Orchestration with Kubernetes: Kubernetes architecture, deployment,
scaling, and networking.
Docker Compose: Managing multi-container applications with Docker Compose.
Unit Number: 4 Title: Configuration Management and No. of
Monitoring hours: 12
Content Summary:

Configuration Management with Ansible: Ansible playbooks, roles, and


infrastructure automation.
Infrastructure as Code (IaC): Terraform for provisioning and managing
infrastructure.
Monitoring and Logging: Monitoring tools, log management, and application
performance monitoring in DevOps.
Security in DevOps: Implementing security best practices in CI/CD pipelines and

328 | P a g e
containerized environments.

Learning Experiences:
▪ Lecture PPTs will introduce core DevOps principles, tools, and practices,
establishing a strong theoretical foundation.
▪ Problem-based theory assignments will engage students in applying DevOps
concepts such as CI/CD pipelines and version control to practical scenarios.
▪ Project-based lab assignments will offer hands-on experience with DevOps
tools like Git, Jenkins, Docker, and Kubernetes, enhancing practical skills in
automation and deployment.
▪ Question banks will reinforce key concepts, helping students prepare
thoroughly for exams on DevOps practices and tools.
▪ Model question papers will simulate exam scenarios, allowing students to
practice and prepare effectively for assessments in DevOps and automation.
▪ Continuous assessment will provide ongoing feedback, ensuring students can
track their progress and improve their proficiency in DevOps tools and
techniques.
▪ Support & Feedback will be available through the course instructor,
encouraging collaboration and peer review, particularly in implementing and
optimizing DevOps pipelines and automation processes.

References
• Continuous Delivery: Reliable Software Releases through Build, Test, and
Deployment Automation, Authors: Jez Humble and David Farley, Publisher:
Pearson Education, Inc., Year: 2011
• The Kubernetes Book, Author: Nigel Poulton, Publisher: Independently
published, Year: 2018
• Building Microservices: Designing Fine-Grained Systems, Author: Sam
Newman, Publisher: O'Reilly Media, Inc., Year: 2015

329 | P a g e
• Microservices Patterns: With examples in Java, Author: Eberhard Wolff,
Publisher: Manning Publications, Year: 2018
• Terraform: Up & Running: Writing Infrastructure as Code, Author: Yevgeniy
Brikman, Publisher: O'Reilly Media, Inc., Year: 2017

Additional Readings:
Online Learning Resources for DevOps & Automation
I) Kubernetes Academy by VMware
a. Description: Free courses provided by VMware on Kubernetes,
covering everything from basic concepts to advanced orchestration
techniques.
b. Link: Kubernetes Academy by VMware
II) HashiCorp Learn: Terraform
a. Description: HashiCorp's official resource for learning Terraform,
providing tutorials and hands-on labs for infrastructure as code.
b. Link: HashiCorp Learn - Terraform
III) Docker: Docker for Developers
a. Description: Docker's official training resources for developers,
covering containerization, Docker Compose, and more.
b. Link: Docker - Docker for Developers

330 | P a g e
DEVOPS & AUTOMATION LAB
B. Tech (Computer Science and Engineering
Program Name:
with specialization in Data Science)
Course Name: Course Code L-T-P Credits
DevOps & Automation Lab ENSP461 0-0-2 1
Type of Course: Minor (Department Elective IV)
Pre-requisite(s), if any:

Lab Experiments
Defined Course Outcomes

COs Course Outcomes

Implement collaborative development and continuous integration using


CO 1 Git and Jenkins, demonstrating proficiency in version control, automated
testing, and deployment processes.
Develop and deploy microservices applications using Docker for
CO 2 containerization and Kubernetes for orchestration, managing multi-
container applications efficiently.
Manage automated infrastructure provisioning and configuration using
CO 3 Ansible and Terraform, demonstrating expertise in infrastructure as code
and configuration management.
CO 4 Implement continuous monitoring, logging, and security best practices
in a DevOps environment, ensuring application performance, system
health, and data integrity.

331 | P a g e
S.N Experiment Mapped
CO(s)
1 Set up a Git repository and practice branching, merging, and CO1
collaborative development. Create a small project and manage
code versions using Git.
2 Install and configure Jenkins for continuous integration. Create a CO1
simple CI pipeline that automatically builds and tests a project
whenever code changes are committed to the repository.
3 Implement a continuous delivery pipeline using Jenkins. Deploy CO1
a sample application to a staging environment automatically after
successful builds and tests.
4 Implement different Git workflows (e.g., GitFlow, Feature Branch CO2
Workflow) for a collaborative project. Manage branches, merges,
and resolve conflicts.
5 Set up a Jenkins pipeline for continuous integration. Configure CO2
automated testing and deployment for a sample project.
Integrate with a version control system like Git.
6 nstall Docker and create Dockerfiles for a sample application. CO3
Build, run, and manage containers using Docker commands.
7 Use Docker Compose to manage multi-container applications. CO3
Create a Docker Compose file to run a web application with a
database and other services.
8 Use Terraform to provision and manage cloud infrastructure. CO4
Create Terraform scripts to deploy a web application on a cloud
provider (e.g., AWS, Azure).
9 Set up monitoring and logging for a sample application. Use tools CO4
like Prometheus, Grafana, and ELK Stack (Elasticsearch,
Logstash, Kibana) to monitor and analyze application
performance and logs.

332 | P a g e
.NET FRAMEWORK
B. Tech (Computer Science and Engineering with
Program Name:
specialization in Data Science)
Course Name: Course Code L-T-P Credits
.NET Framework ENSP413 4-0-0 4
Type of Course: Minor (Department Elective IV)
Pre-requisite(s), if any:

Course Perspective. The ".NET Framework" syllabus covers introduction and


components of .NET, programming languages, Visual Studio, OOP, exception
handling, memory management, Windows Forms/WPF, ASP.NET, web services, .NET
Core, Entity Framework, and WCF. Emphasis on practical application and
development skills for building robust and secure applications.

The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

Understand .NET Framework's architecture, CLR, and CTS for cross-


CO 1
language integration and platform independence.

Apply OOP concepts in .NET for designing robust software solutions.


CO 2

Utilize Visual Studio debugging for diagnosing and fixing errors in .NET
CO 3
applications.

Demonstrate proficiency in memory management and garbage collection


CO 4
in .NET.

Design web applications using ASP.NET, incorporating best practices.


CO 5

333 | P a g e
CO = Course outcomes. A student is expected to have learnt concepts and
demonstrated/developed abilities or skills related to strategic management at the
end of the course.

Course Outline:
Unit Number:1 Title: .NETFramework
No. of hours: 8

Content Summary:
NET Framework - Architecture, Common Language Runtime, Common Type
System, Namespaces, Assemblies, Memory Management, Process
Management, Class Libraries
Title:.NET Framework
Unit Number:2 Fundamentals No. of hours: 8

Content Summary:
Object-Oriented Programming (OOP) in .NET, Classes, objects, and inheritance,
Exception Handling and Debugging, Debugging techniques and tools in Visual
Studio, Logging and error reporting in .NET applications, Memory Management
and Garbage Collection, Automatic memory management in .NET, Garbage
collection, Finalizers and the Dispose pattern
Unit Number:3 Title: Building Applications with No. of hours:
.NET Framework 12
Content Summary:
.NET - Declaration, Expression, Control Structures, Function, String, Array,
Encapsulation, Class, Property, Indexer, Delegate, Inheritance, Interface,
Polymorphism, Exception Handling, Modules, Graphics, File handling and Data
Access. .NET – Form- Event–Form Controls – Containers – Menus - Data controls -
Printing – Reporting – Dialogs – Components - Single and Multiple Document
Interfaces.

334 | P a g e
Unit Number:4 Title: ASP.NETFramework
No. of hours:
12
Content Summary:
ASP.NET – Web Pages, Web Forms, Web Site Design, Data Controls, Validation
Controls, HTML, Navigation Controls, Login Controls, Reports - Master Pages – Web
Service Architecture - Basic Web Services – Web Reference – Standards

Learning Experiences:
▪ Lecture PPTs will introduce the architecture and core components of the .NET
Framework, providing a solid theoretical foundation.
▪ Problem-based theory assignments will engage students in applying OOP
principles and .NET debugging techniques to solve real-world programming
challenges.
▪ Project-based lab assignments will offer hands-on experience in developing
robust applications using .NET, focusing on memory management, Windows
Forms, and ASP.NET.
▪ Question banks will reinforce essential .NET concepts, ensuring students are
well-prepared for exams and can effectively apply their knowledge.
▪ Model question papers will simulate exam scenarios, helping students practice
and prepare for assessments on .NET application development.
▪ Continuous assessment will provide regular feedback, allowing students to track
their progress and refine their skills in .NET programming and web development.
▪ Support & Feedback will be available through the course instructor, encouraging
collaboration and peer review, particularly in building and optimizing .NET
applications using best practices.

335 | P a g e
Textbooks
1. Pro C# 8 with .NET Core: Foundational Principles and Practices in
Programming by Andrew Troelsen and Philip Japikse, Apress, 9th Edition,
2020
2. Pro ASP.NET Core 3 by Adam Freeman, Apress
3. ASP.NET Core in Action by Andrew Lock

Additional Readings:
Online Learning Resources:
I) Online Tutorials and Documentation: Direct students to the official
Microsoft documentation for .NET Framework, which provides
comprehensive guides and resources. Microsoft .NET
Documentation
II) Hands-on Coding Exercises: Assign coding exercises from platforms like
LeetCode or HackerRank that focus on implementing concepts of .NET
Framework. LeetCode HackerRank

336 | P a g e
.NET FRAMEWORK LAB
B. Tech (Computer Science and Engineering with
Program Name:
specialization in Data Science)
Course Name: Course Code L-T-P Credits
.NET Framework Lab ENSP463 0-0-2 1
Type of Course: Minor (Department Elective IV)

Pre-requisite(s), if any: Nil

Defined Course Outcomes

COs Statements

Understand and apply object-oriented design principles, exception


CO 1 handling, memory management, and debugging techniques to develop
robust .NET applications.
Develop graphical user interfaces and handle events in .NET applications
CO 2
to create interactive and user-friendly software solutions.
Implement web development techniques in ASP.NET, including web
CO 3 forms, user authentication, master pages, and web services to build
secure and dynamic web applications.
Analyze and utilize data handling, reporting, and visualization techniques
CO 4 to create comprehensive and functional software systems for various
domains.

337 | P a g e
Lab Experiments

S.N Experiment Mapped


CO/COs
1 Explore the architecture of the .NET Framework. Create a simple
console application to understand the basic structure and CO1
components of a .NET project.
2 Demonstrate the functionality of the Common Language
Runtime (CLR). Create a .NET application that uses various
CO1
data types and namespaces to show how the CLR manages
execution.
3 Implement a .NET application that showcases the Common Type
System (CTS). Define and use various data types, and CO1
demonstrate type conversion and interoperability.
4 Create and manage assemblies in a .NET application. Demonstrate
how to build, reference, and use assemblies in a multi-project CO1
solution.
5 Implement a simple object-oriented application in .NET. Define
classes, create objects, and demonstrate inheritance and CO2
polymorphism.
6 Implement a .NET application that logs errors and handles
exceptions gracefully. Use a logging framework (e.g., NLog, CO2
log4net) to record application events and errors.
7 Build a .NET application demonstrating advanced OOP concepts
such as encapsulation, properties, indexers, delegates, interfaces, CO3
and polymorphism.
8 Create a .NET application that handles graphics and file I/O.
Implement functionality to draw shapes, handle images, and CO3
perform file read/write operations.

338 | P a g e
9 Implement a .NET application with a rich user interface. Use forms,
event handling, form controls, containers, menus, data controls,
CO3
printing, and reporting functionalities to create a feature-rich
application.
10 Create a basic ASP.NET web application. Design web pages and
web forms to understand the structure and components of an CO4
ASP.NET project.
11 Develop an ASP.NET application with user authentication. Use login
controls to implement user authentication and authorization, and CO4
create a simple reporting feature to display user data.
12 Create and consume a basic web service in ASP.NET. Implement a
web service that provides data to a client application, and
CO4
demonstrate how to use web references to integrate the web
service with an ASP.NET project.

339 | P a g e
NEW AGE PROGRAMMING
LANGUAGES
B. Tech (Computer Science and Engineering
Program Name:
with specialization in Data Science)
Course Name: Course Code L-T-P Credits
New-Age programming ENSP415 4-0-0 4
languages

Type of Course: Minor (Department Elective IV)

Pre-requisite(s), if any: Nil

Course Perspective. New-Age programming languages (GO, F#, Clojure, Kotlin)


provides an introduction to the concepts and applications of modern programming
languages. It explore the features and benefits of GO, F#, Clojure, and Kotlin, and
develop practical skills in programming using these languages. The course will cover
language syntax, data types, control structures, functional programming concepts,
concurrency, and integration with other technologies.

The Course Outcomes (COs). On completion of the course the participants will
be:

COs Statements

Understand principles and paradigms of modern programming


CO 1
languages.

Develop proficiency in syntax, data structures, and control flow of each


CO 2
language.

340 | P a g e
CO 3 Explore unique features and strengths of each language.

Apply development tools to improve code quality and productivity.


CO 4

Design and implement projects integrating multiple programming


CO 5
languages.

CO = Course outcomes. A student is expected to have learnt concepts and


demonstrated/developed abilities or skills related to strategic management at the
end of the course.

Course Outline:
Unit Title: GO programming
No. of hours: 10
Number: 1 Language
Content Summary:
Overview and Comparison: Overview of GO, F#, Clojure, and Kotlin, Comparison
with traditional programming languages, Installation and setup of development
environment,
GO Programming Basics: Introduction to GO syntax and data types, Control
structures in GO, Functions and packages, Arrays, slices, and maps, Structs and
custom data types,Pointers and memory management
Unit Title: F# Programming
No. of hours: 10
Number: 2 Language
Content Summary:
Introduction to F# syntax and functional programming concepts, Data Types,
Variables, Operators, Decision Making, Loops, Functions, Strings, Options,
Immutable data types and pattern matching, Higher-order functions and currying,
Asynchronous and parallel programming in F#, Object-Oriented Programming with

341 | P a g e
F#, Database access with F#, Querying and manipulating data using F#, Integration
with relational and NoSQL databases

Unit Title: Introduction to Clojure


No. of hours: 10
Number: 3 Programming
Content Summary:
Introduction to Clojure: Overview of Clojure and its features, Setting up the
development environment,
Basic Syntax and Functional Programming, Basic syntax and data structures,
Functional programming concepts, Immutable data and pure functions, Higher-order
functions and recursion, Collections and sequence operations, Restructuring and
pattern matching
Error Handling and Testing: Exception handling and error management in Clojure,
Testing strategies and frameworks in Clojure,
Data Manipulation and Transformation: Data manipulation with Clojure's
sequence functions, Data transformation with transducers, Data-driven development
with data literals and data readers
Unit Title: Introduction to Kotlin
No. of hours: 10
Number: 4 Programming
Content Summary:
Overview of Kotlin and its advantages, Setting up the development environment,
Basic syntax and data types in Kotlin, Conditional statements and loops, Function
declarations and parameters, Lambda expressions and higher-order functions,
Object-Oriented Programming in Kotlin: Classes, objects, and inheritance,
Properties and access modifiers, Interfaces and abstract classes, Understanding
nullable and non-nullable types, Safe calls and the Elvis operator, Type inference
and smart casting,
Collections and Functional Programming: Working with lists, sets, and maps in
Kotlin, Collection operations and transformations, Introduction to functional
programming concepts in Kotlin, Creating extension functions in Kotlin, Using DSLs
for domain-specific problems, Builder pattern and DSL implementation.
342 | P a g e
Learning Experiences:
▪ Lecture PPTs will introduce the core principles and syntax of modern
programming languages like GO, F#, Clojure, and Kotlin.
▪ Problem-based theory assignments will engage students in applying unique
language features and paradigms to solve programming challenges.
▪ Project-based lab assignments will offer hands-on experience in developing
applications using GO, F#, Clojure, and Kotlin, focusing on functional
programming and concurrency.
▪ Question banks will reinforce key concepts across all languages, helping
students prepare effectively for exams.
▪ Model question papers will simulate exam scenarios, allowing students to
practice and anticipate the types of questions related to new-age
programming languages.
▪ Continuous assessment will provide regular feedback on student progress,
ensuring they master the syntax, data structures, and unique features of
each language.
▪ Support & Feedback will be available through the course instructor,
encouraging collaboration and peer review, particularly in integrating multiple
programming languages into cohesive projects.

Text Books:
1. The Go Programming Language, Alan A. A. Donovan and Brian W. Kernighan,
Addison-Wesley Professional.
2. An Introduction to Programming in Go, Caleb Doxsey, CreateSpace
Independent Publishing.

References
3. Real-World Functional Programming: With Examples in F# and C#, Tomas
Petricek and Jon Skeet, Manning.
343 | P a g e
4. Programming F# 3.0: A Comprehensive Guide for Writing Simple Code to
Solve Complex Problems, Chris Smith, O'Reilly Media.
5. Getting Clojure: Build Your Functional Skills One Idea at a Time, Russ Olsen,
O′Reilly.
6. The Joy of Clojure, Michael Fogus and Chris Houser, Manning Publication.
7. Atomic Kotlin, Bruce Eckel and Svetlana Isakova, Mindview LLC.
8. Kotlin in Action, Dmitry Jemerov and Svetlana Isakova, Manning Publication.

Additional Readings:
Online Learning Resources for New-Age Programming Languages
a) Go (Golang)
1. Coursera: Programming with Google Go
1. Description: An introductory course to Go programming,
covering language syntax, data structures, and more.
2. Link: Coursera - Programming with Google Go
2. Go by Example
1. Description: A hands-on introduction to Go using annotated
example programs.
2. Link: Go by Example
b) F#
1. Microsoft Learn: Introduction to F#
1. Description: A series of modules introducing the F# language,
its syntax, and functional programming concepts.
2. Link: Microsoft Learn - Introduction to F#

c) Clojure
1. ClojureBridge
1. Description: Free Clojure workshops for beginners, including
resources and exercises.
2. Link: ClojureBridge
2. Learn Clojure: Clojure for the Brave and True
344 | P a g e
1. Description: A beginner-friendly book that teaches Clojure
through real-world projects and examples.
2. Link: Clojure for the Brave and True
d) Kotlin
1. Kotlin Lang: Kotlin Documentation
1. Description: Official Kotlin documentation and tutorials by
JetBrains.
2. Link: Kotlin Documentation
2. Udacity: Kotlin for Android Developers
1. Description: A course by Udacity focusing on Kotlin for Android
development.
2. Link: Udacity - Kotlin for Android Developers

345 | P a g e
NEW AGE PROGRAMMING
LANGUAGES LAB
B. Tech (Computer Science and
Program Name: Engineering with specialization in Data
Science)
Course Name: Course Code L-T-P Credits
New Age Programming ENSP465 0-0-2 1
languages Lab

Type of Course: Minor (Department Elective IV)

Pre-requisite(s), if any: Nil

Course Outcomes (CO)

COs Statements

Understand the fundamental principles and paradigms of modern


CO1
programming languages.

Develop proficiency in using the syntax, data structures, and control flow
CO2
constructs of each language.

Explore the unique features and strengths of each language, such as


Go's focus on concurrency, F#'s functional programming capabilities,
CO3
Clojure's emphasis on immutability and simplicity, and Kotlin's
interoperability with existing Java code.

CO4 Apply the languages' respective development tools and best practices.

Design and implement projects that utilize the strengths of each


CO5
language to tackle complex problems or tasks.

346 | P a g e
Lab Experiments
S.N Experiment Title CO
1 Develop a RESTful API for a simple blog application in Go. The API should CO1
allow users to create, read, update, and delete blog posts. Use Go's built-
in net/http package and struct types for handling blog post data
2 Create a command-line tool in Go that fetches and displays current CO1
weather information for a specified city. Use a public weather API and
Go's JSON parsing capabilities to implement this tool.
3 Set up the F# development environment. Create a simple F# program CO1
to demonstrate basic syntax, data types, and variables.
4 Develop a functional calculator application in F#. The calculator should CO2
support basic arithmetic operations, as well as more advanced functions
like trigonometry and logarithms. Use pattern matching and immutable
data structures to handle calculations.
5 Create a small web application in F# using Suave (a lightweight web CO2
server library). The application should allow users to register, log in, and
create simple posts. Implement basic session management and data
storage.
6 Build a financial portfolio tracker in F#. The application should allow users CO2
to input and track their investments, calculate current value, and
generate reports. Use F#'s asynchronous programming capabilities to
fetch real-time stock prices from a financial API.
7 Develop a to-do list application in Clojure. The application should allow CO3
users to add, remove, and mark tasks as complete. Use Clojure's
sequence operations and immutable data structures to manage tasks.

347 | P a g e
8 Create a simple web scraper in Clojure. The scraper should fetch data CO3
from a specified website, parse the HTML content, and extract specific
information. Use Clojure's libraries for HTTP requests and HTML parsing.
9 Develop a Kotlin-based Android application for tracking fitness activities. CO4
The app should allow users to log their workouts, view statistics, and set
goals. Use Kotlin's object-oriented features and Android SDK for
development.
10 Create a Kotlin DSL (Domain-Specific Language) for generating HTML CO4
pages. The DSL should allow users to define HTML structures using Kotlin
syntax and generate the corresponding HTML code.

348 | P a g e
Summer Internship-III
B. Tech (Computer Science and Engineering
Program Name:
with specialization in Data Science)
Course Name: Summer Course Code L-T-P Credits
Internship-III ENSI451 --- 2
Type of Course: INT

Pre-requisite(s), if any: NA

Course Outcomes (CO)


CO1 Apply theoretical knowledge from core subjects to real-world problems
in an industry or academic setting.
CO2 Demonstrate the acquisition of new technical skills relevant to the field
of computer science and engineering during the internship.
CO3 Develop a comprehensive case study, project, or research paper that
reflects the practical application of internship experiences.
CO4 Present internship outcomes effectively, showcasing professional
growth, technical competencies, and communication skills.

Duration:
The internship will last for six weeks. It will take place after the completion of the 6th
semester and before the commencement of the 7th semester.
Internship Options:
Students can choose from the following options:
• Industry Internship (Offline) or Internship in Renowned Academic
Institutions (Offline):
o Students must produce a joining letter at the start and a relieving letter
upon completion.

349 | P a g e
Report Submission and Evaluation:
1. Report Preparation:
o Students must prepare a detailed report documenting their internship
experience and submit it to the department. A copy of the report will be
kept for departmental records.
2. Case Study/Project/Research Paper:
o Each student must complete one of the following as part of their
internship outcome:
1. A case study
2. A project
3. A research paper suitable for publication
3. Presentation:
o Students are required to present their learning outcomes and results
from their summer internship as part of the evaluation process.

Evaluation Criteria for Summer Internship (Out of 100 Marks):

valuation Criteria Maximum Marks

Relevance to Learning Outcomes 30 Marks

- Case Study/Project/Research Paper Relevance 15 Marks

- Application of Theoretical Knowledge 15 Marks

Skill Acquisition 40 Marks

- New Technical Skills Acquired 20 Marks

- Professional and Soft Skills Development 20 Marks

Report Quality 15 Marks

- Structure and Organization 8 Marks

- Clarity and Comprehensiveness 7 Marks

Presentation 15 Marks

350 | P a g e
valuation Criteria Maximum Marks

- Content Delivery 8 Marks

- Visual Aids and Communication Skills 7 Marks

| Total | 100 Marks |

Detailed View:
1. Relevance to Learning Outcomes (30 Marks)
o Case Study/Project/Research Paper Relevance (15 Marks):
1. Directly relates to core subjects: 15 marks
2. Partially relates to core subjects: 10 marks
3. Minimally relates to core subjects: 5 marks
4. Not relevant: 0 marks
o Application of Theoretical Knowledge (15 Marks):
1. Extensive application of theoretical knowledge: 15 marks
2. Moderate application of theoretical knowledge: 10 marks
3. Minimal application of theoretical knowledge: 5 marks
4. No application of theoretical knowledge: 0 marks
2. Skill Acquisition (40 Marks)
o New Technical Skills Acquired (20 Marks):
1. Highly relevant and advanced technical skills: 20 marks
2. Moderately relevant technical skills: 15 marks
3. Basic technical skills: 10 marks
4. No new skills acquired: 0 marks
o Professional and Soft Skills Development (20 Marks):
1. Significant improvement in professional and soft skills: 20 marks
2. Moderate improvement in professional and soft skills: 15 marks
3. Basic improvement in professional and soft skills: 10 marks
4. No improvement: 0 marks
3. Report Quality (15 Marks)
o Structure and Organization (8 Marks):

351 | P a g e
1. Well-structured and organized report: 8 marks
2. Moderately structured report: 6 marks
3. Poorly structured report: 3 marks
4. No structure: 0 marks
o Clarity and Comprehensiveness (7 Marks):
1. Clear and comprehensive report: 7 marks
2. Moderately clear and comprehensive report: 5 marks
3. Vague and incomplete report: 2 marks
4. Incomprehensible report: 0 marks
4. Presentation (15 Marks)
o Content Delivery (8 Marks):
1. Clear, engaging, and thorough delivery: 8 marks
2. Clear but less engaging delivery: 6 marks
3. Somewhat clear and engaging delivery: 3 marks
4. Unclear and disengaging delivery: 0 marks
o Visual Aids and Communication Skills (7 Marks):
1. Effective use of visual aids and excellent communication skills: 7
marks
2. Moderate use of visual aids and good communication skills: 5
marks
3. Basic use of visual aids and fair communication skills: 2 marks
4. No use of visual aids and poor communication skills: 0 marks
Total: 100 Marks

352 | P a g e
Career Readiness Boot Camp
B. Tech (Computer Science and Engineering
Program
with specialization in Data Science)
Course Name: Course Code L-T-P Credits
Career Readiness Boot Camp 2-0-0 2
Type of Course: SEC

Pre-requisite(s), if any: Basics of Java/C++ Programming, DBMS, Data Structure


Preface:
This comprehensive course is meticulously designed to equip students with essential skills
in Data Structures, Algorithms, Object-Oriented Programming, Java, and Database
Management Systems, along with essential soft skills and aptitude preparation. Through a
combination of self-paced online modules, hybrid learning experiences, and offline
assessments, students will gain a profound understanding of foundational and advanced
concepts crucial for software development and data management. The course places a
strong emphasis on practical applications, problem-solving techniques, and the
development of robust, maintainable code.
In addition to the core technical skills, students will be prepared for real-world scenarios
through aptitude exams, soft skills training, and mock interviews, ensuring they are well-
rounded and industry-ready. A key feature of this course is the integration of free
certifications from Infosys Springboard, providing students with recognized credentials that
enhance their employability and align with industry standards.
To successfully complete the course, students are required to pass each individual
component, contributing to the final mark out of 100. This course is an integral part of the
Practical Training Module (Bootcamp training) in the curriculum, and upon successful
completion, students will earn 2 credits. The rigorous evaluation process ensures that
students not only acquire the necessary knowledge but also demonstrate their ability to
apply these skills in professional settings.

Students must obtain specific free certifications from Infosys Springboard


(https://infytq.onwingspan.com/web/en/page/home).

353 | P a g e
Course Outcomes (COs):
CO1: Demonstrate understanding of basic data structures (arrays, strings, linked lists)
and their operations to solve simple computational problems
CO2: Apply advanced data structures (stacks, queues, trees, graphs) to develop efficient
algorithms for complex problem-solving.
CO3: Design and implement software solutions using Object-Oriented Programming
principles, ensuring code reusability and maintainability.
CO4: Develop robust Java applications, utilizing object-oriented features, exception
handling, and file I/O operations effectively
CO5: Analyze and optimize database systems using SQL for efficient data retrieval,
transaction management, and ensuring data integrity.
SESSION WISE DETAILS

Module: 1 Data Structures and Algorithms - Part 1 No. of hours: 30


(Online, Self-Paced)
Content Summary: Module 1 covers foundational data structures including arrays, strings,
and linked lists. It introduces key operations and practical applications. This foundational
knowledge is crucial for advancing to more complex data structures.

Module: 2 Data Structures and Algorithms - Part 2 No. of hours: 30


(Online, Self-Paced)
Content Summary: Module 2 focuses on advanced data structures such as stacks, queues,
trees, and graphs. It covers essential operations, real-world applications, and their role in
solving complex problems. Understanding these structures is vital for effective problem-
solving and algorithm optimization.
Module: 3 Object Oriented Programming No. of hours:45
(Online, Self-Paced)
Content Summary: covers the fundamental concepts of OOP, including classes, objects,
inheritance, polymorphism, and encapsulation. It emphasizes designing and implementing
software using these principles to enhance code reusability and maintainability.

354 | P a g e
Module: 4 Programming using Java No. of hours: 100
(Online, Self-Paced)
Content Summary: basics of Java, including syntax, data types, operators, and control
structures. It covers object-oriented principles specific to Java, such as classes, objects,
inheritance, and polymorphism, along with advanced topics like exception handling and file
I/O. The module aims to build strong foundational skills in Java for developing robust
applications.
Module: 5 Database management Systems (part I) No. of hours: 60
(Online, Self-Paced)
Content Summary: fundamental concepts of database systems, including database models,
relational databases, and SQL. It covers key topics such as entity-relationship modeling,
normalization, and basic query operations. The module provides a solid foundation in
designing and managing databases, focusing on effective data retrieval and manipulation
using SQL.
Module: 6 Database management Systems (part II) No. of hours: 40
(Online, Self-Paced)
Content Summary: advanced database concepts, including transaction management,
concurrency control, and database security. This module covers complex SQL queries,
stored procedures, and triggers, as well as performance optimization techniques. It focuses
on enhancing your skills in managing and optimizing large-scale databases, ensuring data
integrity, and implementing robust security measures.
Module: 7 Aptitude Exam No. of hours: Online

Module: 8 Independent Evaluation No. of hours: Offline


through 3rd party
Module: 9 Softs Skills No. of hours: Online

Module: 10 MOCK Interview No. of hours: Hybrid

355 | P a g e
Reference Books:
▪ "Introduction to Algorithms" by Thomas H. Cormen, Charles E. Leiserson, Ronald L.
Rivest, and Clifford Stein
▪ "Cracking the Coding Interview" by Gayle Laakmann McDowell
▪ "Elements of Programming Interviews" by Adnan Aziz, Tsung-Hsien Lee, and Amit
Prakash
▪ "Head First Java" by Kathy Sierra and Bert Bates
▪ "Database System Concepts" by Abraham Silberschatz, Henry F. Korth, and S.
Sudarshan
▪ "Introduction to the Theory of Computation" by Michael Sipser
▪ "Programming Challenges: The Programming Contest Training Manual" by Steven
S. Skiena and Miguel A. Revilla
▪ "The Algorithm Design Manual" by Steven S. Skiena
▪ "Algorithms" by Robert Sedgewick and Kevin Wayne
▪ "Effective Java" by Joshua Bloch

Evaluation Criteria:

Mark
Module Link Hrs
s

https://infytq.onwingspan.com/web/en
Data Structures and
/app/toc/lex_auth_012540969913262 30 10
Algorithms - Part 1
0801065_shared/overview

https://infytq.onwingspan.com/web/en
Data Structures and
/app/toc/lex_auth_012766738469388 30 10
Algorithms - Part 2
2883448_shared/overview

https://infytq.onwingspan.com/web/en
Object Oriented
/app/toc/lex_auth_012540972274925 40 10
Programming
5681063_shared/overview

356 | P a g e
https://infytq.onwingspan.com/web/en
Programming using Java /app/toc/lex_auth_012880464547618 100 10
816347_shared/overview

https://infytq.onwingspan.com/web/en
Database management
/app/toc/lex_auth_012758066672820 60
Systems (part I)
22456_shared/overview
10
https://infytq.onwingspan.com/web/en
Database management
/app/toc/lex_auth_012767300562919 40
Systems (Part II)
4241_shared/overview

Online Sessions to be conducted by


Aptitude Exam NA 10
KRMU

AMCAT (Aspiring Minds To be organized by KRMU through


NA 20
Computer Adaptive Test) External agency

Online Sessions to be conducted by


Softs Skills NA 10
KRMU

MOCK Interview To be organized by KRMU NA 10

100

*Please Note: No end term evaluations will be done

Student Learning Experiences

▪ Foundational Mastery: Students will gain a strong foundation in data structures


and algorithms, essential for advanced problem-solving in computer science.
▪ Hands-On Programming: Through extensive Java programming exercises,
students will develop robust applications, reinforcing object-oriented
principles.
▪ Advanced Database Skills: The course will enhance students' ability to manage
and optimize databases, ensuring data integrity and effective transaction
management.
▪ Practical Problem Solving: Students will apply advanced data structures to
solve complex problems, preparing them for real-world challenges.
▪ Real-World Readiness: Soft skills training and mock interviews will equip
students with the interpersonal and professional skills needed for career
success.

357 | P a g e
▪ Self-Paced Learning: The online, self-paced modules allow students to learn at
their own pace, ensuring a deep and thorough understanding of each topic.
▪ Comprehensive Evaluation: Independent evaluations and aptitude exams will
rigorously assess students' knowledge and readiness for the tech industry.
▪ Certification and Credibility: Earning certifications from Infosys Springboard
will enhance students' resumes and demonstrate their competence in industry-
relevant skills.

358 | P a g e
Industrial Project/R&D Project/Start-up Project

Program B.Tech (Computer Science & Engineering)


Course Name: Course Code L-T-P Credits
Industrial Project/R&D Project/Start-up ENSI452 12
Project
Type of Course: SEC

Pre-requisite(s), if any:
Preface:
The B.Tech Final Semester Full-Time Project Work is a culmination of the academic
journey for engineering students at the School of Engineering & Technology, K.R. Mangalam
University. This detailed Standard Operating Procedure (SOP) is designed to guide students
through their project, ensuring a comprehensive, practical, and outcome-driven approach
that aligns with the principles of the National Education Policy (NEP) 2020.
The SOP provides a framework for students to choose from three types of projects—
Industrial Projects, Research & Development (R&D) Projects, and Start-up
Projects. It emphasizes experiential learning, real-world problem-solving, and
interdisciplinary collaboration, reflecting NEP 2020’s focus on holistic development,
innovation, and entrepreneurship. Students will work under the mentorship of both internal
faculty and external experts, ensuring they are equipped with the skills and knowledge
required to excel in industry, research, or entrepreneurship.
This document outlines each stage of the project work, from proposal submission to final
evaluation, and offers clear guidelines for successful completion. By adhering to this SOP,
students will not only demonstrate their technical proficiency but also contribute
meaningfully to industry, academia, and society.

359 | P a g e
Standard Operating Procedure (SOP) for B.Tech Final Semester Full-Time
Project Work

1. Introduction

The B.Tech Final Semester Full-Time Project Work is an essential academic


requirement aimed at providing students with the opportunity to apply theoretical
knowledge to practical challenges. The project is designed to foster critical thinking,
problem-solving, innovation, and research-oriented learning, with a focus on real-
world industrial, research, and entrepreneurial domains. Students may choose from:

• Industrial Project: Solving real industrial problems in collaboration with an


industry partner.

• Research & Development (R&D) Project: Contributing to academic and


applied research, with external guidance from academic/research institutions.

• Start-up Project: Developing and launching innovative start-up ideas with


entrepreneurial mentors.

The SOP ensures that the project aligns with NEP 2020 guidelines, emphasizing
interdisciplinary, practical, and outcome-based learning.

2. Objectives

The primary objectives of the full-time project are:

• Application of Theoretical Knowledge: Enabling students to apply their


academic learning to practical problems.

• Holistic Development: Promoting interdisciplinary learning, critical thinking,


creativity, and problem-solving.

• Research and Innovation: Encouraging innovative solutions, leading to


publications, patents, or prototypes.

• Industry Collaboration: Fostering partnerships with industries for real-world


problem-solving.

• Entrepreneurship Development: Developing entrepreneurial skills and


creating viable start-ups.

360 | P a g e
• Global Competency: Ensuring students develop the skills required to excel
in global environments through research, innovation, and collaboration.

3. Types of Projects

a) Industrial Project

Students working on Industrial Projects will:

• Collaborate with an industry partner.

• Identify specific, real-world challenges faced by the company.

• Propose and implement a solution that provides value to the industry.

• Develop a final product or prototype that can be implemented in the industrial


setting.

Project Proposal:

• Problem Statement and Objectives: Identify the industrial problem and outline
the objectives.

• Proposed Solution: Present a detailed methodology for solving the problem.

• Deliverables: Define tangible deliverables, including prototypes, software, or


hardware.

• Expected Impact: Outline the expected impact on the industry.

Evaluation Criteria:

• Practical implementation and solution viability (40%)

• Project innovation (20%)

• Industrial applicability and impact (20%)

• Final presentation and report quality (20%)

b) Research & Development (R&D) Project

The R&D Project focuses on creating innovative research outcomes through


collaborations with academic or research institutions. This can result in publications,
research reports, or new discoveries.
361 | P a g e
Project Proposal:

• Literature Review: Detailed research on existing work related to the chosen


topic.

• Hypothesis/Research Questions: Define the specific research problem or


question.

• Methodology: Include data collection, experimental design, and analysis


techniques.

• Research Timeline: Step-by-step phases of research with milestones.

External Mentor: Collaboration with an external academic expert is mandatory


for research projects. The external mentor must be a research professional with
expertise in the specific field of study.

Internal Mentor: Each student will also be assigned an internal faculty member
who will supervise the project. The internal mentor will ensure that the research
meets academic standards and deadlines.

Evaluation Criteria:

• Quality of Research and Novelty (30%)

• Research Methodology (25%)

• Contributions to the field (20%)

• Final Report, Presentation, and Publication (25%)

c) Start-up Project

The Start-up Project involves developing a business model or creating a start-up


venture. Students work on a product/service idea that addresses a significant market
need or societal problem.

Project Proposal:

• Start-up Idea: Explain the business or product idea.

• Market Research: Detailed research on the market, target customers,


competitors, and potential revenue streams.

• Business Plan: Define the steps needed to take the idea to market, including
funding, development phases, marketing, and operational plans.
362 | P a g e
• Product Prototype: If applicable, develop a working prototype.

Mentorship:

• External Mentor: An industry/start-up expert will guide the student in


refining the idea, business model, and market strategy.

• Internal Faculty Mentor: An internal mentor will provide academic guidance


and ensure the start-up idea is feasible and innovative.

Evaluation Criteria:

• Start-up viability and market potential (30%)

• Product or service innovation (30%)

• Prototype/Business Model Development (20%)

• Final Pitch/Presentation and Start-up Plan (20%)

4. Roles and Responsibilities

a) Student’s Responsibilities:

• Select a suitable project topic based on interests (industrial, R&D, or start-up).

• Draft and submit a detailed proposal with objectives, methodology, timelines,


and deliverables.

• Coordinate with both external and internal mentors regularly for feedback and
guidance.

• Maintain a weekly progress report for both mentors.

• Submit a final comprehensive report and present the project.

b) Internal Supervisor:

• Guide the student throughout the project.

• Provide academic input and ensure that the project aligns with the program
outcomes.

• Conduct progress reviews and ensure timelines are adhered to.

363 | P a g e
• Evaluate the project at the mid-term and final stages.

c) External Mentor:

• Offer specialized industrial, research, or entrepreneurial guidance.

• Provide real-world problem insights for industrial and start-up projects.

• Ensure the project is relevant to the chosen industry, research domain, or


start-up ecosystem.

• Participate in the final evaluation of the project.

5. Project Phases

Phase 1: Proposal Submission and Approval

• Students will submit a project proposal during the first two weeks of the final
semester.

• The proposal must include the problem statement, objectives, literature review
(for R&D projects), methodology, and expected outcomes.

• The proposal is subject to review and approval by the internal supervisor and
external mentor.

Phase 2: Planning and Resource Allocation

• Once approved, the student will develop a project plan that includes:

o Project Milestones: Break down the project into smaller tasks with
defined milestones.

o Resource Requirements: Identify any software, hardware, lab


resources, or tools required for the project.

o Team Roles: For group projects, define the roles of each team member.

o Risk Assessment: Highlight potential risks and the corresponding


mitigation strategies.

Phase 3: Mid-term Review

364 | P a g e
• A mid-term review will be conducted halfway through the project to assess
progress.

• Students will present their work to a committee consisting of the internal


supervisor, external mentor, and department head.

• The review will assess the progress against the timeline and suggest course
corrections if needed.

Phase 4: Final Execution and Evaluation

• Industrial Projects: Students must submit a prototype or industrial report,


demonstrating the solution's applicability to the industry.

• R&D Projects: Students must submit a final research report or publish


findings in academic journals.

• Start-up Projects: Students must present a business plan, along with a


working prototype, market analysis, and revenue model.

Phase 5: Final Report Submission and Presentation

• Final Report: The project report should contain a title page, abstract,
introduction, problem statement, objectives, methodology, results, discussion,
conclusions, future scope, references, and appendices.

• Presentation: Students will deliver a final presentation to a panel of


evaluators, showcasing their work, findings, or product.

• Evaluation: Based on the final report and presentation, students will be


awarded marks in accordance with the evaluation rubrics.

6. Collaboration and Mentorship

For Research Projects, the mentorship will involve both:

• External Mentor: An academic expert outside the institution, preferably from


a reputed university or research institute.

• Internal Mentor: A faculty member from the student’s department to provide


academic and administrative guidance.

For Industrial Projects:

365 | P a g e
• External mentorship will come from industry professionals, preferably from the
partnering company.

For Start-up Projects:

• External mentorship will involve experienced entrepreneurs, start-up founders,


or investors.

Mentors will:

• Provide critical inputs on the technical, business, or research aspects of the


project.

• Offer feedback and advice during each phase of the project.

7. NEP 2020 Guidelines

The project structure is designed to ensure interdisciplinary learning and foster


entrepreneurial and research innovation, in line with the NEP 2020 guidelines:

• Interdisciplinary Approach: Students are encouraged to explore projects


that bridge different fields of study.

• Flexibility: Students have the flexibility to choose between industrial,


research, or start-up projects.

• Experiential Learning: Real-world problem-solving and hands-on project


work are at the core of this initiative.

• Collaboration: The integration of external mentors ensures industry and


academic collaboration.

8. Documentation and Submission Requirements

Students are required to:

• Submit their proposal, mid-term report, final report, and any supporting
documents via the Learning Management System (LMS).

• Maintain detailed project logs and weekly reports.

366 | P a g e

You might also like