University assignment · Windows desktop app · Oracle Database

School Management System

A desktop system for running a school's records: students, staff, classes, grades and weekly schedules.

01 // Problem

A school keeps its students, staff, classes, grades and timetable in separate places. This app puts them in one Oracle database behind a single Windows Forms interface.

forms
24
model classes
5

02 // Architecture

  1. L1Forms24 Windows Forms, grouped by domain: students and enrolment, employees and roles, classes, schedules, grades and grade components.
  2. L2ModelsPlain C# classes for Student, Employee, Classes, Schedule and Semester.
  3. L3SchoolDatabaseOne static gateway with ExecuteQuery and ExecuteNonQuery. Every form reads and writes through it.
  4. L4OracleOracle Database 11g or later through Oracle.ManagedDataAccess.

03 // Key_Decisions

D.01

One way into the database

Forms never open their own connection. They hand SQL and an OracleParameter array to SchoolDatabase, which owns the connection, the command and error handling.

D.02

Grades are built from parts

A grade is made of components, and the components have their own form, apart from the grades built from them.

D.03

Schedules are slots

A schedule entry ties a class to a classroom and session on a day of the week, with a start and end time.

04 // From_The_Source

View commit b8b2edb

05 // Stack

  • C#
  • Windows Forms
  • Oracle Database
  • SQL
Next // SYS.MOD_01Qader Platform (LMS)