Semester.ly

Johns Hopkins University | EN.600.316

Database Systems

3.0

credits

Average Course Rating

(3.59)

This course serves as an introduction to the architecture and design of modern database management systems. topics include query processing algorithms and data structures, data organization and storage, query optimization and cost modeling, transaction management and concurrency control, high-availability mechanisms, parallel and distributed databases, and a survey of modern architectures including NoSQL, column-oriented and streaming databases. Course work includes programming assignments and experimentation in a simple database framework written in Java. [Systems] Students may receive credit for EN.600.316 or EN.600.416, but not both.

Spring 2013

(2.67)

Spring 2014

(4.0)

Spring 2015

(4.1)

Spring 2013

Professor: Yanif Ahmad

(2.67)

The best aspects of this course included the instructor’s informative and entertaining lectures, the concepts that were explained effectively, and the light workload. Some students felt the instructor didn’t provide feedback in a timely manner. One suggestion included incorporating group work. Another suggestion included providing students with practice material before exams. Prospective students

Spring 2014

Professor: COMPUTER SCIENCE

(4.0)

The best aspects of this course were the hands-on programming assignments, reading through the entire source code of an OS, and the deep understanding and knowledge gained through the class. Students mentioned weekly projects with a partner were an efficient way to learn and retain knowledge. The worst aspects of the course were the amount of documentation to read weekly, the lack of feedback on graded assignments, and the frustrating debugging. The workload for the course is high and the time for many assignments can be overwhelming at times. Suggestions to improve the course included having a better textbook that was connected to the lectures, feedback on graded assignments, and a more balanced assignment schedule. Prospective students should have a firm background in C and programming in general, and be ready for the jump from 200 to 300 level classes. This class is challenging and requires a lot of time and effort, but is highly recommended.

Spring 2015

Professor: Yanif Ahmad

(4.1)

The best aspects of the class included the interesting course material and the enthusiastic, knowledgeable, and effective professor who gave thorough explanations on concepts. Many students felt that the homework assignments were exceptional y difficult, and that the long delays in receiving feedback did not al ow for opportunities to improve. Thus, more prompt feedback would have been appreciated by many. Further suggestions for improvement included either setting regular office hours or increasing instructor availability for meetings with students. Prospective students may benefit from having some background with Python, and should be prepared for a heavy workload.