B.Tech Computer Science Syllabus 2025-26
B.Tech Computer Science Syllabus 2025-26
I Year I Semester
S. No. Course Code Course Title L T P Credits
1 BSC Matrices and Calculus 3 1 0 4
2 BSC Engineering Chemistry 3 0 0 3
3 ESC Basic Electrical Engineering 3 0 0 3
4 CSC Programming for Problem Solving 3 0 0 3
5 ESC Electronic Devices and Circuits 3 0 0 3
6 BSC Engineering Chemistry Lab 0 0 2 1
7 ESC Basic Electrical Engineering Lab 0 0 2 1
8 CSC Programming for Problem Solving Lab 0 0 2 1
9 HSC IT Workshop 0 0 2 1
10 Induction Program
Total Credits 15 1 8 20
I Year II Semester
S. No. Course Code Course Title L T P Credits
1 BSC Ordinary Differential Equations and Vector Calculus 3 0 0 3
2 BSC Applied Physics 3 0 0 3
3 MEC Engineering Graphics and Computer Aided Drafting 2 0 2 3
4 ESC Data Structures 3 0 0 3
5 HSC English for Skill Enhancement 3 0 0 3
6 BSC Applied Physics Lab 0 0 2 1
7 ESC Data Structures Lab 0 0 2 1
8 HSC English Language and Communication Skills Lab 0 0 2 1
9 MEC Engineering Workshop 0 0 2 1
10 CSC Python Programming Lab 0 1 2 2
Total Credits 14 1 12 21
II YEAR I SEMESTER
Course
S. No. Course Title L T P Credits
Code
1 Discrete Mathematics 3 0 0 3
2 Computer Organization and Architecture 3 0 0 3
3 Object Oriented Programming through Java 3 0 0 3
4 Software Engineering 3 0 0 3
5 Data Base Management Systems 3 0 0 3
6 Innovation and Entrepreneurship 2 0 0 2
7 Object Oriented Programming through Java Lab 0 0 2 1
8 Software Engineering Lab 0 0 2 1
9 Data Base Management Systems Lab 0 0 2 1
Skill Development Course – 1
10 SDC 0 0 2 1
(NodeJS/ReactJS/Django)
11 MC Environmental Science 1 0 0 0
Total Credits 18 0 08 21
II YEAR II SEMESTER
S. Course
Course Title L T P Credits
No. Code
1 BSC Computer Oriented Statistical Methods 3 0 0 3
2 Operating Systems 3 0 0 3
3 Business Economics and Financial Analysis 3 0 0 3
4 Computer Networks 3 0 0 3
5 Machine Learning 3 0 0 3
6 Computational Mathematics Lab 0 0 2 1
7 Operating Systems Lab 0 0 2 1
8 Computer Networks Lab 0 0 2 1
9 Machine Learning Lab 0 0 2 1
10 Skill Development Course – 2(Data Visualization- R/
SDC 0 0 2 1
Python/ Power BI)
Total Credits 15 0 10 20
*Note: Students who wish to exit after II Year II Semester has to register for this optional course and
acquire the credits allotted by doing 6 weeks Work-based Vocational Course/ Internship or
Apprenticeship. Please refer R25 Academic Regulations for more information.
III YEAR I SEMESTER
Course
S. No. Course Title L T P F Credits
Code
1 Formal Languages and Automata Theory 3 0 0 3
2 Artificial Intelligence 3 0 0 3
3 Design and Analysis of Algorithms 3 1 0 4
4 Professional Elective-I 3 0 0 3
5 Open Elective-I 2 0 0 2
6 Artificial Intelligence with Python Lab 0 0 2 1
7 Advanced Data Structures Lab 0 0 2 1
8 Prompt Engineering 0 0 2 1
9 Field-Based Project/Internship 0 0 0 4 2
Skill Development Course – 3(UI Design –
10 SDC 0 0 2 1
Flutter/ Android Studio)
11 MC Indian Knowledge System 1 0 0 0
Total Credits 15 1 8 4 21
*Note: Students who wish to exit after III Year II Semester has to register for this optional course and
acquire the credits allotted by doing 6 weeks Work-based Vocational Course/ Internship or
Apprenticeship. Please refer R25 Academic Regulations for more information.
IV YEAR I SEMESTER
Course
S. No. Course Title L T P F Credits
Code
1 Natural Language Processing 3 0 0 3
2 Cyber Security 3 0 0 3
3 Fundamentals of Management 3 0 0 3
4 Professional Elective-III 3 0 0 3
5 Professional Elective – IV 3 0 0 3
IV YEAR II SEMESTER
S. No. Course Code Course Title L T P F Credits
1 Professional Elective – V 3 0 0 3
2 Professional Elective – VI 3 0 0 3
3 Project Work 0 0 0 28 14
Total Credits 6 0 0 28 20
PROFESSIONAL ELECTIVES
Professional Elective - I
1 Computer Graphics
2 Introduction to Data Science
3 Software Testing Methodologies
4 Data Mining
5 Distributed Systems
Professional Elective - II
1 Blockchain Technology
2 Software Project Management
3 Mining Massive Datasets
4 Scripting Languages
5 Generative AI
Professional Elective-III
1 Computer Vision
2 Full Stack Development
3 Data Stream Mining
4 Cloud Computing
5 Information Retrieval Systems
Professional Elective-IV
1 Augmented Reality & Virtual Reality
2 Agile Methodology
3 Big Data Technologies
4 Quantum Computing
5 Robotic Process Automation
Professional Elective-V
1 Social Media Mining
2 Nature Inspired Computing
3 Internet of Things
4 Mobile Application Development
5 UI/UX Design
Professional Elective-VI
1 High Performance Computing
2 Edge Computing
3 Ad hoc and Sensor Networks
4 Sustainable Engineering
5 Distributed Databases
OPEN ELECTIVES
Open Elective-I:
Open Elective-II:
Open Elective-III:
Objectives:To learn
1. Applying basic operations on matrices and their properties.
2. Concept of a rank of the matrix and applying this concept to know the consistency and solving
the system of linear equations.
3. Concept of eigen values and eigen vectors and to reduce the quadratic form to canonical form
4. Geometrical approach to the mean value theorems and their application to the mathematical
problems
5. Finding maxima and minima of functions of two and three variables.
6. Evaluation of multiple integrals and their applications.
Course outcomes: After learning the contents of this paper, the student must be able to
1. Write the matrix representation of a set of linear equations and to analyze the solution of the
system of equations
2. Find the Eigen values and Eigen vectors
3. Reduce the quadratic form to canonical form using orthogonal transformations.
4. Solve the applications of the mean value theorems.
5. Find the extreme values of functions of two variables with/ without constraints.
6. Evaluate the multiple integrals and apply the concept to find areas, volumes.
UNIT-I: Matrices 8L
Rank of a matrix by Echelon form and Normal form – Inverse of Non-singular matrices by
Gauss-Jordan method. System of linear equations: Solving system of Homogeneous and
Non-Homogeneous equations. Gauss Seidel Iteration Method.
TEXT BOOKS:
1. B.S. Grewal, Higher Engineering Mathematics, Khanna Publishers, 36th Edition, 2010.
2. R.K. Jain and S.R.K. Iyengar, Advanced Engineering Mathematics, Narosa Publications,
5 thEditon, 2016.
REFERENCE BOOKS:
1. Erwin Kreyszig, Advanced Engineering Mathematics, 9th Edition, John Wiley & Sons, 2006.
2. G.B. Thomas and R.L. Finney, Calculus and Analytic geometry, 9thEdition, Pearson, Reprint,
2002.
3. N.P. Bali and Manish Goyal, A text book of Engineering Mathematics, LaxmiPublications,
Reprint, 2008.
4. H. K. Dass and Er. Rajnish Verma, Higher Engineering Mathematics, S Chand and Company
Limited, New Delhi.
ENGINEERING CHEMISTRY
Course Objectives:
1. To develop adaptability to new advances in Engineering Chemistry and acquire the essential
skills to become a competent engineering professional.
2. To understand the industrial significance of water treatment, fundamental principles of battery
chemistry, and the impact of corrosion along with its control methods for structural protection.
3. To impart foundational knowledge of various energy sources and their practical applications in
engineering.
4. To equip students with an understanding of smart materials, biosensors, and analytical
techniques applicable in engineering, industrial, environmental, and biomedical fields.
Course Outcomes:
1. Students will be able to understand the fundamental properties of water and its applications in
both domestic and industrial purposes. (SDG 4, 6)
2. Students will gain basic knowledge of electrochemical processes and their relevance to
corrosion and its control methods. (SDG 4)
3. Students will comprehend the significance and practical applications of batteries and various
energy sources, enhancing their potential as future engineers and entrepreneurs. (SDG 4, 7, 9)
4. Students will learn the basic concepts and properties of polymers and other engineering
materials. (SDG 4, 9)
5. Students will be able to apply the principles of UV-Visible, IR spectroscopy and Raman
spectroscopy in analyzing pollutants in dye industries and biomedical applications. (SDG 4, 9,
13)
Course Outcomes: After learning the contents of this paper the student must be able to
Understand and analyze basic Electrical circuits
Study the working principles of Electrical Machines and Transformers
Introduce components of Low Voltage Electrical Installations.
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12
To understand DC 3 2 1 2 0 0 1 2 0 1 2
and Single & Three
phase AC circuits.
To study and 3 2 1 1 3 0 0 0 2 0 1 1
understand the
different types of DC,
AC machines and
Transformers.
To import the 3 2 0 3 0 0 0 1 2 1 1
knowledge of
various electrical
installations and the
concept of power,
power factor and its
improvement.
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12
Understand and 3 2 1 0 1 0 0 0 2 0 2 2
analyse basic
Electrical circuits
UNIT-I:
D.C. Circuits: Electrical circuit elements (R, L and C), voltage and current sources, KVL&KCL, analysis of
simple circuits with dc excitation. Superposition, Thevenin and Norton Theorems. Time-domain analysis
of first-order RL and RC circuits.
UNIT-II:
A.C. Circuits:Representation of sinusoidal waveforms, peak and rms values, phasor representation, real
power, reactive power, apparent power, power factor, Analysis of single-phase ac circuits consisting of
R, L, C, RL, RC, RLC combinations (series and parallel), resonance in series R-L-C circuit. Three-phase
balanced circuits, voltage and current relations in star and delta connections.
UNIT-III:
Transformers: Ideal and practical transformer, equivalent circuit, losses in transformers, regulation and
efficiency. Auto-transformer and three-phase transformer connections.
UNIT-IV:
Electrical Machines: Construction and working principle of dc machine, performance characteristics of
dc shunt machine. Generation of rotating magnetic field, Construction and working of a three-phase
induction motor, Significance of torque-slip characteristics. Single-phase induction motor, Construction
and working. Construction and working of synchronous generator.
UNIT-V:
Electrical Installations: Components of LT Switchgear: Switch Fuse Unit (SFU), MCB, ELCB, MCCB,
Types of Wires and Cables, Earthing. Types of Batteries, Important Characteristics for Batteries.
Elementary calculations for energy consumption, power factor improvement and battery backup.
TEXT BOOKS:
1. D.P. Kothari and I. J. Nagrath, “Basic Electrical Engineering” , Tata McGraw Hill, 4th Edition,
2019.
2. MS Naidu and S Kamakshaiah, “Basic Electrical Engineering” , Tata McGraw Hill, 2nd Edition,
2008.
REFERENCE BOOKS:
1. P. Ramana, M. Suryakalavathi, G.T. Chandrasheker, “Basic Electrical Engineering” , S. Chand,
2 nd Edition, 2019.
2. D. C. Kulshreshtha, “Basic Electrical Engineering” , McGraw Hill, 2009
3. M. S. Sukhija, T. K. Nagsarkar, “Basic Electrical and Electronics Engineering” , Oxford, 1st
Edition, 2012.
4. Abhijit Chakrabarthi, Sudipta Debnath, Chandan Kumar Chanda, “Basic Electrical
Engineering” , 2nd Edition, McGraw Hill, 2021.
5. L. S. Bobrow, “Fundamentals of Electrical Engineering” , Oxford University Press, 2011.
6. E. Hughes, “Electrical and Electronics Technology” , Pearson, 2010.
7. V. D. Toro, “Electrical Engineering Fundamentals” , Prentice Hall India, 1989
PROGRAMMING FOR PROBLEM SOLVING
UNIT - I: Overview of C:C Language Elements, Variable Declarations and Data Types, Executable
Statements, General Form of a C Program, Arithmetic Expressions,Formatting Numbers in Program
Output.
Selection Structures:Control Structures, Conditions, if Statement, if Statements with Compound
Statements, Decision Steps in Algorithms.
Repetition and Loop Statements: Repetition in Programs, Counting Loops and the while Statement,
Computing a Sum or Product in a Loop, for Statement, Conditional Loops, Loop Design, Nested Loops,
do-while Statement.
UNIT - II: Top-Down Design with Functions: Building Programs from Existing Information, Library
Functions, Top-Down Design and Structure Charts, Functions without Arguments, Functions with Input
Arguments.
Pointers and Modular Programming:Pointers and the Indirection Operator, Functions with Output
Parameters, Multiple Calls to a Function with Input/Output Parameters, Scope of Names, Formal Output
Parameters as Actual Arguments.
UNIT - III: Arrays: Declaring and Referencing Arrays, Array Subscripts, Using for Loops for Sequential
Access, Using Array Elements as Function Arguments, Array Arguments, Searching and Sorting an Array,
Parallel Arrays and Enumerated Types, Multidimensional Arrays.
Strings:String Basics, String Library Functions: Assignment and Substrings, Longer Strings:
Concatenation and Whole-Line Input, String Comparison, Arrays of Pointers.
UNIT - IV: Recursion: The Nature of Recursion, Tracing a Recursive Function, Recursive Mathematical
Functions, Recursive Functions with Array and String Parameters
Structure and Union Types:User-Defined Structure Types, Structure Type Data as Input and Output
Parameters, Functions with Structured Result Values,Union Types.
UNIT - V: Text and Binary File Pointers: Input/Output Files - Review and Further Study, Binary Files,
Searching a Database.
Searching and Sorting: Basic searching in an array of elements (linear and binary search techniques),
Basic algorithms to sort array of elements (Bubble, Insertion and Selection sort algorithms).
TEXT BOOKS:
1. Jeri R. Hanly and Elliot [Link], Problem solving and Program Design in C 7th Edition,
Pearson.
2. B.A. Forouzan and R.F. Gilberg C Programming and Data Structures, Cengage Learning, (3rd
Edition).
REFERENCE BOOKS:
1. Brian W. Kernighan and Dennis M. Ritchie, The C Programming Language, Prentice Hall of India.
2. E. Balagurusamy, Computer fundamentals and C, 2nd Edition, McGraw-Hill.
3. YashavantKanetkar, Let Us C, 18th Edition, BPB.
4. R.G. Dromey, How to solve it by Computer, Pearson (16th Impression).
5. Programming in C, Stephen G. Kochan, Fourth Edition, Pearson Education.
6. Herbert Schildt, C: The Complete Reference, Mc Graw Hill, 4th Edition.
7. Byron Gottfried, Schaum’ s Outline of Programming with C, McGraw-Hill.
ELECTRONIC DEVICES AND CIRCUITS
Course Objectives:
1. To introduce the basic semiconductor devices such as diodes, transistors, their characteristics
and applications.
2. To analyze simple diode circuits and transistor amplifiers.
3. To acquire the knowledge of special purpose electronic devices and their application.
Course Outcomes: Upon completion of the Course, the students will be able to:
1. Describe the working of diode, BJT and FET, their biasing methods, and deduce the expressions
for device parameters/ current/ and current-voltage relationships.
2. Discussand analyze the various diode circuits such as rectifiers, filters, clippers and clampers.
3. Design appropriate biasing circuits using BJT and analyze the low frequency transistor (BJT)
amplifier circuits.
4. Analyze the low frequency FET amplifier circuits and understand the MOSFET operation.
5. Acquire the knowledge about the role of special purpose electronic devices and their
applications.
Course PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11
CO1 3 3 - 2 2 - - - - - -
CO2 2 3 2 2 2 - - - - - -
CO3 3 3 3 2 2 - - - - - -
CO4 3 3 2 2 2 - - - - - 1
CO5 2 2 2 2 2 1 - - - - 2
UNIT - I
Diode: PN junction as a Diode, V-I characteristics, Diode resistance, Transition and Diffusion
capacitance, Diode equivalent circuit, Specifications.
Diode Applications:Rectifiers - Half-wave, Full-wave (center-tap and bridge), Capacitor filter for
rectifiers, Clippers and clampers.
UNIT - II
Bipolar Junction Transistor (BJT): Working principle, Current components, Common Base (CB),
Common Emitter (CE), Common Collector (CC) configurations, Input and output characteristics,
Transistor as an Amplifier.
BJT Biasing: Load line and operating point, Biasing techniques: Fixed bias, Collector-to-base bias, Self
bias, Bias Stability, Thermal runaway, Bias compensation using diodes.
UNIT - III
BJT Amplifiers:Transistor Hybrid parameter model, Analysis of CE, CC, CB Amplifiers and CE
Amplifier with emitterresistance, low frequency response of BJTAmplifiers, effect of coupling
andbypass capacitors on CEAmplifier.
UNIT - IV
Field Effect Transistors (FET): Junction FET: Structure, operation, and characteristics, MOSFET:
Enhancement and Depletion mode, Comparison of BJT and FET, FET SmallSignalModel,AnalysisofCS
andCDJFETAmplifiers, Introduction to FinFET and CNTFET.
UNIT - V
Special Purpose Devices: Breakdown mechanisms in Zener Diodes, Zener diode characteristics and
application, Structure, operation and characteristics of SCR and UJT, Principle of operation and
characteristics ofTunnel diode, Varactor Diode, Photo diode, Solar cell, LED, Schottky diode.
TEXT BOOKS:
REFERENCES:
1. David A. Bell, Electronic Devices and Circuits, Oxford University Press, 5ed., 2008.
2. Adel S. Sedra and Kenneth C. Smith,Microelectronic Circuits, Oxford University Press, 7ed.,
2014.
3. G.K. Mithal, Electronic Devices and Circuits, Khanna Publishers, 23ed., 2017.
4. S. Salivahanan and N. Suresh Kumar, Electronic Devices and Circuits, McGraw-Hill Education,
4ed., 2017.
ENGINEERING CHEMISTRY LAB
Course Objectives:
1. Students will understand and perform experiments based on core chemical
principles relevant to engineering applications.
2. Students will learn to estimate the hardness of water to assess its suitability for
drinking purposes.
3. Students will acquire the ability to perform acid-base titrations using
instrumental methods such as conductometry, potentiometry, and pH metry.
4. Students will gain hands-on experience in synthesizing polymers like Bakelite
and Nylon – 6, 6 in the laboratory.
5. Students will learn to determine the unknown concentration of potassium
permanganate (KMnO4) using a calibration curve.
Course Outcomes:
1. Students will develop practical skills through hands-on chemistry experiments
relevant to engineering. (SDG 4, 9)
2. Students will learn to determine important parameters such as water hardness
and the corrosion rate of mild steel under various conditions. (SDG 6, 12)
3. Students will be able to apply techniques like conductometry, potentiometry,
and pH metry to determine concentrations or equivalence points in acid-base
reactions.
(SDG 4, 9)
4. Students will gain experience in synthesizing polymers such as Bakelite and
Nylon-6,6. (SDG 9, 12)
5. Students will understand the working principle of Colorimetry and the
relationship between absorbance and concentration (Beer-Lambert Law). (SDG
3, 13)
List of Experiments:
I. Volumetric Analysis: Estimation of Hardness of water by EDTA Complexometry
method.
II. Conductometry:
1. Estimation of the concentration of strong acid by Conductometry.
2. Estimation of the concentration of strong and weak acid in an acid
mixture by Conductometry.
III. Potentiometry:
1. Estimation of concentration of Fe+2ion by Potentiometry using KMnO4.
2. Estimation of concentration of strong acid with strong base by
Potentiometry using quinhydrone
IV. pH Metry: Determination of an acid concentration using pH meter.
V. Colorimetry: Verification of Lambert-Beer’ s law using KMnO4.
VI. Preparations:
1. Preparation of Bakelite.
2. Preparation Nylon – 6, 6.
VII. Corrosion: Determination of rate of corrosion of mild steel in the presence and
absence of inhibitor.
VIII. Virtual lab experiments:
1. Construction of Fuel cell and it’ s working.
2. Smart materials for Biomedical applications
3. Batteries for electrical vehicles.
4. Functioning of solar cell and its applications.
REFERENCE BOOKS:
1. Lab manual for Engineering chemistry by B. Ramadevi and P. Aparna, S Chand
Publications, New Delhi (2022)
2. Vogel’ s text book of practical organic chemistry 5th edition
3. Inorganic Quantitative analysis by A.I. Vogel, ELBS Publications.
4. College Practical Chemistry by V.K. Ahluwalia, Narosa Publications Ltd. New
Delhi (2007).
BASIC ELECTRICAL ENGINEERING LAB
Course Outcomes: After learning the contents of this paper the student must be able to
1. Verify the basic Electrical circuits through different experiments.
2. Evaluate the performance calculations of Electrical Machines and Transformers through
various testing methods.
3. Analyze the transient responses of R, L and C circuits for different input conditions.
To measure the 3 2 1 2 0 0 1 2 0 1 2
electrical
parameters for
different types of
DC and AC
circuits using
conventional and
theorems
approach
To study the 3 2 1 1 3 0 0 0 2 0 1 1
transient
response of
various R, L and C
circuits using
different
excitations
To determine the 3 2 0 3 0 0 0 1 2 1 1
performance of
different types of
DC, AC machines
and Transformers
Evaluate the 3 2 1 0 3 1 0 1 1 2 1 2
performance
calculations of
Electrical
Machines and
Transformers
through various
testing methods
Analyse the 3 2 1 1 3 2 0 0 1 0 2 2
transient
responses of R, L
and C circuits for
different input
conditions
List of experiments/demonstrations:
PART- A (compulsory)
1. Verification of KVL and KCL
2. Verification of Thevenin’ s and Norton’ s theorem
3. Transient Response of Series RL and RC circuits for DC excitation
4. Resonance in series RLC circuit
5. Calculations and Verification of Impedance and Current of RL, RC and RLC series circuits
6. Measurement of Voltage, Current and Real Power in primary and Secondary Circuits of a
Single-Phase Transformer
7. Performance Characteristics of a DC Shunt Motor
8. Torque-Speed Characteristics of a Three-phase Induction Motor.
TEXT BOOKS:
1. D.P. Kothari and I. J. Nagrath, “Basic Electrical Engineering” , Tata McGraw Hill, 4th Edition,
2019.
2. MS Naidu and S Kamakshaiah, “Basic Electrical Engineering” , Tata McGraw Hill, 2 nd Edition,
2008.
REFERENCE BOOKS:
1. P. Ramana, M. Suryakalavathi, [Link],” Basic Electrical Engineering” , S. Chand,
2nd Edition, 2019.
2. D. C. Kulshreshtha, “Basic Electrical Engineering” , McGraw Hill, 2009
3. M. S. Sukhija, T. K. Nagsarkar, “Basic Electrical and Electronics Engineering” , Oxford, 1st
Edition, 2012.
4. Abhijit Chakrabarthi, Sudipta Debnath, Chandan Kumar Chanda, “Basic Electrical
Engineering” , 2nd Edition, McGraw Hill, 2021.
5. L. S. Bobrow, “Fundamentals of Electrical Engineering” , Oxford University Press, 2011.
6. E. Hughes, “Electrical and Electronics Technology” , Pearson, 2010.
7. V. D. Toro, “Electrical Engineering Fundamentals” , Prentice Hall India, 1989.
PROGRAMMING FOR PROBLEM SOLVING LAB
PRACTICE SESSIONS:
Expression Evaluation:
a) Write a C program, which takes two integer operands and one operator from the user, performs
the operation and then prints the result. (Consider the operators +,-,*, /, % and use Switch
Statement).
b) Write a program that finds if a given number is a prime number.
c) Write a C program to find the sum of individual digits of a positive integer and test given
number is palindrome.
d) A Fibonacci sequence is defined as follows: the first and second terms in the sequence are 0
and 1. Subsequent terms are found by adding the preceding two terms in the sequence. Write a
C program to generate the first n terms of the sequence.
Files:
a) Write a C program which copies one file to another, replacing all lowercase characters with
their uppercase equivalents.
b) Write a C program to merge two files into a third file (i.e., the contents of the first file followed
by those of the second are put in the third file).
Strings:
a) Write a C program that uses functions to perform the following operations:
I. To insert a sub-string into a given main string from a given position.
II. To delete n Characters from a given position in a given string
b) Write a C program to determine if the given string is a palindrome or not (Spelled same in both
directions with or without a meaning like madam, civic, noon, abcba, etc.)
c) Write a C program that displays the position of a character ch in the string S or – 1 if S
doesn’ t contain ch.
d) Write a C program to count the lines, words and characters in a given text.
TEXT BOOKS:
1. Jeri R. Hanly and Elliot [Link], Problem solving and Program Design in C 7th Edition,
Pearson.
2. B.A. Forouzan and R.F. Gilberg C Programming and Data Structures, Cengage Learning, (3rd
Edition).
REFERENCE BOOKS:
1. Brian W. Kernighan and Dennis M. Ritchie, The C Programming Language, Prentice Hall of India
2. E. Balagurusamy, Computer fundamentals and C, 2nd Edition, McGraw-Hill
3. YashavantKanetkar, Let Us C, 18th Edition, BPB
4. R.G. Dromey, How to solve it by Computer, Pearson (16th Impression)
5. Programming in C, Stephen G. Kochan, Fourth Edition, Pearson Education.
6. Herbert Schildt, C: The Complete Reference, Mc Graw Hill, 4th Edition
7. Byron Gottfried, Schaum’ s Outline of Programming with C, McGraw-Hill
IT WORKSHOP
Course Outcomes:
Perform Hardware troubleshooting
Understand Hardware components and inter dependencies
Safeguard computer systems from viruses/worms
Document/ Presentation preparation
Perform calculations using spreadsheets
PC Hardware
Task 1: Identify the peripherals of a computer, components in a CPU and its functions. Draw the block
diagram of the CPU along with the configuration of each peripheral and submit to your instructor.
Task 2: Every student should disassemble and assemble the PC back to working condition. Lab
instructors should verify the work and follow it up with a Viva. Also students need to go through the
video which shows the process of assembling a PC. A video would be given as part of the course
content.
Task 3: Every student should individually install MS windows on the personal computer. Lab instructor
should verify the installation and follow it up with a Viva.
Task 4: Every student should install Linux on the computer. This computer should have windows
installed. The system should be configured as dual boot with both Windows and Linux. Lab instructors
should verify the installation and follow it up with a Viva
Task 2: Web Browsers, Surfing the Web: Students customize their web browsers with the LAN proxy
settings, bookmarks, search toolbars and pop up blockers. Also, plug-ins like Macromedia Flash and
JRE for applets should be configured.
Task 3: Search Engines & Netiquette: Students should know what search engines are and how to use
the search engines. A few topics would be given to the students for which they need to search on
Google. This should be demonstrated to the instructors by the student.
Task 4: Cyber Hygiene: Students would be exposed to the various threats on the internet and would be
asked to configure their computer to be safe on the internet. They need to customize their browsers to
block pop ups, block active x downloads to avoid viruses and/or worms.
Task 2: Using LaTeX and Word to create a project certificate. Features to be covered:- Formatting Fonts
in word, Drop Cap in word, Applying Text effects, Using Character Spacing, Borders and Colors, Inserting
Header and Footer, Using Date and Time option in both LaTeX and Word.
Task 3: Creating project abstract Features to be covered:-Formatting Styles, Inserting table, Bullets and
Numbering, Changing Text Direction, Cell alignment, Footnote, Hyperlink, Symbols, Spell Check, Track
Changes.
Task 4: Creating a Newsletter: Features to be covered:- Table of Content, Newspaper columns, Images
from files and clipart, Drawing toolbar and Word Art, Formatting Images, Textboxes, Paragraphs and
Mail Merge in word.
Excel
Excel Orientation: The mentor needs to tell the importance of MS office or equivalent (FOSS) tool Excel
as a Spreadsheet tool, give the details of the four tasks and features that would be covered in each.
Using Excel – Accessing, overview of toolbars, saving excel files, Using help and resources.
Task 1: Creating a Scheduler - Features to be covered: Gridlines, Format Cells, Summation, auto fill,
Formatting Text
Task 2: Calculating GPA - Features to be covered:- Cell Referencing, Formulae in excel – average, std.
deviation, Charts, Renaming and Inserting worksheets, Hyper linking, Count function,
LOOKUP/VLOOKUP
Task 3: Split cells, freeze panes, group and outline, Sorting, Boolean and logical operators, Conditional
formatting
PowerPoint
Task 1: Students will be working on basic power point utilities and tools which help them create basic
PowerPoint presentations. PPT Orientation, Slide Layouts, Inserting Text, Word Art, Formatting Text,
Bullets and Numbering, Auto Shapes, Lines and Arrows in PowerPoint
Task 2: Interactive presentations - Hyperlinks, Inserting – Images, Clip Art, Audio, Video, Objects, Tables
and Charts.
Task 3: Master Layouts (slide, template, and notes), Types of views (basic, presentation, slide slotter,
notes etc), and Inserting – Background, textures, Design Templates, Hidden slides.
REFERENCE BOOKS:
1. Comdex Information Technology course tool kit Vikas Gupta,
2. The Complete Computer upgrade and repair book, 3rd edition Cheryl A Schmidt,
Course outcomes: After learning the contents of this paper, the student must be able to
1. Identify whether the given differential equation of first order is exact or not
2. Solve higher differential equation and apply the concept of differential equation to real world
problems.
3. Use the Laplace Transforms techniques for solving Ordinary Differential Equations.
4. Evaluate the Line, Surface and Volume integrals and converting them from one to another
TEXT BOOKS:
1. B.S. Grewal, Higher Engineering Mathematics, Khanna Publishers, 36th Edition, 2010.
2. R.K. Jain and S.R.K. Iyengar, Advanced Engineering Mathematics, Narosa Publications, 5th
Edition, 2016.
REFERENCE BOOKS:
1. Erwin Kreyszig, Advanced Engineering Mathematics, 9th Edition, John Wiley & Sons, 2006.
2. G.B. Thomas and R.L. Finney, Calculus and Analytic geometry, 9thEdition, Pearson, Reprint,
2002.
3. N.P. Bali and Manish Goyal, A text book of Engineering Mathematics, Laxmi Publications,
Reprint, 2008.
8. H. K. Dass and Er. Rajnish Verma, Higher Engineering Mathematics, S Chand and Company
Limited, New Delhi.
APPLIED PHYSICS
COURSE OBJECTIVES:
COURSE OUTCOMES:
1. Students will be able to analyze crystal structures, apply Bragg’ s law, and explain the
synthesis and characterization of nanomaterials.
2. Students will demonstrate proficiency in quantum mechanical principles, such as the
Schrödinger equation and wave function analysis.
3. Students will understand and apply the foundational elements of quantum computing,
including quantum gates, measurement, and computation.
4. Students will classify various magnetic and dielectric materials and explain the
physics of superconductivity and polarization mechanisms.
5. Students will describe the working principles of lasers and optical fibers and apply
them to real-world technological applications.
TEXT BOOKS:
REFERENCE BOOKS:
Course Outcomes: At the end of the course, the student will be able to:
1. Apply computer aided drafting tools to create 2D and 3D objects
2. sketch conics and different types of solids
3. Appreciate the need of Sectional views of solids and Development of surfaces of solids
4. Read and interpret engineering drawings
5. Conversion of orthographic projection into isometric view and vice versa manually and by using
computer aided drafting
TEXT BOOKS:
REFERENCE BOOKS:
1. Engineering Drawing, Basant Agrawal and C M Agrawal, McGraw Hill, 3rd Edition, 2019.
2. Engineering Graphics and Design, WILEY, John Wiley & Sons Inc, 3rdEdition, 2020.
3. Engineering Drawing, M. B. Shah and B.C. Rane, Pearson, 2nd Edition, 2009.
4. Engineering Drawing, N. S. Parthasarathy and Vela Murali, Oxford, 1st Edition, 2015.
5. Computer Aided Engineering Drawing, K Balaveera Reddy, CBS Publishers, 2 nd Edition, 2015.
Note: - External examination is conducted in conventional mode and internal evaluation to be
done by both conventional as well as using computer aided drafting.
DATA STRUCTURES
Course Objectives
1. Exploring basic data structures such as stacks and queues.
2. Introduces a variety of data structures such as hash tables, search trees, tries, heaps, graphs.
3. Introduces sorting and pattern matching algorithms.
Course Outcomes
1. Ability to select the data structures that efficiently model the information in a problem.
2. Ability to assess efficiency trade-offs among different data structure implementations or
combinations.
3. Implement and know the application of algorithms for sorting and pattern matching.
4. Design programs using a variety of data structures, including hash tables, binary and general
tree structures, search trees, tries, heaps, graphs, and AVL-trees.
UNIT – I
Introduction to Data Structures: Basic Terminology, Classification of Data Structures, Operation on Data
Structures, abstract data types, selecting a Data Structure, Linear list – Introduction, singly linked list,
Circular Linked Lists, Doubly Linked List, Stacks- Operations, Stack algorithm, Stack ADT, Stack
applications, Queues- operations, Queue Algorithm, Queue ADT, Queue Applications.
UNIT - II
Trees: Introduction, Types of Trees, creating a Binary Tree from a General Tree, traversing a Binary Tree,
Binary Search Trees (BST), BST Operations- Searching, Insertion and Deletion, BST ADT, BST
Applications, Threaded Binary Trees, AVL Trees, Red – Black Trees, Splay Trees
UNIT – III
Multi way Search Trees: Introduction, B Trees, B Trees ADT, 2-3 Trees, 2-3- Tree, B* Tree, B+ Trees
Heaps: Binary Heaps, Binomial heaps, Fibonacci heaps, Comparison of Various Heaps, Applications
Searching: Introduction, Interpolation Search, Jump search
UNIT - IV
Graphs: Introduction, Directed Graphs, Bi connected Components, Representation of Graphs, Graph
Traversal Algorithms, Graph ADT, Applications of Graphs
Sorting: Radix Sort, Heap sort, Shell Sort, Tree Sort,
UNIT – V
Hashing and Collision: Introduction, Hash Tables, Hash Functions, Different Hash Functions: Division
Method, Multiplication Method, Mid-square Method, Folding Method; collisions: Collision Resolution by
Open Addressing, Collision Resolution by Chaining
Files and their Organization: Introduction, Data hierarchy, File Attributes, Text and Binary Files, Basic File
Operations, File Organization, Indexing
TEXTBOOKS:
1. Data Structures: A Pseudocode Approach with C, 2 nd Edition, R. F. Gilberg and [Link],
Cengage Learning
2. Data Structure using C– Reema Thareja, 3rd Edition, Oxford University Press.
REFERENCE:
1. Data Structures using C – A. [Link], Y. Langsam, and M.J. Augenstein, PHI/Pearson
Education.
ENGLISH FOR SKILL ENHANCEMENT
INTRODUCTION
National Education Policy-2020 aims at preparing students with knowledge, skills, values, leadership
qualities and initiates them for lifelong learning. It also emphasizes language study and promotion of
languages through understanding and proper interpretation. English language is central to the
educational eco system. The importance of language as medium of communication for personal,
social, official and professional needs to be emphasized for clear and concise expression. Teaching
and learning of receptive and productive skills viz., Listening, Speaking, Reading and Writing (LSRW) are
to be taught and learnt effectively in the undergraduate Engineering programs. Learners should be
encouraged to engage in a rigorous process of learning to become proficient users of English language
by adopting a deeply focused and yet flexible approach as opposed to rote learning.
In this connection, suitable syllabus, effective pedagogy, continuous assessments and students’
involvement result in productive learning. This course supports the latest knowledge and skill
requirements and shall meet specified learning outcomes. The main objectives of English language
teaching and learning as medium of communication and for promotion of cultural values are embedded
in this syllabus. Efforts are being made in providing a holistic approach towards value-based language
learning which equips the learner with receptive as well as productive skills.
The focus in this syllabus is on skill development, fostering ideas and practice of language skills in
various contexts and cultures in the areas of vocabulary, grammar, reading and writing. For this, the
teachers should use the prescribed textbook for detailed study. The students should be encouraged to
read the texts leading to reading comprehension. The time should be utilized for working out the
exercises given after each excerpt, and also for supplementing the exercises with authentic materials of
a similar kind, for example, newspaper articles, advertisements, promotional material.
LEARNING OBJECTIVES:
COURSE OUTCOMES:
SYLLABUS
Unit – I
Theme: Perspectives
Vocabulary: The Concept of Word Formation -The Use of Prefixes and Suffixes - Words Often
Misspelt - Synonyms and Antonyms
Grammar: Identifying Common Errors in Writing with Reference to Parts of Speech particularly
Articles and Prepositions – Degrees of Comparison
Reading: Reading and Its Importance- Sub Skills of Reading – Skimming and Scanning.
Writing: Sentence Structures and Types -Use of Phrases and Clauses in Sentences- Importance
of Proper Punctuation- Techniques for Writing Precisely – Nature and Style of Formal
Writing.
Unit – II
Theme: Digital Transformation
Grammar: Identifying Common Errors in Writing with Reference to Noun-pronoun Agreement and
Subject-verb Agreement.
Vocabulary: Words Often Confused - Words from Foreign Languages and their Use in English.
Grammar: Identifying Common Errors in Writing with Reference to Misplaced Modifiers and
Tenses.
Reading: Sub-Skills of Reading – Identifying Topic Sentence and Providing Supporting Ideas -
Exercises for Practice.
Writing: Format of a Formal Letter-Writing Formal Letters E.g.., Letter of Complaint, Letter of
Requisition, Job Application with CV/Resume – Difference between Writing a Letter
and an Email - Email Etiquette.
Unit – IV
Theme: Entrepreneurship
Vocabulary: Technical Vocabulary and their Usage– One Word Substitutes – Collocations.
Grammar: Direct and Indirect Speech - Common Errors in English (Covering all the other aspects
of grammar which were not covered in the previous units)
Reading: Survey, Question, Read, Recite and Review (SQ3R Method) – Inferring the Meaning and
Evaluating a Text- Exercises for Practice
Note:
References:
COURSE OUTCOMES:
Upon successful completion of the course, students will be able to:
1. Analyze magnetic hysteresis behavior and determine material characteristics using the B-H
curve.
2. Experimentally determine physical constants such as the dielectric constant, Planck’ s
constant, and work function.
3. Measure and interpret the optical properties of laser and fiber optics including wavelength,
acceptance angle, and losses.
4. Evaluate the performance parameters of semiconductor and optoelectronic devices such as
energy gap, Hall coefficient, and LED/Solar cell characteristics.
5. Utilize curve fitting techniques, such as the least squares method, for experimental data
analysis and model validation.
11. To study and analyze the characteristics of a solar cell by plotting the V-I (voltage-current) and P-V
(power-voltage) curves
12. To study the V-I (voltage-current) and L-I (Light Intensity- Current) characteristics of a Light Emitting
Diode (LED).
DATA STRUCTURES LAB
Course Objectives:
1. It covers various concepts of C programming language
2. It introduces searching and sorting algorithms
3. It provides an understanding of data structures such as stacks and queues.
Course Outcomes:
1. Ability to develop C programs for computing and real-life applications using basic elements like
control statements, arrays, functions, pointers and strings, and data structures like stacks,
queues and linked lists.
2. Ability to Implement searching and sorting algorithms
List of Experiments
1. Write a program that uses functions to perform the following operations on singly linked list.:
i) Creation ii) Insertion iii) Deletion iv) Traversal
2. Write a program that uses functions to perform the following operations on doubly linked list.:
i) Creation ii) Insertion iii) Deletion iv) Traversal
3. Write a program that uses functions to perform the following operations on circular linked list.:
i) Creation ii) Insertion iii) Deletion iv) Traversal
4. Write a program that implement stack (its operations) using
i) Arrays ii) ADT
5. Write a program that implement Queue (its operations) using
i) Arrays ii) ADT
6. Write a program that implements the following sorting methods to sort a given list of integers in
ascending order
i ) Radix Sort, ii) Heap sort, iii) Shell Sort, iv) Tree Sort
7. Write a program to implement the tree traversal methods (Recursive and Non-Recursive).
8. Write a program to implement
i) Binary Search tree ii) B Trees iii) B+ Trees iv) AVL trees v) Red - Black trees
9. Write a program to implement the graph traversal methods.
[Link] a program to implement the following Hash Functions:i) Division Method, ii) Multiplication
Method, iii) Mid-square Method, iv) Folding Method
TEXT BOOKS:
1. Fundamentals of Data Structures in C, 2 nd Edition, E. Horowitz, S. Sahni and Susan Anderson
Freed, Universities Press.
2. Data Structures using C – A. S. Tanenbaum, Y. Langsam, and M. J. Augenstein, PHI/Pearson
Education.
REFERENCE BOOK:
1. Data Structures: A Pseudocode Approach with C, 2nd Edition, R. F. Gilberg and B. A. Forouzan,
Cengage Learning.
ENGLISH LANGUAGE AND COMMUNICATION SKILLS LAB
The English Language and Communication Skills (ELCS) Lab focuses on listening and speaking skills,
particularly on the production and practice of sounds of language and familiarizes the students with the
use of English in everyday situations both in formal and informal contexts.
Listening Skills:
Objectives
Learning Outcomes
Syllabus: English Language and Communication Skills Lab (ELCS) shall have two parts:
a. Computer Assisted Language Learning (CALL) Lab which focuses on listening skills
b. Interactive Communication Skills (ICS) Lab which focuses on speaking skills
The following course content is prescribed for the English Language and Communication Skills Lab.
Exercise – I
CALL Lab:
ICS Lab:
Spoken and Written language - Formal and Informal English - Greetings - Introducing
Oneself and Others
CALL Lab:
Listening
ICS Lab:
Role Play Activity - Situational Dialogues – Expressions used in Various Situations – Making
Requests and Seeking Permissions – Taking Leave - Telephone Etiquette
Exercise - III
CALL Lab:
Instruction: Errors in Pronunciation – Tips for Neutralizing Mother Tongue Influence (MTI)
ICS Lab:
Picture Description Activity – Looking at a Picture and Describing Objects, Situations, Places,
People and Events
Exercise – IV
CALL Lab:
ICS Lab:
Exercise – V
CALL Lab:
Practice: Listening for Evaluation - Write the Summary – Listening Comprehension Exercises
ICS Lab:
The Computer Assisted Language Learning Lab has to accommodate 40 students with 40 systems,
with one Master Console, LAN facility and English language learning software for self- study by
students.
System Requirement (Hardware component):
The Interactive Communication Skills Lab: A Spacious room with movable chairs and audio-visual
aids with a Public Address System, a T. V. or LCD, a digital stereo – audio & video system and
camcorder etc.
Note: English Language Teachers are requested to prepare Materials / Handouts for each
Activity for the Use of those Materials in CALL & ICS Labs.
Suggested Software:
References:
Course Objectives:
1. To Study of different hand operated power tools, uses and their demonstration.
2. To gain a good basic working knowledge required for the production of various engineering
products.
3. To provide hands on experience about use of different engineering materials, tools, equipments
and processes those are common in the engineering field.
4. To develop a right attitude, team working, precision and safety at work place.
5. It explains the construction, function, use and application of different working tools, equipment
and machines.
6. To study commonly used carpentry joints.
7. To have practical exposure to various welding and joining processes.
8. Identify and use marking out tools, hand tools, measuring equipment and to work to prescribed
tolerances.
Course Outcomes: At the end of the course, the student will be able to:
1. Study and practice on machine tools and their operations
2. Practice on manufacturing of components using workshop trades including pluming, fitting,
carpentry, foundry, house wiring and welding.
3. Identify and apply suitable tools for different trades of Engineering processes including drilling,
material removing, measuring, chiseling.
4. Apply basic electrical engineering knowledge for house wiring practice.
Plumbing, Machine Shop, Metal Cutting (Water Plasma), Power tools in construction and Wood Working
Text Books:
1. Workshop Practice /B. L. Juneja / Cengage
2. Workshop Manual / [Link] / Anuradha.
Reference Books:
1. Work shop Manual - [Link]/ [Link]/ Scitech
2. Workshop Manual / Venkat Reddy/ BSP
PYTHON PROGRAMMING LAB
Course Outcomes: After completion of the course, the student should be able to
1. Develop the application specific codes using python.
2. Understand Strings, Lists, Tuples and Dictionaries in Python
3. Verify programs using modular approach, file I/O, Python standard library
4. Implement Digital Systems using Python
Note: The lab experiments will be like the following experiment examples.
List of Experiments:
1.
I. Use a web browser to go to the Python website [Link] This page contains
information about Python and links to Python-related pages, and it gives you the ability to
search the Python documentation.
II. Start the Python interpreter and type help() to start the online help utility.
2. Start a Python interpreter and use it as a Calculator.
3. Write a program to calculate compound interest when principal, rate and number of periods are
given.
4. Read the name, address, email and phone number of a person through the keyboard and print
the details.
5. Print the below triangle using for loop.
5
44
333
2222
11111
6. Write a program to check whether the given input is digit or lowercase character or uppercase
character or a special character(use 'if-else-if' ladder)
7. Python program to print all prime numbers in a given interval (use break)
8. Write a program to convert a list and tuple into arrays.
9. Write a program to find common values between two arrays.
10. Write a function called palindrome that takes a string argument and returnsTrue if it is a
palindrome and False otherwise. Remember that you can use the built-in function len to check
the length of a string.
11. Write a function called is_sorted that takes a list as a parameter and returns True if the list is
sorted in ascending order and False otherwise.
12. Write a function called has_duplicates that takes a list and returns True if there is any element
that appears more than once. It should not modify the original list.
13. Write a function called remove_duplicates that takes a list and returns a new list with only the
unique elements from the original. Hint: they don’ t have to be in the same order.
14. The wordlist I provided, [Link], doesn’ t contain single letter words. So you might want to
add “I” , “a” , and the empty string.
15. Write a python code to read dictionary values from the user. Construct a function to invert its
content. i.e., keys should be values and values should be keys.
16. Add a comma between the characters. If the given word is 'Apple', it should become 'A,p,p,l,e'
17. Remove the given word in all the places in a string?
18. Write a function that takes a sentence as an input parameter and replaces the first letter of
every word with the corresponding upper case letter and the rest of the letters in the word by
corresponding letters in lower case without using a built-in function?
19. Writes a recursive function that generates all binary strings of n-bit length
20. Write a python program that defines a matrix and prints
21. Write a python program to perform multiplication of two square matrices
22. How do you make a module? Give an example of construction of a module using different
geometrical shapes and operations on them as its functions.
23. Use the structure of exception handling all general-purpose exceptions.
24. Write a function called draw_rectangle that takes a Canvas and a Rectangle as arguments and
draws a representation of the Rectangle on the Canvas.
25. Add an attribute named color to your Rectangle objects and modify draw_rectangle so that it
uses the color attribute as the fill color.
26. Write a function called draw_point that takes a Canvas and a Point as arguments and draws a
representation of the Point on the Canvas.
27. Define a new class called Circle with appropriate attributes and instantiate a few Circle
objects. Write a function called draw_circle that draws circles on the canvas.
28. Write a python code to read a phone number and email-id from the user and validate it for
correctness.
29. Write a Python code to merge two given file contents into a third file.
30. Write a Python code to open a given file and construct a function to check for given words
present in it and display on found.
31. Write a Python code to Read text from a text file, find the word with most number of
occurrences
32. Write a function that reads a file and displays the number of words, number of vowels,
blank spaces, lower case letters and uppercase letters.
33. Import numpy, Plotpy and Scipy and explore their functionalities.
34. Install NumPypackage with pip and explore it.
35. Write a program to implement Digital Logic Gates – AND, OR, NOT, EX-OR
36. Write a GUI program to create a window wizard having two text labels, two text fields and two
buttons as Submit and Reset.
TEXT BOOKS:
1. Supercharged Python: Take your code to the next level, Overland
2. Learning Python, Mark Lutz, O'reilly
REFERENCE BOOKS:
1. Python Programming: A Modern Approach, VamsiKurama, Pearson
2. Python Programming A Modular Approach with Graphics, Database, Mobile, and Web
Applications, SheetalTaneja, Naveen Kumar, Pearson
3. Introduction to Python Programming, Gowrishakar S, Veena A, CRC Press
4. Programming with Python, A User’ s Book, Michael Dawson, Cengage Learning, India Edition
5. Python forData Science, Dr. Mohd Abdul Hameed, Wiley publications
6. Core Python Programming, [Link] Rao, Dreamtechpress
7. Introduction to Python, Gowrishankar S, Veena A., CRC Press
DISCRETE MATHEMATICS
Course Outcomes:
1. Understand and construct precise mathematical proofs
2. Apply logic and set theory to formulate precise statements
3. Analyze and solve counting problems on finite and discrete structures
4. Describe and manipulate sequences
5. Apply graph theory in solving computing problems
UNIT - I
Mathematical logic: Introduction, Statements and Notation, Connectives, Normal Forms, Theory
ofInference for the Statement Calculus, The Predicate Calculus, Inference Theory of the
PredicateCalculus.
UNIT - II
Set theory: Introduction, Basic Concepts of Set Theory, Representation of Discrete Structures,Relations
and Ordering, Functions.
UNIT - III
Algebraic Structures: Introduction, Algebraic Systems, Semi groups and Monoids, Lattices as
PartiallyOrdered Sets, Boolean Algebra.
UNIT - IV
Elementary Combinatorics: Basics of Counting, Combinations and Permutations, Enumeration
ofCombinations and Permutations, Enumerating Combinations and Permutations with
Repetitions,Enumerating Permutation with Constrained Repetitions, Binomial Coefficient, The Binomial
andMultinomial Theorems, The Principle of Exclusion.
UNIT - V
Graph Theory: Basic Concepts, Isomorphism and Subgraphs, Trees and their Properties,
SpanningTrees, Directed Trees, Binary Trees, Planar Graphs, Euler’ s Formula, Multi-graphs and Euler
Circuits,Hamiltonian Graphs, Chromatic Numbers, The Four-Color Problem.
TEXT BOOKS:
1. Discrete Mathematical Structures with Applications to Computer Science: J.P. Tremblay, R.
Manohar,McGraw-Hill, 1st ed.
2. Discrete Mathematics for Computer Scientists & Mathematicians: Joe l. Mott, Abraham Kandel,
Teodore P. Baker, Prentis Hall of India, 2nd ed.
REFERENCE BOOKS:
1. Discrete and Combinatorial Mathematics - an applied introduction: Ralph.P.
Grimald,Pearson education, 5 thedition.
2. Discrete Mathematical Structures: Thomas Kosy, Tata McGraw Hill Publishing co.
COMPUTER ORGANIZATION AND ARCHITECTURE
Course Objectives:
The purpose of the course is to introduce principles of computer organization and the basic
architectural concepts.
It begins with basic organization, design, and programming of a simple digital computer and
introduces simple register transfer language to specify various computer operations.
Topics include computer arithmetic, instruction set design, microprogrammed control unit,
pipelining and vector processing, memory organization and I/O systems, and multiprocessors
Course Outcomes:
Understand the basics of instruction sets and their impact on processor design.
Demonstrate an understanding of the design of the functional units of a digital computer
system.
Evaluate cost performance and design trade-offs in designing and constructing a computer
processor including memory.
Design a pipeline for consistent execution of instructions with minimum hazards.
Recognize and manipulate representations of numbers stored in digital computers
UNIT - I:
Boolean Algebra and Logic Gates: Binary codes, Binary Storage and Registers, Binary logic.
Digital logic gates. Data Representation: Data types, Complements, Fixed Point Representation,
Floating Point Representation
Digital Computers: Introduction, Block diagram of Digital Computer, Definition of Computer
Organization, Computer Design and Computer Architecture.
UNIT - II:
Combinational Logic: Combinational Circuits, Analysis procedure Design procedure, Binary
Adder-Subtractor Decimal Adder, Binary multiplier, magnitude comparator, Decoders, Encoders,
Multiplexers, HDL for combinational circuits.
Sequential Logic: Sequential circuits, latches, Flip-Flops Analysis of clocked sequential circuits, state
Reduction and Assignment, Design Procedure. Registers, shift Registers, Ripple counters, synchronous
counters, other counters.
UNIT III
Register Transfer Language and Micro operations: Register Transfer language, Register Transfer, Bus
and memory transfers, Arithmetic Micro operations, logic micro operations, shift micro operations,
Arithmetic logic shift unit.
Basic Computer Organization and Design: Instruction codes, Computer Registers Computer
instructions, Timing and Control, Instruction cycle, Memory Reference Instructions, Input – Output and
Interrupt.
UNIT - IV
Microprogrammed Control: Control memory, Address sequencing, micro program example, design of
control unit.
Central Processing Unit: General Register Organization, Instruction Formats, Addressing modes, Data
Transfer and Manipulation, Program Control.
Computer Arithmetic: Addition and subtraction, multiplication Algorithms, Division Algorithms, Floating
– point Arithmetic operations. Decimal Arithmetic unit, Decimal Arithmetic operations.
UNIT - V
Input-Output Organization: Input-Output Interface, Asynchronous data transfer, Modes of Transfer,
Priority Interrupt Direct memory Access.
Memory Organization: Memory Hierarchy, Main Memory, Auxiliary memory, Associate Memory, Cache
Memory.
TEXT BOOKS:
1. Digital Design – M. Morris Mano, Third Edition, Pearson/PHI.
2. Computer System Architecture – M. Morris Mano, Third Edition, Pearson/PHI.
REFERENCE BOOKS:
1. Switching and Finite Automata Theory, ZVI. Kohavi, Tata Mc Graw Hill.
2. Computer Organization – Carl Hamacher, ZvonksVranesic, SafeaZaky, 5th Edition, McGraw
Hill.
3. Computer Organization and Architecture – William Stallings Sixth Edition, Pearson/PHI.
4. Structured Computer Organization – Andrew S. Tanenbaum, 4th Edition, PHI/Pearson.
OBJECT ORIENTED PROGRAMMING THROUGH JAVA
Course Outcomes:
1. Demonstrate the behavior of programs involving the basic programming constructs like control
structures, constructors, string handling and garbage collection.
2. Demonstrate the implementation of inheritance (multilevel, hierarchical and multiple) by using
extend and implement keywords
3. Use multithreading concepts to develop inter process communication.
4. Understand the process of graphical user interface design and implementation using AWT or
swings.
5. Develop applets that interact abundantly with the client environment and deploy on the server.
UNIT - I
Object oriented thinking and Java Basics- Need for oop paradigm, summary of oop concepts, coping
with complexity, abstraction mechanisms. History of Java, Java buzzwords, data types, variables, scope
and lifetime of variables, arrays, operators, expressions, control statements, type conversion and
casting, simple java program, concepts of classes, objects, constructors, methods, access control, this
keyword, garbage collection, overloading methods and constructors, parameter passing, recursion,
nested and inner classes, exploring String class.
UNIT - II
Inheritance, Packages and Interfaces – Hierarchical abstractions, Base class object, subclass, subtype,
substitutability, forms of inheritance specialization, specification, construction, extension, limitation,
combination, benefits of inheritance, costs of inheritance. Member access rules, super keyword uses,
using final keyword with inheritance, polymorphism- method overriding, abstract classes, the Object
class. Defining, Creating and Accessing a Package, Understanding CLASSPATH, importing packages,
differences between classes and interfaces, defining an interface, implementing interface, applying
interfaces, variables in interface and extending interfaces.
UNIT - III
Exception handling and Multithreading-- Concepts of exception handling, benefits of exception handling,
Termination or resumptive models, exception hierarchy, usage of try, catch, throw, throws and finally,
built in exceptions, creating own exception subclasses. Differences between multithreading and
multitasking, thread life cycle, creating threads, thread priorities, synchronizing threads, inter thread
communication, thread groups, daemon threads.
UNIT - IV
Exploring String class, Object class, Exploring [Link] package, Exploring [Link] package
Event Handling: Events, Event sources, Event classes, Event Listeners, Delegation event model, handling
mouse and keyboard events, Adapter classes. graphics, layout manager – layout manager types –
border, grid, flow, card and grid bag.
UNIT - V
Swing – Introduction, limitations of AWT, MVC architecture, components, containers, exploring swing-
JFrame and JComponent, JLabel, ImageIcon, JTextField, JButton, JCheckBox, JRadioButton, JList,
JComboBox, Tabbed Panes, Scroll Panes, Trees, and Tables. Menu Basics, Menu related classes -
JMenuBar, JMenu, JMenuItem, JCheckBoxMenuItem, JRadioButtonMenuItem, JSeperator. creating a
popup menu
TEXT BOOKS:
1. Java the complete reference, 13th edition, Herbert schildt, Dr. Denny Coward, Mc Graw Hill.
2. Understanding OOP with Java, updated edition, T. Budd, Pearson education.
REFERENCE BOOKS:
1. An Introduction to programming and OO design using Java, [Link] and F.A. Hosch, John Wiley&
sons.
2. An Introduction to OOP, third edition, T. Budd, Pearson education.
3. Introduction to Java programming, Y. Daniel Liang, Pearson education.
4. An introduction to Java programming and object-oriented application development, R.A.
Johnson- Thomson.
5. Core Java 2, Vol 1, Fundamentals, Cay.S. Horstmann and Gary Cornell, eighth Edition, Pearson
Education.
6. Core Java 2, Vol 2, Advanced Features, Cay.S. Horstmann and Gary Cornell, eighth Edition,
Pearson Education
7. Object Oriented Programming with Java, [Link], [Link], [Link], TMH.
8. Java and Object Orientation, an introduction, John Hunt, second edition, Springer.
9. Maurach’ s Beginning Java2 JDK 5, SPD.
SOFTWARE ENGINEERING
Course Outcomes
Ability to translate end-user requirements into system and software requirements, using e.g.
UML, and structure the requirements in a Software Requirements Document (SRD).
Identify and apply appropriate software architectures and patterns to carry out high level design
of a system and be able to critically compare alternative choices.
Will have experience and/or awareness of testing problems and will be able to develop a simple
testing report
UNIT - I
Introduction to Software Engineering: The evolving role of software, changing nature of software,
software myths. A Generic view of process: Software engineering- a layered technology, a process
framework, the capability maturity model integration (CMMI). Process models: The waterfall model,
Spiral model, Incremental Process Models, Concurrent Models, Component based development and
Agile Development.
UNIT - II
Software Requirements: Functional and non-functional requirements, user requirements, system
requirements, interface specification, the software requirements document.
Requirements engineering process: Feasibility studies, requirements elicitation and analysis,
requirements validation, requirements management.
UNIT - III
Design Engineering: Design process and design quality, design concepts, the design model.
Creating an architectural design: software architecture, data design, architectural styles and patterns,
architectural design, conceptual model of UML, basic structural modeling, use case diagrams, class
diagrams, sequence diagrams, collaboration diagrams, activity diagrams and component diagrams.
UNIT - IV
Testing Strategies: A strategic approach to software testing, test strategies for conventional software,
black-box and white-box testing, validation testing, system testing, the art of debugging.
Metrics for Process and Products: Software measurement, metrics for software quality.
UNIT - V
Risk management: Reactive Vs proactive risk strategies, software risks, risk identification,
riskprojection, risk refinement, RMMM. Quality Management: Quality concepts, software quality
assurance, software reviews, formal technical reviews, statistical software quality assurance, software
reliability, the ISO 9000 quality standards.
TEXT BOOKS:
1. Software Engineering, A practitioner’ s Approach- Roger S. Pressman, 6th edition, McGraw Hill
International Edition.
2. Software Engineering- Sommerville, 7th edition, Pearson Education.
3. The unified modeling language user guide, Grady Booch, James Rumbaugh, Ivar Jacobson,
Pearson Education.
REFERENCE BOOKS:
1. Software Engineering, an Engineering approach- James F. Peters, Witold Pedrycz, John Wiley.
2. Software Engineering principles and practice- Waman S Jawadekar, The McGraw-Hill
Companies.
3. Fundamentals of object-oriented design using UML Meiler page-Jones: Pearson Education.
4. Fundamentals of Software Engineering-Rajib Mall, PHI.
DATABASE MANAGEMENT SYSTEMS
Course Objectives:
1. To understand the basic concepts and the applications of database systems.
2. To master the basics of SQL and construct queries using SQL.
3. Topics include data models, database design, relational model, relational algebra, transaction
control, concurrency control, storage structures and access techniques.
Course Outcomes:
1. Gain knowledge of fundamentals of DBMS, database design and normal forms
2. Master the basics of SQL for retrieval and management of data.
3. Be acquainted with the basics of transaction processing and concurrency control.
4. Familiarity with database storage structures and access techniques
UNIT - I
Database System Applications: A Historical Perspective, File Systems versus a DBMS, the Data Model,
Levels of Abstraction in a DBMS, Data Independence, Structure of a DBMS
Introduction to Database Design: Database Design and ER Diagrams, Entities, Attributes, and Entity
Sets, Relationships and Relationship Sets, Additional Features of the ER Model, Conceptual Design With
the ER Model
UNIT - II
Introduction to the Relational Model: Integrity constraint over relations, enforcing integrity constraints,
querying relational data, logical database design, introduction to views, destroying/altering tables and
views.
Relational Algebra, Tuple relational Calculus, Domain relational calculus.
UNIT - III
SQL: QUERIES, CONSTRAINTS, TRIGGERS: form of basic SQL query, UNION, INTERSECT, and EXCEPT,
Nested Queries, aggregation operators, NULL values, complex integrity constraints in SQL, triggers and
active databases.
Schema Refinement: Problems caused by redundancy, decompositions, problems related to
decomposition, reasoning about functional dependencies, FIRST, SECOND, THIRD normal forms, BCNF,
lossless join decomposition, multivalued dependencies, FOURTH normal form, FIFTH normal form.
UNIT - IV
Transaction Concept, Transaction State, Implementation of Atomicity and Durability, Concurrent
Executions, Serializability, Recoverability, Implementation of Isolation, Testing for serializability, Lock
Based Protocols, Timestamp Based Protocols, Validation- Based Protocols, Multiple Granularity,
Recovery and Atomicity, Log– Based Recovery, Recovery with Concurrent Transactions.
UNIT - V
Data on External Storage, File Organization and Indexing, Cluster Indexes, Primary and Secondary
Indexes, Index data Structures, Hash Based Indexing, Tree based Indexing, Comparison of File
Organizations, Indexes- Intuitions for tree Indexes, Indexed Sequential Access Methods (ISAM),
B+ Trees: A Dynamic Index Structure.
TEXT BOOKS:
1. Database System Concepts, Silberschatz, Korth, McGraw hill, V edition.3rd Edition
2. Database Management Systems, Raghurama Krishnan, Johannes Gehrke, Tata Mc Graw Hill
REFERENCE BOOKS:
1. Database Systems design, Implementation, and Management, Peter Rob & Carlos Coronel
7thEdition.
2. Fundamentals of Database Systems, ElmasriNavrate, Pearson Education
3. Introduction to Database Systems, C. J. Date, Pearson Education
4. Oracle for Professionals, The X Team, [Link] and V. Shah, SPD.
5. Database Systems Using Oracle: A Simplified guide to SQL and PL/SQL,Shah, PHI.
6. Fundamentals of Database Management Systems, M. L. Gillenson, Wiley Student Edition.
INNOVATION AND ENTREPRENEURSHIP
Course Objectives:
1. To familiarize on the basic concepts of innovation, entrepreneurship and its importance.
2. To Identify and analyze the process of problem-opportunity identification, market segmentation,
and idea generation techniques.
3. To initiate prototype development and understand minimum viable product.
4. To develop initial Business and financial planning and Go-to-Market strategies
5. To impart knowledge on establishing startups, venture pitching and IPR
Course Outcomes:
1. Understand the entrepreneurship and the entrepreneurial process and its significance in
economic development. (SDG – 8, 9, 10, 17)
2. Assess the problem from an industry perspective and generate solutions using the design
thinking principles. (SDG – 9, 12, 17)
3. Assess market competition, estimate market size, and develop a prototype. (SDG – 9, 10, 16)
4. Analyze Business and financial planning models and Go-to-Market strategies. (SDG – 4, 8, 9)
5. Able to build a start-up, register IP and identify funding opportunities. (SDG – 8, 9)
Suggested Readings:
1. John R Bessant, Joe Tidd, Innovation and Entrepreneurship, 4E, Wiley, Latest Edition.
2. Ajay Batra, The Stratup Launch Book- A Practical Guide for Launching Customer Centric
Ventures, Wiley, 2020. (For Core Teaching Tool).
3. Entrepreneurship Development and Small Business Enterprises, Poornima M Charantimath, 3E,
Pearson, 2018.
4. D.F. Kuratko and T.V. Rao, Entrepreneurship: A South-Asian Perspective, Cengage Learning,
2013.
5. [Link],[Link],[Link],SabyasachiSinha(2020). Entrepreneurship,
McGrawHill, 11th Edition.
6. NISP -Brochure inside pages - startup_policy_2019.pdf
OBJECT ORIENTED PROGRAMMING THROUGH JAVA LAB
Course Objectives:
1. To write programs using abstract classes.
2. To write programs for solving real world problems using the java collection framework.
3. To write multithreaded programs.
4. To write GUI programs using swing controls in Java.
5. To introduce java compiler and eclipse platform.
6. To impart hands-on experience with java programming.
Course Outcomes:
1. Able to write programs for solving real world problems using the java collection framework.
2. Able to write programs using abstract classes.
3. Able to write multithreaded programs.
4. Able to write GUI programs using swing controls in Java.
Note:
1. Use LINUX and MySQL for the Lab Experiments. Though not mandatory, encourage the use
of the Eclipse platform.
2. The list suggests the minimum program set. Hence, the concerned staff is requested to add
more problems to the list as needed.
List of Experiments:
1. Use Eclipse or Net bean platform and acquaint yourself with the various menus. Create a test
project, add a test class, and run it. See how you can use auto suggestions, auto fill. Try code
formatter and code refactoring like renaming variables, methods, and classes. Try debug step
by step with a small program of about 10 to 15 lines which contains at least one if else
condition and a for loop.
2. Write a Java program that works as a simple calculator. Use a grid layout to arrange buttons for
the digits and for the +, -,*, % operations. Add a text field to display the result. Handle any
possible exceptions like divided by zero.
3.
A) Develop an applet in Java that displays a simple message.
B) Develop an applet in Java that receives an integer in one text field, and computes its
factorial
4. Value and returns it in another text field, when the button named “Compute” is clicked.
5. Write a Java program that creates a user interface to perform integer divisions. The user enters
two numbers in the text fields, Num1 and Num2. The division of Num1 and Num 2 is displayed
in the Result field when the Divide button is clicked. If Num1 or Num2 were not an integer, the
program would throw a Number Format Exception. If Num2 were Zero, the program would
throw an Arithmetic Exception. Display the exception in a message dialog box.
6. Write a Java program that implements a multi-thread application that has three threads. First
thread generates a random integer every 1 second and if the value is even, the second thread
computes the square of the number and prints. If the value is odd, the third thread will print the
value of the cube of the number.
8. Write a Java program that simulates a traffic light. The program lets the user select one of
three lights: red, yellow, or green with radio buttons. On selecting a button, an appropriate
message with “Stop” or “Ready” or “Go” should appear above the buttons in the
selected color. Initially, there is no message shown.
9. Write a Java program to create an abstract class named Shape that contains two integers and
an empty method named print Area (). Provide three classes named Rectangle, Triangle, and
Circle such that each one of the classes extends the class Shape. Each one of the classes
contains only the method print Area () that prints the area of the given shape.
10. Suppose that a table named [Link] is stored in a text file. The first line in the file is the
header, and the remaining lines correspond to rows in the table. The elements are separated by
commas.
11. Write a java program to display the table using Labels in Grid Layout.
12. Write a Java program that handles all mouse events and shows the event name at the center of
the window when a mouse event is fired (Use Adapter classes).
13. Write a Java program that loads names and phone numbers from a text file where the data is
organized as one line per record and each field in a record are separated by a tab (\t). It takes a
name or phone number as input and prints the corresponding other value from the hash table
(hint: use hash tables).
14. Write a Java program that correctly implements the producer – consumer problem using the
concept of inter thread communication.
15. Write a Java program to list all the files in a directory including the files present in all its
subdirectories.
TEXT BOOKS:
1. Java for Programmers, P. J. Deitel and H. M. Deitel, 10th Edition Pearson education.
2. Thinking in Java, Bruce Eckel, Pearson Education.
REFERENCE BOOKS
1. Java Programming, D. S. Malik and P. S. Nair, Cengage Learning.
2. Core Java, Volume 1, 9th edition, Cay S. Horstmann and G Cornell, Pearson.
SOFTWARE ENGINEERING LAB
Course Objectives:
To have hands-on experience in developing a software project by using various software
engineering principles and methods in each of the phases of software development.
Course Outcomes:
Ability to translate end-user requirements into system and software requirements
Ability to generate a high-level design of the system from the software requirements
Will have experience and/or awareness of testing problems and will be able to develop a simple
testing report
List of Experiments
Do the following seven exercises for any two projects given in the list of sample projects or any other
Projects:
1 Development of problem statements.
2 Preparation of Software Requirement Specification Document, Design Documents and Testing
Phase related documents.
3 Preparation of Software Configuration Management and Risk Management related documents.
4 Study and usage of any Design phase CASE tool
5 Performing the Design by using any Design phase CASE tools.
6 Develop test cases for unit testing and integration testing
7 Develop test cases for various white box and black box testing techniques.
Sample Projects:
1. Passport automation System
2. Book Bank
3. Online Exam Registration
4. Stock Maintenance System
5. Online course reservation system
6. E-ticketing
7. Software Personnel Management System
8. Credit Card Processing
9. E-book management System.
10. Recruitment system
TEXT BOOKS:
1. Software Engineering, A practitioner’ s Approach- Roger S. Pressman, 6th edition, McGraw Hill
International Edition.
2. Software Engineering- Sommerville, 7th edition, Pearson Education.
3. The unified modeling language user guide Grady Booch, James Rambaugh, Ivar Jacobson,
Pearson Education.
REFERENCE BOOKS:
1. Software Engineering, an Engineering approach- James F. Peters, Witold Pedrycz, John Wiley.
2. Software Engineering principles and practice- Waman S Jawadekar, The McGraw-Hill
DATABASE MANAGEMENT SYSTEMS LAB
Course Outcomes:
Design database schema for a given application and apply normalization
Acquire skills in using SQL commands for data definition and data manipulation.
Develop solutions for database applications using procedures, cursors and triggers
List of Experiments:
1. Concept design with E-R Model
2. Relational Model
3. Normalization
4. Practicing DDL commands
5. Practicing DML commands
6. A) Querying (using ANY, ALL, UNION, INTERSECT, JOIN, Constraints etc.) B) Nested, Correlated
subqueries
7. Queries using Aggregate functions, GROUP BY, HAVING and Creation and dropping of Views.
8. Triggers (Creation of insert trigger, delete trigger, update trigger)
9. Procedures
10. Usage of Cursors
TEXT BOOKS:
1. Database Management Systems, Raghurama Krishnan, Johannes Gehrke, Tata Mc Graw
Hill,3rd Edition
2. Database System Concepts, Silberschatz, Korth, McGraw Hill, V edition.
REFERENCES BOOKS:
1. Database Systems design, Implementation, and Management, Peter Rob & Carlos Coronel
7thEdition.
2. Fundamentals of Database Systems, ElmasriNavrate, Pearson Education
3. Introduction to Database Systems, C.J. Date, Pearson Education
4. Oracle for Professionals, The X Team, S. Shah and V. Shah, SPD.
5. Database Systems Using Oracle: A Simplified guide to SQL and PL/SQL, Shah, PHI.
6. Fundamentals of Database Management Systems, M. L. Gillenson, Wiley Student Edition.
SKILL DEVELOPMENT COURSE – I
Course Objectives:
1. To implement the static web pages using HTML and do client-side validation using JavaScript.
2. To design and work with databases using Java
3. To develop an end to end application using java full stack.
4. To introduce Node JS implementation for server-side programming.
5. To experiment with single page application development using React.
Course Outcomes: At the end of the course, the student will be able to,
1. Build a custom website with HTML, CSS, and Bootstrap and little JavaScript.
2. Demonstrate Advanced features of JavaScript and learn about JDBC
3. Develop Server – side implementation using Java technologies like
4. Develop the server – side implementation using Node JS.
5. Design a Single Page Application using React.
Exercises:
1. Build a responsive web application for shopping cart with registration, login, catalog and cart
pages using CSS3 features, flex and grid.
2. Make the above web application responsive web application using Bootstrap framework.
3. Use JavaScript for doing client – side validation of the pages implemented in experiment 1
and experiment 2.
4. Explore the features of ES6 like arrow functions, callbacks, promises, async/await. Implement
an application for reading the weather information from [Link] and display the
information in the form of a graph on the web page.
5. Develop a java stand alone application that connects with the database (Oracle / mySql) and
perform the CRUD operation on the database tables.
6. Create an xml for the bookstore. Validate the same using both DTD and XSD.
7. Design a controller with servlet that provides the interaction with application developed in
experiment 1 and the database created in experiment 5.
8. Maintaining the transactional history of any user is very important. Explore the various session
tracking mechanism (Cookies, HTTP Session)
9. Create a custom server using http module and explore the other modules of Node JS like OS,
path, event.
10. Develop an express web application that can interact with REST API to perform CRUD
operations on student data. (Use Postman)
11. For the above application create authorized end points using JWT (JSON Web Token).
12. Create a react application for the student management system having registration, login,
contact, about pages and implement routing to navigate through these pages.
13. Create a service in react that fetches the weather information from [Link] and
the display the current and historical weather information using graphical representation using
[Link]
14. Create a TODO application in react with necessary components and deploy it into GitHub.
REFERENCE BOOKS:
1. Jon Duckett, Beginning HTML, XHTML, CSS, and JavaScript, Wrox Publications, 2010.
2. Bryan Basham, Kathy Sierra and Bert Bates, Head First Servlets and JSP, O’ Reilly Media, 2nd
Edition, 2008.
3. Vasan Subramanian, Pro MERN Stack, Full Stack Web App Development with Mongo, Express,
React, and Node ,2nd Edition, APress.
ENVIRONMENTAL SCIENCE
Course Outcomes:
1. Understand the structure, function, and significance of ecosystems, including energy flow,
biogeochemical cycles, and biodiversity conservation through field experiences.
2. Analyze the classification, utilization, and sustainable management of natural resources, along
with alternative energy options.
3. Evaluate biodiversity at genetic, species, and ecosystem levels, its values, threats, and
conservation methods under national and international frameworks.
4. Identify types, sources, and impacts of environmental pollution, and apply suitable control
technologies while assessing global environmental challenges and protocols.
5. Interpret environmental policies, legislation, and the EIA process to propose management plans
addressing contemporary environmental and sustainability issues.
UNIT - I
Ecosystems: Definition, Scope, and Importance of ecosystem. Classification, structure, and function of
an ecosystem, Food chains, food webs, and ecological pyramids. Flow of energy, Biogeochemical
cycles, Bioaccumulation, Bio magnification, ecosystem value, services and carrying capacity, Field
visits.
UNIT - II
Natural Resources: Classification of Resources: Living and Non-Living resources, water resources: use
and over utilization of surface and ground water, floods and droughts, Dams: benefits and problems.
Mineral resources: use and exploitation, environmental effects of extracting and using mineral
resources, Land resources: Forest resources, Energy resources: growing energy needs, renewable and
non-renewable energy sources, use of alternate energy source, case studies.
UNIT - III
Biodiversity and Biotic Resources: Introduction, Definition, genetic, species and ecosystem diversity.
Value of biodiversity; consumptive use, productive use, social, ethical, aesthetic and optional values.
India as a mega diversity nation, Hot spots of biodiversity. Field visit. Threats to biodiversity: habitat
loss, poaching of wildlife, man-wildlife conflicts; conservation of biodiversity: In-Situ and Ex-situ
conservation. National Biodiversity act.
UNIT - IV
Environmental Pollution and Control Technologies: Environmental Pollution: Classification of
pollution, Air Pollution: Primary and secondary pollutants, Automobile and Industrial pollution, Ambient
air quality standards. Water pollution: Sources and types of pollution, drinking water quality standards.
Soil Pollution: Sources and types, Impacts of modern agriculture, degradation of soil. Noise Pollution:
Sources and Health hazards, standards, Solid waste: Municipal Solid Waste management, composition
and characteristics of e-Waste and its management. Pollution control technologies: Wastewater
Treatment methods: Primary, secondary and Tertiary.
Overview of air pollution control technologies, Concepts of bioremediation. Global Environmental
Issues and Global Efforts: Climate change and impacts on human environment. Ozone depletion and
Ozone depleting substances (ODS). Deforestation and desertification. International conventions /
Protocols: Earth summit, Kyoto protocol, and Montréal Protocol. NAPCC-GoI Initiatives.
UNIT - V
Environmental Policy, Legislation & EIA: Environmental Protection act, Legal aspects Air Act- 1981,
Water Act, Forest Act, Wild life Act, Municipal solid waste management and handling rules, biomedical
waste management and handling rules, hazardous waste management and handling rules. EIA: EIA
structure, methods of baseline data acquisition. Overview on Impacts of air, water, biological and Socio-
economical aspects. Strategies for risk assessment, Concepts of Environmental Management
Plan(EMP). Contemporary Environmental Issues Climate change; Sustainable development goals
(SDGs); Global environmental challenges; Environmental policies and international agreements.
REFERENCEBOOKS:
1. Environmental Science: towards a sustainable future by Richard T. Wright. 2008 PHL
Learning Private Ltd. New Delhi.
2. Environmental Engineering and science by Gilbert M. Masters and Wendell P. Ela.
2008 PHI Learning Pvt. Ltd.
3. Environmental Science by Daniel B. Botkin & Edward A. Keller, Wiley INDIA edition.
4. Environmental Studies by Anubha Kaushik, 4th Edition, New age international publishers.
5. Text book of Environmental Science and Technology - Dr. M. Anji Reddy 2007, BS Publications.
COMPUTER ORIENTED STATISTICAL METHODS
Course outcomes: After learning the contents of this paper, the student must be able to
1. Apply the concepts of Random variable and distributions to case studies.
2. Formulate and solve problems involving random variables and apply statistical methods for
analyzing experimental data.
3. Apply concept of estimation and testing of hypothesis to case studies.
4. Correlate the concepts of one unit to the concepts in other units.
UNIT-III: Estimation 10 L
Introduction – Statistical Inference – Classical Methods of Estimation – Single Sample: Estimating
the mean – Standard error of a point estimate. Two samples: Estimating the difference between two
means– Single sample: Estimating a proportion – Two samples: Estimating the difference between
two proportions– Two samples: Estimating the ratio of two variances.
TEXT BOOKS:
1. Ronald E. Walpole, Raymond H. Myers, Sharon L. Myers, Keying Ye, Probability & Statistics for
Engineers & Scientists, 9 th Ed. Pearson Publishers.
2. S C Gupta and V K Kapoor, Fundamentals of Mathematical statistics, Khanna publications.
3. [Link], Operations Research, Kedarnath and Ramnath Publishers, Meerut, Delhi.
REFERENCE BOOKS
1. T.T. Soong, Fundamentals of Probability and Statistics for Engineers, John Wiley & Sons, 2004.
2. Sheldon M Ross, Probability and statistics for Engineers and scientists, academic press
Miller and Freund’ s, Probability and Statistics for Engineers, 8th Edition, Pearson Educations.
OPERATING SYSTEMS
Course Objectives:
1. Introduce operating system concepts (i.e., processes, threads, scheduling, synchronization,
deadlocks, memory management, file and I/O subsystems and protection)
2. Introduce the issues to be considered in the design and development of operating system
3. Introduce basic Unix commands, system call interface for process management, interprocess
communication and I/O in Unix
Course Outcomes:
1. Will be able to control access to a computer and the files that may be shared
2. Demonstrate the knowledge of the components of computers and their respective roles in
computing.
3. Ability to recognize and resolve user problems with standard operating environments.
4. Gain practical knowledge of how programming languages, operating systems, and
architectures interact and how to use each effectively.
UNIT - I
Operating System - Introduction, Structures - Simple Batch, Multiprogrammed, Time-shared, Personal
Computer, Parallel, Distributed Systems, Real-Time Systems, System components, Operating System
services, System Calls
Process - Process concepts and scheduling, Operations on processes, Cooperating Processes, Threads
UNIT - II
CPU Scheduling - Scheduling Criteria, Scheduling Algorithms, Multiple -Processor Scheduling. System
call interface for process management-fork, exit, wait, waitpid, exec
Deadlocks - System Model, Deadlocks Characterization, Methods for Handling Deadlocks, Deadlock
Prevention, Deadlock Avoidance, Deadlock Detection, and Recovery from Deadlock
UNIT - III
Process Management and Synchronization - The Critical Section Problem, Synchronization Hardware,
Semaphores, and Classical Problems of Synchronization, Critical Regions, Monitors
Interprocess Communication Mechanisms: IPC between processes on a single computer system, IPC
between processes on different systems, using pipes, FIFOs, message queues, shared memory.
UNIT - IV
Memory Management and Virtual Memory - Logical versus Physical Address Space, Swapping,
Contiguous Allocation, Paging, Segmentation, Segmentation with Paging, Demand Paging, Page
Replacement, Page Replacement Algorithms.
UNIT - V
File System Interface and Operations -Access methods, Directory Structure, Protection, File System
Structure, Allocation methods, Free-space Management. Usage of open, create, read, write, close, lseek,
stat, ioctl system calls.
TEXT BOOKS:
1. Operating System Principles- Abraham Silberchatz, Peter B. Galvin, Greg Gagne 7th
Edition,John Wiley
2. Advanced programming in the UNIX environment, W.R. Stevens, Pearson education.
REFERENCE BOOKS:
1. Operating Systems- Internals and Design Principles, William Stallings, Fifth Edition– 2005,
PearsonEducation/PHI
2. Operating System A Design Approach- Crowley, TMH.
3. Modern Operating Systems, Andrew S. Tanenbaum 2nd edition, Pearson/PHI
4. UNIX programming environment, Kernighan and Pike, PHI/ Pearson Education
5. UNIX Internals -The New Frontiers, U. Vahalia, Pearson Education.
BUSINESS ECONOMICS AND FINANCIAL ANALYSIS
Course Objective:
1. To learn the basic business types, impact of the economy on Business and Firms specifically.
2. To analyze the Business from the Financial Perspective.
Course Outcome: The students will understand the various Forms of Business and the impact of
economic variables on the Business. The Demand, Supply, Production, Cost, Market Structure, Pricing
aspects are learnt. The Students can study the firm’ s financial position by analysing the Financial
Statements of a Company.
Economics: Significance of Economics, Micro and Macro Economic Concepts, Concepts and
Importance of National Income, Inflation, Money Supply and Inflation, Business Cycle, Features and
Phases of Business Cycle. Nature and Scope of Business Economics, Role of Business Economist,
Multidisciplinary nature of Business Economics.
Cost analysis: Types of Costs, Short run and Long run Cost Functions.
UNIT - IV: Financial Accounting: Accounting concepts and Conventions, Accounting Equation,
Double-Entry system of Accounting, Rules for maintaining Books of Accounts, Journal, Posting to
Ledger, Preparation of Trial Balance, Elements of Financial Statements, Preparation of Final Accounts
(Simple Problems).
UNIT - V: Financial Ratios Analysis: Concept of Ratio Analysis, Importance and Types of Ratios,
Liquidity Ratios, Turnover Ratios, Profitability Ratios, Proprietary Ratios, Solvency, Leverage Ratios –
Analysis and Interpretation (simple problems).
TEXT BOOKS:
1. D. D. Chaturvedi, S. L. Gupta, Business Economics - Theory and Applications, International Book
House Pvt. Ltd. 2013.
2. Dhanesh K Khatri, Financial Accounting, Tata Mc – Graw Hill, 2011.
3. Geethika Ghosh, Piyali Gosh, Purba Roy Choudhury, Managerial Economics, 2e, Tata Mc Graw
Hill Education Pvt. Ltd. 2012.
REFERENCE BOOKS:
1. Paresh Shah, Financial Accounting for Management 2e, Oxford Press, 2015.
2. S. N. Maheshwari, Sunil K Maheshwari, Sharad K Maheshwari, Financial Accounting, 5e,
Vikas Publications, 2013.
COMPUTER NETWORKS
Course Objectives
1. Equip the students with a general overview of the concepts and fundamentals of computer
networks.
2. Familiarize the students with the standard models for the layered approach to communication
between machines in a network and the protocols of the various layers.
3. Elucidate the students about working and implementation of protocols at various layers in
protocols stack.
4. Appreciating the protocol working by observing and analysing outputs of the packet sniffer,
Course Outcomes
1. Gain the knowledge of the basic computer network technology.
2. Gain the knowledge of the functions of each layer in the ISO-OSI and TCP/IP reference model.
3. Obtain the skills of subnetting and routing mechanisms.
4. Familiarity with the essential protocols of computer networks, and how they can be applied in
network design and implementation.
5. Understanding working of the protocols through traces captured by a packet sniffer
UNIT - I
Introduction: The Internet, Protocol, Network Edge, Access Networks, Network Core, Packet Switching,
Circuit Switching, Delay, Loss, and Throughput in Packet-Switched Networks, Protocol reference
models: ISO-OSI, TCP/IP, Types of Network attacks, History of Computer Networking and the Internet.
UNIT-II
Application Layer: Principles of Network Applications, Network Application Architectures, Processes
Communicating, Transport Services Available to Applications, Transport Services Provided by the
Internet, Application-Layer Protocols, The Web and HTTP, File Transfer: FTP, Electronic Mail in the
Internet, SMTP, DNS, Peer-to-Peer Applications, Socket Programming: Creating Network Applications.
UNIT - III
Transport Layer: Transport-Layer Services, Multiplexing and Demultiplexing, Connectionless Transport:
UDP, Principles of Reliable Data Transfer, Building a Reliable Data Transfer Protocol, Pipelined Reliable
Data Transfer Protocols, Go-Back-N (GBN), Selective Repeat (SR), Connection-Oriented Transport: TCP,
The TCP Connection, Segment Structure, Round-Trip Time Estimation and Timeout, Reliable Data
Transfer, Flow Control, TCP Connection Management, Principles of Congestion Control, TCP Congestion
Control, Fairness.
UNIT - IV
Network Layer: Data and Control plane, Forwarding and Routing 308, Network Service Models, Virtual
Circuit and Datagram Networks, Router working, The Internet Protocol (IP): Forwarding and Addressing
in the Internet, Datagram Format, IPv4 Addressing, Internet Control Message Protocol (ICMP), IPv6, IP
Security, Routing Algorithms- The Link-State (LS) Routing Algorithm, The Distance-Vector (DV) Routing
Algorithm, Hierarchical Routing, Routing in the Internet-Intra-AS Routing in the Internet: RIP, Intra-AS
Routing in the Internet: OSPF, Inter-AS Routing: BGP, Broadcast and Multicast Routing, Broadcast
Routing Algorithms, Multicasting.
UNIT - V
The Link Layer: The Services Provided by the Link Layer, Error-Detection and -Correction Techniques-
Parity Checks, Checksum Methods, Cyclic Redundancy Check (CRC), Hamming code, Multiple Access
Links and Protocols, Channel Partitioning Protocols, Random Access Protocols, Taking-Turns Protocols,
DOCSIS: The Link-Layer Protocol for Cable Internet Access, Switched Local Area Networks, Link-Layer
Addressing and ARP, Ethernet, Link-Layer Switches, Virtual Local Area Networks (VLANs), Link
Virtualization-Multiprotocol Label Switching (MPLS), Data Center Networking, A Day in the Life of a Web
Page Request. Wireless network characteristics, Wireless LAN.
TEXT BOOKS:
1. Computer Networking: A Top-Down Approach – James [Link], Keith [Link], Pearson
2. Computer Networks -- Andrew S Tanenbaum, David. j. Wetherall, 5th Edition. Pearson/PHI
REFERENCE BOOK:
1. Data Communications and Networking – Behrouz A. Forouzan. Third Edition TMH.
MACHINE LEARNING
Course Outcomes:
1. Distinguish between, supervised, unsupervised and semi-supervised learning.
2. Understand algorithms for building classifiers applied on datasets of non-linearly separable
classes
3. Design an ensemble model to increase the classification accuracy
4. Understand the principles of RL evolutionary computing algorithms
UNIT - I
Introduction to Machine Learning: Types of Human learning, machine learning process, Well-posed
learning problem, Types of machine learning and comparison, applications of machine learning.
Model Preparation, Evaluation and feature engineering: Machine learning activities, Types of data in
machine learning, dataset understanding, plotting and exploration, checking data quality, remediation,
data pre-processing, selecting a model, predictive and descriptive models, supervised learning model
training, cross-validation and boot strapping, lazy vs eager learner, interpreting the model- underfitting,
overfitting, bias-variance trade-off. Parameter for evaluating performance of classification, regression,
and clustering model. Improving performance of a model.
UNIT - II
Feature Engineering: Feature transformation - feature construction, feature extraction by PCA, SVD, LDA.
Feature subset selection – feature relevancy and redundancy measures. Feature selection process and
approaches.
Review of Probability concepts: joint probability, conditional probability, bayes rule, Common discrete
and continuous distributions, dealing with multiple random variables, central limit theorem. Bayes
classifier, Multi-class Classification, Naïve Bayes classifier, Bayesian belief network.
UNIT - III
Supervised Learning - Introduction to supervised learning,
Regression: Introduction of regression, Regression algorithms: Simple linear regression, Multiple linear
regression, Polynomial regression model, Logistic regression, Maximum likelihood estimation.
Classification: Classification model and learning steps, Classification algorithms: Naïve Bayes
classifier, Distance measures, k-Nearest Neighbor (kNN), Decision tree, Support vector machines, Kernel
trick, Random Forest.
UNIT - IV
Unsupervised Learning: Introduction to unsupervised learning, Unsupervised vs supervised learning,
Application of unsupervised learning, Clustering and its types, Partitioning method: k-Means and
K-Medoids, Hierarchical clustering, Density-based methods – DBSCAN.
UNIT - V
Artificial Neural Network: Biological neuron, Artificial neuron, Activation functions, neural network
architecture, perceptron, learning process in ANN, Back propagation.
Introduction to deep learning, overview of reinforcement learning, Representation learning, Evolutionary
learning. Case-study of ML applications: Image recognition, Email spam filtering, Online fraud detection.
TEXT BOOKS:
1. SaikatDutt, S. Chjandramouli, Das – Machine Learning, Frist Edition, Pearson
2. M N Murty, Anathanarayana V S – Machine Learning, First Edition, University Press
3. Tom M Mitchell, ― Machine Learning, First Edition, McGraw Hill Education, 2013.
REFERENCE BOOKS:
1. Stephen Marsland, ― Machine Learning – An Algorithmic Perspective, Second Edition,
2. Chapman and Hall/CRC Machine Learning and Pattern Recognition Series, 2014.
COMPUTATIONAL MATHEMATICS LAB
(Using Python/MATLAB software)
[Link]. II Year II Sem. L T P C
0 0 2 1
Pre-requisites: Matrices, Iterative methods and ordinary differential equations
Course outcomes: After learning the contents of this paper, the student must be able to
1. Develop the code to find the Eigen values and Eigen Vectors using Python/MATLAB.
2. Develop the code find solution of Algebraic and Transcendental Equations and Linear system of
equations using Python/MATLAB
3. Write the code to solve problems ofFirst-Order ODEs Higher order linear differential equations
with constant coefficients
TEXT BOOKS:
1. MATLAB and its Applications in Engineering, Rajkumar Basal, Ashok Kumar Geo, Manoj Kumar
Sharma, Pearson publication.
2. Kenneth A. Lambert, The fundamentals of Python: First Programs, 2011, Cengage Learnings.
3. Think Python First Edition, by Allen B. Downey, Orielly publishing.
4. Introduction to Python Programming, William Mitchell, PovelSolin, Martin Novak et al., NCLab
Public Computing, 2012.
5. Introduction to Python Programming, ©Jacob Fredslund, 2007.
REFERENCE BOOKS:
1. An Introduction to Python, John C. Lusth, The University of Alabama, 2011.
2. Introduction to Python, ©Dave Kuhlman, 2008.
OPERATING SYSTEMS LAB
Course Objectives:
1. To provide an understanding of the design aspects of operating system concepts through
simulation.
2. Introduce basic Unix commands, system call interface for process management, interprocess
communication and I/O in Unix.
Course Outcomes:
1. Simulate and implement operating system concepts such as scheduling, deadlock
management, file management and memory management.
2. Able to implement C programs using Unix system calls.
List of Experiments:
1. Write C programs to simulate the following CPU Scheduling algorithms a) FCFS b) SJF c)
Round Robin d) priority
2. Write programs using the I/O system calls of UNIX/LINUX operating system (open, read, write,
close, lseek, stat, fork, exit)
3. Write a C program to simulate Bankers Algorithm for Deadlock Avoidance.
4. Write a C program to implement the Producer – Consumer problem using semaphores using
UNIX/LINUX system calls.
5. Write C programs to illustrate the following IPC mechanisms a) Pipes b) FIFOs c) Message
Queues d) Shared Memory
6. Write C programs to simulate the following memory management techniques a) Paging b)
Segmentation
7. Write C programs to simulate Page replacement policies a) FCFS b) LRU c) Optimal
TEXT BOOKS:
1. Operating System Principles- Abraham Silberchatz, Peter B. Galvin, Greg Gagne 7th Edition,
John Wiley.
2. Advanced programming in the Unix environment, [Link], Pearson education.
REFERENCE BOOKS:
1. Operating Systems – Internals and Design Principles, William Stallings, Fifth Edition– 2005,
Pearson Education/PHI.
2. Operating System - A Design Approach-Crowley, TMH.
3. Modern Operating Systems, Andrew S Tanenbaum, 2nd edition, Pearson/PHI.
4. UNIX Programming Environment, Kernighan and Pike, PHI/Pearson Education.
5. UNIX Internals: The New Frontiers, U. Vahalia, Pearson Education.
COMPUTER NETWORKS LAB
Course Outcomes:
Implement data link layer farming methods
Analyze error detection and error correction codes.
Implement and analyze routing and congestion issues in network design.
Implement Encoding and Decoding techniques used in presentation layer
To be able to work with different network tools
List of Experiments
1. Implement the data link layer framing methods such as character, character-stuffing and bit
stuffing.
2. Write a program to compute CRC code for the polynomials CRC-12, CRC-16 and CRC CCIP
3. Develop a simple data link layer that performs the flow control using the sliding window
protocol, and loss recovery using the Go-Back-N mechanism.
4. Implement Dijsktra’ s algorithm to compute the shortest path through a network
5. Take an example subnet of hosts and obtain a broadcast tree for the subnet.
6. Implement distance vector routing algorithm for obtaining routing tables at each node.
7. Implement data encryption and data decryption
8. Write a program for congestion control using Leaky bucket algorithm.
9. Write a program for frame sorting techniques used in buffers.
10. Wireshark
. Packet Capture Using Wire shark
i. Starting Wire shark
ii. Viewing Captured Traffic
iii. Analysis and Statistics & Filters.
1. How to run Nmap scan
2. Operating System Detection using Nmap
3. Do the following using NS2 Simulator
I. NS2 Simulator-Introduction
II. Simulate to Find the Number of Packets Dropped
III. Simulate to Find the Number of Packets Dropped by TCP/UDP
IV. Simulate to Find the Number of Packets Dropped due to Congestion
V. Simulate to Compare Data Rate & Throughput.
VI. Simulate to Plot Congestion for Different Source/Destination
VII. Simulate to Determine the Performance with respect to Transmission of Packets
TEXT BOOK:
1. Computer Networks, Andrew S Tanenbaum, David. j. Wetherall, 5th Edition. Pearson
Education/PHI
REFERENCES:
1. An Engineering Approach to Computer Networks, [Link], 2nd Edition, Pearson Education
Data Communications and Networking – Behrouz A. Forouzan. 3rd Edition, TMH.
MACHINE LEARNING LAB
Course Outcomes:
Understand modern notions in predictive data analysis
Select data, model selection, model complexity and identify the trends
Understand a range of machine learning algorithms along with their strengths and weaknesses
Build predictive models from data and analyze their performance
List of Experiments:
1. Write a python program to compute Central Tendency Measures: Mean, Median, Mode,
Measure of Dispersion: Variance, Standard Deviation
2. Study of Python Basic Libraries such as Statistics, Math, Numpy and Scipy
3. Study of Python Libraries for ML application such as Pandas and Matplotlib
4. Write a Python program to implement Simple Linear Regression
5. Implementation of Multiple Linear Regression for House Price Prediction using sklearn
6. Implementation of Decision tree using sklearn and its parameter tuning
7. Implementation of KNN using sklearn
8. Implementation of Logistic Regression using sklearn
9. Implementation of K-Means Clustering
10. Performance analysis of Classification Algorithms on a specific dataset (Mini Project)
TEXT BOOK:
1. Machine Learning – Tom M. Mitchell, - MGH.
REFERENCE BOOK:
1. Machine Learning: An Algorithmic Perspective, Stephen Marshland, Taylor & Francis.
SKILL DEVELOPMENT COURSE – II
Lab Problems:
1. Understanding Data, What is data, where to find data, Foundations for building Data
Visualizations, Creating Your First visualization?
2. Getting started with Tableau Software using Data file formats, connecting your Data to Tableau,
creating basic charts(line, bar charts, Tree maps),Using the Show me panel.
3. Tableau Calculations, Overview of SUM, AVR, and Aggregate features, Creating custom
calculations and fields.
4. Applying new data calculations to your visualizations, Formatting Visualizations, Formatting
Tools and Menus, Formatting specific parts of the view.
5. Editing and Formatting Axes, Manipulating Data in Tableau data, Pivoting Tableau data.
6. Structuring your data, Sorting and filtering Tableau data, Pivoting Tableau data.
7. Advanced Visualization Tools: Using Filters, Using the Detail panel, using the Size panels,
customizing filters, Using and Customizing tooltips, Formatting your data with colors.
8. Creating Dashboards & Storytelling, creating your first dashboard and Story, Design for
different displays, adding interactivity to your Dashboard, Distributing & Publishing your
Visualization.
9. Tableau file types, publishing to Tableau Online, Sharing your visualizations, printing, and
Exporting.
10. Creating custom charts, cyclical data and circular area charts, Dual Axis charts.
REFERENCES:
1. Microsoft Power BI cookbook, Brett Powell, 2nd edition.
2. R Programming for Data Science by Roger D. Peng(References)
3. The Art of R Programming by Norman Matloff Cengage Learning India.
UML (Unified Modeling Language) diagrams benefit the software design process by providing a standardized way to visualize system architecture, process flows, and relationships. They improve communication among stakeholders, facilitate understanding of system structure and behavior, and assist in revealing inconsistencies early. However, challenges include the learning curve for correct application, potential over-complexity, and maintaining updated diagrams with system changes. Properly used, UML can streamline design and improve coordination, but can become cumbersome if not managed effectively .
Different process models such as the Waterfall, Spiral, Incremental, and Agile models influence software development by offering varying approaches to managing complexity and accommodating changes. The Waterfall model is linear and sequential, making changes difficult to manage once a phase is completed. The Spiral model focuses on iterative risk analysis, which can manage complex changes effectively but may be costly. Incremental models allow part of the systems to be developed and evaluated iteratively, thus managing complexity better by breaking down the system into manageable increments. Agile Development offers flexibility and responsiveness to changes through its iterative and collaborative approach, making it suitable for dynamic and complex environments .
Debugging is considered both an art and a science because it requires both methodical techniques and creative problem-solving. As a science, it involves systematic processes such as forming hypotheses about the cause of a bug, testing these hypotheses, and using tooling to inspect code and state. As an art, it demands intuition, experience, and creative thinking to fathom obscure bugs and pattern recognition to diagnose and fix unusual problems. This combination results in efficient identification, understanding, and resolution of software errors .
Key factors in database schema design to ensure optimal performance and data integrity include normalization, which reduces redundancy and prevents anomalies; integrity constraints to enforce data validity; and indexing strategies to enhance query performance. Additionally, relational design principles like designing tables to have clear, logical relationships and considering transaction management protocols are crucial. Using proper data types and understanding the potential for concurrency issues are also essential for performance and integrity .
The ER model represents data using entities, attributes, and relationships, providing a conceptual visualization of data structures, while the Relational model organizes data into tables with defined relationships between them. Transitioning from an ER model to a Relational model involves converting ER diagrams to a database schema, which typically enhances the effectiveness of the database by ensuring data is logically stored and easily retrievable. The process involves mapping entities to tables, converting relationships into foreign keys, and normalizing schemas to minimize redundancy and maintain integrity .
Dynamic memory allocation impacts C program performance by allowing efficient memory use, as memory is allocated and freed as needed. This flexibility can reduce memory waste and optimize resource usage, enabling programs to manage variable-sized data efficiently. However, improper management can lead to memory leaks or fragmentation, affecting performance negatively. Effective dynamic memory management is crucial for ensuring that programs remain efficient and do not degrade system performance by over-consuming resources .
Risk management in software projects identifies, assesses, and prioritizes risks to minimize their impact. Proactive strategies involve anticipating potential problems before they occur, employing techniques like risk projection and risk refinement. RMMM (Risk Mitigation, Monitoring, and Management) strategies include planning for contingencies, continuous monitoring for risk indicators, and adapting plans as necessary. These strategies help allocate resources more effectively, reduce unexpected costs, and enhance project reliability and success rates by addressing issues before they escalate .
CMMI improves software process quality by defining best practices in areas like product development, process improvement, and service planning. It provides a framework for assessing and improving the process maturity within an organization. By focusing on performance improvement at key process areas, CMMI helps organizations streamline processes, reduce defects, and increase predictability in project outcomes. Its emphasis on continuous improvement and adaptability to organizational goals leads to enhanced software quality and efficiency .
Modular programming enhances the development and maintenance of C programs by breaking down code into smaller, reusable units called modules or functions. This approach allows for individual testing, debugging, and updating of modules without affecting the overall program. It supports cleaner code organization, easier error identification, and enhanced collaboration. Reusability and readability increase as similar functionality can be implemented through reusable modules in multiple programs, improving maintainability and reducing development time .
Functional requirements specify what the system should do, detailing tasks, functions, and processes that the software must support. Non-functional requirements define system attributes such as usability, reliability, and performance, impacting user experience and system effectiveness. Functional requirements ensure that the software fulfills the intended use, while non-functional requirements impact user satisfaction, scalability, and maintenance. Both are critical for software project success as functional requirements determine the system's capabilities, and non-functional requirements affect its acceptance and sustainability .