Java EE勉強会
MenuBar
編集
添付
凍結
新規
最終更新
一覧
単語検索
議事録
/
第45回
Menu
Top
JavaEE勉強会
参加するには
FAQ
MakingSenseofStreamProcessing
MicroservicesVsSOA
ModernJavaEEDesignPatterns
BSA
EIP
DSL
DDD
議事録
最新の20件
2023-11-24
MicroservicesVsSOA/The World of Service-Based Architectures
2020-11-14
DDD/Knowledge-Rich Design
MakingSenseofStreamProcessing/Example Implementing Twitter
2020-10-28
EIP/Aggregator
2019-12-18
EIP/Publish-Subscribe Channel
2018-06-10
FrontPage
2017-07-08
MakingSenseofStreamProcessing/Materialized Views Self-Updating Caches
MakingSenseofStreamProcessing/Summary Four Database-Related Ideas
MakingSenseofStreamProcessing/The Unbundled Database
MakingSenseofStreamProcessing/Conclusion
MakingSenseofStreamProcessing/Streaming All the Way to the User Interface
MakingSenseofStreamProcessing/4. Materialized Views
2017-06-11
MakingSenseofStreamProcessing/1. Replication
MakingSenseofStreamProcessing/Bringing the Unix Philosophy to the Twenty-First Century
MakingSenseofStreamProcessing/2. Secondary Indexes
MakingSenseofStreamProcessing/3. Caching
MakingSenseofStreamProcessing/How Databases Are Used
MakingSenseofStreamProcessing/Composability Requires a Uniform Interface
2017-03-25
MakingSenseofStreamProcessing/Unix Architecture versus Database Architecture
MakingSenseofStreamProcessing/Turning the Database Inside Out
議事録
第45回 Java EE勉強会
†
日時: 2008年8月23日(土) 13:00〜18:00
ポジペ: 「私と英語」
†
プレゼンを英語でチャレンジ
Writingはアルク頼り
仕事でたまに使う(出張年一回)
インドの人の発音は難しい
iPhoneで英語をESL, Lern Business English, Java Posse
ドキュメント等で忘れないようにしている
中学までは得意、高校から苦手
職場の英会話教室、原著を読む会
英語の勉強はしている
PodCast
?
はビデオで、ABCニュース
iKnowを毎朝
辞書を片手にドキュメント
特に何も勉強してない
私に英語は聞かないで
だんだん下降中
チャットで英語
悪口から学ぶ
ECC英会話
嫌い
TOEICでいい点を獲る方法→リスニングで「かさかさ」と音がなった時が答え
大学で輪読で論文読み
幼稚園がカトリック系で、英語教育
Object Designを音読
漫画の英訳版の立ち読み
Evansが
日本語
勉強すべき
受験の時は得意だった→語彙は多い
大学で英語を諦めた
PofEAA輪読
中学で挫折
インタネットで、英語の重要性
残りの人生を英語力向上で無駄にしたくない
DDD
読書会 (Chapter Two.)
†
モデルが「頭の中に」は、現実のプロジェクトでは難しいのではないか
モデルは頭の中、ドキュメントによってモデルの意味を表現、ドキュメントがコードを説明
whyに関してはドキュメント→本当にwhyだけでいいのかは疑問
ドメインモデルをあまり扱ってない。コードがモデルを反映してない
agileの人達なので、「ドキュメントは少なくていい」ではなく、「ドキュメントは不要→必要」と読み取るべき。
SIerのドキュメントは、情報を伝達するもの
ドキュメントで詳細まで起こしたとしても、結局コードを見る。
アセンブラでPCが一人一台なかった時代では、ドキュメントは役に立った
現状では、IDEが発達してコードの方が価値がある
言語がわからないと、ドキュメントでロジックがわかる
クロージャとかポリモフィズムとか仕様に起こせないでしょう
こういうドキュメントを作る人は、20年前の機能でロジックを書いてる→継承禁止とかインスタンスメソッド禁止とかありえない
変数名も長く使えるようになった。言語の生産性を生かせない
クラス間の関係が大事
ロジックが書いてあるドキュメントにバグがある → 仕様変更要求
実現できることをドキュメント上で確かめたい → コードでやればいい → そこまでやれば、実装した方が速い
オフショアでは細かい指定が必要?
外国の人は仕様に書かれない部分を実装しないかもしれない
それでは工数を下げれない
ナレッジクランチングにプログラマが入るのは重用
オフショアは、いかにコミュニケーションを疎にするかという考え
この本は、いかにコミュニケーションを密にするか
最近では、オフショアも密にしている
上流-下流で担当が違えば、仕様書が契約書になってる
仕様にあれば実装だし、なければ別料金
一緒のチームとして作るべきだが、壁は厚い
RFP(Request For Proposal)をしっかりしないと、裁判沙汰になる
XPは、ベストエフォートな契約になる → 人月は保証、結果は未保証
RFPでプラスマイナスな契約はできないのか
最初は人月で、後半請負的な契約が多い
ベストエフォート的な契約は、お客さんにもメリットがある
お客さんはやりたいことが決まってない。人月の範囲で要件変更ができる。
お客さんの事業計画とあわない → 予算がうまくとれない
プロトタイピングの作成時に、ドメインモデルを作る??
フェーズが別れてる時点でだめ
上流でドメインモデルは完成 → 洗練できない
EvansやFowlerは、マジョリティなのか??
アメリカでは国防総省が大きい仕事
客を巻き込むってよりは、お客さんのところに入って行ってる
Agileはスーパー派遣。乗り込んで作ってくる。
日本でも常駐だと一緒では??
主導権を、乗り込む側がとる
アメリカは日本のようなSIerは少ない
ドメインエキスパートとデベロッパ
インタラクションデザイン → 振る舞いのような部分は、おざなりにされる
「インタラクションデザイナー」って呼ばれる人は居ない
ドメインエキスパートに関しても、専任者がいない → 3章で
プロトタイピングにかかる時間が7割 → なにか作るとこに時間がかかる
試行錯誤に時間がかかることを受け入れる
お客さんには、「いくらで何ができる」と言った方がいい
XPに必要なのは勇気
失敗しても、同じことをしたい
前と違うことをして失敗するのは嫌。前と同じことをして同じ失敗をするのはOK。
「声に出す」ってことは、コミュニケーションしましょう
モデルを洗練させて行くのは、難しい → ルーチンワークで洗練させるのは難しい
「XXXとYYYとZZZを決める」から、用語を作り出す
会話する時に、同じことが頭にあるようにするのは難しい
結局ドキュメントは書くの??
この本では、書くべきドキュメントは出て来ない
ソースの補足、小さく維持。
新しく入った人は、ドキュメントを手がかりにコードを読んで頭にドメインモデルを作る
コードに、すべてドメインモデルはあるのか??
あるはず
システム化しない部分は??
スコープの問題
システム化されない部分も、議論には入ってくるのでは? ドメインモデルとは呼ばない?
ドメインモデルの対象と、システム化の範囲は違う?
システム化しないモデルもあるだろう
納品物と言う観点では、ドキュメントは必要ではないか
厚さが、やってると言う主張になる
金額とドキュメントの量は比例する
監督庁の監査が入ると、ドキュメントが少ないのはまずい可能性がある
XPの人達とSIerの差は、契約に関して大きく違う部分もある
まずは理想を求めるしかないのでは・・・
agile modeling (書籍)
ベンダーのドキュメントの標準化は? → お客様から、身を守るためのもの。agile的な助けにはならない。
別業界だと思った方がいい
P42の図が理解できない
部分的な図なので、これだけでは理解できないのでは
モデルは一つ?
モデルは一つで、ビューは複数あってもいい
4+1ビューと同じ
「モデル」に、共有する一つのモデルと別のビューと言う意味合いがありそう
言葉の使いかけはあいまい?
スイーツタイム
†
ポジペ: 「私と英語」(その2)
†
外資系だけどイマイチ
iKnow
海外旅行未経験、行きたい
輸入ゲームで覚えた
ネットゲームで海外の人と
フランスの人には foo,bar,buzz など、通じない
高校で漫画の英語→読まず
洋書はマイケルジャクソンの本が最初
技術書の洋書はよく買う → 訳本の方が安いのが残念
文学に挑戦中
Appendixのパターンの見方の部分
†
パターン本なのに、普通の文章として読んでしまう可能性がある
次回以降は、パターンの部分がパターンとわかるようにした方がいい
DDD
読書会 (Chapter Three.)
†
分析モデルは捨てられるし、対応が複雑だとメンテしきれない
UBIQUITOUS LANGUAGEによってモデルと実装を結びつける
モデルを実装するために、オブジェクト指向がよい(オブジェクト指向をどうモデリングに生かすかではない)
手続き型で実装可能?
複雑では?
仕様書が手続き型になっている
すでに手順が決まっているような仕事をシステム化すると、手続き型になる
モデルと実装の結びつけが正しいのかはどう判断?
会話に出てくる言葉がクラス名になっているか
二人の頭の中のモデルがどうやって同じかはどう確認するの?
ホワイトボードで会話すればわかる → 会話しない部分はわからない
プロトタイプを作って見せあう → ペアプロだと、共有
ズレがある場合は、ドキュメントが必要。
前回の話より、ドメイン専門家と技術者で矛盾があることもある
モデルとコードの紐付けが崩れないためのパターン集が欲しい
モデルと実装が完全に一致するタイミングはないのかもしれない → 進化的
コードを直した場合 → コード直していない人のモデルの認識と、ズレる
DDD
の人はアクセサにgetをつけないのか?
モデル的にはgetはノイズ。(機械的には必要)
C#のパーシャルクラスでシステム上のメソッドをモデル上のメソッドを分離とか
Rubyでは、アクセサもメソッドも同じに見えるようにしている
getとsetは
JavaBeans
?
だけの概念。
フィールドについて、実装上は命名にgetとかsetをつける可能性はある
パーシャルクラスで分けるよりも、アノテーションで指定の方がいい?(分け過ぎるのもよくない)
Smalltalk のカテゴリ (プロトコル) など
StCategory for Eclipse
喋りたい時に、必要な要素が見えるといい。IDEにやらせるなら、もっと頑張って欲しい
ドメインと他のレイヤを分離し、ドメインレイヤは極力シンプルにする
永続層では、lazy loading などで、モデル上と現実とのギャップと戦う
オブジェクトDBと
DDD
の相性はよい??
なんの関係もなさそう
なくなってもいいと思う
モデラーとプログラマーがペアプロやっとけばいい
モデルを理解しないプログラマが問題ではないか(ただし、モデル=ドキュメントだと思っていた)
パターン名(HANDS-ON MODELERS)的には、モデラー側に歩み寄りを求めている
モデラーって誰?? モデルは頭の中・・・
専任の人は居ない。居場所がない。リストラ。
アーキテクト??
ジェネラリスト
技術が複雑になって来て、DB、アーキテクト、コーディング、に特化したスペシャリストが必要?
XP的には、専門家? 均一化?
ペアプロの結果としては均質化される。リスクマネージメントにもなる。
ビジネスな側面とテクニカルな側面があるが、ビジネスな側面を見ているのでは
ビジネスの複雑さへ対処するパターン
DDD
としては、ジェネラリストではなく
DDD
のエキスパートになる
ものは言い様(笑
アジャイル的には、システム全体で技術を回す
幅広い知識が必要ではないか
知識量が増えたら間に合わないのでは? となるとスペシャリスト??
原子力発電はアジャイルではやらない
非機能要件に関しては、スペシャリストに。
小さい仕事もSIer的にするのはおかしい。
DDD
的にできる。
小さいプロジェクトの方が色々できる
SOAとかは大きいプロジェクトしかありえない
大きいプロジェクトではそのような単語はbuzz word
小さ過ぎたら、
DDD
じゃなくてphpで十分
次回
†
2008年9月27日(土)
ポジペ「ドキュメントの書き方」
次回も、「先に読んで、後から議論」を維持
要約の分量の目安
1段落1行
太字は細かく
Exampleは大分省略
パターン
はきちんと整形する (
参考
)
Menu
Top
JavaEE勉強会
参加するには
FAQ
MakingSenseofStreamProcessing
MicroservicesVsSOA
ModernJavaEEDesignPatterns
BSA
EIP
DSL
DDD
議事録
最新の20件
2023-11-24
MicroservicesVsSOA/The World of Service-Based Architectures
2020-11-14
DDD/Knowledge-Rich Design
MakingSenseofStreamProcessing/Example Implementing Twitter
2020-10-28
EIP/Aggregator
2019-12-18
EIP/Publish-Subscribe Channel
2018-06-10
FrontPage
2017-07-08
MakingSenseofStreamProcessing/Materialized Views Self-Updating Caches
MakingSenseofStreamProcessing/Summary Four Database-Related Ideas
MakingSenseofStreamProcessing/The Unbundled Database
MakingSenseofStreamProcessing/Conclusion
MakingSenseofStreamProcessing/Streaming All the Way to the User Interface
MakingSenseofStreamProcessing/4. Materialized Views
2017-06-11
MakingSenseofStreamProcessing/1. Replication
MakingSenseofStreamProcessing/Bringing the Unix Philosophy to the Twenty-First Century
MakingSenseofStreamProcessing/2. Secondary Indexes
MakingSenseofStreamProcessing/3. Caching
MakingSenseofStreamProcessing/How Databases Are Used
MakingSenseofStreamProcessing/Composability Requires a Uniform Interface
2017-03-25
MakingSenseofStreamProcessing/Unix Architecture versus Database Architecture
MakingSenseofStreamProcessing/Turning the Database Inside Out