0% found this document useful (0 votes)
18 views52 pages

Integrated BSC Cs 2nd Sem

The document outlines the course details for 'Programming Fundamental using C++' (Course Code: UC24CSC21) offered by the Faculty of Computing and IT. It includes course aims, objectives, outcomes, content, teaching methods, and assessment strategies over a 16-week semester. The course focuses on foundational programming concepts, object-oriented programming principles, and practical coding skills in C++.

Uploaded by

suhasini.ss2462
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views52 pages

Integrated BSC Cs 2nd Sem

The document outlines the course details for 'Programming Fundamental using C++' (Course Code: UC24CSC21) offered by the Faculty of Computing and IT. It includes course aims, objectives, outcomes, content, teaching methods, and assessment strategies over a 16-week semester. The course focuses on foundational programming concepts, object-oriented programming principles, and practical coding skills in C++.

Uploaded by

suhasini.ss2462
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 52

Course Document

Course Code UC24CSC21


Course Title Programming Fundamental using C++
Program Code SCS02
Program Title B.sc-Computer Science
Department Faculty of Computing and IT
Faculty Code C
Faculty Title Computing and IT (FCIT)
Department offering the Course Computers Science
Faculty Member Prof. Teja H
Semester Duration Weeks (1-16) -Teaching, Learning and Continuous
Assessment
Weeks (17-18) -SEE
Weeks (19-20)- Announcement of Results

1. Course Size

Credits L T P Hours/Week
2 2 0 0 4

Total Term/ Semester hours: 45

2. Course Details

2.1 Course Aims and Summary

1. This course serves as an introduction to programming using the C++ language, focusing
on foundational concepts and skills essential for a successful career in software
development.
2. Introduce the principles of OOP, including classes, objects, inheritance, polymorphism,
and encapsulation. Show how these concepts enhance code organization, readability, and
maintainability.
3. The course will cover advanced topics including memory management, object-oriented
programming, and file handling, providing students with a comprehensive understanding
of software development principles. Practical exercises and hands-on coding projects will
reinforce theoretical concepts, allowing students to apply their knowledge in real-world
scenarios.

2.2 Course Objectives

The objectives of the Course are:


• To introduce the basic principles of OOP, including classes, objects, and
encapsulation.
• To explain the concept of data abstraction in the context of programming.
• To Implement and demonstrate data encapsulation
• To define the concept of inheritance in object-oriented programming.
• To define the concept of polymorphism in the context of object-oriented
programming.
• Understand how polymorphism contributes to code reuse and extensibility
• To understand the importance of method overloading in providing multiple ways to
interact with a class.
• Define dynamic binding and its significance in object-oriented programming.
• To implement scenarios where dynamic binding facilitates runtime flexibility.
• To define the concept of data types in programming
• To understand the concept of The iostream class, C++ Comments, C++ Keywords,
Variable declaration, The Const Qualifier.
• To implement the concepts of Manipulators, The scope resolution operator,
new & delete operators.
• Define the principles of OOP and the importance of objects and classes.
• Understand the structure of a class, including attributes data members and behaviours
member functions
• Introduce the syntax for declaring a class in C++
• Understand the role of different data types for member variables.
• Define member functions to encapsulate behaviours and operations of objects.
• Define the concepts of access specifiers public, private, protected in C++.
• Define the private access specifier and its significance.
• Explore how private members are only accessible within the class itself
• Introduce the protected access specifier and its use in class hierarchies.
• Define the concept of constructors in C++ and their role in object initialization.
• Implement multiple constructors within a class to provide flexibility in object
creation.
• Define the need for passing objects as arguments and returning objects in C++.
• Explore the use of object return values for efficient code and enhanced flexibility.
• To define the concept of arrays of objects in C++.
• To define the concept of Friends for functional notation, friend classes, the pointer;
Accessing Member Data with this, using this for returning values
• To define Overloading unary operator: Operator Keyword, Operator arguments,
Operator return. Overloading binary operator: Arithmetic operators,
comparison operator.
• Define and explain the fundamental concept of inheritance in object-oriented
programming.
• Define and explain the concept of derived classes in the context of object-oriented
programming.
• Define and explain the concept of access modifiers in object-oriented programming.
• Introduce and explain the concept of single inheritance in object-oriented
programming.
• Understand how multiple inheritance enhances code reuse in a complex hierarchy.
• Introduce and explain the concept of multilevel inheritance in object-oriented
programming.
• Introduce and explain the concept of hybrid inheritance in object-oriented
programming.
• Define and explain the concept of virtual member functions in object-oriented
programming.
• Define and explain the concept of templates in programming.
• Understand the need for handling errors and exceptional situations
2.3 Course Outcomes

After undergoing this course students will be able to:


CO1 Understand the key Object-Oriented Programming principles, including
encapsulation, inheritance, and polymorphism
CO2 Explain classes and objects, demonstrating proficiency in designing and
implementing user-defined data types
CO3 understands of the concept of operator overloading in C++ and its significance in
creating expressive and readable code
CO4 Implement to recognize and apply different types of inheritance such as single,
multiple, multilevel, and hybrid.
CO5 Explain the virtual functions in classes, enabling dynamic binding and runtime
method resolution.
CO6 Explain the techniques for writing exception-safe code and understand the
importance of proper resource management within exception-handling scenarios.

Outcome Map:
COs PO PO0 PO PO PO PO PO PO PS PS PSO
01 2 03 04 05 06 07 08 O1 O2 3

CO1 2 3 2 1 2 2 2 3 1 3 2

CO2 3 2 3 2 2 3 2 3 2 3 2

CO3 2 3 1 2 2 3 2 3 2 3 2

CO4 2 2 2 1 2 2 2 3 2 2 3

CO5 2 3 2 3 2 2 3 2 2 2 2

CO6 3 3 3 2 2 2 2 2 2 2 2

Relevance: 1 high, 2 medium, 3 low

2.4 Course Content

MODULE 1: Introduction of C++


Procedure Languages, definition of OOP, Basic concept of OOP, Object,
Class, Data Abstraction, Data Encapsulation, Data Hiding, Reusability,
Inheritance, Polymorphism, Overloading, Dynamic binding and Message
passing. C++ Features: Basic data types-The iostream class, C++ Comments,
C++ Keywords, Variable declaration, The Const Qualifier. Manipulators, The
scope resolution operator, new & delete operators.
MODULE 2: Objects & Classes
Classes& Objects, Class Declaration, Class members, Data Members,
Member functions, Class member visibility, private, public, protected.
Constructors and Types of Constructors, Overloaded Constructor, Objects as
arguments, returning objects from functions, Destructors, Array of objects.
Friend function: Friends for functional notation, friend classes, the pointer;
Accessing Member Data with this, using this for returning values.

MODULE 3: Operator Overloading and Inheritance


Overloading unary operator: Operator Keyword, Operator arguments, Operator
return. Overloading binary operator: Arithmetic operators, comparison
operator.
Inheritance: Derived Class & Base Class: Specifying the Derived class
accessing Base class members, the protected access specifier, Types of
inheritance: Single inheritance, Multiple inheritance, Multilevel inheritance,
Hybrid inheritance, public and private inheritance, Overriding member
functions.

MODULE 4: Virtual functions and Templates &Exception Handling


Normal member function accessed with pointers, Virtual member functions
accessed with pointers, Dynamic binding, pure virtual functions.
Templates &Exception Handling: Introduction, Templates, Class Templates,
function templates, Member function templates, Template arguments,
Exception Handling.

2.5 Course Resourse

• Text Book:
 Lafore Robert, Galgotia Publications, 2012. (Unit I), Fourth edition,
“Object Oriented Programming in Turbo C++”,
 E.Balaguruswamy: Tata McGraw Hill Publications, 2011.(Unit II,III &IV),
eighth edition, Object Oriented Programming with C++,

• References:
• HerbertSchildt, “C++: The Complete Reference” Osborne McGraw-Hill, Third
edition, 1998.
• P. B. Kotur, “Object Oriented Programming with C++” Eight Edition.
• www.w3school.com
• www.greeksofgreeks.com
• www.coursera.com
3. Teaching and Assessment

3.1 Teaching

Lecture Lecture Topic Lecture Slides Lecture Videos


Number
0 Overview of Procedure Lecture-00 Video-00
Languages
1 Definition of OOP Lecture-01 Video-01
2 Basic Concepts of OOP Lecture-02 Video-02
3 Objects and Classes Lecture-03 Video-03
4 Introduction to C++ Features Lecture-04 Video-04
5 Basic Data Types and Lecture-05 Video-05
iostream class
6 C++ Comments and Lecture-06 Video-06
Keywords
7 Variable Declaration Lecture-07 Video-07
8 The Const Qualifier Lecture-08 Video-08
9 Manipulators The Scope Lecture-09 Video-09
Resolution Operator
10 New & Delete Operators Lecture-10 Video-10
11 Delete Opearators Lecture-11 Video-11
Issue -Assignment 1 and Assignment-1 Statements
12 Classes & Objects Lecture-12 Video-12
13 Class Declaration Lecture-13 Video-13
14 Class Members Lecture-14 Video-14
15 Data Members Lecture-15 Video-15
Submission of Assignment-1
Quiz-01 and Test-1-Obtain Student Feedback
16 Member Functions Lecture-16 Video-16
17 Class Member Visibility Lecture-17 Video-17
(private, public, protected)
18 Constructors and Types of Lecture-18 Video-18
Constructors
19 Overloaded Constructors Lecture-19 Video-19
20 Objects as Arguments Lecture-20 Video-20
21 Returning Objects from Lecture-21 Video-21
Functions
22 Destructors Lecture-22 Video-22
23 Array of Objects Lecture-23 Video-23
24 Friends for Functional Lecture-24 Video-24
Notation
25 Friend Classes Lecture-25 Video-25
26 The Pointer Lecture-26 Video-26
27 Accessing Member Data Lecture-27 Video-27
with 'this'
Issue -Assignment 2 and Assignment-2 Statements
28 Using 'this' for Returning Lecture-28 Video-28
Values
29 Overloading Unary Lecture-29 Video-29
Operators
30 Operator Keyword, Lecture-30 Video-30
Arguments, and Return
Submission of Assignment-1
Quiz-02 and Test-2-Obtain Student Feedback
31 Overloading Binary Lecture-31 Video-31
Operators
32 Arithmetic Operators Lecture-32 Video-32
33 Comparison Operator Lecture-33 Video-33
34 Derived Class & Base Class Lecture-34 Video-34
35 Specifying the Derived Class Lecture-35 Video-35
Accessing Base Class
Members
36 Protected Access Specifier Lecture-36 Video-36
37 Types of Inheritance, Single Lecture-37 Video-37
Inheritance, Multiple
Inheritance, Multilevel
Inheritance, Hybrid
Inheritance
38 Public and Private Lecture-38 Video-38
Inheritance, Public and
Private Inheritance, Virtual
Member Functions Accessed
with Pointers
39 Dynamic Binding, Pure Lecture-39 Video-39
Virtual Functions
40 Introduction to Templates Lecture-40 Video-40
Issue -Assignment 3 and Assignment-3 Statements
41 Class Templates Lecture-41 Video-41
42 Function Templates Lecture-42 Video-42
43 Member Function Templates Lecture-43 Video-43
44 Template Arguments Lecture-44 Video-44
45 Exception Handling Lecture-45 Video-45
Quiz-03 and Test-03
Submission of Assignment-2
Obtain Student Feedback
Examination Preparation Break
Term/Semester End Examination
3.2 Assessment weight Distribution

Quiz Test Assignment/ SEE Total


Marks
PBL/PrBL
Weights/ 15 25 20 40 100
Course
Outcomes
CO1 3 5 3 5 16
CO2 3 5 3 7 18
CO3 3 5 3 7 18
CO4 2 3 3 7 15
CO5 2 3 4 7 16
CO6 2 4 4 7 17
3.3 Schedule of Assessment

Assessment Dates Mark COs Quiz Test Assignme SEE


Type s nt/PBL/

PrBL
Weight 15 25 20 40
Duration 30 min 60 min 6 weeks 3
hours
Quiz-1 5th 6 CO1/
week
CO2
Quiz-2 10th 5 CO3/
week CO4
Quiz-3 15th 4 CO5/
week CO6
Test-1 5th 10 CO1/
week
CO2
th
Test-2 10 8 CO3/
week CO4
Test-3 15th 7 CO5/
week CO6
Assignment- 7th 09 CO
1 week
1-3
Assignment- 14th 11 CO
2 week
4-6
th
SEE 18 40 All
Week
3.4 Grading Criterion

 Based on total marks scored grade is Awarded.


If marks scored is:

 91 and above O (outstanding); 81-90 : A+ (Excellent); 71-80: A (Very Good); 61-


70: B+ (Good); 51-60 : B (Above Average); 40 -50: C (Average); below 40: D
(Not satisfactory)
 If one scores D grade, the candidate is required to re-register for the course if
jkhkej’he/she wants to earn the credit at his/her own convenience

Attainment Calculations:
Recording Marks and Awarding Grades

S. No. USN Student Quiz Test Assignment SEE Marks Grade


Name (15%) (25%) 20% 40% Scored obtained
1
2
3

N
Total XXXXX

Class Average Marks: Total marks of All Students (XXXX)/ Number of students (N)
Average Grade:

Setting Attainment Targets:

Attainment of Course Outcomes-COs


Outcomes- Targeted Outcomes Level of Observations and
Attainment Remarks
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3

Performance Recording

Acad Progra Semest Sect Course Course Title


emic m: er ion Code
Year Programming with C
B.Tec XXYYZZH1 Course Tutor/s:
2023 h., in 1
-24 Comp I A Tutor’s ID/Department:
uter
Scienc
e and
Engin
eering
Total Numb Numb Clas O- A+ A B+ B C D
Num er of er of s Graders Graders Grader Grader Grader Gra
ber Studen Studen Ave s s Grader ders
of ts ts - rage >= 91 s
stude appear Passed Mar 81<=M M<
nts in ed for all the ks <=90 71<= 40<= 40
the all the compo M<=8 61<= 51<= M<=5
Class compo nent of 0 M<=7 M<=6 0
nents Exami 0 0
of nation
Assess
ment
60 58 54 58 4 8 10 14 10 8 4

B
Gra
de
CO1- Performance

CO2- Performance

CO3- Performance

CO4- Performance

CO5- Performance

CO6- Performance

Performance Plotting

CO-2 Distribution CO-3 Distribution

CO-4 Distribution CO-5 Distribution CO-6 Distribution


Mapping of Course Outcomes with Program Outcomes

PO PO PO PO PO PO PO PO PO PO PO PO PS PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2 O3
CO 1
1
CO 1
2
CO 2 2
3
CO 2 2
4
CO 1 1
5
CO 1 1
6

4. Other Details

4.1 Assignment Details or Problem Based Learning


Assignments will be given at the beginning of each block period and students can
continuously work on assignment and submit at the end of the block period as per the
format provided.
4.2 Academic Integrity Policy: Students are required to strictly follow academic honesty
and integrity. Copying and plagiarism in any form for any of the assessment components
will result in zero marks.
Course Document

Course Code UC24CSP22


Course Title C++ Lab
Program Code SCS02
Program Title B.sc-Computer Science
Department Faculty of Computing and IT
Faculty Code C
Faculty Title Computing and IT (FCIT)
Department offering the Course Computers Science
Faculty Member Prof. Teja H
Semester Duration Weeks (1-16) -Teaching, Learning and Continuous
Assessment
Weeks (17-18) -SEE
Weeks (19-20)- Announcement of Results

1. Course Size

Credits L T P Hours/Week
2 0 0 2 2

Total Term/ Semester hours: 60

2. Course Details

2.1 Course Aims and Summary

1 Explore the principles of OOP, including classes, objects, inheritance, polymorphism,


encapsulation, and abstraction. Understand how to design and implement robust, modular,
and reusable code using OOP principles.
2 The C++ Programming Lab is designed to complement the theoretical knowledge gained
in the main C++ programming course with hands-on, practical experience. Throughout
the lab sessions, students will actively apply their understanding of C++ syntax, object-
oriented programming principles, and advanced features.

2.2 Course Outcomes

After undergoing this course students will be able to:


CO1 Demonstrate the ability to write, compile, and execute basic C++ programs,
showcasing proficiency in fundamental syntax and programming constructs
CO2 Develop small-scale C++ projects, progressively increasing in complexity, to
apply theoretical knowledge in practical scenarios
CO3 Design and execute test cases for C++ programs, validating the correctness
and reliability of code
CO4 Demonstrate the ability to write testable and maintainable code
CO5 Implement the industry-standard coding conventions and best practices in
C++ programming
CO6 Demonstrate the portfolio serves as evidence of practical proficiency and
readiness for real-world applications of C++

Outcome Map:
COs PO PO PO PO PO PO PO PO PS PSO PSO3
01 02 03 04 05 06 07 08 O1 2

CO1
1 2 2 3 3 1 2 1 2 1 2
CO2
1 2 1 2 2 1 3 1 2 2 2
CO3
2 2 2 2 2 2 2 1 3 2 1
CO4
2 2 2 2 2 2 2 1 3 2 1
CO5
2 1 2 2 2 2 2 2 1 2 2
CO6
1 2 1 2 2 1 3 1 2 1 2

Relevance: 1 high, 2 medium, 3 low

2.3 Course Content

• PART – A
 Write a program to prepare shopping list
 Write a program to demonstrate use of arithmetic operators
 Write a program to perform bank transaction
 Write a program to swap numbers using friend function.
 Write a program to calculate area and circumference of circle using inline
function
 Write a program to perform addition of two matrices using operator
overloading
 Write a program to find sum of complex number using operator overloading
and friend function
 Write a Program to find the area and volume of respective figures using
function overloading
 Write a program to find factorial of number using function overloading
 Write a program to create a student report using inheritance technique

• PART – B
 Write a program to create a student report using inheritance technique
 Write a program to find the maximum of two numbers using template.
 Write a program to sort elements using templates.
 Write a program to define member function outside the class.
 Write a program to find the roots of a quadratic equation using constructors.
 Write a program to find maximum of two numbers using a friend function.
 Write a program to demonstrate constructor with default argument
 Write a program to use pointer for both base and derived classes and the
member function. Use Virtual keyword
 Write a program to illustrate hybrid inheritance

2.5 Course Resours

• Text Book:
• The C++ Programming Language, 3rd Edition, B. Stroutstrup, Pearson Education.
• Gaddis, J. Walters and G. Muganda, 3rd Edition, OOP in C++, Wiley Dream Tech
Press
• R. Lafore, Galigotia, Publications Pvt Ltd, 3rd Edition,

• References:
• www.w3school.com
• www.greeksofgreeks.com
• www.coursera.com

3. Teaching and Assessment

3.1 Teaching Plan


Lecture Lecture Topic Lecture Slides Lecture Videos
Number
0 Write a program to prepare Lecture-00 Video-00
shopping list
Issue-Assignment 1 and Assignment-2 Statements
1 Write a program to prepare Lecture-01 Video-01
shopping list
2 Write a program to demonstrate Lecture-02 Video-02
use of arithmetic operators
3 Write a program to perform bank Lecture-03 Video-03
transaction
4 Write a program to perform Lecture-04 Video-04
bank transaction
5 Write a program to swap Lecture-05 Video-05
numbers using friend function.
6 Write a program to swap Lecture-06 Video-06
numbers using friend function
7 Write a program to calculate area Lecture-07 Video-07
and circumference of circle using
inline function
8 Write a program to calculate area Lecture-08 Video-08
and circumference of circle using
inline function
9 Write a program to perform Lecture-09 Video-09
addition of two matrices using
operator overloading
10 Write a program to perform Lecture-10 Video-10
addition of two matrices using
operator overloading
11 Write a program to find sum of Lecture-11 Video-11
complex number using operator
overloading and friend function
Quiz -01 and Test-1-Obtain Student Feedback
12 Write a program to find sum of Lecture-12 Video-12
complex number using operator
overloading and friend function
13 Write a program to find sum of Lecture-13 Video-13
complex number using operator
overloading and friend function
14 Write a Program to find the area Lecture-14 Video-14
and volume of respective figures
using function overloading
15 Write a Program to find the area Lecture-15 Video-15
and volume of respective figures
using function overloading
Submission of Assignment-1
16 Write a program to find factorial Lecture-16 Video-16
of number using function
overloading
17 Write a program to create a Lecture-17 Video-17
student report using inheritance
technique
18 Write a program to create a Lecture-18 Video-18
student report using inheritance
technique
19 Write a program to find the Lecture-19 Video-19
maximum of two numbers using
template.
20 Write a program to find the Lecture-20 Video-20
maximum of two numbers using
template.
21 Write a program to find the Lecture-21 Video-21
maximum of two numbers using
template.
Quiz -02 and Test -02
22 Write a program to define Lecture-22 Video-22
member function outside the
class.
23 Write a program to sort elements Lecture-23 Video-23
using templates.
24 Write a program to sort elements Lecture-24 Video-24
using templates.
25 Write a program to define Lecture-25 Video-25
member function outside the
class.
26 Write a program to find the roots Lecture-26 Video-26
of a quadratic equation using
constructors.
27 Write a program to find Lecture-27 Video-27
maximum of two numbers using
a friend function.
28 Write a program to demonstrate Lecture-28 Video-28
constructor with default
argument
29 Write a program to use pointer Lecture-29 Video-29
for both base and derived classes
and the member function. Use
Virtual keyword
30 Write a program to illustrate Lecture-30 Video-30
hybrid inheritance
Quiz-03 and Test-03

Submission of Assignment-2

Obtain Student Feedback


Examination Preparation Break
Term/Semester End Examination
3.3 Assessment weight Distribution

Quiz Test Assignment/ SEE Total


Marks
PBL/PrBL
Weights/ 15 25 20 40 100
Course
Outcomes
CO1 4 6 4 7 21
CO2 4 6 4 8 22
CO3 3 6 4 8 21
CO4 2 4 4 8 18
CO5 2 3 4 9 18
CO6

3.1 Schedule of Assessment

Assessment Dates Mark COs Quiz Test Assignme SEE


Type s nt/PBL/

PrBL
Weight 15 25 20 40
Duration 30 min 60 min 6 weeks 3
hours
Quiz-1 5th 6 CO1/
week
CO2
Quiz-2 10th 5 CO3/
week CO4
Quiz-3 15th 4 CO5/
week CO6
Test-1 5th 10 CO1/
week
CO2
th
Test-2 10 8 CO3/
week CO4
Test-3 15th 7 CO5/
week CO6
Assignment- 7th 09 CO
1 week
1-3
th
Assignment- 14 11 CO
2 week
4-6
SEE 18th 40 All
Week
3.2 Grading Criterion

 Based on total marks scored grade is Awarded.


If marks scored is:

 91 and above O (outstanding); 81-90 : A+ (Excellent); 71-80: A (Very Good);


61-70: B+ (Good); 51-60 : B (Above Average); 40 -50: C (Average); below
40: D (Not satisfactory)
 If one scores D grade, the candidate is required to re-register for the course if
he/she wants to earn the credit at his/her own convenience

Attainment Calculations:
Recording Marks and Awarding Grades

S. No. USN Student Quiz Test Assignment SEE Marks Grade


Name (15%) (25%) 20% 40% Scored obtained
1
2
3

N
Total XXXXX

Class Average Marks: Total marks of All Students (XXXX)/ Number of students (N)
Average Grade:

Setting Attainment Targets:

Attainment of Course Outcomes-COs


Outcomes- Targeted Outcomes Level of Observations and
Attainment Remarks
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3

Performance Recording

Acad Progra Semes Sect Course Course Title


emic m: ter ion Code
Year Artificial Intelligence and machine learning
B.Sc., UC24AIC3 Course Tutor/s:
2023 in 3
-24 Artific III A Tutor’s ID/Department:
ial
Intelli
gence
and
Data
Analy
tics
Total Numb Numb Clas O- A+ A B+ B C D
Num er of er of s Grader Graders Grader Grader Grader Gra
ber Stude Studen Ave s s s Grader ders
of nts ts - rage s
stude appear Passed Mar >= 91 81<=M M<
nts in ed for all the ks <=90 71<= 40<= 40
the all the compo M<=8 61<= 51<= M<=5
Class comp nent of 0 M<=7 M<=6 0
onents Exami 0 0
of nation
Asses
sment
60 58 54 58 4 8 10 14 10 8 4

B
Gra
de
CO1- Performance

CO2- Performance

CO3- Performance

CO4- Performance

CO5- Performance

CO6- Performance

Performance Plotting

CO-1 Distribution CO-2 Distribution CO-3 Distribution

CO-4 Distribution CO-5 Distribution CO-6 Distribution


Mapping of Course Outcomes with Program Outcomes

P P P P P P P P P PO PO PO PS PS PS
O1 O2 O3 O4 O5 O6 O7 O8 O9 10 11 12 O1 O2 O3
C 1
O1
C 1
O2
C 2 2
O3
C 2 2
O4
C 1 1
O5
C 1 1
O6

4 Other Details

4.1 Assignment Details or Problem Based Learning


Assignments will be given at the beginning of each block period and students can
continuously work on assignment and submit at the end of the block period as per the
format provided.
4.2 Academic Integrity Policy: Students are required to strictly follow academic
honesty and integrity. Copying and plagiarism in any form for any of the assessment
components will result in zero marks.
Course Document

Course Code UC24CSC23


Course Title Data Structure using C++
Program Code SCS02
Program Title B.sc-Computer Science
Department Department of Computer Science
Faculty Code C
Faculty Title School of computing and IT
Department offering the Computer Science
Course
Faculty Member Prof.Teja H
Semester Duration Weeks (1-16) -Teaching, Learning and Continuous
Assessment
Weeks (17-18) -SEE
Weeks (19-20)- Announcement of Results

1. Course Size

Credits L T P Hours/Week
2 2 0 0 2

Total Term/ Semester hours: 30

2. Course Details

2.1 Course Aims and Summary

1. The aims of a course on data structures typically revolve around equipping students
with the fundamental knowledge and skills to effectively organize and manipulate data
in computer programs.
2. Data structures are essential components in computer science and programming,
providing efficient ways to store, retrieve, and manipulate data. The primary goals of a
data structures course include: to provide a solid foundation in fundamental concepts,
algorithmic thinking, and problem-solving skills.
3. It combines theoretical knowledge with practical implementation, preparing students
to make informed decisions about choosing and implementing appropriate data
structures in their future programming endeavours.

2.2 Course Objectives

The objectives of the Course are:


• To introduce and understanding the basic concept of data structures
• To represent the types of data structures Primitive &Non-primitive data structures
• To represent the types of data structures Linear and Non-linear ;Operations on data
structures
• To Introduce fundamental principles for designing algorithms
• To define the data structure and algorithm specification with performance analysis
to equip students with the knowledge and skills needed to design, analyze.
• To define the concept of recursion and understand its fundamental principles
• To define and understand the types of recursion with examples
• To understand the concept of GCD,Binomial coefficient nCr, Towers of Hanoi
• To compare between the iterative and recursive functions
• To define and explain the concept of arrays in the context of data structures
• To explain the concept of declaration and initialization of arrays
• To introduce the concept of operation and types of arrays
• To explain and encapsulates the essential array operations and their expected
behaviour, allowing for different implementations to fulfill the ADT
• To define and explain the concept of representation of linear arrays in memory
• To understand the concept of traversing linear arrays
• To Introduce insertion and deletion operations on different data structures.
• To analyze time and space complexity considerations for insertion operations
• To implement deletion in arrays, linked lists, stacks, queues, and trees
• To introduce sorting and searching algorithms and their importance in data
manipulation.
• To explain principle of iterative and recursive searching, multidimensional arrays
and sparse matrices
• To introduce the concept of Stacks and Operations on stacks and application of
stacks
• To define Infix, Postfix and Prefix notations
• To explain conversion infix to postfix using stacks; Applications of stack in
function calls.
• To introduce basic concepts of Queues and types of queues in brief
• To explain the difference between static and dynamic memory allocation
• To introduce the function – malloc, calloc, realloc and free
• To introduce the basic concept and representation of linked list with types
• To explain the concept of operation on singly linked list – Traversing, Searching,
Insertion, Deletion and garbage collection
• To explain the concept of Trees like tree terminologies-node, root node, parent
node, ancestors of a node.
• To Understand the principles of binary trees in data structures, including tree
traversal, binary tree properties and operations

2.2 Course Outcomes

After undergoing this course students will be able to:


CO1 Explain basic concepts of Data Structures
CO2 Explain the ability to analyze and design algorithms for various data
manipulation tasks with a focus on time and space complexity
CO3 Analyze real-world computational problems and expertise in efficient
searching and sorting techniques such as binary search and quicksort
CO4 Explain the dynamic memory management in the context of linked
structures, to optimize resource utilization
CO5 Develop skills in analyzing the time and enabling informed decision-making
in algorithm selection
CO6 Explore advanced data structures like graphs and trees, understanding their
properties and traversal methods

Outcome Map:
COs PO PO0 PO PO PO PO PO PO PS PS PS
01 2 03 04 05 06 07 08 O1 O2 O3
CO1 1 2 3 2 2 2 3 3 3 2 1

CO2 3 1 2 3 2 1 2 3 1 1 2

CO3 3 3 1 3 3 2 1 3 3 2 2

CO4 2 2 3 3 2 3 3 3 3 3 2

CO5 3 2 1 1 2 3 3 3 3 2 2

CO6 3 2 2 3 1 1 3 1 3 3 1

Relevance: 1 high, 2 medium, 3 low

2.3 Course Content

• MODULE 1: Introduction to data structures:


Definition; Types of data structures - Primitive &Non- primitive, Linear and Non-
linear ; perations on data structures. Dynamic memory allocation: Static &
Dynamic memory allocation; Memory allocation and de-allocation functions –
malloc, calloc, realloc and free. Algorithm Specification, Performance Analysis,
Performance Measurement Recursion: Definition; Types of recursions; Recursion
Technique Examples - GCD, Binomial coefficient nCr, Towers of Hanoi;
Comparison between iterative and recursive functions.
MODULE 2: Arrays and Stacks
Basic Concepts–Definition, Declaration, Initialization, Operations on arrays;
Types of arrays; Arrays as abstract data types (ADT); Representation of Linear
Arrays in Memory Traversing linear arrays; Inserting and deleting elements;
Sorting – Selection Sort, Bubble sort, Quick sort, Selection sort, Insertion sort;
Searching-Sequential Search Binary Search; Iterative and Recursive searching.
Stacks: Basic Concepts – Definition and Representation of stacks; Operations on
stacks; Applications of stacks; Infix, postfix and prefix notations; Conversion
from Infix to postfix using stacks; Evaluation of postfix expression using stacks.
Module 3: Queues and linked list
Basic Concepts–Definition and Representation of queues; Types of queue Simple
queues, Circular queues, Double ended queues, Priority queues;
Operations of Simple queues.
Linked list: Basic Concepts – Definition and Representation of linked list,
Types of linked lists - Singly linked list, Doubly liked list, Header liked list,
Circular linked list; Representation of Linked list in Memory Operations on
Singly linked lists– Traversing, Searching, Insertion, Deletion; Memory
allocation; Garbage collection
Module 4: Trees and Binary tree
Trees: Definition; tree terminologies-node, root node, parent node, ancestors of a
node Siblings, terminal, and non terminal nodes, degree of node, level, edge, path,
depths.

Binary tree: type of binary trees – strict binary tree, complete binary tree, binary
search tree and heap tree; Array representation of binary tree. Traversal of binary
tree; preorder, in order and post order traversal ; Reconstruction of a binary tree
when any two of the traversals are given

2.5 Course Resources

Text Book:
• Ellis Horowitz and Sartaj Sahni: Fundamentals of Data Structures
References:
• Tanenbaum: Data Structure using C(Pearson Education)
• Kamathane: Introduction to Data Structures(Pearson Education)
• Y. Kanitkar: Data Structures using C(BPB)
• Kottur: Data Structure using C
• Padma Reddy: Data Structure using C
• Sudipa Mukherjee: Data Structure using C – 1000 Problems and Solutions (McGraw
Hill Education,2007)
• www.w3school.com
• www.greeksofgreeks.com

3. Teaching and Assessment

3.1 Teaching

Lecture Lecture Topic Lecture Slides Lecture Videos


Number
0 Faculty introduction ,student Lecture-00 Video-00
introduction and subject
introduction
Issue-Assignment 1 and Assignment-2 Statements
1 Definition of data structures Lecture-01 Video-01
Types of data structures
(Primitive & Non-primitive,
Linear and Non-linear)
2 Operations on data structures Lecture-02 Video-02

Dynamic memory allocation


(Static & Dynamic memory
allocation)
3 Memory allocation and de- Lecture-03 Video-03
allocation functions – malloc,
calloc, realloc, free
4 Algorithm Specification, Lecture-04 Video-04
Performance Analysis,
Performance Measurement
5 Definition of recursion Lecture-05 Video-05

Types of recursions
6 Recursion Technique Lecture-06 Video-06
Examples - GCD, Binomial
coefficient nCr, Towers of
Hanoi
7 Comparison between Lecture-07 Video-07
iterative and recursive
function
8 Basic Concepts – Definition, Lecture-08 Video-08
Declaration, Initialization

Operations on arrays
9 Types of arrays Lecture-09 Video-09

Arrays as abstract data types


(ADT)
10 Representation of Linear Lecture-10 Video-10
Arrays in Memory

Traversing linear arrays


11 Inserting and deleting Lecture-11 Video-11
elements

Quiz -01 and Test-1-Obtain Student Feedback


12 Sorting – Selection Sort, Lecture-12 Video-12
Bubble sort, Quick sort,
Selection sort, Insertion sort
13 Searching - Sequential Lecture-13 Video-13
Search, Binary Search
14 Iterative and Recursive Lecture-14 Video-14
searching
15 Basic Concepts – Definition Lecture-15 Video-15
and Representation of stacks
Submission of Assignment-1
16 Operations on stacks Lecture-16 Video-16
17 Applications of stacks Lecture-17 Video-17
18 Infix, postfix, and prefix Lecture-18 Video-18
notations
19 Conversion from Infix to Lecture-19 Video-19
postfix using stacks
20 Conversion from Infix to Lecture-20 Video-20
prefix
21 Evaluation of prefix u8sing Lecture-21 Video-21
stack
Quiz -02 and Test -02
22 Students seminar Lecture-22 Video-22
23 Students seminar Lecture-23 Video-23
24 Unit test Lecture-24 Video-24
25 Evaluation of postfix Lecture-25 Video-25
expression using stacks
26 Basic Concepts – Definition Lecture-26 Video-26
and Representation of queues
27 Types of queues (Simple Lecture-27 Video-27
queues, Circular queues,
Double-ended queues,
Priority queues)
28 Operations of Simple queues Lecture-28 Video-28
29 Basic Concepts – Definition Lecture-29 Video-29
and Representation of linked
list
30 Types of linked lists - Singly Lecture-30 Video-30
linked list, Doubly linked
list, Header linked list,
Circular linked list
31 Representation of Linked list Lecture-31 Video-31
in Memory
32 Operations on Singly linked Lecture-32 Video-32
lists– Traversing, Searching,
Insertion, Deletion
33 Memory allocation Lecture-33 Video-33
34 Garbage collection Lecture-34 Video-34
35 Definition of trees Lecture-35 Video-35
36 Tree terminologies - node, Lecture-36 Video-36
root node, parent node,
ancestors of a node, siblings,
terminal and non-terminal
nodes, degree of node, level,
edge, path, depths
37 Binary tree: types of binary Lecture-37 Video-37
trees – strict binary tree,
complete binary tree, binary
search tree, heap tree
38 Array representation of Lecture-38 Video-38
binary tree
39 Traversal of binary tree – pre Lecture-39 Video-39
order, in-order, and post-
order traversal
40 Reconstruction of a binary Lecture-40 Video-40
tree when any two of the
traversals are given
41 Recap and review of the Lecture-41 Video-41
covered topics
42 Advanced topics on trees Lecture-42 Video-42
43 More on trees and Lecture-43 Video-43
applications
44 Special topics or advanced Lecture-44 Video-44
data structures
45 Revision Lecture-45 Video-45
Quiz-03 and Test-03

Submission of Assignment-2

Obtain Student Feedback


Examination Preparation Break
Term/Semester End Examination

3.2 Assessment weight Distribution

Quiz Test Assignment/ SEE Total


Marks
PBL/PrBL
Weights/ 15 25 20 40 100
Course
Outcomes
CO1 3 5 3 5 16
CO2 3 5 3 7 18
CO3 3 5 3 7 18
CO4 2 3 3 7 15
CO5 2 3 4 7 16
CO6 2 4 4 7 17
3.3 Schedule of Assessment

Assessment Dates Mark COs Quiz Test Assignme SEE


Type s nt/PBL/

PrBL
Weight 15 25 20 40
Duration 30 min 60 min 6 weeks 3
hours
Quiz-1 5th 6 CO1/
week
CO2
Quiz-2 10th 5 CO3/
week CO4
Quiz-3 15th 4 CO5/
week CO6
Test-1 5th 10 CO1/
week
CO2
th
Test-2 10 8 CO3/
week CO4
Test-3 15th 7 CO5/
week CO6
Assignment- 7th 09 CO
1 week
1-3
th
Assignment- 14 11 CO
2 week
4-6
SEE 18th 40 All
Week

3.4 Grading Criterion

 Based on total marks scored grade is Awarded.


If marks scored is:

 91 and above O (outstanding); 81-90 : A+ (Excellent); 71-80: A (Very Good);


61-70: B+ (Good); 51-60 : B (Above Average); 40 -50: C (Average); below
40: D (Not satisfactory)
 If one scores D grade, the candidate is required to re-register for the course if
he/she wants to earn the credit at his/her own convenience

Attainment Calculations:
Recording Marks and Awarding Grades

S. No. USN Student Quiz Test Assignment SEE Marks Grade


Name (15%) (25%) 20% 40% Scored obtained
1
2
3

N
Total XXXXX
Class Average Marks: Total marks of All Students (XXXX)/ Number of students (N)
Average Grade:

Setting Attainment Targets:

Attainment of Course Outcomes-COs


Outcomes- Targeted Outcomes Level of Observations and
Attainment Remarks
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
Performance Recording

Acad Progr Semes Sect Course Course Title


emic am: ter ion Code
Year Programming with C
B.Tec XXYYZZH Course Tutor/s:
2023 h., in 11
-24 Comp I A Tutor’s ID/Department:
uter
Scien
ce and
Engin
eering
Total Numb Numb Clas O- A+ A B+ B C D
Num er of er of s Graders Graders Grader Grader Grader Gra
ber Stude Studen Ave s s Grader ders
of nts ts - rage >= 91 s
stude appea Passed Mar 81<=M M<
nts in red all the ks <=90 71<= 40<= 40
the for all compo M<=8 61<= 51<= M<=5
Class the nent 0 M<=7 M<=6 0
comp of 0 0
onents Exami
of nation
Asses
sment

60 58 54 58 4 8 10 14 10 8 4

B
Gra
de
CO1- Performance

CO2- Performance

CO3- Performance

CO4- Performance

CO5- Performance

CO6- Performance
Performance Plotting

CO-1 CO-2 Distribution CO-3 Distribution


DistributionCO-1
Distribution

CO-4 Distribution CO-5 Distribution CO-6 Distribution

Mapping of Course Outcomes with Program Outcomes

P P P P P P P P P PO PO PO PS PS PS
O1 O2 O3 O4 O5 O6 O7 O8 O9 10 11 12 O1 O2 O3
C 1
O1
C 1
O2
C 2 2
O3
C 2 2
O4
C 1 1
O5
C 1 1
O6

4 Other Details

4.1 Assignment Details or Problem Based Learning


Assignments will be given at the beginning of each block period and students can
continuously work on assignment and submit at the end of the block period as per the
format provided.
4.2 Academic Integrity Policy: Students are required to strictly follow academic
honesty and integrity. Copying and plagiarism in any form for any of the assessment
components will result in zero marks.
Course Document

Course Code UC24CSP24


Course Title Data Structures using C++ Lab
Program Code SCS-02
Program Title B.sc-Computer Science
Department Faculty of Computing and IT
Faculty Code 02-FCIT
Faculty Title Faculty of Computing and IT
Department offering the Computer Science
Course
Faculty Member Prof. Teja H
Semester Duration Weeks (1-16) -Teaching, Learning and Continuous
Assessment

Weeks (17-18) -SEE

Weeks (19-20)- Announcement of Results

1. Course Size

Credits L T P Hours/Week
2 0 0 2 2

Total Term/ Semester hours: 30


2. Course Details

2.1 Course Aims and Summary

1. The aim of the "Data Structures Using C" course is to equip students with a solid
foundation in data structures and algorithms using the C programming language. The
course aims to instill a deep understanding of various data structures, their
applications, and the efficient implementation of algorithms for problem-solving.
2. The course also covers file handling, dynamic memory allocation, and sorting
techniques, providing practical insights into real-world applications.

2.2 Course Objectives

The objectives of the Course are:


• Understand the fundamental concepts of data structures.
• Learn the importance of efficient data organization for problem-solving in
computer science.
• Master the manipulation and utilization of arrays and strings in C++
• Develop the ability to create, manipulate, and traverse linked list structures
• Explore the applications of stacks and queues.
• Implement algorithms and understand their relevance in solving problems
• Comprehend the concept of linked lists and their variations.
• Develop file handling skills in C++
• Implement a program to categorize numbers into even and odd and store them
in separate files.
• Understand file structures for storing and retrieving student records.
• Implement a program to manage student information.
• Implement the insertion sort algorithm.
• Compare and contrast insertion sort with other sorting techniques.
• Understand the partitioning and recursive steps in quick sort.
• Understand the divide-and-conquer approach in merge sort.
• Implement linear search for finding an element in a list.
• Understand the linear search algorithm's time complexity
• Implement binary search using recursion.
• Understand the divide-and-conquer approach in binary search.

2.3 Course Outcomes

After undergoing this course students will be able to:


CO1 Understand and explain the fundamental data structures such as arrays,
linked lists, stacks, queues, and trees
CO2 Demonstrate proficiency in manipulating data structures using C language
features.
CO3 Develop efficient algorithms for common programming challenges using C
and data structures.
CO4 Demonstrate proper handling of dynamic memory for data structures.
CO5 Understand and adhere to ethical considerations in data handling and
processing.
CO6 Demonstrate professionalism and responsibility in the use of data structures
in software development

Outcome Map:
COs PO PO PO PO PO PO PO PO PS PS PS
01 02 03 04 05 06 07 08 O1 O2 O3

CO1 1 1 3 3 3 3 1 2 1 3 3
CO2 1 1 3 1 3 3 1 1 1 3 3
CO3 1 1 1 2 3 3 1 1 1 3 3
CO4 1 1 3 3 3 3 1 2 1 3 3
CO5 2 1 3 3 2 2 1 1 1 2 2
CO6 2 1 3 3 2 2 1 1 1 2 2

Relevance: 1 high, 2 medium, 3 low

2.4 Course Content

• PART – A
• Program to find GCD using recursive function
• Program to display Pascal Triangle using binomial function
• Program to generate n Fibonacci numbers using recursive function
• Program to implement Towers of Hanoi
• Program to implement dynamic array, find smallest and largest element of
the array
• Program to create two files to store even and odd numbers.
• Program to create a file to store student records.
• Program to read the names of cities and arrange them alphabetically
• Program to sort the given list using selection sort technique.
• Program to sort the given list using bubble sort technique.

• PART – B
• Program to sort the given list using insertion sort technique
• Program to sort the given list using quick sort technique.
• Program to sort the given list using merge sort technique
• Program to search an element using linear search technique
• Program to search an element using recursive binary search technique
• Program to implement Stack
• Program to convert an infix expression to postfix
• Program to implement simple queue
• Program to implement linear linked list
• Program to display traversal of a tree.

2.5 Course Resources


Text Book/s:

• Ellis Horowitz and Sartaj Sahni: Fundamentals of Data Structures

• References:
• Tanenbaum: Data Structure using C(Pearson Education),seventh edition.
• Kamathane: Introduction to Data Structures(Pearson Education), first edition.
• Y. Kanitkar: Data Structures using C(BPB)
• Kottur: Data Structure using C
• Padma Reddy: Data Structure using C
• Sudipa Mukherjee: Data Structure using C – 1000 Problems and Solutions (McGraw
Hill Education,2007)

3.Teaching and Assessment

3.1 Teaching

Lecture Lecture Topic Lecture Slides Lecture Videos


Number
0 Introduction Lecture-00 Video-00
Issue-Assignment 1 and Assignment-2 Statements
1 Program to find GCD using Lecture-01 Video-01
recursive function
2 Program to find GCD using Lecture-02 Video-02
recursive function
3 Program to display Pascal Lecture-03 Video-03
Triangle using binomial
function
4 Program to display Pascal Lecture-04 Video-04
Triangle using binomial
function
5 Program to generate n Lecture-05 Video-05
Fibonacci numbers using
recursive function
6 Program to implement Lecture-06 Video-06
Towers of Hanoi
7 Program to implement Lecture-07 Video-07
dynamic array, find smallest
and largest element of the
8 Program to create two files to Lecture-08 Video-08
store even and odd numbers.
9 Program to create a file to Lecture-09 Video-09
store student records.
10 Program to read the names of Lecture-10 Video-10
cities and arrange them
alphabetically
11 Program to sort the given list Lecture-11 Video-11
using selection sort
technique.
Quiz -01 and Test-1-Obtain Student Feedback
12 Program to sort the given list Lecture-12 Video-12
using selection sort
technique.
13 Program to sort the given list Lecture-13 Video-13
using bubble sort technique.
14 Program to sort the given list Lecture-14 Video-14
using bubble sort technique.
15 Program to sort the given list Lecture-15 Video-15
using insertion sort technique
Submission of Assignment-1
16 Program to sort the given list Lecture-16 Video-16
using insertion sort technique
17 Program to sort the given list Lecture-17 Video-17
using quick sort technique.
18 Program to sort the given list Lecture-18 Video-18
using quick sort technique.
19 Program to sort the given list Lecture-19 Video-19
using merge sort technique
20 Program to search an element Lecture-20 Video-20
using linear search technique
21 Program to search an element Lecture-21 Video-21
using linear search technique
Quiz -02 and Test -02
22 Program to search an element Lecture-22 Video-22
using recursive binary search
technique
23 Program to search an element Lecture-23 Video-23
using recursive binary search
technique
24 Program to implement Stack Lecture-24 Video-24
25 Program to implement Stack Lecture-25 Video-25
26 Program to convert an infix Lecture-26 Video-26
expression to postfix
27 Program to implement Lecture-27 Video-27
simple queue
28 Program to implement linear Lecture-28 Video-28
linked list
29 Program to display traversal Lecture-29 Video-29
of a tree.
30 Program to display traversal Lecture-30 Video-30
of a tree.
Quiz-03 and Test-03

Submission of Assignment-2

Obtain Student Feedback


Examination Preparation Break
Term/Semester End Examination
3.2 Assessment weight Distribution

Quiz Test Assignment/ SEE Total


Marks
PBL/PrBL
Weights/ 15 25 20 40 100
Course
Outcomes
CO1 4 6 4 7 21
CO2 4 6 4 8 22
CO3 3 6 4 8 21
CO4 2 4 4 8 18
CO5 2 3 4 9 18
CO6

3.3 Schedule of Assessment

Assessment Dates Mark COs Quiz Test Assignme SEE


Type s nt/PBL/

PrBL
Weight 15 25 20 40
Duration 30 min 60 min 6 weeks 3
hours
Quiz-1 5th 6 CO1/
week
CO2
th
Quiz-2 10 5 CO3/
week CO4
Quiz-3 15th 4 CO5/
week CO6
Test-1 5th 10 CO1/
week
CO2
Test-2 10th 8 CO3/
week CO4
Test-3 15th 7 CO5/
week CO6
Assignment- 7th 09 CO
1 week
1-3
th
Assignment- 14 11 CO
2 week
4-6
th
SEE 18 40 All
Week
3.4 Grading Criterion

3.4.1 Based on total marks scored grade is Awarded.


If marks scored is:

3.4.2 91 and above O (outstanding); 81-90 : A+ (Excellent); 71-80: A (Very Good); 61-
70: B+ (Good); 51-60 : B (Above Average); 40 -50: C (Average); below 40: D
(Not satisfactory)
3.4.3 If one scores D grade, the candidate is required to re-register for the course if
he/she wants to earn the credit at his/her own convenience

Attainment Calculations:
Recording Marks and Awarding Grades

S. No. USN Student Quiz Test Assignment SEE Marks Grade


Name (15%) (25%) 20% 40% Scored obtained
1
2
3

N
Total XXXXX

Class Average Marks: Total marks of All Students (XXXX)/ Number of students (N)
Average Grade:

Setting Attainment Targets:

Attainment of Course Outcomes-COs


Outcomes- Targeted Outcomes Level of Observations and
Attainment Remarks
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3

Performance Recording

Acad Progra Semes Sect Course Course Title


emic m: ter ion Code
Year Artificial Intelligence and machine learning
B.Sc., UC24AIC3 Course Tutor/s:
2023 in 3
-24 Artific III A Tutor’s ID/Department:
ial
Intelli
gence
and
Data
Analy
tics
Total Numb Numb Clas O- A+ A B+ B C D
Num er of er of s Grader Graders Grader Grader Grader Gra
ber Stude Studen Ave s s s Grader ders
of nts ts - rage s
stude appear Passed Mar >= 91 81<=M M<
nts in ed for all the ks <=90 71<= 40<= 40
the all the compo M<=8 61<= 51<= M<=5
Class comp nent of 0 M<=7 M<=6 0
onents Exami 0 0
of nation
Asses
sment
60 58 54 58 4 8 10 14 10 8 4

B
Gra
de
CO1- Performance

CO2- Performance

CO3- Performance

CO4- Performance

CO5- Performance

CO6- Performance

Performance Plotting

CO-1 Distribution CO-2 Distribution CO-3 Distribution

CO-4 Distribution CO-5 Distribution CO-6 Distribution


Mapping of Course Outcomes with Program Outcomes

P P P P P P P P P PO PO PO PS PS PS
O1 O2 O3 O4 O5 O6 O7 O8 O9 10 11 12 O1 O2 O3
C 1
O1
C 1
O2
C 2 2
O3
C 2 2
O4
C 1 1
O5
C 1 1
O6

4. Other Details

4.1 Assignment Details or Problem Based Learning


Assignments will be given at the beginning of each block period and students can
continuously work on assignment and submit at the end of the block period as per the
format provided.
4.2 Academic Integrity Policy: Students are required to strictly follow academic
honesty and integrity. Copying and plagiarism in any form for any of the assessment
components will result in zero marks.
Course Document

Course Code UC24CSO21


Course Title OEC-3(Digital Fluency)
Program Code SCS02
Program Title B.sc-Computer Science
Department Faculty of Computing and IT
Faculty Code C
Faculty Title Computing and IT (FCIT)
Department offering the Computers Science
Course
Faculty Member Prof. Shamina M. Attar
Semester Duration Weeks (1-16) -Teaching, Learning and Continuous
Assessment
Weeks (17-18) -SEE
Weeks (19-20)- Announcement of Results

1. Course Size

Credits L T P Hours/Week
3 4 0 0 4

Total Term/ Semester hours: 45

2. Course Details

2.1 Course Aims and Summary


 This course aims to provide students with a solid foundation in key emerging
technologies, including Artificial Intelligence (AI), Machine Learning (ML), Deep
Learning, Database Management, Internet of Things (IoT), Industrial Internet of
Things (IIoT), Cloud Computing, and Cyber Security. The goal is to equip students
with the knowledge and skills needed to navigate and contribute to the dynamic world
of modern technology.
 This course covers the fundamentals of AI, ML, and Deep Learning, emphasizing
definitions, applications, and key algorithms. Database Management principles for
Data Science are explored, along with Big Data Analytics techniques. The course then
delves into IoT and IIoT, addressing sensor networks, communication protocols, and
practical applications, including integration with industrial processes.
 The Cloud Computing module introduces service models, deployment options, and
industry applications. The course concludes with a focus on Cyber Security, covering
fundamentals, risk assessment, security measures, types of cyber attacks, and incident
response strategies. Throughout, students engage in practical exercises and case
studies, with an emphasis on ethical considerations and responsible technology use.
2.2 Course Objectives
The objectives of this course are to:

 Differentiate key emerging technologies: AI, ML, Deep Learning, IoT, Cloud
Computing, and Cyber Security.
 Understand foundational principles and algorithms in AI, ML, and Deep
Learning.
 Utilize relational/non-relational databases, data modeling, and query languages
for effective Data Science.
 Handle and interpret large datasets efficiently for informed decision-making.
 Define IoT and IIoT concepts, analyze sensor networks, and integrate with
industrial processes.
 Introduce Cloud Computing, differentiate service models, and evaluate
deployment options.
 Define Cyber Security fundamentals, assess threats, and implement security
measures.
 Differentiate types of cyber attacks and formulate incident response plans.
 Synthesize knowledge to solve real-world problems and develop critical thinking
skills.
 Discuss and apply ethical considerations in the use of emerging technologies.

2.3 Course Outcomes

After undergoing this course students will be able to:


CO1 Define and distinguish key concepts in Artificial Intelligence (AI), Machine Learning
(ML), and Deep Learning. Explain the applications, definitions, and distinctions of AI,
ML, and Deep Learning. Understand the foundational principles and algorithms
associated with AI, ML, and Deep Learning.
CO2 Demonstrate proficiency in data modeling and query languages. And Apply database
management techniques for effective Data Science.

CO3 Describe challenges associated with handling large datasets. And Apply techniques for
Big Data Analytics.

CO4 Define the Internet of Things (IoT) and Industrial Internet of Things (IIoT).
Integrate IIoT with industrial processes for enhanced automation and efficiency.
Analyze real-world case studies showcasing the transformative impact of IoT and
IIoT.
CO5 Introduce the concept of Cloud Computing. Analyze deployment models: Public,
Private, and Hybrid clouds. Evaluate the scalability, flexibility, and cost-effectiveness
of Cloud Computing. Identify and analyze applications of Cloud Computing in various
industries through case studies.

CO6 Define the fundamentals of Cyber Security, including threats, vulnerabilities, and risk
assessment, Implement security measures and protocols to safeguard digital systems.
And Differentiate types of cyber attacks, including malware, phishing, and DDoS
attacks.

COs PO PO02 PO PO PO PO 06 PO PO 08 PSO1 PSO2 PSO3


01 03 04 05 07
CO1 3 1 1 1 2 1 3 2 3 1 3
CO2 3 3 3 3 1 1 3 3 1 1 3
CO3 1 1 1 3 1 1 1 1 1 1 1
CO4 3 3 1 1 1 1 1 1 1 1 1
CO5 3 3 3 2 2 1 1 1 1 1 L
CO6 2 1 1 2 1 1 1 1 1 1 1
CO7 1 1 1 1 1 1 1 1 1 1 1
CO8 1 1 1 1 1 1 1 1 1 1 1
Outcome Map:

Relevance: 1 high, 2 medium, 3 low

2.4 Course Content

Module1: Foundations of Emerging Technologies:

Introduction to AI, ML, and Deep Learning Definitions, distinctions, and


applications Key principles and algorithms Database Management for Data
Science Relational and non-relational databases, Data modeling and query
languages, Big Data Analytics Handling large datasets, Data visualization and
interpretation.

Module2: Connecting the World - IoT and IIoT:

Internet of Things (IoT) Sensor networks, communication protocols,


Applications and case studies, Industrial Internet of Things (IIoT).Integration
with industrial processes, Enhanced automation and efficiency.

Module3: Cloud Computing:

Introduction to Cloud Computing Service models (IaaS, PaaS, SaaS)


Deployment models (Public, Private, Hybrid) Applications of Cloud
Computing Scalability, flexibility, and cost-effectiveness, Case studies in
various industries.

Module4: Cyber Security in the Digital Age:

Cyber Security Fundamentals Threats, vulnerabilities, and risk assessment,


Security measures and protocols. Types of Cyber Attacks Malware, phishing,
DDoS attacks Incident response and recovery.

2.5 Course Resources


Text Book:
 Gerald Knezek and Rhonda Christensen, Klaus Schwab
 Clayton M. Christensen.

References:
 Susan J. Wegmann and Leslie D. Watkins
 Stuart Russell and Peter Norvig, Thomas Erl, Zaigham Mahmood, and Ricardo Puttini

3. Teaching and Assessment

3.1 Teaching Plan

Lecture Lecture Topic Lecture Lecture


Number Slides Videos
0 Faculty Introduction ,Student Introduction and Lecture-00 Video-00
about Subject
Issue-Assignment 1 and Assignment-2 Statements
1 Overview of AI Lecture-01 Video-01

2 Overview of ML Lecture-02 Video-02


3 Deep Learning Lecture-03 Video-03
4 Definitions Lecture-04 Video-04
5 Distinctions, Lecture-05 Video-05
6 Applications Lecture-06 Video-06
7 Key principles in AI,ML Lecture-07 Video-07
8 Key principles in AI,ML Lecture-08 Video-08
9 Algorithms in AI and ML Lecture-09 Video-09
10 Algorithms in AI and ML Lecture-10 Video-10
11 Key principles and algorithms in AI and ML Lecture-11 Video-11
12 Introduction to Database Management Lecture-12 Video-12
13 Relational Databases Lecture-13 Video-13
Quiz -01 and Test-1-Obtain Student Feedback
14 Non-relational databases Lecture-14 Video-14
15 Data modeling Lecture-15 Video-15
16 Query Languages Lecture-16 Video-16
17 Big Data Analytics Lecture-17 Video-17
Submission of Assignment-1
18 Handling large datasets Lecture-18 Video-18
19 Data visualization Lecture-19 Video-19
20 Data visualization Lecture-20 Video-20
21 Interpretation techniques Lecture-21 Video-21
22 Internet of Things (IoT) Lecture-22 Video-22
23 Concepts and applications Lecture-23 Video-23
Quiz -02 and Test -02
24 Sensor networks Lecture-24 Video-24
25 communication protocols Lecture-25 Video-25
26 Applications Lecture-26 Video-26
27 Case studies in IoT Lecture-27 Video-27
28 Industrial Internet of Things (IIoT) Lecture-28 Video-28
29 Integration Lecture-29 Video-29
30 Automation Lecture-30 Video-30
31 Efficiency Lecture-31 Video-31
32 Introduction to Cloud Computing Lecture-32 Video-32
33 Service models: IaaS Lecture-33 Video-33
34 Service models: PaaS Lecture-34 Video-34
35 Service models: SaaS Lecture-35 Video-35
36 Deployment models: Public, Private, Hybrid Lecture-36 Video-36
clouds
37 Applications of Cloud Computing Lecture-37 Video-37
38 Scalability, flexibility Lecture-38 Video-38
39 Cost-effectiveness Lecture-39 Video-39
40 Case studies in various industries Lecture-40 Video-40
41 Cyber Security Fundamentals Lecture-41 Video-41
42 Threats, vulnerabilities, and risk assessment Lecture-42 Video-42
43 Security measures and protocols Lecture-43 Video-43
44 Types of Cyber Attacks: Malware, phishing, Lecture-44 Video-44
DDoS attacks.
45 Incident response and recovery strategies. Lecture-45 Video-45
Quiz-03 and Test-03
Submission of Assignment-2
Obtain Student Feedback
Examination Preparation Break
Term/Semester End Examination

3.2 Assessment weight Distribution

Quiz Test Assignment/ SEE Total Marks


PBL/PrBL
Weights/ Course Outcomes 15 25 20 40 100
CO1 3 5 3 5 16
CO2 3 5 3 7 18
CO3 3 5 3 7 18
CO4 2 3 3 7 15
CO5 2 3 4 7 16
CO6 2 4 4 7 17

3.3 Schedule of Assessment

Assessment Dates Marks COs Quiz Test Assignment/PBL/ SEE


Type PrBL
Weight 15 25 20 40
Duration 30 60 6 weeks 3
min min hours
Quiz-1 5th 6 CO1/
week CO2
Quiz-2 10th 5 CO3/CO4
week
Quiz-3 15th 4 CO5/CO6
week
Test-1 5th 10 CO1/
week CO2
Test-2 10th 8 CO3/CO4
week
Test-3 15th 7 CO5/CO6
week
Assignment-1 7th 09 CO
week 1-3
Assignment-2 14th 11 CO
week 4-6
SEE 18th 40 All
Week

3.4 Grading Criterion

 Based on total marks scored grade is Awarded.


If marks scored is:
 91 and above O (outstanding); 81-90 : A+ (Excellent); 71-80: A (Very Good); 61-
70: B+ (Good); 51-60 : B (Above Average); 40 -50: C (Average); below 40: D
(Not satisfactory)
 If one scores D grade, the candidate is required to re-register for the course if
he/she wants to earn the credit at his/her own convenience.

Attainment Calculations:
Recording Marks and Awarding Grades

S. USN Student Quiz Test Assignment SEE Marks Grade


No. Name (15%) (25%) 20% 40% Scored obtained

Total XXXXX

Class Average Marks: Total marks of All Students (XXXX)/ Number of students (N)
Average Grade:

Setting Attainment Targets:

Attainment of Course Outcomes-COs


Outcomes- Targeted Outcomes Level of Observations and
Attainment Remarks
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score A grade and
above-1
70% of students will score B+ grade
and Above-2
70% of students will score B grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3
70% of Students will score C grade and
above-1
60% of students will score C grade and
Above-2
50% of students will score C grade and
above-3

Performance Recording

Acad Progr Semest Sect Course Course Title


emic am: er ion Code Internet of Things
Year B.Sc., UC24DSC4
2023 in IV A 6 Course Tutor/s:
-24 Data Tutor’s ID/Department:
Scien
ce
Total Numb Numb Clas O- A+ A B+ B C D
Num er of er of s Grader Graders Grader Grader Grader Grader Gra
ber Stude Studen Ave s 81<= s s s ders
of nts ts - rage >= 91 M<=90 71<= 40<= M<
stude appea Passed Mar M<=8 61<= 51<= M<=5 40
nts in red all the ks 0 M<=7 M<=6 0
the for all compo 0 0
Class the nent of
comp Exami
onents nation
of
Asses
sment
60 58 54 58 4 8 10 14 10 8 4
B
Gra
de
CO1- Performance

CO2- Performance

CO3- Performance

CO4- Performance

CO5- Performance

CO6- Performance
Performance Plotting

CO-1 Distribution CO-2 Distribution CO-3 Distribution

CO-4 Distribution CO-5 Distribution CO-6 Distribution

Mapping of Course Outcomes with Program Outcomes

P P P P P P P P P PO PO PO PS PS PS
O1 O2 O3 O4 O5 O6 O7 O8 O9 10 11 12 O1 O2 O3
C 1
O1
C 1
O2
C 2 2
O3
C 2 2
O4
C 1 1
O5
C 1 1
O6

4. Other Details

4.1 Assignment Details or Problem Based Learning


Assignments will be given at the beginning of each block period and students can
continuously work on assignment and submit at the end of the block period as per
the format provided.
4.2 Academic Integrity Policy: Students are required to strictly follow academic
honesty and integrity. Copying and plagiarism in any form for any of the
assessment components will result in zero marks.

You might also like