QCDの観点は、プログラマーが優秀かどうかの評価に直結します。
あなたが作成したプログラムは、すべてこの基準で評価されると言っても過言ではありません。
その中でも、Q(品質)の観点は他のC,Dよりも優先されます。
品質が低ければ、いくら早く仕上げても後々バグが発生して多くの時間を取られることになってしまうからです。
あなたがプロジェクトに入る際も、まず品質を上げることに集中しましょう。
コストを気にしすぎて焦って適当に仕事をこなすのは、あなたにとって学びが少なくなる取り組み方です。最初はあまりコストを気にせず、自分の品質を高める仕事の進め方を見つけましょう。
品質を担保できるようになってからスピードを求めることが、良い評価を維持しながら成長していくコツです。
ここでは、プログラムの品質は何で評価されるのか? 品質を高めるにはどのように仕事を進めれば良いのか?について解説していきます。
プログラムの品質は、バグの数だけではない
品質というと、まず思い浮かぶのはバグの件数です。
あなたが仕上げたコードにいくつのバグがあったのかが、数値として品質指標になります。
しかし、品質の指標はこれだけではありません。
バグ数の指標は、プログラムを作成している段階では有効です。しかし、その後何年もプログラムが動作し続けることを考えると、修正しやすさも大切なポイントになります。
つまり、「いかにきれいなコードを書いたか?」も、大切な指標の一つだということです。
コードの読みやすさと、将来の変更に対して修正をしやすい形に書かれているか、がポイントです。
- 変数名、関数名が一目で分かる名前になっているか
- 関数やクラスの分割を適切に行えているか
- インデントや改行が整っていて、見た目にもきれいなコードになっているか
他にもたくさんありますが、これらが代表的な評価ポイントです。
プログラマーの間は、関数やクラスの分割は設計書通りに書くことでクリアできるので、より重点を置くのは変数名やインデントなどのコードの見た目のポイントです。
コードの見た目を甘く見てはいけません。
あなたのコードをチェックするレビュアーは、まずコードの見た目で完成度を判断します。きれいな見た目になっていないコードには、ほぼ必ずと言っていいほどたくさんのバグや問題点があります。
また、変数名を何にするかで、「あなたがどういう読み手や使われ方を想定して変数名を決定しているか?」がバレバレになります。そして変数名がシステムの想定に合わなければ、あなたはこのプログラムの仕様を正しく理解していないと思われてしまいます。
コードの見た目はプログラムの動きには影響しませんが、あなたの評価には大きく影響します。
細かいところにこそ注意して丁寧にコードを仕上げましょう。
品質を高めるための考え方
品質面の評価ポイントを理解したうえで、ここからが本題です。
どうすれば、品質を上げられるのでしょうか?
当然ですが、やり方はたくさんありますので、具体的な方法論は調べてみることをおすすめします。
ただし、ここで一つ大切な考え方をお伝えしておきます。
「品質は、下げることはできても上げることはできない」
プログラムは、正しく動いて当然とみなされます。100点を取って当たり前の試験のようなモノです。
そこからミスや間違い、勘違いを起こせば起こすほど、品質は下がっていきます。考慮漏れや実装不足があると、品質は大きく下がります。
つまり、大切なのは品質を上げることではなく、どうやって品質を維持するのかを考えることです。
この前提に立って考える癖を付けましょう。
100点の状態をどれだけ維持するか、どうすれば維持できるかを徹底的に考え抜いて行動に反映させることで、品質を高く維持し続けられる可能性が高まります。
そのためにも、「失敗しない手順を作り、必ずその手順を守ること」こそが、あなたの品質を維持するための唯一の解決策です。
世の中にある数多くの方法も、すべては失敗しないための手順です。手順を守る意味を理解したうえで作業をしないと効果がうまく発揮されません。
そして、この手順を作ることが、この文章の初めに書いた、まず品質・それからスピードという意味です。
高い品質を維持できる手順を作り、守ること。慣れてきたらスピードを上げるためにある程度手順を簡素化する。この順番で仕事の進め方を改善していくことで、あなたの評価は高く維持できます。
参考に、失敗を減らすために過去の偉人たちはどのような手段を取ってきたのかは、こちらの本で学べます。自分が間違えやすいポイントや間違えを防ぐための手順の作り方として非常に参考になる一冊です。
まとめ
品質について、とても大切な考え方をお伝えしました。
しかし、どれだけ努力しても品質が下がる場面には出くわします。
勘違いやミスによって、大きな問題になる場合もあります。少しのミスが命取りなので、仕方がない場合もあります。
しかし、その際にコソコソと直すのではなく、然るべき手順で丁寧に真摯に対応することもあなたの評価を高めるためには重要な考え方です。
品質を高く維持するだけでなく、それをあなたの高評価につなげることも考えていくと、あなたはあらゆる状況に適切に対処できるようになっていくでしょう。
丁寧に一歩ずつ進んでいきましょう。