ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

「システムテストで、性能のテストをはじめる」という今のテストの方法論って、問題ない?私の周りだけ?

2005-07-13 17:34:51 | 開発ネタ

今のテストのパラダイム(?)だと、実際のデータ量でテストするシステムテストって、単体テスト、結合テストのあと、もう、リリースちょっと前にやりますよね。

 これって、問題ないっすか?




 たとえば、在庫を求めるプログラムを作ったとします。

 そのプログラムが仮に、
   在庫=期首在庫数 + 期首からの在庫の入庫数 - 期首からの在庫の出庫数
 から、在庫数を求めたとします

 (そんなばか、いねーよ!と思うかも知んないけど、いたとする)。

 これは、在庫の基本公式であり、何一つ間違いございません!
 簿記の教科書にも、このように書いてあります。

 その上、単体テスト、結合テストでも動きます。

 でも、仮にですよ、拠点が10箇所くらいあって、在庫の入庫回数が、1時間に1拠点10回、出庫回数が、1拠点1時間に15回あって、それを本部で集中管理!
 複数端末で参照したり、入出庫するため、排他制御が必要で、さらに、入庫、出庫の数を狂わさないため、入庫テーブル、出庫テーブルにテーブルロックかけたら。。。

 集中管理するから、1時間の入出庫アクセスは(10+15)*10=250回
 3600(秒=1時間)/ 250=約14秒に1回、入出庫だけでもくる
 これに、在庫検索が加わる。

 在庫検索は、この会社が8時間営業したとして、200営業日めに検索をかけると、
  8*250*200=40万
 1アイテムの在庫検索に40万件を検索することになる。10アイテム検索すると、400万件、これのSUMを取る。

 実際にこの状態で、在庫管理を複数端末で動かしたら、ロック待ちで、動かない。。。かもしんない!!

 つーことで、システムテストで問題発生する。




 で、じゃあ、問題発生したとき、どうするか?
 ロジックを直す暇ないですよね、システムテストの段階でリリース直前だし、

 もし、このような状況にならないために、ロジックを直す場合、

 式をこのように変形します

   期首在庫数=現在在庫数-期首からの在庫の入庫数+期首からの在庫の出庫数

   プログラム的には、在庫テーブルに現在の在庫数を持たせておいて、
   現在在庫数は、そのテーブルの数量を出す。
   入出庫のときは、そのテーブルのレコードを修正する。
    →このとき、そのレコードをレコードロックすればよい。
   ある日の在庫(過去の在庫)を見たいときは、
   現在在庫数から入庫数を引き、出庫数を足す
    (=期首の日まで戻れば、期首在庫はわかる)

 でも、この修正って、(在庫)テーブル修正(あるいは追加)っすよ!

 そんな短時間ではできないっす。




 まあ、ここまでおばかなシステム作るやつは、いないと思うけど
 (いないよねえ ^^;)、こんなかんじで、システムテストで、データベースのパフォーマンスが出ないときって、困りますよねえ。

 ロジック修正は間に合わないし、ロジックを直さないと、出来ることって限られてるし。。

 うーん、テストのパラダイムを変えるべき?

 え、ウィリアムのいたずらのまわりだけだって!?
 そんなおばかな問題について考えてるのは!って。。。




 そうかもしれない。。。


(つーか、そんなような話を聞いたとき、ウィリアムのいたずらは、開口一番、「それって、プログラム書いてるときに、気づけよ!」って言ってしまったが ^^;)


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

人月単価が安い理由って、オフショア開発のためなの?フリーが安く受けちゃうからじゃない?

2005-07-13 14:48:25 | Weblog

 今回の日経ソリューションビジネスに、繁忙のわりに、利益なしみたいなことが書いてあって、その理由に、ドイツ証券のアナリストが、オフショア開発が進んだからという意見をあげてました。
 それと、この前の日経コンピューターで、価格破壊の話をやってたとき、VBで1人月38万、Javaで40万っていう仕事が出ているという話がかいてあり、そのときも、オフショア開発が進んだから、そうなったって書いてありました。

 この話、本当に、そう思いますか?




 ウィリアムのいたずらが、中国系の会社にいたとき、中国の開発部隊を動かすには、やっぱりブリッジSEが必要でした。それ以外の開発のときも、現地の人と、直接英語で話すというよりは、ブリッジSEがいる場合が(圧倒的に)おおいと思います。

 そうすると、少人数の開発では、ブリッジSEの費用も、開発費に計上されることになります。さらに、海外の場合、管理がたいへんなんだーかんだーで、思ったよりは安くなんないと思います。
 1人月40万って、会社組織で利益を出すには、すっごーい大変なので(こんど、機会があったら、どれくらい大変か書きますね)、オフシェアにするだけでは、無理じゃないかなあ???




 じゃあ、どうして、そんな値段のものが出回り始めたかっていうと、たぶん、ウィリアムのいたずらのような、(派遣でもない)フリーSEが増えてきて、その人たちが、ダンピングしてるんだと思う。理由は、ダンピングしても生活できるから。。。

 企業で1人月40万は無理なんだけど、ウィリアムのいたずらが、1月40万、毎月支払いで、準委任契約っていうことでやるとしたら。。。
 こりゃー、おいしいお仕事になってしまいます。35万でもOKです。
 場合によっては、30万でもOKっす!

 さらにさらに、最近の仕事は、1日8時間拘束されない仕事があります。
 つまり、仕様が決まるの待ちとか、会議の検討まちとか、連絡がつけばよいというような仕事があります。こういう仕事だと、おなじ時に2つの仕事が入れられます。
 そうすると、もっと安くても大丈夫っていうことになります。

 つまりですね、フリーSEなら、1人月40万どころか、それ以下でも、受けてしまいます。そうすると、相場は、安いほうが基準になるので。。。
40万くらいになってしまうのであります。




 さあたいへんです。ソフトハウス社は。。
 どうするんでしょう。

 人ごとです。ウィリアムのいたずらはフリーなので。。

 こういうフリーがいるから、価格破壊は止まらないのです。。


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする