基幹系システムの開発にGeneXusを用いる利点
こんにちは、RADサービス部の佐々木です。今回は基幹系システムの開発を弊社で利用している自動生成ツールGeneXusを用いることで得られる利点についてご紹介したいと思います。
みなさんは基幹系のシステム開発を行うときはどういった言語で開発をされているでしょうか。私の経験からするとVisual Basicなどでの開発をイメージします。しかし、今回ご紹介するGeneXusを用いて開発を行えばVisual Basicで行うより飛躍的に生産性を向上させることが出来ます。今回はそういった点を中心にお話をしていきたいと思います。
基幹系システムにGeneXusが向いている理由
基幹系のシステムなどの場合、当然データの登録、更新、削除といった機能は必要となってきますが、GeneXusの場合そういった機能は自動で生成してくれるため、開発者は設計情報を入力するだけでGeneXusが自動で機能を作成し、さらにはテーブル構成も設計情報から読み取り自動で作成してくれます。これまでVisual Basicで開発を行っていたようにわざわざ、登録や削除といった機能作成、さらにはテーブルの作成などといった作業に開発者が介入せずとも設計情報の入力だけであとは自動で行ってくれるわけです。これによりバグの発生が減ったことも開発者にとっては嬉しい要素の一つですね。
それでは実際にGeneXusでの開発画面を見ながらご説明致します。今回は簡単にですが、社員情報を管理する画面を作成してみたいと思います。GeneXusのトランザクションというオブジェクトに対して以下のような項目属性を入力しました。この状態でビルドを行いシステムを実行します。
すると以下の画面が表示されます。こちらは登録したデータが表示されるリストですが、まだデータが登録されていないため何も表示されていません。
では次にデータの登録を行います。「+」と表示されているボタンを押すと下記の登録画面へ遷移します。ここで必要なデータを入力し、実行ボタンを押すとデータの登録が行われます。
データを登録すると先ほど何も表示されていなかったリストに登録したデータの表示がされます。データの更新を行う場合は赤枠で囲まれたボタンを押すと登録をした時と同じ画面に遷移し、実行ボタンを押すとデータの更新が行われます。削除したい場合はオレンジで囲んだボタンを押せばデータの削除が行われます。
このようにトランザクションオブジェクトに対して項目属性の設定を行っただけで、あとはGeneXusが自動で画面の作成やデータの登録、更新、削除の機能をもったボタンを自動で作成してくれます。
次にデータベースのテーブル構成についてもご説明します。以下がトランザクションオブジェクトの内容をもとにGeneXusが自動で作成したテーブルの構成です。こちらも先ほどビルドを行った段階でGeneXusが自動で作成を行ってくれました。
これまでの開発では当然ですが、テーブルの作成などは開発者自身で行ってきました。時には仕様の変更でテーブルの内容を変更する必要も出てくるかと思います。その場合変更したテーブルに対して処理を行っているソースコードは修正する必要が出てきますし、当然人間ですから修正し忘れた箇所があればエラーやバグを引き起こしてしまう原因となります。さらには変更したテーブルに影響があるテーブルに対しても修正が必要になってきます。考えただけ非常に面倒な作業となってしまいますね。
しかし、GeneXusの場合項目属性の変更だけで再度テーブル構成を見直し、変更すべき箇所があれば自動で作業をしてくれます。今回の例ではトランザクション一つしか使用していませんが、複数のトランザクションが存在する場合はすべてのトランザクションの内容を考慮してGeneXusが最適な構成にしてくれます。実際に先ほどの社員情報のトランザクションに対して部署情報の項目の追加を例にご説明致します。はじめに、下記のように新しく部署情報をもったトランザクションを作成します。
次に社員情報のトランザクションに対して「DivisionId」と「DivisionName」の項目属性を下記のように追加します。
再度ビルドを行いシステムを実行します。すると、新たに部署を登録するフォームが出来上がり、ここに先ほどと同じようにデータを登録します。
登録が完了したら、社員情報のフォーム移動し、最初に登録した社員情報に対して部署情報を新たに割り当てます。下記をご覧頂くと分かるかと思いますが、先ほどの社員情報にはなかった部署情報の項目が新たに追加され、登録したデータが選択できるように変更されています。
項目から適当な部署情報を選択し実行ボタンを押すとデータの登録が行えます。先ほど、トランザクションと項目属性の追加を行っただけであとは自動でGeneXusがここまで変更を加えてくれます。
では最後にデーベースの構成がどのように変更されたのかを見ていきましょう。左が社員情報のテーブル構成で、右が部署情報のテーブルです。社員情報のテーブルに部署情報の主キーである「DivisionId」が追加され、部署情報のデータが参照できるような構成に変更されていることがお分かり頂けるかと思います。
このように、これまでのシステム開発とは違い、変更が発生した場合にも柔軟に対応出来る点がGeneXusの魅力です。今回私が行ったのはトランザクションの作成と項目属性の追加、変更のみです。たったこれだけの作業でここまでのものを短時間に、自動で作り上げてくれるのは開発者にとっても嬉しいですね。
さらに基幹系のシステムではセキュリティなども重要になってきますが、GeneXusではログイン機能も簡単に実装することができます。この内容についてはまた別の記事でご紹介したいと思っています。
まとめ
今回は非常簡単な実装方法のご紹介でしたが、ここではご紹介しきれなかった便利な機能がGeneXusにはまだまだたくさんあります。GeneXusを使えば高品質で、且つ簡単にシステムの開発が行えます。みなさんもぜひGeneXusでのシステム開発を検討されてみてはいかがでしょうか。
株式会社キャパでは、GeneXusを用いた超高速開発についてご相談を承っています。
短納期、予算が合わないなどお気軽にご相談ください。
高速開発:GeneXusのご紹介