出口コストをソリューションの選択に組み込む必要がありますか


10

私は現在、2つの実行可能なソフトウェア設計/ソリューションから選択しています。ソリューション1は実装が簡単ですが、一部のデータを独自の形式でロックし、後で変更するのが困難になります。ソリューション2は実装が困難ですが、後で変更する方がはるかに簡単です。

これについてYAGNIに行くべきか、それとも意思決定に出口費用を組み込むべきか?または別の質問として、出口コストはTCOの一部ですか?

これを持って顧客に戻り、出口費用が適切であるかどうかを質問することを考えていますが、コミュニティが最初に何を考えているのか知りたいのですが。

PS出口費用は正しい用語ですか?


最初のソリューションがデータをロックインし、後で変更するのが難しいと思う理由を追加できますか?
Jaap

本質的に、「標準」または「オープン」であると想定されているフォーマットであっても、すべてのフォーマットが独占的ではありませんか?Yagniはおそらく、「独自の」フォーマットが実装が簡単で、簡単に使用できる場合、および/または交換用のデファクトフォーマットである場合に適用されます。
JustinC 2012年

詳細には触れません。適切なテーブルとGUIを作成してオンデマンドでExcelシートを生成する(ソリューション2)のではなく、Excelシート(お客様が設計したもの)をドキュメント管理システムに配置する(ソリューション1)と考えてください。それがExcelではないことを除いて。
dvdvorle

ただし、これはおそらく、プロジェクトスポンサーに選択と決定を提示する際にこの懸念事項に気付くことを妨げるものではありません。
JustinC、2013年

@JustinCは結局、ここで現金について話しています。長期的には「独自の」フォーマットを使用する方が安いですか?それは私がプロジェクトのスポンサーに最も重要と思われるものである
dvdvorle

回答:


4

出口コストはTCOの一部です(T合計を意味します)が、システムの持続時間を事前に把握していないと、特定すること困難です。言い換えると、システムが1年間だけ使用され、1年後に52,000ドルかかるとわかっている場合、運用予算に1週間あたり1,000ドルを追加することで、システムをカバーできます。

そのモデルは、システムの寿命がわからない場合に使用できなくなります。理論的には、システムは永久に使用され続ける可能性があります。つまり、システムをシャットダウンするために費やされるお金はありません。現在考慮に入れているものはすべて今日のドルで計算されます。これらの数値は、プロセスを容易にする(または困難にする)労働率とテクノロジーの変化により、今から5年後に無意味になる可能性があります。

システムから移行するために何が必要かを顧客に知らせて、その時期になったときに交換を決定する際にそれを考慮してもらえるのが最善です。

(そして、今、この答えを書いたので、私はこれをオフトピックとして閉じるために投票することができます。)


出口コストがこのソリューションのTCOの一部である代わりに、それが次のソリューションのTCOの一部になることになります。私がそのように言った場合、これは奇妙に聞こえますが、私の経験では、システムの使用停止のコストは、現在のシステムのプロジェクト計画/予算ではなく、次のシステムのプロジェクト計画/予算の一部になっています。それは理にかなっていますか?
dvdvorle

1
私には理にかなっている、そしてそれは私がやってきた結論のほとんどです。すべてが終了して完了するまで、実際の合計を実際に算出することはできません。
Blrfl

「出口コスト」を正確に見積もることの難しさについては同意します。今日のお金の場合でも、それを提供することには価値があると思います。「これは難しくて時間がかかる」と「明日行われた場合、これはおそらく25000ドルから50000ドルの費用がかかる」と比較してください。
vaughandroid 2012年

@Blrfl、この質問を話題から外すものは何ですか?
ネオタンピル

1
@neontapir:問題の本質は本当にプロジェクト管理についてです。それがプログラムに関するものであるという事実は、実際にはプログラミングに関するものではありません。電話交換機やピザオーブンにも同じことが当てはまるでしょう。
Blrfl 2012年

2

YAGNIはその場所では素晴らしいルールですが、この場合に適用する必要があるかどうかはわかりません。ここでは、将来のコストを見積もっています。これ、将来の要件変更を考慮に入れるべきアクティビティです。あなたが実装を書いているなら、それは別の話になるでしょう!

原価計算を行うことをお勧めしますが、顧客がそれを行った理由を理解していることを確認してください。彼らがあまり技術的でなくても、「何か他のものを使うことをすでに考えているなら、それは良い解決策にはなり得ない!」という効果について彼らが言っても驚かないでください。

コスト見積もりを行う/提示する際に考慮すべき、さらに細かい側面がいくつかある場合があります。

  • データが将来別のシステムに移行される可能性はどのくらいありますか?
  • ソリューションベンダーが独自のデータ形式を変更して、将来のデータ移行がより簡単または困難になる可能性はありますか?もしそうなら、これはあなたのソリューションに影響を与えますか?
  • 後でデータを変更したくない場合でも、別の方法で表示/アクセスする可能性はありますか?私の経験では、これはよくあることです。

1

Excelファイルの状況に関するコメントから、私はそれを次のように見ています。

  • 現在の形式を変更しない(ソリューション1)
  • 現在フォーマットを解析し、それを別のフォーマットで保存する(おそらく/できればより適切/将来の準備ができている)の比較(ソリューション1 +解析ステップ、別名ソリューション2)

YAGNIはその解析ステップに適用されると思います。現在の構造に関する知識を保持していることを確認してください。ただし、まだ解析は実装しないでください。

さらに、解析されたデータ構造は、思ったほど柔軟ではない場合があります。要件は、さまざまな情報/ファイルを格納することにもなる可能性があります。つまり、テーブルを更新/拡張する必要があります。


明確にするために、現時点では解決策はありません(可能であれば解決策0)。彼らは現在、すべての情報を紙のファイルに保存しています。ドキュメント管理システムで既に「Excel」ファイルを使用している場合は、私はこの回答に心から同意しますが、選択肢はまだあります。
dvdvorle

または、ソリューション1の実装は安価であるため、それは関係ないと思いますか?
dvdvorle

私の要点は、ソリューション2をソリューション1の拡張機能と見なすことができる場合、その拡張機能が厳密に必要ではなくなったとYAGNIが適用すると信じています。
Jaap

あなたの言っていることがわかります。それは考えるべきことです。今は顧客のところに行くときだと思いますが、それが機能強化であるかどうかについて彼が何を考えているかを見てください。
dvdvorle

0

95%でない場合は、将来的に変更されると確信しています-ソリューション1-YAGNI =)

確かにそれはあなたの顧客と、この顧客のために何かをプログラミングした経験に依存します。


2
つまり、ソリューションが変更される可能性がある5%の確率に関連するコストは無関係であるということですか。
dvdvorle

つまり、このような感じです...「ヤグニ」の意味はご存知でしょう-残りは感じています=)
MikroDel

0

私の経験では、再発明されたホイールは、あなたが考えているよりも再発明するのに時間がかかり、外部ホイールは交換しやすい傾向があります。どちらの種類のホイールも、一度購入すると外観が悪くなる傾向があります。

#1は実装が簡単だと本当に思っていて、#2にどれくらい時間がかかるか疑問に思っているなら、私はその質問に耳を傾けるでしょう。今すぐ1番を実装し、大きなデザインについて考えてみてください。これは、後で再発明する場合に役立ちます。

逆に、#1が思ったほど簡単に見えなくなった場合は、#2にジャンプします。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.