IT Curriculum - SEM4
IT Curriculum - SEM4
IT Curriculum - SEM4
OBJECTIVES
The objective of this course is to enable the student to
● Identify the standard distributions and apply them in solving problems.
● Solve problems in joint probabilities and to find correlation between them.
● Perform hypothesis testing using normal, t, f, chi square distribution
● Evaluate the tests of significance in analysis of variance.
● Calculate the various statistical quality control measurements.
REFERENCES
1. Devore, J.L., Probability and Statistics for Engineering and the Sciences,
Thomson Brooks/Cole, International Student Edition, New Delhi, 8th Edition, 2012.
2. Walpole, R.E., Myers, R.H., Myers, S.L. and Ye, K., Probability and Statistics for
Engineers and Scientists, Pearson Education, Asia, 9th Edition, 2012.
3. Ross, S.M., Introduction to Probability and Statistics for Engineers and Scientists,
Elsevier, New Delhi, 5th Edition, 2014.
4. Spiegel, M.R., Schiller, J. and Srinivasan, R.A., Schaum’s Outline of Theory and
Problems of Probability and Statistics, Tata McGraw Hill, New Delhi, 3rd Edition,
2017.
5. Gupta, S.C and Kapoor, V.K., Fundamentals of Mathematical Statistics, Sultan and
Chand Company, New Delhi, 12th Edition, 2020.
COURSE OUTCOMES
On successful completion of this course, the student will be able to
CO1: identify standard distributions and apply them.
CO2: solve problems in two dimensional random variables and find the correlation
between them.
CO3: identify and apply the suitable testing of hypothesis under normal, t, F and chi square
distribution
CO4: solve problems in analysis of variance.
CO5: analyze quality control by applying control chart methods.
CO6: application of Random variables, Design of Experiments and control charts in engineering
problems
CO-PO MAPPING
COs/POs PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12
CO1 3 2
CO2 3 2
CO3 3 2
CO4 3 2 1
CO5 3 2
CO6 3 2 1
OBJECTIVES:
The objective of this course is to enable the students to
• Understand the architecture and operation of the 8086 microprocessor and ARM microcontroller.
• Learn the addressing mode and programming model of Intel X86 Processor, and ARM architecture
• Acquire Assembly language programming skills.
• Explore to basic peripherals, its programming and interfacing techniques of microprocessor and
controllers
• Develop applications using Intel X86 Processors and ARM Microcontrollers
COURSE OUTCOMES:
On successful completion of this course, the student will be able to
1. Explain the addressing modes, assembly language programming of X86, and ARM.
2. Explain architecture of 8086.
3. Design and develop assembly language programs.
4. Interface different external memory and peripheral devices with microprocessors and micro
controller
5. Analyze a problem and formulate appropriate computing solution for microprocessor-based
application
OBJECTIVES:
The objective of this course is to enable the students to
• Use hierarchical data structures for solving problems
• Understand and apply different algorithm design techniques
• Analyze formulations of problems and algorithms for time and space efficiency
• Understand intractability and characterize NP problems
UNIT V INTRACTABILITY 9
Branch and Bound – Knapsack problem – Traveling salesman problem – Introduction to intractability –
Polynomial reductions – SAT and 3-SAT – NP-complete and NP-Hard problems – Approximation
algorithms: Traveling salesman problem – Knapsack problem – Introduction to randomized and parallel
algorithms.
THEORY: 45HOURS
LAB COMPONENT:
LIST OF EXPERIMENTS:
1. Implementation of iterative and recursive algorithms for the given problem
2. Empirical analysis of algorithms
3. Implementation of divide-and-conquer sorting algorithms
4. Implementation of closest-pairs algorithm
5. Implementation of Huffman coding
6. Implementation of Dijkstra’s and Prim’s algorithms
7. Implementation of disjoint sets and Kruskal’s algorithm
8. Implementation of dynamic programming algorithm for knapsack problem
9. Implementation of backtracking to solve n-Queens and Hamilton circuits problems
10. Implementation of iterative improvement strategy for stable marriage and maxflow problems
11. Implementation of Branch and Bound technique to solve knapsack and TSP problems
12. Implementation of approximation algorithms for knapsack and TSP problems
PRACTICAL: 30HOURS
EXPERIENCIAL LEARNING:
Students are divided into teams; About 7--10 members in a team
Each team will be given a project as a context
1. Processes: PSP, Scrum, DevOps : 15%
2. Management: Estimation, WBS, Planning, Tracking : 10%
3. Risk Management : 5%
4. Coding Standards and Configuration Management : 15%
5. Automation of routine tasks : 10%
6. Meetings: “Customer” meetings, review meetings, brain-storming : 15%
7. Presentations : 15%
8. Documentations : 15%
PROJECT: 45 HOURS
TOTAL: 120 HOURS
TEXT BOOK:
1. Anany Levitin, “Introduction to the Design and Analysis of Algorithms”, Third Edition, Pearson
Education, 2012.
REFERENCES:
1. Jon Kleinberg and Eva Tardos, “Algorithm Design”, Pearson Education, 2006.
2. Mark Allen Weiss, “Data Structures and Algorithm Analysis in C++”, Pearson Education, Fourth
Edition, 2014
3. S. Skiena, “The Algorithm Design Manual”, 2nd Edition, Springer, 2008.
4. Sara Baase and Allen Van Gelder, "Computer Algorithms", Third Edition, Pearson Education,
2000.
5. S. Sridhar, "Design and Analysis of Algorithms", Oxford university press, 2014.
6. Thomas H Cormen, Charles E Leiserson, Ronald L Rivest, Clifford Stein, "Introduction to
Algorithms'', 3rd Edition, PHI Learning Private Limited, 2012.
COURSE OUTCOMES:
At the end of the course, the students will be able to:
1. Design and implement algorithms using hierarchical data structures
2. Judiciously select and apply algorithm design techniques for efficiently solving problems
3. Analyze the time and space complexity of algorithms and their implementations
4. Explain intractability and characterization of NP problems
5. Apply best practices for IT project management
6. Communicate efficiently in team meetings & presentations and prepare documents
OBJECTIVES:
The objective of this course is to enable the students to
• Understand the division of network functionalities into layers
• Be familiar with the components required to build distinct types of networks
• Understand the required functionality at each layer
• Develop network applications
TOTALHOURS: 45
TEXTBOOKS:
1. Behrouz A Forouzan, “Data Communication and Networking”, Fifth Edition, The McGraw Hills,
2013.
REFERENCES:
1. Larry L. Peterson and Bruce S. Davie, “Computer Networks – A systems Approach”, Fifth Edition,
Morgan Kaufmann, 2011.
2. James F Kurose, Keith W Ross, “Computer Networking, A Top-Down Approach Featuring the
Internet”, 6th Edition, Pearson Education, 2013.
3. William Stallings, “Data and Computer Communication”, 10th Edition, Pearson, 2014.
4. Andrew S. Tanenbaum and David J. Wetherall, “Computer Networks”, Fifth Edition, Pearson,
2013.
5. Nader F Mir, “Computer and Communication Networks”, 2nd Edition, Prentice Hall, 2014.
6. Ying-Dar Lin, Ren-Hung Hwang, Fred Baker, “Computer Networks: An Open-Source Approach”,
McGraw Hill Publisher, 2011.
COURSE OUTCOMES:
On successful completion of this course, the student will be able to
1. Identify the components required to build different types of networks.
2. Choose the required functionality at each layer for given application.
3. Identify solution for each functionality at each layer.
UNIT II GRAMMARS 9
Grammar Introduction: Types of Grammar, Context Free Grammars and Languages, Derivations,
Simplification of CFG: Elimination of Useless Symbols Simplification of CFG: Unit productions, Null
productions, Chomsky normal form, Greibach Normal form – phases of a compiler – lexical analysis
UNIT V UNDECIDABILITY 9
Undecidability: Basic definitions – Decidable Problems – Examples of undecidable problems – Semi-
decidability – Rice’s Theorem, problems about Turing Machine – Post’s Correspondence Problem –
Properties of Recursive and Recursively enumerable languages.
TOTAL: 45 HOURS
TEXTBOOKS:
1. John E Hopcroft and Jeffery D Ullman, Introduction to Automata Theory, Languages and
Computations, Narosa Publishing House, 2002.
2. Alfred V Aho, Monica S. Lam, Ravi Sethi and Jeffrey D Ullman, Compilers – Principles,
Techniques and Tools, 2nd Edition, Pearson Education, 2007.
REFERENCES:
1. Michael Sipser, "Introduction of the Theory of Computation", Second Edition, Thomson
Brokecole, 2006.
2. J. Martin, "Introduction to Languages and the Theory of Computation", Third Edition, Tata
McGraw Hill, 2003.
3. V. Raghavan, Principles of Compiler Design, Tata McGraw Hill Education Publishers, 2010.
4. Muneeswaran. K, ―Compiler Design, Oxford University Press, 2012
COURSE OUTCOMES:
On successful completion of this course, the students will be able to
1. Construct automata, regular expression for any pattern.
2. Write Context free grammar for any construct.
3. Build the different Phases of compiler and apply the various optimization techniques.
4. Design Turing machine for a given language
5. Explain decidability, semi-decidability, and undecidability
OBJECTIVES:
The objective of this course is to enable the students
The student should be made to:
• Learn socket programming.
• Be familiar with simulation tools.
• Have hands on experience on various networking protocols.
LIST OF EXCERCISES:
Tools: Python Twisted, Cisco Packet Tracer, Wireshark, NS2/NS3, Cooja
1. Dr. M.O. Faruque Sarker, Sam Washington, “Learning Python Network Programming”,
Packt Publisher, OReilly, June 2015.
2. Brandon Rhodes, John Goerzen, “Foundations of Python Network Programming”, 3rd
Edition, APress, 2014
3. https://www.w3schools.in/python-tutorial/network-programming/
COURSE OUTCOMES:
At the end of the course, the student should be able to
1. Ability to study and implement network sockets
2. Study and analyze the performance of networking protocols
3. Ability to work with network simulation tools
LIST OF EXPERIMENTS:
1. Study of Logic gates, flip-flops, and counters.
2. 8086 ALP Programs (Using Kit and MASM).
a. 8 and, 16-bit Arithmetic operations (Using Kit and MASM).
b. Sorting and searching of numbers.
c. String manipulation operations.
d. Implementing Digital clock.
3. Interfacing using Microprocessor and ARM Microcontroller (Using Kit)
a. DAC for waveform generation.
b. Interfacing to simulate Traffic Light controller signals.
c. Interfacing Stepper Motor.
4. Micro python programming using ARM Embedded Trainer Kit/ Raspberry Pi / Arduino
boards.
a. LED on/off control.
b. Triggering Notification using sensors.
c. Generation of PWM output.
d. Reading analog inputs and writing analog outputs.
5. Flutter / Kotlin Multiplatform applications using ARM
6. Mini projects using any microcontroller, sensors, actuators and Zigbee/communication module
TOTAL: 45 HOURS
COURSE OUTCOMES:
On successful completion of the course, the students should be able to
1. Write ALP for 8086 processor and ARM Processor
2. Develop systems with interfacing peripheral devices with microprocessor & Controller.
3. Create ALP to solve simple problems using ARM board
4. Develop real time applications using interfacing various peripherals and processor.
5. Solve simple problems using Micro python
6. Design and develop suitable autonomous applications for the given situation using ARM
Board/ARM Embedded Trainer Kit/ Raspberry Pi / Arduino board