SSブログ

レベル2:見習い [プログラマー現役続行]

ソフトウェア・スキル・インデックス」では、7つのレベルを定義しています。その中で、レベル1である初心者は、次のように定義しています。
指導を受けながら実践ができる
拙著『プログラマー”まだまだ”現役続行』では、次のように解説しています。
 ある程度の基礎知識を身につけたら、ソフトウェアの開発では、本人の経験を積ませるために、難易度の低い開発業務を行ってもらうことになります。このレベルでは、UMLを学び、クラス図やシーケンス図を描いたり、実際に多くのコードを書いたりします。
 しかし、クラス図やシーケンス図を描けるということは、うまく設計できるということとは同義ではありません。したがって、成果物を常にチェックして、ソフトウェア開発業務を行わせる必要があります。
 ソフトウェア開発では、デバッグを回避することはできません。したがって、デバッグの方法についても、間違った考え方や憶測でデバッグしているようでは、その後の成長は望めません。
 このレベルでは、バグの原因が何であると推測できるか、その推測からバグの現象を説明できるかとの仮説を立てさせて、その仮説を証明するには、どのような方法で確認すべきかを、常に論理的に思考させる必要があります。そして、その確認方法(デバッグ文の挿入など)で仮説が否定された場合には、再度別の仮説を立てて検証させていきます。
 本人がどのようにバグを調査したかを確認するのは、重要です。誤った考え方でたまたまバグを発見した、あるいはバグが再現しなくなったというようなことを繰り返すと、成長が望めません。したがって、「バグを修正しました」と報告されたときは、論理的に説明できているかを常に本人に問うことが必要です。

 デバッグには、論理的に推論する力だけでなく、その推論を支える膨大な知識が必要です。初心者や見習いレベルの場合には、その両方が欠けています。
 論理的思考は日々の指導で、知識は継続した学習で、それぞれ身につけていきます。トレーナーは、見習いレベルの人材を、この二本立てで育成していく必要があります。ここでも、不適切なトレーナーや先輩に育成させると、本人も成長しないことになります。
 見習いレベルから初級職人レベルになるには、一、二年は要するかと思います。
情報工学系の修士課程を修了していれば、この見習いレベルの指導は必要ないかと思っていましたが、どうもそうではない人達も日本の大学を卒業した人達にはいるようです。ここで述べているように論理的にデバッグができて、説明ができないようでは、おそらく次の「レベル3:初級職人」の域には、一生到達しないかもしれません。

プログラマー”まだまだ”現役続行 (技評SE選書)

プログラマー”まだまだ”現役続行 (技評SE選書)

  • 作者: 柴田 芳樹
  • 出版社/メーカー: 技術評論社
  • 発売日: 2010/09/04
  • メディア: 単行本(ソフトカバー)


コメント(0)  トラックバック(0) 

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

Facebook コメント

トラックバック 0