はじめに
「Forguncy(フォーガンシー)」とは、Excel風の開発ツール「Forguncy Builder」を使ってWebアプリケーションを作成するツールです。「Excel方眼紙」を由来として名付けられました。ノンプログラミングにより、業務部門・システム部門の社員が自らの業務を効率化するために、Webアプリケーションを作成することを対象としています。
筆者は、普段は受託開発として業務アプリケーションの開発を行っています。初めてこのツールを見たときには、「Excel方眼紙」に対するネガティブな印象に引きずられForguncyに対しても懐疑的でした。また、この製品の特長は「Excel方眼紙のように自由にレイアウトできる」のみという先入観を持っていました。ですが、調査していく内に、Forguncyによりさまざまなことが解決できるのではないかと気づきました。
それは、Forguncyによって、通常は数百万円以上かかるようなシステムを、発注者(=業務部門)自らが構築できる可能性がある、ということです。筆者が注目するForguncyのポイントに、次の3つがあります。
- Excelのスキル・既存資産を活用できること
- 業務システムでよく求められる機能が、あらかじめ搭載されていること
- システムをサポートする開発機能があること
このように、Excelの既存のスキル・資産とForguncyの機能の活用がポイントになります。筆者は、業務アプリケーションの開発においてよくある機能(権限・帳票・ワークフローなど)を少なくとも数か月かけて、何度も開発してきましたが、これと同等の成果物を一般の社員がノンプログラミングで即座に作るといったことが十分に可能だろうと感じました。
また、発注者はプロジェクトにおいて「お客様」になりがちですが、そうではなく「プロジェクトのメンバー」としてシステム開発をリードできるのではないかと思います。そして、システム開発のベンダーはそれをサポートする形で、プロジェクトを進められる可能性があります。この進め方は、6月7日に開催された「Forguncy Meetup」というイベントにて、Forguncyの利用者が事例として発表したものです。
本稿では、このように感じた理由となるForguncyのポイントを紹介します。
対象者
- 業務アプリケーションのソフトウェア開発者
環境
- Forguncy 3(Forguncy Builder Pro エディション、Forguncy Server)
- Forguncy の動作環境についてはこちら:必要システム構成 - Forguncyオンラインヘルプ
Forguncy のしくみ
はじめに、Forguncyのしくみについて簡単に説明します。Forguncyは以下の2つのツールで構成されます。
- Forguncy Builder:アプリケーションの開発・デバッグ(開発用マシンにインストール)
- Forguncy Server:アプリケーションの公開・運用(サーバー側にインストール)
Forguncy Builderで開発・デバッグを行った後、Forguncy Serverに対してWebアプリケーションとして発行します。Forguncy Serverでは、1台のサーバーで複数のアプリケーションを配置できます。1つのアプリケーションにつき1つのパッケージファイルが生成されます。Forguncy Serverでは、1台のサーバーで複数のアプリケーションを配置できます。
開発を行うForguncy Builderは、図2のようにExcelと似た外観になっています。どのように開発を行うかのイメージを掴むために、画面の構成を説明します。
- A:データのテーブル・フィールド・関連付けを設定します。ここから開発用のデータ行を参照できます。
- B:ページを定義します。例えば、「請求書一覧」画面や「請求書作成」画面をここから作成します。
- C:現在開いている画面のレイアウトを行います。Excelのようにセルと列で区切られ、数式の入力欄や名前欄があります。
- D:画面に対するロジックの定義を行います。セルへのデータの連結・コマンドの実行・ページの設定などを行います。
メニュー上の「デバッグ」セクションにある「実行」(図2、①のボタン)を選択することで、Forguncy内蔵Webサーバーが起動し、作成中のアプリケーションをブラウザーから実行できます。Forguncy Builderでは、Excelのような外観で画面をレイアウトしますが、実行するクライアントにはプラグインなど特殊な環境は不要です。Forguncyで作成されたWebアプリケーションのフロント側は一般的なWeb技術(HTML・CSS・JavaScript)で実装されていて、ユーザーから見ると普通のWebアプリケーションと差はありません。また、Forguncy Builder上で表示されている行や列の枠線は、ブラウザーでは表示されず、操作を行うために必要な部品のみHTMLの要素としてレンダリングされます。
以上のようにForguncyでは、開発用のツールForguncy Builderにて、Excelのような画面のレイアウトと、ロジックやデータの定義を行いWebアプリケーションを作成します。
補足
本稿では、Forguncy Builderでの画面と、ブラウザーでWebアプリケーションを実行したときの画面が登場します。どちらであるかを区別するために、【ブラウザー】【Forguncy Builder】のように図のキャプションにどの場面であるかを記載します。