Enviar búsqueda
Cargar
アンチフラジャイルの世界
•
12 recomendaciones
•
5,156 vistas
Yoshitaka Kawashima
Seguir
NoOps Meetup Tokyo #8での発表資料です。
Leer menos
Leer más
Software
Denunciar
Compartir
Denunciar
Compartir
1 de 41
Descargar ahora
Descargar para leer sin conexión
Recomendados
ソフトウェア設計における 意思決定とそのレビューの秘訣
ソフトウェア設計における 意思決定とそのレビューの秘訣
Yoshitaka Kawashima
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
グラフ構造のデータモデルをPower BIで可視化してみた
グラフ構造のデータモデルをPower BIで可視化してみた
CData Software Japan
Tackling Complexity
Tackling Complexity
Yoshitaka Kawashima
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Web Services Japan
ソフトウェアにおける 複雑さとは何なのか?
ソフトウェアにおける 複雑さとは何なのか?
Yoshitaka Kawashima
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
増田 亨
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
Atsushi Nakamura
Recomendados
ソフトウェア設計における 意思決定とそのレビューの秘訣
ソフトウェア設計における 意思決定とそのレビューの秘訣
Yoshitaka Kawashima
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
グラフ構造のデータモデルをPower BIで可視化してみた
グラフ構造のデータモデルをPower BIで可視化してみた
CData Software Japan
Tackling Complexity
Tackling Complexity
Yoshitaka Kawashima
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Web Services Japan
ソフトウェアにおける 複雑さとは何なのか?
ソフトウェアにおける 複雑さとは何なのか?
Yoshitaka Kawashima
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
増田 亨
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
Atsushi Nakamura
イベント・ソーシングを知る
イベント・ソーシングを知る
Shuhei Fujita
異次元のグラフデータベースNeo4j
異次元のグラフデータベースNeo4j
昌桓 李
ソフトウェア開発における『知の高速道路』
ソフトウェア開発における『知の高速道路』
Yoshitaka Kawashima
イミュータブルデータモデルの極意
イミュータブルデータモデルの極意
Yoshitaka Kawashima
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
Mikiya Okuno
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのか
Atsushi Nakada
Akkaとは。アクターモデル とは。
Akkaとは。アクターモデル とは。
Kenjiro Kubota
(2017.6.9) Neo4jの可視化ライブラリまとめ
(2017.6.9) Neo4jの可視化ライブラリまとめ
Mitsutoshi Kiuchi
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
Takuto Wada
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)
Yoshitaka Kawashima
Atomic Architecture
Atomic Architecture
Yoshitaka Kawashima
アサヒのデータ活用基盤を支えるデータ仮想化技術
アサヒのデータ活用基盤を支えるデータ仮想化技術
Denodo
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
Amazon Web Services Japan
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
Kumazaki Hiroki
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
mosa siru
ブルックスのいう銀の弾丸とは何か?
ブルックスのいう銀の弾丸とは何か?
Yoshitaka Kawashima
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
Yoshitaka Kawashima
マイクロサービスにおける 結果整合性との戦い
マイクロサービスにおける 結果整合性との戦い
ota42y
PostgreSQLの行レベルセキュリティと SpringAOPでマルチテナントの ユーザー間情報漏洩を防止する (JJUG CCC 2021 Spring)
PostgreSQLの行レベルセキュリティと SpringAOPでマルチテナントの ユーザー間情報漏洩を防止する (JJUG CCC 2021 Spring)
Koichiro Matsuoka
Are Design Patterns Dead?
Are Design Patterns Dead?
Yoshitaka Kawashima
強いて言えば「集約どう実装するのかな、を考える」な話
強いて言えば「集約どう実装するのかな、を考える」な話
Yoshitaka Kawashima
Más contenido relacionado
La actualidad más candente
イベント・ソーシングを知る
イベント・ソーシングを知る
Shuhei Fujita
異次元のグラフデータベースNeo4j
異次元のグラフデータベースNeo4j
昌桓 李
ソフトウェア開発における『知の高速道路』
ソフトウェア開発における『知の高速道路』
Yoshitaka Kawashima
イミュータブルデータモデルの極意
イミュータブルデータモデルの極意
Yoshitaka Kawashima
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
Mikiya Okuno
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのか
Atsushi Nakada
Akkaとは。アクターモデル とは。
Akkaとは。アクターモデル とは。
Kenjiro Kubota
(2017.6.9) Neo4jの可視化ライブラリまとめ
(2017.6.9) Neo4jの可視化ライブラリまとめ
Mitsutoshi Kiuchi
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
Takuto Wada
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)
Yoshitaka Kawashima
Atomic Architecture
Atomic Architecture
Yoshitaka Kawashima
アサヒのデータ活用基盤を支えるデータ仮想化技術
アサヒのデータ活用基盤を支えるデータ仮想化技術
Denodo
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
Amazon Web Services Japan
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
Kumazaki Hiroki
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
mosa siru
ブルックスのいう銀の弾丸とは何か?
ブルックスのいう銀の弾丸とは何か?
Yoshitaka Kawashima
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
Yoshitaka Kawashima
マイクロサービスにおける 結果整合性との戦い
マイクロサービスにおける 結果整合性との戦い
ota42y
PostgreSQLの行レベルセキュリティと SpringAOPでマルチテナントの ユーザー間情報漏洩を防止する (JJUG CCC 2021 Spring)
PostgreSQLの行レベルセキュリティと SpringAOPでマルチテナントの ユーザー間情報漏洩を防止する (JJUG CCC 2021 Spring)
Koichiro Matsuoka
La actualidad más candente
(20)
イベント・ソーシングを知る
イベント・ソーシングを知る
異次元のグラフデータベースNeo4j
異次元のグラフデータベースNeo4j
ソフトウェア開発における『知の高速道路』
ソフトウェア開発における『知の高速道路』
イミュータブルデータモデルの極意
イミュータブルデータモデルの極意
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのか
Akkaとは。アクターモデル とは。
Akkaとは。アクターモデル とは。
(2017.6.9) Neo4jの可視化ライブラリまとめ
(2017.6.9) Neo4jの可視化ライブラリまとめ
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)
Atomic Architecture
Atomic Architecture
アサヒのデータ活用基盤を支えるデータ仮想化技術
アサヒのデータ活用基盤を支えるデータ仮想化技術
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
ブルックスのいう銀の弾丸とは何か?
ブルックスのいう銀の弾丸とは何か?
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
マイクロサービスにおける 結果整合性との戦い
マイクロサービスにおける 結果整合性との戦い
PostgreSQLの行レベルセキュリティと SpringAOPでマルチテナントの ユーザー間情報漏洩を防止する (JJUG CCC 2021 Spring)
PostgreSQLの行レベルセキュリティと SpringAOPでマルチテナントの ユーザー間情報漏洩を防止する (JJUG CCC 2021 Spring)
Más de Yoshitaka Kawashima
Are Design Patterns Dead?
Are Design Patterns Dead?
Yoshitaka Kawashima
強いて言えば「集約どう実装するのかな、を考える」な話
強いて言えば「集約どう実装するのかな、を考える」な話
Yoshitaka Kawashima
本番障害に至る病
本番障害に至る病
Yoshitaka Kawashima
システムダウンのひみつ
システムダウンのひみつ
Yoshitaka Kawashima
Mavenの真実とウソ
Mavenの真実とウソ
Yoshitaka Kawashima
それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?
Yoshitaka Kawashima
ウォーターフォールとアジャイルのフェアな比較
ウォーターフォールとアジャイルのフェアな比較
Yoshitaka Kawashima
How to find tech books
How to find tech books
Yoshitaka Kawashima
Antifragile Java - Java Day Tokyo 2017 D1-E1
Antifragile Java - Java Day Tokyo 2017 D1-E1
Yoshitaka Kawashima
たとえ日本人同士でも必要な異文化理解力
たとえ日本人同士でも必要な異文化理解力
Yoshitaka Kawashima
SIerにとっての越境 @ DevLOVE 199
SIerにとっての越境 @ DevLOVE 199
Yoshitaka Kawashima
なぜデータモデリングが重要なのか?
なぜデータモデリングが重要なのか?
Yoshitaka Kawashima
Antifragile Clojure
Antifragile Clojure
Yoshitaka Kawashima
Boilerplate vs Magic
Boilerplate vs Magic
Yoshitaka Kawashima
既婚プログラマの時間捻出術
既婚プログラマの時間捻出術
Yoshitaka Kawashima
Javaの進化にともなう運用性の向上はシステム設計にどういう変化をもたらすのか
Javaの進化にともなう運用性の向上はシステム設計にどういう変化をもたらすのか
Yoshitaka Kawashima
マイクロフレームワークEnkan(とKotowari)ではじめるREPL駆動開発
マイクロフレームワークEnkan(とKotowari)ではじめるREPL駆動開発
Yoshitaka Kawashima
週刊Webサイトのアーキテクチャ
週刊Webサイトのアーキテクチャ
Yoshitaka Kawashima
キメるClojure
キメるClojure
Yoshitaka Kawashima
Seasar conference 2015 sa-compojure
Seasar conference 2015 sa-compojure
Yoshitaka Kawashima
Más de Yoshitaka Kawashima
(20)
Are Design Patterns Dead?
Are Design Patterns Dead?
強いて言えば「集約どう実装するのかな、を考える」な話
強いて言えば「集約どう実装するのかな、を考える」な話
本番障害に至る病
本番障害に至る病
システムダウンのひみつ
システムダウンのひみつ
Mavenの真実とウソ
Mavenの真実とウソ
それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?
ウォーターフォールとアジャイルのフェアな比較
ウォーターフォールとアジャイルのフェアな比較
How to find tech books
How to find tech books
Antifragile Java - Java Day Tokyo 2017 D1-E1
Antifragile Java - Java Day Tokyo 2017 D1-E1
たとえ日本人同士でも必要な異文化理解力
たとえ日本人同士でも必要な異文化理解力
SIerにとっての越境 @ DevLOVE 199
SIerにとっての越境 @ DevLOVE 199
なぜデータモデリングが重要なのか?
なぜデータモデリングが重要なのか?
Antifragile Clojure
Antifragile Clojure
Boilerplate vs Magic
Boilerplate vs Magic
既婚プログラマの時間捻出術
既婚プログラマの時間捻出術
Javaの進化にともなう運用性の向上はシステム設計にどういう変化をもたらすのか
Javaの進化にともなう運用性の向上はシステム設計にどういう変化をもたらすのか
マイクロフレームワークEnkan(とKotowari)ではじめるREPL駆動開発
マイクロフレームワークEnkan(とKotowari)ではじめるREPL駆動開発
週刊Webサイトのアーキテクチャ
週刊Webサイトのアーキテクチャ
キメるClojure
キメるClojure
Seasar conference 2015 sa-compojure
Seasar conference 2015 sa-compojure
アンチフラジャイルの世界
1.
アンチフラジャイルの世界 kawasima NoOps Meetup Tokyo
#8
2.
「わからない」にはレベルがある 今日覚えて帰ること①
3.
Cynefin Framework Chaotic Complex Complicated Simple
/ Obvious Disorder 問題に対する解: 1つは既知 (最良かどうかは分からない) 問題と解の因果関係: あり 問題の解き方: 把握-分析-対処 問題に対する解: 1つで既知 問題と解の因果関係: あり 問題の解き方: 把握-分類-対処 問題に対する解: 未知 問題と解の因果関係: あり 問題の解き方: 調査-把握-対処 問題に対する解: 未知 (問題も不明) 問題と解の因果関係: なし 問題の解き方: アクション-把 握-対処 解決策を得るための方向にはパ ターンがある 既知の解法から選択して適用す る (Good Practice) 既知の解法を適用する (Best Practice)行動を起こして、Complexな状 態に移行させる。 分からないことが分からない 分からないことがない 分からないことが分かっている 何もわからない http://www.mext.go.jp/b_menu/shingi/gijyutu/gijyutu7/011/siryo/__icsFiles/afieldfile/2014/12/16/1353933_4.pdf
4.
今日覚えて帰ること② 「複雑」には2種類ある 分からないことが分かっている 分からないことが分からない
5.
「複雑」と「複雑系」は違う Complex Chaotic 今日覚えて帰ること③
6.
どのレベルにあるのかによって 取るべき戦術が異なる
7.
Simple / Obvious 手順書のある安定したシステムの運用作業 状況を把握し、既知のベストプラクティスを適用する
8.
Complicated 状況を把握し、複数のソリューションから 最善なものを適用する デザインパターンやフレームワークを使った開発
9.
Complex 状況を調査し、進むべき道を決め、軌道修正しながら進む ターゲットが時間と共に動くサービス開発
10.
Chaoticな状況の生存戦略
11.
Fragileの対義語が無いので造られた Fragile Antifragile Robust 取り扱い注意 どうぞ落っことして みてください 取り扱いに注意するな という意味ではない
12.
13.
Antifragileが載っている書籍
14.
世の中の出来事の非対称性七面鳥のおじさんへの信頼度 t 毎日エサを与えられ、 信頼度は日々蓄積されていく が…
15.
予測が出来ない大きな変動 (Black Swan) リーマンショックや日本のバブル崩壊、3.11 後になってみれば予測可能だった気がする(後知恵バイアス) 実際、予測は役には立たない。 ありそうもないことを 人は過小評価しがち
16.
Black Swanへの態度 Black Swanが起きたとき、反省すべきは… 事象そのものを 予測できなかったこと FragileやAntifragileを 理解していなかったこと 予測ミスによる損失を最小化し、利得を最大化する方法を考えよう
17.
Benefit Change Cost Antifragile Resilient Robust Fragile https://developers.redhat.com/blog/2016/07/20/from-fragile-to-antifragile-software/
18.
Cynefinフレームワークとの対応 Fragile Robust Resilient Antifragile 変動は想定せず(しなくてもよ く)、ベストプラクティスを 粛々と実行する。 変動を予測し、それに耐えうる ように最適なソリューションを 適用する。 変動を予測し、それにシステム が適応できるように設計する。 変動は予測せず、発生したとき の対処(あわよくば大きなゲイ ンを得る方法)を検討する。 Chaotic Complex Complicated Simple /
Obvious
19.
Simple/ObviousがChaoticに変わるケース ユーザが急増したときに、どういうBlack Swanが起こる (ユーザは正規のユーザだけとは限らない) ユーザは、ひどいもんだ。 ユーザがいなければ、システムはもっとうまく動くのに。 『Release It!』4章
安定性のアンチパターンより あなたのシステムが安定運用できているのは、 少ない行儀の良いユーザのおかげかもしれない…
20.
ソフトウェアの世界への適用
21.
Tinkering AdobeのKickboxやGoogleの20%ルール https://news.mynavi.jp/article/20151019-am201506/
22.
Fault Injection (in Production) 1.定常状態における振る舞いの仮説を立てる 2.実世界の事象は多様である 3.本番環境で検証を実行する 4.継続的に実行する検証の自動化 5.影響範囲を局所化する Chaos
Engineeringの5原則 https://principlesofchaos.org/?lang=JAcontent
23.
自動バグフィクス https://www.comp.nus.edu.sg/~abhik/pdf/cacm19.pdf
24.
例) DeepFix http://www.iisc-seal.net/deepfix Deep Learningを利用した、パッチの自動生成
25.
Auto Tuning https://qiita.com/kawasima/items/5d8a8a9b84aae6d7de71
26.
Property Based Testing Example
Based Testing ● 入力: 具体的な値 ● Assertion: 決まりがない (…ので、マッチポンプテストに陥りがち) Property Based Testing ● 入力: スペックにしたがい自動生成 ● Assertion: 期待したふるまいか?を検証
27.
例) Web APIのProperty
Based Testing https://qiita.com/kawasima/items/25836e443e8822e89b24 Clojure specのJavaScript移植
28.
例) Web APIのProperty
Based Testing 定義したSpecに沿って、パラメータを生成しAPIを自動で叩く。 Spec外の値も生成できると、Antifragileに近づく (まだこれから)
29.
Noise除去 データに触れれば触れるほど、「信号」と呼ばれる貴重な情報よりも、 ノイズに触れる可能性は不釣り合いに高まっていく。 https://medium.com/netflix-techblog/scryer-netflixs-predictive-auto-scaling-engine-part-2-bb9c4f9b9385 「静観」をシステムが判断したい…
30.
Antifragile System を支える技術
31.
Microservices Antifragileのためとしては、以下2点 障害の局所化 Tinkeringの環境
32.
亀裂の伝播を防ぐ 1.タイムアウト 2.サーキットブレイカー 3.隔壁 ・・・ 必要なすべては、 Release It!の中に
33.
DevOps Culture Automation Measurement Sharing 重なりは多い DevOps Antifragile 失敗を前提とした案件
34.
Road to DevOps
& Antifragile ① DevとOpsを分離する ② Opsを無人化する ③ OpsのAntifragile化
35.
DevとOpsの分離 ITILやSOX法への対応のためには、開発者が 本番環境に気軽にアクセスできることはまかりならない 開発環境 本番環境 運用チーム開発チーム アクセスは互いに 制限される
36.
Opsの無人化 Devが本番環境にログインしない 開発環境 本番環境 運用チーム開発チーム デプロイ対象の提供 本番のメトリクス 発生障害情報の連携
37.
OpsのAntifragile化 開発環境 本番環境 運用チーム開発チーム Tinkering /
FIT 本番環境にストレスを加えて強くする
38.
Wrap up
39.
置かれた状況がどこかを知ることが最重要 仮説検証 Simple / Obvious ComplectComplex Chaotic Tinkering Fault
Injection 専門家のアサイン ルール作り / 訓練 Agile パターンランゲージ グッドプラクティスが分かっていることや事前調査 もできないことを仮説検証しないために… 今日覚えて帰ること④
40.
複雑さの推移 何があたるかサッパリ Complicated Chaotic Chaotic Complicated Simple / Obvious 勝ち方を見つける Complex 事業の安定収益化 Business
Side System Side t
41.
λove chaos
Descargar ahora