A proposed system architecture for administrative record-keeping at a school in Myanmar.
You sent screenshots of a working parent portal. They changed four things in this proposal and reversed one decision, and it seemed wrong to bury that at the back. Everything listed here is already built and working in the demonstration β none of it is a promise.
| A calendar of important dates | Term dates, assessment weeks, fee deadlines and holidays β visible to staff and to families (Β§11) |
| Fees seen from the family's side | What is outstanding, in plain figures, rather than only in the school's own books (Β§11) |
| Subject-by-subject progress | Each subject with its marks and direction, not a single average (Β§8) |
| A visible record of who opened what | So βthe school never told usβ and βnobody ever looks at itβ both have answers (Β§11) |
And the decision we reversed. This document previously said there would be no parent portal at all, because a portal assumes a smartphone, a password and a habit, and in Myanmar that excludes the families most likely to be missed. Having looked at what a live portal actually puts on one screen, we now think the right answer is a portal that deliberately shows less β four fields, no personal data, sign-in by a link and a code, with the letter home still doing the real work. Section 11 explains why, and the demonstration has it working.
One observation about the system in those screenshots, offered as information rather than criticism, because it is easy to miss and it matters for what the school buys next. It is a university system being asked to do a school's job. The Grade 7 record displays Required Credits, Earned Credits, CGPA, Academic Standing and Enlistment β higher-education machinery. A twelve-year-old has no grade-point average and does not enrol themselves in electives. It is also built around the student as the user, self-serving their own payments and registration; it is not built for a school office, and certainly not for an owner who is not in the country. None of that makes it a bad product. It makes it the wrong shape for this job β see Β§11 and Appendix A.
This document runs to fifteen sections because the school will ask about all of them. You will not. These three are the ones written for the person paying.
| Β§10 β Filling the seats money that never arrives |
Empty seats priced in kyat, and what a student actually costs to get. Almost no school
system records advertising spend at all, which is why almost no owner can answer this. In the
demonstration the answer is uncomfortable: MMK 420,000 spent on advertising, and not one of the
students who enrolled came from it. All three arrived through families who sent them for
nothing β and two paid enquiries were lost because nobody called them back. Also there: the three families quietly doing the school's marketing for free (most schools do not know their names), and a Monday-morning list of seven enquiries nobody has telephoned, worth MMK 9,450,000 a year, while those families are still interested. |
| Β§9 β Overseeing from another country money that leaks out |
Three counts kept by three different people β the roll, the classroom and the fee book β and what it means when they disagree. Cash taken against cash banked. Receipt numbers issued but never used. The same problem as Β§10, seen from the other end. |
| Β§12 β Checking without trusting us and where we are weaker |
Seven claims, each with a button in the demonstration that performs the check in front of you β and, beside each one, where this design is worse than the alternative. Plus what we have not verified, written down before you ask. |
The demonstration opens on an ordinary office screen, because that is what the school has to accept first. The three sections above live behind the Growth, Owner and Proof tabs.
Read carefully, that sentence does not describe a missing feature. It describes a loss of trust in the school's own records. Adding more screens to a conventional system would not fix it, because the weakness is in how conventional systems store information in the first place.
Almost every school package on the market stores the present value of things. A student's mark is a
box containing 71. When someone edits that box to 92, the 71 stops existing.
Some products keep an activity log beside the data β but that log is itself an ordinary table, and anyone who can
reach the database can edit the log too. That is precisely what appears to have happened at your school.
The architecture below starts from the opposite end. It is designed so that the sentence above cannot be true again, and so that this can be proven to a parent, an auditor or a ministry inspector rather than merely asserted.
In conversation it became clear that the records are not the point in themselves. The school has an investor who is not in the country and has nobody on the ground watching the money. Under those conditions value leaks β not usually through theft on a grand scale, but through a hundred small gaps that no single person is accountable for and no report ever shows.
That changes what this system is for. It is not a school management product that happens to keep good records. It is an instrument for verifying a school you cannot visit β and the record-keeping is how it earns the right to be believed. Section 9 is written for that reader specifically.
The system does not store what a record is. It stores every event that has ever happened to it, in order, and calculates the present value from that history whenever a screen is drawn.
Three consequences follow directly, and they are the whole proposal:
This distinction matters more than anything else in this document. Hiding a Delete button
only stops honest users. In this design the storage layer itself accepts one operation on the ledger β
create. Requests to modify or delete an existing entry are refused at the storage layer, so they fail
identically whether they arrive from the app, from a developer's console, or from a script written by someone
with the administrator password.
Rule 2 above still leaves one hole: a person with direct access to the stored files could, in principle, alter them without going through the system at all. Access control cannot close that hole β by definition this person has bypassed access control. So the design does not try to prevent it. It makes it impossible to do quietly.
Each ledger entry carries a short fingerprint calculated from its own contents and from the fingerprint of the entry before it. The entries therefore form a single chain. Altering the contents of any entry breaks its own fingerprint and every link after it, and the break points at the exact entry that was touched.
Every night at 22:00 the system sends the Principal a single line of e-mail:
The Principal does not need to understand how the code is produced. He needs to understand one thing: that code can never be reproduced if the day's records are altered afterwards, and it is sitting in his own mailbox, outside the school's database and outside the supplier's reach. To rewrite history undetected, a person would have to reach into that mailbox as well β and into every earlier one.
This is also the answer to a reasonable question your school should ask us: what stops the software supplier from changing the data? The seal does. We are inside the fence with everyone else.
A chain of fingerprints catches somebody who edits one link. On its own it does not catch somebody who rewrites the whole rope β delete everything, write a new history, recompute every fingerprint from scratch. For whoever operates the system, that takes seconds.
So the chain is not what protects you. The seal leaving the building is. A code that was in the owner's mailbox on 4 August cannot be un-sent, and to rewrite that day's history convincingly a person would need to reach into that mailbox and every earlier one. The chain's real job is narrower and still essential: it is what makes a twelve-character code able to stand for an entire ledger.
The daily seal, though, goes to people the school itself chose. So once a term the system takes one step further out.
At the end of each term every entry is reduced, through a Merkle tree, to a single value, and that one value is published somewhere no one connected to the school can reach β not the owner, not the principal, not us. Anybody, at any point in the future, can recompute that value from the school's own records and see whether it still matches.
This is the same batching trick Singapore's own OpenAttestation uses to anchor thousands of documents in a single operation: one published value covers every entry, so the cost does not grow with the size of the school.
It is the right question, and the answer is that most of a blockchain is already here. A blockchain is three ideas, and this system deliberately takes two of them:
| Component of a blockchain | Used here? | Reasoning |
|---|---|---|
| A chain of fingerprints each entry commits to the one before |
yes | This is the entire value for tamper detection. |
| Append-only storage nothing is ever edited or removed |
yes | This is the entire value for record permanence. |
| Distributed consensus mining, tokens, many competing nodes |
no | Solves βmany parties who distrust each other, with no authority above them.β A school has an owner and a principal. It does not have that problem. |
Adopting the third part would mean buying a machine to solve a problem the school does not have, and paying for it in cost, complexity, key management, and β in this country in particular β the banking and legal complications of handling cryptocurrency, which is not a burden a school should take on to keep a register.
What a public chain is genuinely good for is being an independent, permanent noticeboard. So the system uses exactly that much of it, and nothing else:
The term's Merkle root is submitted to OpenTimestamps β a protocol created by Peter Todd in 2016 (current stable release December 2024) with four public calendar servers. The calendars gather hashes from thousands of unrelated users, combine them into one Merkle tree, and commit the single resulting root into a Bitcoin transaction.
Consequences that matter for a school: it is free, the calendars state they require no registration and no API key, and no cryptocurrency wallet is needed β the calendar servers pay the transaction fee. The school keeps a small proof file. Nobody at the school ever touches a coin, an exchange or a bank.
The demonstration implements this: open the Ledger screen and the published root is recomputed in your browser from the entries themselves. Press the red tampering button and the root no longer matches β recorded, timestamped and beyond the reach of anyone at the school.
Access levels were the second half of your message. The design uses four roles and one unusual rule: no account has the power to delete, including the Principal's and including ours.
| Role | Add | Correct contact details | Change marks, names, class, status | Take money | Delete | Approve | See full history |
|---|---|---|---|---|---|---|---|
| Teacher attendance, daily marking |
β | β | request | β | β | β | own class |
| Registrar enrolment, records office |
β | β | request | β | β | β | β |
| Bursar fees, receipts, banking |
β | β | β | β | β | β | β |
| Principal oversight, approvals |
β | β | β | β | β | β | β |
| Owner offshore, read only |
β | β | β | β | β | β | β |
| Auditor external, read only |
β | β | β | β | β | β | β |
Read the Registrar and Bursar rows together. One keeps the records and cannot touch money; the other takes money and cannot touch a record. Neither can approve. That single split is what stops a person from both collecting a fee and adjusting the record that says it was owed β the oldest financial control there is, and the one a school without a finance department almost never has.
Note what the Principal cannot do. This is deliberate, and it protects him: when a figure is later disputed, the ledger shows he never had the ability to touch it.
Marks, names, dates of birth, class and enrolment status are treated as sensitive. One person proposes the change; a different person accepts it; nobody can accept their own request. The old value survives either way, and a refusal is recorded just as permanently as an approval.
This is not a precaution. It is the defining constraint. According to Access Now's #KeepItOn 2025 annual report, published March 2026, Myanmar recorded at least 95 internet shutdowns in 2025 β more than any other country in the world, for the second consecutive year, ahead of India (65) and Pakistan (20), out of 313 shutdowns recorded across 52 countries. For a school in Myanmar, losing the connection is not an edge case to handle gracefully; it is a routine operating condition. Any design that assumes the internet is normally available is the wrong design for this country.
So the app installs onto a phone or PC like an ordinary application and continues to run with no connection. Attendance and record entry carry on; entries are held on the device and join the ledger when the line returns.
There is a quiet elegance here that is worth pointing out, because it is a direct dividend of the decision in section 2. Because the ledger only ever adds entries, offline work can never conflict. Two teachers marking the same class on two phones with no signal cannot overwrite one another β when they reconnect, both sets of entries are simply appended in the order they were made. There is no merge, therefore no conflict, therefore no data silently lost. Conventional systems have to guess whose version wins; this one never has to ask.
Every night the complete records are exported to Excel and to a plain data file, delivered to the Principal's mailbox and to a second storage location. The rule behind this is simple: the school's data must exist in at least two places that no single person can reach.
This protects against the ordinary disasters β a failed disk, a lost password, a payment lapse β and it also protects the school from us. If this arrangement ever ends, the school already holds a complete, readable copy of everything, without needing our cooperation.
Every register, mark sheet and certificate the system prints carries the seal of the ledger it was produced from, together with a scannable code. Scanning it returns the original record. A document edited in Word after printing no longer matches its own seal β which turns a printed page from a claim into evidence.
Everything above is about trust. This section is about what that trust is worth in ordinary week-to-week work. All four of the following exist in the demonstration. None required extra machinery β they are consequences of keeping the history rather than overwriting it.
Pick a date. The system replays the ledger up to that day and shows the records exactly as they stood: who was in which class, what each mark was, who had left. Not a backup, not an export, not a restore β the same ledger, read to a different point. Values that are different today are highlighted next to their current value.
It is worth being concrete about why this is unusual. PowerSchool β the largest system of its kind β documents that its Change History is optional per data category, is kept for 365 days unless the school pays for longer, is recommended to be switched off during data migrations, and can only be searched in windows of 7 days for attendance and 31 days for everything else; reviewing a full school year therefore takes roughly 52 separate searches, and the vendor's own guidance for longer analysis is to export the data and work on it outside the product.
Every one of those limits is a symptom of the same thing: a side-log bolted onto a database that overwrites itself. None of them exist here, because there is no side-log β the history is the database. There is no retention setting to configure, no window to exceed, and nothing to switch off.
Nobody has to remember to look. Every time the ledger changes, a small set of plain arithmetic checks runs across it and raises anything that does not resemble the rest:
Severity comes from the combination, not from any single signal. A mark corrected a few days late, with a written reason, is ordinary and is shown quietly. A mark raised by fifteen points, thirteen days after the deadline, at 23:41, is not ordinary β and is shown loudly.
There is no model, no prediction and no black box. Nothing here tries to guess which student is "at risk". Every alert is arithmetic over entries a person can open and read, which is what allows it to be used as evidence in a conversation with a member of staff β or with a parent. An alert that cannot be explained is worse than no alert.
The thresholds belong to the school, not to us: the marks deadline and the definition of school hours are settings. Change them and every alert recalculates β including for years already past, because nothing was ever thrown away.
The screen also lists the checks that found nothing, which is the part most schools cannot answer at all today: no records deleted, no one approving their own request, no change saved without a reason, and no entry altered outside the system. Clearing an alert is itself written to the ledger β so the record shows who reviewed it, and when.
Typing a question and getting an answer is no longer unusual in this market; several established systems now do it with a language model. What they do not do is guarantee the answer. Arbor, the most widely used system of its kind in the United Kingdom, states in its own documentation that its answers βaren't always the same, even if you ask the same question twice.β
That is acceptable for drafting a letter. It is not acceptable for a school record. So this system answers by rule rather than by guess, and every answer arrives with three things attached:
Each answer also carries a short fingerprint. Ask the same question next term, or after the staff who entered the data have left, and the fingerprint is identical β which is what makes an answer usable in a disagreement with a parent or an inspector.
And when it does not know, it says so. A question outside the rule set returns βI cannot answer that yetβ rather than a plausible-looking guess. In a system whose entire purpose is to be trusted about records, a confident wrong answer is the most expensive feature you can ship.
Every school system sends parents a verdict: a mark, a grade, a line of praise written at eleven at night for the fortieth child. A parent can do nothing with a verdict. Three things here are deliberately different, and the third is the one no competitor can copy without rebuilding their storage.
First, the child is compared with themselves, never with classmates. The question is not where a child ranks but what they are already good at and what is moving. βEnglish is five points above his own average across the termβ is a sentence a family can act on. βTwelfth in the classβ is not.
Second, every sentence comes from a number in the ledger. Nothing is generated to sound warm. If the school cannot answer βhow do you know that?β, the sentence does not get sent β and if there are no marks recorded yet, the letter says so instead of inventing a comment to fill the space. The system also refuses to call a subject a strength when it is falling sharply, however good the average still looks; a parent notices that contradiction immediately, and the whole letter loses its credibility with it.
Third, and this is the part that requires the architecture: the letter asks for one sentence back, records what the family actually said, and next term reports whether it worked:
What happened after last time. On 25 June the school and the family agreed to work on Mathematics. Since that day it has risen 3 points β the arrangement is working, so it is worth keeping.
And when it has not worked, the letter says that too, in those words: βthat does not mean the family did nothing β it means this plan is the wrong plan, and we should change it rather than repeat it.β If a family never replied, the next letter says so and suggests checking the phone number on file before asking again.
Closing that loop needs a permanent, dated history of both the marks and the promises. A system that keeps 365 days of purgeable log and overwrites last term's marks cannot do it at all β which is why, as far as we have been able to check, nobody does.
An owner who is present can walk down a corridor and count children. An owner four hours away by plane cannot verify anything by looking β he can only read what the school chooses to send him, which is precisely the arrangement that lets value leak.
So this system does not ask him to trust a report. It gives him three counts that are collected by three different people for three different reasons, and shows him where they disagree:
This is the reason the roles are split the way they are. The Registrar keeps records and may not touch money. The Bursar takes money and may not alter a student record. The Principal approves and can do neither. Nobody holds two of the three counts, so nobody can quietly make them agree.
Bank transfers look after themselves. Cash does not, so it is controlled the way a careful business controls it, and the system enforces the controls rather than hoping:
One page, produced from the ledger and sealed, delivered every month regardless of whether anyone at the school remembers to send it: children on the roll, how many are billed, fees billed and collected, cash against banked cash, the outstanding balance, and every question the system has raised and nobody has answered. It carries the same seal as the ledger it came from, so a statement that has been improved on the way is detectable.
To be clear about what this is not. None of this accuses anyone of anything, and it is not an accounting system β it will not replace a bookkeeper or produce statutory accounts. It does one narrow thing: it makes the gaps visible and dated, early enough to be asked about while people still remember, and it does so without anybody at the school having to volunteer the information.
Section 9 is about value leaking out of a school. This one is about value that never arrives. For whoever paid for the building, the two are the same problem seen from opposite ends, and the second is usually the larger number.
The system knows how many places each class has and how many are taken, so it can state plainly what an empty seat is: a term's fee that will not be collected. Not a percentage, not a satisfaction score β a figure in kyat, updated as children join and leave. Most schools do not have this number in front of them, because the roll lives in one place and the fee book in another.
Every family who approaches the school is recorded with where they came from β word of mouth, the sign at the gate, Facebook, a former family, walking in β and followed through enquiry, visit, application and either enrolment or loss, with the reason for the loss written down.
That last detail changes the conversation. In the demonstration two of the losses read βnever answered the follow-up call.β That is not a marketing problem and no amount of advertising will fix it. Without the reason recorded, the school would have concluded that Facebook does not work and spent the money somewhere else.
And before any of it: who is leaving. A school losing students it already has is a leaking bucket, and filling it faster does not fix it. Every departure needs a written reason before it can be recorded, so after a year that list is the most useful marketing document the school owns β it says, in the families' own words, why people go.
Almost no school system records advertising spend at all. That is why almost no school owner can answer the only question that matters about marketing: what did a student actually cost to get, and what is that student worth? Spend goes into the ledger by channel, enrolments are already there by source, and the division is arithmetic.
In the demonstration the answer is uncomfortable, and it is the kind of thing an owner four hours away would otherwise never learn:
The school spent MMK 420,000 on advertising this term. Not one of the students who enrolled came from it. All three arrived through families who sent them for nothing β and two of the paid enquiries were recorded as lost because nobody called them back.
The conclusion is not βstop advertisingβ. It is that the money bought attention the school then failed to answer, which is a far cheaper problem to fix than a marketing one. No report produced at the end of term would have said this; it only appears when spend, enquiries and outcomes sit in the same ledger.
One discipline is applied deliberately here. Measured figures and assumed figures are kept apart on the screen. Spend, enquiries and enrolments are measured. How long a child stays is an assumption β it is an input on the screen, marked as an assumption, and the lifetime value recalculates when it is changed. A return figure that quietly hides its own assumption is how software flatters the person paying for it.
Open enquiries with no contact for six days appear as a named list with a price against each one. In the demonstration seven enquiries are silent, together worth MMK 9,450,000 a year β advertising the school has already paid for and is now wasting by not answering.
This is the difference between a report and a system. A report tells the owner at the end of term that conversion was disappointing. This puts a list on the office desk on a Monday morning, while the families are still interested.
The enquiry record includes who sent each family. Three families in the demonstration have sent six others between them. These are the most valuable people connected to the school, and most schools do not know their names.
A satisfaction survey asks families what they say. This asks what they did β and a family that hands over its friends has given the strongest opinion available. Thanking them by name costs nothing and works better than the MMK 420,000 above.
Every private school in the world advertises excellent results and caring teachers, and no parent believes any of it, because none of it can be checked. A school sitting on a sealed ledger can do something its competitors cannot: publish figures that carry the same seal as the records they came from, so a sceptical parent can verify the claim instead of being asked to trust it.
β86% attendance across every day marked this term. 6.4 children in an average class. 3.2 years is how long our teachers have been here, on average. These are not slogans β every figure is taken from our own records and sealed, and you can check it yourself against seal E91D-0510-BE61. We would rather you checked than took our word for it.β
In a market where every school says the same three sentences, being the only one that can be checked is the advertisement.
The screen divides its own figures into ready to publish and true, but do not print it yet, each with the threshold it would have to reach. In the demonstration, 39% of students improving and 50% of families replying sit in the second list β with a note that the first becomes advertisable above about 60%.
The system will not hide a weak number, and it will not let the school print one. The second list is a work plan, not a criticism β and a marketing claim that turns out to be unprovable costs a school more than never having made it.
The school's Facebook page and its own website can be connected, and a post composed from the publishable figures in one click. That part is easy. This part is not:
Connecting a system that holds children's records to a public page is the most dangerous thing in this whole proposal. One careless sentence puts a child's name on the internet, and it cannot be taken back. A school only has to do it once.
So the draft is scanned on every keystroke against every student record, every enquiry and every staff record β Latin names, Burmese-script names, guardian names, student numbers, telephone numbers, and any long run of digits. If it finds one, the Publish button is disabled by code β not by a warning that somebody can click past. Only the registrar and the principal may publish at all, and both the connection and the post are written to the ledger.
One caution about the last step, stated plainly because it is the sort of thing that is usually glossed over in a proposal: posting to a real Facebook page needs a Page access token that only the school can issue, and Facebook's own review of the application β a week or two of paperwork rather than a technical problem. The composing, the privacy check and the record are built and working; the final connection is deliberately left unconnected in a demonstration, and nothing in it sends anything anywhere.
Thank you for the portal screenshots. They changed a decision, and it is worth explaining how, because the change is not the obvious one.
We had planned no parent portal at all, on the grounds that a portal assumes a smartphone, a password and a habit, and in Myanmar that leaves out the families most likely to be missed. Having looked at what a live portal actually displays, we now think the right answer is a portal that deliberately shows less.
Look at those screenshots once more, not as a designer but as a parent. On a single screen: full name, date of birth, national learner reference number, home address, both parents' mobile numbers and e-mail addresses. Nothing there was done carelessly β that is simply what these systems display. But it means every screenshot anybody takes of that page is a copy of a child's complete identity, and people take screenshots constantly. That file reached us, in another country, from someone none of us has met, in an afternoon. No one did anything wrong; the design did it for them.
And this is the part worth pausing on. That is not a cheap system or a careless one. It belongs to a large, well-funded university with a real IT department, and it is competently built β clean, protected at the login, with an AI assistant of its own. It still puts a twelve-year-old's whole identity on one screen.
So this is not a quality problem that a better vendor solves. It is what an entire generation of school software assumes: that a portal's job is to display everything the institution holds about you. That assumption was made before anyone had thought hard about a phone camera, a group chat and a child. Changing it is not a feature β it is a different starting point, and it has to be chosen at the beginning because it cannot be added afterwards.
| A conventional school portal | This one | |
|---|---|---|
| Signing in | Username, password, sometimes a one-time code | A link and a six-digit code sent over Viber. No password to forget β and therefore no password for the office to read out over the telephone to whoever asks |
| What it shows | Date of birth, ID numbers, address, parents' contact details, photograph, signature, academic history | Four things. Attendance, marks, fees outstanding, dates ahead |
| If somebody photographs it | Enough to impersonate the family | A first name, a class, some marks, a balance. Unpleasant; survivable |
| Families without a smartphone | Excluded | Get the same information on paper. The letter home remains the main channel |
The protection here is not a permission setting that an administrator can loosen next year. It is that the data is never put on the screen in the first place. Every field displayed on a parent screen is a field that leaves the building the next time somebody photographs it β and for children's records the only reliable defence is to have shown less.
Opening the page is itself a ledger entry, so both βthe school never told usβ and βnobody ever looks at itβ have answers.
You have been sold software before. Every school system ever demonstrated has looked good in the demonstration, so the only useful question is what it does badly β and a supplier who will not answer that is asking to be believed rather than checked.
The demonstration therefore has a screen called Proof. Seven claims, each with a button that performs the check in front of you, and beside each one, in the same row, where this design is weaker than the alternative:
| The claim | Where we are weaker |
|---|---|
| No account can delete a record | A school that genuinely needs a record gone for legal reasons cannot have it |
| Alteration from outside the system is detected | It detects; it cannot prevent. And it cannot tell you whether the original entry was honest |
| The same question returns the same answer | It only answers questions in its rule set. A language model would have answered anything β differently each time |
| Nothing about a child can reach a public page | It cannot stop somebody typing the same name into Facebook directly. It guards one door |
| Any past day can be rebuilt exactly | Storage grows for ever. At this size, pennies; at ten thousand students, a real cost |
| The money is reconciled, not asserted | It finds gaps between records. Cash never written down at all is invisible to it |
| The family screen cannot leak an identity | Parents get less than a full portal would give them. That is the trade, made on purpose |
The same screen lists what we have not verified: we have not claimed that no other product does these things β we examined two market leaders' documentation closely and others in passing, so the honest claim is not present in the products we checked. We have no reliable pricing for this market and will not invent a comparison. We could not establish from here how many school computers in Myanmar still run Zawgyi fonts, nor the current data-protection rules. And the largest risk in the project β whether the school will actually use the thing β no demonstration can settle.
Online teaching and course content Β· payroll and supplier payments Β· statutory accounting Β· a self-service portal families log into Β· library, transport and inventory. Each is a reasonable thing to want and each can be added on the same foundation. Attempting all of them at once is the usual reason projects of this kind are abandoned half-finished.
On families: there is no portal for parents to log into, and that is a decision rather than an omission. A portal assumes a smartphone, a password and a habit. A letter that reaches the family on paper or on Viber, and asks for one sentence back, reaches everybody β including the families most likely to be missed.
On fees: an earlier draft of this document put fee collection into a later phase. That was wrong, and it is worth saying why it changed: fees are not a convenience feature here β they are the reason the system exists. A record system with the money left out would have answered the question that was asked and missed the question that was meant.
Nothing in this document is research. Permanent change history, separation of roles, approval queues, tamper-evident sealing, Excel import that merges rather than replaces, bilingual reporting and a nightly export held off-site are all components we already run in daily production, in an organisation where the records carry legal weight and the numbers carry money. What is new here is the arrangement, not the parts β which is why a working demonstration exists at the proposal stage rather than after a contract.
The risk in this project is not the software. It is the two things software cannot fix:
We would rather raise both now than discover them in month four. Neither is a question for us to answer, and neither costs anything to ask.
A live walkthrough of the existing production system, and references, are available on request.
A working demonstration is available now β It opens the way the school will see it: signed in as an ordinary member of the office staff, on an ordinary screen. Look around it as a school first β students, register, marks, report cards, letters home, staff, notices, timetable, fees. Then switch the user at the top to School Owner and open Owner and Watch: the system has already found nine things nobody at the school has explained β a receipt issued and never used, MMK 900,000 taken in cash and never banked, a fee cut by two thirds with no approval, a child on the roll who has never once been in the classroom, and a child in the classroom who is on no fee bill at all. Open Growth and type a student's name into the draft post β the Publish button switches off. Then try Ask, set the time machine to 1 July 2026, try to delete a record, turn the connection off and keep working β and finally press the red button that edits the database directly, and watch the system catch it. All names and figures are fictional.You sent a table comparing a Student Information System, a Learning Management System and a School Management System. It is the right way to frame the question, so here it is answered line by line β with the gaps left in rather than written around.
| Your category | Student Information System | Learning Management System | School Management System |
|---|---|---|---|
| Primary role | β System of record β the core of the design | β Not attempted | β Operational and administrative management |
| Core focus | β
Accuracy and academic records β Ministry compliance forms not built β we have not seen the paperwork the school files today |
β | β Coordination of daily activity |
| Key functions | β Enrolment Β· attendance Β· grades (five subjects, two assessments, report cards) Β· reporting Β· student profiles | β No course content, assignments, quizzes or progress tracking | β Fees Β· workflows Β· staff records Β· notices Β· timetable Β· enrolment and publishing |
| Primary users | β Administrators, registrars, leadership | β | β Administrators and operations β plus a read-only owner and auditor |
| Strengths | β Reliable data and long-term record keeping β the strongest part of this design | β | β Efficiency, and money that reconciles |
| Your listed limitation | βLimited instructional and operational toolsβ β partly true of us as well. We do the operational half; we do not do instruction. | βNo ownership of official student recordsβ β not applicable; we are not an LMS. | βOften relies on integrations for academic dataβ β this one does not apply. Marks, register, fees and staff are one ledger. There is nothing to integrate, and nothing to fall out of step. |
The whole Learning Management column. The requirement you gave was administrative, so we built the administrative system properly instead of a thin version of three things. If online teaching is wanted later it is a separate product and should be bought as one β an LMS bolted onto a records system is how both end up mediocre.
Ministry compliance reporting is missing because we have not seen the forms. It is roughly a week of work once we have them, and it has to match the real paperwork exactly rather than approximately, so guessing would be worse than waiting.
Read the bottom row of your own table again. Three categories of software, three listed limitations β and not one of them mentions records being altered or deleted, money leaking, a roll that does not match the classroom, or an owner who cannot verify anything from another country.
That is not a fault in the table; it is an accurate description of what this market sells. It is simply not a description of the problem in your next message. This system covers the two administrative columns above because the school needs them and will not adopt anything that misses them. The reason to build it, though, is in sections 3, 8 and 9 β and no column in that table has a row for those.