進化的アーキテクチャ - 読書会 第1回
https://gyazo.com/c683784d06cbd3dbf75d03f7f6a52ed3
日時 :2020/8/19(水) 20:30 - 22:00
参加者 :kazweda.icon makopi23.icon 10shi10ma.icon
イベント:
Zoom :
対象 :本書への推薦の言葉、はじめに、1章 ソフトウェアアーキテクチャ 〜 2章 適応度関数
司会 :tfujita.icon
20:30-20:40 10 min 近況
20:40-21:50 読書会わいわい(司会のかた自由にデザインしてくださいね)
21:50-22:00 ふりかえり
近況
kazweda.icon 週末は自転車に乗ってます。といっても平坦な道をだらだらと。愛媛。
tfujita.icon香川から参加。医療系のソフト開発やってます。社内でも読書会が始まるのが楽しみです^^
makopi23.icon 東京から参加です。1~2章、抽象的で難しかった・・・
10shi10ma.icon 愛媛から参加!agile459初参加。フロントエンドやってます
tkskkd.icon 進化的アーキテクチャは前から持っててパラパラめくってたけどちゃんと読んでなかったので、よいきっかけになります。
前田さん:東京、金融システム開発やってるよ。出身が高知の須崎。
アマノさん:東京、フロントエンドTypeScriptやってるよ
はじめに
みんなの意見を聞きたいポイントや他の方の意見で気になったコメントには、顔アイコン(Ctrl +i )で教えてください。
顔アイコンの多いところを話の中心にしてわいわいしましょう。
kobatomo.icon*5とか書けばkobatomo.icon*5複数表示されて興味津々具合がわかりますよー。
できる限り自分のログは自分で残して、みんなでログを作り上げましょう
みなさんの意見を聞きたいです。^^
本書への推薦の言葉、はじめに、1章 ソフトウェアアーキテクチャ
〜1.3
tkskkd.icon
P. 3
ソフトウェアを構築するとき、アーキテクトはこれらの「〜性」の中で最も重要なものを決定しなければならない。
アーキテクチャ要件の重要度をどうやって決めてる?
tfujita.icon最近やってみて、うまく使いこなせなかった;;
tkskkd.icon
P. 6
もしアーキテクチャに変更可能性を組込めたらどうなるだろうか?
あらかじめ「変更可能性」を組込める程度の変化は、本当の変化ではないと @m_sekiさんがいってた。
tfujita.icon予測できないものこそ本当の変化ということ?
コロナとかでZoomユーザーがめちゃくちゃ増えたとかね
tkskkd.icon
P. 7 「進化可能性はメタ特性」
なるほど!と思った。アーキテクトの意図を無視した利用はありがち...
makopi23.icon 1.3節の「誘導的な変更」の説明がわからなかった。アーキテクチャの変更を誘導したい、とは?
makopi23.icon 1.3節で適応度関数の説明が出てくるけど、イメージぜんぜん湧かない・・・。数式?
↑おなじく...今後明かになると期待tkskkd.icon
tfujita.iconこれって一般的な言葉なの???と思いました?進化的アーキテクチャの本の中での用語??
テストで表現、計測するもののようだ
tfujita.icon
P.1 アーキテクトが最初にやるべき仕事は、解決案のためにビジネスやドメイン要件を理解することだ
色々ともがいているけど、自信ないなあ・・・。
P.5 しかし、変化が避けられないこともわかっている。したがって、我々は技術的な景観が変わるであろうことを踏まえて・・・
その思いはある
10shi10ma.icon 1.2 漸進的な変更
ソフトウェアの構築とデプロイの2つの漸進的な変更があるのは分かったけど、何が言いたいのかあまりわからなかった
kazweda.icon 「アーキテクト」として仕事をしている人って普通にいらっしゃるのでしょうか。
tkskkd.icon アーキテクトは役割で、開発者と兼任してる場合もあるし、リードデベロッパーがやってる時もあるっぽい。アーキテクトという役割でやってる人はいるみたいです(話にいったことはある)
10shi10ma.icon 日本だとほとんど聞いたことないです(自分の周りだと)。みんなで設計を考えるとかが多い気がする。
makopi23.iconインセプションデッキに、システムの実現方法をみんなで考えるのある。
tfujita.icon新規開発をやっています。まさに開発者と兼任してます。明確にアーキテクトという役割はないです。
1.4〜1.7
16分くらいまで 1のさいごまで
tfujita.icon
P.10 1.4 アーキテクトは今やソフトウェアプロジェクトに多くの次元があることを理解している
たくさんの〜性を検討しなければいけなくて、うっとなる。そのために優先度を決めるのだろうけれど・・・。1つ決めたら、新たな課題がという感じでキリがないなあと感じる
10shi10ma.icon コンウェイの法則
進化についていけなかった結果、巨大なレガシーとなったプロダクトを見ると、だいたいは規模が大きすぎて手がつけられないモノリシックなプロジェクトになってる & 組織構造が大きいので大きく変化させ辛い => まさにコンウェイの法則だなーと思う
あるある、わかる...tkskkd.icon
進化的アーキテクチャを作りやすい組織構造ってあるんだろうか?
逆コンウェイの法則(P.16) ではないのかな?tkskkd.icon
フィーチャーチームというのもありましたねtkskkd.icon
8章に期待!!tkskkd.icon
makopi23.icon クラウドとかDockerとかいろいろ新しい技術が登場して、アーキテクチャもいろいろ追随して学習するの大変です・・・
考えないといけない所、そうでもない所、などなど変わってきますよね。。。tkskkd.icon
一生勉強しないといけない!
tkskkd.icon
アーキテクトは調整役って偉い人がいってました
P. 18
順応という言葉より進化という言葉を好む
生物の進化って結構ばあたり的ですよね。前の構造を残して次に移ってる。このあたりこの先どうなんだろう?tkskkd.icon
10shi10ma.icon 技術じゃなくてサービスで組織を作るのがいいってのは分かるけど、個人の興味的には特定の領域の専門性だけ伸ばしたいとかもあると思うんですが、このあたりみんなどうしてるんだろう?
組織のやりたいこと、個人のやりたいことのANDをどうやってとりながら、構造を決めていくかは面白いテーマですねtkskkd.icon
技術者が「これを使いたい」というのはあるよね、 大きく外れてなければ、その興味を重要視してもいいのでは?makopi23.icon
「XXXがいいんですよ!」というので試してもらったあと、別のに決めたものあるtkskkd.icon
「フロントエンドしかやりたくないので、フロントエンドしかできません」だとアジャイル的に困るのでは?トラックナンバーが減ってしまうケースもmakopi23.icon
実際に困ってるなぁtfujita.icon
みなで勉強してフロントもバックエンドもやってからはじめたので、そういうことはなってないけど他はどうなんだろ?makopi23.icon
いまはプロダクトチームはサービス単位でスクラムチームでフロントもバックエンドもやらないといけないが、専門性を高めたい人は組織横断チームに入って、横断的に支援している10shi10ma.icon
2章 適応度関数
適応度関数
適応度関数(てきおうどかんすう)またはフィットネス関数(英: Fitness function)は、一種の目的関数であり、遺伝的アルゴリズムにおける解脚注 3の最適度を定量化し、特定の遺伝子が他の遺伝子より優れていることを示す。最適な遺伝子、あるいは少なくとも他よりも比較的最適な遺伝子で、「交叉」などの遺伝的操作が行われ、よりよい(と期待される)次世代を生み出す。理想的な適応度関数は、アルゴリズムの目的に密接に関連し、素早く計算できる。遺伝的アルゴリズムは何度も何度も世代交代を繰り返す必要があり、実行速度は非常に重要である。 適応度関数の定義は直接的でないことが多く、GA(遺伝的アルゴリズム)によって生成される最適解が期待したものでない場合は繰り返し実行される。場合によっては、適応度関数をどう定義すべきかも明らかでないことがある。このため、遺伝的アルゴリズムでの解の評価を外部エージェント(通常、人間)に任せる場合もある。
その生物個体がどれほどその生活する環境に適応しているかを示す値である。しかし、これには出産数や出産間隔など直接的に繁殖に関わる特性だけでなく筋力や視力、体の大きさといった多くの特性も間接的に関わってくる。このことから、適応度はその個体が生物として繁栄していく能力を総体として捉えるための概念と捉えることができる。チャールズ・ダーウィンの時代に用いられた適応度 (Fitness) はこの意味であり、現在でも「適応的(生き延びるのに適した性質だろう)」と同様の意味として「適応度が高い」と用いることがある。
makopi23.icon P.23 システムの適応度は以下2つで評価するらしい?
・個々の適応度関数
・システム全体の適応度関数
今日のふりかえり
10shi10ma.icon いろんな人と視点で理解が深まったので良かったです!内容は難しいけど、興味のある内容なので頑張る。1章は抽象的な内容が多い。
tkskkd.icon 難しいが「適応度=生き残りそう度(環境適応度)」というのがわかってよかったです!現場の話ためになる。もっとよく噛んで食べたほうがいいかもしれない。。。
makopi23.icon 難しい・・・。うまく纏まってるサイトとかないかな・・・。1人で読んでも挫折しそうなので読書会いいですね
tfujita.icon5分読んで10〜20分語り合うというのには盛り沢山のボリュームに感じた・・・。適応度関数これから理解できるといいなあと思った。
amano 内容が難しいので、読書会には最適な素材だと思いました。
役に立つ(?)リンク
訳者の島田さんが返事してた!
次回
日時: 2020/9/2(水) 20:30 - 22:00
対象: 2章
ページ:19 - 31
役割分担
司会:tfujita.icon
ページ作成:kazweda.icon
connpass:tkskkd.icon
読書会ベロシティ
1-21, 21