システム開発のノウハウ(概要)(1998-07-08修正)

  1. システムとは,橋のような建造物ではなく,人間のような生物です。(1999-07-08追加)
  2. ○システムを作る前に幾ら時間とお金を掛けても残念ながら完成したものは、想定した物に遠く及ばず、半分以上手直ししなければ本当に使えるシステムにはなりません。
    ○出来たばかりのシステムは赤ちゃんです,突然一人前の仕事をしろと言っても無理です,きちんと育てなければ本物のシステムにはなりません。
    ○一人前のシステムでも当然成長が必要です、改善要求の来ないシステムは,使われていないと考えるのが妥当です。

  3. システムを改善するとはシステムを単純にする事です。(1999-07-07追加)
  4. ○二つのシステムの共通点を見つけシステムを一つにする事が改善です。
    ○二つのプログラム共通点を見つけ一つのプログラムにする事が改善です。
    ○究極の改善はそのプログラムを無くす事です。
    ○新たな機能を盛り込む場合改善を必ずペアーで実施する事が重要です。

  5. 規約をきちんと作りましょう。(1999-07-06追加)
  6. ○非常に優良な規約を作った場合は全く規約を作らない場合に対しプログラム本数が3分の1以下でシステムを作る事ができます。
    ○くれぐれもローカルルールは規約にしないように、プログラム本数は格段に減りますが、グローバル化を阻害します。

  7. SQLでシステム開発をしましょう。
  8. ○COBOLやCやBASICと言った沢山の言語が有りますがシステム開発をする場合に生産性と保守性が抜群のSQLを使いましょう。
    ○ただし、SQLは単にデータベースの操作言語です、したがってSQLを使用する場合は他の言語の助けを必要とします。
    ○SQLを助ける部分をIPROGRAMとしてツール化しました。
    ○SQLを使うと言う事はRDBMS(リレーショナルデータベースマネージメントシステム)が必要です。

  9. 変化するデータはテーブルに変化しないロジックはプログラムにしましょう。
  10. ○本来変化する部分をプログラムに書き変化の都度プログラムを直す事は止めましょう。
    ○そのプログラムはどこの企業でも使えるように、当社独自の情報もプログラムではなくテーブルに持ちましょう。

  11. テーブルはデータを追加する事のみを理想とします。
  12. ○データは発生時追加され、修正も削除もされない事を理想としましょう。
    ○理想どうりには行かない場合も有ります、たとえば、伝票は伝票番号を無限の桁にできないので何時か同じ番号を使わなければなりません、そこで削除は一定期間後に削除するようにします。
    ○単価等時系列で変化する場合は開始日、終了日を設ける事によりて新規分は追加で対応できます、但し、終了日は修正で対応する必要が有ります、これも理想どうりでは有りませんがデータの重要性から見れば単価の修正ではないので終了日の修正は容認できるものです。
    ○長期間貯えられたデータが有る事により、OLAP(オンライン分析処理)につかえます。
    ○古い情報がいつでも見られるので紙への出力が不要となります。
    ○毎月決まって入力するデータは年月をキーに持つことで実現出来ます(1999-11-09追加)。

  13. 一つの情報で追加されるのは一つのテーブルの一つの行を理想とします。
  14. ○ある情報を検索するのに時間が掛かってしまう場合のみサマリー情報をテーブル化します。
    ○サマリー情報は元のテーブルから可能な限り何時でも復元できるようなシステムにしましょう。

以上。

All Rights Reserved, Copyright (C) 2002-2004 Nobumichi Harasawa.