Articles
What a private school's management system actually has to record
A school fails at the seams: enrolment against subscriptions, attendance against payroll, a term closing while marks are still being entered.
- education
- erp
- operations
A school management system earns its place by what it refuses to leave in a spreadsheet, not by how many screens it has. Four records carry nearly all the consequences in a private school: the pupil, the yearly subscription, the teaching session, and the pay that follows from it. Each needs states, with a date and a named hand that moved it: a school runs on a fixed calendar and fails at the month and year boundaries, not in the classroom. Leave one outside its states and the spreadsheet takes it back, quietly, until the term closes.
Why does a school's system fail at the seams and not in the classroom?
Inside a subject, a teacher with a grid is fast and correct. Between the registrar, the reception desk, the teacher and the accountant, nobody owns the transition, and there the record breaks. In September the class lists are rebuilt; in October the marks grid is a new file; at month end the pay is a fresh calculation; in June the renewal is another sheet. Each copy is true on the day it is made.
What has to survive the copy is not the list but the facts behind it: this pupil was enrolled in this group, this session was taught on this date, this subscription was valid that morning. When that answer depends on which copy you open, every department owns its own truth, and the pupil at the door is also a receivable.
What has to be a record, and what is only a note?
A record is something another person can act on without asking the person who wrote it. A note is something you would not defend a month later.
The pupil. One card, alive from the first enquiry to the last day: group, level, branch, guardian's contact. A pupil who exists in a marks sheet but not in a card is a pupil whose fees nobody chases.
The yearly subscription. Not an invoice: a state that runs for a period and can lapse inside it. The question at reception is whether it is valid today.
The teaching session. A date, group, teacher, subject, branch. This is the only record from which pay can be derived honestly, because it would exist even if nobody wrote it down.
The money. Purchases, pricing, what was collected and what was waived, attached to the pupil and the subscription, not floating in a ledger with a name typed into it.
Everything else — seating plan, bus roster, exam chart — is a view, cheap to rebuild and safe to throw away; the test is whether someone downstream acts on it.
Which states does each record pass through?
A state is worth having only when something depends on it, and leaving it requires a date and a person — the discipline a spreadsheet cannot copy, because a cell has a value and no history.
The pupil moves from applicant to registered to active, then to lapsed or left. The subscription opens, is valid, expires, and is renewed — only by a renewal, never by editing the end date forward, because that edit destroys the evidence of why a pupil was turned away. The session is scheduled, held, confirmed and paid; a held session that never reaches paid is a debt payroll will argue about in front of you.
A registration that can be saved half-done will be saved half-done, every September.
| Record | States it passes through | What a skipped state costs |
|---|---|---|
| Pupil | applicant, registered, active, left | the same files re-entered each year |
| Subscription | opened, valid, expired, renewed | a lapsed fee found at the end of term |
| Session | scheduled, held, confirmed, paid | a pay dispute at month end |
Where does a spreadsheet still win?
Three places, and a system should not pretend to replace them.
The teacher's marks grid. One class, one term, an assessment per column, formulas visible. A teacher fills it faster than any screen, and nothing needs sharing until a second section moderates the same marks, or a parent asks for a correction after publication — then it stops being a tool and becomes a copy.
The list with no downstream consumer. Waiting list, bus roster, pupils who still need a certificate: a projection of the pupil record for one week, which a spreadsheet renders well as long as it is thrown away.
The reconciliation sheet. An accountant rebuilding payroll outside the system to check it is a control, not a defect — dangerous only when the sheet, not the system, becomes the figure people are paid from.
In all three, the same line: a spreadsheet may hold a view of a record, never the record.
In what order do you fix this?
Plan the work around the calendar, not around the modules.
- Start at the door. Subscription validity is asked every morning at reception; make it answerable from one screen before anything else is built.
- Write the states down before you write them in software. Name each state, its date, and who may enter it.
- Make creation do the paperwork. One action registers the pupil, opens the subscription, assigns the modules, sets the default group.
- Derive pay from the record that already exists. Sessions per group and per date, compensation attached, so month end is a list to check rather than a calculation to redo — and the teacher sees the same list.
- Make closing the term a state, not a lockout. Corrections then arrive with a reason, not a reopened file on somebody's desktop.
- Migrate last year's pupil list once. The year boundary is where the spreadsheet always wins: re-entry is an afternoon, a migration is a project.
Where this goes wrong
- The fee ledger is bought and the teacher never logs in. The record is true about money and false about teaching: the seam moved, it did not close.
- A state can be edited backwards untraced. If correcting a date overwrites the old one, the record forgives everything and proves nothing.
- The door rule is enforced by a person. The first exception at reception — let him in today — becomes the rule, and check-in becomes decoration.
- The system needs a connection the building does not have. Reception keeps paper, which never comes back, and the record becomes a note about a record.
- The term closes and the screen locks. Corrections move to a side spreadsheet, and that sheet is the truth for the following term.
What this does not cover
This is about the spine — pupils, subscriptions, sessions, pay — not teaching: lesson planning, homework, assessment design, parent communication are another product with another failure mode. It says nothing about how accounting rules treat prepaid fees, which changes what a figure means, not whether it is right; nothing about data-protection duties, which depend on where the school operates; and it assumes someone in the building can change a process. With several branches the argument repeats one level up: the branch becomes a state on the record, not a copy of the database.
We build systems where the pupil, the subscription and the session are one record with states, so that the calendar can turn without the paperwork starting over.
Services in this article
Projects in this article
Articles
Related articles.
Why your stock count never matches the system
Counts drift because two places accept stock movements and neither owns the number. What to record, what to count, and what to fix first.
- inventory
- erp
- operations
Moving a spreadsheet into a real system without losing the numbers
The spreadsheet is the specification. How to read the rules out of the file, clean it, reconcile control totals, and stop the old sheet changing.
- migration
- data
- spreadsheets
One stock number across several shops: what actually breaks
With a second shop, the transfer becomes the weak point: an item sold on one side, bought on the other, owned by nobody in the van. What to model first.
- inventory
- logistics
- multi-site
What to write down before you commission software
One page of rules — three workflows, their exceptions and the owner of each record — prices better than any list of screens. How to write it.
- requirements
- consulting
- planning
Start a project
Have something to build?
One short brief is enough. You get a written scope and a fixed quote before anything starts.
