Enviar pesquisa
Carregar
JSUG 2018 BTC
•
Transferir como PPTX, PDF
•
2 gostaram
•
1,711 visualizações
K
kazukiotomori
Seguir
JSUG2018(3/7)で発表したスライドです。
Leia menos
Leia mais
Engenharia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 47
Baixar agora
Recomendados
Springのプログラムモデルと動く仕様~テスト編~
Springのプログラムモデルと動く仕様~テスト編~
terahide
Pepper+独自会話エンジン
Pepper+独自会話エンジン
Recruit Technologies
DataRobot活用状況@リクルートテクノロジーズ
DataRobot活用状況@リクルートテクノロジーズ
Recruit Technologies
運用で泣かないアーキテクチャで動く原稿作成支援システム ~リクルートにおけるDeepLearning活用事例~
運用で泣かないアーキテクチャで動く原稿作成支援システム ~リクルートにおけるDeepLearning活用事例~
Recruit Technologies
ユーザー企業内製CSIRTにおける対応のポイント
ユーザー企業内製CSIRTにおける対応のポイント
Recruit Technologies
リクルートはいかにして、ディープラーニング(深層学習)の導入を成功させたか
リクルートはいかにして、ディープラーニング(深層学習)の導入を成功させたか
Recruit Technologies
ユーザー企業内製CSIRTにおける対応のポイント
ユーザー企業内製CSIRTにおける対応のポイント
Recruit Technologies
リクルート式AIの活用法
リクルート式AIの活用法
Recruit Technologies
Recomendados
Springのプログラムモデルと動く仕様~テスト編~
Springのプログラムモデルと動く仕様~テスト編~
terahide
Pepper+独自会話エンジン
Pepper+独自会話エンジン
Recruit Technologies
DataRobot活用状況@リクルートテクノロジーズ
DataRobot活用状況@リクルートテクノロジーズ
Recruit Technologies
運用で泣かないアーキテクチャで動く原稿作成支援システム ~リクルートにおけるDeepLearning活用事例~
運用で泣かないアーキテクチャで動く原稿作成支援システム ~リクルートにおけるDeepLearning活用事例~
Recruit Technologies
ユーザー企業内製CSIRTにおける対応のポイント
ユーザー企業内製CSIRTにおける対応のポイント
Recruit Technologies
リクルートはいかにして、ディープラーニング(深層学習)の導入を成功させたか
リクルートはいかにして、ディープラーニング(深層学習)の導入を成功させたか
Recruit Technologies
ユーザー企業内製CSIRTにおける対応のポイント
ユーザー企業内製CSIRTにおける対応のポイント
Recruit Technologies
リクルート式AIの活用法
リクルート式AIの活用法
Recruit Technologies
リクルートにおけるデータのインフラ化への取組
リクルートにおけるデータのインフラ化への取組
Recruit Technologies
Ques12「AIのテスト~誤検知と検出漏れ~」
Ques12「AIのテスト~誤検知と検出漏れ~」
hirokazuoishi
リクルートにおけるマルチモーダル Deep Learning Web API 開発事例
リクルートにおけるマルチモーダル Deep Learning Web API 開発事例
Recruit Technologies
3万人が利用するリクルートのワイヤレス環境 ~リアクティブからプロアクティブへ~
3万人が利用するリクルートのワイヤレス環境 ~リアクティブからプロアクティブへ~
Recruit Technologies
リクルート式 自然言語処理技術の適応事例紹介
リクルート式 自然言語処理技術の適応事例紹介
Recruit Technologies
リクルートテクノロジーズが語る 企業における、「AI/ディープラーニング」活用のリアル
リクルートテクノロジーズが語る 企業における、「AI/ディープラーニング」活用のリアル
Recruit Technologies
Case study of DevOps for Hadoop in Recruit.
Case study of DevOps for Hadoop in Recruit.
Recruit Technologies
[Track4-3] AI・ディープラーニングを駆使して、「G検定合格者アンケートのフリーコメント欄」を分析してみた
[Track4-3] AI・ディープラーニングを駆使して、「G検定合格者アンケートのフリーコメント欄」を分析してみた
Deep Learning Lab(ディープラーニング・ラボ)
機械学習システムの品質保証に向けた課題とコンソーシアム活動
機械学習システムの品質保証に向けた課題とコンソーシアム活動
Hideto Ogawa
機械学習品質管理・保証の動向と取り組み
機械学習品質管理・保証の動向と取り組み
Shintaro Fukushima
オーバーエンジニアリングって何? #devsumi #devsumiA
オーバーエンジニアリングって何? #devsumi #devsumiA
Ore Product
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介
Recruit Technologies
UXDの職能要件とキャリアパスについて
UXDの職能要件とキャリアパスについて
Recruit Technologies
リクルートにおけるセキュリティ施策方針とCSIRT組織運営のポイント
リクルートにおけるセキュリティ施策方針とCSIRT組織運営のポイント
Recruit Technologies
[GTC 2018] GTCテクニカルセッション_0913 Ridge-i発表資料
[GTC 2018] GTCテクニカルセッション_0913 Ridge-i発表資料
Ridge-i
リクルートにおける画像解析事例紹介
リクルートにおける画像解析事例紹介
Recruit Technologies
LT(自由)
LT(自由)
Recruit Technologies
[Track1-5] 製造業における最新AI適用事例のご紹介
[Track1-5] 製造業における最新AI適用事例のご紹介
Deep Learning Lab(ディープラーニング・ラボ)
俺プロ オーバーエンジニアリング
俺プロ オーバーエンジニアリング
Ore Product
リクルート式ビッグデータ活用術
リクルート式ビッグデータ活用術
Recruit Technologies
私たち企業がアクセシビリティに取り組む理由(2018年) #accfes
私たち企業がアクセシビリティに取り組む理由(2018年) #accfes
Yahoo!デベロッパーネットワーク
React vtecx20171025
React vtecx20171025
Shinichiro Takezaki
Mais conteúdo relacionado
Mais procurados
リクルートにおけるデータのインフラ化への取組
リクルートにおけるデータのインフラ化への取組
Recruit Technologies
Ques12「AIのテスト~誤検知と検出漏れ~」
Ques12「AIのテスト~誤検知と検出漏れ~」
hirokazuoishi
リクルートにおけるマルチモーダル Deep Learning Web API 開発事例
リクルートにおけるマルチモーダル Deep Learning Web API 開発事例
Recruit Technologies
3万人が利用するリクルートのワイヤレス環境 ~リアクティブからプロアクティブへ~
3万人が利用するリクルートのワイヤレス環境 ~リアクティブからプロアクティブへ~
Recruit Technologies
リクルート式 自然言語処理技術の適応事例紹介
リクルート式 自然言語処理技術の適応事例紹介
Recruit Technologies
リクルートテクノロジーズが語る 企業における、「AI/ディープラーニング」活用のリアル
リクルートテクノロジーズが語る 企業における、「AI/ディープラーニング」活用のリアル
Recruit Technologies
Case study of DevOps for Hadoop in Recruit.
Case study of DevOps for Hadoop in Recruit.
Recruit Technologies
[Track4-3] AI・ディープラーニングを駆使して、「G検定合格者アンケートのフリーコメント欄」を分析してみた
[Track4-3] AI・ディープラーニングを駆使して、「G検定合格者アンケートのフリーコメント欄」を分析してみた
Deep Learning Lab(ディープラーニング・ラボ)
機械学習システムの品質保証に向けた課題とコンソーシアム活動
機械学習システムの品質保証に向けた課題とコンソーシアム活動
Hideto Ogawa
機械学習品質管理・保証の動向と取り組み
機械学習品質管理・保証の動向と取り組み
Shintaro Fukushima
オーバーエンジニアリングって何? #devsumi #devsumiA
オーバーエンジニアリングって何? #devsumi #devsumiA
Ore Product
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介
Recruit Technologies
UXDの職能要件とキャリアパスについて
UXDの職能要件とキャリアパスについて
Recruit Technologies
リクルートにおけるセキュリティ施策方針とCSIRT組織運営のポイント
リクルートにおけるセキュリティ施策方針とCSIRT組織運営のポイント
Recruit Technologies
[GTC 2018] GTCテクニカルセッション_0913 Ridge-i発表資料
[GTC 2018] GTCテクニカルセッション_0913 Ridge-i発表資料
Ridge-i
リクルートにおける画像解析事例紹介
リクルートにおける画像解析事例紹介
Recruit Technologies
LT(自由)
LT(自由)
Recruit Technologies
[Track1-5] 製造業における最新AI適用事例のご紹介
[Track1-5] 製造業における最新AI適用事例のご紹介
Deep Learning Lab(ディープラーニング・ラボ)
俺プロ オーバーエンジニアリング
俺プロ オーバーエンジニアリング
Ore Product
リクルート式ビッグデータ活用術
リクルート式ビッグデータ活用術
Recruit Technologies
Mais procurados
(20)
リクルートにおけるデータのインフラ化への取組
リクルートにおけるデータのインフラ化への取組
Ques12「AIのテスト~誤検知と検出漏れ~」
Ques12「AIのテスト~誤検知と検出漏れ~」
リクルートにおけるマルチモーダル Deep Learning Web API 開発事例
リクルートにおけるマルチモーダル Deep Learning Web API 開発事例
3万人が利用するリクルートのワイヤレス環境 ~リアクティブからプロアクティブへ~
3万人が利用するリクルートのワイヤレス環境 ~リアクティブからプロアクティブへ~
リクルート式 自然言語処理技術の適応事例紹介
リクルート式 自然言語処理技術の適応事例紹介
リクルートテクノロジーズが語る 企業における、「AI/ディープラーニング」活用のリアル
リクルートテクノロジーズが語る 企業における、「AI/ディープラーニング」活用のリアル
Case study of DevOps for Hadoop in Recruit.
Case study of DevOps for Hadoop in Recruit.
[Track4-3] AI・ディープラーニングを駆使して、「G検定合格者アンケートのフリーコメント欄」を分析してみた
[Track4-3] AI・ディープラーニングを駆使して、「G検定合格者アンケートのフリーコメント欄」を分析してみた
機械学習システムの品質保証に向けた課題とコンソーシアム活動
機械学習システムの品質保証に向けた課題とコンソーシアム活動
機械学習品質管理・保証の動向と取り組み
機械学習品質管理・保証の動向と取り組み
オーバーエンジニアリングって何? #devsumi #devsumiA
オーバーエンジニアリングって何? #devsumi #devsumiA
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介
UXDの職能要件とキャリアパスについて
UXDの職能要件とキャリアパスについて
リクルートにおけるセキュリティ施策方針とCSIRT組織運営のポイント
リクルートにおけるセキュリティ施策方針とCSIRT組織運営のポイント
[GTC 2018] GTCテクニカルセッション_0913 Ridge-i発表資料
[GTC 2018] GTCテクニカルセッション_0913 Ridge-i発表資料
リクルートにおける画像解析事例紹介
リクルートにおける画像解析事例紹介
LT(自由)
LT(自由)
[Track1-5] 製造業における最新AI適用事例のご紹介
[Track1-5] 製造業における最新AI適用事例のご紹介
俺プロ オーバーエンジニアリング
俺プロ オーバーエンジニアリング
リクルート式ビッグデータ活用術
リクルート式ビッグデータ活用術
Semelhante a JSUG 2018 BTC
私たち企業がアクセシビリティに取り組む理由(2018年) #accfes
私たち企業がアクセシビリティに取り組む理由(2018年) #accfes
Yahoo!デベロッパーネットワーク
React vtecx20171025
React vtecx20171025
Shinichiro Takezaki
ISID IIoT Forum_180628
ISID IIoT Forum_180628
知礼 八子
React vtecx20171129
React vtecx20171129
Shinichiro Takezaki
Googleアシスタントアプリ実際のところ
Googleアシスタントアプリ実際のところ
Yahoo!デベロッパーネットワーク
Smfl20201001
Smfl20201001
三井住友ファイナンス&リース デジタル開発室
2018年12月15日 AITC女子会 顔認識を活用したセミナー参加者の満足度分析
2018年12月15日 AITC女子会 顔認識を活用したセミナー参加者の満足度分析
aitc_jp
ソフトウェアジャパン2018 ITフォーラムセッション(3)
ソフトウェアジャパン2018 ITフォーラムセッション(3)
aitc_jp
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Recruit Technologies
誰でもできるGoogleアシスタント開発
誰でもできるGoogleアシスタント開発
Namito Satoyama
モデリングの彼方に未来を見た
モデリングの彼方に未来を見た
Hagimoto Junzo
AIビジネス推進人材育成プログラムのご紹介
AIビジネス推進人材育成プログラムのご紹介
munjapan
Api meet up online#6 session1 ginco
Api meet up online#6 session1 ginco
Nihei Tsukasa
GitLab で実現する Ansible コードの管理
GitLab で実現する Ansible コードの管理
裕貴 荒井
Wg for ai_dev_ops_20180713
Wg for ai_dev_ops_20180713
Yutaka Terasawa
アプリのプロダクトマネージャーからみるScrum開発
アプリのプロダクトマネージャーからみるScrum開発
Yahoo!デベロッパーネットワーク
塹壕にいるすべての同朋へ
塹壕にいるすべての同朋へ
toshihiro ichitani
Amazon SageMakerを使った機械学習モデル管理運用システム構築事例
Amazon SageMakerを使った機械学習モデル管理運用システム構築事例
Seongduk Cheon
AITCオープンラボ 2018年5月度(2)
AITCオープンラボ 2018年5月度(2)
aitc_jp
AI開発支援サービス
AI開発支援サービス
munjapan
Semelhante a JSUG 2018 BTC
(20)
私たち企業がアクセシビリティに取り組む理由(2018年) #accfes
私たち企業がアクセシビリティに取り組む理由(2018年) #accfes
React vtecx20171025
React vtecx20171025
ISID IIoT Forum_180628
ISID IIoT Forum_180628
React vtecx20171129
React vtecx20171129
Googleアシスタントアプリ実際のところ
Googleアシスタントアプリ実際のところ
Smfl20201001
Smfl20201001
2018年12月15日 AITC女子会 顔認識を活用したセミナー参加者の満足度分析
2018年12月15日 AITC女子会 顔認識を活用したセミナー参加者の満足度分析
ソフトウェアジャパン2018 ITフォーラムセッション(3)
ソフトウェアジャパン2018 ITフォーラムセッション(3)
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
誰でもできるGoogleアシスタント開発
誰でもできるGoogleアシスタント開発
モデリングの彼方に未来を見た
モデリングの彼方に未来を見た
AIビジネス推進人材育成プログラムのご紹介
AIビジネス推進人材育成プログラムのご紹介
Api meet up online#6 session1 ginco
Api meet up online#6 session1 ginco
GitLab で実現する Ansible コードの管理
GitLab で実現する Ansible コードの管理
Wg for ai_dev_ops_20180713
Wg for ai_dev_ops_20180713
アプリのプロダクトマネージャーからみるScrum開発
アプリのプロダクトマネージャーからみるScrum開発
塹壕にいるすべての同朋へ
塹壕にいるすべての同朋へ
Amazon SageMakerを使った機械学習モデル管理運用システム構築事例
Amazon SageMakerを使った機械学習モデル管理運用システム構築事例
AITCオープンラボ 2018年5月度(2)
AITCオープンラボ 2018年5月度(2)
AI開発支援サービス
AI開発支援サービス
JSUG 2018 BTC
1.
JSUG API時代の仮説検証開発の提言とツール ~API編~ 株式会社ビッグツリーテクノロジー&コンサルティング SI事業部 アーキテクチャG 音森 一輝
2.
2Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 自己紹介
3.
3Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 音森 一輝 (株)ビッグツリーテクノロジー&コンサルティング (BTC) 新卒2年目 早稲田でくまさんを作る およいで うたって おさけをのむ 自己紹介
4.
4Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 従来の開発
5.
5Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 従来の開発 開発あるある 要件定義 設計 開発 テスト 運用・保守 クライアント ベンダ 試しに画面 レイアウト 作ってみま した! ここの イメージは ちょっと 違う… こんな感じ で設計して みました! ユーザ属性 が1つ抜け てた… 実装の都合 上、設計を 変えさせて ください! 検証環境で 触ってみた いんだけど バグ要望バ グバグ要望 要望バグバ グバグ要望 序盤で漏れなく検討する必要がある
6.
6Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. まず プロジェクトのあるある
7.
7Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. それから ちょっと未来の開発手法
8.
8Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 実例
9.
9Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 2つの粒度のプロジェクト 実例 粗 粒度 細
10.
10Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 実例1
11.
11Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. プロジェクト概要 • 半年間設計/プロト開発、一年間本開発 • 複数ベンダのAPIと連携する • フロントとAPIの開発 実例1 フロント API API ベンダA ベンダB データ 細かいところまで仕様が決定している
12.
12Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 並行開発 システムの特徴 既存 なし 設計書 あり 本番も叩ける 環境 検証も叩けない 読める ソースコード 読めない 実例1 ベンダA ベンダB 全く性質の異なるAPI
13.
13Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 設計書 環境 ソースコード 実例1 コミュニケーションレイヤ クライアント(APIを使う人) ベンダ(APIを作る人) どの層で議論するかは重要
14.
14Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. ベンダA 「返戻値で成功したか判定してください」 私 「なんだか挙動がおかしいです」 ベンダA 「返戻の形式を変えてしまいました」 私 「修正が必要ですね…」 実例1 ベンダA・並行開発 実環境は叩けるけど、変更が生じる
15.
15Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 私(APIを使う人) ベンダA・並行開発(APIを作る人) 実例1 何が起こったか? 設計書 環境 ソースコード 環境を叩きな がら開発を進 めていた ソースを変 更して環境 に反映した 環境から返戻さ れる値が異なる ことに気づいた
16.
16Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 設計書 環境 ソースコード 私(APIを使う人) ベンダA・並行開発(APIを作る人) 実例1 どうすべきだったか? ソースを変更し たので確認して おいてください 環境に反映した ので確認してお いてください 設計書に反映し たので確認して おいてください 変更について即時伝達すべき
17.
17Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. ベンダB・既存 ベンダB 「設計書を見て開発してください」 私 「検証環境はいつから叩けますか?」 ベンダB 「8月からでお願いします」 私 「総合テスト(9月)直前ですね…」 実例1 設計書はあるけど、正しいかわからない
18.
18Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 設計書 環境 ソースコード 私(APIを使う人) ベンダB・既存(APIを作る人) 実例1 何が起こったか? 設計書を見な がら開発を進 めていた 環境を叩き ながら開発 したかった ソースコード と設計書の乖 離があった 連携テスト で確認
19.
19Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 設計書 環境 ソースコード 私(APIを使う人) 実例1 どうすべきだったか? ソース コードを 公開 環境を 用意して 公開 設計書の 整備を 確実に 設計書の信頼性を担保すべき ベンダB・既存(APIを作る人)
20.
20Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 実例2
21.
21Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 実例2 コミュニケーション齟齬の危険性 • クライアントが遠方 • 対面で説明できない • 要望はなんとなくしか決まっていない • API仕様はBTCが検討 クライアント
22.
22Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 実例からの課題点 仕様の粒度を細かくしたいクライアント ベンダA ベンダB 変更について即時伝達したい 設計書の信頼性を担保したい 粒度が荒い 粒度が細かい ちょっと未来の開発手法
23.
23Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 仮説検証開発
24.
24Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 仮説検証開発 仮説 仮実装 入出力設計検証 仮説検証とは? • クライアントの要望が正しいかどうか • 仕様が正しいかどうか • 動いてるシステムが正しいかどうか 正しいものに近付ける 万能ソリューション
25.
25Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 仮説検証開発 仮説 仮実装 入出力設計検証 使う人 作る人 どんなシステム にしたいか イメージはあり ますか? 完璧には具 体化できて ない…
26.
26Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 仮説検証開発 仮説 仮実装 入出力設計検証 使う人作る人 試しにAPI 仕様書を 作ってみま した! この構造だ とここの 項目が足り ない…
27.
27Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 仮説検証開発 仮説 仮実装 入出力設計検証 使う人 作る人 項目を加え て実装しま した! 実際に叩い てみても いいかな?
28.
28Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 仮説検証開発 仮説 仮実装 入出力設計検証 使う人 作る人 検証環境にあ げました! おお! イメージ どおり! 仮説検証を繰り返し 齟齬をなくしていく手法
29.
29Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 仮説検証開発を適用 仕様の粒度を細かくしたいクライアント ベンダA ベンダB 変更について即時伝達したい 設計書の信頼性を担保したい ①早い段階で検証する ③ドキュメントの乖離をなくす ②検証のサイクルを回し続ける
30.
30Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. それらを支援するツール あります
31.
31Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 仮説検証開発を適用 ①早い段階で検証するクライアント • REST APIを記述するためのオープンフレームワーク • ymlファイルで管理(JSONも使用可) • Swagger EditorでSpecificationを編集 • Specificationからコードを自動生成 Swagger
32.
32Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 設計書 環境 ソースコード 遠方のクライアント(APIを使う人) 仮説検証開発を適用 何をしたか? Swaggerを使 用してエンド ポイントや入 出力を整理 仕様が荒い段階から仮説検証を繰り返す BTC(APIを作る人) 実際に叩いて入 出力を検討 開発 デプロイ 検証
33.
33Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. Swagger デモ
34.
34Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. • メリット 実際に叩ける ymlファイルをgitで構成管理できる • デメリット ソースコードと連携していない リビジョンへの対応が必要 Swagger
35.
35Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 仮説検証開発を適用 ②検証のサイクルを回し続けるベンダA • Springのソースコードから仕様書を自動生成できる ツール • アノテーションを付与して設定 • Swagger UIでクライアント画面を作成 • CIツールと組み合わせることで即時通知可能 SpringFox
36.
36Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 設計書 環境 ソースコード 私(APIを使う人) ベンダA・並行開発(APIを作る人) 仮説検証開発を適用 どうすべきだったか?(再掲) ソースを変更し たので確認して おいてください 環境に反映した ので確認してお いてください 設計書に反映し たので確認して おいてください 変更について即時伝達すべき
37.
37Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. SpringFox デモ
38.
38Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. SpringFox • メリット ソースコードと結びついた仕様書を自動生成 • デメリット 動くコードかは保証できない
39.
39Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 仮説検証開発を適用 ③ドキュメントの乖離をなくすベンダB • Springのテストコードから仕様書を自動生成できる ツール • テストに成功した結果をドキュメントとして出力 Spring REST Docs
40.
40Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 設計書 環境 ソースコード 私(APIを使う人) 仮説検証開発を適用 どうすべきだったか?(再掲) ソース コードを 公開 環境を 用意して 公開 設計書の 整備を 確実に 設計書の信頼性を担保すべき ベンダB・既存(APIを作る人)
41.
41Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. Spring REST Docs デモ
42.
42Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. Spring REST Docs • メリット テストに成功した結果なので信頼性が担保 • デメリット 設計ドキュメントには向いていない
43.
43Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 設計書 環境 ソースコード まとめ 3つのツールの関係 クライアント(APIを使う人) Swagger SpringFox Spring REST Docs ベンダ(APIを作る人) ソースコードから ドキュメントを生成 モックやスタブの 生成が可能 ローカルでも 動かせる 実行すると 画面から 叩ける テストコードから ドキュメントを生成
44.
44Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. まとめ Swagger SpringFox Spring REST Docs 実装コスト ※ 小 中 大 即時性 × ○ ○ 信頼性 × △ ○ ※仕様の粒度が荒い場合 3つのツールを比較
45.
45Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. まとめ • 仕様が曖昧な、正解がわからない開発には 仮説検証開発 • 設計書、環境、ソースコードの各レイヤで 最大限効果を発揮するツールを選択 • プロジェクトのリソース(工数)や規模、 スピード感とのバランスを保つことも重要
46.
46Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. 仮説検証開発という仮説
47.
47Copyright © 2018
Bigtree Technology&Consulting Ltd. All Rights Reserved. ありがとうございました
Baixar agora