A Course-History Spreadsheet
A spreadsheet is a practical way for one student to record the courses they have taken. Each row can capture a term, a course, its credits, its professor, the meeting time and room, and the requirement the course satisfies.
Imagine this course history:
| Term | Course number | Course title | Credits | Professor | Professor email | Meeting time | Room | Subject area | Degree requirement |
|---|---|---|---|---|---|---|---|---|---|
| Fall 2025 | EN.500.112 | Gateway Computing: JAVA | 3 | Sara More | more@cs.jhu.edu | Mon/Wed/Fri 10:00 | Croft B32 | Computer science | CS core |
| Spring 2026 | EN.601.220 | Intermediate Programming | 4 | Joanne Selinski | joanne@cs.jhu.edu | Tue/Thu 13:00 | Maryland 309 | Computer science | CS core and FA2 Computing and Data Science |
| Fall 2026 | EN.601.226 | Data Structures | 4 | Ali Madooei | madooei@jhu.edu | Mon/Wed/Fri 10:00 | Hackerman B17 | Computer science | CS core |
| Spring 2027 | EN.601.229 | Computer System Fundamentals | 3 | David Hovemeyer | daveho@cs.jhu.edu | Tue/Thu 14:00 | Hodson 210 | Computer science | CS core |
This spreadsheet answers useful personal questions: which courses did I take, when did I take them, and which degree requirements did they satisfy? A department might share it as a template so each student can keep the same kind of record.
At this point, we are describing a personal record. The student owns the file and decides what each row means. If the student mistypes a professor’s email or uses two spellings for the same building name, the mistake affects one person’s record. The spreadsheet does not need to coordinate changes with hundreds of other students.
Now suppose the university wants to build an application around this idea: track the courses each student takes, and help students manage their progress toward a degree. The spreadsheet will not be enough. We need a database to store the information.