Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
58 views40 pages

Cse Ds 3 2 Sem Cs Syllabus Ug r20

Syllabus

Uploaded by

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

Cse Ds 3 2 Sem Cs Syllabus Ug r20

Syllabus

Uploaded by

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

R-20 Syllabus for CSE-DS, JNTUK w. e. f.

2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE

COURSE STRUCTURE AND SYLLABUS


For UG – R20

B. Tech - COMPUTER SCIENCE AND ENGINEERING with Specialization


DATA SCIENCE
(Applicable for batches admitted from 2020-2021)

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA - 533 003, Andhra Pradesh, India
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


III B. Tech – II Semester
S.No Course Code Courses Hours per week Credits
L T P C
1 PC Computer Networks 3 0 0 3
2 PC Big Data Analytics 3 0 0 3
3 PC Design and Analysis of Algorithms 3 0 0 3
Professional Elective-II
1. Deep Learning
2. Software Project Management
4 PE 3 0 0 3
3.Distributed Systems
4. Data Wrangling in Data Science
5. ETL Principles
Open Elective-II
Open Open Electives offered by other
5 Elective/Job departments/ 3 0 0 3
Oriented MEAN Stack Development (Job
Oriented Course)
6 PC Computer Networks Lab 0 0 3 1.5
7 PC Big Data Analytics Lab 0 0 3 1.5
8 PC Deep Learning with Tensorflow 0 0 3 1.5
Skill Oriented Course - IV
1. MEAN Stack Technologies-
ModuleI-HTML5, Java Script,
9 SO 0 0 4 2
Node.js, express.js and Type
Script OR
2. ETL Design Procedures-Spark
10 MC Employability skills-II 2 0 0 0
Total credits 21.5
Industrial/Research Internship(Mandatory) 2 Months during summer vacation
11 Minor Data Science Applications $ 3 0 2 4
Minor courses through SWAYAM 0 0 0 2
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


L T P C
III B Tech II Sem
3 0 0 3
COMPUTER NETWORKS

Course Objectives:
• To provide insight about networks, topologies, and the key concepts.
• To gain comprehensive knowledge about the layered communication architectures (OSI and TCP/IP)
and its functionalities.
• To understand the principles, key protocols, design issues, and significance of each layers in ISO and
TCP/IP.
• To know the basic concepts of network services and various network applications.

Course Outcomes:
By the end of the course, the student will be able to
x Demonstrate different network models for networking links OSI, TCP/IP, B-ISDN, N-BISDN and get
knowledge about various communication techniques, methods and protocol standards.
x Discuss different transmission media and different switching networks.
x Analyze data link layer services, functions and protocols like HDLC and PPP.
x Compare and Classify medium access control protocols like ALOHA, CSMA, CSMA/CD, CSMA/CA,
Polling, Token passing, FDMA, TDMA, CDMA protocols
x Determine application layer services and client server protocols working with the client server
paradigms like WWW, HTTP, FTP, e-mail and SNMP etc.

UNIT I:
Introduction: Network Types, LAN, MAN, WAN, Network Topologies Reference models- The OSI
Reference Model- the TCP/IP Reference Model - A Comparison of the OSI and TCP/IP Reference Models,
OSI Vs TCP/IP, Lack of OSI models success, Internet History.
Physical Layer –Introduction to Guided Media- Twisted-pair cable, Coaxial cable and Fiber optic cable and
unguided media: Wireless-Radio waves, microwaves, infrared.

UNIT II:
Data link layer: Design issues, Framing: fixed size framing, variable size framing, flow control, error
control, error detection and correction codes, CRC, Checksum: idea, one’s complement internet checksum,
services provided to Network Layer, Elementary Data Link Layer protocols: simplex protocol, Simplex
stop and wait, Simplex protocol for Noisy Channel.
Sliding window protocol: One bit, Go back N, Selective repeat-Stop and wait protocol, Data link layer in
HDLC: configuration and transfer modes, frames, control field, point to point protocol (PPP): framing
transition phase, multiplexing, multi link PPP.

UNIT – III:
Media Access Control: Random Access: ALOHA, Carrier sense multiple access (CSMA), CSMA with
Collision Detection, CSMA with Collision Avoidance, Controlled Access: Reservation, Polling, Token
Passing, Channelization: frequency division multiple Access (FDMA), time division multiple access
(TDMA), code division multiple access (CDMA).
Wired LANs: Ethernet, Ethernet Protocol, Standard Ethernet, Fast Ethernet (100 Mbps), Gigabit Ethernet,
10 Gigabit Ethernet.
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


UNIT – IV:
The Network Layer Design Issues – Store and Forward Packet Switching-Services Provided to the
Transport layer- Implementation of Connectionless Service-Implementation of Connection Oriented
Service- Comparison of Virtual Circuit and Datagram Networks, Routing Algorithms-The Optimality
principle-Shortest path, Flooding, Distance vector, Link state, Hierarchical, Congestion Control algorithms-
General principles of congestion control, Congestion prevention polices, Approaches to Congestion Control-
Traffic Aware Routing- Admission Control-Traffic Throttling-Load Shedding. Traffic Control Algorithm-
Leaky bucket & Token bucket.
Internet Working: How networks differ- How networks can be connected- Tunnelling, internetwork
routing-, Fragmentation, network layer in the internet – IP protocols-IP Version 4 protocol-IPV4 Header
Format, IP addresses, Class full Addressing, CIDR, NAT-, Subnets-IP Version 6-The main IPV6 header,
Transition from IPV4 to IPV6, Comparision of IPV4 & IPV6- Internet control protocols- ICMP-ARP-
DHCP

UNIT –V:
The Transport Layer: Transport layer protocols: Introduction-services, port number, User data gram
protocol, User datagram, UDP services, UDP applications, Transmission control protocol: TCP services,
TCP features, Segment, A TCP connection, windows in TCP, flow control, Error control, Congestion
control in TCP.
Application Layer: World Wide Web: HTTP, Electronic mail-Architecture, web based mail, email
security, TELENET-local versus remote Logging, Domain Name System: Name Space, DNS in Internet,
Resolution, Caching, Resource Records, DNS messages, Registrars, security of DNS Name Servers, SNMP.

Text Books:
1. Computer Networks, Andrew S Tanenbaum, Fifth Edition. Pearson Education/PHI
2. Data Communications and Networks, Behrouz A. Forouzan, Fifth Edition TMH.

References Books:
1. Data Communications and Networks- Achut S Godbole, AtulKahate
2. Computer Networks, Mayank Dave, CENGAGE
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


L T P C
III B Tech II Sem
3 0 0 3
BIG DATA ANALYTICS

Course Objectives:
x To optimize business decisions and create competitive advantage with Big Data analytics
x To learn to analyze the big data using intelligent techniques
x To introduce programming tools PIG&HIVE in Hadoop echo system

Course Outcomes:
At the end of the course, the students will be able to
x Illustrate big data challenges in different domains including social media, transportation, finance and
medicine
x Use various techniques for mining data stream
x Design and develop Hadoop
x Identify the characteristics of datasets and compare the trivial data and big data for various applications
x Explore the various search methods and visualization techniques

UNITI:
Introduction: Introduction to big data: Introduction to Big Data Platform, Challenges of
Conventional Systems, Intelligent data analysis, Nature of Data, Analytic Processes and Tools,
Analysisvs Reporting.

UNITII:
Stream Processing: Mining data streams: Introduction to Streams Concepts, Stream Data
Modeland Architecture, Stream Computing, Sampling Data in a Stream, Filtering Streams,
Counting Distinct Elements in a Stream, Estimating Moments, Counting Oneness in a Window,
Decaying Window, Real time Analytics Platform (RTAP) Applications, Case Studies-Real Time
Sentiment Analysis-Stock Market Predictions.

UNITIII:
Introduction to Hadoop: History of Hadoop, the Hadoop Distributed File System, Components of
Hadoop Analysing the Data with Hadoop, Scaling Out, Hadoop Streaming, Design of HDFS, Java
interfaces to HDFS Basics, Developing a Map Reduce Application, How Map Reduce Works,
Anatomy of a Map Reduce Job run, Failures, Job Scheduling, Shuffle and Sort, Task execution,
Map Reduce Types and Formats, Map Reduce Features Hadoop environment.

UNITIV:
Frameworks and Applications: Frameworks: Applications on Big Data Using Pig and Hive, Data
processing operators in Pig, Hive services, HiveQL, Querying Data in Hive, fundamentals of H
Base and Zoo Keeper.

UNITV:
Predictive Analytics and Visualizations: Predictive Analytics, Simple linear regression,
Multiplelinear regression, Interpretation of regression coefficients, Visualizations, Visual data
analysis techniques, interaction techniques, Systems and application
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


Text Books:
1. Tom White, “Hadoop: The Definitive Guide”, Third Edition, O’reilly Media, FourthEdition,2015.
2. Chris Eaton, Dirk DeRoos, Tom Deutsch, George Lapis, Paul Zikopoulos, “Understanding Big Data:
Analytics for Enterprise Class Hadoop and Streaming Data”, McGraw Hill Publishing, 2012.
3. Anand Rajaraman and Jeffrey David Ullman, “Mining of Massive Datasets”, CUP,2012

Reference Books:
1. Bill Franks, “Taming the Big Data Tidal Wave: Finding Opportunities in Huge Data Streams with
AdvancedAnalytics”,JohnWiley&sons,2012.
2. Paul Zikopoulos, DirkdeRoos, Krishnan Parasuraman, Thomas Deutsch, James Giles, David Corrigan,
“Harness the Power of Big Data: The IBM Big Data Platform”, Tata McGraw HillPublications,2012.
3. Arshdeep Bahga and Vijay Madisetti, “Big Data Science & Analytics: A Hands OnApproach“, VPT,
2016.
4. Bart Baesens, “Analytics in a Big Data World: The Essential Guide to Data Science and its Applications
(WILEY Big Data Series)”, John Wiley & Sons, 2014.

Software Links:
1. Hadoop:http://hadoop.apache.org/
2. Hive: https://cwiki.apache.org/confluence/display/Hive/Home
3. Piglatin: http://pig.apache.org/docs/r0.7.0/tutorial.html
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE

L T P C
III B Tech II Sem
3 0 0 3
DESIGN AND ANALYSIS OF ALGORITHMS

Course Objectives:
The main objective of the course is, students have to build the following:
x Ability to understand, analyze and denote time complexities of algorithms
x To introduce the different algorithmic approaches for problem solving through numerous example
problems
x Describe the dynamic-programming paradigm and explain when an algorithmic design situation calls
for it. Recite algorithms that employ this paradigm. Synthesize dynamic-programming algorithms,
and analyze them.
x To provide some theoretical grounding in terms of finding the lower bounds of algorithms and the
NP-completeness

Course Outcomes:
After the completion of the course, student will be able to
x Analyze the performance of a given algorithm, denote its time complexity using the asymptotic
notation for recursive and non-recursive algorithms
x List and describe various algorithmic approaches and Solve problems using divide and conquer
&greedy Method
x Synthesize efficient algorithms dynamic programming approaches to solve in common engineering
design situations.
x Organize important algorithmic design paradigms and methods of analysis: backtracking, branch and
bound algorithmic approaches
x Demonstrate NP- Completeness theory ,lower bound theory and String Matching

UNIT I:
Introduction: Algorithm Definition, Algorithm Specification, performance Analysis, Performance
measurement, asymptotic notation, Randomized Algorithms.

UNIT II:
Divide and Conquer: General Method, Defective chessboard, Binary Search, finding the maximum and
minimum, Merge sort, Quick sort.
The Greedy Method: The general Method, knapsack problem, minimum-cost spanning Trees, Optimal
Merge Patterns, Single Source Shortest Paths.

UNIT III:
Dynamic Programming: The general method, multistage graphs, All pairs-shortest paths, optimal Binary
search trees, 0/1 knapsack, The traveling salesperson problem.

UNIT IV:
Backtracking: The General Method, The 8-Queens problem, sum of subsets, Graph coloring, Hamiltonian
cycles, knapsack problem.

UNIT V:
NP-Hard and NP-Complete problems: Basic concepts, non-deterministic algorithms, NP - Hard and NP-
Complete classes, Cook’s theorem.
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE

Text Books:
1. Ellis Horowitz, Sartaj Sahni, Sanguthevar Rajasekaran, “Fundamentals of Computer Algorithms”,
nd
2 Edition, Universities Press.
2. Introduction to Algorithms Thomas H. Cormen, PHI Learning
3. Harsh Bhasin, “Algorithms Design & Analysis”, Oxford University Press.

Reference Books:
nd
1. Horowitz E. Sahani S: “Fundamentals of Computer Algorithms”, 2 Edition, Galgotia
Publications,2008.
2. S. Sridhar, “Design and Analysis of Algorithms”, Oxford University Press.
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


L T P C
III B Tech II Sem
3 0 0 3
DEEP LEARNING
(Professional Elective-II)

Course Objectives:
Using the course, the students will be expected to:
x Learn deep learning methods for working with sequential data,
x Learn deep recurrent and memory networks,
x Learn deep Turing machines,
x Apply such deep learning mechanisms to various learning problems.
x Know the open issues in deep learning, and have a grasp of the current research directions.

Course Outcomes:
After the completion of the course, student will be able to
x Demonstrate the fundamental concepts learning techniques of Artificial Intelligence, Machine
Learning and Deep Learning.
x Discuss the Neural Network training, various random models.
x Explain the Techniques of Keras, TensorFlow, Theano and CNTK
x Classify the Concepts of CNN and RNN
x Implement Interactive Applications of Deep Learning.

UNIT I:
Fundamentals of Deep Learning: Artificial Intelligence, History of Machine learning: Probabilistic
Modeling, Early Neural Networks, Kernel Methods, Decision Trees, Random forests and Gradient Boosting
Machines, Fundamentals of Machine Learning: Four Branches of Machine Learning, Evaluating Machine
learning Models, Overfitting and Underfitting. [Text Book 2]

UNIT II:Introducing Deep Learning: Biological and Machine Vision, Human and Machine Language,
Artificial Neural Networks, Training Deep Networks, Improving Deep Networks. [Text Book3]

UNIT III:Neural Networks: Anatomy of Neural Network, Introduction to Keras: Keras, TensorFlow,
Theano and CNTK, Setting up Deep Learning Workstation, Classifying Movie Reviews: Binary
Classification, Classifying newswires: Multiclass Classification. [Text Book 2]

UNIT IV:
Convolutional Neural Networks:Nerual Network and Representation Learing, Convolutional Layers,
Multichannel Convolution Operation, Recurrent Neural Networks: Introduction to RNN, RNN Code,
PyTorch Tensors: Deep Learning with PyTorch, CNN in PyTorch. [Text Book 3]

UNIT V:
Interactive Applications of Deep Learning: Machine Vision, Natural Language processing, Generative
Adversial Networks, Deep Reinforcement Learning. [Text Book 1]
Deep Learning Research: Autoencoders, Deep Generative Models: Boltzmann Machines Restricted
Boltzmann Machines, Deep Belief Networks. [Text Book 1]
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


Text Books:
1. Deep Learning- Ian Goodfellow, YoshuaBengio and Aaron Courvile, MIT Press, 2016
2. Deep Learning with Python - Francois Chollet, Released December 2017, Publisher(s): Manning
Publications, ISBN: 9781617294433
3. Deep Learning Illustrated: A Visual, Interactive Guide to Artificial Intelligence - Jon Krohn, Grant
Beyleveld, AglaéBassens, Released September 2019, Publisher(s): Addison-Wesley Professional,
ISBN: 9780135116821
4. Deep Learning from Scratch - Seth Weidman, Released September 2019, Publisher(s): O'Reilly
Media, Inc., ISBN: 9781492041412

Reference Books:
1. Artificial Neural Networks, Yegnanarayana, B., PHI Learning Pvt. Ltd, 2009.
2. Matrix Computations, Golub, G.,H., and Van Loan,C.,F, JHU Press,2013.
3. Neural Networks: A Classroom Approach, Satish Kumar, Tata McGraw-Hill Education, 2004.

Web Link:
1. Swayam NPTEL: Deep Learning: https://onlinecourses.nptel.ac.in/noc22_cs22/preview
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


L T P C
III B Tech II Sem
3 0 0 3
SOFTWARE PROJECT MANAGEMENT
(Professional Elective-II)

Course Objectives:
At the end of the course, the student shall be able to:
• To describe and determine the purpose and importance of project management from the perspectives
of planning, tracking and completion of project
• To compare and differentiate organization structures and project structures
• To implement a project to manage project schedule, expenses and resources with the application of
suitable project management tools

Course outcomes:
Upon the completion of the course students will be able to:-
• Apply the process to be followed in the software development life-cycle models
• Apply the concepts of project management & planning
• Implement the project plans through managing people, communications and change
• Conduct activities necessary to successfully complete and close the Software projects
• Implement communication, modeling, and construction & deployment practices in software
development

UNIT-I:
Conventional Software Management: The waterfall model, conventional software Management
performance.
Evolution of Software Economics: Software Economics, pragmatic software cost estimation.
Improving Software Economics: Reducing Software product size, improving software processes,
improving team effectiveness, improving automation, Achieving required quality, peer inspections.
The old way and the new: The principles of conventional software Engineering, principles of modern
software management, transitioning to an iterative process.

UNIT-II:
Life cycle phases: Engineering and production stages, inception, Elaboration, construction, transition
phases.
Artifacts of the process: The artifact sets, Management artifacts, Engineering artifacts, programmatic
artifacts.

UNIT- III:
Model based software architectures: A Management perspective and technical perspective.
Work Flows of the process: Software process workflows, Iteration workflows.
Checkpoints of the process: Major mile stones, Minor Milestones, Periodic status assessments.
Iterative Process Planning: Work breakdown structures, planning guidelines, cost and schedule estimating,
Iteration planning process, Pragmatic planning.

UNIT- IV:
Project Organizations and Responsibilities: Line-of-Business Organizations, Project Organizations,
evolution of Organizations.
Process Automation: Automation Building blocks, The Project Environment.
Project Control and Process instrumentation: The seven core Metrics, Management indicators, quality
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


indicators, life cycle expectations, pragmatic Software Metrics, Metrics automation.

UNIT-V:
Agile Methodology, ADAPTing to Scrum, Patterns for Adopting Scrum, Iterating towards Agility.
Fundamentals of DevOps: Architecture, Deployments, Orchestration, Need, Instance of applications,
DevOps delivery pipeline, DevOps eco system. DevOps adoption in projects: Technology aspects, Agiling
capabilities, Tool stack implementation, People aspect, processes

Text Books:
1. Software Project Management, Walker Royce, PEA, 2005.
2. Succeeding with Agile: Software Development Using Scrum, Mike Cohn, Addison Wesley.
3. The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology
Organizations, Gene Kim , John Willis , Patrick Debois , Jez Humb,1st Edition, O’Reilly
publications, 2016.

Reference Books:
1. Software Project Management, Bob Hughes,3/e, Mike Cotterell, TMH
2. Software Project Management, Joel Henry, PEA
3. Software Project Management in practice, PankajJalote, PEA, 2005,
4. Effective Software Project Management, Robert K.Wysocki, Wiley,2006
5. Project Management in IT, Kathy Schwalbe, Cengage
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


L T P C
III B Tech II Sem
3 0 0 3
DISTRIBUTED SYSTEMS
(Professional Elective-II)

Course Objectives:
x To understand the foundations of distributed systems.
x To learn issues related to clock Synchronization and the need for global state in distributed systems
x To learn distributed mutual exclusion and dead lock detection algorithms
x To understand the significance of agreement, fault tolerance and recovery protocols in Distributed
Systems
x To learn the characteristics of peer-to-peer and distributed shared memory systems

Course Outcomes:
At the end of the course, the students will be able to:
x Elucidate the foundations and issues of distributed systems
x Illustrate the various synchronization issues and global state for distributed systems
x Illustrate the Mutual Exclusion and Dead lock detection algorithms in distributed systems
x Describe the agreement protocols and fault tolerance mechanisms in distributed systems
x Describe the features of peer-to-peer and distributed shared memory systems

UNIT I:
Distributed Systems: Definition, Relation to computer system components, Motivation, Relation
to parallel systems, Message-passing systems versus shared memory systems, Primitives for
distributed communication, Synchronous versus a synchronous executions, Design issues and
challenges.
A model of distributed computations: A distributed program, A model of distributed executions,
Models of communication networks, Global state, Cuts, Past and future cones of an event,
Models of process communications.
Logical Time: A framework for a system of logical clocks, Scalar time, Vector time, Physical
clock synchronization: NTP.

UNIT II:
Message Ordering & Snapshots: Message ordering and group communication: Message ordering
paradigms, Asynchronous execution with synchronous communication, Synchronous program
order on an asynchronous system, Group communication, Causal order (CO), Total order. Global
state and snapshot recording algorithms: Introduction, System model and definitions, Snap shot
algorithms for FIFO channels.

UNIT III:
Distributed Mutex & Deadlock: Distributed mutual exclusion algorithms: Introduction,
Preliminaries, Lamport‘s algorithm, Ricart-Agrawala algorithm, Maekawa‘s algorithm, Suzuki–
Kasami‘s broadcast algorithm. Deadlock detection in distributed systems: Introduction, System
model, Preliminaries, Models of deadlocks, Knapp‘s classification, Algorithms for the single
resource model, the AND model and the OR model.
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


UNITI V:
Recovery & Consensus: Check pointing and rollback recovery: Introduction, Background and
definitions, Issues in failure recovery, Checkpoint-based recovery, Log-based rollback recovery,
Coordinated check pointing algorithm, Algorithm for asynchronous check pointing and recovery.
Consensus and agreement algorithms: Problem definition, Overview of results, Agreement in a
failure, free system, Agreement in synchronous systems with failures.

UNIT V:
Peer-to-peer computing and overlay graphs: Introduction, Data indexing and overlays, Chord–
Content addressable networks, Tapestry.
Distributed shared memory: Abstraction and advantages, Memory consistency models, Shared
memory Mutual Exclusion.

Text Books:
1. Distributed Systems Concepts and Design, George Coulouris, Jean Dollimore and Tim Kindberg, Fifth
Edition, Pearson Education, 2012.
2. Distributed computing: Principles, algorithms, and systems, Ajay Kshemkalyani and Mukesh Singhal,
Cambridge University Press, 2011.

Reference Books:
1. Distributed Operating Systems: Concepts and Design, Pradeep K Sinha, Prentice Hall of India, 2007.
2. Advanced concepts in operating systems. Mukesh Singhaland Niranjan G. Shivaratri, McGraw-
Hill, 1994.
3. Distributed Systems: Principles and Paradigms, Tanenbaum A.S., Van Steen M.,Pearson Education,
2007.

e-Resources:
1) https://nptel.ac.in/courses/106/106/106106168/
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


L T P C
III B Tech II Sem
3 0 0 3
DATA WRANGLING IN DATA SCIENCE
(Professional Elective-II)

Course outcomes:
Upon completion of this course, the students will be able to
x Identify and execute the basic data format.
x Perform the computations with Excel and pdf files
x Understand the concepts of data cleanup
x Explore and analyze the Image and video data
x Understand the concepts web scraping

UNIT I:
INTRODUCTION TO DATA WRANGLING: Data Wrangling- Importance of Data Wrangling -How is
Data Wrangling performed- Tasks of Data Wrangling-Data Wrangling Tools-Introduction to Python-Python
Basics-Data Meant to be Read by Machines-CSV Data-JSON Data-XML Data.

UNIT II:
WORKING WITH EXCEL FILES AND PDFS: Installing Python Packages-Parsing Excel Files-Parsing
Excel Files -Getting Started with Parsing-PDFs and Problem Solving in Python-Programmatic Approaches
to PDF Parsing-Converting PDF to Text-Parsing PDFs Using pdf miner-Acquiring and Storing Data-
Databases: A Brief Introduction-Relational Databases: MySQL and PostgreSQL-Non-Relational Databases:
NoSQL-When to Use a Simple File-Alternative Data Storage.

UNIT III:
DATA CLEANUP: Why Clean Data?- Data Cleanup Basics-Identifying Values for Data Cleanup-
Formatting Data-Finding Outliers and Bad Data-Finding Duplicates-Fuzzy Matching-RegEx Matching-
Normalizing and Standardizing the Data-Saving the Data-Determining suitable Data Cleanup-Scripting the
CleanupTesting with New Data

UNIT IV:
DATA EXPLORATION AND ANALYSIS: Exploring Data-Importing Data-Exploring Table Functions-
Joining Numerous Datasets-Identifying Correlations-Identifying Outliers-Creating Groupings-Analyzing
Data-Separating and Focusing the Data, Presenting Data-Visualizing the Data-Charts-Time-Related Data-
Maps-Interactives-Words-Images, Video, and Illustrations-Presentation Tools-Publishing the Data-Open
Source Platforms

UNIT V:
WEB SCRAPING: What to Scrape and How-Analyzing a Web Page-Network/Timeline-Interacting with
JavaScript-In-Depth Analysis of a Page-Getting Pages-Reading a Web Page-Reading a Web Page with
LXML-XPath-Advanced Web Scraping-Browser-Based Parsing-Screen Reading with Selenium-Screen
Reading with Ghost.PySpidering the Web-Building a Spider with Scrapy-Crawling Whole Websites with
Scrapy.

Text Books:
1. Data Wrangling with Python, Jacqueline Kazil& Katharine Jarmul, O’Reilly Media, Inc,2016
2. Data Wrangling with Python: Creating actionable data from raw sources,,Dr. TirthajyotiSarkar,
ShubhadeepPackt Publishing Ltd,2019
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE

Reference Books;
1. Hands-On Data Analysis with Pandas, Stefanie Molin,Packt Publishing Ltd,2019
2. Practical Data Wrangling, Allan Visochek, Packt Publishing Ltd,2017
3. Principles of Data Wrangling: Practical Techniques for Data Preparation, TyeRattenbury, Joseph M.
Hellerstein, Jeffrey Heer, Sean Kandel, Connor Carreras, , O’Reilly Media, Inc,2017
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


L T P C
III B Tech II Sem
3 0 0 3
ETL PRINCIPLES
(Professional Elective-II)

Course Objective:
x Develop various applications with ETL principles

Course Outcomes:
By completing the course the students will be able to:
x Understand the basic principles of ETL
x Understand various processes like extraction, cleaning, conforming etc.

UNIT I:
ETL Data Structures: To Stage or Not to Stage, Designing the Staging Area, Data Structures in the ETL
System: Flat files, XML Data Sets, Relational Tables, Independent DBMS Working Tables, Third Normal
Form Entity/Relation Models, Nonrelational Data Sources, Dimensional Data Models, Fact Tables,
Dimension Tables, Atomic and Aggregate Fact Tables, Surrogate Key Mapping Tables

UNIT II:
Extracting: Logical Data Map, Components of the Logical Data Map, Using Tools for the Logical Data
Map, Building the Logical Data Map- Data Discovery Phase, Data Content Analysis, Collecting Business
rules in the ETL Processes, Integrating Heterogeneous Data Sources, Challenge of Extracting from
Disparate Platforms, Flat files, XML Sources, Web Log Sources, ERP System Sources

UNIT III:
Cleaning and Conforming: Defining Data Quality, Cleaning Deliverables, Known Table Row Counts,
Column Nullity, Column Numeric and Date Ranges, Column Length Restriction, Column Explicit Valid
Values, Column Explicit Invalid Values, Conformed Dimensions, Designing the Conformed Dimensions,
Conformed Facts
Delivering Dimension Tables: The Basic Structure of a Dimension, The Grain of a Dimension, Flat
Dimensions and Snowflaked Dimensions, Date and Time Dimensions, Big Dimensions, Small Dimensions,
Dimensional Roles, Degenerate Dimensions, Slowly Changing Dimensions, Multivalued Dimensions and
Bridge Tables

UNIT IV:
Delivering Fact Tables: Basic Structure of a Fact Table, Surrogate Key Pipeline, Fundamental Grains:
Transaction Grain Fact Tables, Periodic Snapshot Fact Table, Accumulating Snapshot Fact Tables,
Managing Indexes, Managing Partitions, Outwitting the Rollback Log, Loading the Data, Incremental
Loading, Inserting Facts, Updating and Correcting Facts, Negating Facts, updating Facts, Deleting Facts,
Factless Fact Tables

UNIT V:
Operations: Scheduling and Support, Migrating to Production, Achieving optimal ETL performance:
Estimating Load Time, Vulnerabilities of Long-Running ETL processes, Minimizing Risk of Load Failures,
Purging Historic Data, Monitoring ETL System: Measuring ETL Specific Performance Indicators,
Measuring Infrastructure Performance Indicators, Tuning ETL Processes, ETL System Security
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


Text Books:
1. Ralph Kimball, Joe Caserta, “The Data Warehouse ETL Toolkit: Practical Techniques for
Extracting, Cleaning, Conforming, and Delivering Data,” Wiley, 2004.
References:
1. Silvers, Fon, “Building and Maintaining a Data Warehouse,” Ukraine: CRC Press, 2008.

Web References:
1. https://www.coursera.org/learn/extract-transform-and-load-data
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


L T P C
III B Tech II Sem
3 0 0 3
MEAN STACK DEVELOPMENT
(Job Oriented Course)

Course Outcomes:
At the end of the Course, Student will be able to:
x Build static web pages using HTML 5 elements.
x Apply JavaScript to embed programming interface for web pages and also to perform Client side
validations.
x Build a basic web server using Node.js, work with Node Package Manager (NPM) and recognize the
need for Express.js.
x Develop JavaScript applications using typescript and work with document database using
MongoDB.
x Utilize Angular JS to design dynamic and responsive web pages.

UNIT-I:
HTML 5: Introduction to Web, Overview of Web Technologies, HTML - Introduction, HTML - Need,
Case-insensitivity, Platform-independency, DOCTYPE Declaration, Types of Elements, HTML Elements -
Attributes, Metadata Element, Sectioning Elements, Paragraph Element, Division and Span Elements, List
Element, Link Element, Character Entities, HTML5 Global Attributes, Creating Table Elements, Table
Elements : Colspan/ Rowspan Attributes, border, cellspacing and cellpadding attributes, Creating Form
Elements, Input Elements - Attributes, Color and Date Pickers, Select and Datalist Elements, Editing
Elements, Media, Iframe, Why HTML Security, HTML Injection, Clickjacking, HTML5 Attributes &
Events Vulnerabilities, Local Storage Vulnerabilities, HTML5 - Cross-browser support, Best Practices For
HTML Web Pages.

UNIT-II:
JavaScript: Why we need JavaScript, What is JavaScript, Environment Setup, Working with Identifiers,
Type of Identifiers, Primitive and Non Primitive Data Types, Operators and Types of Operators, Types of
Statements, Non - Conditional Statements, Types of Conditional Statements, If and Switch Statements,
Types of Loops, Types of Functions, Declaring and Invoking Function, Arrow Function, Function
Parameters, Nested Function, Built-in Functions, Variable Scope in Functions, Working With Classes,
Creating and Inheriting Classes, In-built Events and Handlers, Working with Objects, Types of Objects,
Creating Objects, Combining and cloning Objects using Spread operator, Destructuring Objects, Browser
and Document Object Model, Creating Arrays, Destructuring Arrays, Accessing Arrays, Array Methods,
Introduction to Asynchronous Programming, Callbacks, Promises, Async and Await, Executing Network
Requests using Fetch API, Creating and consuming Modules.

UNIT-III:
Node.js: Why and What Node.js, How to use Node.js, Create a web server in Node.js, Node Package
Manager, Modular programming in Node.js, Restarting Node Application, File Operations.
Express.js: Express Development Environment, Defining a route, Handling Routes, Route and Query
Parameters, How Middleware works, Chaining of Middlewares, Types of Middlewares, Connecting to
MongoDB with Mongoose, Validation Types and Defaults, Models, CRUD Operations, API Development,
Why Session management, Cookies, Sessions, Why and What Security, Helmet Middleware, Using a
Template Engine Middleware, Stylus CSS Preprocessor.
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


UNIT-IV:
Typescript: Installing TypeScript, Basics of TypeScript, Function, Parameter Types and Return Types,
Arrow Function, Function Types, Optional and Default Parameters, Rest Parameter, Creating an Interface,
Duck Typing, Function Types, Extending Interfaces, Classes, Constructor, Access Modifiers, Properties and
Methods, Creating and using Namespaces, Creating and using Modules, Module Formats and Loaders,
Module Vs Namespace, What is Generics, What are Type Parameters, Generic Functions, Generic
Constraints.
MongoDB: Introduction Module Overview, Document Database Overview, Understanding JSON,
MongoDB Structure and Architecture, MongoDB Remote Management, Installing MongoDB on the local
computer (Mac or Windows), Introduction to MongoDB Cloud, Create MongoDB Atlas Cluster, GUI tools
Overview, Install and Configure MongoDB Compass, Introduction to the MongoDB Shell, MongoDB Shell
JavaScript Engine, MongoDB Shell JavaScript Syntax, Introduction to the MongoDB Data Types,
Introduction to the CRUD Operations on documents, Create and Delete Databases and Collections,
Introduction to MongoDB Queries.

UNIT-V:
What is Angular, Features of Angular, Angular Application Setup, Components and Modules, Executing
Angular Application, Elements of Template, Change Detection, Structural Directives - ngIf, ngFor,
ngSwitch, Custom Structural Directive, Attribute Directives - ngStyle, ngClass, Custom Attribute
Directive, Property Binding, Attribute Binding, Style and Event Binding, Built in Pipes, Passing Parameters
to Pipes, Nested Components Basics, Passing data from Container Component to Child Component, Passing
data from Child Component to ContainerComponent, Shadow DOM, Component Life Cycle, Template
Driven Forms, Model Driven Forms or Reactive Forms, Custom Validators in Reactive Forms, Custom
Validators in Template Driven forms, Dependency Injection, Services Basics, RxJS Observables, Server
Communication using HttpClient, Communicating with different backend services using Angular
HttpClient, Routing Basics, Router Links, Route Guards, Asynchronous Routing, Nested Routes.

Text Books:
1. Programming the World Wide Web, 7th Edition, Robet W Sebesta, Pearson.
2. Pro Mean Stack Development, 1st Edition, ELadElrom, Apress O’Reilly.
3. Full Stack JavaScript Development with MEAN, Colin J Ihrig, Adam Bretz, 1st edition, SitePoint,
SitePoint Pty. Ltd., O'Reilly Media.
4. MongoDB – The Definitive Guide, 2nd Edition, Kristina Chodorow,O’Reilly.

Reference Books:
1. Web Technologies, HTML, JavaScript, PHP, Java, JSP, XML and AJAX, Black book,1st Edition, Dream
Tech.
2. An Introduction to Web Design, Programming, 1st Edition, Paul S Wang, SandaSKatila, Cengage
Learning.

Web Links:
1. https://infyspringboard.onwingspan.com/en/app/toc/lex_17739732834840810000_shared/overview
(HTML5)

2. https://infyspringboard.onwingspan.com/en/app/toc/lex_18109698366332810000_shared/overview
(Javascript)

3. https://infyspringboard.onwingspan.com/en/app/toc/lex_32407835671946760000_shared/overview(Node
.js & Express.js)
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


4. https://infyspringboard.onwingspan.com/en/app/toc/lex_9436233116512678000_shared/overview(Types
cript)

5. https://infyspringboard.onwingspan.com/en/app/toc/lex_20858515543254600000_shared/overview(Angu
lar JS)

6. https://infyspringboard.onwingspan.com/en/app/toc/lex_auth_013177169294712832113_shared/overvie
w (MongoDB)
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


L T P C
III B Tech II Sem
0 0 3 1.5
COMPUTER NETWORKS LAB

Course Objectives:
Learn basic concepts of computer networking and acquire practical notions of protocols with the emphasis
on TCP/IP. A lab provides a practical approach to Ethernet/Internet networking: networks are assembled,
and experiments are made to understand the layered architecture and how do some important protocols work

Course Outcomes:
By the end of the course student will be able to
x Know how reliable data communication is achieved through data link layer.
x Suggest appropriate routing algorithm for the network.
x Provide internet connection to the system and its installation.
x Work on various network management tools

List of Experiments:

1. Study of Network devices in detail and connect the computers in Local Area Network.
2. Write a Program to implement the data link layer farming methods such as
i) Character stuffing ii) bit stuffing.
3. Write a Program to implement data link layer farming method checksum.
4. Write a program for Hamming Code generation for error detection and correction.
5. Write a Program to implement on a data set of characters the three CRC polynomials – CRC 12, CRC 16
and CRC CCIP.
6. Write a Program to implement Sliding window protocol for Goback N.
7. Write a Program to implement Sliding window protocol for Selective repeat.
8. Write a Program to implement Stop and Wait Protocol.
9. Write a program for congestion control using leaky bucket algorithm
10. Write a Program to implement Dijkstra‘s algorithm to compute the Shortest path through a graph.
11. Write a Program to implement Distance vector routing algorithm by obtaining routing table at each node
(Take an example subnet graph with weights indicating delay between nodes).
12. Write a Program to implement Broadcast tree by taking subnet of hosts.
13. Wireshark
i. Packet Capture Using Wire shark
ii. Starting Wire shark
iii. Viewing Captured Traffic
iv. Analysis and Statistics & Filters.
14. How to run Nmap scan
15. Operating System Detection using Nmap
16. 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.
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


L T P C
III B Tech II Sem
0 0 3 1.5
BIG DATA ANALYTICS LAB

Software Requirements :
1. Hadoop : https://hadoop.apache.org/release/2.7.6.html
2. Java : https://www.oracle.com/java/technologies/javase/javase8u211-later-archive-
downloads.html
3. Eclipse : https://www.eclipse.org/downloads/

List of Experiments:
Experiment 1: Week 1, 2:
1. Implement the following Data structures in Java
a) Linked Lists b) Stacks c) Queues d) Set e) Map

Experiment 2: Week 3:
2. (i)Perform setting up and Installing Hadoop in its three operating modes:
Standalone, Pseudo distributed, Fully distributed
(ii)Use web based tools to monitor your Hadoop setup.

Experiment 3: Week 4:
3.Implement the following file management tasks in Hadoop:
x Adding files and directories
x Retrieving files
x Deleting files
Hint: A typical Hadoop workflow creates data files (such as log files) elsewhere and copies them into
HDFS using one of the above command line utilities.

Experiment 4: Week 5:
4. Run a basic Word Count MapReduce program to understand MapReduce Paradigm.

Experiment 5: Week 6:
5. Write a map reduce program that mines weather data.
Weather sensors collecting data every hour at many locations across the globe gather a large volume
of log data, which is a good candidate for analysis with Map Reduce, since it is semi
structured and record-oriented.

Experiment 6: Week 7:
6.Use MapReduce to find the shortest path between two people in a social graph.
Hint: Use an adjacency list to model a graph, and for each node store the distance from the original
node, as well as a back pointer to the original node. Use the mappers to propagate the distance to the
original node, and the reducer to restore the state of the graph. Iterate until the target node has been
reached.

Experiment 7: Week 8:
7. Implement Friends-of-friends algorithm in MapReduce.
Hint: Two MapReduce jobs are required to calculate the FoFs for each user in a social network .The
first job calculates the common friends for each user, and the second job sorts the common friends
by the number of connections to your friends.
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


Experiment 8: Week 9:
8. Implement an iterative PageRank graph algorithm in MapReduce.
Hint: PageRank can be implemented by iterating a MapReduce job until the graph has converged. The
mappers are responsible for propagating node PageRank values to their adjacent nodes, and the
reducers are responsible for calculating new PageRank values for each node, and for re-creating the
original graph with the updated PageRank values.

Experiment 9: Week 10:


9. Perform an efficient semi-join in MapReduce.
Hint: Perform a semi-join by having the mappers load a Bloom filter from the Distributed Cache,
and then filter results from the actual MapReduce data source by performing membership queries
against the Bloom filter to determine which data source records should be emitted to the reducers.

Experiment 10: Week 11:


10. Install and Run Pig then write Pig Latin scripts to sort, group, join, project, and filter your
data.

Experiment 12: Week 12:


11. Install and Run Hive then use Hive to create, alter, and drop databases, tables, views,
functions, and indexes
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


L T P C
III B Tech II Sem
0 0 3 1.5
DEEP LEARNING WITH TENSORFLOW

Course Outcomes:
On completion of this course, the student will be able to
x Implement deep neural networks to solve real world problems
x Choose appropriate pre-trained model to solve real time problem
x Interpret the results of two different deep learning models

Software Packages required:


x Keras
x Tensorflow
x PyTorch

List of Experiments:
1. Implement multilayer perceptron algorithm for MNIST Hand written Digit Classification.
2. Design a neural network for classifying movie reviews (Binary Classification) using IMDB dataset.
3. Design a neural Network for classifying news wires (Multi class classification) using Reuters
dataset.
4. Design a neural network for predicting house prices using Boston Housing Price dataset.
5. Build a Convolution Neural Network for MNIST Hand written Digit Classification.
6. Build a Convolution Neural Network for simple image (dogs and Cats) Classification
7. Use a pre-trained convolution neural network (VGG16) for image classification.
8. Implement one hot encoding of words or characters.
9. Implement word embeddings for IMDB dataset.
10. Implement a Recurrent Neural Network for IMDB movie review classification problem.

Text Books:
1. Reza Zadeh and BharathRamsundar, “Tensorflow for Deep Learning”, O’Reilly publishers, 2018

References:
1. https://github.com/fchollet/deep-learning-with-python-notebooks
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


L T P C
III B Tech II Sem
0 0 4 2
MEAN STACK TECHNOLOGIES-MODULE I- HTML 5, JAVSCRIPT, NODE.JS,
EXPRESS.JS AND TYPESCRIPT
(Skill Oriented Course)

Course Outcomes:
At the end of the Course, Student will be able to:
x Develop professional web pages of an application using HTML elements like lists, navigations, tables,
various form elements, embedded media which includes images, audio, video and CSS Styles.
x Utilize JavaScript for developing interactive HTML web pages and validate form data.
x Build a basic web server using Node.js and also working with Node Package Manager (NPM).
x Build a web server using Express.js
x Make use of Typescript to optimize JavaScript code by using the concept of strict type checking.

List of Exercises
1.a Course Name: HTML5 - The Language
Module Name: Case-insensitivity, Platform-independency, DOCTYPE Declaration,
Types of Elements, HTML Elements - Attributes, Metadata Element
Include the Metadata element in Homepage.html for providing description as
"IEKart's is an online shopping website that sells goods in retail. This company deals
with various categories like Electronics, Clothing, Accessories etc.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_28320667711144660000_shared?collectionId=lex_177397328348408100
00_shared&collectionType=Course
1.b Course Name: HTML5 - The Language
Module Name: Sectioning Elements
Enhance the Homepage.html of IEKart's Shopping Application by adding appropriate
sectioning elements.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_6372291347110857000_shared?collectionId=lex_1773973283484081000
0_shared&collectionType=Course
1.c Course Name: HTML5 - The Language
Module Name: Paragraph Element, Division and Span Elements, List Element
Make use of appropriate grouping elements such as list items to "About Us" page of
IEKart's Shopping Application
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_32785192040894940000_shared?collectionId=lex_177397328348408100
00_shared&collectionType=Course
1.d Course Name: HTML5 - The Language
Module Name: Link Element
Link "Login", "SignUp" and "Track order" to "Login.html", "SignUp.html" and
"Track.html" page respectively. Bookmark each category to its details of IEKart's
Shopping application.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_15515105953273338000_shared?collectionId=lex_177397328348408100
00_shared&collectionType=Course
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


1.e Course Name: HTML5 - The Language
Module Name: Character Entities
Add the © symbol in the Home page footer of IEKart's Shopping application.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_547667376938096260_shared?collectionId=lex_17739732834840810000
_shared&collectionType=Course
1.f Course Name: HTML5 - The Language
Module Name: HTML5 Global Attributes
Add the global attributes such as contenteditable, spellcheck, id etc. to enhance the
Signup Page functionality of IEKart's Shopping application.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_28723566050321920000_shared?collectionId=lex_177397328348408100
00_shared&collectionType=Course
2.a Course Name: HTML5 - The Language
Module Name: Creating Table Elements, Table Elements : Colspan/Rowspan
Attributes, border, cellspacing, cellpadding attributes
Enhance the details page of IEKart's Shopping application by adding a table element
to display the available mobile/any inventories.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_auth_013168035284033536113_shared?collectionId=lex_177397328348
40810000_shared&collectionType=Course
2.b Course Name: HTML5 - The Language
Module Name: Creating Form Elements, Color and Date Pickers, Select and Datalist
Elements
Using the form elements create Signup page for IEKart's Shopping application.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_13975270903118459000_shared?collectionId=lex_177397328348408100
00_shared&collectionType=Course
2.c Course Name: HTML5 - The Language
Module Name: Input Elements - Attributes
Enhance Signup page functionality of IEKart's Shopping application by adding
attributes to input elements.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_14048414537062347000_shared?collectionId=lex_177397328348408100
00_shared&collectionType=Course
2.d Course Name: HTML5 - The Language
Module Name: Media, Iframe
Add media content in a frame using audio, video, iframe elements to the Home page
of IEKart's Shopping application.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_30738402225794945000_shared?collectionId=lex_177397328348408100
00_shared&collectionType=Course
3.a Course Name: Javascript
Module Name: Type of Identifiers
Write a JavaScript program to find the area of a circle using radius (var and let -
reassign and observe the difference with var and let) and PI (const)
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_auth_013053264414818304732_shared?collectionId=lex_181096983663
32810000_shared&collectionType=Course
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


3.b Course Name: Javascript
Module Name: Primitive and Non Primitive Data Types
Write JavaScript code to display the movie details such as movie name, starring,
language, and ratings. Initialize the variables with values of appropriate types. Use
template literals wherever necessary.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_21528322245232402000_shared?collectionId=lex_181096983663328100
00_shared&collectionType=Course
3.c Course Name: Javascript
Module Name: Operators and Types of Operators
Write JavaScript code to book movie tickets online and calculate the total price,
considering the number of tickets and price per ticket as Rs. 150. Also, apply a festive
season discount of 10% and calculate the discounted amount.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_13808338384481720000_shared?collectionId=lex_181096983663328100
00_shared&collectionType=Course
3.d Course Name: Javascript
Module Name: Types of Statements, Non - Conditional Statements, Types of
Conditional Statements, if Statements, switch Statements
Write a JavaScript code to book movie tickets online and calculate the total price
based on the 3 conditions: (a) If seats to be booked are not more than 2, the cost per
ticket remains Rs. 150. (b) If seats are 6 or more, booking is not allowed. (c) If se
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_16257498471333610000_shared?collectionId=lex_181096983663328100
00_shared&collectionType=Course
3.e Course Name: Javascript
Module Name: Types of Loops
Write a JavaScript code to book movie tickets online and calculate the total price
based on the 3 conditions: (a) If seats to be booked are not more than 2, the cost per
ticket remains Rs. 150. (b) If seats are 6 or more, booking is not allowed. (c) If
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_6238536888292970000_shared?collectionId=lex_1810969836633281000
0_shared&collectionType=Course
4.a Course Name: Javascript
Module Name: Types of Functions, Declaring and Invoking Function, Arrow
Function, Function Parameters, Nested Function, Built-in Functions, Variable Scope
in Functions
Write a JavaScript code to book movie tickets online and calculate the total price
based on the 3 conditions: (a) If seats to be booked are not more than 2, the cost per
ticket remains Rs. 150. (b) If seats are 6 or more, booking is not allowed. (c) If
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_15455199570613326000_shared?collectionId=lex_181096983663328100
00_shared&collectionType=Course
4.b Course Name: Javascript
Module Name: Working With Classes, Creating and Inheriting Classes
Create an Employee class extending from a base class Person. Hints: (i) Create a class
Person with name and age as attributes. (ii) Add a constructor to initialize the values
(iii) Create a class Employee extending Person with additional attributes role
https://infyspringboard.onwingspan.com/web/en/viewer/web-
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


module/lex_auth_012599811117760512458_shared?collectionId=lex_181096983663
32810000_shared&collectionType=Course
4.c Course Name: Javascript
Module Name: In-built Events and Handlers
Write a JavaScript code to book movie tickets online and calculate the total price
based on the 3 conditions: (a) If seats to be booked are not more than 2, the cost per
ticket remains Rs. 150. (b) If seats are 6 or more, booking is not allowed. (c) If se
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_4192188372573027000_shared?collectionId=lex_1810969836633281000
0_shared&collectionType=Course
4.d Course Name: Javascript
Module Name: Working with Objects, Types of Objects, Creating Objects,
Combining and cloning Objects using Spread operator, Destructuring Objects,
Browser Object Model, Document Object Model
If a user clicks on the given link, they should see an empty cone, a different heading,
and a different message and a different background color. If user clicks again, they
should see a re-filled cone, a different heading, a different message, and a diffe
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_13197025862804100000_shared?collectionId=lex_181096983663328100
00_shared&collectionType=Course
5.a Course Name: Javascript
Module Name: Creating Arrays, Destructuring Arrays, Accessing Arrays, Array
Methods
Create an array of objects having movie details. The object should include the movie
name, starring, language, and ratings. Render the details of movies on the page using
the array.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_auth_013053270191734784711_shared?collectionId=lex_181096983663
32810000_shared&collectionType=Course
5.b Course Name: Javascript
Module Name: Introduction to Asynchronous Programming, Callbacks, Promises,
Async and Await, Executing Network Requests using Fetch API
Simulate a periodic stock price change and display on the console. Hints: (i) Create a
method which returns a random number - use Math.random, floor and other methods
to return a rounded value. (ii) Invoke the method for every three seconds and stop
when
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_auth_012599811633905664460_shared?collectionId=lex_181096983663
32810000_shared&collectionType=Course
5.c Course Name: Javascript
Module Name: Creating Modules, Consuming Modules
Validate the user by creating a login module. Hints: (i) Create a file login.js with a
User class. (ii) Create a validate method with username and password as arguments.
(iii) If the username and password are equal it will return "Login Successful" else w
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_auth_013052857053585408667_shared?collectionId=lex_181096983663
32810000_shared&collectionType=Course
6.a Course Name: Node.js
Module Name: How to use Node.js
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


Verify how to execute different functions successfully in the Node.js platform.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_19002830632103186000_shared?collectionId=lex_324078356719467600
00_shared&collectionType=Course
6.b Course Name: Node.js
Module Name: Create a web server in Node.js
Write a program to show the workflow of JavaScript code executable by creating web
server in Node.js.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_28177338996267815000_shared?collectionId=lex_324078356719467600
00_shared&collectionType=Course
6.c Course Name: Node.js
Module Name: Modular programming in Node.js
Write a Node.js module to show the workflow of Modularization of Node application.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_28865394191004004000_shared?collectionId=lex_324078356719467600
00_shared&collectionType=Course
6.d Course Name: Node.js
Module Name: Restarting Node Application
Write a program to show the workflow of restarting a Node application.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_9174073856000159000_shared?collectionId=lex_3240783567194676000
0_shared&collectionType=Course
6.e Course Name: Node.js
Module Name: File Operations
Create a text file src.txt and add the following data to it. Mongo, Express, Angular,
Node.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_33376440180246100000_shared?collectionId=lex_324078356719467600
00_shared&collectionType=Course
7.a Course Name: Express.js
Module Name: Defining a route, Handling Routes, Route Parameters, Query
Parameters
Implement routing for the AdventureTrails application by embedding the necessary
code in the routes/route.js file.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_29394215542149950000_shared?collectionId=lex_324078356719467600
00_shared&collectionType=Course
7.b Course Name: Express.js
Module Name: How Middleware works, Chaining of Middlewares, Types of
Middlewares
In myNotes application: (i) we want to handle POST submissions. (ii) display
customized error messages. (iii) perform logging.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_13930661312009580000_shared?collectionId=lex_324078356719467600
00_shared&collectionType=Course
7.c Course Name: Express.js
Module Name: Connecting to MongoDB with Mongoose, Validation Types and
Defaults
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


Write a Mongoose schema to connect with MongoDB.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_auth_013035588775485440691_shared?collectionId=lex_324078356719
46760000_shared&collectionType=Course
7.d Course Name: Express.js
Module Name: Models
Write a program to wrap the Schema into a Model object.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_auth_013035593896869888662_shared?collectionId=lex_324078356719
46760000_shared&collectionType=Course
8.a Course Name: Express.js
Module Name: CRUD Operations
Write a program to perform various CRUD (Create-Read-Update-Delete) operations
using Mongoose library functions.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_auth_013035684270129152696_shared?collectionId=lex_324078356719
46760000_shared&collectionType=Course
8.b Course Name: Express.js
Module Name: API Development
In the myNotes application, include APIs based on the requirements provided. (i) API
should fetch the details of the notes based on a notesID which is provided in the URL.
Test URL - http://localhost:3000/notes/7555 (ii) API should update the details bas
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_auth_013035745250975744755_shared?collectionId=lex_324078356719
46760000_shared&collectionType=Course
8.c Course Name: Express.js
Module Name: Why Session management, Cookies
Write a program to explain session management using cookies.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_24299316914857090000_shared?collectionId=lex_324078356719467600
00_shared&collectionType=Course
8.d Course Name: Express.js
Module Name: Sessions
Write a program to explain session management using sessions.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_905413034723449100_shared?collectionId=lex_32407835671946760000
_shared&collectionType=Course
8.e Course Name: Express.js
Module Name: Why and What Security, Helmet Middleware
Implement security features in myNotes application
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_31677453061177940000_shared?collectionId=lex_324078356719467600
00_shared&collectionType=Course
9.a Course Name: Typescript
Module Name: Basics of TypeScript
On the page, display the price of the mobile-based in three different colors. Instead of
using the number in our code, represent them by string values like GoldPlatinum,
PinkGold, SilverTitanium.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


module/lex_28910354929502245000_shared?collectionId=lex_943623311651267800
0_shared&collectionType=Course
9.b Course Name: Typescript
Module Name: Function
Define an arrow function inside the event handler to filter the product array with the
selected product object using the productId received by the function. Pass the selected
product object to the next screen.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_10783156469383723000_shared?collectionId=lex_943623311651267800
0_shared&collectionType=Course
9.c Course Name: Typescript
Module Name: Parameter Types and Return Types
Consider that developer needs to declare a function - getMobileByVendor which
accepts string as input parameter and returns the list of mobiles.
https://infyspringboard.onwingspan.com/web/en/viewer/hands-
on/lex_auth_012712912427057152901_shared?collectionId=lex_9436233116512678
000_shared&collectionType=Course
9.d Course Name: Typescript
Module Name: Arrow Function
Consider that developer needs to declare a manufacturer's array holding 4 objects with
id and price as a parameter and needs to implement an arrow function - myfunction to
populate the id parameter of manufacturers array whose price is greater than or equ
https://infyspringboard.onwingspan.com/web/en/viewer/hands-
on/lex_auth_012712910875500544904_shared?collectionId=lex_9436233116512678
000_shared&collectionType=Course
9.e Course Name: Typescript
Module Name: Optional and Default Parameters
Declare a function - getMobileByManufacturer with two parameters namely
manufacturer and id, where manufacturer value should passed as Samsung and id
parameter should be optional while invoking the function, if id is passed as 101 then
this function shoul
https://infyspringboard.onwingspan.com/web/en/viewer/hands-
on/lex_auth_012712914940641280906_shared?collectionId=lex_9436233116512678
000_shared&collectionType=Course
10.a Course Name: Typescript
Module Name: Rest Parameter
Implement business logic for adding multiple Product values into a cart variable which
is type of string array.
https://infyspringboard.onwingspan.com/web/en/viewer/hands-
on/lex_auth_012712921860915200909_shared?collectionId=lex_9436233116512678
000_shared&collectionType=Course
10.b Course Name: Typescript
Module Name: Creating an Interface
Declare an interface named - Product with two properties like productId and
productName with a number and string datatype and need to implement logic to
populate the Product details.
https://infyspringboard.onwingspan.com/web/en/viewer/hands-
on/lex_auth_012712925244276736910_shared?collectionId=lex_9436233116512678
000_shared&collectionType=Course
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


10.c Course Name: Typescript
Module Name: Duck Typing
Declare an interface named - Product with two properties like productId and
productName with the number and string datatype and need to implement logic to
populate the Product details.
https://infyspringboard.onwingspan.com/web/en/viewer/hands-
on/lex_auth_012712925995458560912_shared?collectionId=lex_9436233116512678
000_shared&collectionType=Course
10.d Course Name: Typescript
Module Name: Function Types
Declare an interface with function type and access its value.
https://infyspringboard.onwingspan.com/web/en/viewer/hands-
on/lex_auth_012712948945346560918_shared?collectionId=lex_9436233116512678
000_shared&collectionType=Course
11.a Course Name: Typescript
Module Name: Extending Interfaces
Declare a productList interface which extends properties from two other declared
interfaces like Category,Product as well as implementation to create a variable of this
interface type.
https://infyspringboard.onwingspan.com/web/en/viewer/hands-
on/lex_auth_012712951652139008920_shared?collectionId=lex_9436233116512678
000_shared&collectionType=Course
11.b Course Name: Typescript
Module Name: Classes
Consider the Mobile Cart application, Create objects of the Product class and place
them into the productlist array.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_3705824317381604400_shared?collectionId=lex_9436233116512678000
_shared&collectionType=Course
11.c Course Name: Typescript
Module Name: Constructor
Declare a class named - Product with the below-mentioned declarations: (i) productId
as number property (ii) Constructor to initialize this value (iii) getProductId method to
return the message "Product id is <<id value>>".
https://infyspringboard.onwingspan.com/web/en/viewer/hands-
on/lex_auth_012712954616782848927_shared?collectionId=lex_9436233116512678
000_shared&collectionType=Course
11.d Course Name: Typescript
Module Name: Access Modifiers
Create a Product class with 4 properties namely productId, productName,
productPrice, productCategory with private, public, static, and protected access
modifiers and accessing them through Gadget class and its methods.
https://infyspringboard.onwingspan.com/web/en/viewer/hands-
on/lex_auth_012712953517170688931_shared?collectionId=lex_9436233116512678
000_shared&collectionType=Course
12.a Course Name: Typescript
Module Name: Properties and Methods
Create a Product class with 4 properties namely productId and methods to
setProductId() and getProductId().
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_9356738095572543000_shared?collectionId=lex_9436233116512678000
_shared&collectionType=Course
12.b Course Name: Typescript
Module Name: Creating and using Namespaces
Create a namespace called ProductUtility and place the Product class definition in it.
Import the Product class inside productlist file and use it.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_20787271128051925000_shared?collectionId=lex_943623311651267800
0_shared&collectionType=Course
12.c Course Name: Typescript
Module Name: Creating and using Modules
Consider the Mobile Cart application which is designed as part of the functions in a
module to calculate the total price of the product using the quantity and price values
and assign it to a totalPrice variable.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_24788158187785620000_shared?collectionId=lex_943623311651267800
0_shared&collectionType=Course
12.d Course Name: Typescript
Module Name: What is Generics, What are Type Parameters, Generic Functions,
Generic Constraints
Create a generic array and function to sort numbers as well as string values.
https://infyspringboard.onwingspan.com/web/en/viewer/web-
module/lex_446287045482942800_shared?collectionId=lex_9436233116512678000_
shared&collectionType=Course

Software configuration and installation


1. HTML &Javascript
x Simple editors such as Notepad or go for IDEs like Visual Studio Code(recommended), Eclipse
etc. which makes coding easier.
x And, to execute application, you can use any commonly used browser such as Google
Chrome(recommended), Mozilla Firefox etc
x Setup details: Environmental Setup for HTML5 - Viewer Page | Infosys Springboard
(onwingspan.com)
x Environment Setup: Internal - Viewer Page | Infosys Springboard (onwingspan.com)
2. Node JS
Download Node.js from the official site
Setup details :How to use Node.js - Viewer Page | Infosys Springboard (onwingspan.com)
3. Typescript
Installing TypeScript - Internal - Viewer Page | Infosys Springboard
(onwingspan.com)

Text Books:
1. Programming the World Wide Web, 7th Edition, Robet W Sebesta, Pearson.
2. Pro Mean Stack Development, 1st Edition, ELadElrom, Apress O’Reilly.
3. Full Stack JavaScript Development with MEAN, Colin J Ihrig, Adam Bretz, 1st edition, SitePoint,
SitePoint Pty. Ltd., O'Reilly Media.
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


Reference Books:
1. Web Technologies, HTML, JavaScript, PHP, Java, JSP, XML and AJAX, Black book, 1st Edition,
Dream Tech.
2. An Introduction to Web Design, Programming, 1st Edition, Paul S Wang, Sanda S Katila, Cengage
Learning.

Web Links:
1. https://infyspringboard.onwingspan.com/en/app/toc/lex_17739732834840810000_shared/overview
(HTML5)
2. https://infyspringboard.onwingspan.com/en/app/toc/lex_18109698366332810000_shared/overview
(Javascript)
3. https://infyspringboard.onwingspan.com/en/app/toc/lex_32407835671946760000_shared/overview
(Node.js & Express.js)
4. https://infyspringboard.onwingspan.com/en/app/toc/lex_9436233116512678000_shared/overview
(Typescript)
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


L T P C
III B Tech II Sem
0 0 4 2
ETL DESIGN PROCEDURES-SPARK
(Skill Oriented Course)

Course Objective:
x Get exposure on Spark for ETL

Course Outcomes:
By completing the course the students will be able to:
x Develop various applications for ETL with Spark

List of Experiments:
1. Write a program to create a SparkSession and read the data from CSV file
2. Write a program to group record of Supermarket’s sales data of Kaggle Dataset by Gender
3. Write a program to create a Spark Session and display DataFrame of employee.json
4. Write a program to perform various operations of SparkSQL
5. Write a program to create a new data pipeline with ApacheSpark
6. Write a program to Run SQL queries on the data in Parquet table
7. Write a program to develop Parquet table to a platform data container.
8. Write a program to Run SQL queries on the data in NoSQL table
9. Write a program to change the data in an existing Delta Lake table
10. Write a program to create a new ingestion pipeline with ApacheSpark
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


L T P C
III B Tech II Sem
2 0 0 0
EMPLOYABILITY SKILLS-II

Course Objectives:
The main objective of this course is to assist students in developing employability skills and personal
qualities related to gaining and sustaining employment.

Course Outcomes: After completion of this course


x Solve various Basic Mathematics problems by following different methods
x Follow strategies in minimizing time consumption in problem solving Apply shortcut methods to solve
problems
x Confidently solve any mathematical problems and utilize these mathematical skills both in their
professional as well as personal life.
x Analyze, summarize and present information in quantitative forms including table, graphs and formulas

UNIT I:
Numerical ability l: Number system, HCF & LCM, Average, Simplification, Problems on numbers
Numerical ability II: Ratio & Proportion, Partnership, Percentages, Profit & Loss

UNIT II:
Arithmetical ability l: Problems on ages, Time & Work, Pipes & Cistern, Chain Rule.
Arithmetical ability ll: Time & Distance, Problems on boats &Steams, Problems on Trains

UNIT III:
Arithmetical ability lll: Allegation, Simple interest and compound interest, Races & Games of skills,
Calendar and Clock,
Logical ability: Permutations and Combination and Probability.

UNIT IV:
Mensuration: Geometry, Areas, Volumes

UNIT V:
Data interpretation: Tabulation, Bar graphs, Pie charts, line graphs

Text Books and Reference Books:


1. R. S. Aggarwal “Quantitative Aptitude”, Revised ed., S Chand publication, 2017 ISBN:8121924987

E- resources:
1. https://blog.feedspot.com/aptitude_youtube_channels/
2. https://www.tutorialspoint.com/quantitative_aptitude/
3. https://www.careerbless.com/aptitude/qa/home.php
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


L T P C
III B Tech II Sem Minor
3 0 2 4
DATA SCIENCE APPLICATIONS

Course Objectives:
The main objective of the course is to inculcate the basic understanding of Data Science and it’s
practical implementation using Python.
Course Outcomes:
Upon successful completion of the course, the student will be able to:
x Apply principles of NumPy and Pandas to the analysis of data.
x Make use of various file formats in loading and storage of data.
x Identify and apply the need and importance of pre-processing techniques.
x Show the results and present them in a pictorial format.

UNITI:
Data science: definition, Datafication, Exploratory Data Analysis, The Data science process, A data
scientist role in this process.
NumPy Basics: The NumPy ndarray: A Multidimensional Array Object, Creating ndarrays, Data Types
for ndarrays, Operations between Arrays and Scalars,

UNITII:
Basic Indexing and Slicing, Boolean Indexing, Fancy Indexing, Data Processing Using Arrays,
Expressing Conditional Logic as Array Operations, Methods for Boolean Arrays, Sorting, Unique.

UNITIII:
Getting Started with pandas: Introduction to pandas, Library Architecture, Features,
Applications, Data Structures, Series, Data Frame, Index Objects, Essential Functionality
reindexing, Dropping entries froman axis, Indexing, selection, and filtering),Sorting and ranking,
Summarizing and Computing Descriptive Statistics, Unique Values, Value Counts, Handling
Missing Data, filtering out missing data.

UNITIV:
Data Loading, Storage, and File Formats: Reading and Writing Data in Text Format, Reading
Text Files in Pieces, Writing Data Out to Text Format, Manually Working with Delimited
Formats, JSON Data, XML and HTML: Web Scraping, Binary Data Formats, Using HDF5
Format, Reading Microsoft Excel Files

UNITV:
Plotting and Visualization: A Brief matplotlib API Primer, Figures and Subplots, Colors,
Markers, and LineStyles, Ticks, Labels, and Legends, Annotations and Drawing on a Subplot,
Saving Plots to File, Plotting Functions in pandas, Line Plots, Bar Plots, Histograms and Density
Plots, Scatter Plots.

List of Experiments:
1. Creating a NumPy Array
a. Basic ndarray
b. Array of zeros
c. Array of ones
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


d. Random numbers in ndarray
e. A narray of your choice
f. Imatrix in NumPy
g. Evenlyspacedndarray

2. The Shape and Reshaping of NumPy Array


a. Dimensions of NumPy array
b. Shape of NumPy array
c. Size of NumPy array
d. Reshaping a NumPy array
e. Flatteninga NumPy array
f. Transpose of a NumPy array

3. Expanding and Squeezing a NumPy Array


a. Expanding a NumPy array
b. Squeezing a NumPy array
c. Sorting in NumPy Array

4. Indexing and Slicing of NumPy Array


a. Slicing1-DNumPy arrays
b. Slicing2-DNumPy arrays
c. Slicing3-DNumPy arrays
d. Negative slicing of NumPy arrays

5. Stacking and Concatenating Numpy Arrays


a. Stacking ndarrays
b. Concatenating ndarrays
c. Broad casting in Numpy Arrays S

6. Performfollowingoperationsusingpandas
a. Creatingdataframe
b. concat()
c. Settingconditions
d. Addinganewcolumn

7. Performfollowingoperationsusingpandas
a. FillingNaNwithstring
b. Sortingbasedoncolumnvalues
c. groupby()

8. Readthefollowingfileformatsusingpandas
a. Textfiles
b. CSVfiles
c. Excelfiles
d. JSONfiles

TextBooks:
1.WesMcKinney,“PythonforDataAnalysis”,O’REILLY,ISBN:978-1-449-31979-
3,1stedition,October2012.
2.RachelSchutt&O’neil,“DoingDataScience”,O’REILLY,ISBN:978-1-449-35865-
R-20 Syllabus for CSE-DS, JNTUK w. e. f. 2020 – 21

JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY KAKINADA


KAKINADA – 533 003, Andhra Pradesh, India

DEPARTMENT OF CSE - DATA SCIENCE


5,1stedition,October2013.

ReferenceBooks:
1. JoelGrus, “DataSciencefromScratch:FirstPrincipleswithPython”, O’ReillyMedia, 2015
2. MattHarrison,“LearningthePandasLibrary:PythonToolsforDataMunging,Analysis,andVisualization
,O'Reilly,2016.

WebReferences:
1. https://www.analyticsvidhya.com/blog/2020/04/the-ultimate-numpy-tutorial-for-data-science-beginners/
2. https://www.analyticsvidhya.com/blog/2021/07/data-science-with-pandas-2-minutes-guide-to-key-
concepts/
3. https://www.analyticsvidhya.com/blog/2020/04/how-to-read-common-file-formats-python/
4. https://www.analyticsvidhya.com/blog/2016/07/practical-guide-data-preprocessing-python-scikit-learn/
5. https://www.analyticsvidhya.com/blog/2020/02/beginner-guide-matplotlib-data-visualization-
exploration-python/

You might also like