具体的に何ができればよいか

 時間割編成のときにする作業を書き出すと次のようになります。

 コマを配置するのは人間でなければできないと思います。生徒の事情、教員の事情、教室の事情等こまかなものをすべてデータ化するのは不可能だからです。市販の時間割編成ソフトはこれを自動化しようとするため、膨大なデータを入力しなければなりません。
 しかし、それ以外は何とかなります。コマは編成表(組、科目、授業担当者、授業教室を組み合わせた一覧表)から直接読み出せばいいし、清書、印刷をエクセルで行うことは日常茶飯事ですから、転記の部分だけをプログラムすれば、人間はコマ配置だけに集中できるようになります。

 普通時間割を組むときは教員時間割でコマを移動しながら、それに連動させてクラス別時間割を移動させることが多いと思います。展開授業や、TTでは一人を移動させるために、同時に授業を受け持っている人も移動させなければならず、選択授業が多い学校では複雑な作業となります。わたしの勤務校は総合学科で、カリキュラムは複雑怪奇、教室もギリギリしかありまん。空き教室を意識しながら、複数の教員移動を同時行うのは「職人芸」です。

クラス時間割を中心にコマ移動を考える

 「一つのコマが移動したとき、関連する全部のコマが同時に移動するようにする。」というのはコンピュータには簡単な作業です。最初は教員時間割にクラス時間割、授業教室時間割が連動するように作ったのですが、次のような欠点がありました。

 作りっぱなしで変更の必要がなければそれでもいいのですが、これだと担当者が交代したときにせっかく作ったプログラムを使いこなせなくなり、また手作業に戻ってしまいます。また、時間割は繰り返しが多い作業のため計算時間の遅さは結構イライラします。最初に作ったプログラムは一度の転記に5分近くかかって使い物になりませんでした。

 そこで「教員も教室も、授業科目、クラスにともなって動く」ことからクラス時間割を中心に作業するようなシステムにしました。プログラムを単純化するためのトレードオフです。これまで教員時間割を中心に作業していたので最初は違和感があるようでしたが「慣れれば、むしろわかりやすい」ようです。