kintone si の楽しみ方!「kintone devcamp 2015...

54
Twitter: @yamaryu0508 FB: https://www.facebook.com/ryu.yamashita.3 2015年12月4日 株式会社ジョイゾー/kintoneエバンジェリスト/ kintone Café 運営事務局・東京支部 山下 竜 kintone SI の楽しみ方! -ファストの鍵- kintone devCamp 2015 【A-1】ファストSIのカスタマイズ事例 -SI開発者の裏側- #kintonedev

Upload: joyzo

Post on 09-Jan-2017

2.309 views

Category:

Software


1 download

TRANSCRIPT

Twitter: @yamaryu0508 FB: https://www.facebook.com/ryu.yamashita.3

2015年12月4日 株式会社ジョイゾー/kintoneエバンジェリスト/ kintone Café 運営事務局・東京支部 山下 竜

kintone SI の楽しみ方! -ファストの鍵-

kintone devCamp 2015 【A-1】ファストSIのカスタマイズ事例 -SI開発者の裏側-

#kintonedev

自己紹介「山下 竜」

2

2013.3 IOTとグループウェア(デヂエ)の連携を試みてkintone に出会う2014.4 - kintoneエバンジェリストに

2014.11 kintone好きが高じて、界隈初のkintone転職2015.2 kintone Café 運営事務局開設、事務局メンバーに

2014.5 - 2014.10 kintone Café 福岡 Vol.1 - 3を主催

現在(kintone歴2年ちょっと、AWS歴数週間) 多分、“日本で唯一100%kintoneでご飯食べてる人”

株式会社ジョイゾー 山下 竜(33) 福岡県大牟田市出身

「ブルーウェーブ」という共通点

会社紹介「株式会社ジョイゾー」

3

会社名  株式会社ジョイゾー 所在地  東京都江東区木場3-5-5 設立  2010年12月20日(6期目) 社員数  8名(kintoneエバンジェリスト2名) 主な事業  kintone導入支援・カスタマイズ開発  サイボウズOffice/ガルーン構築支援 案件の9割以上がkintone

日本初定額制来店型システム開発「システム39」

4

1Week20万円の定額kintoneカスタマイズ

5

kintone REST APIおさらい

kintone3大要素とREST API

7

データベース プロセス管理 コミュニケーション

充実 強化中 弱いAPIからの操作も3大要素をバランスよく活用することが重要!

API操作で3大機能同士を密に結合できるようになると、更に便利になると期待しています!

kintone3大要素とREST API(ポータル画面)

8

スペースの 作成・メンバー更新等

アプリの作成・更新

(欲しい)

(参考:「cybozu.com developer network > kintone API」)

kintone3大要素とREST API(詳細画面)

9

レコードの 取得・登録・更新・削除

添付ファイルの アップロード・ダウンロード

レコードの ステータス変更

(欲しい)(参考:「cybozu.com developer network > kintone API」)

kintone Advent Calendar前説

これ、今日のテーマに合ってるので先にご紹介!

kintone Advent Calendar 2015

全て予約済みです!

http://qiita.com/advent-calendar/2015/kintonekintone Advent Calnedar

kintone Advent Calendar 2015初日をやらせて頂きました!

これ、今日のテーマに合ってるので先にご紹介!

kintone Advent Calendar 2014 1日目

デモ!

本編

第1部 ジョイゾーの開発の裏側

kintoneエコシステム第2部

ジョイゾーの開発の裏側第1部

開発事例

三菱ふそうトラック・バス様

京王電鉄バス様

営業支援ツール

遺失物管理四輝学院様

学習塾運営

ジョイゾーの開発の裏側

結構オープンなのでありません?裏側は・・・

ジョイゾーの開発の裏側

kintoneを便利に使う方法を紹介するブログ JOYZO@slideshare

kintone基本/kintone REST API/kintone-JSの使い方 kintone Café等の資料公開https://www.joyzo.co.jp/blog/ http://www.slideshare.net/joyzojp

• アプリ間のレコード情報の連携

• レコードの一括コピー

• 集計

• グラフ

ご依頼が多いカスタマイズ

kintoneの標準機能で出来ない

集計アプリ

予実績系のアプリ群

kintoneエコシステム第2部

新しいSI・働き方

コミュニティ

ユーザー

コアサービス

グローバル

他サービス開発者/パートナー

kintoneエコシステムの本質

22

作って、使って、 コミュニケーションして、楽しい!

ユーザーが、 コミュニティ参加者が、 開発者/パートナーが、 サイボウズの人が、

新しいSI・働き方

コミュニティ

ユーザー

コアサービス

グローバル

他サービス

2011

2006

2014

20142015

20132011

開発者/パートナー

kintoneエコシステム、ファストSIを楽しむためのピースが実際に埋まった!

紙芝居でなく写真になり、 システムも今日実証します!

ファストの鍵は楽しむ・楽しめること!

kintoneエコシステム

26

「kintoneエコシステム」構築の3つのテクニカルキーワード

Lv.1 kintoneプラグイン

kintone連携サービス

サーバレスアーキテクチャ

Lv.2

Lv.3

帳票

複合機

経費精算

基幹

EAI

BI

kintoneエコシステム

27

「kintoneエコシステム」構築の3つのテクニカルキーワード

Lv.1 kintoneプラグイン

kintone連携サービス

サーバレスアーキテクチャ

Lv.2

Lv.3

帳票

複合機

経費精算

基幹

EAI

BI

最近注目しています!

kintoneとAWSナイスな相性だと 言われています!

kintoneとAWS

29

• アプリケーション寄りPaaS(SaaS)

• クライアントサイド/フロントエンド (UI/UX)

• 行動的/解釈の共有でアクションを起こし、コミュニケーションで業務を回す

• インフラ寄りPaas(IaaS、BaaS)

• サーバーサイド/バックエンド   (コマンド)

• 思考的/データを捌き事象を解釈する

APIで 結合・補完

良質のインプット

強力なデータ処理

kintoneエコシステム(王道っぽいAWSとkintoneの連携パターン)

30

Amazon DynamoDB Stream

Amazon SNS

Amazon S3

Amazon Kinesis

Amazon Lambda

Amazon EC2Lambda

イベントソース

REST API

kintone on cybozu.com

・レコード操作 ・ワークフロー操作 ・スペース操作 ・アプリ操作

REST API

kintone.proxy() & Amazon API Gateway 経由もやっぱりイイ!

REST API

プリミティブな連携 ・ホスティング ・バッチ処理

Amazon API Gateway

AWS IoT

AWS Lambdaによる サーバレスアーキテクチャ

参考・引用「Serverless Architecture on AWS」 (http://www.slideshare.net/keisuke69/serverless-architecture-on-aws)

肝となる

サーバ(EC2)による処理系の例

32

データプッシュポーリング・ 待機・監視

データの発生状況を ポーリングチェック

処理(コード)の 実行

・ロードバランス ・レプリケーション ・オートスケール

データ

サーバレス(Lambda)による処理系の例

33

データ

トリガー

データの発生が トリガーとして渡る

・ロードバランス ・レプリケーション ・オートスケール

処理(コード)の 実行

• インフラ構築不要

• インフラの運用管理不要

• キャパシティ

• スケール

• デプロイ

• 障害耐性

• モニタリニグ

• ロギング

• セキュリティパッチ適用

サーバレス(Lambda)の恩恵

結局サーバレスとは?

34

EC2にあれこれ作って、処理しつつ、面倒見る

Lambdaでイベントに応じたアクションの コードを書くだけ!

kintoneエコシステム(王道っぽいAWSとkintoneの連携パターン)

35

Amazon DynamoDB Stream

Amazon SNS

Amazon S3

Amazon Kinesis

Amazon Lambda

Amazon EC2Lambda

イベントソース

REST API

kintone on cybozu.com

・レコード操作 ・ワークフロー操作 ・スペース操作 ・アプリ操作

REST API

kintone.proxy() & Amazon API Gateway 経由もやっぱりイイ!

REST API

プリミティブな連携 ・ホスティング ・バッチ処理

Amazon API Gateway

AWS IoT

kintone & AWSサーバレスアーキテクチャのベストプラクティス

その3

その2

kintoneとAWSサーバレスアーキテクチャのベストプラクティス

37

その1 AWS各サービスを用いたkintoneへのインプット

kintoneへのAPIアクセスのラッピング

kintoneからAWS各サービスへのアクセス

(従来IoT、kintone controller)

(Webhookからの連携、kintoneデータの柔軟な公開)

(kintoneデータを元にした機械学習)

その4 Schedule Eventによるkintoneバッチ処理

API

(定期的な集計、サービス間連携)

AWS各サービスを用いたkintoneへのインプット

38

・農業(圃場) ・見守り ・建設・工事現場 ・工場設備 ・エネルギー設備

現場

センサー

・温度 ・湿度 ・照度 ・加速度 ・騒音

センサー クラウド kintone

・通知 ・ワークフロー ・スレッド ・カスタマイズビュー

事象・データが発生する データを捌き、 事象を解釈する

解釈の共有でアクションを起こし、コミュニケーションで業務を回す

IoT

AWS各サービスを用いたkintoneへのインプット

39

kintone controller

REST API

AWS LambdaAWS IoTコントローラー

IoT連携

・レコード操作 ・ワークフロー操作 ・スペース操作 ・アプリ操作

①ボタンを押す ②IoT情報を受け取って、次のサービスに渡す

③受け取った情報をトリガーにkintoneにアクセス

kintoneへのAPIアクセスのラッピング

40

Webhook Event REST API

①Gitのプッシュ、 課題追加等の発生

②APIでパラメータを 渡す

③Eventでパラメータを受け取り、 APIでkintoneへ

Webhook(通知等)をAPI Gatewayを経由してLambdaで捌いた内容を kintoneに連携

Webhookからのkintoneアクセス

kintoneへのAPIアクセスのラッピング

41

①kintoneデータへのアクセスをAPI Gatewayで APIを再定義

②kintoneを意識することなく 有益な情報にアクセス

kintoneに蓄積されたデータをAPI Gatewayで再定義したAPIで柔軟に公開

kintoneのデータを再定義したAPIで公開

REST API Event REST APIRESTfull Service

kintoneからAWS各サービスへのアクセス

42

kintoneのデータを元にしたMachine Learning

AWS Lambda

kintone on cybozu.com

①kintoneデータで 予測モデル作成

Amazon API Gateway

Amazon Machine Learning

②kintoneにデータ登録 ③API(クエリ)で パラメータを渡す

④Eventでパラメータを受け取り、 APIでリアルタイム予測へ

REST API Event REST API

⑤予測実行後 予測値を返す

※初動のモデル作成は直接実施  (Lambda未経由)

⑥予測値をセット

kintone.proxy()

kintoneのデータ管理に予測機能を追加!

Schedule Eventによるkintoneバッチ処理

43

①Lambdaを定期起動

スケジュールイベント(定期実行)で、サービス間連携

Event REST API

連携 サービス

REST API ②connpassのデータを取得

③connpassのデータを kintoneへ

④kintoneに入ったデータを kViewerで公開

kintoneエコシステムの ファストデモ

kintone Controllerデモ1 kintoneのプロセス管理を一括承認

リアル承認ボタン

46

複数の未処理レコードを一挙に承認!

REST API

AWS LambdaAWS IoTコントローラー

IoT連携

・レコード操作 ・ワークフロー操作 ・スペース操作 ・アプリ操作

①ボタンを押す ②IoT情報を受け取って、次のサービスに渡す

③受け取った情報をトリガーにkintoneにアクセス

kintone&Backlog連携

47

デモ!

kintone Switchデモ2 kintoneからAWSサービスのコントロール

まずはデモ!

kintoneから電源ON/OFF

50

kintoneからデバイスをコントロール

REST API Device Shadow

kintoneからデバイスをコントロール

今回は電化製品の電源ON/OFF

kintoneから電源ON/OFF

51

REST API Event REST API

Device Shadow

SOAP API

①スイッチON/OFF②API GatewayとLambdaを介して、 Device ShadowのREST APIをコール

③Device Shadowで Raspberry Piを制御

④Raspberry PiからLAN内の Wemoにアクセス

⑤家電の電源をON/OFF

Let’s enjoy kintone !

本日の内容は以上です