DBMS
1. Introduction to Database Management Systems and ER Model
- Introduction: Purpose of Database Systems, Database-System Applications
- View of Data: Overview of Database Languages and Database System Structure
- Data Models: Introduction to different types of data models
- Database Design and ER Model: Concepts of Entity, Attributes, Relationships, Constraints,
and Keys
- Design Process and ER Model: Basics of the Entity-Relationship Model, including Diagram
Design Issues and Extended E-R Features
- Conversion to Tables: Process of converting ER and Enhanced ER (EER) diagrams into
tables
2. SQL and PL/SQL
- SQL Fundamentals: Characteristics, Advantages, Data Types, and Literals
- SQL Operations: Data Definition Language (DDL), Data Manipulation Language (DML),
Data Control Language (DCL), Transaction Control Language (TCL), SQL Operators
- Table Operations: Creating, Modifying, Deleting, and Updating Tables
- SQL DML Queries: Using SELECT queries with clauses, Indexes, and Sequences
- Views: Creating, Dropping, and Updating Views with Indexes, and performing Set
Operations
- Joins and Predicates: Understanding Set Membership, Tuple Variables, Set Comparison,
and Tuple Ordering
- Functions and Nested Queries: Using Aggregate and SQL Functions, and Nested Queries
- PL/SQL Basics: Stored Procedures, Functions, Cursors, Triggers, Assertions, Roles, and
Privileges
3. Relational Database Design
- Relational Model: Key concepts including Attributes, Domains, and CODD's Rules
- Relational Integrity: Domain and Referential Integrities, Enterprise Constraints
- Database Design Features: Characteristics of a Good Relational Design
- Normalization: Understanding Atomic Domains, First Normal Form (1NF), and
Decomposition using Functional Dependencies
- Higher Normal Forms: Algorithms for Decomposition, including 2NF, 3NF, and Boyce-Codd
Normal Form (BCNF)
- V.patil
4. Database Transaction Management
- Transaction Basics: Introduction to Database Transactions, Transaction States, and ACID
Properties
- Scheduling Concepts: Understanding Serial and Non-Serial Schedules, Conflict and View
Serializability, Recoverable and Non-recoverable Schedules, Cascaded Aborts
- Concurrency Control: Methods including Lock-based and Time-stamp based, and Deadlock
Handling
- Recovery Methods: Shadow-Paging, Checkpoints, and Log-Based Recovery (Deferred and
Immediate Modifications)
5. NoSQL Databases
- Distributed Database Systems: Introduction, Advantages, Disadvantages, and CAP
Theorem
- Data Types: Overview of Structured, Unstructured, and Semi-Structured Data
- NoSQL Database Concepts: Need, Features, Types of NoSQL Databases (Key-value
store, Document store, Graph, Wide Column stores)
- BASE vs. ACID: Comparative Data Consistency Models
- MongoDB: Overview with CRUD Operations, Indexing, Aggregation, MapReduce,
Replication, and Sharding
6. Advances in Databases
- Emerging Database Types: Introduction to Active, Deductive, Main Memory, and Semantic
Databases
- Complex Data Types: Working with Semi-Structured Data Models, Nested Data Types like
JSON and XML
- Object Orientation in Databases: Object-Relational Database Systems, Table Inheritance,
and Object-Relational Mapping
- Spatial Data: Geographic and Geometric Data handling
- V.patil
T O C
1. Formal Language Theory and Finite Automata
- Finite Automata (FA): An informal picture of FA, Finite State Machine (FSM), Language
accepted by FA, Definition of Regular Language
- FA without output: Deterministic and Nondeterministic FA (DFA and NFA), epsilon-NFA and
inter-conversion, Minimization of DFAs
- FA with output: Moore and Mealy machines - Definition, models, inter-conversion
2. Regular Expressions (RE)
- Introduction: Operators of RE, Precedence of operators, Algebraic laws for RE
- Language to Regular Expressions: Equivalence of two REs
- Conversions: RE to NFA, DFA, DFA to RE using Arden’s theorem
- Pumping Lemma for Regular languages, Closure and Decision properties of Regular
languages
- Myhill-Nerode theorem
3. Context Free Grammar (CFG) and Context Free Language (CFL)
- Basic Elements of Grammar, Formal Definition of Context Free Grammar
- Sentential form, Derivation and Derivation Tree/Parse Tree, Context Free Language (CFL)
- Ambiguous Grammar, Writing grammar for a language
- Simplification of CFG: Eliminating Є-productions, unit productions, useless production,
useless symbols
- Normal Forms: Chomsky Normal Form, Greibach Normal Form
- Pumping Lemma for CFG, Closure properties of CFL, Decision properties of CFL
- Chomsky Hierarchy, Cock-Younger-Kasami Algorithm
4. Pushdown Automata (PDA)
- Introduction, Formal definition of PDA, Equivalence of Acceptance by Final State and
Empty Stack
- Non-deterministic PDA (NPDA), PDA and Context Free Language, Equivalence of PDA
and CFG
- PDA vs CFLs, Deterministic CFLs
- V.patil
5. Turing Machines (TM)
- Turing Machine Model, Formal definition of Turing Machines, Language Acceptability by
Turing Machines
- Design of TM, Description of TM, Techniques for TM Construction, Computing function with
Turing Machine
- Variants of Turing Machines, Halting Problem of TM, Halting vs Looping
- A Turing-unrecognizable language, Reducibility, Recursion Theorem
- The Model of Linear Bounded Automata
6. Computability and Complexity Theory
- Computability Theory: Decidable Problems and Un-decidable Problems, Church-Turing
Thesis
- Reducibility: Undecidable Problems that are recursively enumerable, A Simple
Un-decidable
- Complexity Classes: Time and Space Measures, The Class P, Examples of problems in P
- The Class NP, Examples of problems in NP, P Problem Versus NP Problem
- NP-completeness and hard Problems
- V.patil
SPOS
1. Introduction
- Introduction to Systems Programming: Need of systems programming, Software Hierarchy,
Types of software: system software and application software, Machine structure
- Evolution of Systems Programming Components: Text Editors, Assembler, Macros,
Compiler, Interpreter, Loader, Linker, Debugger, Device Drivers, Operating System
- Elements of Assembly Language Programming: Assembly Language statements, Benefits
of Assembly Language, A simple Assembly scheme, Pass Structure of Assembler
- Design of Two-Pass Assembler: Processing of declaration statements, Assembler
Directives and imperative statements, Advanced Assembler Directives, Intermediate code
forms, Pass I and Pass II of two-pass Assembler
2. Macro Processor and Compilers
- Macro Processor: Introduction, Features of a Macro facility, Macro instruction arguments,
Conditional Macro expansion, Macro calls within Macros, Macro instructions, Defining Macro
- Design of Macro Processor: Design of two-pass Macro processor, Concept of single-pass
Macro processor
- Introduction to Compilers: Phases of Compiler with one example, Comparison of Compiler
and Interpreter
3. Linkers and Loaders
- Introduction to Loaders and Linkers: Loader schemes, Compile and Go, General Loader
Scheme, Absolute Loaders, Subroutine Linkages
- Types of Loaders: Relocating Loaders, Direct Linking Loaders, Overlay structure, Design of
an Absolute Loader, Design of Direct Linking Loader
- Additional Concepts: Self-relocating programs, Static and Dynamic linking
4. Operating System
- Introduction to Operating Systems: Evolution of OS, Operating System Services, Functions
of Operating System
- Process Management: Process, Process States (5 and 7 state models), process control
block, Threads, Thread lifecycle, Multithreading Model, process control system calls
- Process Scheduling: Uni-processor Scheduling, Preemptive and Non-preemptive
Scheduling, Long-term, Medium-term, Short-term scheduling
- Scheduling Algorithms: FCFS, SJF, RR, and Priority
- V.patil
5. Synchronization and Concurrency Control
- Concurrency Concepts: Principles and issues with concurrency, Mutual Exclusion,
Hardware approach, Software approach
- Synchronization Mechanisms: Semaphore, Mutex, Monitor
- Classical Synchronization Problems: Reader-writer problem, Producer-consumer problem,
Dining Philosopher problem
- Deadlocks: Principle of deadlock, Deadlock prevention, Deadlock avoidance, Deadlock
detection, Deadlock recovery
6. Memory Management
- Introduction to Memory Management: Concepts and requirements of Memory Management
- Memory Partitioning: Fixed Partitioning, Dynamic Partitioning, Buddy Systems,
Fragmentation
- Address Translation: Paging, Segmentation, Address translation
- Placement Strategies: First Fit, Best Fit, Next Fit, Worst Fit
- Virtual Memory (VM): Concepts, Swapping, VM with Paging, Page Table Structure,
Inverted Page Table, Translation Lookaside Buffer, Page Size
- Virtual Memory with Segmentation: Combined paging and segmentation, Page
Replacement Policies (FIFO, LRU, Optimal), Thrashing
- V.patil
Computer Networks &
Security
1. Introduction to Computer Networks
- Definition and Types of Networks: Local Area Networks (LAN), Metropolitan Area Networks
(MAN), Wide Area Networks (WAN), Wireless Networks
- Network Software and Protocols: Design issues for the Network layers
- Network Models: OSI Reference Model, TCP/IP Model, Network Topologies, Types of
Transmission Medium
- Network Architectures: Client-Server, Peer-to-Peer, Hybrid
- Network Devices: Bridge, Switch, Router, Gateway, Access Point
- Line Coding Schemes: Manchester and Differential Manchester Encodings, Frequency
Hopping (FHSS), Direct Sequence Spread Spectrum (DSSS)
2. Data Link Layer
- Introduction and Functions of Data Link Layer
- Design Issues: Services to Network Layer, Framing
- ARQ Strategies: Error Detection and Correction, Parity Bits, Hamming Codes (11/12-bits),
CRC
- Flow Control Protocols: Unrestricted Simplex, Stop and Wait, Sliding Window Protocol
- WAN Connectivity: PPP and HDLC
- MAC Sub-layer: Multiple Access Protocols (Pure and Slotted ALOHA, CSMA, WDMA,
CSMA/CD, CSMA/CA), Binary Exponential Back-off Algorithm
- Ethernet and Standards: IEEE 802.3, IEEE 802.11 a/b/g/n, IEEE 802.15, IEEE 802.16
3. Network Layer
- Introduction and Functions of Network Layer
- Switching Techniques: Circuit Switching, Message Switching, Packet Switching
- IP Protocol: Classes of IP (Network addressing), IPv4, IPv6, Network Address Translation,
Sub-netting, CIDR
- Network Layer Protocols: ARP, RARP, ICMP, IGMP
- Network Routing and Algorithms: Static Routing, Dynamic Routing, Distance Vector
Routing, Link State Routing, Path Vector
- Routing Protocols: RIP, OSPF, BGP, MPLS
- Routing in MANET: AODV, DSR, Mobile IP
4. Transport Layer
- Process-to-Process Delivery, Services, Socket Programming
- Elements of Transport Layer Protocols: Addressing, Connection Establishment, Connection
Release, Flow Control and Buffering, Multiplexing, Congestion Control
- Transport Layer Protocols: TCP, UDP, SCTP, RTP
- Congestion Control and Quality of Service (QoS): Differentiated Services
- TCP and UDP for Wireless Networks
- V.patil
5. Application Layer
- Introduction to Application Layer
- Web and HTTP, Web Caching, DNS
- Email Protocols: SMTP, MIME, POP3, Webmail
- File Transfer and Remote Access: FTP, TELNET
- Network Configuration and Management: DHCP, SNMP
6. Security
- Introduction to Network Security: Security services, Need for Security, Key Principles of
Security
- Threats and Vulnerabilities: Types of Attacks, ITU-T X.800 Security Architecture for OSI
- Security Policy and Mechanisms, Operational Model of Network Security
- Cryptography: Symmetric and Asymmetric Key Cryptography
- Security in Network, Transport, and Application Layers: IPSec, SSL, HTTPS, S/MIME
- Overview of Intrusion Detection Systems (IDS) and Firewalls
- V.patil
Human Computer Interface
1. Introduction and Foundation of HCI
- Foundation: Human Memory, Thinking, Emotion, Individual Differences
- Psychology and Design of Interactive Systems
- The Computer-Text Entry Device, Positioning, Pointing, Display Devices
- Devices for Virtual Reality and 3D Interaction
- Interaction Models and Frameworks in HCI, Ergonomics, Interaction Styles
- Elements of WIMP Interface, Interactivity, Measurable Human Factors
- Importance of User Interface: Definition, Brief History, Good vs. Poor Design
- Exemplar/Case Studies: Paper Prototype – Design Elements of GUI
- Mapping of Course Outcomes: CO1, CO6
2. Human Perspective in Interaction Design Process
- Understanding Users: Important Human Characteristics in Design
- Human Interaction Speeds, Performance vs. Preference
- Methods for Understanding Users, Miller’s Law
- Design Guidelines: Navigating the Interface, Organizing Display, User Attention
- Principles: User Skill Level, Task Identification, Interaction Style Selection
- Theories: Design-by-Level, Stages of Action, Consistency, Contextual Theories
- Exemplar/Case Studies: Registration Form Design
- Mapping of Course Outcomes: CO1, CO2
3. Interaction Styles and HCI in Software Process
- Interaction Design Process and Styles: Command Line, Menu Selection, Form Fill-in, Direct
Manipulation
- Graphical User Interface: Popularity, Characteristics, Advantages and Disadvantages
- Web User Interface: Popularity, Intranet vs. Internet, Web Page vs. Application Design
- Software Life Cycle, Usability Engineering, Iterative Design and Prototyping
- Exemplar/Case Studies: Comparison - GUI and Web Design
- Mapping of Course Outcomes: CO1, CO3, CO5
4. Usability Evaluation and Universal Design
- User Interface Design Process: Seven Commandments, Usability Assessment
- Common Usability Problems, Objective Measures of Usability
- Evaluation Methods: Formative and Summative Evaluation, Analytic Methods
- Universal Design Principles, Multi-modal Interaction, Designing for Diversity
- Exemplar/Case Studies: GOMS Model - Adding Items to a Cart
- Mapping of Course Outcomes: CO1, CO3
- V.patil
5. HCI Paradigms
- Interaction Paradigms: Time Sharing, Video Display Units, Programming Toolkits
- Ubiquitous Computing: Sensor-based Interaction, Data Integrity vs. Data Immunity
- Pattern Recognition: Introduction, Role of Machine Learning, Recognition Process
- Exemplar/Case Studies: Interface Design - Pattern Gesture Recognition
- Mapping of Course Outcomes: CO1, CO3, CO4
6. HCI for Mobile and Handheld Devices
- Designing for Mobile Devices: Anatomy of a Mobile App, Mobile Form Factors
- Navigation, Content, and Control Idioms: Browse Controls, Toolbars, Multi-touch Gestures
- Designing for Other Devices: Kiosks, 10-foot Interfaces, Automotive Interfaces, Audible
Interfaces
- V.patil