Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
3 views

Python Cho

The document outlines the course plan for the B.Tech Computer Science and Engineering program at Presidency University for the Data Structure and Web Development with Python course (CSE3217) for the 2024-25 even semester. It includes details on course objectives, outcomes, prerequisites, content structure, and assessment methods, emphasizing the integration of data structures with web development skills. The course aims to enhance students' employability skills through practical applications and problem-solving methodologies.

Uploaded by

try.nahush
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views

Python Cho

The document outlines the course plan for the B.Tech Computer Science and Engineering program at Presidency University for the Data Structure and Web Development with Python course (CSE3217) for the 2024-25 even semester. It includes details on course objectives, outcomes, prerequisites, content structure, and assessment methods, emphasizing the integration of data structures with web development skills. The course aims to enhance students' employability skills through practical applications and problem-solving methodologies.

Uploaded by

try.nahush
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 13

(Established under the Presidency University Act, 2013 of the Karnataka Act 41 of 2013)

[2024-25 EVEN SEMESTER]

COURSE PLAN

SCHOOL: PSCS Dept : CSE DATE OF ISSUE:09-01-2025

NAME OF THE PROGRAM : B.Tech Computer Science and Engineering (CSE)

P.R.C.APPROVAL REF. : PU/AC-24.7/SOCSE04/CSE/2022-26

SEMESTER/YEAR : VI Semester / III Year

COURSE TITLE & CODE : Data Structure and Web Development with Python & CSE3217

COURSE CREDIT STRUCTURE : 0-0-2-1

CONTACT HOURS : 15 Sessions [30 Hours]

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

COURSE URL : https://presidencyuniversity.linways.com/

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.

PROGRAM SPECIFIC OUTCOMES:

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:

TABLE 1: COURSE OUTCOMES


CO Expected BLOOMS
CO
Number LEVEL
CO 1 Illustrate Linear Data Structures application. Apply
CO 2 Examine Non-Linear Data Structures application. Apply
CO 3 Design Web Applications Using Python Frameworks. Create

MAPPING OF C.O. WITH P.O. [H-HIGH , M- MODERATE, L-LOW]

TABLE 2a: CO PO Mapping ARTICULATION MATRIX


CO.
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO 10 PO 11 PO 12
No
CO1 M H M - M - - - M - - H
CO2 M H M - M - - - M - - H
CO3 M M M - M - - - M - - M

MAPPING OF C.O. WITH PSO. [H-HIGH , M- MODERATE, L-LOW]

TABLE 2b: CO PSO Mapping ARTICULATION MATRIX


CO.No PSO1 PSO2 PSO3
CO1 H M -
CO2 H M -
CO3 H M M

COURSE CONTENT (SYLLABUS):

Module: 1: Linear Data Structures using Python [10 Sessions] [Apply]

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.

Module: III: Web Development using Python [10 Sessions] [Create]


Django Framework Overview, Setting Up Django, Models and ORM, Views and Templates Integration, Static Files,
Mini Project in Django, Flask Framework Overview.

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

Coursera Link : https://www.coursera.org/learn/python-data

PU Library Link : https://puniversity.knimbus.com/user#/home

Or

: http://182.72.188.193/

SPECIFIC GUIDELINES TO STUDENTS:

1. Students are required to maintain minimum 75% of attendance


2. Follow the instructions of the course instructor in class.
3. On time submission of assignments.
4. Students are required to actively participate in classroom discussions and other activities which is planned in
and out of the classroom.

COURSE SCHEDULE:

TABLE 4: COURSE BROAD SCHEDULE


Sl. No. ACTIVITY PLANNED PLANNED TOTAL NUMBER
STARTING CONCLUDING OF PERIODS
DATE DATE
01 Overview of the course 20-01-2025 20-01-2025 01 session
02 Module: 01 27-01-2025 10-01-2025 04 sessions
03 Continuous Assessment 1 17-02-2025 01 session
04 Module: 02 24-02-2025 10-03-2025 03 sessions
05 Continuous Assessment 2 17-03-2025 01 session
06 Continuous Assessment 3 24-03-2025 01 session
07 Module: 03 07-04-2025 28-04-2025 02 sessions
08 Continuous Assessment 4 05-05-2025 01 session
09 Continuous Assessment 5 12-05-2025 01 session

Table 5: DETAILED SCHEDULE OF INSTRUCTION:

SKILL SETS TO BE DEVELOPED:


Graduate of the B.Tech. Program in Computer Science and Engineering shall be able to;

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

COURSE CONTENT &TASK SCHEDULE FOR LABORATORY COMPONENT:

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

MODULE 1 - Linear Data Structures using Python


Programme Integration,
01 P1 Linked Lists: Introduction,
Definition, Types,
Implementing Singly-Linked
List, Inserting Nodes,
Traversing, Deleting Nodes

LO1: Recognize the different


modules of the courses and LOL2 SK1, SK2,
2
Describe Linked list, Types - SK3, SK5,
CO1
and its operation. SK8,
SK14
LO2: Practice the concept LOL3
learned - Python Basics for
Data Structures: Lists,
Tuples, Dictionaries, Classes,
and Functions
Illustrate about the Singly
Linked List.
Representing Doubly-
02 Linked List, Implementing -
P2 Doubly-Linked List,
Inserting and Deleting
Nodes in Doubly-Linked
List, Defining Stack,
Operations, Implementing
Stacks (Array and Linked
List), Applications

L01: Demonstrate the LOL3


structure and functionality
SK1, SK2,
of a doubly-linked list and
its basic operations and 2 SK3, SK5,
SK8, SK14 CO1
implementation of stacks
using arrays.

LO2: Illustrate the LOL3


implementation and
operations of a doubly-
linked list, including
inserting and deleting
nodes.
Demonstrate the
implementation of stacks
using linked lists.
Function Calls, UNDO List,
03 P3 Checking Parentheses,
Evaluating Expressions,
Infix to Postfix Conversion,
Queues: Defining Queue,
Operations, Implementing LOL2 -
Queue (Array and Linked
List), Inserting and Deleting
in Linked Queue

• LO1: Describe the role of LOL3
stacks in real-world
applications like function SK1, SK2,
calls, UNDO operations, SK3, SK5,
2
and parentheses checking SK8, CO1
and the concept of a queue
SK14
and explain its operations
(enqueue, dequeue, front,
rear).
LO2: Illustrate how to use
stacks for evaluating LOL3
expressions and converting
infix expressions to postfix.
Demonstrate the
implementation of a queue
using arrays and linked lists,
including inserting and
deleting nodes in a linked
queue.
Circular Queue, Double-
Ended Queue (Deque)
04 P4 LO1: Describe the concept
of a circular queue and LOL2
explain its operations
(enqueue, dequeue, and -
circular traversal) and the
operations of a double-
ended queue (Deque), SK1, SK2,
including insertion and SK3, SK5,
deletion at both ends. SK8, SK14
2 CO1
LO2: Demonstrate the LOL3
implementation of a circular
queue using arrays and
discuss its advantages over
a linear queue. Illustrate
real-world scenarios where
Deque is used, such as task
scheduling or caching
mechanisms.
05 P5 Continuous Assessment 1 2 CO1

MODULE 2 - Non Linear Data Structures using Python


6 P6 Trees: Definitions, -
Terminology, Binary Trees,
Representing and
Traversing Binary Trees
(Inorder, Preorder,
Postorder)
SK1, SK2,
LO1: Explain the concept LOL2
of trees and explain key 2 SK3, SK5,
SK8, SK14 CO2
terminology related to
binary trees
LO2: Demonstrate how to LOL3
represent and traverse
binary trees using inorder,
preorder, and postorder
methods
7 P7 Binary Search Trees: -
Implementation, Searching,
Inserting, Deleting, Iterative
Traversals, Problem Solving
with Trees.
LO1: Explain the concept LOL2
of binary search trees (BST)
SK1, SK2,
and explain their properties
and operations. SK3, SK5,
LO2: Demonstrate the LOL3 2 SK8, SK14
implementation of binary
CO2
search trees, including
searching, inserting,
deleting nodes, and
performing iterative
traversals

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.

P9 Graph Traversals: DFS, Graph


9 Operations: Cycles and -
SK1, SK2,
Shortest Path, Problem
Solving with Graphs. SK3, SK5,
2 SK8, SK14
LO1: Describe the concepts LOL2
CO2
of depth-first search (DFS)
and explain their
algorithms.
LO2: Demonstrate the LOL3
implementation of DFS for
graph traversal, including
their applications in
problem-solving.
10 P10 Continuous Assessment 2 2 CO2
11 P11 Continuous Assessment 3 2 CO2

MODULE 3 - Web Development using Python

12 P12 Django Framework


Overview, Setting Up -
Django, Models and ORM,
Views and Templates
Integration, Static Files,
Mini Project in Django
LO1: Describe the LOL2 SK1, SK2,
objectives and requirements SK3, SK5,
of a mini project using the 2 SK8, SK14
Django framework. CO3
LO2: Demonstrate the
implementation of a mini LOL3
project in Django,
showcasing key features
such as models, views, and
templates.
13 P13 Flask Framework
-
Overview
LO1: Define the Flask LOL1
framework and explain its SK1, SK2,
core features and SK3, SK5,
architecture. 2 SK8, SK14
LO2: Illustrate the process CO3
of setting up a Flask LOL3
application and creating a
basic web route.
14 P14 Continuous Assessment 4 2 CO3
15 P15 Continuous Assessment 5
2 CO3

Topics relevant to “SKILL DEVELOPMENT”: The lab experiments and assessments enable the
student to acquire Skill Development through Experiential Learning techniques.
ASSESSMENT SCHEDULE:

TABLE 6 ASSESSMENT SCHEDULE


Course
Duration DATE
Sl.no Assessment type Contents outcome Marks Weightage
In Hours &TIME
Number
1 Continuous Module 1 CO1 1.5 Hrs 20 20% 17-02-2025
Assessment 1
2 Continuous Module 2 CO2 1.5 Hrs 20 20% 17-03-2025
Assessment 2
3 Continuous Module 2 CO2 1.5 Hrs 20 20% 24-03-2025
Assessment 3
4 Continuous Module 3 CO3 1.5 Hrs 20 20% 05-05-2025
Assessment 4
5 Continuous Module 3 CO3 1.5 Hrs 20 20% 12-05-2025
Assessment 5

COURSE CLEARANCE CRITERIA:

AS PER ACADEMIC REGULATIONS OF THE UNIVERSITY

MAKEUP EXAM POLICY:

AS PER ACADEMIC REGULATIONS OF THE UNIVERSITY

CONTACT TIMINGS IN THE CHAMBER FOR ANY DISCUSSIONS:

Every Friday 2.30 to 4.15 students can come and interact with me at LG056

SAMPLE THOUGHT PROVOKING QUESTIONS:

TABLE 7: SAMPLE THOUGHT PROVOKING QUESTIONS


COURSE
SL BLOOM’S
QUESTION MARKS OUTCOME
NO LEVEL
NO.
A mathematical expression needs to be
evaluated, and you want to convert infix
expressions to postfix notation. .
1 Problem: Implement a stack-based algorithm to 10 CO1 Apply
convert an infix expression (e.g., "A + B * C")
into postfix notation. Explain the steps involved
in your solution..
You are developing a navigation application that
requires finding the shortest path between two
locations on a map
Problem: How would you represent the map as a
2 graph? Describe how you would implement 10 CO2 Apply
Dijkstra's algorithm to find the shortest path
between two nodes (locations) on the graph.
What challenges might arise with larger maps?

You are building a project management tool


using Django, which allows users to create
projects, assign tasks, and track progress.
3 10 CO3 Apply
Problem: Design the database schema using
Django models, outlining the relationships
between projects, tasks, and users. Implement
views to manage project creation and task
assignment, and create a user-friendly interface
with templates. Additionally, describe how you
would handle user permissions and notifications
in your application.

TARGET SET FOR COURSE OUTCOME ATTAINMENT:

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%

Signature of the course Instructor In-Charge (s)

APPROVAL:
This course has been duly verified Approved by the D.A.C.

Signature of the Chairperson D.A.C.

Course plan verified by:


Master IC Name, Signature & Date:

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:

BLOOM'S TAXONOMY SAMPLE VERBS

Learning Outcomes Verbs at Each Bloom Taxonomy Level to be used for writing the course Outcomes.

You might also like