一覧へ 情報Ⅰ (3) 第12回 | プログラムの評価と改善
情報Ⅰ (3) コンピュータとプログラミング | 第12回 | 単元末の課題(2/2)

プログラムの評価と改善

作ったあと、人に見てもらい、直したところを言葉にするところまでが一周

50分 | 前回と同じ教室コード
教師用メモ

準備 前回と同じ教室コードを板書し、全員に入れさせる。前回の提案カードとプログラムが出る(プログラムは各自の端末に残っている)。「教師」を押す。

時間配分 前回の続きの確認 5分 / 節1 相互評価 14分 / 節2 直す 16分 / 節3 改訂版を出す 10分 / 自己評価・ふりかえり 5分

この回の評価(指導要領 (3) ア(イ) イ(イ)。単元末のパフォーマンス課題の後半。評価規準と B・A の基準は 単元設計のページ)

  • 知識・技能 改訂版のプログラムが動いている。関数かリストで整理していれば A(体験02・03)
  • 思考・判断・表現 評価をもとに直す点を選び、別の手順と比べて効率か分かりやすさで選んでいる(体験01・02)
  • 態度 直した点と理由を書き、次に任せたいことを挙げている(体験03・ふりかえり)

提出された改訂版カードが単元の評定資料になる。「直して良くなった」が書けているかを中心に見る。

前回の続き

教室コードを入れると、前回のカードが出る

目的を決めた→手順を 3〜5 行に→書いて動かした→今日 | 評価して直す

上の教室コードの欄に、前回と同じコードを入れる。前回出した提案カードが一覧に出る。プログラムはこの端末に残っているので、体験 02 の欄を開けば続きから直せる

動かなかった人へ。今日はそこを直すのが課題

教師用メモ

5 分 全員がコードを入れてカードが見えるまで待つ。前回のふりかえりで多かった詰まり方があれば、ここで全体に 3 分説明する(全角文字、字下げ、int の変換など)。

端末が変わってプログラムが消えた生徒には、カードの「手順」を見ながら書き直させる。手順を言葉で残す意味がここで出る。

今日の目標

授業の終わりにできるようになること

01
ほかの人の提案を3 つの観点で評価し、良いところを 1 つ言える
02
もらった評価をもとに直す点を選び、プログラムを直せる
03
直した点と理由を書き、次に任せたいことを挙げられる
01 | 14分
評価する

3 人以上に印を付ける

02 | 16分
直す

一つに絞って直す

03 | 10分
改訂版を出す

直した点と理由

SECTION 01

評価する

人のものを見ると、自分のものが見える

教室で互いの画面をのぞき込み、指をさして話している高校生たち
体験 01

ほかの人の提案を、3 つの観点で評価する

右のカードを読み、その提案でいちばんできている観点を 1 つ押す。どれもまだなら「まだ」。自分のカードには押せない。3 人以上に押す

手順が明確 = 誰が読んでも同じ動きになる 動いて目的に合う = 実行でき、決めた目的を果たす 直して良くなった = 直した点と理由が言える

各カードの下に集計が出る。「まだ」が多いカードを 1 つ取り上げ、何を足せばよいかをクラスで言葉にする

みんなの提案カードと評価
教師用メモ

進め方(12分) 8 分で 3 人以上に印。そのあと「まだ」が多いカードを 1 つ投影し、何が足りないかをクラスで言う(4分)。本人を責めない言い方を教える場面。「〇〇を足すと手順が明確になる」の形で言う。

印を押すだけでなく、隣の人と口頭で「良かったところ」を 1 つ伝え合う時間を 2 分取ると、次の「直す」に入りやすい。

評価する側も評価される。「人の提案を読む目」が育っているかを見る。目標 01。

SECTION 02

直す

全部は直さず、一つに絞る

ノートパソコンの画面を見ながら、書き直した行に赤い付箋を貼っている高校生の手元
体験 02

自分のプログラムを直す | 前回の続きから

やること 前回書いたプログラムがこの欄に残っている(前回と違う端末を使っている人・前回いなかった人は、欄が空のままでよい。そのときは、この欄に短いプログラムを新しく書いて直していく)。直すところを一つ選んで直す。① 動かないところを直す ② 別の手順に変えて短くする ③ 関数かリストで整理する ④ input で使う人に聞けるようにする、から選ぶ
実行結果

※ 直す前の形を覚えておく。あとで「何を直したか」を書くのに要る。直したら必ず実行して、前と同じ結果か確かめる

教師用メモ

進め方(16分) 「直すところを一つ選ぶ」を徹底する。全部直そうとして何も終わらないのを防ぐ。

②の例 平均を出すのに for で足すのをやめて sum( ) を使う。どちらも正しい。「短いほうが読みやすい」「for のほうが何をしているか見える」の両方を認めたうえで、目的に合うほうを選ばせる。別のアルゴリズムと比べて選ぶのが A の基準。

③の例 平均を返す関数 def heikin(lst): return sum(lst)/len(lst) にする。使い回せるようになる。

直したら必ず実行。直したつもりで壊すことがある。第10回の「結果をうのみにしない」と同じ姿勢。目標 02。

SECTION 03

改訂版を出す

何を直したか、なぜ直したか

完成した画面を隣の席の友達に見せて説明している高校生
体験 03

改訂版カードを提出する

目的 | 何を楽にしたか
直した点 | 何を、どう変えたか
直した理由 | なぜそこを選んだか
次に任せたいこと

改訂版が右に並ぶ。「直した理由」が書けているものを 2 つ読み上げて、単元を締める

みんなの改訂版
教師用メモ

進め方(10分) 8 分で提出、2 分で読み上げ。

評価の見どころ 「直した点」だけでなく「直した理由」が書けているかが、態度の A・B を分ける。「動かなかったから」も理由として認めるが、「次に任せたいこと」まで書けていれば A。

この改訂版カードが単元の評定資料になる。教室コードのデータは 24 時間で消えるので、必要なら画面を保存しておく。

単元のまとめ

足し算しかできない機械が、何でもできるように見える理由

仕組み五大装置が役割を分け、CPU が命令を 1 つずつ読んで実行する。その足し算は AND・OR・NOT の組み合わせでできている。単純な計算を、とてつもない速さで繰り返している
限界決まったビット数で扱うので、表せる範囲と精度に限りがある。0.1 + 0.2 は 0.3 にならない
手順を書く曖昧さのない手順(アルゴリズム)を、順次・分岐・反復で表す。リスト・乱数・関数で整理する。書く側が全部決める
モデルで試す目的に応じて残すものと捨てるものを決め、コンピュータの中で何度でも試す。結果は疑い、モデルが適切かを検討する

次の単元はデータの活用。今日リストに入れた数を、集めて、見て、根拠にする

教師用メモ

2 分。単元の本質的な問いに戻る。「手順を書くとは、何を決めることか」→ 曖昧さを全部なくすこと、そして何を捨てるかを決めること。

自己評価

今日の目標、自分はどこまで

3 つの目標それぞれに、できた/だいたい/まだ、を 1 つ選ぶ。右の帯にクラス全体の分布が出る

今日の目標、自分はどこまで | 1 つずつ選ぶ
01ほかの人の提案を 3 つの観点で評価し、良いところを言えた
02もらった評価をもとに直す点を選び、プログラムを直せた
03直した点と理由を書き、次に任せたいことを挙げられた
できただいたいまだ
教師用メモ

1 分。単元全体の到達を見る材料にする。

ふりかえり

この単元で、いちばん変わった見方

一文でよい。「〇〇だと思っていたが、△△だと分かった」の形

みんなの変わった見方
教師用メモ

4 分。数人読み上げて単元を閉じる。次の単元(データの活用)につながる発言があれば拾う。