「[[.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]
アーキテクチャの手抜きによるコスト

***設計 [#n83808b8]
-不完全なオブジェクト指向
-複雑すぎて変更が難しいコード

***実装 [#t36bcb6b]
-欠陥のある実装
-コンパイラの警告
-静的コード解析ツールの解析結果への対応
-ソースコード中の積み残し項目の解決

***その他 [#w1e0c9da]
-文書化
-組織で共有されない知識
-テストコードの記述

**借金の返済方法 [#mcd3b982]

***リファクタリング [#ucf63a4c]
ドメイン理解と現時点のプログラムの乖離の解消

***リアーキテクティング [#i91cf8e5]
[[ドメイン駆動設計(DDD)>クリーン・アーキテクチャ#h6ae72f7]]における~
「より深い洞察へ向かうリファクタリング」は、~
ファクタリングにとどまらず、リアーキテクティングも含まれる。

**OSSでは [#i3f30178]
OSSでは、手元で変更したコードをプロジェクトに送らないことは技術的負債。
-手元で必要なメンテナンスをすることが「利息の支払い」にあたる。
-プロジェクトに送れば、他のユーザがメンテナンスしなくて済む。

*その他 [#e29133e8]

**[[エンジニアリング>#r4a0b27d]] or [[テクノロジ>#qef35381]] [#o23049c2]

***[[エンジニアリング>技術#p4ccdf68]] [#r4a0b27d]
未熟なエンジニアリング
-[[小さな負債:実装上の借金>#t247ba5c]]
-[[大きな負債:設計上の借金>#i8843936]]

***[[テクノロジ>技術#ta15ed31]] [#qef35381]
-巨神兵的早すぎるテクノロジ
-TPO / [[STP>STPマーケティング]]、的にハマってないテクノロジ

※ 合わないテクノロジを採用してしまう ≒ 未熟なエンジニアリングと言える。

**QCD [#hd533ce7]
高いQ(品質)のためには、
-一時的にCD(原価、納期)が犠牲になることがある。
-しかし、長期的に見ると、キャパシティ ≒ CD(原価、納期)の向上に繋がる。

***Q(品質) [#m4028caf]
低い品質は負債となり得る。

***CD(原価、納期) [#r4599aa4]
短期的な原価低減や短納期が負債の原因と成り得る。

**マーケティング的観点 [#sa4ee321]
本質から離れてマーケティングにも使われていると思う。


***[[アーキテクチャ宇宙飛行士]]との関連 [#nd6f390b]
この中で言われている、

>「何故か人々は"非常に"感銘を受ける。」

が、プロモーションに利用されている。

***開発ールの営業に使われる可能性がある。 [#e82f7e3f]
「[[技術的負債 高速開発>https://www.google.com/search?q=%E6%8A%80%E8%A1%93%E7%9A%84%E8%B2%A0%E5%82%B5+%E9%AB%98%E9%80%9F%E9%96%8B%E7%99%BA]]」などのキーワードで検索してみよう。

*参考 [#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

-【翻訳】技術的負債という概念の生みの親~
Ward Cunningham 自身による説明 - t-wadaのブログ~
https://t-wada.hatenablog.jp/entry/ward-explains-debt-metaphor

**Qiita [#r68897f0]
-技術的負債~
https://qiita.com/erukiti/items/9cc7850250268582dde7

-技術的負債とどうやって戦うか~
https://qiita.com/kamykn/items/ad687e772da454e3f614

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS