ホチキス先生の「プログラマーと呼ばれたい」

InfoPath & SQL Server !

Archive for the ‘校務の情報化’ Category

校務支援システムの更新 – 02 – 既存システムからエクスポートしたデータを加工してはいけない – そのままインポートできるように SQL Server のテーブル設計をしよう

leave a comment »

sql_server_management_studio_001_mid_640_480

学校の校務支援システムの運用には様々な課題があるが、とりわけ大きい課題がシステム移行時に発生する。既存システムから生徒の氏名住所などの基本情報や、履修情報、成績情報を新システムに移行しなければならないが、その作業と責任は、そのときの学校の担当教員に負わせられることとなる。既存システムの業者も、新システムの業者も、一定の技術情報は提供しても作業に関してはどちらも助けてはくれない。

学校として学籍管理のデータを扱う場合、管理の手法はシステムによって異なる。生徒の氏名や住所、生年月日などの基本データに大きな違いはないだろうが、教科科目の情報、成績管理の手法はシステムによって違いが大きいと考えられる。既存のシステムからエクスポートしたデータを新システムでそのまま使えるとは考えにくい。

そこでデータ処理をする必要がおこるが、業者がデータ移行ツールなどを用意することはない。そこでデータ移行においてデータ処理をする必要が生じるが、これをエクセルなどの表計算ソフトで行うと重大な間違いがおこる危険がある。また一度で完全に移行できることも考えにくいので、ある程度の試行錯誤が必要となる。そのたびに表計算ソフトでデータ加工をしていては手間がかかりすぎ、また事故がおこる危険が大きい。

そこで SQL Server にデータを読み込んで処理することが最も正しい解決策だ。できれば既存システムから SQL クエリによってデータを読み出したいところだが、それができなければ何らかの形でデータをエクスポートすることになるだろう。多くのシステムでエクセルや CSV の形式でデータを取り出すことができるようになっているはずだ。

sql_server_management_studio_006_mid_640

このとき、既存システムで使われるフィールドと新システムで使われるフィールドに違いがあったとき、これを表計算あるいは CSV のデータ上で加工してはいけない。もし新システムで使わないデータフィールドがあったとき、心情的にはデータを切り捨ててインポートしたい欲求は理解できる。余計なフィールド設定をせずに済ませたいだろうからだ。

またフィールド名を修正したい欲求にもかられる。しかしエクスポートしたデータを手作業で加工してはいけない。既存システムからエクスポートしたデータは、そのまま SQL Server にインポートできるようにテーブルを作っておくべきだ。

sql_server_management_studio_003_mid_640_480

データの移行は一回で終わることは、まず、ない。既存システムのデータを新システムにインポートするには、何度かの試行錯誤が必要となるはずだ。またすべてのデータを一度に移行しようとして間違いがあれば修正も困難になる。小さなデータを試験的に移行しながらチェックを繰り返し、うまく移行できることを確かめてから全部のデータを移行するだろう。

このとき、エクスポートしたデータを手作業で加工する工程を挟むと、そのたびに手作業が必要となる。手作業には誤りがつきまとい、とりわけ同じ作業を何度も繰り返していると誤る危険性が高くなる。

新システムで使わないフィールドの設定はせずに済ませたい、おかしなフィールド名は修正したい気持ちになることは理解できるが、ここで手間を惜しまず、エクスポートしたデータは無修正でそのままインポートできるように SQL Server のフィールド設計をしよう。

広告

校務支援システムの更新 – 01 – データ移行は現場教員の責任となる – データ移行作業は SQL Server を使おう

leave a comment »

高等学校の成績処理などにデータベースを使うようになったのは、単位制や総合学科など講座の選択肢が多い学校ができてからだ。基本的にクラス単位で授業を行う普通科高校では、出欠や成績の管理にデータベースを使う必要はなかった。クラス単位で紙ベースの出席簿や成績伝票での処理で十分だったからだ。しかし生徒が多くの講座に分かれて受講する単位制や総合学科の高校では、紙ベースの処理が不可能だ。

筆者も他部制単位制の兵庫県立西宮香風高校に勤務したとき、SQL Server を使った校務支援システムを作り運用した。多くの単位制や総合学科の学校で業者と契約して作られたシステムを運用していたが、新しいタイプの他部制単位制高校に合うシステムはなかったからだ。

近年、単位制や総合学科ではない普通科の高校でも校務支援システムを導入する動きがある。それは普通科の学校でも多様な選択肢を用意した選択講座のカリキュラムを拡大することも背景にある。契約や運用の面からクラウドベースの統一システムを都道府県単位で一括契約するケースも増えてきた。

このような校務支援システムの運用にはいろいろな課題があるが、システム更新のときに大きな課題がある。別システムへの更新時に、過去のデータを移行する作業が必要となるのだ。このデータ移行の作業は現場の教員にまかされる。既存システムの業者も、新しいシステムの業者も、どちらも何もしない。責任もとらない。

データの移行は、そのときの担当教員にとって大きな責任を負わせられるものとなる。在校生の成績データを一つ残らず完全に新システムに移行しなければならない。この作業をエクセルなどでやっていては大きな間違いがおきる危険性がある。データ移行の作業は SQL Server を使うことが最も良い。

sql_server_management_studio_001_mid_640_480

既存システムのテーブルにあわせて SQL Serever にテーブルを作る。既存システムからエクセル形式や CSV 形式でエクスポートしたデータを一括で SQL Server に読み込む。例えば高等学校の校務支援システムでは中学校情報を管理するが、中学校コードは既存システムと新システムで異なることがあるだろう。このとき、まず既存システムの中学校コードと新システムで利用するコードを一括で SQL Server に読み込んでおく。

sql_server_management_studio_002_mid_640_480

sql_server_management_studio_003_mid_640_480

sql_server_management_studio_004_mid_640_480

そして既存システムのコードと新システムのコードを関連付けたビューを作り、これを他の情報と関連させる。

sql_server_management_studio_005_mid_640_480

SQL Server で一元的にデータ処理を行うことで、間違いのないコード変換処理をすることができる。SQL Server で正しい変換テーブルとビューを作っておけば、既存システムからのデータ移行作業を手間なく、そして誤りなく何度もテストし確かめることができる。

Written by Yoshio Matsumoto

2019年1月1日 at 8:35 PM

ほっともっとで弁当を注文しながら「ソフトウエア職人気質」の一節を思い出す

leave a comment »

P1690034_mid_640_480

ピート・マクブリーン Pete McBreen 著、村上雅章訳でピアソン・エデュケーションから Professional Computing Series の別巻7として出版された「ソフトウエア職人気質 Software Craftsmanship – The New Imperative」は2002年3月の出版であり、もはや16年前の書籍になるが、いま読んでも示唆に富む本だ。このことは逆に日本のソフトウエア産業が足踏みしたままであることも示している。情報教育、プログラミング教育に携わりながら教務システムの内製を経験した私は、常にプログラミングと価値の創造について考えているが、今日たまたま近所のほっともっとで昼食の弁当を買いに行ったとき、レジでの注文のあとぼんやりと弁当が出来上がるのを待ちながらこの本の一節を思いだした。

P1690038_mid_640_480

いま年の瀬も押し迫った12月末だが、たとえば客に「年末年始の営業日はいつもと同じか」と聞かれたとしよう。「少々お待ちください」と言いスケジュール表を見るようでは優れたレジ係とは言えない。この時期だから、もしかしたら客からこのような質問があるかもしれないと思い、あらかじめ店舗スケジュールを頭に入れておくはずだ。そうすれば即座に返答ができるだろう。レジ係は客の注文を受け、代金をもらい、厨房に注文を出し、できた弁当を客に渡すという仕事だが、このルーチンだけできればいいというものではない。

「ソフトウエア職人気質」には「顧客の利益はソフトウエア職人の利益と一致する」の節があり、こう書かれている。「顧客は、優れたソフトウエアを望んでいます。そしてソフトウエア職人は、誇りに思え、自分の評判を支える優れたソフトウエアを作り出したいと考えています。こういった相互利益の一致によって、顧客とソフトウエア職人のより良い関係を築き上げることができるわけです。」

優れたレジ係の利益は客の利益と一致する。ソフトウエア開発者があらかじめ調整された仕様書だけを頼りにして開発する時代が終わったように、レジ係もマニュアル通りの注文、集金業務だけしていればよい時代も終わったのだろう、などとぼんやり思う年の瀬である。

Microsoft SQL Server 2019 早期導入プログラムに参加しよう – Join the SQL Server 2019 Early Adoption Program

leave a comment »

Microsoft SQL Server 2019 早期導入プログラムがある。マイクロソフトの SQL Server ホームからリンクをたどり、次のページに早期導入プログラムが示されている。

https://sqlservervnexteap.azurewebsites.net/

Microsoft_SQL_Server_Early_Adoption_mid_640

このページで氏名、所属、電子メールアドレスなどの情報を入力すると、SQL Server 2019 Early Adoption Program の登録ができる。

Microsoft_SQL_Server_Early_Adoption_Registration_mid_640

登録完了のお知らせは、登録したメールアドレスに通知される。メールには関連するリソースへのリンクも示されている。

Microsoft_SQL_Server_Early_Adoption_Registration_mail_mid_640

さあ、いますぐ SQL Server 2019 を体験しよう。

Written by Yoshio Matsumoto

2018年12月12日 at 2:55 PM

SQL Server 2019 CTP Evaluations をインストールする – Community Technology Preview of SQL Server 2019

leave a comment »

SQL Server 2019 CTP をインストールしよう。しかしマイクロソフトの日本語サイトからではダウンロードリンクが切れているので、次の英語版サイトからダウンロードしよう。

https://www.microsoft.com/en-us/sql-server/sql-server-2019

Microsoft_SQL_Server_2019_Preview_mid_640

次の画面ではインストールするプラットフォームを選択する。Windows 以外に Linux、Docker がある。

Microsoft_SQL_Server_2019_Preview_Download_mid_640

登録画面で氏名、所属、電話番号、電子メールなどの情報を入力すればダウンロードをすることができる。

Microsoft_SQL_Server_2019_Preview_Download_Registration_mid_640

ダウンロードが完了すると、SQL2019CTP2.2-SSEI-Eval.exe のファイルが得られる。

Microsoft_SQL_Server_2019_Preview_Download_Registration_File

Written by Yoshio Matsumoto

2018年12月6日 at 2:06 PM

日本語サイトでは SQL Server 2019 CTP のインストールリンクが切れています – ダウンロードは英語版サイトから

leave a comment »

日本語のマイクロソフト SQL Server のトップページからリンクをたどり SQL Server 2019 のダウンロードをしようとすると、ダウンロードリンクが切れている。

https://www.microsoft.com/ja-jp/sql-server/sql-server-2019

Microsoft_SQL_Server_Download_mid_640

たとえばこのページから「今すぐダウンロードする」をクリックすると

Microsoft_SQL_Server_Download_Link_mid_640

のページになる。プラットフォームを Windows で「インストール設定の選択」をクリックすると

Microsoft_SQL_Server_Download_Link_Download_mid_640

まではたどり着くが、「Windows 版 SQL Server 2019 のプレビュー」をクリックすると

Microsoft_SQL_Server_Download_Evaluation_mid_640

の早期導入プログラムのページに誘導されてしまう。この場合、英語版のサイトからはリンクが正しくついているので、ここからインストールすればいい。

https://www.microsoft.com/en-us/sql-server/sql-server-2019

Microsoft_SQL_Server_2019_Preview_mid_640

追記:今は日本語サイトからもリンクが正しくついているようです。2018年12月24日

Written by Yoshio Matsumoto

2018年12月5日 at 2:27 PM

日本の情報教育はプログラミングの正しい位置づけでようやく歩み始める

leave a comment »

日本で高等学校教育に今日の情報教育が位置付けられるようになった端緒は、政府による西暦2000年(平成12年)のミレニアムプロジェクト「教育の情報化」においてだ。さらに文部科学省は教育課程において高等学校に新しい教科「情報」を作り、2003年(平成15年)4月から全国の高等学校で「情報」の授業が始まった。高等学校の学習指導要領において科目の再編成が行われることは珍しいことではないが、新しい教科ができるということは大きな変化だった。大きな変化には混乱が伴う。高等学校の情報教育は10年の混乱の後ようやくプログラミング教育の重要性に着目され、ここ数年で軌道修正されつつある。

では2003年4月の高等学校教科「情報」の実施を前後して、どのようなことがあったかを振り返ってみよう。

まず新しい教科を作るためには、学習目標や内容を決めなければならない。このときに主導権を握ったのは教育学、とりわけ認知科学系の学者だった。これらの学者は「情報処理学会」をはじめとするコンピュータ科学を研究してきた学会と対峙し、教科「情報」はコンピュータ技術を教えるものではない、という主張を鮮明にした。教科「情報」ではテレビや新聞などのマスコミュニケーション、人と人とのコミュニケーション、人間の意思決定と行動、など幅広く取り扱うべきであって、コンピュータはせいぜい情報を入手し処理する手段のひとつであって、コンピュータ技術を教える必要はなく、ましてやプログラミングなど不要である、といったものだ。そして雨後の筍のように「情報教育学会」が乱立した。

当時の状況を考えると、この主張が浸透したのも理解できなくはない。コンピュータやプログラミングを前面に出せば、そんな教科は全員に学ばせる必要はないという批判が出るかもしれない。教員の養成は可能なのかという批判も出ただろう。文部科学省をはじめ教育行政は教育学会の主張を取り入れて学習指導要領を作り、「情報A」「情報B」「情報C」の3つの科目が作られた。「情報A」は「情報活用の実践力」に、「情報B」は「情報の科学的理解」に、「情報C」は「情報社会に参画する態度」に学習の力点がおかれ、このうち「情報B」が比較的コンピュータ教育の内容を取り扱うものであったが、多くの学校で「情報A」や「情報C」が実施され、「情報B」を実施する学校は少なかった。

文部科学省の教育課程に基づいて各出版社が教科書を編纂した。このとき作られた教科書には、例えば「情報A」ではワードやエクセルの解説書と見まがうようなものがあったり、「情報C」では調べ学習とプレゼンテーションに大きく紙面を割くものがあった。

教員養成にも課題があった。新しい教科の授業を学校で行うには、既存の科目の時間を減らさなければならなかった。学校の1週間は5日であり、1日の授業は6時間だからだ。このとき授業時間を増やすことを考えていれば、また違った人事行政がとられたかもしれない。しかし授業の総時間数が変わらないならば、他の教科の時間を減らして「情報」の時間に割り当てなければならない。つまり、全国のすべての高等学校で一斉に「情報」の授業を始めるにあたって、新しく教員を採用することができず、現場の教員を「情報」に割り振ることしかできなかった。このため、現職の理科や数学などの教員に対して研修を行い、「情報」の教員免許を付与することが行われた。この研修は夏休みの期間を利用した実質2週間であり、概論の域を出なかった。数学や理科などの現職教員は形の上では自ら申し出て免許講習を受けた形だが、積極的に情報教育に携わる意欲があった教員ばかりではなく、不本意で参加したり、免許はもらっても授業をするつもりが最初からない教員もあった。研修では「研修内容のすべてを理解する必要はなく、授業は先生方それぞれの特異な分野でやってもらえばいい」と教員を甘やかす姿勢があったことを忘れられない。

このようにコンピュータ科学から遠い立場の教育学者が主導権を取ったことと、現場の教員に付焼刃で教員免許を発行し授業を開始したことから、高等学校の「情報」授業は混沌とした。今から振り返るとワードやエクセルの練習ばかりである授業がまだましだったと言えるかもしれない。調べ学習、ディベートやプレゼンテーションの練習、テレビや新聞の報道を比較するメディア教育、情報モラルという名の道徳のような授業。「コンピュータがなくても情報教育はできる」といった極論まであらわれた。

このとき私の主張は「情報の科学的理解」を中心にした教科にするべきだ、というものだった。当時の科目でいえば「情報B」だ。確かに「情報」が扱うべき内容は広い。しかしテレビや新聞などマスメディアについて学ぶ必要があるなら、それは1970年代からあるべきだ。またディベートやプレゼンテーションは教育、調べ学習は昔からある教育の手法のひとつにすぎない。したがって西暦2000年の今に求められる情報教育は、まさにコンピュータによって私たちの社会が激変することを前提として組み立てられるべきである、ということが当時から一貫した私の主張だ。

当初は「情報活用の実践力」に重点を置いた「情報A」が各学校で実施されたが、次第に「情報B」と「情報C」に移っていった。教科「情報」を実施して10年経過した2013年(平成25年)からの教育課程で文部科学省は科目編成を変え、「情報B」を基にした「情報の科学」と「情報C」を基にした「社会と情報」の2科目編成になった。この頃から世界的にプログラミング教育の必要性が認知されるようになる。2005年にイタリアで始まったArduinoプロジェクトは2012年から2013年にかけて世界中で大ブレイクした。2012年にはRaspberry Pi財団がRaspberry PiはSDカードから起動できるオペレーティングシステムRaspbianを発表し、イギリスのBBC放送は2015年にイギリス全土の学校にマイクロビットを配布する計画を立てた。

このような世界的な流れの中で、ようやく日本の情報教育もプログラミングを正しく位置づけたコンピュータ教育中心に舵を切ろうとしている。小学生を中心に人気のゲーム「マインクラフト」も教育版によってプログラミングできるようになり、英BBC放送が中心になり開発をすすめた「マイクロビット」も日本で手軽に入手できるようになった。Microsoft MakeCodeのようにWebブラウザを使い直感的に理解できるブロック型の開発環境も整ってきた。現場の「情報」科教員にはやるべきことが山ほどある。新しい時代を切り開く人づくりは「情報」科教員の手にかかっていると言って過言ではない。

2017年10月23日

松本 吉生(まつもとよしお)
Microsoft MVP Data Platform

1961年京都に生まれ、神戸で幼少期を過ごす。大学で応用化学を学んだのち、理科教諭として高等学校に勤務する。教育の情報化が進む中で校内ネットワークの構築運用に従事し、兵庫県立明石高等学校で文部科学省の「光ファイバー網による学校ネットワーク活用方法研究開発事業」に携わる。兵庫県立西宮香風高等学校では多部制単位制の複雑な教育システムを管理する学籍管理データベースシステムをSQL ServerとInfoPath、AccessなどのOfficeソフトウエアによるOBA開発で構築・運用する。現在は兵庫県立神戸工業高等学校でC#プログラミング、IoTなどのコンピュータ教育を行う。2004年からマイクロソフトMVP(Microsoft Most Valuable Professional)を受賞し、現在14回目の連続受賞。2016年にマイクロソフト認定教育者(Microsoft Innovative Educator Experts : MIEE)を受賞。