見出し画像

複式簿記で考える技術的負債

「技術的負債」と聞くと何を思い浮かべるでしょうか。
時間がないから…とその場しのぎで実装したコードや、仕様をドキュメントに整理していないことを指すこともあります。

Wikipediaには以下のような定義が書かれています。

技術的負債(英: Technical debt)とは、行き当たりばったりなソフトウェアアーキテクチャと、余裕のないソフトウェア開発が引き起こす結果のことを指す新しい比喩である[1]。「設計上の負債(design debt)」とも言う。

この「技術的負債」という言葉、単にリファクタリングが必要な状態を指して使われていたりしますが本当にそうでしょうか。

「負債」といえば会計だよね、ということで会計的なアプローチでこの「技術的負債」とは一体何なのかを整理したいと思います。

複式簿記とは

まず前提知識として複式簿記とは。(既にご存じの方は読み飛ばして下さい)

企業の経済活動を数値に置き換えて記録する作業である簿記には「単式簿記」と「複式簿記」があります。

「単式簿記」はある取引を1つの勘定科目に割当てて記録していきます。基本的には一般的な家計簿のように入出金のみを記録していくものです。

例1:12月8日に電気代を10,000円、現金で支払った場合
12月8日 支出 電気代 10,000円

例2:12月25日に商品30,000円を売り上げて、現金でもらった場合
12月25日 収入 商品売上 30,000円

例3:12月27日に金融機関から100,000円の借入れをした場合
12月27日 収入 借入金 100,000円

例4: 12月28日に土地100万円を、現金で購入した場合
12月28日 支出 土地 1,000,000円

一方の「複式簿記」はある取引を借方(左側)と貸方(右側)に分けて2つの勘定科目を記録していきます。原因と結果が並ぶイメージです。単式簿記と違い負債の状況や資産の状況をより詳細に把握することができます。

例1:12月8日に電気代を10,000円、現金で支払った場合
12月8日  電気代 10,000円 / 現金 10,000円

例2:12月25日に商品30万円を売り上げて、現金でもらった場合
12月25日  現金 300,000円 / 商品売上 300,000円

例3:12月27日に金融機関から100,000円の借入れをした場合
12月27日 普通預金 100,000円 / 借入金 100,000円

例4: 12月28日に土地100万円を、現金で購入した場合
12月28日 土地 1,000,000円  / 現金 1,000,000円

例えば例1と例4はともに現金を支払っていますが、例1は電気代としてなくなってしまったお金ですが、例4は現金を支払う代わりに土地という資産を得ています。
複式簿記ではどこからともなく現金を手に入れたり、何故か分からないけど現金を支払っていたりということは原則なく、資産や負債の増減の原因をもう片方に記録していくという特徴があります。
そして単式簿記ではこのような現金以外の資産の増減を把握することが苦手です。

複式簿記においては、借方、貸方に記録される取引の要素5つ(資産、負債、純資産、収益、費用)があります。それぞれに増加と減少のパターンが存在していて、取引ごとに仕訳という作業で分類していきます。それらを最終的にまとめると貸借対照表(B/S)と損益計算書(P/L)になります。

画像1

詳しくは以下の記事を参考にして下さい。


技術的負債を複式簿記で捉えると

さて、複式簿記についてざっくり理解できたところで、技術的負債の増加を複式簿記で考えるとどうなるでしょうか。

複式簿記で考えてみるというのはまさに技術的負債がどこからともなく勝手に増加するということはなく、借方には必ず原因となる要素が入るだろうという前提に立っています。

負債の増加の原因となるのは主に以下のパターンです。

1. 資産の増加
2. 負債の減少
3. 費用の発生

それぞれについてどんなケースが考えられるでしょうか。

パターン1. 資産の増加

会計においては借入金という負債を増加させる代わりに、現金という資産を増加させるというパターンがこれに当たります。
プロダクト開発においては、技術的負債を増加させる対価として資産の増加、新しい機能などの価値を増加させていると考えることができます。
つまり技術的負債とは単にリファクタリングが必要な状態を指すわけではなく、何かしらの価値を生み出す過程で生まれた、暫定的な対応のようなものを指すということです。

パターン2. 負債の減少

会計においてはより利率の低い短期借入金で長期借入金を振り替えるケースがこれに当たります。短期借入金を新たに借りて(負債の増加)、長期借入金を返済する(負債の減少)というイメージです。
プロダクト開発においては、「借入金の利率」は将来払わなくてはならないツケ(リファクタリングに必要なリソースなど)が時間の経過とともにどの程度増えていくかという風に言い換えられると思います。つまり完全に技術的負債を返済するソリューションではないものの、このツケの利率が抑えられる実装をすることで(短期借入金の増加)、ツケの利率が高い実装を代替(長期借入金の減少)するパターンです。

パターン3. 費用の発生

技術的負債増加の借方としての費用の発生はどんなものがあるのかは思いつきませんでした…。もし思いつく方いたらコメント下さい。
実際の会計では退職給付引当金や貸倒引当金などの負債の増加させて、将来的な損失の原因が発生している会計期間に費用を計上していくパターンがこれに当たります。
ついでなので説明しておくと、例えば退職金は従業員が退職するときにウン百万円という大金を払うことになりますが、退職時に費用を発生させるとその会計年度に莫大な費用が計上されてしまいます。更に事前に積み立てておかないと払う現金がないなんてことにもなりかねません。
従って退職給付金引当金として事前に積み立てながら、退職給付金の発生の原因であるその従業員が働いている期間に渡って費用を計上していくいう考え方です。

まとめ

「技術的負債」という概念を複式簿記の考え方を使って整理してみました。
まとめてみるとまあそうだよねという感じですが、このようにある枠組みに当てはめて考えてみるのは物事を多角的に見るという点においてはとても良い経験だと思いました。

今度はもう少し簿記について詳しく書いてみようかなと思います。


この記事が参加している募集

#最近の学び

182,162件

この記事が気に入ったらサポートをしてみませんか?