OutSystemsでテーマを設定して、技術的な話題を深堀りするのがTech Talk。
Tech Talkは字幕なしの英語なので、ちょっと厳しい。
Table of Contents
Amazon Kinesis
How to Integrate Video Calling in Your Apps with AWS Kinesis
Amazonのビデオ通話サービスKinesisを利用したForgeコンポーネントの紹介。
デモでは、Forgeコンポーネントを利用して、モバイルアプリケーションにP2Pのビデオ通話Widgetを埋め込む手順が確認できる。
Video Call Validation (Forge)
がデモで利用されていたコンポーネント。
Integration Builder
How to Integrate Everything and Connect to Anything
OutSystemsで使用可能な、各種の外部システム要素へのアクセス方法を列挙する
- Database Integration SDKを使ってコネクタを作る:この方法は現在使えないと思われれる
- 外部DB:Integration Studioを使う方法。最近(2022/1)ベータ版だがIntegration Builderでもできるようになったらしい
- SQL要素を使ってクエリを書く
- Integration Builder:Wizard形式で、対応するデータソースへのコネクタをGUIで生成するSaaS。ソフトウェアが詳細を処理してくれるため、開発者は接続方法の詳細に気を配らなくて良い
- Forge:OutSystemsのオープンソースレポジトリ。誰かが作ったコネクタがあれば利用可能
- Consume/Expose REST:外部REST APIを利用する機能をGUIで簡単に作れる(Consume)。外部に対して公開するREST APIを作る機能(Expose)
- Machine Learning Builder:最近聞かなくなったが……。手持ちのデータを使ってMLモデルの訓練をやってくれる
後半はデモ
- Consume REST API
- Forgeからコネクタを探す
- Integration Builderを使ってSalesforceにつないで見る
セキュリティ
How to Reduce Your Application Attack Surface
セキュリティ対策の一般論を最初に紹介。
その後、OutSystemsのセキュリティを維持する機能について紹介している
- 設計時セキュリティ
- セキュリティ対策として、アプリケーション設計レベルで推奨事項を実装している
- UIに表示するものをデフォルトでエスケープしている(エンコードやサニタイズの機能も提供している)
- True Changeによる設計時警告(Service Studioで表示される警告。例えばExpand Inline=YesにしているときのSQL要素に対するSQL Injectionの警告)
- 実行時セキュリティ
- Sentry(たぶん有料の追加オプション。以前PaaSのドキュメントでみた記憶がある、SOC2 TypeⅡ準拠)
- AppShield(これも有料の追加オプション。モバイルアプリケーションをGenerateするときにセキュリティレイヤーを追加してくれる)
- Architecture Dashboard(実行時ではないが。開発環境のプログラムを自動で分析して、ベストプラクティスに違反している部分を指摘してくれる。この指摘事項にセキュリティが含まれる)
最後にデモがある。True Changeを見てSQLの問題を見つけて修正したり、Architecture Dashboardでセキュリティに関わる指摘をチェックするなど、上で紹介した各項目を紹介している(たしかSentryとAppShieldはなかった)
DevOps
最初は、DevOpsの一般論とOutSystemsのDevOps支援に関わる機能紹介。
以下の話題をそれぞれ軽く紹介している。
- CI/CD パイプライン:JenkinsとAzure DevOps向けに Template(Pythonのスクリプト)とドキュメント
- UI テストの自動化:一般的なUIテスト用ツールが使用可能(アプリケーションの方でセレクタ用の記述をしておくガイドがあるのでそれを見ておいたほうがいいと思う)
- Performance Monitoring API:運用上方を収集してカスタムのダッシュボードを作れる