勘と経験と読経

略すとKKD。ソフトウェア開発やITプロジェクトマネジメントに関するあれこれ。

効率よく経験値を稼げ!『42の失敗事例で学ぶチーム開発のうまい進めかた』を読んだ

読むのがホネな技術書やビジネス書を取り上げて2週間の読書期限を課して読んでアウトプットする仮想読書会「デッドライン読書会」の第69回。同僚と読書期限を約束することによって積読が確実に減るという仕組み。過去記事はこちら

さて、今回読む本は「ソフトウェア開発現場の「失敗」集めてみた。 42の失敗事例で学ぶチーム開発のうまい進めかた」である。わりと好物な切り口! しかし現代的というか、タイトルが長い~

『42の失敗事例で学ぶチーム開発のうまい進めかた』の概略

表題のとおり、ソフトウェア開発のよくある失敗事例を通じてどうすべきだったかを学んだり考える本である。著者がメーカー系の出身ということで、コンテキストをまとめるとこんな感じ。

  • 組み込み系、デバイス制御系の製品に関するソフトウェア開発
  • 自社開発(受託開発ではない)
  • 委託開発もしているが部分的で、基本的には内製開発
  • 大規模(複数チーム並列)ではないサイズの開発
  • 組織文化はブラックではないが、ほどほど理不尽

このコンテキストと読者の距離が近ければ共感度は高いだろう。


「はじめに」で著者はこう書いている。

  • 失敗の経験が危険を検知する
  • (しかし)失敗自体はマイナスでしかない

 リーダーとしてよい判断を下すには、自分の中に豊富な失敗のケースを持っておくことが必要です。一方、失敗を豊富にやらかしていると失敗を生かす前に会社をクビになってしまうというジレンマがあります。

 そこで新しくソフトウェアプロジェクトのリーダーになった皆様、もしくはリーダーを目指す皆様に、著者の豊富な失敗経験から作った「失敗事例集」を提供できればと考えました。この「失敗事例集」を皆様がよい判断を下すためのガイドとして活用いただきたいと思います。当然、本書と全く同じ失敗はあり得ないと思いますが、それぞれの失敗をパターンとして覚えておけば、きっと役に立つはずです。
ソフトウェア開発現場の「失敗」集めてみた。 42の失敗事例で学ぶチーム開発のうまい進めかた、はじめに より

この考え方は大賛成だ。

ほどよく抽象的なレベルの42のパターン

さて、本書の目次は出版社のサイトなどでも閲覧できるので、興味があれば参照してみるとよい。上級者であればタイトルを見ればだいたいなにがテーマかわかるだろう

全体としては、抽象度がほどよく、誰にでも考えさせることができる記載になっているという印象だ。

というわけで新人エンジニアでも若手でも十分楽しめるのではないだろうか。
むしろ、若手を含むチームで読書会などをして、チームの教養として本書を取り込むとよいだろう。
事例の表題がパターン名のようになっているので「あー、これは42事例本の『初期企画至上主義』になってませんか」「そうかもー!」といった会話がチーム内でできると良さそうだ。

一方でベテランでも改めて通読することで、忘れていたことを思い出して「ウッ!」と感じることもできる(とりあえず、わたしはそうだった)。
なかなか興味深い本である。

他人の失敗から学ぶのはスキルアップの早道

著者の言うとおり、自分のプロジェクトでみずからやらかして経験値を得るのはリスクも高いし非効率だ。だから、他人の失敗を疑似体験するのが良い
本書で(失敗事例が)もの足りない人もいるだろうと考えて、思いつく限りの類書を挙げておこう。

闘うプログラマー ビル・ゲイツの野望を担った男達

デスマーチの元祖といえるMicrosoftWindowsNT 3.1の開発に関するドキュメンタリーである。さすがに古いが、現代の開発でも活用されているプラクティスがけっこう使われていて興味深い。とりあえずWikipediaを見ていくと匂いは感じ取れるだろう。

The Unicorn Project

DevOpsの本なはずなのだけど、前半がホラーなプロジェクトのドキュメンタリーになっている。以前に本ブログで取り上げているので興味があればどうぞ

IT業界の病理学

こちらは翻訳書ではなく、日本のIT業界の問題あるあるを病理学風に整理するというエッセイ集。以前に本ブログで取り上げているので興味があればどうぞ

アンチパターン―ソフトウェア危篤患者の救出

残念ながら絶版の、AntiPatternという本の訳書。Wikipediaアンチパターンに書かれているような、味わい深くナイスネーミングな問題例が列挙されている。この本は大好きです

というわけでこの読書は終わり。
さて、次は何を読みましょうかね……
積んである本だと、このあたりを消化したい感はある

あと未購入だけど話題の本だとこのあのあたりも読みたい

読むべき本は尽きないのであった

コミュニケーションの質を上げろ!『組織を変える5つの対話』を読んだ

読むのがホネな技術書やビジネス書を取り上げて2週間の読書期限を課して読んでアウトプットする仮想読書会「デッドライン読書会」の第68回。同僚と読書期限を約束することによって積読が確実に減るという仕組み。過去記事はこちら

さて、今回読む本は「組織を変える5つの対話 ―対話を通じてアジャイルな組織文化を創る」である。

なお私は電子版で読む派なのでよくわからないのだが、物理書籍派のバディから「けっこう分厚いっす」というタレコミがあったので今回は1週間延ばして3週間で読んだ。確かに2週間はちょっと難しかったかも。

『組織を変える5つの対話』の概略

ひとことで言うと、アジャイル開発を下敷きに「組織内部のコミュニケーションの質を上げる」ことにフォーカスをあてた本である。よって説明に利用される事例もソフトウェア開発プロジェクトではあるがアジャイル色は薄い。メンバー全員が効果的に働く自律的なチームを実現するために、どのような点に留意してコミュニケーションをすべきかという課題は様々な仕事で応用が聞くだろう。そういう意味では誰にでも有用な本だと思う。

一方で、そのようなチーム構築を目指す必要がない仕事も存在する。例えば(私が所属しているような)受託開発を行うSIerである(ぎゃふん)。ただ、そういった場合でも活用できるテクニックや考え方が参考になるので読む価値はあるだろう。

訳者の和智右桂さんの紹介がより詳しい(そして正しい)。
digitalsoul.hatenadiary.org

テイラー主義からの脱却

本書の大きな流れの根底には、テイラー主義からの脱却というものがある。

自分たちがどう変わるべきかを理解するために、自分たちが育った文化を理解しましょう。本章で述べるように、私たちはまだソフトウェア工場という大量生産のパラダイムからまだ脱却しきれていません。
組織を変える5つの対話 ―対話を通じてアジャイルな組織文化を創る、1章 ソフトウェア工場からの脱却 より

テイラー主義はもはやあらゆるところで語られているのだけれども、本書はコミュニケーションの課題に着目して再整理がされており新鮮であった。詳細は書籍を手に取っていただくとして、要旨はこんなところだろう。

  • 工場の生産性向上のためにテイラー主義(科学的管理法)が誕生
  • 工場で機械式組み立てラインのために編み出されたテイラー主義が、ソフトウェア産業のオフィスに持ち込まれた
    • 組み立てラインのないソフトウェア産業において、組み立てラインにかわるものとして「紙」が導入された
  • 文書駆動のソフトウェア開発が追求されるが、うまくいかなかった
  • 人間中心アプローチへの回帰(アジャイル、DevOps等)

ただ著者によれば、アジャイル開発を採用しているにも関わらず、マインドセットやコミュニケーションの質が従来の(テイラー主義に影響を受けた)文化のままであるという事例も多いという。そういった事例のメタファーとして著者は「フィーチャー工場」をあげている。ここから脱却するためにはコミュニケーションの質を大きく改善しなければならない、というのが著者の主張である。異論はない。

『組織を変える5つの対話』は、日本のソフトウェア産業での活用は可能か

というわけで本書は大変に良い本なのだけれども、一方で日本のソフトウェア産業で活用できるかというと色々と課題もありそうだ。

冒頭でも少し触れたが、新たなデジタルツールを活用した新規事業や新しいテックカンパニーであれば問題はないだろう。しかし(この言い方はちょっと語弊があるのだけれども)最近JTCと呼ばれるような、SIerやソフトウェア開発サービスを提供する企業やチームにとっては、少し難しそうではある。受発注の関係でビジネスオーナーとデベロッパーが分断されているようなケースがそれにあたるだろう。

とはいえ本書で紹介されているテクニックを個別の課題に適用するという使い方もある。「人のためのテスト駆動開発」、「辻褄合わせからの脱却」、「共同設計」、「ウォーキング・スケルトン」、「指示に基づく柔軟対応」といったテクニックはそれぞれが興味深く、シチュエーションによって利用できそうだ(個人的に気に入ったし、すぐに使いそうなのは「人のためのテスト駆動開発」である)

2024年上半期に読んだ本まとめ

2024年1月~6月に読んだ本のまとめ。カウント対象は期間中に読み終わったものに限り、読みかけの本は対象外としている。あとコミック、漫画雑誌類もけっこう読んでいるのだけれども、これは除外。
この6カ月では68冊の本を読んだらしい。感覚的には平常運転。

いつもどおり半期で読んだ本の中で良かったものをピックアップしてみる。

文芸書のおすすめ(一般編)

万人におすすめしたいとすれば村上春樹さんの最新作である「街とその不確かな壁」になる(内容も文章も含めて完璧な小説!)だろうし、ガツンと頭を殴られるようなインパクトを感じたいのであれば賞も取った「ハンチバック (文春e-book)」も素晴らしいが、この半年の読書を振り返ると、赤川次郎さんのこの連作をピックアップしたい。

「ふたり」は映画にもなった赤川次郎さんの代表作で、1989年の作品である。当時の自分が読んだのかは記憶がおぼろだけれど、今改めて読むと「そうそう、赤川次郎さんの小説ってこんな感じだった!」という良い小説である。なつかしさと、小説そのものの面白さが楽しいのだ。
そして「いもうと」。そもそも「ふたり」を改めて読んだのは本作(2022年刊)が発表されたからなのだ。30年ぶりに出た続巻ということで、さてどうだろう。これが読み始めたらびっくりである。なぜなら、マジで何事も無かったように、つづきなのだ。30年ぶりに出た伝説の小説の続編だったら、何か大きな仕掛けを予想してしまうのではないだろうか。仕掛けはない。おもむろに前作の終わったところから中断もなく日常が続いているのである(ただ、その後に作品内で10年くらいの年月は流れていく)。

別にそういったSFではないのだけれども、タイムトラベル感のある良い読書ができるので、未読であればおすすめしたい。

文芸書のおすすめ(趣味のSF編)

SF小説じゃねーだろ!というつっこみを受けそうだけど、これ。ほぼSF。

有名なイーロン・マスク氏の2023年4月までの伝記であるが、キャラが立ちすぎていて、イベントが多すぎて大変に面白いのだ。特に下巻は時間の流れがおかしいというか事件が起きすぎている。もちろん現在進行形の話ではあるのだけれども、続巻には「三体」のような驚天動地の展開が期待されるので、ほぼSFだろう。楽しむなら早くに読んだ方がよさそう。

教養書のおすすめ

この本は大人は全員読んだ方がいいと思うくらい良い本だった。

倫理学と言われると一般的には「道徳」を想起させてウェーッとなる人も多そうな気がするが、ちゃんと学ぶとたいへん役に立つのだ。本書でもこう書かれている。

まえがきに書いたように、この本は倫理学の専門知識を学ぶためのものではありませんでした。では、この本を読んで何が分かる、何ができるようになるか。それは、簡単に言うと、あれこれあーだこーだと迷うような場面で倫理的な判断ができて答えが出せるようになる、少なくとも、自分たちが人生を生きているいろんな場面の意味が理解できるようになるということです。
ふだんづかいの倫理学、序章 この本の使い方 より

ビジネス書のおすすめ

鬼時短―電通で「残業60%減、成果はアップ」を実現した8鉄則」は有用度が高かったのだけど感想を書いたので、ここでは別の本を取り上げたい。

最近もよく話題となるジョブ型雇用だが、12年前に著者の 濱口さんが「新しい労働社会」という本で取り上げたのが流行(?)のきっかけだったようである。一方で、著者から見るとジョブ型雇用の誤解もはなはだしい。というわけで改めて日本の労働問題を整理するという本であるが、切れ味鋭く大変に参考になるものであった。その射程は雇用問題だけでなく、学び直しやリスキリング、高齢者雇用、ワークライフバランスからメンタルヘルスまでに至っている。社会や会社に対して不満があったら、まず読んでおくと良さそう。新書なので気軽に読めるのもポイントは高い。

技術書のおすすめ

有用性という意味では、長らく積んでいた「ソフトウェアアーキテクチャの基礎 ―エンジニアリングに基づく体系的アプローチ」や「詳解 システム・パフォーマンス 第2版」などが読めたのは良かった。どちらも大変に参考になるが読むのも大変だった。

また、以前から気になっていた「リーダーの作法 ―ささいなことをていねいに」はマネージャ向けのエッセイ集ということで気軽に読めるし気づきは多い良い本だという感想。

あなたが手にしているこの本(紙であれ電子書籍であれ)は、私がマネージャーになった最初の数年間に、しっかりとしたサポートを受けられなかったことへの不満から生まれたものです。
リーダーの作法 ―ささいなことをていねいに、第I幕の冒頭より

この書き出しが期待値を高めたが、内容は期待以上だった。おすすめ。

この半期の振り返り

最近は意識して新書を手に取るようにしるので、結果として読んだ本数は増えている。近著で話題になった本だけでなく古い岩波新書については読んでみたいリストが詰みあがっているので、これを減らしていきたいのだ。もちろん新しい本も読んでいくのだけれども名著にも当たっていきたい。最近だと「なぜ働いていると本が読めなくなるのか (集英社新書)」(こちらも読みたいのだが、まだ未読)が話題だが、まあ趣味なので気にせずやっていこうと思う。今年の後半は、積んでいる大著「万物の黎明~人類史を根本からくつがえす~」を読み切りたい。いやー楽しみだ。

2024年上半期に読んだ本

  1. 詳解 システム・パフォーマンス 第2版
  2. ふだんづかいの倫理学
  3. 熟達論―人はいつまでも学び、成長できる―
  4. 三つの棺〔新訳版〕
  5. All You Need Is Kill (集英社スーパーダッシュ文庫)
  6. 今を生きる思想 宮本常一 歴史は庶民がつくる (講談社現代新書100)
  7. 批評理論入門: 『フランケンシュタイン』解剖講義 (中公新書 1790)
  8. 方形の円 偽説・都市生成論 (創元SF文庫)
  9. ラウリ・クースクを探して
  10. リデザイン・ワーク 新しい働き方
  11. ツインスター・サイクロン・ランナウェイ2 (ハヤカワ文庫JA)
  12. イーロン・マスク 上 (文春e-book)
  13. なぜ私たちは燃え尽きてしまうのか
  14. オリーヴ・キタリッジの生活 (ハヤカワepi文庫)
  15. 独学の思考法 地頭を鍛える「考える技術」 (講談社現代新書)
  16. イーロン・マスク 下 (文春e-book)
  17. NHK 100分 de 名著 ローティ『偶然性・アイロニー・連帯』 2024年 2月 [雑誌] (NHKテキスト)
  18. 会話を哲学する~コミュニケーションとマニピュレーション~ (光文社新書)
  19. 標本バカ
  20. 世界標準の経営理論
  21. ソフトウェアアーキテクチャの基礎 ―エンジニアリングに基づく体系的アプローチ★書評①
  22. 実験の民主主義-トクヴィルの思想からデジタル、ファンダムへ (中公新書 2773)
  23. 目の見えない白鳥さんとアートを見にいく (集英社インターナショナル)
  24. 目的への抵抗―シリーズ哲学講話―(新潮新書)
  25. ジョブ型雇用社会とは何か: 正社員体制の矛盾と転機 (岩波新書 新赤版 1894)
  26. NOVA 2023年夏号 (河出文庫)
  27. 街とその不確かな壁
  28. マルドゥック・アノニマス 4 (ハヤカワ文庫JA)
  29. 自由と規律: イギリスの学校生活 (岩波新書 青版 17)
  30. マルドゥック・アノニマス 5 (ハヤカワ文庫JA)
  31. 冒険の書 AI時代のアンラーニング★書評
  32. 仕事と家族 - 日本はなぜ働きづらく、産みにくいのか (中公新書)
  33. INSPIRED 熱狂させる製品を生み出すプロダクトマネジメント
  34. ポートスキャナ自作ではじめるペネトレーションテスト ―Linux環境で学ぶ攻撃者の思考
  35. 数学入門 上 (岩波新書)
  36. 楽園とは探偵の不在なり (ハヤカワ文庫JA)
  37. サーバントリーダーシップ
  38. 数学入門 下 (岩波新書)
  39. 岩波新書をよむ―ブックガイド+総目録 (岩波新書)
  40. ハンチバック (文春e-book)
  41. ランサムウエア追跡チーム はみ出し者が挑む、サイバー犯罪から世界を救う知られざる戦い
  42. ちっちゃな科学 - 好奇心がおおきくなる読書&教育論 (中公新書ラクレ 551)
  43. ふたり (新潮文庫)
  44. 今を生きる思想 西田幾多郎 分断された世界を乗り越える (講談社現代新書)
  45. いもうと(新潮文庫)
  46. データモデリングでドメインを駆動する──分散/疎結合な基幹系システムに向けて★書評①
  47. マルドゥック・アノニマス6 (ハヤカワ文庫JA)
  48. 客観性の落とし穴 (ちくまプリマー新書)
  49. チク・タク・チク・タク・チク・タク・チク・タク・チク・タク・チク・タク・チク・タク・チク・タク・チク・タク・チク・タク (竹書房文庫)
  50. 大規模データ管理 ―エンタープライズアーキテクチャのベストプラクティス
  51. アジャイル品質パターン「QA to AQ」 伝統的な品質保証からアジャイル品質への変革(CodeZine Digital First)
  52. ルワンダ中央銀行総裁日記 [増補版] (中公新書)
  53. わたしたちの怪獣 (創元日本SF叢書)
  54. 未来経過観測員 (角川書店単行本)
  55. マルドゥック・アノニマス7 (ハヤカワ文庫JA)
  56. 数理モデル思考で紐解くRULE DESIGN -組織と人の行動を科学する-
  57. 鬼時短―電通で「残業60%減、成果はアップ」を実現した8鉄則★書評
  58. マルドゥック・アノニマス8 (ハヤカワ文庫JA)
  59. 人生が整うマウンティング大全
  60. 皆勤の徒 -Sogen SF Short Story Prize Edition- 創元SF短編賞受賞作
  61. リーダーの作法 ―ささいなことをていねいに
  62. 組織の<重さ>―日本的企業組織の再点検 (日本経済新聞出版)
  63. 歴史とは何か 新版
  64. 生物から見た世界 (岩波文庫)
  65. 観光客の哲学 増補版 ゲンロン叢書
  66. ダリア・ミッチェル博士の発見と異変 世界から数十億人が消えた日 (竹書房文庫)
  67. ファラオの密室
  68. 宮本常一『忘れられた日本人』 6月 (NHKテキスト)

過去の読書ふりかえり記事

あと過去にこんなのも書きました

この本を読んだ上司の元で働きたい「鬼時短」を読んだ感想

読むのがホネな技術書やビジネス書を取り上げて2週間の読書期限を課して読んでアウトプットする仮想読書会「デッドライン読書会」の第67回。同僚と読書期限を約束することによって積読が確実に減るという仕組み。過去記事はこちら

さて、今回読む本は「鬼時短―電通で「残業60%減、成果はアップ」を実現した8鉄則」である。

なお一応書いておくと、ぶっちゃけこの本に書かれている某企業のグループ会社勤務ですが、様々な意味で関係ございませんし本記事は個人の感想です(本記事のタイトルも含む)。

この本を読んだ上司の元で働きたい

さて本書は文字通り「時短の本」なのだが、テクニック本ではなく、社長が説教される本である。
そしてそのロジックが某大企業の生々しくて切羽詰まったエピソードを通じて語られており、心に染み入る。そしてなにより、某企業がやり切ったという実績もあるのである。強い。

わたしは本書を読み終わってから知ったのだが、著者の現職企業が公開しているYouTubeの動画を見るのが本書を理解する上では手っ取り早い(約1時間の動画)
裏側というタイトルになっているが、本書の要点がちゃんと紹介されているプレゼンテーションである。
youtu.be

というわけで本書は大変に良い本だった。
しかし、ひとつ問題がある。それは
わたしが社長ではない
ということである。

しかしちょっと待て。自問しよう。
おまえは社長ではないかもしれないが、
お前にはチーム(部下)があるだろう

そうだ。だから社長以外のリーダー全員に読む価値はある。

部下に丸投げをせず、自らの責任を果たせ

前述の動画でも紹介されているのだけれども、本書の出版社ページから「鬼時短【23の「やること」と58の「チェックポイント」リスト】」はまるまるダウンロード可能である。

そこに書かれていることを抽象化すると「部下に丸投げをせず、自らの責任を果たせ」ということになるだろう。
そしてマネジャーになってしまうと(偉くなったという錯覚もあり)間違ってしまいがちなことでもある。

  • 方針だけ決めて あとは「うまくやれ」
  • わからないことがあったらオレに「聞いて」

ではダメということが本書でもたびたび強調されている。
本書のテーマは「全社単位の時短/業務改革」であるからこそ、想定読者は経営者となっている。しかし同じようなシチュエーションは部署やチーム単位でもいろいろとあるだろう。生産性の向上やコスト削減、リードタイムの短縮など。今ではFour Keysがどうしたこうしたという話もある。

本書が語ることは、「やりたかったら、自分で責任をもってやれ」である。

というわけで、コンパクトで熱いメッセージが込められており、本書はとても刺激的であった。今後 周囲の人に勧めていく予定。
さて、次は何を読みましょうかね。

「データモデリングでドメインを駆動する」を読む Part.2

読むのがホネな技術書やビジネス書を取り上げて2週間の読書期限を課して読んでアウトプットする仮想読書会「デッドライン読書会」の第66回。同僚と読書期限を約束することによって積読が確実に減るという仕組み。過去記事はこちら

さて、今回は前回に引続き「データモデリングでドメインを駆動する──分散/疎結合な基幹系システムに向けて」である。前回、前半の第2部まで読んだが、今回は残りを最後まで読んだ。

「データモデリングドメインを駆動する」はレコード駆動設計(?)の本

前回の記事では本書を以下のように紹介した。

さて、(まだ半分しか読んでいないけど)本書は概ねこのような本である

  • 既存の基幹系システムを概観し、課題を指摘した上でよりよい基幹システム像を提言する(第1部)
  • 基幹システム(SoR)を、活動のシステム(SoA)と経営管理のシステム(SoM)に大きく分離し、データアーキテクチャレベルで検討する(第2部)
  • 横断的な関心事となりそうな重要要素について整理検討する(第3部)※まだ読んでない
  • データモデリングの基礎を再考する(第4部)※まだ読んでない

今回通読し、あらためて本書は(このような表現をされてはいないのだけれども)レコード駆動設計の本という印象を持った。

  • 本書で通底するテーマはビジネスの核心としての「帳簿」である。そういう意味では帳簿駆動設計になるのだが、帳簿という言葉の印象もまた広すぎるので、あえて言うなら「(ビジネス)レコード駆動設計」と考えるのが個人的には良さそうに思えたのだった。
  • 類似のコンセプトは、業務設計に関する素晴らしいエッセイ集である「Web世代が知らないエンタープライズシステム設計」で示される「帳簿組織を意識した設計(帳簿設計)」というコンセプトの詳解版とも言えるだろう。
  • ドメイン駆動設計(DDD)の良さと重要性は認めつつ、その危うさを指摘し、エンタープライズ企業システム設計における要点を、今は薄れつつあるデータ中心設計(DOA)から展開した設計論で拡張している。

かなりハイレベルな内容を扱っているので、ビギナーにはお勧めできない一方で、一度でもエンタープライズ企業システム設計に関わり悩んだ人であれば、非常に大きな学びが得られる本だと思う。
またエンジニアではなくビジネスユーザーの立場で、要件定義やデータ設計に課題感がある人にも(ちょっと難しいけれど)ぜひ目を通して欲しい本である。

上流工程でデータモデリングが軽視されがちな問題

というわけで本書は極めて良い本なのだけれども、一方で上流工程でデータモデリングはあいかわらず軽視されがちである。これを何とか出来ないものか
DXブームとアジャイル開発手法の追い風もあって、現在主流の要求分析の手法はユーザー中心的なアプローチである

  • ユーザー中心的なアプローチとは、ユーザーストーリーやそれに類する要求分析手法のこと
    • もちろんこの手法は誤りではない。機能中心の分析に比べれば極めて適切な進歩ではある
    • しかしエンタープライズ向けの基幹システム設計には向いていない。この点についての理解がまだ業界的には正しく出来ていない印象だ
  • 例えばIPAのユーザー向け要件定義ガイドではデータモデリングの重要性は語られているが、浸透していないのが実情ではないか
  • ドメイン駆動設計によって、ある程度「ドメインについて深く考察する」重要性は再認識されつつあると思う一方で、これは本書で指摘される通り別の課題もあるのだ

ドメイン駆動設計は、ソフトウェア作りという私たちの日々の営為をドメインにおける情報処理の進化と結び付けたいという、エヴァンス氏の希望から生まれたものととらえています。知識のかみ砕き、深いモデルといった表現はそのことをよく表しています。そうした思想は広範な支持を集めました。しかしその一方で、軽量DDDにみられるとおり、ドメインに対峙せずに実装に近い設計を競う換骨奪胎的な動きも広くみられます。また、帳簿の重要性を看過し、過剰に計算判断寄りになる傾向や、過剰にドメイン寄りになって、技術がもたらす可能性を十分に活用しない傾向など、設計における焦点のズレを助長している面があるようにも見受けられます。
データモデリングでドメインを駆動する──分散/疎結合な基幹系システムに向けて、14.5 ドメイン駆動設計に共感しつつ批判する、より

思うに、データモデリングの作業は検討者への負担が重いのだ。少数の検討者で深い考察を行う(そして正解はない)ものであるので、われわれは自然とデータモデリングを避けてしまっているのだろう。しかし本書で語られている通り、データモデリングエンタープライズ向けの基幹システムという領域においては、避けて通れない核心であろう。忌避せず真正面から向き合うために、本書はヒントを与えてくれるような気がしている。

「データモデリングでドメインを駆動する」を読む Part.1

読むのがホネな技術書やビジネス書を取り上げて2週間の読書期限を課して読んでアウトプットする仮想読書会「デッドライン読書会」の第65回。同僚と読書期限を約束することによって積読が確実に減るという仕組み。過去記事はこちら

さて、今回は「データモデリングでドメインを駆動する──分散/疎結合な基幹系システムに向けて」である。今回は読書会メンバーで少しディスカッションをして選書。みんな、著者の杉本さんのシステム開発に関するXでのポストなどもよく見ていたので、読んでみようということになった。また目次を見る限りでは骨太のようなので、前後編に分けて読むことにしている。というわけでPart.1では 第1部と第2部を取り扱う。

「データモデリングドメインを駆動する」とはどんな本か

さて、(まだ半分しか読んでいないけど)本書は概ねこのような本である

  • 既存の基幹系システムを概観し、課題を指摘した上でよりよい基幹システム像を提言する(第1部)
  • 基幹システム(SoR)を、活動のシステム(SoA)と経営管理のシステム(SoM)に大きく分離し、データアーキテクチャレベルで検討する(第2部)
  • 横断的な関心事となりそうな重要要素について整理検討する(第3部)※まだ読んでない
  • データモデリングの基礎を再考する(第4部)※まだ読んでない

類書だと次のようなものになるだろうか。

この3冊は既読であり、どれも非常に参考にしている。こちらの本は残念ながらまだ読めていない。読まねば……

エンタープライズシステム開発におけるビジネスアーキテクト/システムアーキテクト必携の書

(まだ半分しか読んでいないけど)本書はいわゆるエンタープライズシステム開発における、ビジネスアーキテクトとかシステムアーキテクトにとっては必読本の一つになるだろう。
システムアーキテクトには疑問点がつくかもしれないが、いわゆるIPA情報処理技術者試験が定義する「システムアーキテクト」は、ほぼ上流工程人材なので間違いではないだろう。

情報システム戦略を具体化するための情報システムの構造の設計や、開発に必要となる要件の定義、システム方式の設計及び情報システムを開発する業務に従事し、次の役割を主導的に果たすとともに、下位者を指導する。

  1. 情報システム戦略を具体化するために、全体最適の観点から、対象とする情報システムの構造を設計する。
  2. 全体システム化計画及び個別システム化構想・計画を具体化するために、対象とする情報システムの開発に必要となる要件を分析、整理し、取りまとめる。
  3. 対象とする情報システムの要件を実現し、情報セキュリティを確保できる、最適なシステム方式を設計する。
  4. 要件及び設計されたシステム方式に基づいて、要求された品質及び情報セキュリティを確保できるソフトウェアの設計・開発、テスト、運用及び保守についての検討を行い、対象とする情報システムを開発する。
  5. なお、ネットワーク、データベース、セキュリティなどの固有技術については、必要に応じて専門家の支援を受ける。
  6. 対象とする情報システム及びその効果を評価する。

システムアーキテクト試験 | 試験情報 | IPA 独立行政法人 情報処理推進機構、業務と役割

IPAシステムアーキテクトが上流工程スキルを多くカバーしているのは意外と見落とされているポイントだと思う。上流工程力に課題感のあるエンジニアにはこの資格試験を割と積極的におすすめしている)

名前付けの素晴らしさ:SoAとSoM

本書で素晴らしいのはまず、企業の基幹システムつまりSoR(System of Record)を分解して、SoA(System of Activity)とSoM(System of Management)と名付けたことだと思う(SoAには別の意味がすでにあるけど)。おそらく類似のシステムアーキテクチャの整理は何度もされてきたはずだ。しかし名前がなければアーキテクチャの構造についての議論などはできない。基幹システムは対象業務や組織によって千差万別なのだからだ。そういう意味では本書、というかSoA/SoMの対置は流行ってほしい。

悩ましいのは移行の方法

おそらく未読の3章以降でも触れられていないようなのだけれども、悩ましいのは本書で論じられているアーキテクチャへの移行方法について触れられていないことだ。マイクロサービスアーキテクチャについては、ストラングラーパターンという移行方式についての議論がある。本書で論じられているSoA/SoMアーキテクチャへの移行については、このパターンに類似の方法を取ることになると思われるが、それでもかなり悩ましいだろう。しかし、基幹システムをビッグバンで再構築するのは現代ではかなり困難である。その点について、本書を起点にいろいろなところで議論が巻き起こったりすれば良いのではないだろうか。

あと2週間で残りを読んで、つづきの記事を執筆する予定である。さて後半にはどんなことが書いてあるのだろう

ITエンジニア本大賞ノミネート本の「冒険の書」を読んだ

読むのがホネな技術書やビジネス書を取り上げて2週間の読書期限を課して読んでアウトプットする仮想読書会「デッドライン読書会」の第64回。同僚と読書期限を約束することによって積読が確実に減るという仕組み。過去記事はこちら

さて、今回は「冒険の書 AI時代のアンラーニング」である。前回骨太の技術書を読んでいたので、ちょっと気分を変えてITエンジニア本大賞2024ノミネート作品からセレクションしてみました。

あとで調べたら、いろいろ話題になっている本だったようである。知りませんでした。すいません。

冒険の書」全体の感想

不思議な本である。有名なシリアルアントレプレナーである著者の孫泰蔵氏が、主に「教育」に関する問いを古今東西の名著で解決するという筋書きなのだが、紹介のしかたが面白い。なんと、名著を読んでいるとその著者の世界に転生して対話ができてしまうという……

いつものデスクの横にあるソファに座って、さっそく「ホッブズ市民論」(1642)を開きました。その瞬間、ソファのまわりが白い光に包まれ、一瞬の閃光に目がくらんだ僕は、思わずうずくまってしまいました。湿った空気が肌に触れた気がして顔をあげると、僕はべンチに座っていました。目の前に広がるのは、古いヨ ー ロッパの朝の街並みのようです。どんよりとした空の下に古びた教会が見えます。隣では、僕より少し年上に見える男性がなにやら板の上に紙を置いて書き物をしていました。僕に気がついた彼は、薄茶色の目を細めてひとしきりこちらを見た後、再び視線を手元に落として書き物を続けながら言いました。「新しい冒険者よ!どうだね、イングランドの素晴らしい天気は?」
冒険の書 AI時代のアンラーニング 第1章 解き放とう、より

この会話している相手がトマス・ホッブズである。な、なんだってーっ!
とはいえ、この奇妙な仕掛けは実は巧妙で、結果として古今東西の教育に関連する書籍のエッセンスがわりとわかった気になるのである。

(そんなことは著作には書かれていないのだが)この本は孫泰蔵のプレイしたゲームの「セーブデータ」を追体験するような形になっていると感じた。RPGだとよく主要なエピソードのムービーは見直せるようになっているが、転生部分はそういうイメージである。もちろん同氏と同じようにたくさんの本を読んでいくほうが学びが深いと思うのだけれども、著者の旅路を覗き見することで、理解が深まるという趣向である。現在同氏は「VIVITA」というクリエイティブラーニングの活動も行っているようだが、そこに至る活動の記録のようなものと考えれば良いのだろうか。

そんな本書であるが、全世代に共通する「学ぶ」ということをテーマにしていて内容としても学びは大きい。わたしは子供の親として、また学習を続けるおとなとして非常に刺激になっている。

本書で気になったこと、考えたこと

「能力信仰」と、日本型「能力」のこと

本書の第3章から「能力信仰」に関する話が紹介される。

  • 最初は統計的な研究で生み出された「能力」という概念が発展し、「能力を身につければ幸せになれる」という「能力信仰」が発展した
  • 「能力信仰」から「能力によってその人間の地位が決まる」というメリトクラシーの考え方、自己責任論が生まれた
  • メリトクラシーが人々を分断し不幸に追いやっている

これは知っているし、現代という時代を理解する非常に重要なキーワードだと考えているが、加えて日本型「能力」という考え方がある。これを混ぜない方が良いと思うのだ。
最近読んだ「ジョブ型雇用社会とは何か 正社員体制の矛盾と転機 (岩波新書)」ではこんなことが紹介されていた。

この「能力」評価の「能力」にかぎ括弧を付けているのは、日本における能力という言葉を外国にそのまま持っていくと全く意味が通じないからです。能力という言葉は、日本以外では、特定職務の顕在能力以外意味しません。具体的なある職務を遂行する能力のことを意味します。ところが、日本では、職務遂行能力という非常に紛らわしい、そのまま訳すと、あたかも特定のジョブを遂行する能力であるかのように見える言葉が、全くそういう意味ではなくて、潜在能力を意味する言葉になっています。それは仕方がありません。末端のヒラ社員まで評価する以上、潜在能力で評価するしかないのです。
ジョブ型雇用社会とは何か 正社員体制の矛盾と転機 (岩波新書) 第1章 ジョブ型とメンバーシップ型の基礎の基礎、より

仕事をしていると様々な場所で「能力評価」というモヤモヤすることばに頻繁に触れるようになる。なお同書ではここでいう「能力評価」は年功型賃金制度を言葉だけで言い換えたものであり、情意(雰囲気)で好き勝手に定義でき、時間の経過(年功)により向上したことにできる怪しげな概念というように紹介されている。

つまり(日本の)仕事で触れる「能力」という言葉は、いちだんと歪んだ概念なのである。それを理解した上でメリトクラシー論に触れたほうがより理解が深まるのではないかと思う。

ライフロング・キンダガーデン

本書の後半では著者の結論として「ライフロング・プレイグラウンド」という考え方が紹介される。ここで思い出したのは「ライフロング・キンダーガーテン 創造的思考力を育む4つの原則」だ。

こどもでも使えるプログラミング環境Scratchを生み出したMITの ミッチェル・レズニックという方の著書である。
序文が以下から読めるので興味があればどうぞ。

過去1世紀にわたって、農業、医学、および製造の分野は、新しい技術と科学的進歩により根本的に変化しました。教育はそうではありません。新しい技術が学校に入ったとしても、ほとんどの学校の中核的な規則とアプローチは変わらないままで、依然として工業社会のニーズとプロセスに沿った、組立ラインの考え方に固執しています。
ライフロング・キンダーガーテン 創造的思考力を育む4つの原則

と、本書とまったく同じ問題意識が書かれているのだ。本書を通読したのはだいぶ以前だが、生涯「幼稚園児のように」「こねくりまわす(ティンカリング)創造を」ということが書かれている同書は本書に通じるものがあると思う。

あそぶようにまなぶ

本書のとらえ方はいろいろあると思うけれども、自分にとっては「あそぶようにまなぶ」重要性を再確認した読書であった。現在の自分の「まなび」と「あそび」の境界はほとんどなくなっている。この考え方を自分だけではなく、他者に広げるにはどうしたらよいか。そんなことを考えるようになったのであった。