- 追加された行はこの色です。
- 削除された行はこの色です。
「[[.NET 開発基盤部会 Wiki>http://dotnetdevelopmentinfrastructure.osscons.jp]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。
-[[戻る>技術]]
*目次 [#c82c91e7]
#contents
*概要 [#k3a69f40]
**期限 [#e59c8b04]
-1992年ウォード・カニンガムの[[経験報告>#icd9ac17]]による。
-「設計上の負債(design debt)」とも言う。
**内容 [#hf0da76e]
-技術的な「複雑さ」と「債務」を比較したもの。
-下記が引き起こす新しい比喩。
--行き当たりばったりなアーキテクチャ
--余裕のないソフトウェア開発
*詳細 [#z7261ac3]
現在の進捗のために、将来のキャパシティ(ソフトウェアの開発能力)を犠牲にする。
**経験報告 [#icd9ac17]
-最初のコードを出荷することは、借金をしに行くのと同じ。
-進行中のプロジェクトは、将来借金を返すコストを増大させている。
***小さな負債 [#t247ba5c]
小さな負債は、代価を得て即座に書き直す機会を得るまでの開発を加速する。
***大きな負債 [#i8843936]
危険なのは、[[設計上の借金>#ja68c950]]が返済されなかった場合。
-借金には利息がかかる。
-品質の良くないコードを使い続ける=無駄な利息を払い続けることになる。
-しまいには、借金の残高が減らなくなり、その利息も支払えなくなる。
**設計上の借金 [#ja68c950]
アーキテクチャの手抜きによるコスト
-設計
--不完全なオブジェクト指向
--複雑すぎて変更が難しいコード
-実装
--欠陥のある実装
--コンパイラの警告
--静的コード解析ツールの解析結果への対応
--ソースコード中の積み残し項目の解決
-その他
--文書化
--組織で共有されない知識
--テストコードの記述
**OSSでは [#i3f30178]
OSSでは、手元で変更したコードをプロジェクトに送らないことは技術的負債。
-手元で必要なメンテナンスをすることが「利息の支払い」にあたる。
-プロジェクトに送れば、他のユーザがメンテナンスしなくて済む。
*その他 [#e29133e8]
**テクノロジ or エンジニアリング [#o23049c2]
**[[エンジニアリング>#r4a0b27d]] or [[テクノロジ>#qef35381]] [#o23049c2]
***テクノロジ [#qef35381]
-巨神兵的早すぎるテクノロジ
-TPO / [[STP>STPマーケティング]]、的にハマってないテクノロジ
***エンジニアリング [#r4a0b27d]
***[[エンジニアリング>技術#p4ccdf68]] [#r4a0b27d]
未熟なエンジニアリング
-[[小さな負債:実装上の借金>#t247ba5c]]
-[[大きな負債:設計上の借金>#i8843936]]
***[[テクノロジ>技術#ta15ed31]] [#qef35381]
-巨神兵的早すぎるテクノロジ
-TPO / [[STP>STPマーケティング]]、的にハマってないテクノロジ
※ 合わないテクノロジを採用してしまう ≒ 未熟なエンジニアリングと言える。
**QCD [#hd533ce7]
高いQ(品質)のためには、
-一時的にCD(原価、納期)が犠牲になることがある。
-しかし、長期的に見ると、キャパシティ ≒ CD(原価、納期)の向上に繋がる。
***Q(品質) [#m4028caf]
低い品質は負債となり得る。
***CD(原価、納期) [#r4599aa4]
短期的な原価低減や短納期が負債の原因と成り得る。
**マーケティング [#sa4ee321]
本質から離れてマーケティングにも使われていると思う。
-How Marketers Can Save Companies From 'Technical Debt' ~
https://adage.com/article/digitalnext/marketers-save-companies-technical-debt/308481/
*参考 [#p83acadb]
-技術的負債 - Wikipedia~
https://ja.wikipedia.org/wiki/%E6%8A%80%E8%A1%93%E7%9A%84%E8%B2%A0%E5%82%B5
-「技術的負債」とは何か。原典とその対応策を探る - Publickey~
https://www.publickey1.jp/blog/13/post_232.html
-コードのクリーンアップ - 技術的負債の返済に役立つ 9 つの戦術~
https://msdn.microsoft.com/ja-jp/magazine/ee335722.aspx
-「技術的負債」に対する新しい見方~
https://www.infoq.com/jp/news/2008/09/tech-debt-wkshp
**Qiita [#r68897f0]
-技術的負債~
https://qiita.com/erukiti/items/9cc7850250268582dde7
-技術的負債とどうやって戦うか~
https://qiita.com/kamykn/items/ad687e772da454e3f614