たったこれだけ!コンピュータ・プログラムの構成要素

プロジェクトオーガナイザの吉田聖書よしだみふみです。

AI(人工知能)や機械学習の流行で
学校でのプログラミング教育必修化の波が来て、
プログラミングというものに対する関心が
ますます高まってきていると感じます。

今回はITに詳しくない管理職の方向けに
コンピュータ・プログラム(以下、プログラム)というものの概念を
ざっくり解説したいと思います。

しかし、
そういった分野に疎い人から見れば
プログラミングというのは未知の世界でしょうし、
そもそもプログラムというものが全く得体の知れない存在なのです。

でも、ホリエモンも良く言っているように、
プログラムはごくシンプルなものです。
シンプルなものがいくつも組み合わさっているので
複雑に見えるという側面があります。

ずいぶん前のことになりますが、
ある会社に技術的な支援で入った時、
私よりも年上の技術者に対して
プログラミングを教えるという役割を
仰せつかったことがあります。

余談ですが、今から思えば
人生経験でいえば私の何倍もあったのに
良くも私の生意気な発言の数々を
我慢してくださったなと思います。

彼は、物事を複雑に捉える癖があったため、
プログラミングに対して苦手意識を持っていました。
(と理解していました)

そこで、
プログラムというのはシンプルなものだということを伝えるために、
まずは彼が思い描くプログラムの概念を図示してもらいました。
当時どのように伝えたか詳細は覚えていませんが、
「プログラムとはどういうものかを絵に描いてください」ということを伝えたように思います。
新しいイメージをインストールするのが目的ですので、
敢えて難解な問いに答えていただきました。

すると彼はフローチャートのような
たくさん枝分かれした柳の木のような図を描きました。
頭で捉えている複雑さを
そのまま表現しているように思いました。

プログラミングを多く経験した方ならわかると思いますが、
プログラムの三大構成要素は

  • 入力(インプット)
  • 論理(ロジック)
  • 出力(アウトプット)

です。
図示すると次のようになります。

とてもシンプルですよね。
これはコードにおける関数などもこの構造ですし、
WebやAPIなどのインタフェースも然りです。
情報システムも大きく捉えれば同じ構造です。

プログラムはツールですから、
入力や出力がないものは意味を成しません。
別の表現をすると、プログラムとは
入力を出力に変換するルールである
と言い換えることができます。

つまり
AIだの人工知能だのと言っても
突き詰めていけば何某かの入力を与えて
出力を得るための仕組みに過ぎない
ということになります。

何かのサービスを検討していたとして、
サービスの売り文句に
「AIを活用し」などと書かれていても、
具体的にどの部分に活用されているのかが
明らかにされていないものは
疑ってかかった方が良いかもしれません。

数年前、
○○というキーワードが流行った時、
私も展示会等を見て回りましたが、
正直「これのどこが○○なの?」
と思ってしまいました。
(○○の部分は波紋を呼びそうなので
お好きなキーワードを入れてみてください)

こういったキーワードは
特にIT業界においては少なからず
「言ったもん勝ち」の側面があるので、
基本的な概念は押さえておかれた方が良いと思います。



関連記事

プロマネの右腕

クロスイデアでは、新サービス・新ビジネスの 立上げや計画を中心に
プロジェクトマネジメントの支援を行っています。

新サービスの企画を任されたけど どう進めていいか悩んでいる担当者、
部下に新しい企画を任せたけど このままで大丈夫か不安な管理職の方、
以下のサイトをご参照ください。
https://www.crossidea.co.jp/services/right-hand-pmo.html

YouTubeにて動画配信中!

プロジェクトマネジメントのノウハウを
YouTubeで配信しています。
ブログと併せてご活用ください。

Comments are closed.