Ajay

Ajay Gupta
Professor

IEEE-CS TAC Vice-Chair (2022-24)
IEEE-CS TMRC Member (2013 - )
IEEE-CS TAC Vice-Chair (2015-16)
IEEE-CS TCPP Chair (2011-2015)

Director, WiSe Lab

Western Michigan University
Dept. of Computer Science
Mail Stop 5466
4601 Campus Drive
Kalamazoo, MI, 49008-5466


Phone: 269-276-3101 / 3104
Fax: 269-276-3122
E-Mail: ajay dot gupta at wmich dot edu

CS4430/CS5430 - Database Management Systems                              

Time & Place: M W 03:30pm-06:00pm, Virtual (Distance-Teaching), Call Numbers: 31377 and 31378, 3 credit hours

Prerequisites:

By Courses: CS3310 or equivalent with a grade of C or better; or permission of the instructor.

By Topic: Advance understanding of high-level language programming - conditional structures; looping structures; arrays; program logic - to solve problems; object oriented programming - be able to create and use objects; software life cycle; validating quality of software produced; sorting and searching algorithms; data structures (linked lists, queues, stacks, hash maps); divide-and-conquer, greedy, dynamic programming, branch-and-bound and backtracking algorithm design techniques; documenting programs effectively and efficiently; team work. Proficient in Java, C, C++, or C# beyond the experience in CS3310. Low-level, systems programming, and Linux programming experience desired. Some mathematics and statistics background.

Note: A student may not receive credit for both CS 4430 and CS 5430.

This course is a 3 credit hour advance undergraduate or introductory graduate level course on database systems, intended for students who plan to design and develop relational database applications, or get introduced to the area of databases for research.

 

Objectives:

The general objective of this first course in DBMS is to introduce students basic concepts, techniques and systems for data management so that students are able to design their own databases, write database queries, and develop database applications. Specific objectives include:

  • Understand basic concepts in databases and DBMSs
  • Understand the relational theory.
  • Develop skills needed to design relational databases.
  • Develop skills to write database queries.
  • Get experience of database programming and application development.

Learning Outcomes:

Upon completion of this course, students will be able to: 

  • explain basic concepts in databases and benefits of databases to organizations,
  • explain relational model and query relations using algebraic expressions,
  • create database schema and query database using SQL,
  • write database programs and develop Internet applications,
  • design database schema using the Entity-Relationship model,
  • transform database schema into normalized designs.

Textbook:

  • Jeffrey D. Ullman and Jennifer Widom. A First Course in Database Systems. 3rd Edition. Prentice Hall, 2007. ISBN: 978-0136006374 (or Chapters 1-12, Database Systems: The Complete Book. 2nd Edition. ISBN: 978-0131873254) . The authors maintain a book web site at http://infolab.stanford.edu/~ullman/fcdb.html where you can find a lot of useful stuff.

Students' progress and achievements towards reaching the course goals and objectives will be apparent from such measures as: the results and creativity displayed in course assignments; and the contents of and performance on certain exam portions.

QuickLinks

Syllabus for Summer II 2020

Topics Covered in Summer II 2020

Also see NSF/IEEE-TCPP Curriculum Initiative and Computer Science Accerditation Board, in particular ACM Computer Science Curricula 2013. For quick preview of PDCS, HPC and cloud computing topics in CS courses read Parallel Processing pages taken from CS Curricula 2013, and TCPP Curriculum Initiave pages from the CS Curricula 2013.