Upgrade to Pro — share decks privately, control downloads, hide ads and more …

LT talk @ SHIFT Evolve on 2021-09-21 (in Japanese)

Tadashi Murakami
September 22, 2021
200

LT talk @ SHIFT Evolve on 2021-09-21 (in Japanese)

Tadashi Murakami

September 22, 2021
Tweet

Transcript

  1. 自己紹介 村上 直 株式会社SHIFT で CAT(テスト管理ツール) サービス&テクノロジー本部 技術統括部 開発支援プロダクト推進部 CAT開発室

    時系列(降順) 茨城で研究所 DevOps (設計開発導入、セキュリティ、サーバ構築) 研究 六本木ヒルズでガラケーサイト開発 渋谷でシステムコンサル屋 Stoplight Studioではじめるスキーマ駆動開発        SHIFT EVOLVE LT会 Vol.4 「小さなものから大きなものまで 開発あるある」  2021-09-21 2
  2. 背景 社内既存プロダクト、基盤へと統合し相乗効果出したい テスト管理、業務管理、教育コンテンツ、、、 技術選定、プロダクト開発:0 → 1 な開発 データを再利用化していきたい REST API開発が大量発生

    現在Node.js、expressを使って開発中 3ヶ月で約100本のAPI開発本数が必要 Stoplight Studioではじめるスキーマ駆動開発        SHIFT EVOLVE LT会 Vol.4 「小さなものから大きなものまで 開発あるある」  2021-09-21 3
  3. REST API開発の課題 定義と実装 API定義書と実装がズレる API定義書の記述があいまいで実装依存が発生 バリデーション処理 面倒! 入出力が階層構造をもつことが多い わずかなIF変更がAPI利用者側に影響 小さな綻びが積み重なってくる

    → 大きくなって取り返しがつかない! Stoplight Studioではじめるスキーマ駆動開発        SHIFT EVOLVE LT会 Vol.4 「小さなものから大きなものまで 開発あるある」  2021-09-21 4
  4. YAML JSON ⽣成 ⽣成 利⽤ ⽣成物の YAML/JSON が利⽤され、 妥当性チェックが働いている •

    REST API⼊出⼒設計 • GUI ⇔ CUI • ⼊出⼒バリデーション • ⾃動テスト • APIリファレンス⽣成 OpenAPI規格のエコシステムに乗ろう︕ DRYに⾏こう︕ OpenAPI Document Donʼt Repeat Yourself! Stoplight Studioではじめるスキーマ駆動開発        SHIFT EVOLVE LT会 Vol.4 「小さなものから大きなものまで 開発あるある」  2021-09-21 6
  5. Stoplight Studio OpenAPI(Swagger)形式に準拠 REST API入出力設計をGUIで行える URL pathやパラメータをGUIにて入力 → 対応するYAMLが階層構造でザクザクと生成される GUI(煩雑)

    と CUI(複雑) を行き来できる GUI: 構文やパラメータ名など CUI: 中身を埋めるなど 安心感: 複雑化するYAMLが常に構文チェックされる プレビュー: YAMLの全体構造を見渡す Mac版、Windows版、Web版、Linux版 Stoplight Studioではじめるスキーマ駆動開発        SHIFT EVOLVE LT会 Vol.4 「小さなものから大きなものまで 開発あるある」  2021-09-21 7