(2)信頼性
信頼性、すなわちいかに障害の発生しないシステムを作れるか、この点については、自信をもって言い切る
ことができません。
最近、特に大規模なシステムで障害が発生しています。
まあ、大規模ゆえに目立っているだけで、本質的には、他にも発生しているのではないかと思います。
なぜ、こういうことが起きるのか、システムの開発に携わったことごない人には不思議だと思うことでしょう。
<原因>
・充分なテスト期間が確保できないことによる、テストケース不足。
上記、生産性のことと密接に関係していますが、生産性としての縛りから、完了までの期間にどうしても制約
がかかり、テストケースを多くとることが、能力不足というような一般判断がかかる傾向があります。
早く、完了本数を上げることが、能力が高いというような評価です。
この点について、品質を上げる、確保するというような視点で、再評価していく必要があります。
ステップ当りのテストケース数、判断分岐当りのテストケース数をきっちり実行し、検査していく必要が
あります。
・人間の思考能力の限界、脆弱さ
フラグ、カウンタの初期化忘れ(初歩的なミス)とか、発生データ件数の過小見積もりとか、判断分岐の
考慮不足による処理ロジックの不具合等、人間の思考能力の脆弱さ 及び限界があります。
自信がある人程、簡単な点を見落とすことがたまにあります。
よっと、すべて人間に委ねるだけでなく、テストケース発生ツールとか、テストデータ発生ツールを利用し、
テストケースを補う必要もあります。
シルテム作りは進歩しているか
SEという仕事で40年近くやってきました。いろんなシステムの開発・保守作業に携わりました。
はたして、どれだけ進歩したでしょうか? 生産性は? 信頼性は?
(1)生産性
生産性は上がっていると思います。
・開発言語
最初の頃はアセンブラまたはFORTRAN及びCOBOLが主流でした。
COBOLは現在でも莫大な資産となっていますが、アセンブラでの開発は、大分少なくなりました。
但し、メモリ容量に制約があるとか、処理時間に依存するシステムにおいては、まだまだ活用されていると思います。
FORTRANも科学計算等の分野では更に活用されていると思います。
現在では、いろんな言語が使用されています。日本語PL/I、CORAL、構造化COBOL等です。
特徴としては、普段使用している日常言語に近い感覚でコーディングできるようになってきました。
また、使用できるメモリ量も増加したし、CPU性能も向上したため、コーディングテクニックを駆使して少しでもメモリ量を少なくし、
かつ、処理ステップを少しでも少なくせよといったテクニックはあまり気にしなくても良いようになりました。
また、アセンブラみたいに、レジスタの使い回しとか、アドレス方式とか、システムに依存することを意識しないで済むようになり、
それによる生産性は高くなりました。
但し、弊害としては、コンピュータの基本的な構造とか、メモリ構造の把握とか、OSの構造とかの理解に欠ける人達が増えてきた
ように思えます。
システムの障害、ソフトの障害とかが発生したとき、あるいはその予防とかいう面での対応を考えると、対応力に欠ける結果に
なると思えます。
・開発手法、体制
一番の財産は、過去の蓄積の活用です。
新システムの構築にあたっては、過去の参考となるシステムを流用して、それに新機能を追加していくということが多いです。
やはり、過去のノウハウを利用することが、少しでも早く、かつ、信頼性の高いシステムを作るには必要です。

人間の本質は進歩しているか
人間をとりまく物質的な環境面では、大分進歩しています。(但し、良い面だけではないのですが。)
精神的な面ではどうかというと、あまり進歩はないのではないかと思ってしまいます。
自分のエゴだけを通そうとする精神、自分の利益だけに目をとらわれる人、親子・家族の思いやり、
ご近所同士のお付き合い、電車内でのマナーを無視した振る舞い等、かえって、退化しているのではないかと
思われる点が多々感じられます。
これが人間だよと言えばそうなんですが。
人間の宿命であり、未来永劫変わるものではないかなあとも思いますが。
そういう状況ではあっても、そういう風潮にながされることなく、誠実に、正直に、正義を忘れることなく、
生きていくということが、単純ではありますが、大事だと思っています。
家訓: 「人のいやがるかことをするなかれ」、「人が喜ぶ、正義のことに、心がけよ」、「人類、皆兄弟」
バブルではない
私の嫌いなことばに「バブルの崩壊」があります。
「バブル」という言葉に責任を転嫁しているように思えます。
本質は、自分の判断ミス、能力不足だと思っています。
それこそが「バブル」だという人もいるようですが、認識が違うように思えます。
自分の責任において、対処すべき事柄と考えます。