SAP Appgyverでプロジェクトの共有が可能になりました。

*この記事はまだ検証途中のものがあります。速報&簡単な解説として扱って下さい。

SAP AppGyverは市民開発者向けのツールということで「個人で開発を行うツール」です。(でした)

この問題点としてComposer Proで開発中のアプリケーションプロジェクトに対してその開発者以外の方がアクセスできません。

例えば複数人でアプリケーションを共同開発したいという場合は不可能に近いです。強いて挙げるのであればログインに使用するユーザーID・パスワードを共有することで出来なくはないですが好ましい状態ではないですね。絶対にお勧めはできません。

今回、SAP AppGyverの新機能としてこれを解決する機能「プロジェクト共有」がリリースされました。

それでは簡単ですが、どのようなものかテスト&ご紹介します。

前提:

現状この機能はSAP AppGyverのEnterprise版でのみ利用可能です。(SAP BTP上で動作させているAppGyverのことです。)

Community版では使用できません。(https://www.appgyver.com/からログインして使用する方ではこの機能は使用できません。)

共有の設定

共有の設定はEnterprise版のApplication Development画面から行います。BTPサブアカウントのBTP Cockpit → Services → Instances and SubscriptionsでSubscriptionsに表示されているSAP AppGyverをクリックすることで表示される画面です。

AppGyver Projectの一番右にある・・・のアイコンをクリックしてみます。

このようにポップアップメニューが表示されます。「Manage Members」が今回の新機能のキモとなります。

プロジェクトを作成したユーザーは「Administrator」という権限が付与されます。

権限は他に

Viewer : アプリケーションのPreview実行とデプロイのみ可能(ただしデプロイの設定項目変更は出来ない)

Developer : Viewerに追加でアプリケーションの編集(所謂開発)が可能

Administrator : Developerに追加してプロジェクト自体の編集が可能。(共有するメンバーの追加やプロジェクト自体の削除など)

と3段階に分かれています。

ユーザーIDを指定してそのユーザーだけに権限を割り当てることも出来ますし、

Everyone with accessを指定して(BTP上でAppgyver関連の権限を与えられている)全員一括設定ということも可能です。

権限を与えられたユーザーはApplication Developmentの画面のプロジェクト一覧にそのSAP AppGyverプロジェクトが表示され、与えられた権限による操作が可能になります。

(これまではプロジェクト一覧には自分が作成したプロジェクトしか表示されませんでした。)

簡単な使い分けとしては以下になるのではないでしょうか?

Viewer : アプリケーションのテスト実行者

Developer : 共同開発者

Administrator : アプリケーションの管理者(及びBTP自体の管理者)

個人的に若干違和感があるのは、Viewerでもアプリケーションのプロジェクト自体は見えてしまうことです。見た目上は編集も出来てしまいます。ただし、SAVEをすると

このように上部に表示されます。Viewerでは保存することは出来ません。

同時編集

共有したプロジェクトは複数人による同時編集が可能です。同一プロジェクトに対し複数人が同時にアクセスしている場合このように右上部分のそのユーザーのイニシャルのアイコンが表示されます。

もしこのユーザーがなにか編集を行った場合、アイコンの色がオレンジに変わります。

※この際、そのユーザーがどのような編集をしているかは確認することが出来ません。

同一のページなど同一オブジェクトに対しての編集操作には注意が必要です。この場合、先にSAVEを行ったユーザーの編集内容が保存され、編集中のユーザーに対しては

このようにポップアップダイアログが表示され、OKを押すと編集中の内容が消えて先にSAVEしたユーザーの編集結果が再度読み込まれます。

(実際にはオブジェクトのプロパティのみの編集であれば消えない等のパターンがあるようです)

つまり、実際に使用する上では同一ページの編集を複数人で同時に行うということは出来ないと考えたほうが良いでしょう。先にSAVEした誰かの編集のみが反映され、他のユーザーの編集中の内容は消えてしまいます。実際の開発ではページ毎に違う人が開発するという役割分担で考えたほうが良さそうです。

プロジェクトの共有機能により一つのアプリケーションを複数人で共同開発するということが可能になりました。

私が一番良いなと感じているのはViewer権限を与えればアプリケーションをデプロイせずとも他人に自分の作っているアプリケーションをPreview実行してもらえることです。

これまではこれが出来ないのでSAP社内の人に対して作成途中のものを「こんな感じで良いですか?」と見てもらうときにもTeamsやZoomで画面共有して見てもらったり、仮でデプロイしてもらったりと少々面倒でした。それが気軽に見てもらってフィードバックを受け取るということが可能になりました。

やはり新規に入った機能ですのでいくつか不満な点もありますが、これまでの個人開発だけではなく共同開発が可能になったということは一つの進歩だと思います。

SAP AppGyverを是非トライしてみてください。