CSE311L: Database Management System

Spring 2020, Summer 2020, Fall 2020

Course Website

Course Description: This course introduces students with database management systems for the first time in their undergraduate study. Drawbacks of flat file system are demonstrated and advantages of relational database systems are introduced. The course examines the logical organization of databases: the entity-relationship model; the hierarchical, network, and relational data models and their languages. Functional dependencies and normal forms are discussed. Design, implementation, and optimization of query languages; security and integrity; concurrency control, different level of indices, e.g., tree and hash-based indices are introduced. Access costs are compared for different alternatives. This course has separate mandatory laboratory sessions every week in a separate course CSE 311L which has 0 credits, but the students (in group) use hands on SQL queries and as a culmination, they build a full-fledged database system including a front end. The evaluation of the lab works is carried over to the theory part of the course


CSE331L: Microprocessor Interfacing & Embedded System

Fall 2019, Spring 2020, Summer 2020, Fall 2020

Course Website

Course Description: This course provides an introduction to the fundamental concept of microprocessor architecture and microprocessor based embedded systems. A basic idea of the internal and external architecture of the microprocessor 8086 will be provided followed by the physical pin diagram of microprocessor 8086. The course will also cover the other peripheral devices of a microprocessor based system i.e. RAM 6116, PIO 8255 Controller and 7-Segment Display. The course will then cover the programming languages for interfacing: Assembly language followed by Interrupt and data conversion algorithm. A brief introduction to the Microcontroller 8051 will also be provided. Simulation software tool: emulator 8086 will be introduced in the laboratory classes for doing simulation-based project works. This course has separate mandatory laboratory session every week as CSE 331L


CSE115L: Programming Language I

Fall 2019

Course Website

Course Description: This is the first course in the computer science programming and is required for all computer science and engineering majors. This course introduces the fundamental concepts of structured programming. Topics include fundamentals of computers and number systems, algorithms & flowcharts, fundamental programming constructs: syntax and semantics of a higher-level language, variables, expressions, operators, simple I/O to console and files, conditional and iterative control structures, functions and parameter passing, dynamic memory allocation; fundamental data structures: arrays, structures, strings and string processing; and testing and debugging strategies.


CSE482L: Internet and Web Technology

Summer 2019

Course Website

Course Description: To introduce a student with the modern web development techniques in order to develop state-of-the-art web applications and that can be scalable with ease. The course provides a comprehensive overview of both front-end and back-end technologies like HTML5, CSS3, JavaScript, PHP and MYSQL. Upon completing the course, a learner will have a concise understanding of server- side and client-side programming knowledge.


CSE332L: Computer Organization and Architecture

Summer 2019

Course Description: This course introduces students to the basic concepts of computers, their design and how they work. It encompasses the definition of the machine's instruction set architecture, its use in creating a program, and its implementation in hardware. We will study modern computer principles using a typical processor and emphasize system-level issues, understanding process performance, and the use of abstraction as a tool to manage complexity. We will employ both hardware and software tools to realize a small processor of our own.


CSE231L: Digital Logic Design

Summer 2019

Course Description: This course provides an introduction to logic design and basic tools for the design of digital logic systems. A basic idea of number systems will be provided, followed by a discussion on combinational logic: logic gates, Boolean algebra, minimization techniques, arithmetic circuits (adders, subtractors), basic digital circuits (decoders, encoders, multiplexers, shift registers), programmable logic devices (PROM, PAL, PLA). The course will then cover sequential circuits: flip-flops, state transition tables and diagrams, state minimization, state machines, design of synchronous/asynchronous counters, RAM/ROM design. An introduction to programmable logic will also be provided.