学習コストを抑制できる製品を選定――未経験者も含めた開発を円滑に推進
「グレープシティ開発支援ツールの活用事例紹介」がテーマの「GrapeCity ECHO week 2020」。初日最初の講演には、クロスキャットの飛沢峰氏、千島健太郎氏の2人が登壇し、「Wijmoで実現した簡単勤怠管理CC-BizMateについて」と題する講演を行った。1973年に設立された老舗ソリューションベンダーとして長年にわたり広範な企業のシステム構築・運用を手がけてきたクロスキャットでは現在、業務効率化に寄与する独自製品・サービスの提供にも注力している。その代表的なものが、クラウド型勤怠管理ソリューション「CC-BizMate」だ。特徴は「人事総務部門に寄り添う」をコンセプトに、勤怠・労務管理に加え、残業抑制や36協定対策につながる残業予測、あるいは各人の仕事内容の可視化・分析、作業時間のリアルタイムな予実管理といった幅広い機能の提供だ。これにより、企業の人事総務部門における生産性向上と人的コストの最適化を支援している。
「CC-BizMate」のサービス提供がスタートしたのは、2011年ごろのこと。以来、クロスキャットでは顧客ニーズの変化に合わせて随時機能をブラッシュアップしてきた。「特に近年は、働き方改革の推進など労働環境の変化が急激に進む一方で、法改正も頻繁に行われています。そうした動きにシステムの改修によって追随していくには自ずと限界がありました。加えて、従来のシステムではASP.NET Web Formsを使用しており、Web Formsが.NET 5以降ではサポートされなくなる背景もあって、アーキテクチャの大幅な見直しを行ってシステムを全面リニューアルし、2020年4月にリリースしたのが現在のサービスです」と千島氏は紹介する。
リニューアルに向けたプロジェクトにおいて同社では、開発をMicrosoft Visual Studio 2019プラットフォームに、ASP.NET Core Webアプリケーションで新システムを構築することとした。さらに、フロントエンド部分の実装のためのフレームワークにはVue.jsを、UIライブラリとしてグレープシティの「Wijmo(ウィジモ)」をそれぞれ採用した。
Wijmoの選定理由については、入力やデータグリッド、グラフなど、およそ必要と考えられるUIコントロールがトータルに取りそろえられていることに加え、グレープシティのWebサイト上で公開されているサンプルが豊富で、それらコントロールのデザインや挙動、レスポンスを容易に確認できる点を挙げ、高く評価した。加えて同社では、以前からグレープシティの製品をさまざまなプロジェクトで活用してきた経緯もあった。「重要なポイントとなったのが、Wijmoでは学習コストが抑えられるということ。工期も限られ、Vue.jsなどのフレームワークを使った開発の経験者が少ない中、いかにスムーズに開発を進めていけるかといった観点で最適なツールとして挙がったのがWijmoでした」と飛沢氏は説明する。
「CC-BizMate」では、勤務実績の入力にコンボボックスやテキストコントロールやカレンダーコントロールを、従業員の残業状況や累計時間の推移の可視化にはグラフコントロールを、さらに作業ごとの工数表示にグリッドコントロールをそれぞれ活用するなど、UI実装のトータルな局面でWijmoを役立てた。これらは開発コストの削減だけでなく、デザイン面の統一性担保にも貢献している。
「今回のプロジェクトを通じて、Wijmoの使いやすさについては十分に実感できました。ただし、そうしたツールの使いやすさと、システムの作りやすさ、ユーザーの使いやすさは必ずしもイコールではありません。メンテナンス性やユーザビリティを高めるための工夫、アイデアの創出こそが必要で、言い換えればそこに開発の醍醐味があるものと考えます」と飛沢氏は強調する。
今後もクロスキャットでは「CC-BizMate」のさらなる機能強化・改善により、ユーザー企業の人事総務部門における課題解決への貢献を目指していくことになる。「その一方で、例えばAPIを介した外部ソリューションとの連携の促進など、パートナーさまとの間の協業拡大といったことも目指していきたいです」と千島氏。これらの取り組みを通して、「CC-BizMate」が顧客に提供する付加価値のさらなる拡大が期待されているわけだ。
「汎用型」「用途特化型」2方向でJavaScriptの開発を強力に支援
続く初日2つ目のセッションでは、グレープシティの村上功光氏が「よくわかるグレープシティのJavaScript製品ラインナップ」と題し、講演を行った。グレープシティではJavaScriptに対応した開発支援ツールを4つのラインナップで展開している。具体的には、「Wijmo」「SpreadJS(スプレッドJS)」「InputManJS(インプットマンJS)」「ActiveReportsJS(アクティブレポートJS)」が該当する。「これらのラインナップについては、多様な案件をカバーする『汎用型』と、ディープな要件に対応する『用途特化型』という、2つのカテゴリで捉えていただければわかりやすいかと思います」と村上氏は話す。
まず、汎用型に相当するのが「Wijmo」だ。その最大の特徴としては、データグリッドやチャート、インプット、ゲージ、ピボットなど40以上の各種コントロールをオールインワンで提供する多機能性が挙げられる。また洗練されたアルゴリズムによる高速処理とモジュールの極小化を実現していることも重要なポイントだ。これらについて村上氏は「例えばグリッドビューのサイズは150キロバイトに過ぎず、100万のデータをわずか200ミリ秒でソートできる処理性能を実現しています」と紹介する。また「Wijmo」は、AngularやReact、Vue.jsといったフレームワークやTypeScriptなどの最先端技術による開発にも対応している。
一方の用途特化型に該当するのが「SpreadJS」「InputManJS」「ActiveReportsJS」である。具体的には、「SpreadJS」は表計算の機能を提供するもので、ExcelライクなUIと操作性を備えるだけでなく、380を超える数式を装備していることに加えて、チャートや数式バー、条件付き書式にも対応。また、xlsxファイルの入出力もサポートしている。
「InputManJS」は入力制御を支援するツールだ。全角・半角、ひらがな・カタカナに対応したフィルタや自動変換機能を用意しているなど、日本語の制御において大きな強みを持つ。加えて、和暦表示や漢数字による数値表現が可能であるほか、漢字入力からふりがなの取得が行える便利な機能も提供している。
そして、帳票出力を支援するのが「ActiveReportsJS」である。フロントエンドにエンジンを置いて帳票の生成・出力を行うアプローチで、サーバーサイドのテクノロジに依存することなく動作させることが可能だ。また、クロスプラットフォームで利用可能な帳票デザイナとブラウザを選ぶことのないビューワも付属する。「グレープシティがActiveReportsシリーズの製品で培ってきたノウハウのエッセンスを継承し、日本企業ならではの帳票仕様にかかわるニーズにもきめ細かに対応できる点が、とりわけ大きなアドバンテージとなっています」と村上氏は強調した。