株式会社日立ソリューションズ

作業実施依頼方法の改善 ~みんなが確実に実施! 無駄な作業から解放!

企業において全社もしくはある特定の社内部署に向けて作業実施依頼を行うことはよくある。例えば、健康診断の受診案内、貸与されているパソコンなどの資産棚卸実施依頼や社内教育受講依頼などが考えられるだろう。

株式会社日立ソリューションズは、作業実施依頼をより効率的に行うための管理システムを開発した。ITシステムによる社内合理化を目的とする部署である日立ソリューションズIT技術推進センタに所属する福沢氏、未氏によれば、 今回開発したシステムはメールやグループウェアに付随する掲示板などの通知機能よりも優れた回答率を得ることで、実施依頼者、実施対象者双方が利益になることを目標に開発したと語る。 システムは日立ソリューションズグループ内でも利用されており、社外提供も始まっている。

(システムイメージ図。実施依頼者は実施対象者の現在のステータスを常に確認することができる。また実施対象者はイントラネットの画面上にて自身の作業実施依頼内容を知ることができる。)

早期のシステム稼働をめざしRubyを採用

IT技術推進センタは昨年4月に新設されたばかりということもあり、いち早く成果を出していくためにも早期のシステム稼働をめざし、3カ月で初版をリリースするという目標を立てた。それを実現するために、リーンスタートアップやアジャイルプロセスの考えを導入し、優先度の高い機能から早期にリリースしていくことを決めた。そのような経緯から、開発環境はアジャイル開発と相性が良く開発生産性の高いRubyを採用した。最終的には構想から4ヶ月(開発期間3ヶ月)という当初の目標通りの期間で予定通りの機能を実装してリリースすることができた。

過去事例の取材記事にもあるように日立ソリューションズでは、Rubyを採用したシステム開発案件に対応する専門組織として 2009年12月に「Rubyセンタ」を設立している。Rubyで開発する際の規約や設計のベストプラクティスをRubyセンタに蓄積し、それを社内で共有することで、より質の高いソフトウェアを作成するためのノウハウを提供してきた。

Rubyセンタの設立当初は業務システム、いわゆるエンタープライズ領域でRubyは使えるのかという議論がまだまだ存在していたようだが、現在は業務システムの領域でもRubyを利用するケースは多く存在する。日立ソリューションズにおいても、開発するシステムに合わせてRubyを選択するということは普通の選択肢であり、今回の作業実施依頼システムの開発ケースでは、Rubyであることが有利に働いている。

その1つの例としてUIがある。

「私たちの開発チームのみだと開発者の都合に合わせたデザイン設計になりがちです。しかしながらそれがすべての人に都合が良いかと言えばそうではありません。作業実施依頼システムは社員の方すべてが使うソフトウェアなので、開発者が考えるよりも、利用者の立場で考える必要がありました。例えば実際の利用者に操作をしてもらうことによって、製品フィードバッグをもらい、使用する感触を改善していきました。それが結果として回答率の増加につながっていると思います。」

インタビューに応じる未氏(左)と福沢氏(右)

「リリース前の開発期間中にUIチームから何度も変更依頼がありました。UI部分においても積極的に公開済みのライブラリを活用することで効率を上げ、ユーザーの操作性向上という肝心な点に注力することができました。特に、Web関連において活発に開発が継続しているライブラリが多く存在することは、Rubyの魅力の1つです。」 (福沢氏)

ソフトウェア改善の要望が利用者からあった際に、他のプロジェクトでは対策完了までに1週間以上要することが常だったが、Rubyを採択したことで、ソフトウェアのコード量も減り、高い品質を維持できている。それにより、改善要望に対する対応速度も上がった。改善要望があった時点から半日程度で対応しており、改善要望の提出者からは驚きと感謝の言葉があったそうだ。

価値を顧客に素早く届ける

「私が初めてRubyを使ったのは今から約10年前です。テスト自動化ツールの調査及び開発を行っており、その過程で学びました。それ以降はしばらくRubyから離れていましたが、現在と当時を比較すると案件にRubyを使う機会も増えています。それにともない技術者も大幅に増加していますね。」 (福沢氏)

10年前と言えば、いまでは一般的にもなったクラウドもまだまだ黎明期だったと言える。外部のサーバーに情報を保管して処理するという行為は現在では広く普及した。新たなテクノロジーの普及は、システム開発会社に対する要望にも影響を与えている。従来ソフトウェア開発企業の多くは、自社で抱えるソフトウェアを組み合わせて顧客に販売する、もしくはシステムをゼロから構築していたが、より顧客のニーズに素早く対応するために、既に存在するサービスやシステムをベースとして活用し、いかに早く顧客に価値を提供できるかということが重要になっている。

「今回のプロジェクトでは構想から4ヶ月間で開発を完成し、ITシステムの活用推進という当初の目標を達成できました。このようなスピード感をもって業務を遂行できたのも、Ruby効果だと考えています。コード量を少なく書くことができるということはその要因の1つですが、クラウドでのサービス提供を容易にしてくれるツールが充実しています。Rubyはweb分野で大きく成功した言語でもあるので、ごく自然な形でweb関係のエコシステムを形成しているんです」 (未氏)

※本事例に記載の内容は取材日時点(2017年7月)のものであり、現在変更されている可能性があります。