抽象化とは
抽象化とは
抽象化とは、ある物事に関する膨大な情報量を簡潔に集約して表現したもの(具体→抽象)で、その過程には、「分類(分解)」「線引き」「目的に合わせて切り取る」などが行われ、ある事象間の関係性やつながりを見つけて構造化することを言います。
具体化は、「例えば」の後に続く言葉で表現されますが、抽象化は、「つまり」の後に続く言葉で表現されます。そして、そのアウトプットとして、言語化したり、図解したり、つまり「単純化された図」でシンプルに表現されます。
ダラダラとした長文よりも箇条書き、箇条書きされた文章よりも、図解表現の方が、より抽象度が高いと言えます。図の並び順や矢印の向きには意味があり、それを見るだけで瞬時に理解できることが大きな違いです。
メタ認知や帰納的思考も抽象化です。「メタ(高次)」で認知(知覚、記憶、学習、言語、思考など)すること」。より高い視点から認知するということです。メタ認知は、何かを実行している自分に頭の中で働く「もう一人の自分」と言われるように、物事の全体像を俯瞰してみるということです。
なぜ分解するのか
正確な結果を出すためには、正確な指示が必要になります。そして、正確な指示をするためには、結果を構成する要素を正確に洗い出し、把握する必要があります。料理レシピがあるからこそ、初めての人もなぞることで同じように美味しい料理を作ることができます。
つまり、これが「モデル化」されているということになります。食材や調理工程に抜け漏れがあると完成品(=結果)にならないので、完成品を構成する要素を網羅して、抜けや漏れがないようにする必要があります。
また、ゴールを分解し、必要なものを抽出(抽象化)し、一般化する。それらを組み合わせて図示します。ゴールを分解する際に、細かすぎたり大雑把すぎると、重要な要素が抜け落ちてしまう可能性もあります。
一般化とは
一般化とは、物事の類似性や関係性といった、いわゆる「パターン」を見いだすことです。パターン化することで、別の事象でもそのパターンが利用できる可能性があります。
物事の順序や条件による行動分岐、繰り返されているような規則性などを見いだすことができれば、それらを組み合わせることで、様々な問題解決に役立てることができます。
問題解決
なぜ抽象化するスキルが必要なんでしょうか。例えば、自分が体験したことを簡潔に適切な言葉で相手に伝える場合でも、順を追って何をしたのかを、一つひとつを分類して言語化し、全体像を俯瞰して、詳細な部分を省きながら主要な部分を抽出し、前後の関係性を見いだして構造化することは簡単なことではありません。
以下の図は、問題解決のプロセスです。抽象化をすることで問題の本質が見えてきます。もし問題に直面した時に十分な原因分析をせずに解決案を考えた場合、問題の解決に至らない可能性があります。抽象化した場合としなかった場合の解決案に違いがでることを参考例として挙げたいと思います。
問題として、コンビニをはじめ店頭販売では、雨の日は来店客が減り売り上げが落ちてしまいます。この問題について、抽象化せずに短絡的な解決案を考えると、おそらく「雨の日セールを実施する」ということになるでしょう。これでは、目先の解決案に飛びついた、木を見て森を見ずの案ということになる可能性が高いでしょう。
抽象化(原因分析)を十分にして、真因を突き止めた解決案なら、雨の日は荷物と傘を持って大変です。店に入るのも出るのも傘が邪魔になります。服が濡れたり、傘立てから盗まれた過去の経験が外出を億劫にしているのが原因と考え、そしてそれが真因なら、解決案は・・・
出入り口で店員が傘の処理(畳んでビニールに入れる)を行うことで、客はただ店員に預けるだけです。盗まれないよう店員が管理して、退店時に傘をさして手渡す。というような解決案が考えられるだろうと思います。(正解ではなく最適案とし、長期的な実施が可能で追加費用もかからず、客へのサービスとして他にも応用できるかもしれません。)
このように、抽象化するスキルを上げると問題解決スキルも向上させることができるのではないかと思います。
▼Amazonおすすめ本
▼続きはこちら
おすすめ記事
-
小学校プログラミング教育とは
プログラミング教育必修化 今回の学習指導要領改訂(2020年度から小学校で完全実施)による、小学校での教育の大きな変更点は 「外国語を、小学校5・6年生から教科とする」「道徳を教科とする」「プログラミング教育を導入する」 […]
-
プログラミング的思考とは
情報活用能力とは 学習活動において、必要に応じてコンピュータ等の情報手段を適切に用いて、情報を得たり、整理・比較したり、発信・伝達したり、保存・共有したり、といったことができる力です。 こうした情報活用能力を育むためには […]
-
プログラミング的思考力育成のその前に
プログラムとは何か プログラムとは、コンピュータ(パソコンやスマートフォンなど)にして欲しいことを、プログラム言語を使って「命令」という形で作成した機能をいいます。 その機能の集合体、完成したものがアプリケーション(アプ […]
-
プログラミング的思考力育成方法の提案
プログラミング的思考力育成方法 プログラミング的思考能力は以下の6つになります。 ものごとを一旦分解してから整理する能力(分解、分類、共通化) ものごとを単純化して重要な部分を捉える能力(抽象化、メタ認知) やるべきこと […]
小学校プログラミング教育とは
プログラミング教育必修化 今回の学習指導要領改訂(2020年度から小学校で完全実施)による、小学校での教育の大きな変更点は 「外国語を、小学校5・6年生から教科とする」「道徳を教科とする」「プログラミング教育を導入する」 […]
プログラミング的思考とは
情報活用能力とは 学習活動において、必要に応じてコンピュータ等の情報手段を適切に用いて、情報を得たり、整理・比較したり、発信・伝達したり、保存・共有したり、といったことができる力です。 こうした情報活用能力を育むためには […]
プログラミング的思考力育成のその前に
プログラムとは何か プログラムとは、コンピュータ(パソコンやスマートフォンなど)にして欲しいことを、プログラム言語を使って「命令」という形で作成した機能をいいます。 その機能の集合体、完成したものがアプリケーション(アプ […]
プログラミング的思考力育成方法の提案
プログラミング的思考力育成方法 プログラミング的思考能力は以下の6つになります。 ものごとを一旦分解してから整理する能力(分解、分類、共通化) ものごとを単純化して重要な部分を捉える能力(抽象化、メタ認知) やるべきこと […]