Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

技術的負債との戦い方

558 views

Published on

小江戸らぐ 2017年12月のオフな集まり(2017-12-09)にて発表。
技術的負債との戦い方をまとめた発表。

Published in: Technology
  • Be the first to comment

技術的負債との戦い方

  1. 1. 1 技術的負債との 戦い方in 小江戸らぐ2017年12月のオフな集まり(2017-12-09) Iosif Takakura (@huideyeren)
  2. 2. 2 はじめに
  3. 3. 3 Sphinxが技術的負債に化けた話 SphinxCon 2017で発表してきました。
  4. 4. 4 こんな状態でした 1. Sphinxで社内マニュアルを作成 2. マニュアルを書ける人がプロジェクトから抜ける 3. マニュアルが技術的負債化 4. マニュアルは素のHTMLに書き直される 詳しくは を見てね。発表資料
  5. 5. 5 こんな反響が Re:VIEWのメンテナ、kmutoさんのコメント。 昨日の涙なしには見られない発表。PowerPointと Excel(&Word?)というのは結局、情報を電子的 に探す・見ることはなく、印刷後バインダに狭ん で積んでおく(二度と開くかはともかく)ことに 価値を見出されるということかなと思った — kmuto (@kmuto) #sphinxjp https://t.co/325cziZx4d 2017年11月29日
  6. 6. 6 こんな反響も 社内のドキュメントをSphinx で書いて技術的負債 になったっていうの、同じく経験ある。そのとき 得られた知見としては、カジュアルなドキュメン トを書くのにビルドが必要なツールは使うべきで ない、ということだった。 — もみじあめ(@momijiame) 2017年11月29日
  7. 7. 7 そしてこんな感じ Sphinxでドキュメント書いたら技術的負債になっ た話読んだけど、ボトムアップが必ずしもうまく 行かないのはそうだけど、周りも有名OSSぐらい docs読んで追いつこうと思わないの技術者なんだ しという感想もある。 — chroju (@chroju) 2017年11月30日
  8. 8. 8 技術的負債とは 「行き当たりばったりな設計」と 「余裕のないソフトウェア開発」が引き起こす まわりの人に不幸を撒き散らす悲劇 雪だるま式に増えていくが 組織から離れることによって まるっと人に押しつけることが可能 だが、やっかいなことに エンドユーザーはヤバさを認識できない
  9. 9. 9 技術的負債が引き起こすもの 1. 工期が延びる 2. 潜在的なバグが増える 3. プロジェクトメンバーの技術力が下がる 4. プロジェクトメンバーの士気が下がる コンプライアンスに悪影響 人的資源の流出にもつながる 今戦わなくても、将来的に戦う必要がある。
  10. 10. 10 ニコニコ動画と技術的負債 ドワンゴ川上量生会長のインタビュー 4年前にニコ動の開発が行き詰まったんです。 「変更に変更を重ねてきたけど、これ以上は無理 だ、何の機能追加もせずつくりなおしたい、2年 間は何も変えずに現状維持にしたい」と開発の責 任者が言ってきた。 そう言われて困ったんですよ。2年間新しいサー ビスが出せなければウェブサービスとしてニコ動 に本当の寿命が来るだろうと。どうしようかを悩 んだすえに決めたのが、世界で誰もやってない 「イベントでごまかす」という作戦です。それが まさかの大成功をしたんですよ。
  11. 11. 11 しかし、どうなったか で様々な意見が。Togetterのまとめ ニコ動の社長のインタビューまじで酷い — 夕霧(@l346l) pic.twitter.com/HKopBX4zKT 2017年12月5日 とか。 結局、 。ニコ動から多くの顧客が流出
  12. 12. 12 弊社で今取り組んでいる某案件 1. ひどい設計 2. 最新の手法に耳も貸さない企業文化 3. テスト駆動開発?何それ。 4. そもそもローカルに環境作れません。 5. ドキュメントはExcel方眼紙ね。
  13. 13. 13 辛みがたまる とにかくなんとかしてくれと上司にかけあう 「余裕ないのでどうにもできない」
  14. 14. 14 技術的負債と戦うには どうしても避けられないことではあるが…… 正しい技術を選択すること 費用対効果が最終的にプラスになること すべてのステークホルダーの合意を得られること
  15. 15. 15 独断での技術導入はたいていうまくいかない 組織がボトムアップ的改善を受け入れる余地がないと厳しい 導入した人にコミュニケーションスキルがないと厳しい まわりの人についていこうと思わせられる能力がないと厳しい
  16. 16. 16 技術的負債と戦うのに必要なスキル コミュニケーションスキル 問題があると声を上げなければ気付かれない すべてのステークホルダーを説得しなければならない コスト意識 費用対効果を出せることが大事 観察眼 システムだけではなく組織にも目を向ける必要がある
  17. 17. 17 最後に 逃げてしまうのは簡単だ。 だけど、戦えばお互いwin-winになる。 我々エンジニアの敵は上司でも営業でも顧客でもない。 我々エンジニアが倒さねばならない敵は問題なのだ! さあ、問題を解決しよう!

×