製品リリース前  顧客満足度No.1のEAIツール「DataSpider Servista 4.1」開発者インタビュー

  • 開発者の肩書と所属はDataSpider 4.1リリース当時の旧アプレッソのものです。

第1回
目指したのは、生産性の向上による大規模データ連携開発が可能なプラットフォームの実現

「設計」「開発」「テスト」の生産性を向上させる機能を追加

V4.1における機能変更のポイントは何でしょうか?

東 克彦(株式会社アプレッソ 開発本部 副本部長 ※取材当時)
コンセプトとして「データインテグレーション基本機能強化」を掲げ、生産性向上につながる機能を強化すると同時にし、大規模なデータ連携開発が可能なに対応できるプラットフォームの実現 を目指しました。開発者を交えて既存のお客様や販売パートナー様にヒアリングを行い、そこでいただいた意見をもとにアイディアを広げて、「設計」「開発」「テスト」の3フェーズそれぞれで生産性を向上させる機能を追加しました。

工数の根拠になる統計情報を出力して見積を省力化

具体的には、どのような機能を追加したのですか?


設計フェーズでは、見積を支援する機能として「プロジェクト/スクリプトの統計情報出力」を追加しました。DataSpider Servistaでは開発したスクリプトの情報を「仕様書」として出力できますが、そこに、工数の算出指標になるアイコン数などの統計情報も併せて出力することにしたのです。アイコンというのはファイル出力や条件分岐といった単一の処理のことで、使われているアイコンの数は、開発の規模感に直結します。アイコン数だけでなく、複雑になりやすいMapperロジックの数なども出力して、工数の根拠になる情報を一覧できるようにしました。あるスクリプトの中から別のスクリプトが呼び出されて、階層構造になっている場合にも、この統計情報を見るだけで、全体のアイコンの合計数と、個別のスクリプト単位でのアイコン数がわかります。開発前にプロトタイプを作って統計情報から全体の工数を算出したり、過去の開発プロジェクトを参考にして見積工数を算出したりするのに役立ちます。

差分比較レポート・データ加工ログ出力・ユーザ定義ロジックの範囲拡大で開発フェーズを効率化

大規模開発案件での見積を大幅に効率化できそうですね。開発フェーズの支援機能はいかがでしょうか?


開発フェーズを支援する機能は3つ追加しました。1つめの「スクリプトのバージョン比較レポート」は、スクリプトの2つのバージョンを比較し、差分をレポート出力します。該当箇所には、追加が緑、更新がオレンジ、削除がグレーといった色がついて、視覚的にわかりやすくなっています。もちろん、どう変わったのか設定項目ごとに細かく出力しています。テストの効率化、テストする範囲の絞り込み、問題発生時の原因特定などに有効です。

2つめの「Mapper処理データのログ出力機能」は、データ加工を行うMapperロジックを動かした際の処理経過を細かく出力する機能です。Mapperでエラーが起きたときの原因特定や、想定どおりの動きをしているかの追跡ができるので、効率的な開発が可能になります。

3つめの「グローバルユーザ定義ロジック」は、既存機能の改善です。従来「ユーザ定義ロジック」といって、複数のMapperロジックを組み合わせて1つのロジックとして使えるようにする機能がありました。一度作ったロジックを何度も使えて、変更も一か所で済むので、とても便利な機能です。ただ、「プロジェクト」という狭い範囲でしか使えなかったため、今回は制限を取り払って、DataSpider Servistaの同じサーバ上であればどこからでも呼び出せるようにしました。利便性が向上して、ますます使っていただけると思います。ちなみに、今までの「ユーザ定義ロジック」は「ローカルユーザ定義ロジック」という名前になり、旧バージョンで作成した関数は「ローカルユーザ定義ロジック」として引き続き使えます。

テストの自動化で「工数削減」と「品質向上」を実現

テストの自動化で「工数削減」と「品質向上」を実現


テストフェーズを支援する機能にはもっとも力を入れました。「テスティングフレームワーク」というまったく新しい概念を導入したのです。フレームワークと言っているのは、単一の機能ではなく、DataSpider Servistaで開発したスクリプトのテストを支援する複数の機能群と、ガイドラインの総称だからです。ガイドラインに沿ってテストを構築することで、スクリプトのテストを自動化することができます。プロダクトがオフィシャルに提供しているテスト機能を使うことで、開発者はテスト方法に悩むことなく、テスト項目や合否条件などテストの内容にフォーカスして開発を行うことができます。また、検収する側にとっても、テストの内容や結果がわかりやすくレポートされるので、安心して受け入れることができると思います。

土岐 拓未(株式会社アプレッソ 開発本部 開発部 マネージャー ※取材当時)
テスティングフレームワークは、Javaの開発者ならJUnitをイメージしてもらえるとわかりやすいと思います。自動テストの作成を支援する各種機能と、レポート機能などをフレームワークとしてまとめて提供しているイメージです。


改修や追加要望が発生したときに同じテストを何度でも手間なく繰り返すことができます。テストの実行結果がExcelで自動出力されて、そのままエビデンスとして使えるのです。

土岐
手動だとテストの繰り返しに時間がかかりますが、自動化しておけば工数削減になります。また、何らかの変更を行ったときにも、同じテストをすぐできるので、品質を担保できます。


データの整合性をチェックする機能も搭載しているので、目視でありがちな見落としも減らせます。

金 晶洙(株式会社アプレッソ 開発本部 品質マネジメント部 部長 ※取材当時)
この機能には当社の品質管理のノウハウも活かされています。


また、これらの機能追加に加え、多様な接続先のバージョンアップにも、当然ながら対応しています。

DataSpider Servista オススメコラム一覧

DataSpider Servista 製品紹介メニュー

Change Location

Are you visiting HULFT.com (Japanese language) outside Japan ?
When connecting "HULFT" to Japan from overseas, please select "HULFT8".

日本国外からHULFT.com(日本語)にアクセスされようとしています。
海外から日本の「HULFT」と接続する製品をお探しの場合、「HULFT8」をお選びください。