2010年10月05日
設計書は必要か不要か?
先日のセミナーでのパネルディスカッションでパネラーの方々が
「設計書は不要。AppleやGoogleでも設計書は書いていない」
「設計書を書くと、それがMustになり、それ以上のものが生まれない」
と言われてました。
それについて個人的に思うことを。。。
今の時代で考えれば言われていることは確かに正しい。大企業の基幹系で
一気に立ち上げる必要がある場合は、インフラ・アーキテクチャーなど含めて
事前に十分な設計・検証は必要だと思うが、ちょっとした情報系システムであれば
まずは動くものを作って、それをブラッシュアップしていくやり方の方が効果的。
所謂「アジャイル(反復型開発)」という考え方。
ただ、これには幾つか条件があると思う。
○ソースコードが設計書として通用するものであること。
設計書があれば、よほど変なソースでなければ設計書と併せて見ることで、
第三者でも中身を理解はできる。しかし設計書が無く、コメントも無い・何を
やっているのかわからないソースでは、メンテナンス(不具合修正・機能追加)
もままならず、反復型開発どころではない。
○品質確保の仕組みがあること。
設計書は無くても、テスト仕様書は必要でしょう。個人的な趣味で作るプログラム
ならまだしも、ユーザに納めるシステムでは品質を客観的に検証する仕組みはどう
しても必要。
○それができるだけ、プログラマの質が高いこと。
コメントの書き方も知らない、テストのやり方も知らない、アルゴリズムを考える
ことができない、開発ボリュームを見積もれない、スケジュールを立てられない
様なプログラマでは、このやり方は絶対に無理。
Appleやgoogleのプログラマがどの程度のレベルか直接は知りませんが、少なくとも
上記は基本スキルとして持っていることは想像できます(でなければ入社できない
でしょうから)
この様なことをクリアできてるソフトハウスって福岡にどの程度あるでしょう?
できるようにするにはではどうすればいいかでしょう?
当たり前ですが、新入社員の時から基本スキルを徹底的に教え、学ばせるしかないでしょう。
新人のソースを細かにレビューしたり、コメントの書き方を指導したり、テスト仕様書を
書かせてテストさせて、結果をレビューしたり、etc。
自分も新人の頃はやられました。例え仕様通りに動いても、コメントの書き方が悪かったり
効率的なアルゴリズムでなかったりしたら、何度も修正させられて(涙
昔と違い、今は規模も小さく短納期になり、なかなか時間をとれない状況でしょうが、
企業としてこれから何年・何十年先のことを考えれば、やるべきと思うのですが
どうでしょう?
自社の要員だけで難しいのであれば、ある程度はお金を払って外部の人に指導してもらうなど。
将来のことを考えれば安い投資ですよね?<経営者・管理者の方
Posted by 福岡で働くIT屋 at 07:39│Comments(0)
│IT