2009年2月3日のブックマーク (2件)

  • 印税システムの構築に2回失敗 業務定義の工夫で成功に導く

    1. 初回はRFPが雑ぱくだったため,要件定義の段階でつまずく 2. 2回目は開発委託先やシステム・アーキテクチャの選定を誤る 3. 3回目は例外処理を網羅した業務定義書を作成し,構築に成功 リクルートの子会社で,書籍出版やアニメーション制作などを手掛けるメディアファクトリーは2008年1月,印税などの管理システム「RASかる」をカットオーバーさせた。それ以前にシステム構築を2回試みたが,初回は要件定義の段階で,2回目は実装段階で,プロジェクトが頓挫した。RFP(提案依頼書)が雑ぱくだったり,開発委託先やシステム・アーキテクチャの選定を誤ったりしたことが原因である。3回目の挑戦でも,思わぬ問題が生じたが,プロジェクト・チームの工夫で乗り切り,成功に結び付けた。 構築したRASかるは,著者や装丁家,出資者など出版物ごとの権利者との契約内容管理,ライセンス収入管理,印税計算,分配金計算といった

    印税システムの構築に2回失敗 業務定義の工夫で成功に導く
    koumiya
    koumiya 2009/02/03
    システムの機能が複雑になるので,請求額が当初見積もりの倍になる/問題ないとB社が言い切ったので,それを信じた/大きな原因が(1)開発委託先の選定ミス,(2)不完全な業務定義書,(3)アーキテクチャの選択ミス
  • CSVエクスポートはmysqlに任せた方が1000倍早い - yoshitetsuの日記

    CSVでエクスポートさせるときFasterCSVはよく使うけど、レコード数が増えればそれに比例して処理スピードが鈍化する。 People.find(1, :include=>:profiles) としたとき、もしhas_manyしているprofileが1000個あった場合、そもそもオブジェクトのnewがボトルネックになる。これをさらにFasterCSVでeach回してcsv化するとなるとさらに遅い。1000ならまだいけるが、1万、10万というオーダーになると終わる。 なので、こういうときはmysqlがバックアップ用としてサポートしているsqlを使う。直接mysqlsqlを投げてcsvを吐いてもらおう。 Profile.connection.execute("SELECT id, name, created_at from profiles where people_id = 1 INTO

    CSVエクスポートはmysqlに任せた方が1000倍早い - yoshitetsuの日記
    koumiya
    koumiya 2009/02/03
    mysqlでcsvエクスポートするとインスタンス生成のコストを抑えられるので早い