BPStudy#188〜要件定義を学ぼう。ChatGPTを添えて( https://bpstudy.connpass.com/event/281289/ ) の登壇資料です。 2023年4月28日(金)に開催。

ドメイン駆動設計との出会い 10年前に、エヴァンスのドメイン駆動設計を初めて読んだ時は、書いてある内容がほとんど理解できなかった。 あまり、面白いとも思わなかった。 当時は、現場でバグだらけのコードと格闘していた。障害が報告されるたびに、リファクタリング本を参考に、該当個所の長いメソッドや大きなクラスを片端からリファクタリング。その結果、コードがわかりやすくなり、やっかいなバグが単純な修正で解消できてしまうことの効果に驚き、設計の重要性を再認識していた。 それ以前は、UNIXとC言語、OracleとPL/SQLという、オブジェクト指向ではない世界で技術を身に着けてきた。 どちらかというとオブジェクト指向には、ネガティブな印象を持っていた。現場では役に立たんだろうと。 バグとの格闘の中で、リファクタリング(設計改善)の威力を肌で感じ、その考え方とやり方がオブジェクト指向に由来するということを
ドメイン駆動設計(DDD)の Value Objects パターンでは、オブジェクトを不変(immutable)にすることを強く推奨している。 なんとなく、そんなもんか、と思っていたけど、ある日、なるほど、というケースに出くわした話し。 変数名にこだわる 前提として、変数名にこだわるようになったことがある。 DDD のユビキタス言語パターンの実践として、 ・パッケージ名 ・クラス名 ・メソッド名 ・変数名 は、業務上の意味のある名前にこだわることを、徹底しはじめた。 Java Calendar クラスの日付計算 当日から、2週間後に、期限切れになる、というビジネスルルールを実装していた。 Calendar getExpireDate() { Calendar now = Calendar.getInstance(); now.add( Calendar.DATE, 7*2 ); retur
TL;DR 最近の設計志向はイベント駆動がかなり中心になっている とくにDDD界隈がここまでイベント駆動一本槍だとは思わなかった ストーリーを出発点にイベント駆動で設計を組み立てる「イベントストーミング」がかなり多くの場所で事例として取り上げられている はじめに 最近、洋書や動画の講演資料などいくつか海外の情報源に当たることがおおくなり、その中で「結構日本でやられている取り組みとちがうなー」と考えることが多く、一旦そのあたりの差分をまとめておこうかと思いました。 ただの出羽守(あるいは鹿鳴館精神)ではなく、一つの潮流としてこんなのがあるってのを記述できればなと思います イベントが設計の基本線となりつつある、、、のか? まず1つ目に驚いたのが、イベントが設計の中心になっている、そう感じる機会が多かったこと。 ここで言うイベントは、実践ドメイン駆動設計の中でも「ドメインイベント」として実装パタ
こんにちは。Akerunエンジニアの @ishturk です。 Akerun Advent Calendarの記事です。 今日は設計書の話です。 設計書をどんなツールで書くかは、僕らソフトウェアエンジニアの尽きない悩み(楽しみ)ですね。 最近はまったツールが最高に良かったので紹介させてください。 僕のツールに求める要件は以下です。 編集がカジュアルにできる UMLが書ける。あとから編集できる(画像での貼付けは編集できないのでNG) バージョンの管理ができる 好きになれる(重要) 変遷と pros/cons MS Word pros 良くも悪くもスタンダードなツールですね。 だれでも編集できるのが強みです。 Visioと組み合わせれば、UMLも後から編集可能です cons Visioは標準にするには少々値が張ります。 バイナリ形式なのでバージョン管理はしづらいです。 ページが増えたり画像を貼
6月16日に開催されたPHPカンファレンス福岡2018で、『SOLIDの原則ってどんなふうに使うの? オープン・クローズドの原則編(拡大版)』というトークをしました。 phpcon.fukuoka.jp スライドは以下です。スライドだけでも十分内容が伝わるように作っていますが、しゃべりでしか言っていないこともたくさんありますので、動画がアップロードされたらそちらを観ていただきたいです。 このトークにかける思い 私はプログラマになりたての頃から、ソフトウェアの設計が好きでした。これまで独学だったり師匠や先輩方からのご指導だったりで揉まれながら、さまざまなことを学んできました。そんな学びの結果、私に身についたといいますか、師匠や先輩方から授かったという方がよいのかもしれませんが、ソフトウェアやコードの設計に対する「目」というものがあります。この「目」は、ソフトウェアのソースコードを見た時に、そ
毎週金曜の定時後に弊社でアーキ部なるものが開催されています(✌'ω' ✌) スピードラーニング的に@kawasimaさんのお話を聞く会ですが、今週はテーブル設計がテーマでした! この記事がすごく良かったので、触発されてブログ書く!!! developer.hatenastaff.com お題 ↓のお題が出て、テーブル設計を考えてみるはなし。 要求仕様は以下のとおり。 ・宿の部屋は、シングルやツインのような部屋タイプが設定できます。 ・宿側で宿泊プランを設定できます。宿泊プランは適用される日付が設定できます。 ・プランには複数の部屋タイプが含まれることがあります。 ・宿側でプラン・部屋タイプ・宿泊日ごとに宿泊費の設定ができます。 ・カスタマはプラン・部屋タイプ・宿泊日を指定して宿泊予約ができます。 ・予約は会員でも非会員でも可能です。 ・また、会員・非会員に関わらず、宿をお気に入りに登録でき
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
第1章 構成管理入門 はじめに なぜ今構成管理に注目するのか 本特集で扱う内容 サンプルの準備 第2章 Subversionによるバージョン管理入門 はじめに クライアント環境の構築 インポート チェックアウト ソースファイルの変更に関連する操作 チーム開発に関連する操作 おわりに 第3章 Subversionベストプラクティス はじめに 帰ってきたO先輩 コードライン編その1 メインライン コードライン編その2 コードラインポリシー コードライン編その3 プライベートバージョン サードパーティライブラリのバージョン管理 リリース編その1 リリース管理 リリース編その2 自動リリース 継続的インテグレーション 第4章 Maven2によるビルド入門 はじめに なぜMaven2なのか? Maven2のインストール まずは試してみよう さらに開発を進めよう 第5章 Maven2ベストプラクティス
ビジネス・モデリングなどのモデリングを始めてはみたものの,なかなか上手くモデリングできない…そんな悩みを持っている方も多いと思います。そこで,今回はモデリングを上達させるための「モデリング・リファクタリング」という方法をご紹介します。 モデリング・リファクタリングとは 「モデリング・リファクタリング」とは筆者が考えた造語です。(すでに誰かによって提唱されているかもしれませんが)筆者が発明したものではなく,モデリングに慣れている方なら自然とやっているようなテクニックです。 もともと「リファクタリング」というのは,小さなプログラム(例えばクラス)を作るときに,プログラムの外側の仕様(使われ方)は変えずに,中身の構造だけを変えることです。 なぜそんなことをするかというと,とりあえず仕様は満たしていたとしても,中身が汚い設計のままでは,変更に弱く,保守性も悪いからです。そこで,小さなプログラムを作
本日、JUDE/Biz の新しいRCがダウンロード可能になっています。 触れ込みは「内部統制」のツールなんですが、実際はJUDEの使い勝手をそのままに、業務フローをすいすい描ける、というところに注力しています(縦方向も横方向もすいすいです)。ですので、システム開発において業務フローからユースケースを切り出したい、とか、業務フローから概念データベースを設計したい、という用途にも十分使えます。 さらに、「組織」、「人事」、「ITシステム」という概念が扱えて、UMLのアクティビティ図で言うところの「スイムレーン」に、「組織」やら「ITシステム」やらをドラッグ&ドロップできるんです! そして、知る人ぞしる、「産能大式」の業務フロー図。いま、この図法をサポートしているツールはどこにもありません。 ぜひ、試してみてください。 http://jude-users.com/ja/modules/weblo
このコーナーでは、企業でWebサイトの運営に携わっている方、マーケティング部門等でWebの活用法について考えておられる方向けに、Webマーケティングの実践のための手法やノウハウ、事例をご紹介していきます。市場に出回る書籍や雑誌では論じられることない、Webマーケティングの最前線に触れていただければと思います。 2005年07月05日 AIDMAの法則をベースにしたユーザー導線の設計 マーケティングユニット 棚橋 AIDMAの法則とは、アメリカのローランド・ホールが提唱した、消費者がある商品を知るところから実際に購入行動に至るまでの「消費行動」のプロセスに関する仮説です。 Attention(注意)→ Interest(関心)→ Desire(欲求)→ Memory(記憶)→ Action(行動)の頭文字を取って、AIDMAの法則と呼ばれています。 マーケティングに関わる仕事をされている方で
Webアプリケーションのユーザーインターフェイス[3] UCD=利用者中心設計のプロセスとは? ソシオメディア 上野 学 2005/8/9 「ユーザーにとっては “ユーザーインターフェイス”こそが製品そのもの」「ユーザーが選びやすいフォームのカタチを考えよう」に続き、連載第3回は、ユーザーインターフェイスデザインの上流工程に着目して、利用効率が高くユーザーが目的を十分に達成できるシステムを作り上げるのに必要な、プロジェクト初期の取り組みについて考えていきます。 まず前提として、システムを利用するユーザーは何らかの目的を持っている、ということを意識することが大切です。ユーザーインターフェイスを評価するうえでは、この目的がどれぐらいスムーズに達成されたかという視点が重要になります。個々の画面がどれだけ論理的にデザインされていたとしても、そのシステムを利用した結果としてユーザーが本来の目的を達成
ニーズを持った閲覧者のつもりになり、ページをどのように移動し、最終目的のページにたどり着くかを試すのが「ニーズ別ページ遷移の仮説」です。企画内容がサイトに合っているかを試すのにも役立ちます。ここではその具体的なやり方についてまとめています。 ニーズと必要な情報を一覧する サイト企画において一覧化された見込み顧客のニーズと気づきの一覧をここでもう一度確認します。 実際に想定ユーザーになり、サイトマップでページ移動 ニーズ別に実際の顧客になったつもりで外部サイトからサイト内へ入り、目的の情報までたどり着いてみましょう。検索エンジンやリンク集経由でサイトにたどり着いたとして、どの様に移動するかサイトマップを移動しましょう。移動した順に番号をつけておきます。 足りない情報を一覧する ニーズ別遷移のなかで足りないと思われる情報が出てくるかもしれません。「どのような時に何を欲しいと思い、何が足りなかっ
ホームページを成功へと導くための重要なプロセス、画面遷移図およびWEB仕様書を作成します。 弊社では、以下のポイントを中心に画面遷移図・WEB仕様書を作成し、お客様とお打ち合わせした上でホームページの作成に着手します。 まずは、ホームページを構成するWEBページの洗い出しから始めていきます。 画面遷移図の作成 ホームページのリンク構造 ホームページの階層構造(ディレクトリ) ホームページの基本レイアウト next... 動的ページの仕様 next... 画面遷移図の作成 ホームページの作成に当たって最も重要なことは、まず画面遷移図を作成して、サイトオーナーの意図した通りにWEBページが閲覧されるかどうか、よく検討することです。 ホームページ制作でよく陥りがちなのは、サイトオーナーの希望に添ってWEBページを作ったはいいが、ページビューが伸び悩み、問い合わせや注文に至ることが少ない、といった
Canada’s Top Online Casinos for 2025: Expert Picks and Rankings If you’re searching for trusted gaming experiences tailored to Canadian players, we’ve highlighted platforms that consistently set industry benchmarks. Safety is paramount—every site featured here is fully licensed, secure, and transparent about their operations. Players can expect prompt payout speeds, top-rated customer support, and
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く