ソフト開発はプログラムの文法だけを知っていてもうまくいきません。 ソフトウェアのよい開発の仕方について考えます。
ソフトウェア開発はよくトラブルに巻き込まれます。納期がずるずる延びたり、 プログラムがスパゲッティ状態になったり、非常に使いにくいものが出来てき たり。こうした問題をどう解決するかについては今までに多くの人が研究して きました。そして「よいソフトウェアを作るには」という方法論について一定 の成果が上がっているにも関らず、ソフトウェア開発に携わる実務者にまでは 浸透していないのが実状です。
近年では、「ソフトウェア開発方法論」あるいは「ソフトウェア工学」という 名前でこうした成果を本にしたものを数多く見かけるようになりました。これ はこれで望ましいことです。しかし、こうした本を読んだだけでその精神をよ く理解しないまま適用するとかえってトラブルに巻き込まれます。方法を真似 するだけではなく、その本質を理解しないといけないのです。方法だけを真似 ると教条主義に陥りがちです。
ここでは、ソフトウェア開発で陥る様々な落し穴と、それから抜け出る方法に ついてのトピック的な話をしたいと思います。
本書は、ソフトウェア開発論関係の本をいくつか読んでいて、それを自分のプ ロジェクトに適用したいと思っている人を主な対象としています。ですから専 門用語についての解説はしません。ただし、その言葉が持つ概念については往々 にして勘違いされて広まってしまっていますので、もともとの意味をしっかり お話ししたいと思います。
プロセス改善の第一歩は、問題を問題だと認識する所から始まります。普段当たり前に思っていることでも、外から見れば問題だらけなのです。
プログラムは小説のようなものです。斬新なアイデアと練りに練られた構成が 必要なのです。わけのわからない呪文の羅列ではありません。
泥沼というのは、自分がはまり込んでみるとかえってよくわからないものです。
「さあ、UMLを勉強するぞ!!」と思っている人へ。ちょっと待ってください。あなたが勉強しなくてはならないのはUMLではありません。
再利用再利用と声高に叫んだプロジェクトほど失敗します。再利用しようとしてはいけません。手段が目的になってしまわないようにしましょう。
ソフトウェアはどうやって作るものだか知っていますか?パソコンに向かってプログラムを書くだけではありません。
ビジネスプロセスモデリングとは、使う人と一緒になって仕事のやり方を考え ることです。今までのように御用聞きの感覚でいてはいけません。
「オブジェクト指向とは何か」この根源的な問いの答えはなかなか難しいものです。ここではその難しく哲学的な問題に真っ向から挑んでみたいと思います。
「継承」はオブジェクト指向ではよく話題になり、また問題視されます。しかしそれは使い方が間違っているからです。
プログラムを開発する前に、ちょっと立ち止まってみて下さい。あなたは自分が何をしようとしているのかをきちんと把握していますか?
仕様分析とは、対象となる世界を深く知る作業です。
クラス図とは実は当たり前で簡単なものなのです。