SlideShare ist ein Scribd-Unternehmen logo
1 von 76
Downloaden Sie, um offline zu lesen
A-3 今どきのアーキテクチャ設計戦略
2016/10/24
鈴木雄介
グロースエクスパートナーズ株式会社 執行役員
日本Javaユーザーグループ 会長
Qcon Tokyo 2016
自己紹介
鈴木雄介
• グロースエクスパートナーズ(株)
» 執行役員/アーキテクチャ事業本部長
» http://www.gxp.co.jp/
• 日本Javaユーザーグループ
» 会長
» http://www.java-users.jp/
• SNS
» http://arclamp.hatenablog.com/
» @yusuke_arclamp
1
アジェンダ
• 今どきのシステム開発
• アーキテクチャ設計基礎
• 今どきのアーキテクチャ設計
• マイクロサービスアーキテクチャ
• アーキテクトの役割
• まとめ
2
今どきのシステム開発
3
4https://www.flickr.com/photos/iansand/5920421391/https://www.flickr.com/photos/peaceful-jp-scenery/16346037831/
今どきのシステム開発
企業システムの類型化
• SoR(System of Record)
»情報を正しく「記録」するためのシステム
»ユーザーは従業員が中心。取引情報を長期間にわたって保持し、
ビジネスの基幹となるシステム
»変更頻度は低め、システム障害影響大
• SoE(System of Engagement)
»顧客や取引先との「絆」を作るためにシステム
»最新の状況を表示し、判断を行ってもらう。機能はユーザーごと
に最適化され、高頻度で改善されていく
5AII.orgでのレポート「Systems of Engagement and the Future of Enterprise IT」2011 by Geoffrey Moore
今どきのシステム開発
正しい仕様を定義できないシステム開発
• SoE型には「正しい仕様」は存在しない
»社内に”本当のユーザー”がいないため、誰にも正解が分からない
»外部環境の”想定しない変化”に合わせていく必要がある
• 仮説検証型の進め方にするしかない
»「仮説としての仕様」からはじめる
»あとは状況に応じて対応をしていく
6
今どきのシステム開発
一方で、企業システムとしての制約
• SoEはSoRと必ず連携する
»基幹システム側は期日ありきで計画主導プロセス
• 社内部門/業務と必ず関わりがある
»多くのビジネスはITだけで完結しない
▸事業計画、教育コスト、部門間調整、稟議…
• ビジネスは簡単に止められない
»社会インフラに近いほど「止まっては困る」
7
今どきのシステム開発
フィードバックと改善
• SoEではフィードバックと改善のリズムを作ることが大事
»リズムの速さは「ビジネスによる」で問題ない
»1日ごと、2週間ごと、3ヶ月ごと、半年ごと
• どうやって継続的に機能を追加していくのか
»アジャイルかウォーターフォールか、の議論ではない
»「時間制限の中でやる仕事」と「終わるまでやるべき仕事」
8
アーキテクチャ設計基礎
9
アーキテクチャ設計基礎
アーキテクチャ=システムの分け方と組み方
• アーキテクチャとは
»システムのミッションに従い、
»システムのおかれた制約を前提としながら
»システムに関わる複数の利害関係者の関心事を整合させ、
▸経営者、オーナー、ユーザー、PM、開発メンバ、保守メンバ…
»ライフサイクル(設計から保守)まで意識した
»システムの分け方と組合せ方のこと
10
11
http://www.wisskab.com/objekte06.php
Franz Reuleaux (1829-1905)
12
http://www.museum.kyoto-u.ac.jp/collection/materials/mech18.html
京都大学総合博物館 アニメーションで見る機械メカニズム模型の動き
遊星歯車応用の回転運動から直線運動への変換機構
「振る舞い」と「構造」
アーキテクチャ設計基礎
13
IT
サービス
振る舞い
機能
非機能
構造
動的
構造
静的
構造
アーキテクチャ設計基礎
「振る舞い」と「構造」
• 振る舞い
»機能:システムが外部に向けてどういった挙動をするか
▸インプットに対するアウトプット
»非機能:挙動の「質」(早く、確実に、安全に、わかりやすく)
• 構造
»動的構造:振る舞いを実現する時間軸の中での仕組み
»静的構造:振る舞いを実現する空間配置の中での仕組み
14
アーキテクチャ設計基礎
アーキテクチャ設計
• ある振る舞いを実現する構造を導く作業
»「振る舞いへの要求」に従って構造を定義する
»「システムの設計や実装」は定義された構造に従って行われる
• 構造は事前的に定義される
»後から想定範囲外への変更することは非常に困難
15
アーキテクチャ設計基礎
システム開発のプロセス
16
振る舞い
への要求
アーキテクチャ
設計
システム
設計
システム
実装
システム
テスト
振る舞いの
外部定義
振る舞い
理解構造
定義
定義
実現
アーキテクチャ設計基礎
アーキテクチャ設計の(理想的な)進め方
• 必要な振る舞いを定義し、それに対応する構造を設計する
»振る舞いが正確に定義できているほど、適切な設計を行える
• 実装が始まる前までに、すべての要求が明確で、それに対
して最適な構造が定義される
17
今どきのアーキテクチャ設計
18
今どきのアーキテクチャ設計
アーキテクチャ設計のジレンマ
19
振る舞い
への要求
振る舞い構造
要求が曖昧では
構造を定義できない
振る舞いを見ないと
要求が分からない
構造がないと
振る舞いを実現できない
今どきのアーキテクチャ設計
アーキテクチャ設計のジレンマ
• SoEでは正しい要求が先にない
»正しい要求は「フィードバックと改善」で導かれる
»そのためには動くソフトウェアが必要
»動くソフトウェアを作るためには構造が必要
»構造を決めるには正しい要求が必要
20
今どきのアーキテクチャ設計
変更に対応する構造を作れるか?
• もはや初期段階で最適な構造を確定できないことが前提
»とはいえ「流行のフレームワークでいい」ではない
• 必要な機能が段階的に足されていく
»新たな機能は既存の構造が最適ではないかもしれない
• なんらかのアーキテクチャ設計戦略が必要になる
»予測型、犠牲型、拡張型
21
アーキテクチャ設計戦略
予測型
• 追加される機能に対して同一の構造を割り当てる
• 最も効率的(※予測が正しければ)
22
機能A
構造
機能A
構造
機能B 機能C
アーキテクチャ設計戦略
予測増改築型
• 予測型を長期間維持してこじらせたパターン
• 保守性が悪く、コストが増加する(別名:温泉旅館型)
23
機能A
構造
機能A
機能B
機能C
構造
アーキテクチャ設計戦略
犠牲型
• 最初に作る構造は最低限にしておき、のちに再整備する
• 機能移植にコストはかかるが長期保守にメリット
24
機能A
構造1
機能A 機能B 機能C
構造2構造1
機能A
技術的負債
アーキテクチャ設計戦略
拡張型
• 構造そのものに拡張性を持たせる
• (※天才に限る)
25
機能A
基本構造
構造1
機能A
構造2
機能B 機能C
基本構造
構造1
アーキテクチャ設計戦略
設計戦略の整理
• そもそも「予測型」には限界がある
»特にSoE型では予測が困難になってきている
• いつでも「犠牲型」になる覚悟は必要
»ただし、すべてに対して前提にするのは困難
• 「拡張型」をベースにしていく
»あくまでも自分で作らず、他人が作った拡張構造を利用する
▸オープンソースやクラウドサービス
26
アーキテクチャ設計戦略
他人が作った拡張構造に頼る
• オープンソースのフレームワークを利用する
»優秀なOSSは「拡張可能な構造」を備えている
»パターンに従って実装することで構造が拡張される
• コミュニティが蓄積しているノウハウに頼る
»他の製品がベースにするような製品を選ぶ
»設定ファイル+クラス構造のパターン化
27
Spring Security
• 認証と認可についての基本
的な考え方が整理されてお
り、これを拡張すれば独自
機構を提供できる
»AuthenticationManager
»AuthenticationProvider
»UserDetailsService
» WebSecurityConfigurerAdapter
»AsyncConfigurerSupport
28
Figure 1. An AuthenticationManager hierarchy using ProviderManager
https://spring.io/guides/topicals/spring-security-architecture/
アーキテクチャ設計戦略
他人が作った拡張構造に頼る
• クラウドサービスを利用する
»利用すべきはPaaS(Platform as a Service)
»パターンに従って実装することで構造が拡張される
• 構造だけではなく非機能要件まで含めて構造が保証する
»PaaSの進化
▸ミドルウェアレベル:データベースサービス
▸システムレベル:Webアプリケーション構成サービス、構成管理サービス
29
サーバレスアーキテクチャ
• コードを配置するだけで実行される
»AWS Lambda:Node.js、Java、Python
»Azure Functions:JavaScript、C#、Python、PHP
• 特性
»インフラのマネジメント不要でオートスケール
»ステートレスなイベント駆動
▸タイマー、Webトリガー、データトリガー、メッセージトリガー…
»処理内容には制約がある
▸PaaSの他のサービスに対する操作であればサポートされている
30
今どきのアーキテクチャ設計
機能ごとに最適な構造を用意するのは無駄か?
• 技術の成熟に伴い、ニッチな構造が増えている
• 例えば
»ビックデータ:大規模分散処理
»リアルタイム処理:ストリームプロセッシング
»スケールするデータストア:NoSQLデータベース
»検索:検索エンジン(インデクサー)
• すべてオープンソースでもPaaSでも利用可能
31
アーキテクチャ設計戦略
拡張型×犠牲型
• 基本構造を変えずに、必要な機能に応じて構造を導入する
• 場合によっては犠牲にする構造もあってよい
32
機能A
構造2
機能B
構造1
基本構造
基本構造
機能A
構造2
機能B 機能C
構造1
構造3 構造4
機能A+
基本構造
アーキテクチャ設計戦略
その集大成がマイクロサービス
• マイクロサービスアーキテクチャ(MSA)
• ※とはいえ成熟の途中(特に企業システムとしては)
33
PaaS
サービスA
構造2
サービスB サービスC
構造1
構造3 構造4
サービス
A+
クラウドサービス
システム
マイクロサービスアーキテクチャ
34
マイクロサービスアーキテクチャ
簡単な概要
• システム全体をサービスの組み合わせで実現する
»(小さな)サービスによって(大きな)サービスを動かす
»サービス同士はAPI/メッセージで連携する
• サービスの単位でチームが分割される
»チームが複数のサービスを管理しても良い
35
マイクロサービスアーキテクチャ
メリット
• モノリシックなシステムでは変更が全体に影響する
»影響調査とリグレッションテストで工数の大半が消える
• サービス同士が疎結合なら変更の影響が全体に及ばない
»チーム/サービスごとに好きなリズムでリリースしてよい
• サービスごとに構造と非機能要件を変えてよい
»例:サービスによって性能特性を変えられる
36
カナリアリリース
37
Web App DB
ルーター100
100
Web App DB
カナリアリリース
38
Web App DB
ルーター100
100
Web App DB
カナリアリリース
39
Web App DB
ルーター100
95
Web App DB
5
カナリアリリース
40
Web App DB
ルーター100
100
Web App DB
カナリアリリース
41
ルーター100
100
Web App DB
マイクロサービスアーキテクチャ
いかにサービスを管理するのか
• なぜ分けるか、どう分けるかの議論は終わりつつある
»ドメインは重要だが、正解がない
• 数が多くなったサービスをどう管理していくのか?
»Netflixのトップページでは500個のサービスが動く
▸1サービス10インスタンスなら、5000インスタンス
▸Amazonは700-800個
»分けた場合のデメリットをどう減らしていくのか
42
マイクロサービスアーキテクチャ
疎結合を維持する戦略
43
マイクロサービスアーキテクチャ
疎結合を維持する戦略
• データ分離
• テスト戦略
• 不整合の許容
44
データ分離
• データの共有を疎結合化していく
»データの同期タイミングとサイズに注意
»巨大データをリアルタイムに共有したいなら共有データしかない
»通常、2フェーズコミットは避ける
45
サービスA サービスB サービスA サービスB サービスA サービスB
共有データ ビュー トリガー/ストアド
サービスA サービスB
ETL
• イベントソーシング
»データのステートではなくデータへのイベントを共有する
»CQRS/コマンドクエリ責務分離
▸コマンド:更新などのロジックを含む処理
▸クエリ:検索などの単純な処理
イベント
ストア
データ分離
46
サービスA サービスB
ステート
イベントソーシング
テスト戦略
• Test Doubles
»本物を動かすのが大変なのでスタブやモックを使ってテストする
»コンシューマー側でプロバイダの想定する挙動を実装し、それを
使ってテストする
»プロバイダの変更が発生するとモックの変更が必要になる
47
サービスA
サービスB
のモック
テスト戦略
• Dark Canaries
»本番環境上に開発者しかアクセスできないテスト版をリリース
»本物を使ってテストする(ただし、できないものもある)
48
サービスA サービスB
サービスA
テスト版
テスト戦略
• Consumer-Driven Contract testing
»コンシューマーが要求するAPI挙動を契約として定義し、プロバ
イダが契約を検証して破壊的変更を防ぐ
49
サービスA
サービスB
契約
サービスB
契約
サービスC
サービスB
不整合の許容
• 「Amazonのクーポン」
• 非同期メッセージによる不整
合を許容する
»サービス間の疎結合を重視する
»運用でリカバリするほうがメリ
ットが大きい
50
マイクロサービスアーキテクチャ
リジリエンスの確保
51
マイクロサービスアーキテクチャ
リジリエンスの確保
• サービスの集中管理
»設定の集中管理、知的なルーター、非同期メッセージング
• 階層型障害への対応
»サーキットブレーカー、分散トレース
»障害注入テスト
52
設定の集中管理
• 環境依存するような設定情報を各サービスが取得する
»設定ファイルを配置するのではなくネットワーク経由で取得する
53
設定
サービスA サービスB サービスC
①起動時に設定を取得
知的なルーター
• 知的なルーターによるサービスの発見とルーティング
»新しく起動したサービスは自分の居場所を自分で登録する
»レジストリに問合せてサービスを発見し、ルーティングする
54
サービスA
レジストリ
ルーター
サービスA
サービスA
①自分自身の登録
②リクエスト
③サービスの発見
非同期処理
• メッセージキューによる処理の分離
»答えを待たずに処理を非同期に行うようにする
▸パブリッシュ/サブスクライブ型もサポート
»機能同士の非機能を分離することができる
55
サービスA サービスB
サービスA サービスBキュー
同期型
非同期型
サービスA
サービスB
キュー
Pub/Sub型
サービスC
サービスD
サーキットブレーカー
• 階層型障害への対応
»自分の身は自分で守る
• 異常処理への対応
»通信エラーが発生しても機能Bが返事をしたように振る舞う
»タイムアウト/リトライの自動化
»値のキャッシュ
56
機能B
サーキット
ブレーカー
機能A
エラー処理
分散トレース
• サービスを横断したリクエストのトレース
»リクエストやサービス間通信にIDを発行する
»各サービスからはログ基盤にログを送信する
• ログ分析
»ログを検索し、処理の流れ視覚化する
»メトリクスツールとしての応用
57
ログ基盤
サービスA サービスB サービスC
ログ検索
障害注入テスト
• Chaos Monkey
»Failure Injection Testing(障害注入テスト)
»平日日中にサーバをランダムにダウンさせるためのOSS
▸Netflixではインスタンスは毎週、アベイラビリティゾーンあるいはリージ
ョン丸ごとは毎月障害
58
マイクロサービスアーキテクチャ
マイクロサービス向け製品
• 例:Spring Cloud
»設定の集中管理:Spring Cloud Config
»知的なルーター:Netflix Zuul、Netflix Ribbon、Netflix Eureka
»非同期メッセージング:Spring Cloud Stream
»サーキットブレーカー:Netflix Hystrix
»分散トレース :Spring Cloud Sleuth
59
マイクロサービスアーキテクチャ
ツール群
60
マイクロサービスアーキテクチャ
ツール群
• CI/CDツール群
»サービスの構成と自動リリースを管理するための仕掛け
»+インフラ構成管理ツール
»+コンテナ(Docker)
▸ミドルウェア構成のバージョン管理
• メトリクスツール
»ヘルスチェックやログ分析の延長としての仮説検証ツール
61
CI/CDツール群
• Continues Integration、Deployment、Delivery
»チケット管理、ソースコード管理、CI/CDツールを含む
▸ドキュメント管理、チャットツールなど
62
Git サーバ
V1.1
チケット
管理 V1.1
チケットA
チケットB
サーバ
V1.1
V1.0
CI/CDツール
コード
V1.1
サーバ構成
レポジトリ
サーバ設定
マイクロサービスアーキテクチャ
CI/CD開発ツール群
• 例:Atlassian(アトラシアン)
»課題管理:JIRA
»ソースコード管理:Bitbucket
»CI/CDツール:Bamboo
»ドキュメント管理:Confluence
»チャットツール:HipChat
63
マイクロサービスアーキテクチャ
エンタープライズ適用
64
エンタープライズ適用
“マイクロサービス”にこだわりすぎない
• 本質:サービス同士を疎結合にして個別変更を許容する
»適切な技術を適切な機能で利用するため
»サービスの大きさを気にしすぎない
• 対象は「システム全体」であるべき
»1つのアプリケーションをマイクロサービスにしても意味が無い
65
エンタープライズ適用
品質の考え方について整理すること
• サービス全体を保護するために小さな障害を許容する
»日中リリース、障害注入テスト、イベントソーシング…
• 「小さな障害」を許容できるかどうかはドメインによる
»マイクロサービスだから障害を許容していいわけではない
»ただ、企業システムの中でも許容できるものもあるはず
66
エンタープライズ適用
明日からでも始めるべき
• 今のシステムから1つ目のサービスを切り出せるか
»少しずつマイクロサービス化していくことが重要
»マイクロサービスの戦略、プラットフォーム、ツールも段階的に
導入していく
• 「マイクロサービスで全体再構築」はうまくいかない
»アジャイル、DevOps、クラウド、マイクロサービスプラットフ
ォームに習熟する期間が必要
67
アーキテクトの役割
68
アーキテクトの役割
プラットフォームの選択は重要
• プラットフォームの選択は重要
»拡張可能でありながら、無駄のない仕組みであるかどうか
»依存することへの功罪を考える
▸あんなにマイクロソフトは嫌だったのに、Amazonならいいのか?
• 自らのドメインに適用できるか?
»「流行している」で導入するのは危険
»ドメインのFit&Gapこそが最大の役割
69
アーキテクトの役割
アーキテクトがいるのは塔か現場か
• 塔の上から俯瞰する vs 現場で最適なものを作る
»象牙の塔では困るがプラットフォームの採用には全体視点が必要
»チーム(現場)にはプラットフォームから上を権限委譲する
70
PaaS
サービスA
構造2
サービスB サービスC
構造1 構造3
クラウドサービス
MSA用プラットフォーム
各種のツール群
プラットフォームのアーキテクト
各サービスの専門アーキテクト
まとめ
71
まとめ
フィードバックと改善
• 企業システムはSoRとSoEに分離していく
• SoEでは「フィードバックと改善」が重要
»リズムは最適なものを選べばいい
• 段階的に機能が追加されていく
72
まとめ
アーキテクチャ設計戦略
• 段階的な機能拡充に合わせて構造も拡充する
»もはやアーキテクチャを初期に完成させるのは無理
• そのためのアーキテクチャ設計戦略
»予測型、犠牲型、拡張型
• 特に重要なのは拡張型
»他人が作った拡張構造をうまく活用しよう
▸オープンソース製品、クラウドサービス
73
まとめ
プラットフォームの時代
• プラットフォームをいかに利用するか
»オープンソースやクラウドサービス
»目的やパターンを理解し、独自に拡張していく
• 特にMSA用プラットフォームは成長期
»企業システムでも参考になるアイデアがある
74
お知らせ
もう少し全体感が知りたいなら
• Cloud First Architecture 設計ガイド
» 第1章 クラウドファーストの意味
» 第2章 クラウド技術の構成
» 第3章 クラウドファーストに至るまでの歴史
» 第4章 エンタープライズとクラウドファースト
» 第5章 アーキテクチャー設計ガイド
» 第6章 クラウドファーストにおけるエンジニア
https://www.amazon.co.jp/dp/4822237818
75

Weitere ähnliche Inhalte

Was ist angesagt?

データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3 データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3 Hiroshi Ito
 
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチYoshiki Hayama
 
それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?Yoshitaka Kawashima
 
ソフトウェア開発における『知の高速道路』
ソフトウェア開発における『知の高速道路』ソフトウェア開発における『知の高速道路』
ソフトウェア開発における『知の高速道路』Yoshitaka Kawashima
 
フロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjugフロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjugItsuki Kuroda
 
Python 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそうPython 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそうRyuji Tsutsui
 
アーキテクチャの進化から学ぶ、プラットフォームエンジニアリングへのアプローチ
アーキテクチャの進化から学ぶ、プラットフォームエンジニアリングへのアプローチアーキテクチャの進化から学ぶ、プラットフォームエンジニアリングへのアプローチ
アーキテクチャの進化から学ぶ、プラットフォームエンジニアリングへのアプローチYusuke Suzuki
 
技術ブログを書こう
技術ブログを書こう技術ブログを書こう
技術ブログを書こうakira6592
 
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計de:code 2017
 
Webアプリを並行開発する際のマイグレーション戦略
Webアプリを並行開発する際のマイグレーション戦略Webアプリを並行開発する際のマイグレーション戦略
Webアプリを並行開発する際のマイグレーション戦略Takayuki Shimizukawa
 
なぜ「マイクロサービス“化”」が必要なのか
なぜ「マイクロサービス“化”」が必要なのかなぜ「マイクロサービス“化”」が必要なのか
なぜ「マイクロサービス“化”」が必要なのかYusuke Suzuki
 
RLSを用いたマルチテナント実装 for Django
RLSを用いたマルチテナント実装 for DjangoRLSを用いたマルチテナント実装 for Django
RLSを用いたマルチテナント実装 for DjangoTakayuki Shimizukawa
 
40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていることonozaty
 
フロー効率性とリソース効率性、再入門 #devlove #devkan
フロー効率性とリソース効率性、再入門 #devlove #devkanフロー効率性とリソース効率性、再入門 #devlove #devkan
フロー効率性とリソース効率性、再入門 #devlove #devkanItsuki Kuroda
 
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)mosa siru
 
Java ORマッパー選定のポイント #jsug
Java ORマッパー選定のポイント #jsugJava ORマッパー選定のポイント #jsug
Java ORマッパー選定のポイント #jsugMasatoshi Tada
 
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考えるGoのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考えるpospome
 
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)NTT DATA Technology & Innovation
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法についてYuji Otani
 
モジュールの凝集度・結合度・インタフェース
モジュールの凝集度・結合度・インタフェースモジュールの凝集度・結合度・インタフェース
モジュールの凝集度・結合度・インタフェースHajime Yanagawa
 

Was ist angesagt? (20)

データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3 データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
 
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
 
それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?
 
ソフトウェア開発における『知の高速道路』
ソフトウェア開発における『知の高速道路』ソフトウェア開発における『知の高速道路』
ソフトウェア開発における『知の高速道路』
 
フロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjugフロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjug
 
Python 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそうPython 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそう
 
アーキテクチャの進化から学ぶ、プラットフォームエンジニアリングへのアプローチ
アーキテクチャの進化から学ぶ、プラットフォームエンジニアリングへのアプローチアーキテクチャの進化から学ぶ、プラットフォームエンジニアリングへのアプローチ
アーキテクチャの進化から学ぶ、プラットフォームエンジニアリングへのアプローチ
 
技術ブログを書こう
技術ブログを書こう技術ブログを書こう
技術ブログを書こう
 
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
 
Webアプリを並行開発する際のマイグレーション戦略
Webアプリを並行開発する際のマイグレーション戦略Webアプリを並行開発する際のマイグレーション戦略
Webアプリを並行開発する際のマイグレーション戦略
 
なぜ「マイクロサービス“化”」が必要なのか
なぜ「マイクロサービス“化”」が必要なのかなぜ「マイクロサービス“化”」が必要なのか
なぜ「マイクロサービス“化”」が必要なのか
 
RLSを用いたマルチテナント実装 for Django
RLSを用いたマルチテナント実装 for DjangoRLSを用いたマルチテナント実装 for Django
RLSを用いたマルチテナント実装 for Django
 
40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること
 
フロー効率性とリソース効率性、再入門 #devlove #devkan
フロー効率性とリソース効率性、再入門 #devlove #devkanフロー効率性とリソース効率性、再入門 #devlove #devkan
フロー効率性とリソース効率性、再入門 #devlove #devkan
 
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
 
Java ORマッパー選定のポイント #jsug
Java ORマッパー選定のポイント #jsugJava ORマッパー選定のポイント #jsug
Java ORマッパー選定のポイント #jsug
 
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考えるGoのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
 
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法について
 
モジュールの凝集度・結合度・インタフェース
モジュールの凝集度・結合度・インタフェースモジュールの凝集度・結合度・インタフェース
モジュールの凝集度・結合度・インタフェース
 

Andere mochten auch

ドメイン駆動設計の学習曲線とブレークポイント
ドメイン駆動設計の学習曲線とブレークポイントドメイン駆動設計の学習曲線とブレークポイント
ドメイン駆動設計の学習曲線とブレークポイント増田 亨
 
ニュービジネスとドメインモデル V2
ニュービジネスとドメインモデル V2ニュービジネスとドメインモデル V2
ニュービジネスとドメインモデル V2Tomoo Yoda
 
ビジネスまで最短距離のモデリング
ビジネスまで最短距離のモデリングビジネスまで最短距離のモデリング
ビジネスまで最短距離のモデリングTomoo Yoda
 
要求の変化とマイクロサービスアーキテクチャ
要求の変化とマイクロサービスアーキテクチャ要求の変化とマイクロサービスアーキテクチャ
要求の変化とマイクロサービスアーキテクチャYusuke Suzuki
 
システム開発のアジリティーを考える 20150904
システム開発のアジリティーを考える 20150904システム開発のアジリティーを考える 20150904
システム開発のアジリティーを考える 20150904Tomoo Yoda
 
モダナイゼーションがもたらす未来
モダナイゼーションがもたらす未来モダナイゼーションがもたらす未来
モダナイゼーションがもたらす未来Hiromasa Oka
 
JavaOne 2016総括 #jjug
JavaOne 2016総括 #jjugJavaOne 2016総括 #jjug
JavaOne 2016総括 #jjugYusuke Suzuki
 
プロダクトオーナーは育成できるのか? - プロダクトオーナー祭り2016
プロダクトオーナーは育成できるのか? - プロダクトオーナー祭り2016プロダクトオーナーは育成できるのか? - プロダクトオーナー祭り2016
プロダクトオーナーは育成できるのか? - プロダクトオーナー祭り2016Yusuke Suzuki
 
マイクロサービスアーキテクチャ とは何か
マイクロサービスアーキテクチャとは何かマイクロサービスアーキテクチャとは何か
マイクロサービスアーキテクチャ とは何かYusuke Suzuki
 

Andere mochten auch (9)

ドメイン駆動設計の学習曲線とブレークポイント
ドメイン駆動設計の学習曲線とブレークポイントドメイン駆動設計の学習曲線とブレークポイント
ドメイン駆動設計の学習曲線とブレークポイント
 
ニュービジネスとドメインモデル V2
ニュービジネスとドメインモデル V2ニュービジネスとドメインモデル V2
ニュービジネスとドメインモデル V2
 
ビジネスまで最短距離のモデリング
ビジネスまで最短距離のモデリングビジネスまで最短距離のモデリング
ビジネスまで最短距離のモデリング
 
要求の変化とマイクロサービスアーキテクチャ
要求の変化とマイクロサービスアーキテクチャ要求の変化とマイクロサービスアーキテクチャ
要求の変化とマイクロサービスアーキテクチャ
 
システム開発のアジリティーを考える 20150904
システム開発のアジリティーを考える 20150904システム開発のアジリティーを考える 20150904
システム開発のアジリティーを考える 20150904
 
モダナイゼーションがもたらす未来
モダナイゼーションがもたらす未来モダナイゼーションがもたらす未来
モダナイゼーションがもたらす未来
 
JavaOne 2016総括 #jjug
JavaOne 2016総括 #jjugJavaOne 2016総括 #jjug
JavaOne 2016総括 #jjug
 
プロダクトオーナーは育成できるのか? - プロダクトオーナー祭り2016
プロダクトオーナーは育成できるのか? - プロダクトオーナー祭り2016プロダクトオーナーは育成できるのか? - プロダクトオーナー祭り2016
プロダクトオーナーは育成できるのか? - プロダクトオーナー祭り2016
 
マイクロサービスアーキテクチャ とは何か
マイクロサービスアーキテクチャとは何かマイクロサービスアーキテクチャとは何か
マイクロサービスアーキテクチャ とは何か
 

Ähnlich wie 今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016

マイクロサービスアーキテクチャ - アーキテクチャ設計の歴史を背景に
マイクロサービスアーキテクチャ - アーキテクチャ設計の歴史を背景にマイクロサービスアーキテクチャ - アーキテクチャ設計の歴史を背景に
マイクロサービスアーキテクチャ - アーキテクチャ設計の歴史を背景にYusuke Suzuki
 
アジャイル開発を支えるアーキテクチャ設計とは
アジャイル開発を支えるアーキテクチャ設計とはアジャイル開発を支えるアーキテクチャ設計とは
アジャイル開発を支えるアーキテクチャ設計とはYusuke Suzuki
 
Javaエンジニアのための"クラウド時代の過ごし方" Java Day Tokyo 2016
Javaエンジニアのための"クラウド時代の過ごし方" Java Day Tokyo 2016Javaエンジニアのための"クラウド時代の過ごし方" Java Day Tokyo 2016
Javaエンジニアのための"クラウド時代の過ごし方" Java Day Tokyo 2016Yusuke Suzuki
 
開発現場から考える プロジェクトで活躍する 新入社員の育て方とは?
開発現場から考えるプロジェクトで活躍する新入社員の育て方とは?開発現場から考えるプロジェクトで活躍する新入社員の育て方とは?
開発現場から考える プロジェクトで活躍する 新入社員の育て方とは?CASAREAL, Inc.
 
クラウド時代のエンジニアについて #sesfukui
クラウド時代のエンジニアについて #sesfukuiクラウド時代のエンジニアについて #sesfukui
クラウド時代のエンジニアについて #sesfukuiYusuke Suzuki
 
ウォーターフォールとアジャイルを考える #ita_ws
ウォーターフォールとアジャイルを考える #ita_wsウォーターフォールとアジャイルを考える #ita_ws
ウォーターフォールとアジャイルを考える #ita_wsYusuke Suzuki
 
Javaのカルチャーとグロース - MANABIYA 2018
Javaのカルチャーとグロース - MANABIYA 2018Javaのカルチャーとグロース - MANABIYA 2018
Javaのカルチャーとグロース - MANABIYA 2018Yusuke Suzuki
 
マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018
マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018
マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018Yusuke Suzuki
 
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017Yusuke Suzuki
 
エンタープライズアジャイルと全体最適について ~アーキテクチャ設計とウォーターフォールの必要性~
エンタープライズアジャイルと全体最適について ~アーキテクチャ設計とウォーターフォールの必要性~エンタープライズアジャイルと全体最適について ~アーキテクチャ設計とウォーターフォールの必要性~
エンタープライズアジャイルと全体最適について ~アーキテクチャ設計とウォーターフォールの必要性~Yusuke Suzuki
 
ITトレンドに見る日本のエンタープライズITについて
ITトレンドに見る日本のエンタープライズITについてITトレンドに見る日本のエンタープライズITについて
ITトレンドに見る日本のエンタープライズITについてYusuke Suzuki
 
MicroserviceでのNoOps戦略 - NoOps Meetup Tokyo #2 #NoOpsJP
MicroserviceでのNoOps戦略 - NoOps Meetup Tokyo #2 #NoOpsJPMicroserviceでのNoOps戦略 - NoOps Meetup Tokyo #2 #NoOpsJP
MicroserviceでのNoOps戦略 - NoOps Meetup Tokyo #2 #NoOpsJPYusuke Suzuki
 
アーキテクチャのレビューについて - JaSST Review '18
アーキテクチャのレビューについて - JaSST Review '18アーキテクチャのレビューについて - JaSST Review '18
アーキテクチャのレビューについて - JaSST Review '18Yusuke Suzuki
 
エンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナー
エンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナーエンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナー
エンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナーYusuke Suzuki
 
「ITアーキテクトの役割と責任」デブサミ2015 20-C-1
「ITアーキテクトの役割と責任」デブサミ2015 20-C-1「ITアーキテクトの役割と責任」デブサミ2015 20-C-1
「ITアーキテクトの役割と責任」デブサミ2015 20-C-1Yusuke Suzuki
 
エンタープライズアジャイルにおける要求探索の勘所 要求開発アライアンス2018年7月定例会
エンタープライズアジャイルにおける要求探索の勘所 要求開発アライアンス2018年7月定例会エンタープライズアジャイルにおける要求探索の勘所 要求開発アライアンス2018年7月定例会
エンタープライズアジャイルにおける要求探索の勘所 要求開発アライアンス2018年7月定例会Yusuke Suzuki
 
ドメイン『駆動』『開発』
ドメイン『駆動』『開発』ドメイン『駆動』『開発』
ドメイン『駆動』『開発』Hiroshi Maekawa
 
アジャイルと言わないエンタープライズアジャイル導入 - Agile Japan 2016
アジャイルと言わないエンタープライズアジャイル導入 - Agile Japan 2016アジャイルと言わないエンタープライズアジャイル導入 - Agile Japan 2016
アジャイルと言わないエンタープライズアジャイル導入 - Agile Japan 2016Yusuke Suzuki
 
ユーザー企業へのアジャイル導入四苦八苦 - エンタープライズアジャイル勉強会2016年11月セミナー
ユーザー企業へのアジャイル導入四苦八苦 - エンタープライズアジャイル勉強会2016年11月セミナーユーザー企業へのアジャイル導入四苦八苦 - エンタープライズアジャイル勉強会2016年11月セミナー
ユーザー企業へのアジャイル導入四苦八苦 - エンタープライズアジャイル勉強会2016年11月セミナーYusuke Suzuki
 
『アプリケーション アーキテクチャ ガイド2.0』のガイド
『アプリケーション アーキテクチャ ガイド2.0』のガイド『アプリケーション アーキテクチャ ガイド2.0』のガイド
『アプリケーション アーキテクチャ ガイド2.0』のガイドKentaro Inomata
 

Ähnlich wie 今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016 (20)

マイクロサービスアーキテクチャ - アーキテクチャ設計の歴史を背景に
マイクロサービスアーキテクチャ - アーキテクチャ設計の歴史を背景にマイクロサービスアーキテクチャ - アーキテクチャ設計の歴史を背景に
マイクロサービスアーキテクチャ - アーキテクチャ設計の歴史を背景に
 
アジャイル開発を支えるアーキテクチャ設計とは
アジャイル開発を支えるアーキテクチャ設計とはアジャイル開発を支えるアーキテクチャ設計とは
アジャイル開発を支えるアーキテクチャ設計とは
 
Javaエンジニアのための"クラウド時代の過ごし方" Java Day Tokyo 2016
Javaエンジニアのための"クラウド時代の過ごし方" Java Day Tokyo 2016Javaエンジニアのための"クラウド時代の過ごし方" Java Day Tokyo 2016
Javaエンジニアのための"クラウド時代の過ごし方" Java Day Tokyo 2016
 
開発現場から考える プロジェクトで活躍する 新入社員の育て方とは?
開発現場から考えるプロジェクトで活躍する新入社員の育て方とは?開発現場から考えるプロジェクトで活躍する新入社員の育て方とは?
開発現場から考える プロジェクトで活躍する 新入社員の育て方とは?
 
クラウド時代のエンジニアについて #sesfukui
クラウド時代のエンジニアについて #sesfukuiクラウド時代のエンジニアについて #sesfukui
クラウド時代のエンジニアについて #sesfukui
 
ウォーターフォールとアジャイルを考える #ita_ws
ウォーターフォールとアジャイルを考える #ita_wsウォーターフォールとアジャイルを考える #ita_ws
ウォーターフォールとアジャイルを考える #ita_ws
 
Javaのカルチャーとグロース - MANABIYA 2018
Javaのカルチャーとグロース - MANABIYA 2018Javaのカルチャーとグロース - MANABIYA 2018
Javaのカルチャーとグロース - MANABIYA 2018
 
マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018
マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018
マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018
 
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017
 
エンタープライズアジャイルと全体最適について ~アーキテクチャ設計とウォーターフォールの必要性~
エンタープライズアジャイルと全体最適について ~アーキテクチャ設計とウォーターフォールの必要性~エンタープライズアジャイルと全体最適について ~アーキテクチャ設計とウォーターフォールの必要性~
エンタープライズアジャイルと全体最適について ~アーキテクチャ設計とウォーターフォールの必要性~
 
ITトレンドに見る日本のエンタープライズITについて
ITトレンドに見る日本のエンタープライズITについてITトレンドに見る日本のエンタープライズITについて
ITトレンドに見る日本のエンタープライズITについて
 
MicroserviceでのNoOps戦略 - NoOps Meetup Tokyo #2 #NoOpsJP
MicroserviceでのNoOps戦略 - NoOps Meetup Tokyo #2 #NoOpsJPMicroserviceでのNoOps戦略 - NoOps Meetup Tokyo #2 #NoOpsJP
MicroserviceでのNoOps戦略 - NoOps Meetup Tokyo #2 #NoOpsJP
 
アーキテクチャのレビューについて - JaSST Review '18
アーキテクチャのレビューについて - JaSST Review '18アーキテクチャのレビューについて - JaSST Review '18
アーキテクチャのレビューについて - JaSST Review '18
 
エンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナー
エンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナーエンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナー
エンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナー
 
「ITアーキテクトの役割と責任」デブサミ2015 20-C-1
「ITアーキテクトの役割と責任」デブサミ2015 20-C-1「ITアーキテクトの役割と責任」デブサミ2015 20-C-1
「ITアーキテクトの役割と責任」デブサミ2015 20-C-1
 
エンタープライズアジャイルにおける要求探索の勘所 要求開発アライアンス2018年7月定例会
エンタープライズアジャイルにおける要求探索の勘所 要求開発アライアンス2018年7月定例会エンタープライズアジャイルにおける要求探索の勘所 要求開発アライアンス2018年7月定例会
エンタープライズアジャイルにおける要求探索の勘所 要求開発アライアンス2018年7月定例会
 
ドメイン『駆動』『開発』
ドメイン『駆動』『開発』ドメイン『駆動』『開発』
ドメイン『駆動』『開発』
 
アジャイルと言わないエンタープライズアジャイル導入 - Agile Japan 2016
アジャイルと言わないエンタープライズアジャイル導入 - Agile Japan 2016アジャイルと言わないエンタープライズアジャイル導入 - Agile Japan 2016
アジャイルと言わないエンタープライズアジャイル導入 - Agile Japan 2016
 
ユーザー企業へのアジャイル導入四苦八苦 - エンタープライズアジャイル勉強会2016年11月セミナー
ユーザー企業へのアジャイル導入四苦八苦 - エンタープライズアジャイル勉強会2016年11月セミナーユーザー企業へのアジャイル導入四苦八苦 - エンタープライズアジャイル勉強会2016年11月セミナー
ユーザー企業へのアジャイル導入四苦八苦 - エンタープライズアジャイル勉強会2016年11月セミナー
 
『アプリケーション アーキテクチャ ガイド2.0』のガイド
『アプリケーション アーキテクチャ ガイド2.0』のガイド『アプリケーション アーキテクチャ ガイド2.0』のガイド
『アプリケーション アーキテクチャ ガイド2.0』のガイド
 

Mehr von Yusuke Suzuki

見えない壁を越えよう!アジャイルやマイクロサービスを阻む「今までのやり方」 - デブサミ夏2023
見えない壁を越えよう!アジャイルやマイクロサービスを阻む「今までのやり方」 - デブサミ夏2023見えない壁を越えよう!アジャイルやマイクロサービスを阻む「今までのやり方」 - デブサミ夏2023
見えない壁を越えよう!アジャイルやマイクロサービスを阻む「今までのやり方」 - デブサミ夏2023Yusuke Suzuki
 
サービスブループリントによるシステム設計手法の紹介 - XP祭り2022
サービスブループリントによるシステム設計手法の紹介 - XP祭り2022サービスブループリントによるシステム設計手法の紹介 - XP祭り2022
サービスブループリントによるシステム設計手法の紹介 - XP祭り2022Yusuke Suzuki
 
マイクロサービスに至る歴史とこれから - XP祭り2021
マイクロサービスに至る歴史とこれから - XP祭り2021マイクロサービスに至る歴史とこれから - XP祭り2021
マイクロサービスに至る歴史とこれから - XP祭り2021Yusuke Suzuki
 
Javaとコミュニティの歩み 2020
Javaとコミュニティの歩み 2020Javaとコミュニティの歩み 2020
Javaとコミュニティの歩み 2020Yusuke Suzuki
 
エンタプライズ領域のアジャイル開発の課題 - FIT2020
エンタプライズ領域のアジャイル開発の課題 - FIT2020エンタプライズ領域のアジャイル開発の課題 - FIT2020
エンタプライズ領域のアジャイル開発の課題 - FIT2020Yusuke Suzuki
 
DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏
DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏
DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏Yusuke Suzuki
 
エンタープライズ、アーキテクチャ、アジャイルのこれから
エンタープライズ、アーキテクチャ、アジャイルのこれからエンタープライズ、アーキテクチャ、アジャイルのこれから
エンタープライズ、アーキテクチャ、アジャイルのこれからYusuke Suzuki
 
Javaはコミュニティの力で再び偉大になれるのか
Javaはコミュニティの力で再び偉大になれるのかJavaはコミュニティの力で再び偉大になれるのか
Javaはコミュニティの力で再び偉大になれるのかYusuke Suzuki
 
JJUG初心者のためのJava/JJUG講座
JJUG初心者のためのJava/JJUG講座JJUG初心者のためのJava/JJUG講座
JJUG初心者のためのJava/JJUG講座Yusuke Suzuki
 
エナジャイル設立によせて
エナジャイル設立によせてエナジャイル設立によせて
エナジャイル設立によせてYusuke Suzuki
 
JavaとOSSとAndroid - JavaAPI訴訟問題を考える
JavaとOSSとAndroid - JavaAPI訴訟問題を考えるJavaとOSSとAndroid - JavaAPI訴訟問題を考える
JavaとOSSとAndroid - JavaAPI訴訟問題を考えるYusuke Suzuki
 
「JJUG運営の戦略と戦術」 JJUG CCC 2016 Spring 基調講演
「JJUG運営の戦略と戦術」 JJUG CCC 2016 Spring 基調講演「JJUG運営の戦略と戦術」 JJUG CCC 2016 Spring 基調講演
「JJUG運営の戦略と戦術」 JJUG CCC 2016 Spring 基調講演Yusuke Suzuki
 

Mehr von Yusuke Suzuki (12)

見えない壁を越えよう!アジャイルやマイクロサービスを阻む「今までのやり方」 - デブサミ夏2023
見えない壁を越えよう!アジャイルやマイクロサービスを阻む「今までのやり方」 - デブサミ夏2023見えない壁を越えよう!アジャイルやマイクロサービスを阻む「今までのやり方」 - デブサミ夏2023
見えない壁を越えよう!アジャイルやマイクロサービスを阻む「今までのやり方」 - デブサミ夏2023
 
サービスブループリントによるシステム設計手法の紹介 - XP祭り2022
サービスブループリントによるシステム設計手法の紹介 - XP祭り2022サービスブループリントによるシステム設計手法の紹介 - XP祭り2022
サービスブループリントによるシステム設計手法の紹介 - XP祭り2022
 
マイクロサービスに至る歴史とこれから - XP祭り2021
マイクロサービスに至る歴史とこれから - XP祭り2021マイクロサービスに至る歴史とこれから - XP祭り2021
マイクロサービスに至る歴史とこれから - XP祭り2021
 
Javaとコミュニティの歩み 2020
Javaとコミュニティの歩み 2020Javaとコミュニティの歩み 2020
Javaとコミュニティの歩み 2020
 
エンタプライズ領域のアジャイル開発の課題 - FIT2020
エンタプライズ領域のアジャイル開発の課題 - FIT2020エンタプライズ領域のアジャイル開発の課題 - FIT2020
エンタプライズ領域のアジャイル開発の課題 - FIT2020
 
DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏
DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏
DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏
 
エンタープライズ、アーキテクチャ、アジャイルのこれから
エンタープライズ、アーキテクチャ、アジャイルのこれからエンタープライズ、アーキテクチャ、アジャイルのこれから
エンタープライズ、アーキテクチャ、アジャイルのこれから
 
Javaはコミュニティの力で再び偉大になれるのか
Javaはコミュニティの力で再び偉大になれるのかJavaはコミュニティの力で再び偉大になれるのか
Javaはコミュニティの力で再び偉大になれるのか
 
JJUG初心者のためのJava/JJUG講座
JJUG初心者のためのJava/JJUG講座JJUG初心者のためのJava/JJUG講座
JJUG初心者のためのJava/JJUG講座
 
エナジャイル設立によせて
エナジャイル設立によせてエナジャイル設立によせて
エナジャイル設立によせて
 
JavaとOSSとAndroid - JavaAPI訴訟問題を考える
JavaとOSSとAndroid - JavaAPI訴訟問題を考えるJavaとOSSとAndroid - JavaAPI訴訟問題を考える
JavaとOSSとAndroid - JavaAPI訴訟問題を考える
 
「JJUG運営の戦略と戦術」 JJUG CCC 2016 Spring 基調講演
「JJUG運営の戦略と戦術」 JJUG CCC 2016 Spring 基調講演「JJUG運営の戦略と戦術」 JJUG CCC 2016 Spring 基調講演
「JJUG運営の戦略と戦術」 JJUG CCC 2016 Spring 基調講演
 

今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016