您移動了一堂課,導致三處衝突
手動編輯已完成的課表容易導致隱蔽的錯誤,且這些問題往往要等到有人抱怨時才會被發現。

求解器為您產生了一份有效的課表。但現實隨之而來。
某位老師的週二行程變動了。一間教室要重新裝修兩週。兩名學生更換了選修課,現在一組四人的課程必須調整。這些情況都不值得重新進行運算——您很清楚需要做什麼,而且這只是一堂課的變動。
於是您移動了它。就在那一刻,課表不再經過驗證。
為什麼重新運算不是正確的工具
您可以回到 FET,更改時間限制,然後再次執行。有時這樣做是正確的。但通常不是,原因與軟體無關:求解器有權移動其他所有課程。
您得到了一份有效的課表,但那不是您的課表。您在與語言科主任進行三次溝通後達成的精心安排消失了,取而代之的是一份同樣有效但完全陌生的課表。現在您需要重新通知四十位老師,不是因為他們的週行程必須改變,而是因為您移動了一堂課。
所以人們選擇手動編輯。這是正確的直覺。但這也是完全沒有防護的——在試算表或列印出的紙本上,沒有任何東西會告訴您剛剛破壞了什麼。
一次移動,三處損壞
將一堂課移動到週四第 3 節,您就默默地斷定了四件事:老師當時有空、教室當時可用、該學生組當時有空,且該週的其他安排都不依賴於它原本的位置。
漏掉其中任何一點,課表就會出錯,而且這種錯誤直到當天才會顯現,屆時兩個班級會同時抵達同一個門口。
這就是手動編輯的風險所在:不是因為容易犯錯,而是因為這些錯誤是無聲的。列印出的紙本上不會有任何標示變紅。
所以請邊做邊檢查,而不是最後才檢查
網格會在您工作時進行檢查。發生衝突的課程會在課表方塊本身帶有一個標記,因此問題會直接顯示在問題所在之處——而不是存放在您必須記得去打開的報告中。
當您想要查看整體情況時,衝突報告會以您實際調查的方式進行細分:按教室、按老師、按學生組。

它還會區分問題的類型,這比聽起來更重要:
無法在真實的學校生活中維持運作。
報告是在告訴您發生了什麼,而不是說您錯了。
您記錄的容量,這是填寫它們的一個好理由。
- 教室衝突 — 兩堂課、一間教室、同一時間。明確無誤。
- 缺少教室 — 不完全是衝突,但課程沒有地方可以進行。
- 教室不在首選列表中 — 您可能是有意為之。
- 教室太小 — 容量低於班級人數。⚠ 僅在您記錄的容量準確時才可靠。
第三點是工具在實際應用中才會顯露的特徵。並非每一次偏差都是錯誤,如果對刻意的決定大驚小怪,就會被忽略——包括在它確實正確的那一天。
當沒有什麼需要報告時,它會清楚地說明,而不是顯示一個空白列表。
鎖定不可移動的項目
有些事情是沒有商量餘地的。共用的接駁車時段。客座講師的週三行程。您已經通知過兩百位家長的課程。

這些可以被鎖定,那麼答案在錯誤發生之前就是「不行」,而不是事後的警告。當錯誤的代價是一封寄給家長的信時,預防勝於檢測。
提交前請檢查
另一半是三思而後行。飛行前檢查會讀取整份課表並報告哪些部分無法運作,因此您可以在螢幕上發現問題,而不是在求解器運算結束後才發現——而且是在週二到來之前很久。

編輯不是風險。未經驗證的編輯才是。
手動修復一堂課的直覺是正確的,這也是真實學校週行程所要求的。為了修復單一變動而重新運算,會讓您失去原本協調好的課表。
缺少的不是編輯的權限。而是您在編輯時,能有第二雙眼睛幫您把關。