Curriculum Overview
The Computer Science program at Pandit Deendayal Energy University Gandhinagar is structured to provide a comprehensive and progressive learning experience. The curriculum is designed to balance theoretical knowledge with practical application, ensuring students are well-prepared for careers in technology or further studies.
Course Structure Across 8 Semesters
Semester | Course Code | Course Title | Credit Structure (L-T-P-C) | Pre-requisites |
---|---|---|---|---|
1 | CS101 | Introduction to Programming | 3-0-0-3 | None |
1 | CS102 | Mathematics for Computing | 4-0-0-4 | None |
1 | CS103 | Basic Electronics & Digital Logic | 3-0-0-3 | None |
1 | CS104 | Communication Skills | 2-0-0-2 | None |
1 | CS105 | Lab: Introduction to Programming | 0-0-3-1.5 | CS101 |
2 | CS201 | Data Structures & Algorithms | 3-0-0-3 | CS101 |
2 | CS202 | Object-Oriented Programming | 3-0-0-3 | CS101 |
2 | CS203 | Databases & SQL | 3-0-0-3 | CS101 |
2 | CS204 | Operating Systems | 3-0-0-3 | CS101 |
2 | CS205 | Lab: Data Structures & Algorithms | 0-0-3-1.5 | CS201 |
3 | CS301 | Computer Networks | 3-0-0-3 | CS204 |
3 | CS302 | Software Engineering | 3-0-0-3 | CS202 |
3 | CS303 | Web Technologies | 3-0-0-3 | CS202 |
3 | CS304 | Artificial Intelligence | 3-0-0-3 | CS201 |
3 | CS305 | Lab: Software Engineering | 0-0-3-1.5 | CS302 |
4 | CS401 | Cybersecurity Fundamentals | 3-0-0-3 | CS204 |
4 | CS402 | Machine Learning | 3-0-0-3 | CS201 |
4 | CS403 | Data Mining & Big Data | 3-0-0-3 | CS201 |
4 | CS404 | Mobile Application Development | 3-0-0-3 | CS202 |
4 | CS405 | Lab: Machine Learning | 0-0-3-1.5 | CS402 |
5 | CS501 | Distributed Systems | 3-0-0-3 | CS301 |
5 | CS502 | Cloud Computing | 3-0-0-3 | CS301 |
5 | CS503 | User Experience Design | 3-0-0-3 | CS202 |
5 | CS504 | Internet of Things | 3-0-0-3 | CS301 |
5 | CS505 | Lab: Cloud Computing | 0-0-3-1.5 | CS502 |
6 | CS601 | Research Methodology | 3-0-0-3 | CS201 |
6 | CS602 | Advanced Data Structures | 3-0-0-3 | CS201 |
6 | CS603 | Computer Graphics | 3-0-0-3 | CS202 |
6 | CS604 | Game Development | 3-0-0-3 | CS202 |
6 | CS605 | Lab: Computer Graphics | 0-0-3-1.5 | CS603 |
7 | CS701 | Capstone Project | 0-0-0-6 | CS501, CS502 |
7 | CS702 | Internship | 0-0-0-6 | CS501, CS502 |
8 | CS801 | Advanced Topics in Computer Science | 3-0-0-3 | CS501, CS502 |
8 | CS802 | Final Year Thesis | 0-0-0-6 | CS701 |
Advanced Departmental Elective Courses
The department offers several advanced elective courses that allow students to explore specialized areas of interest:
Machine Learning
This course provides a comprehensive understanding of machine learning algorithms and their applications. Students will learn supervised and unsupervised learning techniques, including decision trees, neural networks, clustering, and reinforcement learning. The course emphasizes practical implementation using Python libraries such as scikit-learn and TensorFlow.
Deep Learning
Building upon foundational knowledge in machine learning, this course delves into deep learning architectures such as convolutional neural networks (CNNs), recurrent neural networks (RNNs), and transformers. Students will implement complex models for image recognition, natural language processing, and time series analysis.
Cryptography
This course explores the mathematical foundations of modern cryptography, including symmetric and asymmetric encryption, hash functions, digital signatures, and key exchange protocols. Students will understand how cryptographic systems protect data integrity and confidentiality in real-world applications.
Software Architecture
Students learn principles of software architecture design, focusing on scalability, maintainability, and performance optimization. The course covers architectural patterns, microservices, cloud-native development, and system design methodologies.
Data Mining
This course teaches techniques for extracting meaningful patterns from large datasets. Topics include association rule mining, classification algorithms, clustering methods, and data preprocessing techniques using tools like Weka and Python libraries.
Computer Vision
Students explore the field of computer vision, covering image processing, feature detection, object recognition, and scene understanding. The course integrates theory with hands-on projects involving OpenCV, TensorFlow, and PyTorch frameworks.
Network Security
This course focuses on protecting networks against cyber threats through secure protocol design, vulnerability assessment, intrusion detection systems, and incident response strategies. Students will gain practical skills in penetration testing and network monitoring tools.
DevOps & CI/CD
Students learn DevOps practices including continuous integration, deployment automation, containerization with Docker, orchestration with Kubernetes, and infrastructure as code using Terraform and Ansible. The course emphasizes real-world implementation in enterprise environments.
Human-Computer Interaction
This course examines user-centered design principles and evaluation methods for creating effective interfaces. Students will explore usability testing, prototyping techniques, accessibility standards, and interaction design patterns.
Embedded Systems Programming
The course covers programming microcontrollers and designing embedded systems for IoT applications. Students will learn C/C++ programming for ARM-based processors, real-time operating systems, and hardware-software integration.
Database Management Systems
This advanced course delves into database design, query optimization, transaction management, and distributed databases. Students will work with relational and non-relational databases to solve complex data modeling challenges.
Mobile Application Development
Students develop cross-platform mobile applications using frameworks like React Native and Flutter. The course covers UI/UX design for mobile interfaces, backend integration, and deployment strategies for iOS and Android platforms.
Cloud Computing
This course explores cloud infrastructure models, service offerings (IaaS, PaaS, SaaS), and management tools. Students will implement scalable applications on AWS, Azure, and Google Cloud Platform while understanding security and compliance aspects.
Internet of Things (IoT)
The course introduces IoT concepts including sensor networks, communication protocols, edge computing, and smart device integration. Practical projects involve building IoT solutions using Arduino, Raspberry Pi, and cloud platforms.
Big Data Technologies
Students learn big data processing frameworks such as Hadoop, Spark, and Kafka. The course covers data ingestion, storage, analytics, and visualization techniques for handling large-scale datasets efficiently.
Project-Based Learning Philosophy
The department emphasizes project-based learning to enhance student engagement and skill development:
- Mini-Projects: Introduced in the second year, these projects allow students to apply theoretical concepts in practical scenarios. Each mini-project is typically completed within a semester and involves team collaboration.
- Capstone Project: The final-year project is a comprehensive endeavor that integrates knowledge from all previous years. Students work closely with faculty mentors to select topics relevant to industry trends or research interests.
- Thesis/Capstone Evaluation: Projects are evaluated based on innovation, technical execution, documentation quality, presentation skills, and team dynamics. External reviewers may be invited for major project assessments.
Project Selection Process
Students select their projects through a structured process involving:
- Faculty Mentor Allocation: Students express interest in specific areas, and mentors are assigned based on expertise and availability.
- Proposal Submission: Detailed project proposals outlining objectives, methodology, timeline, and expected outcomes must be submitted for approval.
- Research Review: Faculty committees review proposals to ensure feasibility, relevance, and alignment with departmental goals.