高品質なWebアプリやモバイルアプリを開発できるさまざまな機能
OutSystemsは、Webアプリ/モバイルアプリを開発するためのローコードプラットフォームだ。生成されるWebアプリは.NET MVC+React.jsベースでREST/SOAP APIインターフェースを実装可能。クラウド・オンプレミス双方に対応する。モバイルアプリの場合はCordva+React.jsベースのiOS/Android対応ネイティブアプリ開発ができる。カメラの起動やGPS、Bluetooth、指紋認証、カレンダーなど、モバイルデバイスの機能にもアクセスでき、作ったアプリはApp StoreやGoogle Playでも配布できる。
データのモデリングもローコードで行う。テーブル、列、テーブル間の関連、インデックスと、基本的には通常のRDBと同じだ。阿島氏は「他社の多くのローコード製品では、画面とテーブルの対応が1:1を前提とする製品がとても多いです。画面表示のためのテーブル設計をしてしまうと、列の数が多い等美しくない構造のデータを定義してしまう場合も多く、拡張性に支障を来す場合があると思います。OutSystemsは正規化したデータモデルを作り、利用できます。画面設計のためにデータモデリングを犠牲にする必要がないのです」と語った。
ビジネスロジック開発において、ある程度の処理になるとコードを記述しなければならない製品もあるが、OutSystemsならほとんどコード記述なしで実現できる。例えば、データ更新前にDB内のデータを参照する、1つの画面からの入力で複数のテーブルを更新する、複数のテーブルを参照した上で出力データを決定するといった処理もコードを書かずに実現可能だ。
コードの記述量が多ければ、プログラマのスキルや、やり方の好みによって品質や生産性が低下する恐れがあるが、OutSystemsならそのリスクを極力抑えることができる。阿島氏は「OutSystemsは本当にコーディング量が少ないです。実績ベースでも大規模なシステムではコードを書く量は全体の2パーセント未満と言われています」と述べた。
ロジックだけでなくUIの開発もサポートする。テーブルから自動生成する方法の他、豊富なテンプレートから作成したり、UI部品を配置して自由なレイアウトで作成したりすることができる。標準で用意されていないUI部品についてはコードを追記して補完する。また、ある程度の規模のシステムを作る場合、デバッグが必要となるが、Break Pointを配置して、変数やパラメータの値を確認しながら実行できるデバッガーも実装している。モバイルアプリ開発時にiPhoneやAndroidデバイスを操作しながらデバッグすることも可能だ。
AIによる実装支援など、至れり尽くせりで、かつフルスタックの開発環境
OutSystemsの統合開発環境である「Service Studio」の目玉が、AIを使った支援を行う拡張機能。開発者の操作を先回りして、次に何をすべきかを推奨し、プロパティ値を自動設定する。これまでに1200万件以上ものアプリケーション設計・実装パターンを学習し、毎週再トレーニングが施されている。AIが推薦する精度は90%以上だ。
阿島氏はService Studioを起動し、モバイルアプリの実装デモンストレーションを行なった。画面上にボタンを配置し、ボタンをクリックしたらカメラを起動して写真を撮影し、データベースに保存するというもの。アイテムを配置すると条件分岐やそのあとに表示するメッセージ、カメラを使うことを選ぶと写真撮影の処理、撮影が行われたら日付データを自動で設定する、データベースに保存する際に保存が成功したかどうかのメッセージを表示するなど、ツールボックスやツリーからアイコンを探してドラッグ&ドロップするといった操作をせずに、AIから推奨された候補を選択する操作だけで開発を進められる機能が披露された。
OutSystemsは、フィードバックの管理も行える。アプリケーションを開発・運用していくにあたり、テスト環境でユーザーのフィードバックを直接受けて修正していくといった用途にも使える。画面内にユーザーがコメントを残せるようにし、該当箇所がすぐ理解できるようスクリーンショットとともに保存される。そして、コメントと連動した箇所を開発環境で開いてすぐに修正を行える。
他にもデプロイ、パフォーマンス改善、アーキテクチャ解析など、アプリケーション開発だけでなく、開発の速度と品質の両面を高めるために非常に多くの機能が用意されたプラットフォームとなっている。阿島氏は最後に次のようにコメントし、講演を締めくくった。
「OutSystemsは大規模システムに適用できる開発者向けのフルスタック・フルライフサイクルサポートする統合ローコードプラットフォームです。エンドユーザー向け、小規模アプリを作るためのツールでもありませんし、開発だけに特化したツールでもありません。無料版もあるのでダウンロードしてお試しください。また、弊社では各種ボジションの人材も募集しています」