お客様
株式会社CACクロアICT事業部 様
製薬会社の医薬品開発業務を支援
目次
概要
開発リソースをオンデマンドにスケールしお客様社内の製品開発を効率的に進めるために、マイクロサービスとしての切り出しが可能なソフトウェア開発をTopcoderの開発コンテストを活用してTC3が実施いたしました。
このプロジェクトは、テキスト情報を読み込むことが出来ないPDF形式のファイルにOCR処理を行い、テキスト情報を付与した状態で再度PDF化するAPIを開発することをテーマといたしました。
本ユースケースはプロジェクト実施後にCACクロア様より頂いた評価レポートを中心にご紹介し、プロジェクトを体験されたお客様の生の感想をご覧頂く事が出来ます。また、評価レポートにてTopcoderプロジェクトの特徴として挙げて頂いたポイントについて、TC3のコメントを後述しています。
お客様による評価レポート
株式会社CACクロア ICT事業部システム開発部 ファーマコビジランススペシャリスト (※)
髙木 毅 様
プロジェクト概要
今回テーマとした開発スコープはマイクロサービスとして独立した開発が可能であるため、試験的にプログラミングのコンテストを開催しているTopcoderを活用したアウトソーシングを実施しました。
Topcoderは海外のサービスであり、直接コンテストを企画するには言語・文化・契約的な問題で難しいことから、日本に法人がありコンテストを代行してくれるTC3社に依頼しました。当社から見ると準委任契約によりTC3社に開発を依頼した形となります。
クラウドソーシングを利用した、コンテスト形式のマイクロサービス開発プロジェクトの結果と、課題について報告します。
開発対象のプロジェクト
PDFファイルをさまざまな形式に変換するAPIを開発するプロジェクトです。今回対象となった機能は以下の通りです。
- PDF情報の取得
- PDFの画像変換
- 画像をOCRしてテキスト情報付きPDFを作成
全体のアーキテクチャは、サーバーレスアーキテクチャを利用し、外部のAIサービスを利用するなど、比較的新規性の高い技術を全面的に採用しています。
実施コンテスト概要(TC3補記)
■コンテスト内容
- 参加者数 :67名
- 実施期間 :7日間
- 2019年11月22日 AM 9時(米国東部標準時間) 開始
- 2019年11月29日 AM 9時(米国東部標準時間)終了
- 提出成果物数 :7名より7点
■コンテスト参加者の国籍
- インド25名、中国13名、米国3名、カナダ2名、南アフリカ2名、フィリピン2名、他全22カ国のメンバー
コンテストの結果
コンテストを実施した結果、67名の参加者から7件の成果物の提出があり、最も品質の高い成果物を採用しました。TC3社によるとコンテストの参加者は比較的多い方とのことです。
コンテストは参加者の環境を考慮し、マイクロサービスのロジック部分に絞った内容としたため、当社が期待する形に仕上げる作業を、コンテストの優勝者にダイレクトタスクという形で別途依頼し、最終的な成果物を納品していただきました。
なお、プロジェクトのプロセスはTC3社で全てコーディネートしていただいており、当社としては最初に要求仕様を提示した後は、個別の質疑応答や進捗報告を聞くのみでプロジェクトは進行しました。(※1)
プロジェクトの成否
本プロジェクトの最終的な成果物では、検証用に提示したPDFファイルに関しては要件を満たしていたものの、それ以外のPDFでは課題を残す結果となりました。このため、プロジェクトの成否としてはChallengedとなります。
- PDFファイルの画像変換時に一部のボールド文字が画像として変換されないという現象が発生
- OCRテキスト変換したPDFについて、文字の一部(スペース)が消える
- OCRテキスト変換したPDFについて、オーバーレイ表示時の位置が大幅にズレる
- OCRテキスト変換したPDFについて、日本語の一部が文字化ける
なお、ソースコードの品質は当社内でも確認しており、非常にレベルの高い物であったことを確認しています。
また、期間も実質1.5カ月であり期待する結果に対して理想的なスケジュール感でした。(※2)
まとめ
コンテスト開催後に仕様の変更は不可能であるため、発注する側に相応の技術力が求められます。(※3)
また、企画に参加したいと思わせる、適度な複雑性と技術的な面白さも必要になります。
加えて、日本の一般的なシステム開発会社とは異なり、今回確認された課題対応などは、明確にスコープ外として割り切られます。「行間を読む」や「今後の付き合い」などの曖昧な対応は一切期待するべきではありません。
ただし、今回のプロジェクトは社内の有識者が実施しても同じ結果になった可能性が高いため、本件は特別リスクが高いものではないと考えられます。(※4)
コスト的にはTC3社を介していることもあり特別安いものではありません。本プロジェクトのように課題が残る結果になると割高に感じると思われます。
しかしながら、社内での最優秀技術者と同程度の品質、スケジュール感での成果を期待できることから、プロジェクトの体制が十分であれば、国内の一般的なシステム開発会社とは異なるレベルの非常に高いパフォーマンスを発揮すると考えられます。(※5)
以上
※ 髙木様の所属および役職は、プロジェクトご依頼時のものです。
CACクロア様に挙げていただいたプロジェクトの特徴とTC3のコメント
※1 当社としては最初に要求仕様を提示した後は個別の質疑応答や進捗報告を聞くのみでプロジェクトは進行しました。
CACクロア様より頂いた要件仕様をTopcoderコミュニティーのメンバーに効果的・効率的に伝達するための細部の確認・調整をTC3のリードのもとお客様とご一緒に進め、迅速にご対応いただいたため、プロジェクトをスムーズに進行させる事ができました。
※2 なお、ソースコードの品質は当社内でも確認しており、非常にレベルの高い物であったことを確認しています。
また、期間も実質1.5カ月であり期待する結果に対して理想的なスケジュール感でした。
コンテストの準備から実施、成果物のご提供までの一連のプロセスを合計して、約1.5カ月の期間となりました。今回のコンテストボリュームからしてTC3にて実施するTopcoderの開発コンテストの一般的な長さでした。
※3 コンテスト開催後に仕様の変更は不可能であるため、発注する側に相応の技術力が求められます。
ご指摘いただきました通りにコンテスト開催後の仕様変更は不可能ですので、コンテストで求める仕様を事前に厳密に定めます。この際にテーマとする技術内容に関してお客様との深いディスカションが必要であるために、当該分野の技術的素養をお持ちのお客様が望ましいと言えます。
※4 今回のプロジェクトは社内の有識者が実施しても同じ結果になった可能性が高いため、本件は特別リスクが高いものではないと考えられます。
※5 社内での最優秀技術者と同程度の品質、スケジュール感での成果を期待できることから、プロジェクトの体制が十分であれば、国内の一般的なシステム開発会社とは異なるレベルの非常に高いパフォーマンスを発揮すると考えられます。
CACクロア様社内の優秀な技術者様と同等のパフォーマンスが発揮できたことを大変嬉しく思います。クラウド、モバイル、AR/VR、AIなどの『デジタル』の分野でグローバルのTopcoderコミュニティーを活用して、日本のお客様のソフトウエア開発を支える活動を引き続き継続してまいります。