アクティビティ図とは?中学生でもわかるフローチャートの読み方・書き方【Scratch対応】

アクティビティ図のフローチャートは、プログラミングの設計図です。条件分岐や繰り返し処理の流れを図で表したもので、スクラッチ(Scratch)でプログラミングをするときにも役立ちます。この記事では、アクティビティ図とは何か・フローチャートの読み方と書き方・Scratchとの関係を、初心者向けにわかりやすく解説します。

アクティビティ図とは?

アクティビティ図には、プログラムの処理の順番や条件分岐などのフローチャートが記されています。フローチャートとは、流れを図式化したものです。たとえば「好きな人に告白するかどうか」の流れをフローチャートにすることもできます。

告白するかどうかのフローチャートの例

実際の仕事でもアクティビティ図を頼りにプログラミングをします。Scratchでも同様で、アクティビティ図はプログラミングの道しるべとなります。プロジェクト全体の流れをひと目で確認できる点が大きなメリットです。

アクティビティ図を「UML」で書く

UML(Unified Modeling Language:統一モデリング言語)とは、プログラムの構造を図で表すための言語です。「模型を立体的に組み立てるように、プログラムを設計する」イメージです。

Scratchはオブジェクトのやりとりでプログラムをつくるオブジェクト指向の学習環境なので、UMLとの相性がよいです。Scratchでプログラミングをする際にアクティビティ図を用意しておくと作業がスムーズになります。

UMLで書いたアクティビティ図の例

上記のアクティビティ図をもとに、Scratchで実際にプログラミングしたプロジェクトが以下です。

Scratchのスクリプト(赤い恐竜)
Scratchのスクリプト(赤い恐竜)
Scratchのスクリプト(緑の恐竜)

Scratchの完成プロジェクト:恐竜の10秒時計 Dinosaur’s 10-second clock

赤い恐竜と緑の恐竜がメッセージをやり取りしながら、順番に少しずつ回転するプロジェクトです。アクティビティ図とスクリプトを見比べながら、フローチャートを一つずつ解説します。

フローチャートをScratchで実装する手順

001:スクリプトがスタート

緑の旗が押されてスクリプトがスタートします。

アクティビティ図のスタート部分
Scratchの緑の旗スタートブロック

002:赤い恐竜が15度傾く

最初に赤い恐竜が「15度回転」を実行します。

アクティビティ図の赤い恐竜15度回転部分
Scratchの15度回転ブロック

003:赤い恐竜から緑の恐竜にメッセージが送られる

赤い恐竜から「メッセージ1を送って待つ」が送られます。緑の恐竜が「メッセージを受け取ったとき」で受け取ります。

アクティビティ図のメッセージ送信部分
Scratchのメッセージ送受信ブロック

004:緑の恐竜、1秒待ってから15度傾く

メッセージを受け取った緑の恐竜は、「1秒待つ」と「15度回転」を実行します。

アクティビティ図の緑の恐竜1秒待つ部分
Scratchの1秒待つ・15度回転ブロック

005:緑の恐竜から赤い恐竜にメッセージが返される

緑の恐竜から赤い恐竜へメッセージが返されます。赤い恐竜はメッセージが返ってくるまで処理を止めて待っていた状態です。

アクティビティ図のメッセージ返信部分

006:赤い恐竜は1秒待つ

メッセージを受け取った赤い恐竜は「1秒待つ」を実行します。2頭の恐竜の動く間隔を等しくするための処理です。

アクティビティ図の赤い恐竜1秒待つ部分
Scratchの1秒待つブロック

007:5回繰り返す

「5回繰り返す」でここまでの動作を5回繰り返します。全体で約10秒のプロジェクトです。

アクティビティ図の繰り返し部分
Scratchの5回繰り返すブロック

008:スクリプトを終了する

繰り返しを終えるとスクリプトが終了します。

アクティビティ図の終了部分とScratchのスクリプト終了

UMLを作成する無料ツール「draw.io」

今回のUMLはdraw.io(diagrams.net)で作成しました。無料で使えるフリーツールで、フォーマットが豊富・画像やHTMLでエクスポート可能・Googleドライブと同期できるなど使い勝手が良くおすすめです。以前はChromeアプリ版がありましたが、現在はブラウザから直接アクセスして使用できます。

まとめ:アクティビティ図はプログラミングの設計図

アクティビティ図のフローチャートは、プログラミングの設計図として機能します。プロジェクトが大きくなるほどプログラムは複雑になるため、アクティビティ図で全体の流れを整理してからコーディングすることが重要です。Scratchでも同様で、アクティビティ図を書く習慣をつけることがプログラマーとしての第一歩になります。

Scratchをさらに深く学びたい方には、入門書を活用するのもおすすめです。価格は変動するためAmazonで最新情報をご確認ください。

Scratchではじめよう!プログラミング入門 Scratch 3.0版(Amazon)

このテーマの関連記事はこちら