Python Cho
Python Cho
COURSE PLAN
COURSE TITLE & CODE : Data Structure and Web Development with Python & CSE3217
COURSE IC : Dr. Leelambika KV, Ms. Arshiya Lubna, Ms. Meena Kumari
COURSE INSTRUCTOR(S) : Dr. Leelambika KV, Ms. Meena Kumari, Ms. Alina, Dr.
Thrimoorthy, Ms. Arshiya Lubna
PROGRAM OUTCOMES:
PO-1: Engineering knowledge: Apply the knowledge of mathematics, science, engineering fundamentals, and an
engineering specialization to the solution of complex engineering problems.
PO-2: Problem analysis: Identify, formulate, review research literature, and analyze complex engineering problems
reaching substantiated conclusions using first principles of mathematics, natural sciences, and engineering sciences.
PO-3: Design/development of solutions: Design solutions for complex engineering problems and design system
components or processes that meet the specified needs with appropriate consideration for the public health and safety,
and the cultural, societal, and environmental considerations.
PO-4: Conduct investigations of complex problems: Use research-based knowledge and research methods including
design of experiments, analysis and interpretation of data, and synthesis of the information to provide valid
conclusions.
PO-5: Modern tool usage: Create, select, and apply appropriate techniques, resources, and modern engineering and IT
tools including prediction and modeling to complex engineering activities with an understanding of the limitations. -
PO-6: The engineer and society: Apply reasoning informed by the contextual knowledge to assess societal, health,
safety, legal and cultural issues and the consequent responsibilities relevant to the professional engineering practice.
PO-7: Environment and sustainability: Understand the impact of the professional engineering solutions in societal and
environmental contexts, and demonstrate the knowledge of and need for sustainable development.
PO-8: Ethics: Apply ethical principles and commit to professional ethics and responsibilities and norms of the
engineering practice.
PO-9: Individual and teamwork: Function effectively as an individual, and as a member or leader in diverse teams,
and in multidisciplinary settings.
PO-10: Communication: Communicate effectively on complex engineering activities with the engineering community
and with society at large, such as, being able to comprehend and write effective reports and design documentation,
make effective presentations, and give and receive clear instructions.
PO-11: Project management and finance: Demonstrate knowledge and understanding of the engineering and
management principles and apply these to one's own work, as a member and leader in a team, to manage projects and
in multidisciplinary environments.
PO-12: Life-long learning: Recognize the need for, and have the preparation and ability to engage in independent and
life-long learning in the broadest context of technological change.
PSO 01: [Problem Analysis]: Identify, formulate, research literature, and analyze complex engineering problems
related to AI & ML principles and practices, Programming and Computing technologies reaching substantiated
conclusions using first principles of mathematics, natural sciences and engineering sciences.
PSO 02: [ Design/development of Solutions]: Design solutions for complex engineering problems related to AI & ML
principles and practices, Programming and Computing technologies and design system components or processes that
meet the specified needs with appropriate consideration for the public health and safety, cultural, societal and
environmental considerations.
PSO 03: [Modern Tool usage] : Create, select, and apply appropriate techniques, resources, and modern engineering
and IT tools including prediction and modelling to complex engineering activities related to AI & ML principles and
practices, Programming AI & ML Computing & analytics with an understanding of the limitations.
COURSE PREREQUISITES:
Programming in Python (CSA1004), Data Structures (CSA2001) and Web Technology (CSE2067)
COURSE DESCRIPTION:
Data Structure and Web Development with Python course provides students with a comprehensive
understanding of fundamental data structures and their implementation using Python, alongside essential
web development skills. It begins with an exploration of core data structures such as arrays, stacks, queues,
linked lists, trees, and graphs, focusing on their design, applications, and efficiency. Students gain hands-
on experience in implementing these data structures to manage and manipulate data effectively. In the
second half, the course delves into web development, teaching students to create dynamic and interactive
web applications using frameworks like Flask and Django. By combining data structures with web
development techniques, this course equips students with the knowledge and practical experience necessary
for real-world software development and data management applications.
COURSE OBJECTIVES
The course aims to equip students with a comprehensive understanding of fundamental data structures and their
implementation in Python, alongside essential web development skills using frameworks like Flask and Django, to
solve real-world software and data management challenges and to improve the learners' EMPLOYABILITY SKILLS
through PROBLEM SOLVING METHODOLOGIES
COURSE OUTCOMES: On successful completion of the course the students shall be able to:
Linked Lists: Introduction, Definition, Types, Implementing Singly-Linked List, Inserting Nodes, Traversing,
Deleting Nodes, Representing Doubly-Linked List, Implementing Doubly-Linked List, Inserting and Deleting
Nodes in Doubly-Linked List.
Stacks: Defining Stack, Operations, Implementing Stacks (Array and Linked List), Applications, Function Calls,
UNDO List, Checking Parentheses, Evaluating Expressions, Infix to Postfix Conversion.
Queues: Defining Queue, Operations, Implementing Queue (Array and Linked List), Inserting and Deleting in
Linked Queue, Circular Queue, Double-Ended Queue (Deque), Priority Queue.
Module: II: Non Linear Data Structures using Python [10 Sessions] [Apply]
Trees: Definitions, Terminology, Binary Trees, Representing and Traversing Binary Trees (Inorder, Preorder,
Postorder), Binary Search Trees: Implementation, Searching, Inserting, Deleting, Iterative Traversals, Problem
Solving with Trees, Introduction to Graphs: Components and Representation, Graph Traversals: BFS and DFS, Graph
Operations: Cycles and Shortest Path, Problem Solving with Graphs.
TEXT BOOKS:
T1. Data Structures and Algorithms in Python, Wiley, Michael T. Goodrich, Roberto Tamassia, Michael H.
Goldwasser, 2021.
T2. Django for Beginners, William S. Vincent, 2020.
T3. Flask Web Development, O’Reilly, Miguel Grinberg, 2nd Edition, 2018.
REFERENCES:
R1. Problem Solving with Algorithms and Data Structures Using Python, Franklin, Beedle & Associates, Bradley N.
Miller, David L. Ranum, 1st Edition, 2013.
R2. Introduction to Algorithms, MIT Press, Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford
Stein, 3rd Edition, 2022.
R3. Python Web Development with Django, Addison-Wesley, 2009.
ONLINE RESOURCES:
Course NPTEL / Swayam Link : https://nptel.ac.in/courses/106106145
Or
: http://182.72.188.193/
COURSE SCHEDULE:
1. An attitude of enquiry.
2. Confidence and ability to tackle new problems.
3. Ability to interpret events and results.
4. Ability to work as a leader and as a member of a team.
5. Assess errors in systems/processes/programs/computations and eliminate them.
6. Observe and measure physical phenomena.
7. Write reports.
8. Select suitable equipment, instrument, materials & software
9. Locate faults in system/Processes/software.
10. Manipulative skills for setting and handling systems/Process/ Issues
11. The ability to follow standard /Legal procedures.
12. An awareness of the Professional Ethics.
13. Need to observe safety/General precautions.
14. To judge magnitudes/Results/issues without actual measurement/actual contacts
Number of
Task RBT Lab Skills to be Course
Sl. No Task & Learning Sessions developed Outcome to
No Objectives required to be
LOL HOL
complete developed
LO: Student shall be able to (Lower (Higher
the
Order Order
Learning) Learning) task
Introduction to Graphs: -
Components and
8 P8 Representation, Graph
Traversals: BFS, Graph
Operations: Cycles and
Shortest Path, Problem
Solving with Graphs.
LO1: Describe the concepts LOL2 SK1, SK2,
of breadth-first search SK3, SK5,
(BFS) and explain their 2 SK8, SK14
algorithms. CO2
LO2: Demonstrate the
implementation of BFS for LOL3
graph traversal, including
their applications in
problem-solving.
Topics relevant to “SKILL DEVELOPMENT”: The lab experiments and assessments enable the
student to acquire Skill Development through Experiential Learning techniques.
ASSESSMENT SCHEDULE:
Every Friday 2.30 to 4.15 students can come and interact with me at LG056
TABLE 8: TARGET SET FOR ATTAINMENT OF EACH CO and ATTAINMENT ANALYSIS AFTER
RESULTS
Remarks on
Actual C.O.
Threshold Target set for attainment
Attainment
Sl.no C.O. No. Course Outcomes Set for the attainment in &Measures to
In Percentage
CO percentage enhance the
*
attainment*
Analyze, implement, and
apply linked lists, stacks, and
01 CO 1 queues to solve data 65 75%
organization problems
effectively.
Demonstrate the ability to
implement and utilize tree
and graph structures,
02 CO 2 employing traversal and 65 65%
search algorithms to address
advanced problem-solving
scenarios.
Develop dynamic web
applications using Django
03 CO 3 and Flask frameworks. 50 70%
APPROVAL:
This course has been duly verified Approved by the D.A.C.
Name and signature of the Instructor In-Charge (s) AFTER completing entries in Table number 3
and 8 at end of semester:
Name and signature of the DAC Chairperson AFTER completing entries in Table number 3 and 8
at end of semester:
Learning Outcomes Verbs at Each Bloom Taxonomy Level to be used for writing the course Outcomes.