設計

ドメインを純粋に保つ(6) ビジネス概念とダニ ドメインを純粋に保つ

ドメインを純粋に保つ(6) ビジネス概念とダニ

「そんなに単純なクラス、わざわざドメイン層に隔離するほどのものですか?」 『ドメインを純粋に保つ』で説明したような設計・開発・保守の営みを推進しようとして、IssueStatusのようなビジネス概念を設計していると、この手の指摘を受けることがあります。中身はコンストラクタと数個のメソッドだけ。値もo…
簡単なTDDの難しさ 設計

簡単なTDDの難しさ

TDD(テスト駆動開発)について知識が無い人に、TDDを説明する機会がありました。 レッド・グリーン・リファクタリングを説明して、実際の進め方もデモのように見せながら説明したのですが、TDDのテスト対象とする副作用のない純粋な機能を特定するということが、一番の壁となっていることがわかりました。 &n…
AIエージェント時代に必要なのは「実装しない勇気」 設計

AIエージェント時代に必要なのは「実装しない勇気」

(執筆にChatGPTを使ってます) はじめに あなたがとあるWebサービスの開発チームを担当していると想像してみてください。日々、顧客やユーザーから数多くの要望が届きます。 「この画面にフィルタ機能を追加してほしい」 「この通知はもっと細かく設定できるようにしてほしい」 「ダッシュボードに新しいグ…
生成AIと共創するためのガソリン:コンセンサスの重要性 設計

生成AIと共創するためのガソリン:コンセンサスの重要性

※自分の考えををChatGPTに掃き出してブログ記事にしてもらったものです。 以前に書いた(書いてもらった)、生成AIとのコンセンサスについての続編です。 コード中心主義からコンセンサス中心主義へ(生成AIとの共創) 生成AIを活用して作業を進める際、多くの人が最初に直面するのは「期待通りに動いてく…
コード中心主義からコンセンサス中心主義へ(生成AIとの共創) 設計

コード中心主義からコンセンサス中心主義へ(生成AIとの共創)

※自分の考えををChatGPTに掃き出してブログ記事にしてもらったものです。 コード中心主義からコンセンサス中心主義へ かつて、ソフトウェア開発における本質はソースコードにあるとされていました。動作するコードこそが唯一の信頼に足る情報源であり、そこに書かれた記述がすべてを決定づける——それが「コード…