PR

学生アルバイトの効果を引き出す

 「学生アルバイトを戦力として活用できたことも,コストを抑える上で大きかった」(山下氏)。もともとオイシックスは学生ベンチャー企業を母体としていることもあり,学生を集めるルートは太い。しかし「優秀でも,業務システムの経験のない学生は,処理は速いがバグの発生しやすいプログラムを書いたりする」(山下氏)。以前そのために苦労した経験もあった。

 そのため,まず,山下氏がフレームワークを整備して,プログラムにばらつきが出ないようにした。フレームワークは,米Sun Microsystemsが公開しているJavaのガイドであるBlueprints中のサンプル・アプリケーションPet Storeを単純化して,山下氏が作成した。

 アルバイトも,いきなり実戦に投入するのではなく,まず,例題を与えて選抜した。その後,教育してから実際の開発に当たらせた。

XDocletでEJBを自動生成

図3●XDocletによるEJBの自動生成
XDocletは,コメントに設定情報を埋め込んだJavaBeansのソースコードから,Enterprise JavaBeans(EJB)およびEJBに必要な付随クラスと設定ファイルを自動生成する。オープンソース・ソフトウエアとして配布されている

 EJBを使用するためには,ホーム・インタフェース,リモート・インタフェースといった付随するクラスや,デプロイメント・ディスクリプタといった設定ファイルを作成する必要があり,煩雑である。

 Javaの統合開発環境の中には,このようなEJB関連ファイルを生成する機能を持つものもあるが,オイシックスでは,ここでもオープンソース・ソフトウエアを活用した。XDocletと呼ぶツールである。

 XDocletは,JavaBeanのソースコードをEJBに変換するとともに,設定ファイルを自動生成するJavaプログラムである。EJBを作成するために必要な情報は,JavaBeanのソースコードのコメント部分に埋め込んでおく(図3[拡大表示])。

 Javaのビルド自動化ツールであるAntと組み合わせることで,コンパイル,XDocletによるEJBと関連クラスおよびファイル生成,アーカイブ化という一連の作業を一度に行うことができ,開発効率が向上した。

 帳票の印刷にもオープンソース・ソフトウエアを利用した。iTextと呼ぶ,JavaのPDF生成ライブラリである。サーバー側で生成したPDFファイルをクライアントにダウンロードして印刷する仕組みだ。

 すべて無償ソフトで開発したシステムだが,十分な性能の安定性が得られている。ただし,1000以上のレコードを更新または追加するような非常に長いEJBトランザクションを何度も実行すると,だんだん処理性能が落ちてくる,という現象に遭遇した。この現象は,週に2回,APサーバーを再起動することで回避した。

月次処理が2日からゼロへ

 低コストで開発したシステムだが,その効果は大きい。「これまで,月次決算時原価計算などにまるまる2日かかっていた。システム化により自動計算できるようになり,業務量はほぼゼロになった」(山下氏)。

 また,営業担当者からの出庫依頼が月100件以上あり,それらは全部Excelに入力してチェックしていた。これらも自動化することができ,多かった入力ミスもほとんどなくなった。

 発注書も個別に作成して印字する必要があったが,数量を入力するだけで自動的に作成できるようになった。

 5月末時点では,念のためExcelへの在庫入力も続けているが,まもなく廃止する予定である。「廃止できればパート人件費を2割程度削減できる」(山下氏)と見込んでいる。

(高橋 信頼=nob@nikkeibp.co.jp)