Help us understand the problem. What is going on with this article?

[alexa day 2019 参加レポート]Backlog for Amazon Alexa enhance を 全部見せます

More than 1 year has passed since last update.

概要

登壇者: 伊東 知治さん
スライド: https://speakerdeck.com/haruharuharuby/backlog-for-amazon-alexa-enhance
ターゲット: Alexa Skill の開発の経験があるかた、もしくは、興味のあるかた

プロジェクト管理ツール Backlog とリンクすることのできる Alexa Skill version 2のエンハンスの中身全部見せます。
全ての機能をどのようにエンハンスしていったか。会話設計から各APIの実装、テストまで全部見せます。

引用: https://alexaday2019.aajug.jp/session/168/

導入

  • Backlog for Amazon Alexaというスキルがあり、今回v2の開発において...な話
  • v1の設計は主に以下から構成していた
    • communicationレイヤー
      • ユーザーとの会話を豊かにするレイヤー
    • workflowレイヤー
      • 発話内容から意図を汲み取り、処理するレイヤー
    • repositoryレイヤー
      • backlogAPI叩いたりしてデータを扱うレイヤー

Be a adviser

  • ボイスアシスタントは機能ではなくノウハウを実装すべき(アドバイザーであるべき)
  • プロジェクトマネジメントにおけるボイスアシスタントの役割はなにか考える
    • プロジェクトマネージャーは普段どうしてるのか考えてみる
    • インプット -> 分析/判断 -> 決定 じゃね?
    • つまり、アシスタントからは意思決定のための情報が欲しい
    • backlogの全機能をalexaから使える事ではない
  • backlogとユーザーをつなぐ部分にボイスアシスタントが一手間加える感じ

それを踏まえて新しい設計/実装

  • v1の設計をベースに、以下を追加
    • analyticsレイヤー
      • backlogから取得したデータを分析するレイヤー
  • aws codeStarおすすめ
  • codeStarは裏でcloudformationのデプロイが走る
    • ASK-CLIより遅い
    • エディタがcloud9はちょいネック
  • プロジェクト作成後、即デプロイすること
    • パイプラインを確立させておく
    • その後変更を加えていくのが安パイ
  • interactionModelを作ってあとからcodeStar経由でのデプロイは不可能
    • 注意書きにもそうあるっぽい
  • スライドではi18n/localizationなことにも触れてるので、多言語対応するなら参考になる
  • communicationレイヤーでは Talkクラス を作って、会話を構成してる
  • workflowレイヤーはハンドリングするだけなのでとてもシンプルに

感想

設計論的な話がメインで、アプリケーション設計とか勉強している身としてはとても面白かった。
- 関心事はなにか
- ボイスアシスタントはなにをすればいいのか
- オブジェクト指向
- DRY
などなどを考えた結果、こんな感じになったのかーととても心打たれた。

あと、codeStarおすすめは繰り返しおっしゃっていたので使ってみたい。

sugo
バックエンドエンジニアです。 awsでのインフラ構築とtypescriptでのAPI開発をよくやります。 技術に関する調査や検証の備忘録としてqiitaを利用。
cloudpack
Amazon Web Services (AWS) の導入設計、環境構築、運用・保守をサポートするマネジドホスティングサービス
https://cloudpack.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした