0% found this document useful (0 votes)
65 views96 pages

Wa0003

The document outlines the course structures for various subjects including C Programming, Digital Electronics, Computer Organization, Discrete Mathematics, and Applied Statistics. Each course includes details on teaching schemes, credits, prerequisites, objectives, outcomes, and contents. The courses aim to equip students with foundational knowledge and practical skills in their respective fields.
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)
65 views96 pages

Wa0003

The document outlines the course structures for various subjects including C Programming, Digital Electronics, Computer Organization, Discrete Mathematics, and Applied Statistics. Each course includes details on teaching schemes, credits, prerequisites, objectives, outcomes, and contents. The courses aim to equip students with foundational knowledge and practical skills in their respective fields.
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/ 96

Course structure

Course Code BSC10010


Course Category PF
Course Title C Programming
Teaching Scheme and Credits L T Laboratory/ Project Total
Practical
Weekly load hrs
3 - 2 5
Credit 3 1 4

Assessment Scheme Code TL3

Pre-requisites:

1.Basic knowledge of computer programming terminologies


2.Introduction to problem solving
3. Basic knowledge of different business systems

Course Objectives:

1. To develop Problem Solving abilities using computers.


2. To teach basic principles of programming.

3. To develop skills for writing simple programs using ‘C’.

Course Outcomes:
On completion of the course, student will be able to–
1. Students will get the knowledge of basics of C programming.
2. Students will develop problem solving abilities using computers.
3. Students will write simple and moderate ‘C’ programs using decision making statements and
loop control statements.
4. Students will be able to write simple and moderate ‘C’ programs using arrays and strings
5. Students will be able to write simple and moderate ‘C’ programs using user defined functions.
Course Contents:
Unit 1: Introduction to C 10 Hours

Covers history, structure of a C program, Application Areas, C Program development life cycle, Introduces
Data types, Operators, Expressions and all C tokens.

Unit 2: Data Input and Output functions 07 Hours

Covers functions related to character input and output, string input and output and formatted input and
output.

Unit 3: Control Structures 08 Hours

Covers decision making statements, loop control statements, break and continue statements, Menu driven
programs & Jump statements.

Unit 4: Arrays and Strings 10 Hours

Introduction to Array and declaration and initialization of arrays, types of arrays and their advantages and
disadvantages, Declaration and initialization of strings. Use of standard string related library functions and
the operations on string.

Unit 5: Functions in C 10 Hours


Introduction to functions and how to declare and define the user defined functions. Types of parameters in
function call. Data input and output functions

Laboratory Exercises / Practical:


Every student will carry out minimum Six Practical/exercises based on the above units and submit
the journal, which will be evaluated as part of continuous assessment.

Learning Resources:
Reference Books:
1. Problem Solving with C, Harrow Keith,Person Education, 3rd Edition, 2011
2. Programming in ANSI C, E. Balaguruswamy Tata MaGrow Hill,2011
3. The Complete reference to C, Herbert Schildt
Supplementary Reading: 1. The Complete reference to C, Herbert Schildt
Weblinks:
1. www.cprogramming.com/
2. www.w3schools.in/c-tutorial/

Pedagogy:
Participative learning, discussions, algorithm, flowchart & program writing, demonstrations,
practical, assignment.
Course Structure
Course Code BSC10020
Course Category PF

Course Title Digital Electronics

Teaching Scheme and Credits L T Laborato Project Total


ry/Practi
Weekly load hrs.
cal
3 - 2 5
Credit 3 1 4

Assessment code TL3


Pre-requisites:
1. Basic concepts of physics.
2. Basic terms related to Binary number system
3. Fundamentals of Analog & Digital Electronics, Identification of Electronics Components/Too

Course Objectives:

1. To study characteristic features, logic gates.


2. To understand basics of Boolean Algebra
3. To understand basics of designing of combinational circuits
4. To provide in-depth knowledge of scientific and technological aspects of electronics
5. To make use of basic concepts for building different electronic circuits.
6. To understand design procedures of different electronic circuit as per requirement
7. To build experimental setup and test the circuits.
8. To develop skills of analyzing test results of given experiments.

Course Outcomes:
On completion of the course, student will be able to–
1. Study the different number system and arithmetic operations.
2. Study the basics of Boolean algebra and minimizing technique.
3. Analyze & implement Combinational Logic Circuits.
4. Analyze & implement Sequential Logic Circuits.
5. Design Sequential Logic Circuits.

Course Contents:
Unit I: Number Systems and Binary Arithmetic 9 Hours
Introduction to decimal, Binary and hexadecimal number systems and their interconversions, Signed and
fractional binary number representations, BCD, Excess-3 and Gray codes, Rules of binary addition and
subtraction, subtraction using 1’s and 2’s complements.

Lab Session: -

To Study half adder and Full adder


Gray to Binary
Unit II: Boolean algebra and Karnaugh maps 9 Hours
Boolean algebra rules and Boolean laws: Commutative, Associative, Distributive, AND, OR and Inversion
laws, De Morgan’s theorem, Universal gates, Simplifications of Logic equations using Boolean algebra rules
and Karnaugh map (up to 4 bit).

Lab Session: -

Binary to Gray
Interconversion of Logic Gates
Unit III: Introduction to Combinational Circuits 9 Hours
Basic Logic gates (NOT, OR, AND) & derived gates (NAND, NOR, EX-OR) Symbol and truth table, half
adder, full adder, Half subtractor, Four-bit parallel adder.

Multiplexer (4:1), demultiplexer (1:4) and their applications, Code converters - Decimal to binary,
Hexadecimal to binary, BCD to decimal, Concept of Encoder & decoder.

Lab Session: -

To Study 4: 1 Multiplexer and 1 : 4 Demultiplexer


To Study nibble adder and Subtractor circuit
Unit IV: Sequential Circuit: 9 Hours
Flip flops: RS using NAND/NOR, latch, clocked RS, JK, Master slave JK, D and T. Counters:
Asynchronous and Synchronous Counter. Working of 3-bit asynchronous counter up /down
counter with timing diagram. Concept of modulus counters, Decade counter. Shift registers: SISO,
SIPO, PISO, PIPO shift registers, ring counter, Johnson Counter.
Lab Session: -
To study Decade Counter
To study Synchronous Up /Down Counter
Unit V: Designing of Sequential circuits 9 Hours
Concept of Excitation Table, Designing of 3-bit synchronous counter. Designing Random sequence
generator.
Lab Session: -
To Study Random sequence generator
To Study Shift Register
Learning Resources:
Reference Books:
1. Electronic Principles: Albert Malvino, David J Bates, McGraw Hill 7th Edition. 2012
2. A text book of electrical technology: B. L. Theraja, S. Chand and Co.
3. Digital Electronics: Jain R.P., Tata McGraw Hill.
Supplementary Reading:
1. Digital Principles and Applications:Malvino Leach, Tata McGraw-Hill.
2. Digital Fundamentals: Floyd T.M., Jain R.P., Pearson Education
3. A text book of electrical technology: B.L.Theraja, S.Chand and Co.
4. Digital Electronics: Jain R.P., Tata McGraw Hill
Weblinks:
1. https://www.tutorialspoint.com/digital_circuits/index.htm
2. https://www.ni.com/en-in/innovations/white-papers/06/basic-analog-circuits.html

Pedagogy: Participative learning, discussions, algorithm, flowchart & program writing,


demonstrations, practical, assignment.
Course Structure
Course Code BSC20010
Course Category PF
Course Title Computer Organization
Laborato
Teaching Scheme and Credits L T Project Credits
ry
Weekly load hrs.
3 1 - 4
Credit 3 1 4
Assessment Code TT1
Pre-requisites: Basics of Digital Electronics
Course Objectives:
1. To become familiar with computer fundamentals.
2. To understand the design of the various functional units and components of digital computer
3. To explain the function of each element of a memory hierarchy, identify and compare
different methods for computer I/O.
4. To understand the principles of Interfacing I/O devices and Direct Memory accesses

1. Knowledge: (i) Characteristics of computer systems.


(ii) Computer architectures and organizations
2. Skills: (i) Technical and practical skills.
(ii) Soft skills
Course Outcomes:
On completion of the course, student will be able to–
1. Identify and describe the basic structure of computers, including types, functional units,
and the role of software.
2. Explain the organization and functions of the CPU, including registers, instruction cycles,
and RISC vs. CISC architectures.
3. Analyze memory organization techniques, including memory hierarchy, cache mapping,
and main memory mapping.
4. Demonstrate I/O organization concepts, including interfacing, types of I/O transfers, and
the functioning of DMA and UART.
Course Content
Unit I: Basic Structure of Computer ( 7 Sessions)
Computer Types, Functional Units, Basic Operational Concepts, Bus structure, Software, Performance,
Multiprocessing and Multicomputer, Introduction to Assemblers and Compilers. Memory Locations and
Addresses, Memory Operations, Instructions and Instruction Sequencing, Addressing Modes, Examples from
Assembly Language Programming.
Unit II: CPU Organization ( 8 Sessions)
Functions of CPU, General registers used in CPU -PC, SP, instruction pointer, instruction register, instruction
decoder, flag, general purpose registers, memory address register, memory byte register, Concept of stack,
instructions used with stack. Block diagram of ALU, Concept of RISC and CISC Von Naumann and Harvard
Architecture

Unit III: Memory organization ( 15 Sessions)


Concept of Memory, types of memory, parameters of memory, Memory hierarchy, Memory
expansion (capacity and word size), Concept of cache memory, Cache memory mapping techniques
(Associative, Direct and Set Associative) Main Memory Mapping Techniques (Paging and
Segmentation)
Unit IV: I/O Organization: ( 15 Sessions)
Interfacing concept and need, general structure of an interface, block diagram of parallel interface
and function of blocks, Concept of interrupt, Types of I/O transfer, CPU initiated, interrupt initiated,
DMA Block diagram DMA Data Transfer, Working of UART with block diagram, Communication
and Communication Types RS 232 Interrupt.
List of Tutorials: (15 sessions)
Tutorial on Unit 1 : 2 sessions
Tutorial on Unit 2 : 3 sessions
Tutorial on Unit 3 : 5 sessions
Tutorial on Unit 4 : 5 sessions
Learning Resources:

Text Books:
1. "Computer Organization and Design: The Hardware/Software Interface" by David A.
Patterson and John L. Hennessy
2. "Computer Architecture: A Quantitative Approach" by John L. Hennessy and David A.
Patterson
Reference Books:
1. "Computer Organization and Architecture: Designing for Performance" by William
Stallings
2. Digital Design and Computer Architecture 2nd Edition, Harris, Morgan Kauffman
Publishers(Elesevier) ISBN:9789382291527

Supplementary Reading:
 NPTEL & MOOC courses titled Computer organization
 https://nptel.ac.in/courses/106105163/
 https://nptel.ac.in/courses/106103068/

Pedagogy:
 Participative learning,
 Discussions, algorithm, demo using latest tools,
 Experiential learning through practical problem solving, assignment,
 Power Point presentations
Course Structure

Course Code BSC10030


Course Category PF
Course Title Discrete Mathematics
Teaching Scheme and Credits L T Laboratory Project Total
Weekly load hrs /Practical
3 - - 3
Credit 3 3
Assessment Code TT1
Pre-requisites:
Students must have knowledge of Basic Mathematics, logic.
Course Objectives:
1. Knowledge (i) To get a relational understanding of mathematical concepts.
2. Skills (i) To translate information presented verbally into Mathematical form
3. Attitude (i) To get confidence to solve problems on integers, algebra.
Course Outcomes:
On completion of the course, student will be able to–
1. Student will understand basic concepts of Algebra theory.
2. They will be able to solve problems based on permutations, combinations
3. They can find the greatest common divisor by using division algorithm

Course Contents:

Unit I: 06 Hours
Introduction to proofs
Mathematical Logic: Propositional logic, propositional
equivalences, predicates & quantifiers
Rule of inference,
Methods of Proofs: Direct proofs, proof by contraposition,
proof by contradiction
Unit II: 09 Hours
Boolean Algebra
Partial ordered relations, Posets, Meet and join operations, lattices, Complemented Lattice,
Distributive Lattice, Boolean functions and its representation, logic gates, minimizations of circuits
by using Boolean identities and K-map.
Unit III: 10 Hours
Sets, Relations & Functions
Sets: Basics, set operations & Venn Diagrams, Relations: Types of relations, Equivalence Relations,
Equivalence Classes, Transitive Closure, Warshall’s Algorithm, Functions: Functions: one-to-one,
onto, inverse, composition, graphs of some standard functions

Unit IV: 10 Hours


Counting Principle
Basic rules: Addition Rule, Multiplications Rule, Principle of Inclusion & Exclusion, Pigeonhole
principle, Permutations and combinations, Binomial coefficients and Pascal's triangle

Unit V: 10 Hours
Divisibility of Integers – I
Well ordering principle, First and second Principle of Mathematical Induction, Examples, Division
Algorithm (without proof) , Divisibility and its properties, prime numbers, Definition G.C.D and
L.C.M., Expressing G.C.D. of two integers as a linear combination of the two integers.
Learning Resources:
Reference Books:
1. The Art of Programming through algorithm and drawing flowcharts, Firewall Media , 1 st Edition, 2010
2. Problem Solving with C, Harrow Keith , Person Education, 3rd Edition, 2011
3. Programming in ANSI C, E. Balaguruswamy Tata MaGrow Hill,2011
Supplementary Reading: 1. The Complete reference to C, Herbert Schildt
Weblinks:
1. www.cprogramming.com/
2. www.w3schools.in/c-tutorial/
Course Structure
Course Code BSC10040
Course Category PF
Course Title Applied Statistics
Teaching Scheme and Credits L T Laboratory Project Total
Weekly load hrs 2 - - 2
Credit 2 2
Assessment Code TT1
Pre-requisites:
The student must aware about the basic knowledge about use of calculator and integration and
derivatives
Course Objectives:
1. Knowledge: To understand the Basic concepts and terminology in Statistics.
2. Skills: To enhance the student with Basic tools and methods for data analysis such as central
tendency, deviation methods and moments and graphical methods.

Course Outcomes:
On completion of the course, student will be able to–
1. Identify the proper measure of central tendency to use for each level of measurement
2. Apply regression for real life problems
3. Understand how distribution functions are used in statistical analysis
4. Learn various probability distributions

Course Contents:
Unit I: 08 Hours
Descriptive Statistics Sampling Techniques – Data Classification – Tabulation – Frequency and
graphic Representation – Measures of Central Tendency – Measures of Variation – Quartiles and
Percentiles – Moments - Skewness and Kurtosis.

Unit II: 07 Hours


Correlation and Regression Scatter Diagram – Karl Pearson’s Correlation Coefficient – Rank
Correlation - Correlation Coefficient for Bivariate Frequency Distribution – Regression Coefficients
– Fitting of Regression Lines.

Unit III: 10 Hours


Probability Theory Random Experiment – Sample Space – Events – Axiomatic Definition of
Probability – Addition Theorem – Multiplication Theorem – Baye’s Theorem -Applications.
Unit IV: 10 Hours
Distribution Function Continuous and Discrete Random Variables – Distribution Function of a
Random Variable – Probability Mass Functions and Probability Density Functions – Characteristic
Functions – Central Limit Theorems.

Unit V: 10 Hours
Probability Distributions Probability Distributions – Recurrence Relationships – Moment
Generating Functions – Cumulant Generating Functions – Continuous Probability Distributions -
Rectangular Distribution – Binomial Distribution – Poisson Distribution – Continuous Probability
Distributions – Uniform Distribution - Normal Distribution – Exponential Distribution..

Learning Resources:
Reference Books:
1. Gupta, S.C. and Kapoor, V.K.: “Fundamentals of Mathematical Statistics”, Sultan & Chand &
Sons, New Delhi, 11th Ed, 2002.
2. Hastie, Trevor, et al. “The elements of Statistical Learning”, Springer, 2009.
3. Practical Statistics for Data Scientists, 2nd Edition, Peter Bruce, Andrew Bruce and Peter Gedeck,
May 2020
4. Statistics for Machine Learning, By Pratap Dangeti, July 2017

Pedagogy: Participative learning, discussions, demonstrations, practical, assignment.


Course Structure
Course Code BSC20020
Course Category PF
Course Title Database Management System
Teaching Scheme and Credits L T Laboratory Total
Weekly load hrs 3 - 2 5
Credit 3 1 4
Assessment Code TL3
Pre-requisites:
1. Elementary knowledge about computers.
2. Information about different business systems.
3. Basic knowledge of computer programming terminologies
4. Introduction to problem solving.
5. Basic knowledge of different business systems

Course Objectives:
1. To understand data processing using computers.
2. To teach how to draw ERD by collecting a data from user.
3. To provide practical knowledge about how normalize database tables so that you
can design andimplement correct database systems.
4. To develop Problem Solving abilities using computers.

Course Outcomes: On completion of the course, student will be able to–

1. Students will be able to understand how


data management should be done using computer system.
2. Students should practically be able to normalize database tables so that you
can design andimplement correct database systems.
3. Students should be able to collect appropriate data from user for ERD & how
to draw ERD bycollecting a data from user.
4. Students should be able to explore the knowledge of SQL and PLSQL
Course Contents:

Unit I: Introduction of DBMS 4 Hours


Introduction File system Vs DBMS, Data models -relational, hierarchical, network, Levels of
abstraction, Data independence, Structure of DBMS, Users of DBMS

Unit II: Conceptual Design (E-R model) 6 Hours


Overview of DB design
ER data model (entities, attributes, entity sets, relations, relationship sets)
Additional constraints (Key constraints, Mapping constraints, Strong & Weak entities, aggregation
/ generalization)
Conceptual design using ER modeling (entities VS attributes, Entity Vs relationship, binary Vs
ternary, constraints beyond ER)
Case studies

Unit III: Relational data model 6 Hours


Structure of Relational Databases (concepts of a table, a row, a Relation, a Tuple and a key in a
relational database) Conversion of ER to Relational model Integrity constraints (primary key,
referential integrity, unique constraint, Null constraint, Check constraint) Case studies

Unit IV: Relational Database Design 8 Hours

Pitfalls in Relational-Database Design Functional dependencies (Basic concepts, F+, Closure of an


Attribute set, Concept of a Super Key and a primary key) Concept of Decomposition Desirable
Properties of Decomposition (Lossless join & Dependency preservation) Concept of
Normalization-Normal forms (only definitions) 1NF, 2NF, 3NF, BCNF Examples on
Normalization

Unit V: SQL 10 Hours


Introduction, Basic structure, Data types, Language structure (DDL, DML commands), Set
operations, Aggregate functions, Nested Sub queries Modifications to Database. Sql Clauses:
Group By, Order By, Having, Set operations, Aggregate functions in SQL, Control structures,
Nested Sub queries, Views, Stored Functions, Stored Procedures, Cursors, Triggers.

Unit VI: 7 Hours


Transaction and concurrency Concepts
Describe a transaction, properties of transaction, state of the transaction. Executing transactions
concurrently associated problem in concurrent execution. Schedules, types of schedules, concept of
serializability, precedence graph for Serializability. Ensuring Serializability by locks, different lock
modes, 2PL and its variations. Basic timestamp method for concurrency, Thomas Write Rule.
Locks with multiple granularities, dynamic database concurrency (Phantom Problem). Timestamps
versus locking. Deadlock handling methods, Detection and Recovery (Wait for graph). Prevention
algorithms (Wound-wait, Wait-die).

Unit VII: 4 Hours


Crash Recovery
Failure classification, Recovery concepts, Log base recovery techniques (Deferred and Immediate
update), Checkpoints, Recovery with concurrent transactions (Rollback, checkpoints, commit)
Database backup and recovery from catastrophic failure
Laboratory Experiments
1 Use of Structured Query Language to implement DDL, Data Schemas
2 Use of Structured Query Language to implement DML
3 Use of Structured Query Language to implement different Clauses
4 Use of Structured Query Language to implement DCL
5 Use of Structured Query Language to implement Database Joins
6 Use of Structured Query Language to implement Generalization and Aggregation
Learning Resources:
Reference Books:
1. Fundamentals of Database Systems (4th Ed) By: Elmasri and Navathe
2. Database System Concepts (4th Ed) By: Korth, Sudarshan, Silberschatz
RDBMS
Supplementary Readings:
1. Database Management System, Oracle, SQL and PL/SQL (2 nd Ed) By Pranab Kumar Das
Gupta & P. Radhakrishnan
2. An Introduction to Database Systems (8 th Ed ) By C J Date.
Web Links:
1. www.geeksforgeeks.org/dbms
2. www.studytonight.com/dbms
Pedagogy: Participative learning, discussions, algorithm, flowchart & program writing,
demonstrations, practical, assignment.

Course Structure
Course Code BSC10050
Course Category PF
Course Title Microprocessor
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 3 2 5
Credits 3 1 4
Assessment Code TL3
Prerequisites:
Basic of digital electronics, Basic terms related to Microprocessor

Course Objectives:
1. To understand the design of the architecture of 8086 Microprocessor
2. To understand the programming model of 8086
3. To understand how to write an assembly language program.
4. To understand the Advanced Microprocessor
Course Outcomes:
On completion of the course, student will be able to–
1. Understand the block diagram of 8086 Microprocessor
2. Understand the Instruction set of 8086
3. Write an assembly language program
4. Understand the advanced Microprocessor

Course Contents:
Unit 1: 8086 Architecture 10 Hours
Evolution of Microprocessors and types, 8086 Microprocessor, Salient features, Pin descriptions, Architecture
of 8086 - Functional Block diagram, Register organization, Concepts of pipelining (5 stage), Memory
segmentation, Physical memory addresses generation., Minimum mode and Maximum Mode of 8086
Unit 2: Instruction Set of 8086 Microprocessor 15 Hours
Addressing modes, Data transfer instructions, Arithmetic Instructions, Logical Instructions, Bit manipulation
instructions, String Operation Instructions, Program control transfer or branching Instructions, Process control
Instructions, examples based on Instruction Set
Unit 3: 8086 Assembly Language Programming 10 Hours
Introduction to Assembly Programming and Assembler Directive
Assembly program on Addition, Subtraction, Multiplication and Division
Sum of Series
Smallest and Largest numbers from array
Sorting numbers in Ascending and Descending order
Block transfer
String Operations - Length, Reverse, Compare, Concatenation, Copy
Unit 4: Advanced Processor 10 Hours
Introduction to Pentium Processor, Feature of Pentium Pro Processor Architecture of Pentium Pro Processor,
Software Model of Pentium Pro , Pipelining of Pentium Processor , Classification of Advanced Processors
Lab Experiments for Microprocessor
Assembly language program for arithmetic operations
Assembly language program to convert the given decimal number to binary, octal number system
Assembly language program to find the largest and smallest among the given numbers
Assembly language program to arrange the given numbers in ascending and descending order
Assembly language program to find the square of a number
Assembly language program to find sum of an array
Learning Resources:

Reference Books:
1) Microprocessor & interfacing (programming & hardware) Revised Second Edition By Douglas V. Hall
Tata McGraw Hill
2) Microprocessor Architecture By B.Ram
3) Microprocessor Architecture, Interfacing & Programming By Mohammad Raffiqzamman
Supplementary Reading:
1) The Intel Microprocessors : Barry B. Brey- Pearson Education Asia
2) The Pentium Microprocessor : James Antonakos

Weblinks:
1. www.intel.com
2. www.pcguide.com/ref/CPU
3. www.CPU-World.com/Arch/

MOOCs: Online courses for self-learning


Courses by NPTEL and MIT Open Courseware etc
Pedagogy:
o Participative learning
o Discussions
o Demonstrations
o Demonstrations
o Problem solving

Course Structure
Course Code BSC20030
Course Category PM
Course Title Data Structure using C
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 3 2 5
Credits 3 1 4
Assessment Code TL3
Prerequisites:
1. Basic knowledge of computer programming terminologies
2. Knowledge of C Programming language
3. Introduction to problem solving

Course Objectives:
1. To learn the systematic way of solving problems.
2. To understand the different methods of organizing large amounts of data.
3. To efficiently implement solutions for specific problems.
4. To efficiently implement the different data structures.

Course Outcomes:
On completion of the course, student will be able to–
1. Students will learn the systematic way of solving problems.
2. Students will understand the different methods of organizing large amounts of data.
3. Students will get knowledge of linear and non linear data structures.
4. Students will get knowledge of stack and queue, linked list.
5. Students will get knowledge of trees and graphs.
.

Course Contents:
Unit 1: Introduction to data structures 02 Hours
Concept, Data type, Data object, ADT, Need of Data Structure, Types of Data Structure
Algorithm – definition, characteristics, Space complexity, time complexity, Asymptotic notation (Big O,
Omega,Theta)
Unit 2: Searching and Sorting Techniques 04 Hours
Introduction to Arrays - array representation, Searching types -Linear Search, Binary Search, Sorting types -
Selection sort, Bubble sort, Insertion sort
Unit 3: Stacks 03 Hours
Introduction, Static & Dynamic Representation, Operations, Application – Conversion of Infix to Postfix &
Prefix expression, Postfix expression evaluation
Unit 4: Queues 04 Hours
Introduction, Static & Dynamic Representation, Operations, Types of queue – Linear queue, Circular queue,
Dequeue, priority queues, Applications
Unit 5: Linked List 08 Hours
List as a Data Structure, differences with array.
Dynamic implementation of Linked List, internal and external pointers
Types of Linked List – Singly, Doubly, Circular
Operations on Linked List - create, traverse, insert, delete, search, sort, reverse, concatenate, merge, time
complexity of operations. Applications of Linked List – polynomial representation, Addition of two polynomials
Unit 6: Tree 10 Hours
Concept and Terminologies
Types of Binary trees - Binary tree, skewed tree, strictly binary tree, full binary tree, complete binary tree,
expression tree, binary search tree, Heap
Representation – Static and Dynamic
Implementation and Operations on Binary Search Tree - Create, Insert, Delete, Search, Tree traversals–
preorder, inorder, postorder ( recursive implementation), Level-order traversal using queue, Counting leaf,
non-leaf and total nodes, Copy, Mirror.
Applications of trees - Heap sort, implementation , Introduction to Greedy strategy, Huffman encoding
(implementation using priority queue)
Terminology: Balanced trees - AVL Trees, Red Black tree, splay tree, Lexical search tree -Trie
AVL Tree- concept and rotations
Unit 7: Graph 10 Hours
Concept and terminologies
Graph Representation –Adjacency matrix, Adjacency list, Inverse Adjacency list, Adjacency multilist
Graph Traversals – Breadth First Search and Depth First Search (with implementation)
Applications of graph
Topological sorting
Use of Greedy Strategy in Minimal Spanning Trees (Prims and Kruskals algorithm)
Single source shortest path - Dijkstra’s algorithm
Dynamic programming strategy, All pairs shortest path - Floyd Warshall algorithm
Use of graphs in social networks
Unit 8: Hash Table 04 Hours
Concept of hashing
Terminologies – Hash table, Hash function, Bucket, Hash address, collision, synonym, overflow etc.
Hash functions : division function, MID square , folding methods
Collision resolution techniques
● Open Addressing - Linear probing, quadratic probing, rehashing
Chaining - Coalesced, separate chaining

Laboratory Exercises / Practical:


Laboratory Exercises / Practical:
Programs based on Search
Programs based on static implementation of Stack
Programs based on dynamic implementation of Stack
Static implementation of queue
Dynamic implementation of queue
Program with all operations on Binary Search Tree
i. Create ii. Insert iii. Search iv. Delete v. Traversals (preorder,
inorder, postorder) vi. Counting leaf, non-leaf & total nodes

Program to create Adjacency Matrix


Program to convert Adjacency Matrix to Adjacency List

Learning Resources:

Reference Books:
1. Fundamentals of Data Structures ---- By Horowitz Sahani (Galgotia)
2. Data Structures using C --- By ISRD Group (Tata McGraw Hill)
3. Introduction to Data Structures using C---By Ashok Kamthane
4. Data Structures using C --- Bandopadhyay & Dey (Pearson)

Supplementary Reading:
1. Fundamentals of Data Structures ---- By Horowitz Sahani (Galgotia)
2. Data Structures using C --- By ISRD Group (Tata McGraw Hill)
3. Introduction to Data Structures using C---By Ashok Kamthane
4. Data Structures using C --- Bandopadhyay & Dey (Pearson)

Weblinks:
1.
https://www.geeksforgeeks.org/data-structures/
2. https://www.javatpoint.com/data-structure-tutorial
3. https://www.tutorialspoint.com/data_structures_algorithms/data_structures_basics.htm

MOOCs: Online courses for self-learning


Courses by NPTEL and MIT Open Courseware etc
Pedagogy:
o Participative learning
o Discussions
o Demonstrations
o Demonstrations
o Problem solving
Course Structure
Course Code BSC10060
Course Category PF
Course Title Microcontroller

Teaching Scheme Lectures Tutorials Laboratory Project Total


/ Practical
Weekly load hours 3 2 5
Credits 3 1 4
Assessment Code TL3
Prerequisites:
1.Basic knowledge of Digital Electronics
2.Basic knowledge of Microprocessor
3. Basic knowledge of System Bus, Memory Capacity, Addressing Modes
Course Objectives:
1. To understand the Architecture of 8051
2. To understand the Programming model of 8051

3. To learn Interfacing, programming using ‘C’ & applications of 8051

Course Outcomes:
After completion of this course students will be able to:
1. Students will be able to understand the Architecture of 8051
2. Students will be able to understand the Programming model of 8051

3. Students will be able to write simple ‘C’ programs for Interfacing of SSD , ADC , DAC , Stepper
motor , 16X2 LCD
4. Students will be able to understand Arduino UNO
Course Contents:
Unit 1: Introduction to Microcontroller [7]
Difference between Microprocessor & Microcontroller, Features of 8051 , Block diagram of 8051 ,
Pinout of 8051
Unit 2: Programming model of 8051 [8]
Instruction classification, Instruction set, Addressing Modes: Immediate, register, direct, indirect
and relative, assembler directives (org, end), features with example, I/O Bit & Byte programming
using assembly language for LED and seven segment display (SSD)

Unit 3: Timer/Counter, Serial Communication and Interrupts [13]

8051 Timers/Counters, structure of TCON, TMOD, Timer modes, programming for time delay using
mode 1 and mode 2. serial communication, structure of SCON, PCON, Interrupts of 8051, structure of
IE & IP
Unit 4 Interfacing, programming using ‘C' & Applications of 8051 [12]
Interfacing of LED, SSD, ADC, DAC, LCD, stepper motor
Unit 5: Introduction to Arduino UNO [5]
Features of Arduino UNO, Basic blocks of Arduino UNO, Basic Program Structure
Laboratory Exercises / Practical:
S.No. Name of the Experiments
1. Assembly language program for addition, subtraction, multiplication and division of two
numbers
2. Interfacing of SSD
3. Interfacing of LED and Switch
4. Interfacing of Relay and Buzzer
5. Interfacing of 16 × 2 LCD
6. Interfacing of 16 × 2 LCD and 4 × 4 keyboard
7. LED blinking and fading using Arduino UNO
8. LM35 temperature sensor interfacing using Arduino UNO

Learning Resources:

Reference Books:
1. 8051 microcontroller and Embedded system using assembly and C :
Mazidi, Mazidi and McKinley, Pearson publications
2. The 8051 microcontroller – Architecture, programming and applications: K.Uma

Supplementary Reading: 1. The 8051 Microcontroller , Architecture , Programming and Application


by Kenneth J. Aayala

Weblinks:
1. https://www.geeksforgeeks.org/introduction-to-8051-microcontroller/
2. https://www.tutorialspoint.com/microprocessor/microcontrollers_8051_architecture

MOOCs: Online courses for self-learning


Courses by NPTEL and MIT Open Courseware etc
Pedagogy:
o Participative learning
o Discussions
o Algorithm
o Flowchart & program writing
o Demonstrations
o Practical Assignment
o Videos
o Demonstrations
Course structure
Course Code BSC20040
Course Category PM
Course Title OOP using C++
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 3 2 5
Credits 3 1 4
Assessment Code TL3
Prerequisites:
1. Fundamentals of Programming Languages
2. Knowledge of C programming
Course Objectives:
1. To explore the principles of Object-Oriented Programming (OOP).
2. To understand object-oriented concepts such as data abstraction, encapsulation, Inheritance, dynamic
binding, and polymorphism.
3. To use the object-oriented paradigm in program design.
4. To lay a foundation for advanced programming.
5. Provide programming insight using OOP constructs.
Course Outcomes:
After completion of this course students will be able to:
1. Analyze the strengths of object-oriented programming
2. Design and apply OOP principles for effective programming
3. Develop programming application using object-oriented programming language CPP
4. Percept the utility and applicability of OOP
Course Contents:
Unit 1: Introduction to Object Oriented Concepts and CPP: [5]
Object oriented methodology, Features of OOP, OOP Concepts, Data types, Variables, Reference
Variable, Operators, type conversion, Classes & Objects, Classes & Object specifiers, defining data
members and member functions, Array of objects, managing console I/O, C++ stream classes, Formatted
and unformatted console I/O, Usage of manipulators.
Unit 2: Functions in CPP: [5]

Call by values, Call by reference, Function overloading and default arguments, Inline function, Static
class members, Friend functions, Recursive function.

Unit 3: Constructors and Destructor: [3]

Types of constructors, memory allocation (new and delete), usage of destructor


Unit 4: Inheritance: [7]
Types of inheritance with examples, virtual base classes and abstract base classes, constructor and
destructor in derived class, virtual functions and pure virtual functions
Unit 5: Operator overloading: [5]

Overloading unary and binary operators, overloading using friend function, usage of this pointer

Unit 6: Streams and Files: [7]

Streams classes, Stream Errors, Disk File I/O with streams, file pointers, error handling in file I/O with
member function, overloading the extraction and insertion operators, memory as a stream object,
command line arguments, and printer output.

Unit 7: Pointer: [4]


Addresses and pointers. The address of operator and pointer and arrays. Pointer and Faction pointer and
C-types string. Memory management: New and Delete, pointers to objects, debugging pointers.

Unit 8: Virtual Function: [4]

Virtual Function, friend function, Static function, Assignment and copy initialization, this pointer,
dynamic type information.

Unit 9: Exception Handling: [5]

Benefits of exception handling, throwing an exception, the try block, catching an exception, Exception
objects, Exception specifications, Stack unwinding, Rethrowing an exception, Catching all exceptions.

List of Experiments
1. To study Object Oriented Concepts and CPP
2. To study Functions in CPP
3. To study Constructors and Destructor
4. To study Inheritance
5. To study Operator overloading
6. To study Method overloading
7. To study Streams & Files

Learning Resources:

Reference Books:
1. The Complete Reference C++ by Herbert Shildth
2. Object Oriented Programming with C++ by E. Balagurusamy
Supplementary Readings:
1. Object Oriented Modeling and Design by James Rambough
2. Let us C++ by – Yashwant Kanetkar
3. Object Oriented Programming with C++ by Robert Lafore

Web Links:
1. www.geeksforgeeks.org/cplusplus
2. www.tutorialspoint.com/cplusplus
3. www.cplusplus.com

Pedagogy:
Participative learning, discussions, algorithm, flowchart & Program writing, experiential learning
through practical problem solving, assignment, PowerPoint presentation.
Course structure
Course Code BSC20050
Course Category PM
Course Title Web Technologies
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 3 2 5
Credits 3 1 4
Assessment Code TL3
Prerequisites:
1. Basic and fundamental concepts of computers and internet.
2. An intermediate knowledge of the way the web works.
Course Objectives:
1. To provide the basic knowledge for developing of the web pages and web browser.
2. To give basic understanding of HTML and CSS.
3. To understand language basics and lexical structure of JavaScript, JQuery, XML, JSON and AJAX
Course Outcomes:
After completion of this course students will be able to:
1. To enable the students to learn about web page design using HTML and other necessary
components
2. Create and deploy websites that meet specified needs and interests.
3. Knowledge on basics of HTML, HTML tags, tables, frames, CSS and next generation HTML.
4. Develop the web pages, client-side scripts using HTML, CSS, JavaScript, JQuery, XML, JSON
and AJAX
Course Contents:
Unit 1: Introduction to Web Design with HTML [10]
Web Development Introduction-Website, its types, advantages and disadvantages, Internet Protocols,
Scripting Languages.
Features of HTML, Text Formatting tags, Quotation and Definition Tags, Block Level Tags, Div tag,
Anchor tag, Image tag, Lists, Tables, Frames, HTML Forms and Form’s Control, Introduction to HTML5,
Features of HTML5, HTML5Tags – Audio, Video, Canvas.

Unit 2: Introduction to CSS [10]


Introduction to cascading stylesheet, Types of cascading Stylesheet, CSS Properties- Background &
Color, Text, List, Box, Border, Padding, Margin, Font Properties, CSS Advanced(Grouping, Dimension,
Display, Positioning, Floating, Align, Pseudo class, Navigation Bar), Creating page Layout and Site
Design, Overview of CSS3.

Unit 3: JavaScript [10]


Introduction of JavaScript, Advantages and Limitations of JS,JS datatypes, JS identifiers, Variables,
Operators, JS Control Statements Decision Making statements, Iterative Statements, Jump Statements,
Arrays, Strings, Functions, String and Math builtin functions, JS popup boxes (alert, confirm, prompt),
Verification and Validation, Regular expressions, DOM Events (onmouseup, onmousedown, onclick,
onload, onmouseover, onmouseout).

Unit 4: JQuery [7]


JQuery Introduction, Features, How to Install?, Syntax, Selectors, Event Methods, Hide and Show effect,
Fading effect, Sliding effect, Animation effect, Stop Animations effect, Get Content and Attributes, Set
Content and Attributes, Add Elements, Remove Elements, css() method, bind()method

Unit 5: XML [8]


XML Introduction and Overview, XML Syntax, XML Namespaces and Infoset, Document Type
Definitions(DTDs),XML Schemas, Data Modeling, XPATH,XSL, XSLT, XLink, and XPointer,
Document Object Model (DOM), XML and Databases, Simple Object Access Protocol (SOAP).

JSON & Ajax


Introduction and need of JSON , JSON Syntax Rules JSON Data - a Name and a Value, JSON Objects,
JSON Arrays, JSON Files o JSON parsing Introduction to Ajax Ajax Framework Ajax Architecture Web
services and Ajax using JSON and jQuery

Lab Experiment on Web Technologies

To study Web Design with basic HTML tags


To study Web Design with CSS
To study Forms in HTML
To study multimedia control
To study JavaScript

LearningResources:

Reference Books:
1. HTML & CSS: The Complete Reference, Fifth Edition Author: Thomas A. Powell , 2017
2. Beginning HTML, XHTML, CSS and Javascript by Jon Duckett, Wiley India 2010
3. JavaScript and jQuery: Interactive Front-End Web Development 1st Edition: by Jon Ducket, 2014

Supplementary Reading:
1. HTML 5 Black Book : Covers Css3, Javascript, XML, XHTML, Ajax, PHP And Jquery by
Kogent Learning Solutions Inc, Published November 2011 by Dreamtech Press

Weblinks:
HTML:
https://www.javatpoint.com/html-tutorial
https://www.geeksforgeeks.org/html/
CSS:
https://developer.mozilla.org/en-US/docs/Web/CSS
https://www.w3schools.com/css/
https://www.simplilearn.com/tutorials/css-tutorial
JavaScript and jQuery:
https://www.tutorialspoint.com/javascript/index.htm
https://learn.jquery.com/
XML:
https://www.javatpoint.com/xml-tutorial
JSON and AJAX:
https://www.w3schools.com/js/js_json_intro.asp
https://www.w3schools.com/js/js_ajax_intro.asp

MOOCs: Online courses for self-learning


Courses by NPTEL and MIT Open Courseware etc

Pedagogy:
o Blended Learning
o Participative learning
o Creative Assignment
o Discussions
o Demonstrations
o Practical Assignment
o Videos
Course Structure
Course Code BSC10070
Course Category PF
Course Title Number Theory & Calculus
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 3 3
Credits 3 3
Assessment Code TT1
Prerequisites:
1. Students must have knowledge of Basic in, Number theory from trimester I, set theory
Course Objectives:
1. Knowledge (i) To get a relational understanding of mathematical concepts.
2. Skills (i) To translate information presented verbally into Mathematical form
3. Attitude (i) To get confidence to solve problems

Course Outcomes:
On completion of the course, student will be able to–
1. Student will understand basic concepts of Number Theory & Calculus
2. Students can apply concepts learnt in Number Theory & Calculus
Course Contents:
1. Divisibility of Integers – II [06]
Euclidean Algorithm (Without proof). Relatively prime integers, Euclid are Lemma and its
generalization. Congruence relations and its properties, Residue Classes: Definition,
Examples,
addition and multiplication modulo n and composition tables Euler’s and Fermat’s Theorems.
(Without proof)
2. Recurrence Relations:[12]
Recurrence Relations: Introduction, Formation. Linear Recurrence Relations with constant
coefficients. Homogeneous Solutions. Particular Solutions. Total Solutions
3. Continuity and Differentiability [12]
Continuity and Properties of continuous functions defined on [a, b] (Without proof) and
examples.
Differentiability Theorem – Differentiability implies continuity but not conversely. Left hand
Derivative and Right-hand derivative. Intermediate value theorem (without proof). Rolle’s
theorem (without proof and geometric interpretation) Lagrange’s Mean Value Theorem
(without proof and geometric interpretation) Cauchy’s Mean Value Theorem (without proof),
Verification and Application. L’ Hospital’s Rule (without proof)
4. Taylor’s and McLaurin’s series[15]
The nth derivatives of standard functions. Leibnitz’s Theorem (with proof). Taylor’s and
McLaurin’s Theorems with Lagrange’s and Cauchy’s form of remainders (without proof).
Taylor’s and McLaurin’s Series n = 3)
Learning Resources:

Reference Books:
1. Discrete Mathematics Structure – Bernard Kolman, Robert Busby, Sharon Cutler
Ross,
Nadeem-ur-Rehman, Pearson Education, 5th Edition
2. Elements of Discrete Mathematics – C.L. Liu (Tata McGraw Hill)

Supplementary Reading:

1. Calculus and Analytical Geometry- Thomas Finny

Weblink:
https://math.mit.edu/research/pure/number-theory.html
https://byjus.com/maths/number-theory/

Pedagogy:
o Participative learning
o Discussions
o Demonstrations
o Assignment
Course structure
Course Code BSC20070
Course Category PM
Course Title Data Communication and Networking
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 3 2 5
Credits 3 1 4
Assessment Code TL3
Prerequisites:
1. Basic concepts related to Network,
2. Digital Electronics.
Course Objectives:
1. To understand the concept of networking models
2. To understand and get with familiar with protocols and functionality of each layer
3. To learn types of addresses and line coding techniques required in data communication

Course Outcomes:
After completion of this course students will be able to:
1. Students will be able to understand the concept of networking models
2. Students will be able to understand and get with familiar with protocols and functionality of each
layer
3. Students will be able to learn types of addresses and line coding techniques required in data
communication
Course Contents:
Unit 1: Introduction to Computer Networks 4 Hour
Computer Networks -goals and applications
Basic Concepts Signals, Types – Analog and Digital
Guided and Unguided Transmission Media
Protocols and Standards
Network Software Protocol Hierarchies
Connection-oriented and connectionless service
Unit 2 Network Models 9 Hour
OSI Reference Model
TCP/IP Reference Model
Comparison of OSI and TCP/IP model
Addressing Physical, Logical and Port addresses

Unit 3: The Physical Layer 7 Hour


Performance of the Network
Line Coding Characteristics, Line Coding Schemes
Transmission Modes-Parallel Transmission, Serial Transmission
Switching Circuit Switching, Message Switching and Packet Switching
Physical Layer Devices Repeaters, Hubs- active hub Passive hub

Unit 4: The Data Link Layer 8 Hour


Design Issues Services to Network Layer, Flow Control, Error Control, Vertical Redundancy Check
(VRC), Longitudinal Redundancy Check (LRC), Hamming Code , Cyclic Redundancy Check(CRC),
Elementary Data Link Layer Protocols, A Simplex protocol for noisy channel , Sliding Window
Protocols- Piggybacking ,Data Link Layer Protocols: HDLC, PPP, Data Link Layer Devices, Remote
bridges
Unit 5: The Medium Access Sub layer 8 hour
Random Access Protocols
ALOHA, CSMA
CSMA/CD, CSMA/CA
Controlled Access Reservation, Polling and Token Passing
Channelization FDMA, TDMA, CDMA
Unit 6: The Transport Layer 5 Hour
Process-to-Process Delivery
User Datagram Protocol
Transmission Control Protocol (TCP)

Unit 7: The Application Layer 4 Hour


Domain Name System (DNS)
File Transfer Protocol (FTP)
WWW
HTTP

Lab experiments for Data Communication and Networking

1. Creation of desired network cable


2. Peer to Peer communication and sharing the folder between two peers
3. Installation of Operating Systems
4. Peer to Peer communication using Cisco Packet Tracer.
5. Initializing Switch and Router / Connect two different LANs using Router – Build using Cisco
Packet Tracer
6. Build the following topologies using Cisco Packet Tracer:
a) Ring b) Bus c) Mesh d) Star
7. Build the various combinations of hybrid topologies using Cisco Packet Tracer
8. Connect the three routers in ring topology and configure using static routing
9. Switch Configuration using Cisco Packet Tracer
10. Router configuration using Cisco Packer Tracer

Reference Books:
1.Computer Networks by Andrew Tanenbaum, Pearson Education. [4 th Edition]
2.Data Communication and Networking by Behrouz Forouzan, TATA McGraw Hill. [4 th Edition]

Supplementary Reading

1. Networking All In One Dummies Wiley Publication. [5th Edition]


2. Cryptography and network security by Atul kahate , Tata McGraw-Hill Education.[3 rd Edition]
3. Data Communications and Networks: An Engineering Approach, Irvine, Wiley Publication

Web Limks:

1. http://www.computernetworkingnotes.com
2. http://www.cs.utsa.edu
3. http://fmfi-uk.hq.sk

MOOCs: Online courses for self-learning


Courses by NPTEL and MIT Open Courseware etc

Pedagogy:
o Participative learning
o Discussions
o Algorithm
o Flowchart & program writing
o Demonstrations
o Practical Assignment
o Videos
o Demonstrations
Course Structure
Course Code BSC20080
Course Category PM
Course Title Operating System Concepts
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 3 3
Credits 3 3
Assessment Code TT1
Prerequisites:
1. Familiarity with a programming language, preferably C, is essential.
2. A grasp of computer architecture concepts provides a foundation for OS learning.
3. Knowledge of fundamental data structures enhances comprehension of OS principles.
Course Objectives:
1. To make aware of different types of Operating System and their services.
2. To learn different process scheduling algorithms and synchronization techniques to achieve
better performance of a computer system.
3. To understand Memory management Concepts
4. To learn Deadlock and Concurrency concepts.
Course Outcomes:
After completion of this course students will be able to:
1. Understands the different services provided by Operating System at different level.
2. Understands the use of different process scheduling algorithm and synchronization techniques to
avoid deadlock.
3. Summarize the principles of various Memory Management Techniques in Operating Systems.

Course Contents:
Unit 1- Introduction: [8]
Operating Systems Overview- system Overview and Functions of operating systems, Operating system
Operations, Operating system structure, Protection and security, Computing Environments- Traditional,
mobile, distributed, Client/server, peer to peer computing, Open-source operating System, Booting,
Operating System services, System calls Types of System calls and their working.

Unit 2 - Process & CPU Scheduling concept [12]


Process Concept – The processes, Process states, Process control block, Scheduling concept-- Scheduling
queues, CPU scheduler, Scheduling criteria (Terminologies used in scheduling), Scheduling algorithms
(FCFS, SJF, Priority, Round Robin, Multiple queues, multilevel feedback queue)
The Critical-Section Problem , Synchronization Hardware ,Semaphores , Classic problems of
Synchronization ,Critical regions , Monitors.
Unit 3 - Memory Management [12]
Swapping , Contiguous Memory Allocation – Memory mapping and protection, Memory allocation,
Fragmentation, Paging – Basic Method, Hardware support, Protection, Shared Pages, Segmentation –
Basic concept, Hardware, Virtual Memory Management – Background, Demand paging, Performance of
demand paging, Page replacement – FIFO, Optimal, LRU, MFU

Unit 4 - Deadlocks & Concurrent Processing [13]


System model, Deadlock Characterization – Necessary conditions, Resource allocation graph, Deadlock
Methods- Prevention and Deadlock Avoidance - Safe state, Resource allocation graph algorithm, Banker’s
Algorithm, Deadlock Detection, Recovery from Deadlock – Process termination, Resource preemption,
Concurrent processing: Precedence Graph, fork and join, Semaphore
Learning Resources:
Reference Books:
1. Silberschatz, Galvin and Gagne, Operating System Principles, 7th Ed. Addison Wesley.
2. Gary Nutt, Operating Systems, 3rd Ed. Pearson Education, India.
3. Tanenbaum, Modern Operating Systems, PHI.

Supplementary Reading:
1. William Stallings, “Operating System”, Prentice Hall of India, 4th Edition, 2003. 4. Pramod
Chandra P. Bhatt – “An Introduction to Operating Systems, Concepts and Practice”, PHI,
2003..
2. Sumitabha Das, Unix Concepts & Applications: includes SCO UNIX & Linux, Tata McGraw
Hill.
Web Links:

1. https://www.tutorialspoint.com/operating_system/index.htm
2. https://www.geeksforgeeks.org/operating-systems/
3. https://www.studytonight.com/operating-system/

MOOCs: Online courses for self-learning


Courses by NPTEL and MIT Open Courseware etc
Pedagogy:
o Participative learning
o Discussions
o Presentations
o Videos
o Demonstrations
Course Structure
Course Code BSC10080
Course Category PR
Course Title Lab on Python
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 4 4
Credits 2 2
Assessment Code PJ
Prerequisites:
1. Experience with a high level language (C/C++, Java, MATLAB) is suggested.
2. Prior knowledge of a scripting language (Perl, UNIX/Linux shells) and Object-Oriented concepts
is helpful but not mandatory.

Course Objectives:
1. To develop the programming capabilities on Python Data Types, Flow control
2. To develop the programming capabilities on Python Functions, Modules and Packages
3. To learn object‐oriented programs with Python classes

Course Outcomes:
After completion of this course students will be able to:
1. Students will be able to develop the programming capabilities on Python Data Types , Flow control
2. Students will be able to develop the programming capabilities on Python Functions, Modules and
Packages 3. Students will be able to learn object‐oriented programs with Python classes
List of Sample Experiments
1. Python program to find the geometric mean of n numbers
2. Python Program to reverse the order of a given number.
3. Python Program to check if the Substring is present in a Given String
4. Python program to find even numbers from a given sequence using lambda function.
5. Python Program to find the odd numbers from a given list by user using list comprehension.
6. Python program to insert a number to any position in a list
7. Python program to find the roots of a quadratic equation.
8. Write a program to display Fibonacci series upto n terms.
9. Write a function to interchange first and last elements in a list.
10. Write a function to remove the ‘i th’ character from a string.
11. Write a Python program to count Uppercase, Lowercase, special characters and numeric values in
a given string.
12. Python program to check leap year.
13. Define a function that can accept two strings as input and concatenate them and then print it in the
console.
14. Write a program which can map() to make a list whose elements are squares of numbers between
1 and 20 (both included).
15. With two given lists [1,3,6,78,35,55] and [12,24,35,24,88,120,155], write a program to make a
list whose elements are intersections of the above given lists.
16. Write a program to generate and print another tuple whose values are even numbers in the given
tuple (1,2,3,4,5,6,7,8,9,10).

Learning Resources:

Reference Books:
1. David M. Beazley, Python Essential Reference, Fourth Ed., Developers Library.
2. Python in a Nutshell by Alex Martelli (O’Reilly)

Supplementary Reading
1. Learning Python by Mark Lutz and David Ascher (O’Reilly)

Weblinks:
1. https://www.codecademy.com/learn/learn-python
2. https://www.tutorialspoint.com/python
3. https://docs.python.org/3/tutorial/index.html

MOOCs: Online courses for self-learning


Courses by NPTEL and MIT Open Courseware etc
Pedagogy:
o Participative learning
o Discussions
o Algorithm
o Flowchart & program writing
o Demonstrations
o Practical Assignment
o Videos
o Demonstrations
Course Structure
Course Code BSC20100
Course Category PM
Course Title Core Java
Teaching Scheme L T Laboratory Credits
Weekly load hours 3 2 5
Credits 3 1 4
Assessment Code TL3
Prerequisites:
Basic programming knowledge of C and C++, the concept of object-oriented programming.
Course Objectives:

1. To enable the students to understand the core principles of the Java Language and use visual
tools to produce well designed, effective applications and applets.
2. To make students understand and learn the basic Java programming.
3. To make students build desktop-based applications using Java
Course Outcomes:
After completion of this course students will be able to:
At the end of the course student would be able to
1. Analyze different forms of inheritance and
2. complex Java programs, and usage of Container classes
3. Contrast different GUI layouts and design GUI applications
4. Construct a full-fledged Java GUI application, and Applet with database
connectivity
Course Contents:
Unit 1: Introduction:[10]
History, architecture and its components, Java Class File, Java Runtime Environment, The Java Virtual
Machine, JVM Components, The Java API, java platform, java development kit, Lambda Expressions,
Methods References, Type Annotations, Method Parameter Reflection, setting the path environment
variable, Java Compiler And Interpreter, java programs, java applications, main(), public, static, void,
string[] args, statements, white space, case sensitivity, identifiers, keywords, comments, braces and code
blocks, variables, variable name
Data types: primitive data types, Object Reference Types, Strings, Auto boxing, operators and properties
of operators, Arithmetic operators, assignment operators, increment and decrement operator, relational
operator, logical operator, bitwise operator, conditional operator.
Unit 2: Control Flow Statements: [10]
The If...Else If...Else Statement, The Switch...... Case Statement
Iterations: The While Loop, The Do ... While Loop, The For Loop, The Foreach Loop, Labelled
Statements, The Break And Continue Statements, The Return Statement
Classes: Types of Classes, Scope Rules, Access Modifier, Instantiating Objects From A Class, Initializing
The Class Object And Its Attributes, Class Methods, Accessing A Method, Method Returning A Value,
Method's Arguments, Method Overloading, Variable Arguments [Varargs], Constructors, this Instance,
super Instance, Characteristics Of Members Of A Class, constants, this instance, static fields of a class,
static methods of a class, garbage collection.

Unit 3: Inheritance: [10]

Derived Class Objects, Inheritance and Access Control, Default Base Class Constructors, this and super
keywords. Abstract Classes And Interfaces, Abstract Classes, Abstract Methods, Interfaces, What Is An
Interface? How Is An Interface Different From An Abstract Class?, Multiple Inheritance, Default
Implementation, Adding New Functionality, Method Implementation, Classes V/s Interfaces, Defining
An Interface, Implementing Interfaces. Packages: Creating Packages, Default Package, Importing
Packages, Using A Package.
Unit 4: Enumerations, Arrays:[8]

Two Dimensional Arrays, Multi- Dimensional Arrays, Vectors, Adding Elements To A Vector, Accessing
Vector Elements, Searching For Elements In A Vector, Working With The Size of The Vector.
Multithreading: the thread control methods, thread life cycle, the main thread, creating a thread, extending
the thread class.
Exceptions: Catching Java Exceptions, Catching Run-Time Exceptions, Handling Multiple Exceptions,
The finally Clause, The throws Clause
Byte streams: reading console input, writing console output, reading file, writing file, writing binary data,
reading binary data, getting started with character streams, writing file, reading file.

Unit 5: Event Handling: [7]


Delegation Event Model, Events, Event classes, Event listener interfaces, Using delegation event model,
adapter classes and inner classes. Abstract Window Toolkit: Window Fundamentals, Component,
Container, Panel, Window, Frame, Canvas. Components – Labels, Buttons, Check Boxes, Radio Buttons,
Choice Menus, Text Fields, Text, Scrolling List, Scrollbars, Panels, Frames
Layouts: Flow Layout, Grid Layout, Border Layout, Card Layout.

Sample Lab Experiments for Java

1. Write a program to check whether a given number is prime or not.


2. Write a program to accept range from command line argument & print the perfect numbers from
the given range.
3. Write a program to calculate and print the first n Fibonacci numbers. (Accept n from command
line).

4. Write a program to check whether a given text or number is palindrome or not.

5. Write a program to print the following outputs using for loops.

1
12

123

1234

12345

6. Write a program to accept employee information such as Emp_id, Name, Designation and Salary
using parameterized constructors and display the same.
7. Create a class Account with members account no., acc type, cust name, balance & methods
deposit, withdraw & show balance. Write a main class to accept all the details & display all
details.
8. Write a program to accept five elements in an array and find the max and min from given
numbers.

Learning Resources:
Reference Books:
1.The Complete JavaVaishali Shah, Sharnam SPD 2015
2. Core Java, Volume I: Fundamentals Hortsman Pearson 2013
Reference
1. Programming in JAVA, Second Edition, OXFORID Higher Education.
2. Thinking in Java Fourth Edition, Bruce Eckel
3 Introduction to Java programming, Y, Daniel Liang, Pearson Education.
4. Understanding OOP with Java, updated edition, T. Budd, Pearson Education.
Weblinks:
HTML:
https://www.javatpoint.com/html-tutorial
MOOCs: Online courses for self-learning
Courses by NPTEL and MIT Open Courseware etc
Pedagogy:
● Blended Learning
● Participative learning
● Creative Assignment
● Discussions
● Demonstrations
● Practical Assignment
● Videos
Course Structure

Course Code BSC20110


Course Category PM
Course Title Network Security
Teaching Scheme Lectures Tutorials Laboratory Total
Weekly load hrs. 2 2
Credits 2 2
Assessment Code TT1
Pre-requisites:
Basic knowledge of Computer Networks

Course Objectives:
1. To develop a fundamental understanding of computer and network security proper practices, policies, technologies
and standards
2. To understand basic security topics, including symmetric and public key cryptography, digital signatures, hash
functions.
3. Ability to use existing cryptographic utilities to build programs for secure communications.
4. To explore the working principles and utilities of various cryptographic algorithms including secret key
cryptography, hashes and message digests, and public key algorithms
5. To elaborate the requirements of system and email security as well as the concept of authentication.

Course Outcomes:
Students will learn to
1. Identify information security goals, classical encryption techniques and acquire fundamental knowledge on the
concepts of finite fields and number theory.
2. Compare and apply different encryption and decryption techniques to solve problems related to confidentiality and
authentication
3. Apply the knowledge of cryptographic checksums and evaluate the performance of different message digest
algorithms for verifying the integrity of varying message sizes
4. Apply different digital signature algorithms to achieve authentication and create secure applications
5. Apply network security basics, analyze different attacks on networks and evaluate the performance of firewalls and
security protocols like SSL, IPSec, and PGP.
6. Apply the knowledge of cryptographic utilities and authentication mechanisms to design secure applications

Course Contents:

Unit-1 Information Security Concepts [5]


Information Security Overview: Background and Current Scenario Types of Attacks, Goals for Security, E-commerce
Security, Computer Forensics, Steganography, Digital Signatures
Kerberos V4.

Unit-2 Cryptography and Secret Key Cryptography [8]


Introduction to Cryptography / Encryption, Applications of Cryptography, Tools and techniques of Cryptography Block
Encryption, DES rounds, S-Boxes IDEA: Overview, comparison with DES.
Unit-3 Public key Cryptography [10]
Algorithms, examples, Modular arithmetic (addition, multiplication, inverse, and exponentiation) RSA: generating keys,
encryption and decryption. Other Algorithms: PKCS, Diffie-Hellman.
Hash Functions
Length of hash, uses, algorithms (MD2, MD4, MD5, SHS), MD2: Algorithm (Padding, checksum, passes.) MD4.

Unit-4 Authentication [7]


Password Based, Address Based, Cryptographic
Authentication. Passwords in distributed systems, on-line vs offline guessing, storing. Cryptographic Authentication:
passwords as keys, protocols, KDC’s Certification Revocation, Interdomain, groups, delegation.

Learning Resources:
Reference Books:
1. Cryptography and Network Security by Atul Kahate, 2nd Edition, Tata McGraw Hill
2. Cryptography and Network Security by William Stallings, Fifth Edition, Pearson Education.
3. Network Security Essentials (Applications and Standards) by William Stallings Pearson Education.
4. Cryptography: Theory and Practice by Douglas Stinson, CRC Press, CRC Press LLC
Pedagogy:
o Blended Learning
o Participative learning
o Creative Assignment
o Discussions
o Demonstrations
o Practical Assignment
Videos
COURSE STRUCTURE
Corse Code BSC20120
Course Category PM
Course Title Software Engineering
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 2 2
Credits 2 2
Assessment Code TT1
Prerequisites:

Course Objectives:
1. To introduce basics of System Analysis and Design.
2. To develop broad understanding of the discipline of software engineering
3. To explain the importance and working of process models used in software development process.
To introduce an agile environment for software development.
Course Outcomes:
On completion of the course, student will be able to–
1. To the analysis and design of complex systems
2. To apply software engineering principles and techniques to develop, maintain and evaluate large-
scale software systems.
3. To produce efficient, reliable, robust and cost-effective software solutions
4. To work as an effective member or leader of software engineering teams and to understand and meet
ethical standards and legal responsibilities

Course Contents:
Unit 1: System Concepts 05 Hours
1.1 System Definition
1.2 Characteristics of a System : Organization, Subsystem, Interaction,
1.3 Interdependence, Integration, Central objective, Standards, Black- box Elements of a system
Outputs, Inputs, Processor(s), Control, Feedback,
1.4 Environment, Boundaries, Interface
1.5 Physical & Abstract Systems
1.6 Open & Closed Systems,
Computer-based Systems : MIS, DSS
Unit 2: Software and Software Engineering 08 Hours
2.1 The Nature of Software
2.2 Defining Software
2.3 Software Application Domains
2.4 Legacy Software
2.5 Software Engineering, Software Engineering Practice
2.6 The Software Process
2.7 The Essence of Practice

Unit 3: System Development Life Cycle (SDLC) 08 Hours


3.1 Introduction
3.2 Activities of SDLC
3.3 Preliminary Investigation
3.4 Determination of System Requirements
3.5 Design of System
3.6 Development of Software
3.7 System Testing ( Unit Testing, Integration testing, System Testing)
3.8 System Implementation & Evaluation
System Maintenance
Unit 4: An Agile View of Process 09 Hours
5.1 What is Agility?
5.2 What is an Agile Process?
5.3 The Politics of Agile Development
5.4 Human Factors
5.5 Agile Process Models: Extreme Programming, Adaptive Software Development, Dynamic Systems
Development Method
Lean Agile and Safe Agile
Learning Resources:
Reference Books:
Software Engineering: A Practitioner's Approach
1. System Analysis and Design Methods, Whitten, Bentaly and Barlow, Galgotia Publication.7th Edition
2. System Analysis and Design Elias M. Award, Galgotia Publication 2nd Edition
3. Modern System Analysis and Design, Jeffrey A. Hofer Joey F. George Joseph S. Valacich Addison
Weseley
Supplementary Reading:
Weblinks:
1. https://www.tutorialspoint.com/system_analysis_and_design
2. www.studytonight.com/

MOOCs: Online courses for self-learning


Courses by NPTEL and MIT Open Courseware etc
Pedagogy:
o Participative learning
o Discussions
o Demonstrations
o Demonstrations
o Problem solving
Course Structure
Course Code BSC30010
Course Category PR
Course Title Data Analytics
Teaching Scheme Lectures Tutorials Laboratory / Practical Project Total
Weekly load hours - 4 - 4
Credits - 2 - 2
Assessment Code PJ
Pre-requisites:
Basic knowledge of Python programming language.
Familiarity with fundamental concepts of data analysis and statistics.

Course Objectives:
1. Gain proficiency in using Python libraries for data manipulation and visualization.
2. Understand and apply statistical analysis techniques using Python.
3. Learn fundamental machine learning concepts and algorithms.
4. Develop practical skills through hands-on exercises and projects.

Course Outcomes:
1. Proficiency in Data Manipulation
2. Data Visualization and Interpretation Skills
3. Application of Statistical and Machine Learning Techniques

List of Experiments:
1. Acquiring and plotting data.
2. Statistical Analysis – such as Multivariate Analysis, PCA, LDA, Correlation regression and analysis of
variance.
3. Financial analysis using Clustering, Histogram andHeatMap.
4. Time-series analysis – stock market.
5. Visualization of various massive dataset - Finance - Healthcare - Census –Geospatial.
6. Visualization on Streaming dataset (Stock market dataset, weather forecasting).
7. Market-Basket Data analysis-visualization.
8. Text visualization using web analytics.
9. Implement a simple map-reduce job that builds an inverted index on the set of input
10. documents (Hadoop)
11. Process big data in HBase
12. Store and retrieve data in Pig
13. Perform Social media analysis using cassandra
14. Buyer event analytics using Cassandra on suitable product sales data.
15. Using Power Pivot (Excel) Perform the following on any dataset
16. a) Big Data Analytics
b) Big Data Charting

Text Books

1. Python for Data Science by Luca Massaron John & Paul Mueller
2. Let us Python- 6th Edition, by Aditya Kanetkar & Yashavant Kanetkar
Reference Books:

1. Python for Data Analysis" by Wes McKinney


2. "Data Science Handbook: Essential Tools and Techniques" by Jake VanderPlas
3. "Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow" by Aurelien Geron

Web Resources :
1. https://www.youtube.com/watch?v=4SJ7bEILPJk&list=PLLy_2iUCG87CNafffzNZPVa9rW-
QmOmEv
2. https://www.youtube.com/watch?v=Y6vY-fJbwUA&list=PL9ooVrP1hQOH-
yEvwMdMmXbZT1CFx5Bv_
3. https://www.upgrad.com/data-science-pgd-iiitb/

Pedagogy:

Participative learning, discussions, fundamental concepts, Live Demo, Problem Solving Session
Course Structure
Course Code BSC30030
Course Category PM
Course Title Advanced Web Technologies
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 2 2 4
Credits 2 1 3
Assessment Code TL4
Prerequisites:
Basic knowledge of HTML
Course Objectives:
1. To increasing practice of Web-based applications
2. To learn advanced web designing skills, emerging technologies
3. To design and develop fully functional dynamic web applications
Course Outcomes: After completion of this course students will be able to:
1. To create responsive website using Bootstrap
2. Data validation means ensuring that data has the desired structure and content using typescript
3. To add some dynamic aspects to webpage
4. Demonstrate the advance concepts of PHP programming
5. Design web pages with the ability to retrieve and present data from a MySQL database
Course Contents:
Unit 1: Bootstrap [7]
Introduction, Containers, Text/Typography, Colors, Tables, Images, Jumbotron, Alerts, Buttons, Badges,
Progress Bars and Spinners, Pagination, Cards, Dropdowns, Collapse, Navs and Navbar, Carousel, Modal,
Tooltip, Popover, toast.

Unit 2: typescript [8]


Introduction, Features of Typescript, Component of Typescript, Typescript – Environment Setup, Basic
Syntax, Inferred Typing in Typescript, Variable Declaration Types, Tuples, Enum, Nullable, Union (New
types in Typescript), Typescript Decision making conditions, Typescript Function, Inheritance and
Constructor, Static properties and Methods, Abstract Class, Private Constructor, Singletons, Namespace
Modules.

Unit 3: Introduction to PHP [7]


PHP, Language Basics (Data type, defining variable and constant, Operator, Decision Making Statements
& Loop statements), Capturing Form Data, Dealing with Multi-value filed. Array concept, Types of
Arrays- Indexed array, Associative array, Multidimensional array, Array Related Library functions.

Unit 4: Functions, Files and Exception [8]


String concept, Formatting string, Regular expression with functions, String Related Library Functions
Function concept, Passing parameters to function, default parameters, return statement, Recursive
function. File uploads, Exception Handling, Working with JSON data, Object Oriented Programming with
PHP.

Sample Lab Experiments


1. WAMP Installation Server access hello world in PHP
2. To study variables constants and basic programing concept
3. To study Arrays, Strings and Functions
4. To study Object Oriented Programming
5. To study Exception handling and File handling
6. To study State Management and Database Connectivity
7. To study handling email with PHP
Learning Resources:

Reference Books:
1. Steven Holzner, "PHP: The Complete Reference Paperback", McGraw Hill Education (India),
2007.
2. Robin Nixon, "Learning PHP, MySQL, JavaScript, CSS & HTML5", 3rd Edition
Paperback,O'reilly, 2014
Supplementary Reading:
1. Timothy Boronczyk, Martin E. Psinas, "PHP and MYSQL (Create-Modify-Reuse)", Wiley India
Private Limited, 2008.
Weblinks:
Bootstrap:
https://getbootstrap.com/docs/5.2/getting-started/introduction/
Typescript:
https://www.w3schools.com/typescript/
PHP:
https://www.tutorialspoint.com/php/index.htm
MySQL
https://www.javatpoint.com/mysql-tutorial
MOOCs: Online courses for self-learning
Courses by NPTEL and MIT Open Courseware etc
Pedagogy:
o Blended Learning
o Participative learning
o Creative Assignment
o Discussions
o Demonstrations
o Practical Assignment
o Videos
COURSE STRUCTURE
Course Code BSC30090
Course Category PE-1
Course Title Fundamentals of Cyber Security
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load 3 1 0 4
hours
Credits 3 1 0 4
Assessment Code TT1
Prerequisites:
1. Basic and fundamental concepts and importance of information/data, computer networks
and threats.
2. An intermediate knowledge of the way the information usages and network works.
Course Objectives:
This course provides an overview of cybersecurity principles, technologies, and practices.
Students will gain an understanding of the fundamental concepts of cybersecurity, including
threat landscape, risk management, cryptography, network security, secure software
development, and incident response.
Course Outcomes:
After completion of this course students will be able to:
1. Understand the principles and concepts of cybersecurity.
2. Identify common cyber threats and vulnerabilities.
3. Implement basic security measures to protect information systems.
4. Apply cryptography techniques to secure data and communications.
5. Analyze and evaluate security risks and develop mitigation strategies.
Course Contents:
Unit 1: Foundations of Cybersecurity[12]

● Overview of cybersecurity concepts, History of cybersecurity, Cybersecurity threats


and attack vectors, Legal and ethical considerations in cybersecurity

Unit 2: Risk Management and Security Governance[12]

● Risk assessment and management, Security policies, standards, and procedures,


Compliance and regulatory requirements, Security governance frameworks (e.g.,
NIST, ISO)

Unit 3: Cryptography and Data Protection[12]

● Basic principles of cryptography, Symmetric and asymmetric encryption, stream vs.


block cipher, Caser cipher, transposition cipher, one time pad, DES algorithm, RSA
algorithm, Elgamal cryptosystem, basics of ECC,
● Hash functions and digital signatures: MD5, SHA-1
● Public key infrastructure (PKI)

Unit 4: Network Security[12]

● Network threats and vulnerabilities, Firewalls and intrusion detection/prevention


systems, Virtual Private Networks (VPNs), Wired vs Wireless security, Wireless
network security concepts, wireless network threats and security solution.

Unit 5: Secure Software Development and Incident Response[12]

● Software security fundamentals, Secure coding practices, Secure software development


lifecycle (SDLC), Threat modeling and security testing, Incident response planning and
procedures, Incident detection, analysis, and containment, Business continuity and
disaster recovery planning, Post-incident lessons learned and improvements
LearningResources:
Reference Books:
1. Cybersecurity: The Beginner's Guide" by Dr. Ronald L. Krutz and Dr. Russell Dean
Vines, Syngress, 1st Edition, 2016, ISBN-10: 0128054756, ISBN-13: 978-0128054756
2. The Basics of Information Security: Understanding the Fundamentals of InfoSec in
Theory and Practice" by Jason Andress, Syngress, 2nd Edition, 2014, ISBN-10:
0128007440, ISBN-13: 978-0128007448
3. Cryptography and Network Security: Principles and Practice" by William
Stallings, Pearson, 8th Edition, 2020, ISBN-10: 0135764719, ISBN-13: 978-
0135764711
4. "Network Security Essentials: Applications and Standards" by William
Stallings, Pearson, 7th Edition, 2017, ISBN-10: 013452733X, ISBN-13: 978-
0134527338
5. "Software Security: Building Security In" by Gary McGraw, Addison-Wesley
Professional, 1st Edition, 2006, ISBN-10: 0321356705, ISBN-13: 978-0321356703
Website references
● https://www.cisa.gov/
● https://owasp.org/
● https://www.nist.gov/cyberframework
● https://www.iso.org/isoiec-27001-information-security.html
● https://crypto101.io/
● https://www.sans.org/
● https://owasp.org/
Pedagogy:
● Blended Learning
● Participative learning
● Creative Assignment
● Discussions
● Demonstrations
● Practical Assignment
● Videos
COURSE STRUCTURE
Course Code BSC30100
Course Category PE-I
Course Title Introduction to Data Science
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 3 1 - - 4
Credits 3 1 - - 4
Assessment Schema Code TT1
Prerequisites:
1. Basic knowledge of any programming language
Course Objectives:
1. Basic understanding of Data Science and Python
2. An applied understanding of working with packages used for Data Science.

Course Outcomes:
After completion of this course students will be able to:

1. After completion of this course students will be to understand the steps involved in Data Science,
Basics of Python and how python can be used to perform data processing.
Course Contents:
Syllabus
UNIT – I [12]
Introduction: Definition of Data Science- Big Data and Data Science hype – and getting past the hype-
Datafication - Current landscape of perspectives - Statistical Inference - Populations and samples –
Statistical modeling, probability distributions, fitting a model–Overfitting. Basics of R: Introduction,R-
Environment Setup, Programming with R, Basic DataTypes.

UNIT - II
Data Types & Statistical Description [12]

Types of Data: Attributes and Measurement, What is an Attribute? The Type of an Attribute, The
Different Types of Attributes, Describing Attributes by the Number of Values, Asymmetric Attributes,
Binary Attribute, Nominal Attributes, Numeric Attributes, Discrete versus Continuous Attributes. Basic
Statistical Descriptions of Data: Measuring the Central Tendency: Mean, Median, and Mode, Measuring
the Dispersion of Data: Range, Quartiles, Variance, Standard Deviation, and Inter- quartile Range,
Graphic Displays of Basic Statistical Descriptions of data.

UNIT – III [12]


Vectors: Creating and Naming Vectors, Vector Arithmetic, Vector subsetting, Matrices: Creating and
Naming Matrices, Matrix Subsetting, Arrays, Class .
Factors and Data Frames: Introduction to Factors: Factor Levels, Summarizing a Factor,Ordered
Factors, Comparing Ordered Factors, Introduction to Data Frame, subsetting of Data Frames, Extending
Data Frames, Sorting Data Frames.
Lists: Introduction, creating a List: Creating a Named List, Accessing List Elements, Manipulating List
Elements, Merging Lists, Converting Lists to Vectors

UNIT – IV [12]
Conditionals and Control Flow: Relational Operators, Relational Operators and Vectors, Logical
Operators, Logical Operators and Vectors, Conditional Statements.
Iterative Programming in R: Introduction, WhileLoop, ForLoop, Looping Over List.
Functions in R: Introduction to writing function in R, Nested Functions, Function Scoping, Recursion,
Loading an R Package, Mathematical Functions in R.

UNIT – V [12]
Data Reduction: Overview of Data Reduction Strategies, Wavelet Transforms, Principal Components
Analysis, Attribute Subset Selection, Regression and Log-Linear Models: Parametric Data Reduction,
Histograms, Clustering, Sampling, Data Cube Aggregation.
Data Visualization: Pixel-Oriented Visualization Techniques, Geometric Projection Visualization
Techniques, Icon-Based Visualization Techniques, Hierarchical Visualization Techniques, Visualizing
Complex Data and Relations.
Learning Resources:
TEXT BOOKS:
1. Doing Data Science, Straight Talk from The Frontline. Cathy O’Neil and Rachel Schutt,
O’Reilly, 2014
2. Jiawei Han, Micheline Kamber and Jian Pei. Data Mining: Concepts and Techniques, 3rd ed. The
Morgan Kaufmann Series in Data Management Systems.
3. K G Srinivas, G M Siddesh, “Statistical programming in R”, Oxford Publications.
REFERENCE BOOKS:
1. Introduction to Data Mining, Pang-Ning Tan, Vipin Kumar, Michael Steinbanch, Pearson
Education.
2. Brain S. Everitt, “A Handbook of Statistical Analysis Using R”, Second Edition, 4 LLC, 2014.
3. Dalgaard, Peter, “Introductory statistics with R”, Springer Science & Business Media, 2008.
4. Paul Teetor, “R Cookbook”, O’Reilly, 2011.
Web Resources:
MOOCs: Online self-learning courses:
https://www.coursera.org/
https://www.edx.org/
Pedagogy:
1. Participative learning,
2. Problem solving,
3. Assignments,
4. Tutorial
Course Structure
Course Code BSC30110
Course Category PE - I
Course Title Introduction to blockchain ecosystem
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load 3 1 - 4
hours
Credits 3 1 - 4
Assessment Code TT1
Prerequisites:
1. Basic knowledge of computer security
2. Basic knowledge of cryptography, networking
3. Basic knowledge of concurrent or parallel programming would help a student to
understand the topics.
Course Objectives:
1. Familiarise the functional/operational aspects of cryptocurrency ECOSYSTEM.
2. Understand emerging abstract models for Blockchain Technology.
3. Identify major research challenges and technical gaps existing between theory and practice
in cryptocurrency domain
Course Outcomes:
After completion of this course students will be able to:
1. Explain the fundamental concepts of blockchain technology, including distributed
ledger systems, decentralization, immutability, and consensus mechanisms.
2. Describe the role of cryptography in securing blockchain transactions.
3. Be familiar with popular blockchain platforms like Ethereum and Hyperledger Fabric.
Gain the ability to develop or deploy smart contracts, self-executing programs on a
blockchain.
4. Identify key components of the blockchain ecosystem (e.g., miners, nodes, wallets,
smart contracts)
Course Contents:
Unit 1: Introduction [10]
Background of blockchain and basic cryptography: hash functions, digital signatures,
asymmetric encryption.

Unit 2: Bitcoin Blockchain [10]


Bitcoin and cryptocurrency technologies: bitcoin’s consensus mechanism (i.e. Proof of Work)
and its security achievement as a combination of technical methods and incentive engineering.
Unit 3: Ethereum blockchain [10]
Ethereum protocol and payment model for code execution, Smart contract: design and
implementation, Decentralized Applications (DAPP): design and implementation
Unit 4: Advanced blockchain technology[10]
Alternative data structure to Bitcoin’s blockchain: directed acyclic graph (DAG) 7. Proof-based
consensus algorithms: proof of stake, proof of burn, proof of elapsed time, proof of luck. 8.
Voting-based consensus algorithms: byzantine fault tolerance algorithms. 9. Case study:
enterprise-level blockchains such as Hyperledger and Ripple
UNIT 5: Tokens [10]

Currency, Token, Tokenizing, Campuscoin, Coindrop as a strategy for Public adoption,


Currency Multiplicity, Demurrage currency
Unit 6: Privacy, Security issues in Blockchain [10]
Pseudo-anonymity vs. anonymity, Zcash and Zk-SNARKS for anonymity preservation, attacks
on Blockchains – such as Sybil attacks, selfish mining, 51% attacks - -advent of algorand, and
Sharding based consensus algorithms to prevent these

Learning Resources:

Reference Books:
1. Narayanan, Arvind, et al. Bitcoin and cryptocurrency technologies: a comprehensive introduction.
Princeton University Press, 2016. (pdf available on-line)
2. Academic papers and blockchain project whitepapers related to the above topics
Supplementary Reading:
1. Mastering Blockchain: Inner workings of blockchain, from cryptography and
decentralized identities, to DeFi, NFTs and Web3, 4th Edition

Weblinks:
1. https://simplilearn.com/tutorials/blockchain-tutorial/blockchain-technology
2. https://www.ibm.com/topics/blockchain
MOOCs: Online courses for self-learning
Courses by NPTEL and MIT Open Courseware etc
Pedagogy:
● Blended Learning
● Participative learning
● Creative Assignment
● Discussions
● Demonstrations
● Practical Assignment
● Videos
COURSE STRUCTURE
Course Code BSC30040
Course Category PM
Course Title Advance Java Programming
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 3 2 5
Credits 3 1 4
Assessment Code TL3
Prerequisites:
1. Basic concepts of computers and the internet.
2. An intermediate knowledge of the way the web works.

Course objective:
To enable the students to design and develop enterprise strength distributed and multitier
applications – Using Java Technology.

Course Outcomes:
After completion of this course students will be able to:
1. Understand OOP concepts to apply basic Java constructs.
2. Analyze different forms of inheritance and usage of Exception Handling
3. Understand the different kinds of file 1/0, Multithreading in complex Java programs, and usage
of Container classes
4. Contrast different GUI layouts and design GUI applications
5. Construct a full-fledged Java GUI application, and Applet with database connectivity
Course Contents:
Unit 1: Collection and Generic : [10]
Introduction to Generics , Generics Types and Parameterized Types, Wild Cards, Java Collection
Framework, Collections (Basic Operations, Bulk Operations, Iteration) List, Set, Maps
Lambda Expressions - Lambda Type Inference, Lambda Parameters, Lambda Function Body, Returning
a Value, From a Lambda Expression, Lambdas as Objects.
Self-learning topics Collection Queues and Arrays
Unit 2: Introduction Java EE Programming : [10]
JSP Architecture, JSP building blocks, Scripting Tags ,implicit object, Introduction to Bean, standard
actions, session tracking types and methods. Custom Tags, Introduction to JSP Standard Tag Library
(JSTL) and JSTL Tags.

Unit 3: Spring Frameworks: : [10]


Introduction to Spring Framework, POJO Programming Model, Lightweight Containers(Spring IOC
container, Configuration MetaData, Configuring and using the Container) Dependency Injection with
Spring- Setter Injection, Constructor Injection, Circular Dependency, Overriding Bean, Auto Wiring Bean
Looksup, Spring Manage Beans)
Self learning topics Bean Definition Profiles
Unit 4: Spring and AOP [8]
Aspect Oriented Programming with Spring, Types of advices, Defining Point Cut Designator,
Annotations.
Self learning topics AspectJ

Unit 5: JDBC Data Access with Spring [7]


Managing JDBC Connection, Configuring Data Source to obtain JDBC Connection, Data Access
operations with Jdbc Template and Spring, RDBMS operation classes , Modelling JDBC Operations as
Java Objects
Self learning topics JDBC Architecture and basic JDBC Program using DML operation

List of Sample Experiments:


1. Collection: Write a program to Swap two elements in a linked list.
2. Write a program to Remove all elements from a linked list.
3. Write a program to update an array list element of Months (January,
February, March, April, May, June, July) and insert October at 2nd position
into the given list.
4. Write a program to join two Array List into one single Array List.
5. JDBC: Write a JDBC program to perform the mentioned operations using
MySQL8 on the table telephone which contains (tno, cust-name, addr, bill)
: Search, Insert, Update, Delete
6. Multithreading: Simple Multithreading program with two classes Morning
and Night having run() for displaying good morning and Good night
message from the Driver class having main method
7. Simple Example one of Synchronization
8. Example two of Synchronization
9. Having “withdraw” and “deposit” methods inside the class “Bank” and
accessed them from the driver class “BankDriver” by creating an object
“obj” of Bank class.

Learning Resources:
TEXT BOOKS:
1. Elliotte Rusty Harold, “ Java Network Programming”, O’Reilly publishers, 2000 (UNIT II)
2. Ed Roman, “Mastering Enterprise Java Beans”, John Wiley & Sons Inc., 1999.( UNIT III and UNIT V)
3. Hortsmann & Cornell, “CORE JAVA 2 ADVANCED FEATURES, VOL II”, Pearson
Education, 2002. (UNIT I and UNIT IV)
List of References
1. Java 8 Programming, BlackBook, DreamTech Press, Edition 2015
2. Core Java 8 for Beginners, Sharanam Shah, Vaishali Shah, Third Edition, SPD
3. Web reference: http://java.sun.com.
4. Patrick Naughton, “COMPLETE REFERENCE: JAVA2”, Tata McGraw-Hill, 2003
5. Effective Java" by Joshua Bloch
6. Head First Java" by Kathy Sierra and Bert Bates
Web References
1.https://www.geeksforgeeks.org
2. https://www.javatpoint.com
3. https://www.tutorialspoint.com

MOOCs: Online courses for self-learning


Courses by NPTEL and MIT Open Courseware etc

Pedagogy:
1. Blended Learning
2. Participative learning
3. Creative Assignment
4. Discussions
5. Demonstrations
6. Practical Assignment
7. Videos
Course structure
Course Code BSC30050
Course Category PM
Course Title Introduction to AI and ML
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 3 2 5
Credits 3 1 4
Assessment Code TL3
Prerequisites:
1. Basic and fundamental concepts of python.
2. An intermediate knowledge of the algorithm design and complexity analysis.
Course Objectives:
1. To familiarize students with the fundamental concepts, theories, and applications of artificial
intelligence.
2. Students will gain insight into the various subfields of AI, such as machine learning, deep learning,
regression, classification, and clustering.
3. To introduce students to the basics of Python programming, enabling them to write code, solve
problems, and understand programming constructs for AI.
4. Emphasizes building a programming foundation as a prerequisite for implementing AI algorithms.

Course Outcomes:
After completion of this course students will be able to:
1. Students will have a clear understanding of the fundamental concepts and terminology of
Artificial Intelligence, enabling them to discuss and comprehend AI-related topics.
2. Evaluate the performance of predictive and classification models using supervised learning
methods.
3. Evaluate the performance of unsupervised learning methods for clustering.
4. Students will be proficient in writing Python programs towards deep learning network
implementation, understanding syntax, and applying programming constructs.

Course Contents:
Unit 1: Fundamentals of Artificial Intelligence and Machine Learning [9]
Definition, Future of Artificial Intelligence, Characteristic of Intelligent Agents, Typical Intelligent
Agents, Problem Solving Approach to Typical AI problems, Problem solving by Searching: Uninformed
and informed strategies and implementation, Path planning, Constraint Satisfaction Problems (CSP).

Unit 2: Knowledge Representation [9]


Logical Agents, Propositional and first order Predicate logic, inference, Knowledge representation and
Automated Planning, Uncertain Knowledge and Reasoning, Quantifying uncertainty, probabilistic
reasoning.

Unit 3: Supervised Learning (Regression Analysis and Classification) [9]


Linear regression, Non-linear regression, LASSO, RIDGE, Evaluation metrics – R Squares, RMSE, MSE.
Logistic Regression, KNN, Decision Tree, Random Forest, Evaluation metrics – ROC, confusion matrix,
precision, recall, F1 Score.

Unit 4: UnSupervised Learning (Clustering) [9]


Parameter-Distance measures, Number of clusters, Partitional - K-Means and K-medoids, Hierarchical
Clustering – Agglomerative and Divisive, DBSCAN.

Unit 5: Deep Learning [9]


Introduction to ANN, Multilayer Perceptron (MLP), Activation Functions including sigmoid, ReLU,
Softmax, Regularization - dropout, kernel, convolution, feature map, pooling, fully connected layers,
CNN, CNN architectures including VGGs, Alexnet, ResNets.

LAB Work on Machine Learning


1. Implementation (in python) of Regression models such as Linear Regression, Non-linear Regression.
2. Implementation of Classification models such as Logistic Regression, Decision Tree, and Random.
3. Implementation of Clustering Techniques such as K-Means, and Hierarchical Clustering.
4. Transfer Learning of CNN Architectures: VGG16 and VGG19.
5. Transfer Learning of CNN Architectures: ResNet50 and ResNet101.

LearningResources:

Reference Books:
1. “Artificial Intelligence: A Modern Approach”, S. Russell and P. Norvig, Prentice Hall.
2.“Introduction to MACHINE LEANING”, Fourth Edition, Ethem Alpaydin, MIT Press, 2020.
3.“Fundamentals of Machine Learning for Predictive Data Analytics: Algorithms, Worked Examples,
and Case Studies” 1st Edition, John D. Kelleher, Brian Mac Namee, and Aoife D'Arcy, MIT Press,
2015.

Supplementary Reading:
1.“Introduction to Machine Learning with Python: A Guide for Data Scientists”, Andreas Muller,
2016.
2. “Python GUI programming Cookbook”, Burkahard A Meier, PacktPublication, 2nd Edition.

Weblinks:
https://www.coursera.org/learn/machine-learning-duke
https://onlinecourses.nptel.ac.in/noc23_cs18/preview
https://developers.google.com/machine-learning/crash-course/ml-intro
https://www.geeksforgeeks.org/data-visualization-with-python/
https://www.simplilearn.com/tutorials/python-tutorial/data-visualization-in-python
https://www.coursera.org/learn/python-for-data-visualization

https://www.geeksforgeeks.org/regression-in-machine-learning/
https://builtin.com/data-science/regression-machine-learning
https://www.coursera.org/learn/supervised-machine-learning-regression

https://monkeylearn.com/blog/classification-algorithms/
https://www.datacamp.com/blog/classification-machine-learning
https://builtin.com/data-science/supervised-machine-learning-classification

https://www.geeksforgeeks.org/clustering-in-machine-learning/
https://www.datacamp.com/blog/clustering-in-machine-learning-5-essential-clustering-algorithms

MOOCs: Online courses for self-learning


Courses by NPTEL, Coursera and MIT Open Courseware etc.

Pedagogy:
o Blended Learning
o Participative learning
o Creative Assignment
o Discussions
o Demonstrations
o Practical Assignment
o Videos
Course Structure
Course Code BSC30060
Course Category PR
Course Title Mobile Application Development
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load - - 2 6 08
hours
Credits 1 2 3
Assessment Code PJ

Prerequisites:
1. Foundational knowledge in computer science and software development.

Course Objectives:
1. To facilitate students to understand android SDK.
2. To help students to gain a basic understanding of Android application development.
3. To inculcate working knowledge of Android Studio development tool

Course Outcomes:
After completion of this course students will be able to:
1. To understand the design and features of the Android OS, including the Android
development framework and SDK features.
2. Ability to measure device and pixel density independently through Android User
Interface
3. Ability to use Intents to launch Activities, both explicitly and implicitly, and pass data
between them.
4. To Manage shared preferences to save and retrieve data across application sessions.
5. To Create and manipulate tables within a SQLite database
Lab work on Mobile Application Development

1. Create an Android application that shows Hello+name of the user and run it on an
emulator.
2. Develop an application that uses GUI components, Font and Colours
3. Write an application that draws basic graphical primitives on the screen
4. Develop a native calculator application.
5. Create a screen that has input boxes for User Name, Password, Address, Gender (radio
buttons for male and female) , Age(numeric), Date of Birth (DatePicket), State(Spinner)
and a Submit button. Onclicking the submit button, print all the data below the Submit
Button. Use (a) Linear Layout (b) Relative Layout and (c) Grid Layout or Table Layout.
6. Develop an application that makes use of databases
7. Develop an application that makes use of Notification Manager
8. Develop a native application that uses GPS location information
LearningResources:
Reference Books:
1. Professional Android4 Application Development by RetoMeier,
WileyIndia,(Wrox),2012.
2. Android Application Development for JavaProgrammers by JamesCSheusi, Cengage
Learning, 2013.
Supplementary Reading:
1. Beginning Android4 Application Development by Wei-MengLee, Wiley
India(Wrox),2013.
2. Android Wireless Application Development by Lauren Darcey and Shane Conder,
Pearson Education, 2nd ed. ,2011
Weblinks:
https://flutter.dev/
https://developer.android.com/guide
MOOCs: Online courses for self-learning
Courses by NPTEL and MIT Open Courseware etc
Pedagogy:
● Blended Learning
● Interactive Lectures
● Participative learning
● Creative Assignment
● Demonstrations
● Videos
Course Code BSC30120
Course Category PE-II
Course Title Cyber Law & IT Act
Teaching Scheme Lectures Tutorial Laboratory Total
3 1 - 4
3 1 4
Assessment Code TT1
Pre-requisites: Knowledge of Cyber Security practices

Course Objectives:
1. To learn different cyber laws
2. To know what cyber stalking is.
3. To understand security concepts

Course Outcomes:
On completion of the course, student will be able to–
1. Get the knowledge of cyber security – threats, detection and prevention and cyber laws
and provisions.
2. Students will understand the complexities involved in cases pertaining to technology.
3. Students will get the information to reconcile the incompatibility between the ever-
changing technology and the stable law.

Syllabus:
Unit -1 Cyberspace and the Law: Concept and Legal Determination [15]
Evolution of law in Cyberspace, Insurance and the Internet, Intellectual Property in Cyberspace, at least
two case studies on each, Article –At least one topic, Recent laws and trends

Unit-2: Information Technology Act 2000 [15]


Electronic Governance, Attribution, Acknowledgement and Dispatch of Electronic Records, Secure
electronic Records and Secure Digital Signatures, Regulation of certifying Authorities, Duties of
Subscribers, Case studies.

Unit-3 : Information Security Concepts [15]


Information Security Overview: Background and Current Scenario, Types of Attacks, Goals for
Security, E- commerce Security, Computer Forensics, Steganography
Unit-4 Security Threats and Vulnerabilities[15]
Overview of Security threats, Weak / Strong Passwords and Password Cracking, Insecure Network
connections, Malicious Code, Programming Bugs, Cybercrime and Cyber terrorism, Information Warfare
and Surveillance
Learning Resources:
1. Cyber Law in India — Dr. Farooq Ahmad (Published By- Pioneer Books)
2. Guide to Cyberlaws — Rodney D.Ryder(Published By - Wadhwa Nagpur)
3. Cyber Laws — Justice Yatindra Singh
4. Cybersecurity and Cyberwar: What Everyone Needs to Know

Reference Books:
1. Cyber Security Understanding Cyber Crimes, Computer Forensics and Legal Perspectives–Nina
Godbole, Sunit Belapure, Wiley: April2011India Publications Released.
2. Thomas R. Peltier, “Information Security policies and procedures: A Practitioner’s Reference”, 2nd
Edition Prentice Hall, 2004
Supplementary Reading
. Principles of Information Security, - Michael E Whitman, HerbertJMattord,3rdEdition, 2011.

Webinks:
https://www.tutorialspoint.com/information_security_cyber_law/index.htm
https://www.youtube.com/watch?v=F7mH5vz1qEI&list=PLf8YqCm9HoI6fb4LdoY2tFgJfM0PrgIn
S&index=1

Pedagogy:
Participative learning, discussions, algorithm, Flowchart & Program writing, experiential learning through
practical problem solving, assignment, PowerPoint presentation.
Course Structure
Course Code BSC30130
Course Category PE-II
Course Title R Programming
Teaching Scheme Lectures Tutorials Laboratory Totals
Weekly load hrs. 3 1 4
Credits 3 1 4

Assessment Code TT1

Pre-requisites:
1. Basic understanding of programming concepts (variables, loops, conditionals).
2. Familiarity with statistical concepts (data types, distributions, hypothesis testing).
3. Comfort with data manipulation and analysis concepts (data frames, exploratory data
analysis).

Course Objectives:

1. To understand the basics in R programming in terms of constructs, control statements, string


functions.
2. To be able to appreciate and apply the R programming from a statistical perspective.
3. To implement Machine learning algorithms using R

Course Outcomes:

1. Understand the use of R programming language.


2. Use programming structures like loops, functions, exceptions in R.
3. Understand the basic terminologies of statistics used in Data Analysis.

Course contents:
Syllabus:

Unit-1 Getting Started with R-Programming [15]


Evolution of R, Features of R, Local Environment support, R Command prompt, R Script File,
Comment, R Data types, R Variables, R Operators-R Packages.

Unit-2: Data Structures in R [15]


Vectors, matrices, and arrays, Lists and data frames, Factors in R

Unit-3: Control Structures and Functions [15]


Conditional statements (if-else) Loops (for, while) Writing functions in R, Applying functions to data
frames.
Unit-4: Data Import and Export Visualization with ggplot2 [15]
Reading and writing data from/to various formats (CSV, Excel, databases) Various Statistical
Operations on Data, Introduction to ggplot2, Creating scatter plots, bar plots, and line graphs,
Customizing plots, Faceting and themes.
Sample Lab Expermiments
1. Write a R program to access the element at 3rd column and 2nd row, only the 3rd row and only the
4th column of a given matrix.
2. Write a R program to create two 2x3 matrix and add, subtract, multiply and divide the matrixes.
3. Write a R program to extract specific column from a data frame using column name.

4. Write a R program to extract first two rows from a given data frame.
5. Write a R program to extract 3rd and 5th rows with 1st and 3rd columns from a given data frame.
6. Write a R program to convert a given matrix to a 1-dimensional array.
7. Write a R program to create an array of two 3x3 matrices each with 3 rows and 3 columns from
two given two vectors.

8. Explore any potential trends or patterns using appropriate visualizations.

Learning Resources:

Reference Books:
1. Jared P. Lander, “R for Everyone: Advanced Analytics and Graphics”, Addison-Wesley
Data & Analytics Series, 2013.
2. Mark Gardener, “ Beginning R – The Statistical Programming Language”, Wiley, 2013
Text Books:

“The book of R : A first course in programming and statistics “, Tilman A. Davies, No Starch press

1. “R for Data Science: Learn and explore the fundamentals of data science with R”, Dan
Toomey, Packt Publishing
Supplementary Reading
1. Robert Knell, “Introductory R: A Beginner's Guide to Data Visualisation, Statistical
Analysis and Programming in R”, Amazon Digital South Asia Services Inc, 2013.’
Web Links: https://www.w3schools.com/r/

1. https://www.javatpoint.com/r-
2. https://www.geeksforgeeks.org/r-tutorial/

Pedagogy:
Participative learning, discussions, PowerPoint presentation.
Course Code BSC30140
Course Category PE -II
Course Title Bitcoin Mining
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 3 1 - 4
Credits 3 1 - 4
Assessment Code TT1
Prerequisites:
1. Basics of Cryptography and Network Security and Blockchain.
2. Basics of Cryptocurrencies and Bitcoin
Course Objectives:
1. To get acquainted with the concept of Distributed ledger systems and Blockchain.
2. To learn the concepts of consensus and mining in Blockchain through the Bitcoin network.
3. To understand different types of crypto assets.
Course Outcomes:
After completion of this course, students will be able to:
1. Understand the basics of Blockchain Technology.
2. Interpret the knowledge of the Bitcoin nodes, and keys.
3. Implement different types of wallets and transactions.
4. Analyze the different Bitcoin Network.
5. Compare different consensus algorithms.
Course Contents:
Unit 1: Introduction to Blockchain [12]

Introduction to Blockchain: Technical definition of Blockchain. Elements of a Blockchain Features of


Blockchain Type of Blockchain, What is DLT . DLT V/S Blockchain CAP theorem Byzantine Generals
Problem Consensus Mechanism and its Type Cryptographic primitives and data structure used in
blockchain. Structure of a Block, Block Header Hash and Block Height, The Genesis Block, Linking
Blocks in the Blockchain, Merkle Tree

Unit 2 Bitcoin Basics nodes, and keys: [12]

What is Bitcoin and the history of Bitcoin, Bitcoin Transactions, Bitcoin Concepts: keys, addresses, and
wallets, Bitcoin Transactions, UTXO. validation of transactions, Bitcoin Keys, Addresses, ECC, Base58
, BIP-38 , Pay-to Script and Multisig Addresses, Vanity Addresses

Unit 3: wallets, transactions and Proof-of-work [12]


Concept of Wallet, Wallet Technologies in Bitcoin HD wallet from Seed. Transaction Scripts and Scripts
address, Bitcoin Mining and Difficulty levels Structure of Blocks and Blockheader and Genesis Block ,
linking of Block. Task of Bitcoin Miners -Mining Hardware -Energy Consumption and Ecology - Mining
Pools -Mining Incentives -Merkley Tree -hardness of mining -transaction verifiability- Anonymity –Re-
identification of Bitcoin-Mixing and Decentralization of Bitcoin - Zero coin and Zero cash.

Unit 4: Bitcoin Network [12]

Bitcoin Core node and API, Peer-to Peer Network Architecture, Node Types and Roles, Incentive based
Engineering, The Extended Bitcoin Network, Bitcoin Relay Networks, Network Discovery, Full Nodes,
Exchanging “Inventory” " , simplified Payment Verification (SPV) Nodes, SPV Nodes and Privacy,
Transaction Pools, Blockchain Forks Bitcoin Testnet Basics of Bitcoin Forensics: Analysis of Address
and Wallet, Clustering of Addresses following Money).

Unit 5: Bitcoin Core node [12]

Bitcoin Core node and API, Peer-to Peer Network Architecture, Node Types and Roles, Incentive based
Engineering, The Extended Bitcoin Network, Bitcoin Relay Networks, Network Discovery, Full Nodes,
Exchanging “Inventory” " simplified Payment Verification (SPV) Nodes, SPV Nodes and Privacy,
Transaction Pools, Blockchain Forks Bitcoin Testnet Basics of Bitcoin Forensics: Analysis of Address
and Wallet , Clustering of Addresses following Money).

LearningResources:
Reference Books:
4. “Mastering Bitcoin, PROGRAMMING THE OPEN BLOCKCHAIN”, 2nd Edition by Andreas
M. Antonopoulos, June 2017, Publisher(s): O'Reilly Media, Inc. ISBN: 9781491954386.
5. Blockchain Technology, Chandramouli Subramanian, Asha A George, Abhillash K. A and Meena
Karthikeyen, Universities press.

Supplementary Reading:
3. Lewis, Antony, The Basics Of Bitcoins and Blockchains: An Introduction To Cryptocurrencies
and The Technology That Powers Them., 2018, 1st edition, Mango Media Inc., United States.
Weblinks:
https://www.investopedia.com/tech/how-does-bitcoin-mining-work/
https://www.coinbase.com/learn/crypto-basics/what-is-mining
MOOCs: Online courses for self-learning
Courses by NPTEL and MIT Open Courseware etc
Pedagogy:
o Blended Learning
o Participative learning
o Creative Assignment
o Discussions
o Practical Assignment
o Videos
Course Structure
Course Code BSC30070
Course Category PM
Course Title Agile Methodology
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 2 2
Credits 2 2
ssessment Code TT1
Prerequisites:
1.Basic and fundamental concepts of computers and internet.
2.Basic and fundamental concepts of computer programming
Course Objectives:
1.To provide the importance of interacting with business stakeholders to determine software
requirements.
2.To provide basic understanding of software development and testing.
3.To provide understanding to create high-quality software.
4.To provide basic understanding of software cycle.
Course Outcomes:
After completion of this course students will be able to:
1.To enable the students with the theoretical aspect of agile software development and can compare
with traditional method.
2.Students can understand different methods for software development.
3.Understanding agile testing, its impact and different methods.
4.Knowledge of different agile parameters and approaches in software development
Course Contents:
Unit 1: Agile Methodology [8]: The Genesis of Agile, Introduction and background for Agile
Management, Agile Software Development, Traditional Model vs. Agile Model, Classification of Agile
Methods, Agile Manifesto and Principles, Agile Project Management, Agile Team Interactions, Ethics in
Agile Teams, Agility in Design and Testing
Unit 2: Agile Frameworks [8]: Overview of Various Agile Methods: SCRUM, Crystal, Feature Driven
Development (FDD), Adaptive Software Development, Extreme Programming (XP), Introduction to
Scrum, Project phases, Agile Estimation, Tools for Agile project management, Introduction to Kanban
and comparison with Scrum.
Unit 3: Agile Testing [8]: Agile lifecycle and its impact on testing, Test-Driven Development (TDD),
Unit framework and tools for TDD, testing user stories: acceptance tests and scenarios, Planning and
managing testing cycle, Exploratory testing, Risk-based testing, Regression tests, Test Automation
Unit 4: Agility and Quality Assurance [6]: Agile Product Development, Agile Metrics, Feature Driven
Development (FDD), Financial and Production Metrics in FDD, Agile Approach to Quality Assurance,
Test Driven Development, Agile Approach in Global Software Development
Learning Resources:

Reference Books:
1. Ken Schwaber, Mike Beedle, “Agile Software Development with Scrum”
2. Lisa Crispin, Janet Gregory, “Agile Testing: A Practical Guide for Testers and Agile Teams”
3. Robert C. Martin, “Agile Software Development: Principles, Patterns, and Practices”
4. Alistair Cockburn, “Agile Software Development: The Cooperative Game”
5. Mike Cohn, “User Stories Applied: For Agile Software”

Supplementary Reading:
Mike Cohn, “Agile Estimating and Planning”

Weblinks: 1. https://www.udemy.com/course/agile-project-management-overview-for-project-
managers
2.https://www.geeksforgeeks.org/what-is-agile-methodology/
MOOCs: Online courses for self-learning
Courses by NPTEL and MIT Open Courseware etc

Pedagogy:
o Blended Learning
o Participative learning
o Creative Assignment
o Discussions
o Demonstrations
o Practical Assignment
o Videos
Course Structure
Course Code BSC30080
Course Category PM
Course Title Internet of Things
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 2 - 2 - 4
Credits 2 - 1 - 3
Assessment Code TL4
Prerequisites:
1.Knowledge of networking, sensing, databases, programming, and related technology.
2.Familiarity with business concepts and marketing.

Course Objectives:
1.Vision and Introduction to IoT.
2.Understand IoT Market perspective.
3.Data and Knowledge Management and use of Devices in IoT Technology.
4.Understand State of the Art – IoT Architecture.
5.Real World IoT Design Constraints, Industrial Automation and Commercial Building Automation in
IoT
Course Outcomes:
On completion of the course, student will be able to–
1. Students will understand IoT Market perspective.
2. Students will get Data and Knowledge Management and use of Devices in IoT Technology.
3. Students will understand State of the Art – IoT Architecture.
4. Students will get Real World IoT Design Constraints, Industrial Automation and Commercial
Building Automation in IoT.

Course Contents:
Unit 1: M2M to IoT [4]
The Vision-Introduction, From M2M to IoT, M2M towards IoT-the global context, A use case example,
Differing Characteristics
Unit 2: M2M to IoT – A Market Perspective [4]
Introduction, M2M Value Chains, IoT Value Chains, An emerging industrial structure for IoT, The
international driven global value chain and global information monopolies. M2M to IoT-An Architectural
Overview– Building an architecture, Main design principles and needed capabilities, An IoT architecture
outline, standards considerations

Unit 3: M2M and IoT Technology Fundamentals [7]


Devices and gateways, Local and wide area networking, Data management, Business processes in IoT,
Everything as a Service(XaaS), M2M and IoT Analytics, Knowledge Management
Unit 4: IoT Architecture-State of the Art [7]
Introduction, State of the art, Architecture Reference Model- Introduction, Reference Model and
architecture, IoT reference Model, CICSO Reference Model
Unit 5: IoT Reference Architecture [8]
Introduction, Functional View, Information View, Deployment and Operational View, Other Relevant
architectural views. Real-World Design Constraints- Introduction, Technical Design constraints-hardware
is popular again, Data representation and visualization, Interaction and remote control. Industrial
Automation- Service-oriented architecture-based device integration, SOCRADES: realizing the enterprise
integrated Web of Things, IMC-AESOP: from the Web of Things to the Cloud of Things

Learning Resources:
Reference Books:
1. Jan Holler, Vlasios Tsiatsis, Catherine Mulligan, Stefan Avesand, Stamatis Karnouskos, David
Boyle, “From Machine-to-Machine to the Internet of Things: Introduction to a New Age of
Intelligence”, 1st Edition, Academic Press, 2014.Data Warehousing in the Real World, Anahory,
Murray, Pearson Education
2. Vijay Madisetti and Arshdeep Bahga, “Internet of Things (A Hands-on-Approach)”, 1 st Edition,
VPT, 2014.
3. Francis daCosta, “Rethinking the Internet of Things: A Scalable Approach to Connecting
Everything”, 1st Edition, Apress Publications, 2013
4.
Supplementary Reading:
1. Collaborative Internet of Things (C-IoT): For Future Smart Connected Life and Business
2. By Fawzi Behmann, Kwok Wu

Weblinks:
www.tutorialspoint.com

MOOCs: Online courses for self-learning


Courses by NPTEL and MIT Open Courseware etc

Pedagogy:
o Blended Learning
o Participative learning
o Creative Assignment
o Discussions
o Demonstrations
o Practical Assignment
o Videos
Course Structure
Course Code BSC20140
Course Category PM
Course Title Theoretical Computer Science
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 2 - 2
Credits 2 - 2
Assessment Code TT1
Prerequisites:
1. Strong background in mathematical concepts, including discrete mathematics
2. understanding of algorithms and data structures.

Course Objectives:
1. To understand foundations of computation including automata theory
2. To understand the relation between Automaton and Language
3. To construct models of regular expressions and languages. To design context free grammar and
push down automata
Course Outcomes:
After completion of this course students will be able to:
1. Understand the use of automata during language design. Relate various automata and
Languages.
2. Construct automata theory using Finite Automata Write regular expressions for any pattern CO3:
Design context free grammar and Pushdown Automata
Course Contents:
Unit 1: Introduction to Automata Theory[8]
Alphabet, languages and grammars, productions and derivation, Introduction to formal proof, Finite
Automata (FA), Deterministic Finite Automata (DFA), Non-deterministic Finite Automata (NFA),
Equivalence of NFAs with and without ε-moves, Conversion of NFA into DFA , Minimization of DFAs.
Unit 2: Regular Expressions (RE)[7]
Definition & Example Regular Expressions Identities. Regular language-Definition and Examples.
Conversion of RE to FA-Examples. Pumping lemma for regular languages and applications. Closure
Properties of regular Languages

Unit 3: Context Free Grammar And Types of Grammar [8]


Chomsky‘s hierarchy of languages ,Context-Free Grammar (CFG) and Languages , Derivations and Parse
trees , Ambiguity in grammars and languages , Normal forms for CFG , Simplification of CFG, Chomsky
Normal Form (CNF) and Greibach Normal Form (GNF)

Unit 4: Push Down Automata & Turing machine[7]


Push Down Automata (PDA): Definition , Moves , Instantaneous descriptions ,Languages of pushdown
automata , Equivalence of pushdown automata and CFG-CFG to PDA-PDA to CFG , Deterministic
Pushdown, Turing Machine : Basic model , definition and representation , Instantaneous Description ,
Language acceptance by TM , TM as Computer of Integer functions , Programming techniques for Turing
machines (subroutines)
Learning Resources:
Reference Books:

1. Harry R. Lewis and Christos H. Papadimitriou, Elements of the Theory of Computation,


Pearson Education Asia.
2. John E. Hopcroft, Rajeev Motwani and Jeffrey D. Ullman, Introduction to Automata
Theory, Languages, and Computation, Pearson Education Asia.

Text Books:
1.Hopcroft J.E., Motwani R. & Ullman J.D., "Introduction to Automata Theory, Languages
and Computations", 3rd Edition, Pearson Education, 2008.
2. John C Martin , "Introduction to Languages and the Theory of Computation", 4th
Edition, Tata McGraw Hill, 2011.

Supplementary Reading
3. Dexter C. Kozen, Automata and Computability, Undergraduate Texts in Computer Science,
Springer.
4. Michael Sipser, Introduction to the Theory of Computation, PWS Publishing.
Web Links:
4. https://www.geeksforgeeks.org/theory-of-computation-automata-tutorials/
5. https://www.javatpoint.com/automata-tutorial
6. https://www.tutorialspoint.com/automata_theory/index.htm

MOOCs: Online courses for self-learning


Courses by NPTEL and MIT Open Courseware etc
Pedagogy:
o Blended Learning
o Participative learning
o Creative Assignment
o Discussions
o Demonstrations
o Videos
Course Structure
Course Code BSC20150
Course Category PM
Course Title Research Methodology
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 3 - - - 3
Credits 3 - - 3
Assessment Code TT1
Prerequisites:
1. Basic concepts of research and algorithms.
Course Objectives:
1. To familiarize students with the fundamentals of research.
2. To understand the various research techniques.

Course Outcomes:
On completion of the course, student will be able to–
1. To understand the basics of research
2. To explore the sources to collect information for research.
3. To discuss the various research tools.
4. To compile the different citation/reference methods.

Course Contents:
1. Foundations of Research [8]
Foundations of Research: Meaning, Objectives, Motivation, Utility. Concept of theory, empiricism,
deductive and inductive theory. Characteristics of scientific method – Understanding the language of
research – Concept, Construct, Definition, Variable. Research Process
2 Problem Identification & Formulation [7]
Problem Identification & Formulation – Research Question – Investigation Question – Measurement
Issues – Hypothesis – Qualities of a good Hypothesis –Null Hypothesis & Alternative Hypothesis.
Hypothesis Testing – Logic & Importance
3. Research Design [10]
Research Design: Concept and Importance in Research – Features of a good research design – Exploratory
Research Design – concept, types and uses, Descriptive Research Designs – concept, types and uses.
Experimental Design: Concept of Independent & Dependent variables.
4. Qualitative and Quantitative Research [10]
Qualitative and Quantitative Research: Qualitative research – Quantitative research – Concept of
measurement, causality, generalization, replication. Merging the two approaches.
5. Sampling [10]
Sampling: Concepts of Statistical Population, Sample, Sampling Frame, Sampling Error, Sample Size,
Non Response. Characteristics of a good sample. Probability Sample – Simple Random Sample,
Systematic Sample, Stratified Random Sample & Multi-stage sampling. Determining size of the sample
– Practical considerations in sampling and sample size.

Learning Resources:

Reference Books:
1. Business Research Methods – Donald Cooper & Pamela Schindler, TMGH, 9th edition
2. Business Research Methods – Alan Bryman & Emma Bell, Oxford University Press.

Web Limks:

1. https://paperpal.com/blog/academic-writing-guides/what-is-research-
ethodology#:~:text=A%20research%20methodology%2
0describes%20the,using%20the%20selected%20research%20instruments.
2. http://www.wsu.edu/~brians/errors/errors.html
Pedagogy:
o Participative learning
o Discussions
o Demonstrations
o Assignment
Course Structure
Course Code BSC20160
Course Category PR
Course Title Research paper writing
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 2 4 6
Credits 2 2 4
Assessment Code PJ
Prerequisites:
1. Basic concepts of document formatting, research, and Equation Editor
Course Objectives:
1. To familiarize students with the fundamentals of research.
2. To help students make appropriate grammatical and lexical choices while writing research
articles and organize information effectively.
3. To integrate theoretical research knowledge with practical skills that will help students to
undertake research.

Course Outcomes:
On completion of the course, student will be able to–
1 To understand the basics of research paper writing.
2.To explore the sources to collect information for research.
3. To discuss the various research tools.
4. To compile the different citation/reference methods.
Course Contents:

1. Open access publishing : 5 Hours

Open access publishing and initiatives, SHERPA/RoMEO online resource to check publisher copyright
and self-archiving policies, Software tool to identify predatory publications developed by SPPU, Journal
finder/ journal suggestion tools viz. JANE, Elsevier Journal Finder, Springer Journal Suggester, etc.

2.Publication misconduct: 4 Hours

Subject-specific ethical issues, FFP, authorship, Conflicts of interest, Complaints, and appeals: examples
and fraud from India and abroad, Software tools: Use of plagiarism software like Turnitin, Urkund, and
other open source software tools,

3.Mendeley Software: 5 Hours

Creating your library: Add PDFs to Mendeley - Import/export EndNote, BibTeX and RIS libraries-
Document details lookup (CrossRef, PubMed, and ArXiv) -Google Scholar Search -One-click Web
Importer -Watch folders to automatically add PDFs to Mendeley Desktop -Synchronize PDFs with your
Mendeley Web account.Managing your documents and references: Merge duplicate author names, tags,
or publications- Documents can be marked read/unread

4. Citing sources/references and maintaining Academic honesty 6 Hours

Referencing and in-text citations, Styles of referencing, Paraphrasing and summarizing, Citing sources,
and Developing academic honesty., Editing the research paper, Proofreading techniques, and Revision of
the research paper.

5. Ethical issues in collecting data 5 Hours

Ethics, stakeholders in research, ethical issues concerning participants, seeking consent, providing
incentives

6.Introduction to Latex 5 Hours

Understanding Latex compilation Basic Syntex, Writing equations, Matrix, Tables, Page Layout – Titles,
Abstract Chapters, Sections, References, Equation references, citation. List-making environments Table
of contents, Generating new commands, Figure handling numbering, List of figures, List of tables,
Generating index.
Learning Resources:
Reference Books:
3. Writing and Publishing a Scientific Research Paper, Subhash Chandra Parija, Vikram Kate, Springer
Nature Singapore,2017.
4. How to Write a Good Research Paper, Peter Haisler, Samfundslitteratur Publisher,2011.
Supplementary Reading
1. English for Writing Research Papers, Adrian Wallwork, Springer International Publishing,2011.
2. Kothari, C. R. (2004). Research Methodology: Methods and Techniques. New Delhi: New Age
International. Kumar, R. (2005).
3. Research Methodology-A Step-by-Step Guide for. Singapore: Pearson Education.
Web Links:

1.https://authorservices.taylorandfrancis.com/blog/get-published/8-useful-research-paper-writing-tools-
and-resources/

2.http://www.esc.edu/esconline/across_esc/writerscomplex.nsf/wholeshortlinks2/Research+Room+Men
u?opendocument

Pedagogy:
o Participative learning
o Discussions
o Demonstrations
o Assignment
Course Structure
Course Code BSC40030
Course Category PE -III
Course Title Intellectual Property Rights
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 3 1 - 4
Credits 3 1 - 4
Assessment Code TT1
Prerequisites:
1. Basics of communication skills, business communication, and products.
Course Objectives:
1. The main objective of the IPR is to make the students aware of their rights for the
protection of their invention done in their project work.
2. To disseminate knowledge on patents, patent regime in India and abroad and registration
aspects.
3. To analyse the National and International perspectives of legal regime of IPR protection.

Course Outcomes:
After completion of this course, students will be able to:
1. To understand the philosophical justification for IPR and protective mechanism
2. To explore about the National and international approaches on IPR and its enforcement
and regulatory mechanism
3. To Analyze the protection of monopolistic rights under Patents system within and
outside the domestic environment
4. To understand Trade Secrets and Unfair competition.
5. To evaluate the protection of Trademarks, Copyrights, Design, PBR, Design, TK and
other related aspects within and outside the domestic environment.

Course Contents:
Unit 1: Introduction [12]
Introduction to Intellectual property: Introduction, types of intellectual property, international
organizations, agencies and treaties, importance of intellectual property rights
Unit 2 Trade Marks [12]
Trade Marks: Purpose and function of trademarks, acquisition of trade mark rights, protectable
matter, selecting, and evaluating trade mark, trade mark registration processes.
Unit 3: Law of Copyrights [12]
Law of copyrights: Fundamental of copyright law, originality of material, rights of reproduction,
rights to perform the work publicly, copyright ownership issues, copyright registration, notice
of copyright, international copyright law.
Law of patents: Foundation of patent law, patent searching process, ownership rights and
transfer
Unit 4: Trade
Secrets [12]
Trade Secrets: Trade secret law, determination of trade secret status, liability for
misappropriation of trade secrets, protection for submission, trade secret litigation.
Unfair competition: Misappropriation right of publicity, false advertising.

Unit 5: New development of intellectual


property [12]
New development of intellectual property: new developments in trademark law; copyright law,
patent law, and intellectual property audits.
International overview on intellectual property, international – trademark law, copyright law,
international patent law, and international development in trade secrets law.

LearningResources:

Reference Books:
1. Intellectual property right, Deborah. E. Bouchoux, Cengagelearning.
2. Intellectual property right – Unleashing the knowledge economy, prabuddha ganguli,
Tata McGraw Hill Publishing company Ltd.
Supplementary Reading:
1. Fundamentals oflP for Engineers: property right, Deborah, K.Bansl& P.Bansa
2. Inrelletul property right - Unleasing E. BoDcboux, Cengage leaming. the knowledge
Ganguli, Tata Mccraw Hill Publishing Company Ltd.

Weblinks:

https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3217699/#:~:text=IPR%20provide%20c
ertain%20exclusive%20rights,%2C%20copyright%2C%20trademark%2C%20etc.
https://www.wipo.int/about-ip/en/

MOOCs: Online courses for self-learning


Courses by NPTEL and MIT Open Courseware etc
Pedagogy:
Blended Learning, Participative learning, Creative Assignment, Discussions,
Demonstrations, Practical Assignment, Videos
Course Structure
Course Code BSC40040
Course Category PE – III
Course Title Data Analysis and Visualization using R
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load 3 1 - 4
hours
Credits 3 1 - 4
Assessment Code TT1
Prerequisites:
1. Basic knowledge of Programming Languages.
2. Basic knowledge of Statistics
Course Objectives:
1. students will learn R. Programming language, data analytics, data visualization and
statistical models for data analytics
2. To create awareness about Text analytics and its applications.

Course Outcomes:
After completion of this course students will be able to:
1. Comprehend basics of data analytics and visualization.
2. Apply various regression models on given data set and perform prediction.
3. Demonstrate advanced understanding of Time series concepts and analysis of data
using various time series models.
4. Analyze Text data and gain insights.
5. Experiment with different analytics techniques and visualization using R.

Course Contents:
Unit 1: Introduction to Data Analysis [12]
Overview of Data Analytics, Need of Data Analytics, Nature of Data, Classification of Data:
Structured, Semi-Structured, Unstructured, Characteristics of Data, Applications of Data
Analytics.

Unit 2: R Programming Basics [12]


Overview of R programming, Environment setup with R Studio, R Commands, Variables and
Data Types, Control Structures, Array, Matrix, Vectors, Factors, Functions, R packages.
Unit 3: Data Visualization using R [12]
Reading and getting data into R (External Data): Using CSV files, XML files, Web Data, JSON
files, Databases, and Excel files. Working with R Charts and Graphs: Histograms, Boxplots, Bar
Charts, Line Graphs, Scatterplots, Pie Charts
Unit 4: Statistics with R [12]
Random Forest, Decision Tree, Normal and Binomial distributions, Time Series Analysis,
Linear and Multiple Regression, Logistic Regression, 25% 10 Survival Analysis
Unit 5: Prescriptive Analytics [12]
Creating data for analytics through designed experiments, Creating data for analytics through
active learning, Creating data for analytics through reinforcement learning

Learning Resources:

Reference Books:
1. An Introduction to R, Notes on R: A Programming Environment for Data Analysis and
Graphics. W. N. Venables, D.M. Smith and the R Development Core Team. Version
3.0.1 (2013-05-16). URL: https://cran.r-project.org/doc/manuals/r-release/R-intro.pdf
Supplementary Reading:
1. Jared P Lander, R for everyone: advanced analytics and graphics, Pearson Education,
2013
2. 2. Dunlop, Dorothy D., and Ajit C. Tamhane. Statistics and data analysis: from
elementary to intermediate. Prentice Hall, 2000.
3. 3. G Casella and R.L. Berger, Statistical Inference, Thomson Learning 2002.
4. 4. P. Dalgaard. Introductory Statistics with R, 2nd Edition. (Springer 2008)
Weblinks:
1. https://www.coursera.org/learn/data-analysis-r
2. https://www.geeksforgeeks.org/data-analysis-using-r/

MOOCs: Online courses for self-learning


Courses by NPTEL and MIT Open Courseware etc
Pedagogy:
● Blended Learning
● Participative learning
● Creative Assignment
● Discussions
● Demonstrations
● Practical Assignment
● Videos
Course Structure

Course Code BSC40050


Course Category PE - III
Course Title Blockchain Architecture
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load 3 1 - 4
hours
Credits 3 1 - 4
Assessment Code TT1
Prerequisites:
1. Basics of Cryptography and Network Security
2. Basic knowledge of cryptography, networking
3. Basics of Analog and Digital Communication
Course Objectives:
1. Equip students with a solid foundation in blockchain technology, including its history,
fundamental concepts, and underlying cryptographic mechanisms.
2. Explore different blockchain architectures, consensus protocols, and their trade-offs.
3. Analyze the security aspects of blockchain systems and potential vulnerabilities.
4. Examine the design and development of smart contracts and their applications within
blockchain ecosystems.
5. Develop critical thinking skills to evaluate the potential and limitations of blockchain
technology.
Course Outcomes:
After completion of this course students will be able to:
1. Explain the concepts and applications of Block chain.
2. Solve any problem by designing a Fundamental Block Chain
3. Construct the Block chain with complete Architectural Primitives as per
requirements
4. Apply System and security features during the design of any Block Chain
5. Apply Block chain use cases for different application domains
Course Contents:
Unit 1: CONCEPTUAL AND APPLICATION ASPECTS OF BLOCKCHAIN [12]
Basics &History: Blockchain, Public Ledger, Bitcoin, Smart Contracts, Architecture,
Conceptualization.
Crypto Primitives Bitcoin Details: Creation, Double Spending, FORTH, Bitcoin Scripts, P2P
Transaction, Block Mining, Propagation, Block Delay.
Unit 2: DESIGN OF FUNDAMENTAL BLOCKCHAIN [12]
Consensus: Bitcoin consensus, Open environment, Distributed Consensus, PoW and Beyond,
hashcash attacks, Miner, pool & difficulty
Unit 3: BLOCK CHAIN WITH COMPLETE ARCHITECTURAL PRIMITIVES [12]
Permissioned Blockchain : Models, Design Issues, Contract Execution, State Machine
Replication, Paxos, RAFT consensus, Byzantinegeneral problem, Fault Tolerance system,
Lamport, Shostak Pease BFT algorithm, BFT over Asynchronous, Three phase commit
Unit 4: SYSTEM AND SECURITY ASPECTS OF BLOCK CHAIN DESIGN [12]
Blockchain for Enterprise: Hyperledger Fabric Network Project, Fabric Demo on IBM
Blockchain Cloud, Application Development, Network Administration.
Unit 5: BLOCK CHAIN USE CASES FOR VARIOUS APPLICATION DOMAINS [12]
Financial Service, Revolutionizing Global Trade, Supply Chain, Government, Science,
Security Research Aspects, Comparing Ecosystems using Ethereum & Quorum.

LAB Work on Block Chain Architectures

1. Compare the scalability of different consensus mechanisms (e.g., PoW, PoS) by


simulating transactions on a blockchain network.
2. Experiment with interoperability solutions such as atomic swaps or cross-chain
bridges.
3. Explore privacy-focused blockchain platforms like Zcash or Monero.
4. Develop a dApp that leverages blockchain functionality for a specific use case.
5. Explore common vulnerabilities in smart contracts and techniques for secure
development.

Learning Resources:

Reference Books:
1. Andreas Antonopoulos, “ MasteringBitcoin: Unlocking Digital Cryptocurrencies”, First
Edition, 2015, O’Reilly edia Inc.
2. Melanie Swa, “ Blockchain”, First Edition, 2015, O’Reilly Media Inc.
3. Nitin Gaur, Luc Desrosiers, Petr Novotny, Venkatraman Ramakrishna, Anthony O'Dowd,
Salman A. Baset , “Hands-On Blockchain with Hyperledger: Building decentralized
applications with Hyperledger Fabric and Composer “ Paperback – June 21, 2018.

Supplementary Reading:
1. Arvind Narayanan, Joseph Bonneau, Edward Felten, Andrew Miller & Steven Goldfeder,”
Bitcoin and Cryptocurrency Technologies - A Comprehensive Introduction” , First
Edition,2016
2. Stephen Fleming, “Blockchain Technology &Microservices Architecture: A
NonProgrammer’s Handbook”, Createspace Independent Publishing Platform, 2018.
3. DebajaniMohanty, “Blockchain - From Concept to Execution”, BPB Publications, 2018 4.
Bob Dill, David Smits, “ Zero to Blockchain - An IBM Redbooks course”

Weblinks:
1. https://www.ejable.com/tech-corner/blockchain/blockchain-technology
2. https://www.geeksforgeeks.org/blockchain-structure/
MOOCs: Online courses for self-learning
Courses by NPTEL and MIT Open Courseware etc

Pedagogy:
● Blended Learning
● Participative learning
● Creative Assignment
● Discussions
● Demonstrations
● Practical Assignment
● Videos
Course Structure
Course Code BSC40060
Course Category PE-IV
Course Title Cyber Forensics and Investigation
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load 3 1 0 4
hours
Credits 3 1 0 4
Assessment Code TT1
Prerequisites:
1. Basic and fundamental concepts and importance of information/data, network security and
threats,
2. An intermediate knowledge of the way the network vulnerability and security principles.
Course Objectives:
This course provides an in-depth exploration of the principles and practices of cyber forensics
and investigation. Students will learn techniques for collecting, preserving, analyzing, and
presenting digital evidence in legal and investigative contexts. Topics include forensic tools and
methodologies, file systems analysis, network forensics, and incident response.
Course Outcomes:
1. Understand the fundamentals of cyber forensics and investigation.
2. Learn techniques for acquiring and preserving digital evidence.
3. Develop skills in forensic analysis of file systems and data.
4. Explore methods for conducting network forensics.
5. Learn about incident response procedures and practices.
6. Understand legal and ethical considerations in cyber forensics
Course Contents:
Unit 1: Introduction to Cyber Forensics [12]

● Overview of cyber forensics and investigation


● Legal and ethical considerations
● Digital evidence and chain of custody
● Forensic tools and methodologies

Unit 2: Digital Evidence Acquisition and Preservation [12]

● Principles of evidence acquisition


● Volatile and non-volatile data collection
● Hashing and data integrity
● Evidence preservation techniques

Unit 3: File Systems Analysis [12]

● File systems fundamentals


● Forensic analysis of file systems (e.g., FAT, NTFS, EXT)
● File carving and recovery
● Metadata analysis

Unit 4: Network Forensics and Malware Analysis [12]

● Network traffic analysis


● Packet capture and analysis
● Intrusion detection and prevention systems (IDPS)
● Wireless network forensics
● Malware analysis techniques
● Static and dynamic analysis
● Code deobfuscation and reverse engineering
● Forensic artifacts of malware infections

Unit 5: Incident Response and Advanced Topics [12]

● Incident response planning and procedures


● Live forensics and volatile data analysis
● Case studies and practical exercises
● Reporting and presenting forensic findings
● Memory forensics
● Cloud forensics
● IoT forensics
● Forensic challenges in emerging technologies

Tutorial Work

LearningResources:

Reference Books:
1. "Computer Forensics: Investigation Procedures and Response" by Chuck Easttom and Jeff
Taylor, Cengage Learning, 2nd Edition, 2018, ISBN-10: 1337568943, ISBN-13: 978-
1337568944
2. "Guide to Computer Forensics and Investigations" by Bill Nelson, Amelia Phillips, and
Christopher Steuart. Cengage Learning, 6th Edition, 2020, ISBN-10: 1337568943, ISBN-
13: 978-1337568944

Website references
https://www.sans.org/
https://nij.ojp.gov/topics/articles/digital-forensics
Pedagogy:
● Blended Learning
● Participative learning
● Creative Assignment
● Discussions
● Demonstrations
● Practical Assignment
● Videos
Course Structure
Course Code BSC40070
Course Category PE-IV
Course Title Big Data Technologies
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load hours 3 1 - - 4
Credits 3 1 - - 4
Assessment TT1
Schema Code
Pre-requisites:
Basic knowledge of Fundamental of Computers, Fundamental Knowledge of
Databases, Programming Skills, Understanding of Data Analysis.
Course Objectives:
1. To understand the concept of Big Data and recognize its characteristics and challenges
in contemporary data management.
2. To gain familiarity with the Hadoop ecosystem and its key components, including
Hadoop Distributed File System (HDFS) and daemons like NameNode, DataNode, and
Secondary NameNode.
3. To explore Data Warehousing concepts in the context of Big Data and develop
proficiency in using Apache Hive for data warehousing on Hadoop.
4. To acquire foundational skills in Python programming for Big Data analysis, utilizing
libraries such as NumPy and Pandas for numerical computing, data manipulation, and
analysis.
5. To delve into advanced topics in Hadoop, including Apache Spark as an alternative to
MapReduce, working with Spark RDDs for distributed data processing, and
understanding Spark transformations and actions.

Course Outcomes:
1. Understand the concept of Big Data and its significance in various industries.
2. Acquire knowledge of the architecture of Hadoop framework and the components of
Hadoop Distributed File System (HDFS).
3. Develop skills in Data Warehousing with Hadoop using tools like Apache Hive, and
proficiency in HiveQL for data querying and analysis.
4. Acquire proficiency in Big Data programming with Python, including the use of
libraries like NumPy and Pandas for data analysis and manipulation.
5. Understand advanced topics in Hadoop, including Apache Spark and its advantages
over MapReduce, Spark RDDs, transformations, and actions
Unit 1: Introduction to Big Data [12]
Understanding the concept of Big Data, Characteristics and challenges of Big Data,
Importance of Big Data technologies in various industries, Overview of Hadoop ecosystem
and its components
Unit 2: Hadoop Architecture and HDFS [12]
Introduction to Hadoop Distributed File System (HDFS), Architecture of Hadoop
framework.
HDFS architecture and its components, Understanding Hadoop daemons: NameNode,
DataNode, Secondary NameNode
Unit 3: Data Warehousing with Hadoop [12]
Introduction to Data Warehousing for Big Data, Apache Hive - Data Warehouse on
Hadoop
HiveQL (Hive Query Language) - Syntax and Data Manipulation, Hands-on practice with
HiveQL for data querying and analysis

Unit 4: Big Data Programming with Python [12]


Introduction to Python for Big Data Analysis, NumPy library for Numerical Computing
Pandas’ library for Data Analysis and Manipulation, Hands-on practice with Python for
data loading, cleaning, and analysis

Unit 5: Advanced Topics in Hadoop [12]


Introduction to Apache Spark and its advantages over MapReduce, Working with Spark
RDDs (Resilient Distributed Datasets), Understanding Spark transformations and actions,
Introduction to Hadoop security and data governance, best practices and optimization
techniques for Hadoop cluster performance.

Text Books
1. "Big Data: Principles and Best Practices of Scalable Realtime Data Systems" by
Nathan Marz and James Warren, Manning Publications, 1st Edition, 2015
2. "Hadoop: The Definitive Guide" by Tom White, O'Reilly Media, 4th Edition, 2015
3. "Python for Data Analysis" by Wes McKinney, O'Reilly Media, 2nd Edition, 2017

Reference Books:
1. "Hadoop in Action" by Chuck Lam, Manning Publications, 2nd Edition, 2015
2. "Learning Spark: Lightning-Fast Big Data Analysis" by Holden Karau, Andy
Konwinski, Patrick Wendell, and Matei Zaharia, O'Reilly Media, 1st Edition, 2015
3. "Data Warehousing Fundamentals for IT Professionals" by Paulraj Ponniah, Wiley,
2nd Edition, 2010
Web Resources :
1. https://hadoop.apache.org/docs/
2. https://hortonworks.com/tutorial
3. https://www.datacamp.com/

Pedagogy:Participative learning, discussions, fundamental concepts, Live Demo, Problem


Solving Session
Course Structure
Course Code BSC40080
Course Category PE - IV
Course Title Blockchain Technologies
Teaching Scheme Lectures Tutorials Laboratory / Project Total
Practical
Weekly load 3 1 - 4
hours
Credits 3 1 - 4
Assessment Code TT1
Prerequisites:
1. Basic knowledge of computer security
2. Basic knowledge of cryptography, networking
3. Basic knowledge of concurrent or parallel programming would help a student to
understand the topics.
Course Objectives:
1. Familiarise the functional/operational aspects of cryptocurrency ECOSYSTEM.
2. Understand emerging abstract models for Blockchain Technology.
3. Identify major research challenges and technical gaps existing between theory and
practice in cryptocurrency domain
Course Outcomes:
After completion of this course students will be able to:
1. Be familiar with popular blockchain platforms like Ethereum and Hyperledger
Fabric. Gain the ability to develop or deploy smart contracts, self-executing
programs on a blockchain.
2. Explore how blockchain can be applied in various industries like finance, supply
chain management, and healthcare.
3. Identify the strengths and weaknesses of blockchain technology, including its
security features, scalability limitations, and regulatory hurdles.

Course Contents:
Unit 1: Introduction [5]
Need for Distributed Record Keeping, Modeling faults and adversaries,Byzantine Generals
problem
Consensus algorithms and their scalability problems, Why Nakamoto Came up with Blockchain
based cryptocurrency?, Technologies Borrowed in Blockchain – hash pointers, consensus,
byzantine fault-tolerant distributed computing, digital cash etc.

Unit 2: Basic Distributed Computing [5]


Distributed consensus and atomic broadcast, Byzantine fault-tolerant consensus methods

Unit 3: Basic Crypto primitives [10]


Hash functions, Puzzle friendly Hash, Collison resistant hash, digital signatures, public key
crypto, verifiable random functions, Zero-knowledge systems
Unit 4: Blockchain 1.0 [10]
Bitcoin blockchain, the challenges, and solutions, proof of work, Proof of stake, alternatives to
Bitcoin consensus, Bitcoin scripting language and their use

Unit 5: Blockchain 2.0 [10]


Ethereum and Smart Contracts, The Turing Completeness of Smart Contract Languages and
verification challenges, Using smart contracts to enforce legal contracts, comparing Bitcoin
scripting vs. Ethereum Smart Contracts

Unit 6: Blockchain 3.0 [10]


Hyperledger fabric, the plug and play platform and mechanisms in permissioned blockchain

Unit 7: Privacy, Security issues in Blockchain [10]

Pseudo-anonymity vs. anonymity, Zcash and Zk-SNARKS for anonymity preservation, attacks
on Blockchains – such as Sybil attacks, selfish mining, 51% attacks - -advent of algorand, and
Sharding based consensus algorithms to prevent these

LAB WORK
1. Experiment with different hashing algorithms (SHA-256, RIPEMD-160) and analyze
their impact on data integrity within a block.
2. Develop a program that simulates the creation of a block. Include functionalities like
data insertion, timestamping, and hashing.
3. Simulate a scenario where a user signs a transaction using public-key cryptography.
Implement code to verify the signature using the corresponding public key,
showcasing the security of transactions.
4. Develop a simplified PoW mining simulator. Participants compete to solve a hashing
puzzle, simulating how miners secure the network.
5. Choose a real-world use case (e.g., supply chain management, secure voting) and
develop a basic smart contract for it on a platform like Ethereum or Hyperledger
Fabric.

Learning Resources:

Reference Books:

2. Draft version of “S. Shukla, M. Dhawan, S. Sharma, S. Venkatesan, ‘Blockchain


Technology: Cryptocurrency and Applications’, Oxford University Press, 2019.
3. Josh Thompson, ‘Blockchain: The Blockchain for Beginnings, Guild to Blockchain
Technology and Blockchain Programming’, Create Space Independent Publishing
Platform, 2017.
Supplementary Reading:
5. Mastering Blockchain: Inner workings of blockchain, from cryptography and
decentralized identities, to DeFi, NFTs and Web3, 4th Edition

Weblinks:
3. https://simplilearn.com/tutorials/blockchain-tutorial/blockchain-technology
4. https://www.ibm.com/topics/blockchain

MOOCs: Online courses for self-learning


Courses by NPTEL and MIT Open Courseware etc

Pedagogy:
● Blended Learning
● Participative learning
● Creative Assignment
● Discussions
● Demonstrations
● Practical Assignment
● Videos

You might also like