こんにちは、株式会社ZeroDivideの倉橋です。
2021年4月9日にTrinityのバージョン10.00をリリースしました。詳細については以下のアドレスにまとめがありますので、興味のある方は参照して下さい。
https://www.zerodivide.co.jp/trinity/trinity4r.html
このコラムでは普段はあまりお話しする機会のない実装の背景についてトピックスごとに、5回に分けてお話ししていきたいと思います。今回は、「簡易問い合わせサーバー」についてです。
iPhoneでプログラム設計書を閲覧
「簡易問い合わせサーバー」は、TrinityのデータにWebブラウザを使ってアクセスするための専用サーバーで、基本的にセキュアなネットワーク内での利用を想定しています。
この機能を実装した背景ですが、1つ目として、専用のクライアントソフトを介さなくても設計書の閲覧やTrinityのデータを参照する方法を用意したい、という理由があります。
設計書や分析結果の作成についてはTrinityを使用するにしても、たとえば作成したPDF設計書の閲覧やスケジューラーのログなどを閲覧する時に、わざわざTrinityの導入されたPCでアクセスしないと確認できないのでは不便だと考えていたわけです。
もちろんクライアントソフトを導入する方法もありますが、それでは使用者を限定してしまいます。多少の利便性を犠牲にしてもコストをかけずにアクセスする方法を提供することで、より多くの開発者が設計書に触れる機会を与えられます。
たとえば今回のようなWebブラウザを使用した閲覧方法が利用できるなら、敷居はかなり下がるはずです。結果的に設計書などに目を通す機会も増えれば、Trinity自体の有用性も高まると考えています。
2つ目の理由として、iPadなどPC以外の端末でも設計書を閲覧できる環境を用意したい、と考えました。
たとえばiPhoneでサンプルサイトにアクセスすると、ファイルの項目一覧などを閲覧できます。社内のネットワークに個人利用のiPhoneを接続できる環境がどれだけあるかは不明ですが、自身の手の中でIBM iで開発したプログラムやファイルの設計書が閲覧できるって考えると、それらがずっと身近に感じられると思います。
私が初めてiPhoneやAndroidタブレットで設計書を閲覧した時は、純粋に「おお!」って感じで感動したものです。
そんな「簡易問い合わせサーバー」の機能ですが、弊社としてはサーバー機能をメインとして提供しています。ただしサーバー機能だけでは使いづらいので、サンプルサイトも併せて提供しています。
サンプルサイトはJavaScriptとオープンソースのライブラリなどを使って構築されており、サーバー側で若干の設定を行うだけで、すぐにサンプルサイトを利用できます。
さて、今回追加した「ソース検索」ですが、これはサンプルサイトで設計書の作成対象になったメンバーソースを検索できる機能です。
当初はキーワードを入力して検索ボタンをクリックすると、検索結果がリスト表示されるという簡単な内容でした。とは言え、検索結果をクリックすることで該当行を中心にソースコードを表示できるので、画面上で手早く確認でき、大変便利に仕上がっていたと思います。
ただし、少し使ってみてわかったのですが、この時点の検索機能は少し物足りないことも確かでした。
たとえばコメントを対象外にしたい場合、RPGソースやDDSソースでは7桁目の「*」を判定する必要があります。しかし初期の単純なキーワード検索では、こういった複雑な検索が行えませんでした。
そこで、今回のバージョンアップに登場した「条件式」の出番になります。範囲指定を使用することで任意の位置の文字をチェックできますし、検索条件の結合も行えます。「コメント以外で任意のキーワードを含む行」を一度の検索で実行できるようになったわけです。
しかし、ここまで来ると欲が出てきます。
検索した結果をファイルに保管して修正作業用のチェックリストとして使用したい。もちろんリストは修正が必要な個所だけをあらかじめピックアップしておきたいので、不要な行はリストから除外したい。そうなってくると検索結果に対してダウンロードの機能や選択機能が必要になります。
というわけでサンプルサイトの一部の画面についてではありますが、行の選択/解除やダウンロードなどを実行する機能を追加しました。この機能を実装することで、Webブラウザ上でできる作業の幅が広がったと思います。
気づきをもらい、コツコツ実装
第2回 開発した「日本語機能」への反応に開発者として思うこと