February 12, 2020

「9999 Tetアプリ」高トラフィック対応、AWSをインフラとして使用

パートナー名:株式会社リッケイソフト
ケーススタディ:「9999 Tet」というアプリケーションのインフラストラクチャとしてAWS(アマゾンウェブサービス)を使用しています。
作業範囲:開発、展開、およびメンテナンス

OSAmazon Linux

データベースMySQL

AWSサービスAmazon Elastic Beanstalk, Amazon EC2, Amazon RDS for MySQL, Amazon S3,

Amazon Elastic Load Balancing, Amazon ElastiCache for Redis, Amazon CloudFormation,

Amazon CloudWatch, Amazon Route 53

 

顧客情報:

顧客名:AIC Joint Stock Company
業界・分野:非開示
従業員数:1200名以上
設立年:2005
システムURLhttps://api.tetvietaic.com/

 

顧客からの要求:

AICは、Tetとして知られるベトナムの旧正月のイベントにおいて、ベトナム人向けのアプリケーションを立案し、 Rikkeisoftは、その設計開発展開および保守サービス全体を請け負いました。「9999 Tet」は、オールインワンアプリケーションとして設計されており、文化、娯楽、慣習、交通、医療、ショッピングなどのさまざまなTetに関するカテゴリの情報を提供しています。

このアプリケーションは年末年始にアクセス数の集中が予想されていました。たとえば、このアプリケーションには「ラッキーマネーシェイク」と呼ばれる機能があり、ユーザーは自分の携帯電話を振って年越しの間にギフトカードの形でラッキーマネーを受け取ることができました。 Tet後、アクセス数は大幅に減少すると予想されていました。

アクセス数が集中する際、自動的にスケールアップし、その後アクセス数が減るとスケールバックできる柔軟なインフラストラクチャが求められました。

悪意のある攻撃に対して強固なセキュリティーを保つ一方、監視とメンテナンスに多くの労力を使わないソリューションが求められました。

 

解決策:

AICのビジネスの性質により、顧客は物理的なインフラストラクチャに依存しています。
ただし、この場合では、開発及びリリースプロセス全体で1.5か月しかいないためクラウドベースのアプローチの方がより時間と費用効果が高くなります。
そのため、拡張性と柔軟性により、AWSを提案しました。

バックエンドはPython Djangoで標準のウェブアプリケーションとして開発されたため、AWS Elastic Beanstalkは、展開プロセスを合理化するために使用されました。自動的な拡張性については、AWS CloudWatchを使用し、負荷を監視し、AWS Autoscalingを使用してAWS EC2のクラスターを管理しました。

AWS LoadBalancerは、これらのクラスターに接続するために提案されました。
データ保存については、3つのサービスの組み合わせを提案しました。
 アプリケーション保存用のAWS ElasticCache
 データベース用のAWS RDS、私たちの場合、RDS MySQLクラスターはアクティブ・レプリカ構成で提案されました。
 公開コンテンツ、ユーザー生成コンテンツ、プラグインや静的コンテンツなどのアセットを含むメディアの保存と配信用のAWS S3

セキュリティについては、プライベート(開発環境とCMSを実行するノード)を分離するために、そしてネットワーク(アプリケーションAPIのノード)を公開するためにVPCを提案しました。
AWS Route 53はドメイン名管理にも提案されました。

 

結果:

アクセス数が集中する際、ほとんどのユーザーが同じコンテンツを閲覧するため、ElasticCacheを増やしてパフォーマンスを向上させました。

イベント後、ElasticCacheはコストを節約するために小さな設定に縮小されました。

旧正月の期間中にサーバー過負荷が報告されることはありませんでした。

このアプリケーションは、

100万人以上のユーザーにサービスを提供し、旧正月の期間中にうまく運用することができました。

  • Google PlayストアおよびApple ストアでの100万件以上のアプリのインストール
  • ピークする時に8000人以上のユーザーがオンライン
  • ラッキーマネーシェイクの120万件以上の取引

 

顧客の声:

顧客は、サービスの品質と費用対効果の両方の点で、AWSインフラストラクチャに基づくソリューションに満足しています。

このプロジェクトはAICにとってAWSを利用した最初の案件でしたが、成功と判断され、今後より多くのユースケースにつながることでしょう。

 

プロジェクト期間: 1.5ヶ月

 

システムアーキテクチャー:

 

 

 

More From ブログ

January 31, 2023

失敗しないオフショア開発会社の選び方|開発パートナー選定のステップや比較ポイントを解説

オフショア開発の委託先国には様々な国々があります。また、オフショア開発会社の特徴も様々で、開発会社によって対応できる市場や得意分野も異なります。オフショア開発会社選びを間違えてしまうと、その後のプロジェクトが進むにつれて、納期の遅延や品質不良といった問題を引き起こしたり、プロジェクトの失敗リスクを高めることにつながりかねません。 本記事では、オフショア開発を検討している方に向けて、自社の開発パートナーとして最適な1社を見つけるために、オフショア開発会社のタイプや比較のポイント、パートナー選びの注意点などについて紹介します。オフショア開発会社選びにお悩みの方は、ぜひ最後までご一読ください。 オフショア開発の委託先国 オフショア開発では委託先をどこの国にするのかが重要で、コスト、言語、文化、時差、信頼性などさまざまな要素を考慮して選択する必要があります。 オフショアとは? オフショア開発とは、業務を海外に委託、アウトソーシングすることです。特にシステムの開発や保守運用などを委託することが多く、その場合は「オフショア開発」とも言われます。また、オフショア開発と似たものにニアショア開発があります。オフショア開発とニアショア開発については、以下の記事も参考にしてください。 オフショア開発とは|メリット・デメリット・成功に導く6つのポイント オフショアとニアショアの違いとは? それぞれのメリットと使い分けのポイント 人気のオフショア開発の委託先国はどこの国 オフショア開発の人気の委託先は、さまざまな要因により変化します。現在の人気はベトナム、バングラディシュ、ミャンマーなどの東南アジアの国々で、賃金がまだ安いことが大きな理由です。特にベトナムは、スキルの高いエンジニアが多いため人気があります。 かつては中国やインドも人気でしたが、人件費が上がってコストが高くなってきたので、件数は減っています。オフショア開発における委託先の人気国については、以下の記事も参考にしてください。 【2022年最新】オフショア開発の人月単価相場動向、人気のベトナムほか国別比較 オフショア開発会社の分類 オフショア開発会社は国や企業によって様々ですが、その運営者の資本系列とターゲット市場によって分類することができます。以下は、ベトナムのオフショア会社を例に分類していますが、他の国の事情は異なるものの類似する傾向も見られるため、参考として国名を読み替えてイメージしていただければいただければと思います。 ベトナム資本のオフショア開発会社 大規模なオフショア開発会社のターゲットはグローバル市場 欧米市場や日本市場などをターゲットとするグローバルな構成で、日本法人を設立して日本国内の大都市圏に拠点を設置して日本企業へのITアウトソーシングサービスを提供しています。 ITエンジニアの人材リソース数も1,000名以上と多く、小規模から大規模まであらゆるプロジェクトに対応し、必要な人材を必要なタイミングで確保できるスケーラブルなリソースは、中小規模のオフショア会社ではできない大きな強みとなっています。 また、対応範囲も幅広く、オープン系、汎用系、Web系、組み込み制御などに対応しています。 例えば、BtoB向けでは、企業の基幹系システムや情報系システムなどの業務系アプリケーションや、金融・物流・製造など様々な業界業種の基幹系システム開発・構築・運用・保守、オンプレミス環境からクラウドサービスへのマイグレーション、また自動車や製造業界向けのCAD/CAEやIoT、AI開発などにも対応しています。 また、IoT、AI、ブロックチェーンなどの先端IT技術にも積極的に取り組むほか、SFAやCRMの導入支援やローコード開発によるカスタマイズやRPA導入支援などのDXサービスなども提供しています。 BtoC向けでは、Web系としてECサイト、予約サイト、SNS、ゲーム、メディア・エンターテインメントなどのWebアプリケーションの開発などを行っています。 このように、コスト競争力の高さと豊富でスケーラブルな人材リソースという利点を兼ね備えているとともに、日本企業とのプロジェクト実績も豊富なため安心感があるという点も大きな魅力となっています。 中小規模のオフショア開発会社のメインターゲットは日本市場 日本への留学経験や日系企業での勤務経験があるITエンジニアが起業した企業が近年増えつつあります。従業員規模は10~50名と小規模な企業が多いため、日本に拠点がない場合もあります。しかし、経営者は日本への留学経験や日本のビジネス慣習をある程度把握している若手起業家が多く、また日本語での意思疎通が可能な語学力を持っている場合が多いため、経営層とは比較的スムーズにコミュニケーションすることがでしょう。 対応する領域は、Web系を中心と、会社ごとに得意分野はさまざまとなっています。 日系資本のオフショア開発会社 アウトソーシング事業主体 日本企業からの委託先として、多く利用されています。従業員100名未満の小規模な企業から1,000名以上規模まで、また顧客層も規模規模に応じてベンチャー企業から上場企業までさまざまです。 開発会社の成長に従い、開発に必要な体力、経験、知見を培い、日本企業の細かなニーズにも柔軟な対応ができます。また、ベトナム資本の会社と比較すると日本人従業員の割合が比較的多いため、コミュニケーションの良さをアピールする企業が多くあります。コストメリットもあり、SIerを通さずに直接発注する企業も増加しています。ただし、日本人従業員が多いためか、ベトナム資本の企業に比べるとコストは割高になる傾向があります。 対応領域は、業務システム、Webシステム、アプリ開発、ゲーム、AR(拡張現実)など、さまざまな分野に対応する会社が存在します。会社によって得意分野や対応領域、経営スタイルなどに特色があります。 大手SIerの海外開発拠点 日本の大手SIerの海外拠点で、メインターゲットも日本企業です。日本人スタッフも多く、日本語のコミュニケーションも可能でビジネス環境にも精通しており、大型案件や長期プロジェクトも安心して委託できます。 欧米資本のオフショア開発会社 アウトソーシング事業主体 主なターゲット市場は欧米で、日本法人もない場合が多く、コミュニケーション言語は英語及び資本系列の母国語になります。文化的にも、相手を察したり空気を読んだりといった、言葉ではなくコンテクスト(文脈)に頼るコミュニケーションスタイルは通用せず、日本語によるコミュニケーションも期待できません。支払い方法もドル建てが多く、積極的な選択肢とはなりにくいでしょう。 オフショア開発会社選びでよくある失敗と対策 予想よりも工数がかかった 労働時間や技術者のレベルについて、委託元と委託先の意識や意見にズレがあることが原因です。対策には契約締結時に内容を細かく確認することや、プロジェクトを理解するためのコミュニケーション、こまめな進捗管理などが必要です。 仕様がうまく伝わらない 仕様書や言葉の解釈の違いにより、使用が上手く伝わらず、委託元と委託先の間に意識や意見のズレが生じてしまうことがあります。上記と同じように、対策には契約時の確認やコミュニケーション、進捗管理などが必要です。 不具合が発生した、品質が基準を満たしていない テスト不足が原因ですので、テストの回数や内容、対応についても細かく決めておきましょう。 デザインやUIが不満である デザインやUIについては、日本人と委託先の国の感覚が異なることや、思い込みによるすれ違いが原因であることが多いです。事前に細かく打ち合わせし、すり合わせましょう。 委託するオフショア開発会社の選び方 委託先を決めるには、どのように情報を収集し、どこをポイントに選べばいいのでしょうか。 オフショア開発会社の情報の集め方 オフショア開発会社の情報は次のようなところから集めます。 企業のコーポレートサイト、サービスサイト 委託先の比較サイト IT関係の展示会やイベント 知人からの口コミ Linked […]

January 31, 2023

オフショアとニアショアの違いとは?それぞれのメリットデメリットと使い分けのポイント

世界的な労働力不足や人件費高騰が見込まれるなか、その傾向は日本においても例外ではありません。国内の幅広い業種で人手不足感が強まっています。さらに、新型コロナウイルスの感染拡大を受け、各企業はDX(デジタルトランスフォーメーション)化を急いでおり、IT人材の需要は高まっています。そのため、IT技術者の求人倍率は急伸し、ほかの職種と比べて転職後の賃金も上昇しています。 IT人材不足と人件費高騰という2つの問題を抱えていることから、システム開発には外部リソースを活用せざるを得ません。そのような状況において、解決策のひとつとして、オフショアやニアショアの活用が進んでいます。 海外人材を活用するオフショアと国内人材を活用するニアショアは、業務をアウトソーシングするというところは同じです。しかし、実際に活用する場面では、さまざまな違いがあります。そこで本記事では、オフショアとニアショアの概要、またそのメリット・デメリットや活用ポイントについて紹介します。 オフショアとは オフショア(offshore)とは、もともと「海外の」「岸から離れた」「外国に移す」という意味で、業務を海外に委託、アウトソーシングすることです。特にシステムの開発や保守運用などの業務を委託するときは、「オフショア開発(offshore development)」と言われます。 委託先は海外のシステム開発ベンダーや海外現地法人などで、ベトナムやインド、フィリピン、中国などにある企業への委託が多くなっています。 オフショア開発の目的 オフショア開発が増えている理由は、次のような目的があるからです。 国内では不足しているIT人材の確保海外ではエンジニアへの教育に力を入れている国も多く、IT人材を豊富に確保することができます。 人的コストの削減日本よりも人件費(エンジニアの給料)が安い国に委託すれば、大きなコスト削減につながります。ただし、人件費の安い国がどの国なのかを調べておく必要があります。 例えば、かつて中国は人気のオフショア開発の委託先国でしたが、現在の中国の人件費は高騰しており、日本と同程度か、上海など地域によっては日本よりも高額になっており、かつてのようなコスト削減効果は薄れています。 詳しくは、別の記事【2022年最新】オフショア開発の人月単価相場動向、人気のベトナムほか国別比較を参考にしてください。 現地市場への参入の足がかり他国の市場に自社のソフトウェアを投入するためには、ある程度のローカライズが必要です。現地のエンジニアに委託すれば、その地域の事情に合わせて、適切なローカライズができます。 オフショアはどんな分野で利用されているのか オフショアは特にIT分野で多く利用されていて、委託する内容はさまざまです。 ソフトウェア開発 Webシステム開発 ソフトウェアやシステムのローカライズ システムの保守運用 また、人的リソースが大量に必要な業務もよく委託されています。 コールセンター データ入力 画像編集 オフショア開発のメリット 海外に業務を委託することには、次のようなメリットがあります。 大きなコスト削減が可能人件費の安い国を選べば、大きなコスト削減が可能です。当然ですが、人件費の高い国を選ぶと逆に高いコストがかかります。 技術力の高いIT人材を確保できる海外ではIT人材の量も質も豊富です。特にAIやディープラーニングなどの最新技術に対応できるIT人材は、日本では不足していますが、海外では見つけやすいのです。 人的リソースが大量に必要な業務にも対応できる人材が豊富なので、大規模開発やコールセンター、データ入力など、大量の労働力が必要な業務も委託しやすいです。 契約形態をいろいろ選べるオフショア開発の場合、その契約形態は、請負型開発(請負契約)、ラボ型開発(準委任契約)、BOT方式などがあり、コストや業務内容に合わせて選べます。 契約形態については、別の記事「オフショア開発会社はどうやって選ぶ?選び方とそのポイント・注意点」を参考にしてください。 オフショア開発のデメリット オフショア開発には次のようなデメリットもあります。 遠隔では管理が難しい海外への委託でも、業務の管理は日本の委託元から行います。そのため、トラブルが起きても対応が遅れがちです。日本のビジネスに慣れた現場責任者の育成にも時間がかかるため、業務がスムーズに進まないことも多くなります。 品質に対する意識の差があるセキュリティや品質に対する意識は、国ごとに違いが出やすいものです。日本のやり方に慣れた開発会社でなければ、開発中のセキュリティ対策や品質管理でトラブルが発生しやすくなります。 コミュニケーションが難しい海外の開発会社やエンジニアとは、言語、文化、商習慣、時差、スケジュール感覚など、細かなところで違いがあります。時差が大きいとオンラインミーティングもしにくく、トラブルの原因になりがちです。そこで、開発会社のマネージャーや、委託先と委託元の間に入ってくれるブリッジSEの役割が重要です。 カントリーリスクがある国によっては、為替変動、国際情勢、国内情勢などの影響により、プロジェクトが途中で終了するリスクもあります。 ニアショアとは ニアショア(nearshore)とは、海外ではなく、国内の地方企業に業務を委託することです。システム開発の場合は「ニアショア開発(nearshore development)」と言います。海外に委託する「オフショア」よりも近いので、「ニアショア」と呼ばれています。 ニアショア開発の目的 ニアショアも、オフショア同様にコスト削減を目的としています。東京よりも地方の方が人件費や固定費が安いため、地方に業務を委託してコスト削減しているのです。 ニアショアはどんな分野で利用されているのか ニアショアでは日本全国、さまざまな地方にシステム開発を委託しています。また、地域の特色を生かしたニアショアもあります。 沖縄コールセンター、BPO(業務プロセスの委託)センターが多い 北海道気温の低さを生かしたデータセンターが多い ニアショア開発のメリット コスト削減地方は都市部よりも人件費が低いのでコスト削減が可能です。ただし、ニアショアの委託先は国内であるため、オフショアと比較するとそこまで大きなコストダウンを求めることはできません。国内の地域によって異なりますが、システム開発のITエンジニアの場合、東京の人月単価相場との比較では低く抑えられるのは約5%から最大でも30%程度です。 ディスコミュニケーションの問題が生じにくいオフショア開発では、外国のITエンジニアとコミュニケーションするため、言葉や文化の違いや、時差などのにより業務への悪影響が生じる場合があります。ニアショア開発では日本人同士で日本語でコミュニケーションでき、ビジネス環境の違いや意識の差も少ないため、そうした問題が生じにくいでしょう。 委託先に訪問しやすい国内のためトラブルが起きても現地で対応しやすく、意思の疎通もしやすいです。 カントリーリスクがない為替変動や国際情勢の変化などのリスクを考える必要がありません。 ニアショア開発のデメリット コスト削減効果は小さい地方とはいえ国内のため、大きなコスト削減効果はありません。 人材は豊富とは言いがたい国内なので、地方でも同じように人材不足の悩みがあります。高スキル人材も海外よりは少ないでしょう。また、国内ではどの地域でもITエンジニアは不足気味のため、オフショアほどの人材リソースは豊富とは言えません。 委託先が再委託する可能性がある国内ではどこも人材不足なので、委託先だけでは業務を回せずに、さらに下請けに委託する可能性があります。その場合には品質やスケジュールの管理もしにくく、意思の疎通も難しくなるでしょう。 […]

January 31, 2023

ラボ型開発(ラボ契約・ODC)とは?請負契約との違い、メリット・デメリットや向いている案件を解説

アプリケーションなどのソフトウェアを開発において、自社内で開発する内製と、外部の開発会社に開発を依頼する外製(外注)の2つ選択肢があります。内製は、自社の技術開発力の向上につながるメリットがある反面、専門知識を保有する技術力の高い社員エンジニアの存在が不可欠であり、システム完成後も人材の維持確保が必要になるというデメリットもあります。 一方、外製では専門性の高い部分を全て外部に委託でき、プロジェクトの遅延も発生しにくいことから、外製によるソフトウェア開発を行う企業が多くあり、昨今では人材不足や開発コスト削減などの観点から、オフショア開発が盛んに行われています。 今回は、オフショア開発のなかでもラボ型開発と呼ばれる形態について、その概要やメリット・デメリット、ラボ型開発に向いている案件について解説します。 ラボ型開発(ラボ契約・ODC)とは ラボ型開発とは、海外のリソースや企業を活用して開発する「オフショア開発」の類語で、「ラボ契約」「オフショア開発センター(ODC)」と呼ばれることもあります。ラボ型開発はオフショア開発における契約形態のひとつで、近年は、契約請負よりもラボ型開発を含む準委任契約での開発が盛んに行われています。 請負契約仕事の完了までを請け負う。契約発注者は要件を明確に定義し、ベンダーは作成された仕様書に沿って設計・開発から実装・テストまでを行い、期日までに成果物を納めるという請け負う。 準委任契約特定の業務を遂行することを定めた契約。請負契約とは異なり、成果物の完成の有無は問わない。準委任契約は、さらにラボ契約とSES契約に分けられる。 ラボ契約(ラボ型開発)すべてのエンジニアは日本国外に滞在する。発注者は一定期間(およそ半年~2年程度)の契約を結び、エンジニアチームを組んでプロジェクトを進めていくというもの。 SES契約エンジニアを発注元に常駐させる。ラボ型開発同様、エンジニアチームを組んでプロジェクトを進めていく。より流動的な案件や、エンジニアを教育したい場合などに用いられる。 BOT方式現地オフショア会社が人材リソースを確保し安定運用後にチームを丸ごと買い取る方式。Build(設立)、Operate(運営)、Transfer(委譲)を略した言葉。 請負契約では、ベンダーが納品した成果物に対して報酬が支払われます。一方で準委任契約ではベンダーが行う労働そのものに対して報酬が支払われるため、請負契約とは異なりプロジェクトの内容や進捗状況に応じて柔軟な変更が可能です。 近年では、ラボ契約とSES契約の両方を活用する「ハイブリッド型」の契約形態をとることも多く見られます。例えば、プロジェクトのキックオフから1〜2ヵ月間はSES契約で業務に慣れてもらい、その後帰国してラボ契約で働いてもらったり、人数を減らしたりするといったケースです。 オフショア開発について、別の記事「オフショア開発とは|メリット・デメリット・成功に導く6つのポイント」で紹介しています。 ラボ型開発と準委任契約の違い ラボ型開発(ラボ契約)は準委任契約の形態のひとつです。 システム開発における委託契約は前述の「請負契約」または「準委任契約」によってなされますが、請負契約が成果物の完成を目的とするのに対し、準委任契約は労働の代行を目的としている点が異なります。 単純に「準委任契約」と言う場合はシステム開発以外にも使われ、準委任契約のなかのシステム開発における形態がラボ型開発ということになります。 ラボ型開発(ラボ契約・ODC)のメリット ラボ型開発には、以下のようなメリットがあります。 一定期間、専属開発チームとしてメンバー固定でエンジニアを確保できる ラボ型開発では期間を決めて契約するため、期間内であれば継続的に案件の発注が可能です。期間内にいくつか連続して案件が入る場合でも、案件ごとにチームを組み直したり、一から情報共有をしたりする手間が省けます。 近年、東南アジア諸国のエンジニアのスキルは、日本国内のエンジニアと同等またはハイスキルな場合少なくなく、優秀な人材を中~長期間にわたり確保できます。 中~長期間腰を据えて案件に取り組むことで、ラボ型開発の委託先が発注側の業務体制や企業風土に慣れることができ、安定的に開発できるのも大きなメリットです。優秀な人材リソースを安定的に確保して開発できれば、機能を拡張しバグを改修する作業や業務を進めるための時間的リソースも確保しやすくなります。それにより、エンジニアも高いクオリティの成果物をスピーディーに納品することが可能になります。 自社内に開発や経験を暗号化できる ラボ型開発では、同じエンジニアメンバーと一定期間連携するため、自社内で開発が伏せられやすいのも大きなメリットです。 必須がはっきり決まっていないプロジェクトでも取り組むことができる ラボ型開発では、請負契約と異なり成果物が明確に決まっているとは限らず、途中で仕様変更をしたり、各種調整したりすることも容易です。企画や施策が確定していない状態でも、協働しながら進めていけるでしょう。請負契約のように、仕様変更や調整について追加費用が発生することもなく、契約期間内なら自由にリソースを使えます。 例えば、ラボ型契約で5名のエンジニアに開発を依頼した場合、最初の4カ月は全員に新規のアプリケーション開発を依頼し、その後の2カ月は3名が追加機能の実装を担当し、2人に細かいバグ対応や改善を担当するなど、フェーズや状況に応じて臨機応変かつ柔軟にチームを動かすことができます。 ラボ型開発(ラボ契約・ODC)のデメリット ラボ型開発には、以下のようなデメリットがあります。 チームの立ち上げや維持にコストがかかる ラボ型開発は一定期間専属のチームを確保できる契約なので、一定量の発注を続けられる場合はコストパフォーマンスが良いです。 一方、契約期間内はコストが発生し続けるため、依頼する案件の業務や作業量が極端に少ない場合に予定よりも早く開発が完了しても、その後に依頼する案件がない期間があるとその分は余計なコストとなり、請負契約よりもコストが高くなってしまう可能性があります。特に、単発の案件や短期の案件の場合は割高になってしまう可能性があり、チームを中長期に渡って押さえておくメリットが得られにくいでしょう。 契約期間中はリソースを無駄を生じさせないように、一定の業務量を発注できる準備を行っておく必要があります。少なくとも3カ月以上の開発が必要となる案件や、複数の単発・短期の案件を準備しておき、リソースを余らせないようにするのがおすすめです。 発注者が主体的にマネジメントする必要がある 開発をスムーズに進めるためには、チーム構築のほかに体制作りが必要です。特に、ラボ型開発では請負契約のようにすべてを発注先に任せられるわけではなく、チームとして協働する形態となるためコミュニケーションが特に重要になります。そのため、発注元が主体的にチームビルディングやマネジメントをする必要があることから、発注元の負担は請負契約と比べると大きくなります。 オフショア開発では、日本語が堪能な委託先に依頼できるとは限りません。国内に日本法人や支社があるオフショア開発会社を選んだり、開発技術だけでなくコミュニケーション言語の能力も含めて人選したりして、コミュニケーションに齟齬(そご)が生まれないような体制作りが必要です。 チームビルディングに時間がかかる ラボ型開発では、初めにチームを構築します。チームメンバーを選ぶ際には、単純にスキルが高い人材を集めればよいとは限らず、開発内容や自社の文化などさまざまな要素を考慮し、開発内容に合っていて相性の良い人材を慎重に選んでチームを構築する必要があります。 また、チーム構築から実際に開発に入るまでは、一般的に半月~3カ月程度の期間が必要なため、その期間も考慮しなくてはなりません。 また、ラボ型開発では、発注元がチームの一員となって開発を指示する必要があります。成果物の仕様にズレが生じないようチェックしたり、メンバーに体制や企業風土についてレクチャーしたりすることもあるでしょう。チーム結成後の滑り出しがうまくいくとは限らず、チームとしての機能が軌道に乗るまではある程度時間がかかることを念頭に置きましょう。 ラボ型開発(ラボ契約・ODC)が向いている案件 ラボ型開発は、以下のような案件に向いています。 定期的に発生する案件がある 業務委託したい案件が定期的に発生するのであれば、ラボ型開発がおすすめです。特に、既存のアプリやサービスの運用・改修をする場合に向いているでしょう。契約期間中は自社専属の開発チームを確保でき、案件が変わるごとにチームを再構築したり、一から情報共有したりする必要がありません。 そのため、開発案件が途切れず発生するけれど人員が足りないという場合にラボ型開発を利用すれば、案件ごとに依頼先を探したりすり合わせをしたりする手間がかからず、コストやストレスの軽減につながるでしょう。 仕様変更や修正が生じる可能性がある ラボ型開発は契約期間内であれば追加費用なしで対応してもらえるので、完成形がはっきり決まっていない案件や、仕様の追加や変更が生じやすい案件に向いています。請負型に比べてコストが抑えられるだけでなく、中~長期にわたって同じチームで作業していくので、指示を的確に理解して適切に作業してもらいやすいでしょう。 また、AI等の先端技術を用いたIT開発や、完成形が定まりにくい研究開発の要素を含むという場合にもラボ型開発は向いています。 アジャイル型開発の案件である システムやアプリの開発には、大きく分けてウォーターフォール型とアジャイル型の2つの開発体制があります。 ウォーターフォール型開発の最初の段階で要件や仕様を詳しく決定し、すべて完成してからリリースする。 アジャイル型 要件や仕様はざっくりとした状態で開発をスタート、短期間で設計、リリース、テストを繰り返しながら改修と開発を進めていく。 ウォーターフォール型の開発は初めに要件や仕様を詳しく決めるため、請負契約に向いています。一方、アジャイル型はスピーディーにリリースできる半面、あとから細かな改修や開発を繰り返していくため、ラボ型開発との相性が良いです。 […]

December 23, 2022

ノーコード開発で何ができる?どんな用途に向いているのか理解しよう

ノーコード開発は、今注目されている開発手法です。ノーコードツールを使えば、高い専門知識を持つIT人材でなくてもアプリケーションやWebサイトを開発でき、コストも開発期間も抑えられます。IT人材の不足が大きな問題になっているなかで、新たにIT人材を雇用したり育成したりしなくてよいのは大きなメリットです。 しかし、ノーコード開発はコーディングしないため拡張性や汎用性が低く、できることには限界があります。今回はノーコード開発の概要と、できることとできないことを説明します。 ノーコード開発とは ノーコード開発とは、コーディングせずにシステムやサービスを開発すること、またはその開発環境のことです。開発環境はノーコードツールとも呼ばれます。コーディングは一般的にプログラミングとも呼ばれるもので、プログラミング言語を用いてプログラムを書くことです。 ノーコード開発ではコーディングが不要なので、高度なスキルや知識がない、非IT人材でも開発できます。そのため、ユーザーが現場で必要なアプリケーションを開発でき、現場のニーズに合わせた開発が可能です。システム開発の担当者との打ち合わせも不要なので、開発時間を短縮できます。 そのため、ノーコード開発はIT人材不足を補い、デジタイゼーションを進め、DXを推進する方法のひとつとして期待されているのです。 ノーコード開発では、コーディングの代わりにツール上で用意されたコンポーネントと呼ばれる部品を組み合わせて開発します。コンポーネントを使うため、必要なものを素早く開発することが可能です。 ただし、コンポーネントのないものは作れないので、自由度は低く、オリジナル部分の多い開発や大規模開発には向きません。また、コーディングの余地がないため、カスタマイズや拡張も不得意です。 ローコード開発との違い ノーコード開発と似たものに、ローコード開発があります。ローコード開発とは、ほとんどの部分をノーコードで開発できるものの最小限のコーディングが必要な開発手法や、その開発環境のことです。コーディングするため、ノーコード開発よりも高い汎用性や拡張性があります。 一方でノーコード開発はソースコードの記述をせずに開発でき、開発に高いスキルは不要です。ただし、コードが使えないため、細かな部分での修正や調整ができません。また、ノーコード開発は開発ツールによってできることが変わります。 従来のように「すべての部分をコーディングで作成する」場合はフルコード開発と言います。最も難易度が高く、専門的なスキルが必要ですが、自由度や拡張性も高い方法です。 ローコード開発や、IT人材不足との関係については、次の記事を参考にしてください。 「ローコード開発とは? IT人材不足解消の切り札として注目される新しい手法」 ノーコード開発、ローコード開発、フルコード開発の違い   ノーコード開発 ローコード開発 フルコード開発 コーディング 不要 少し必要 必要 スキル 高いスキルは不要 高いスキルは不要だが、ある程度のスキルは必要 高いスキルが必要 拡張性、自由度 低い コーディングにより確保可能 高い拡張性と自由度がある 開発期間 短い 短い 長い ノーコード開発が向いている場合 ノーコード開発は次のような場合に向いています。 スモールビジネスを行う個人である場合ネットショップ運営やアプリ制作などのスモールビジネスに使えます。また、ほかの業種でも、スモールビジネスを行う個人が必要なアプリケーションを制作することも可能です。 小規模なソフトウェアベンダーである場合小規模アプリの開発を行うベンダーで開発環境として使えます。 スタートアップ・ベンチャーである場合開発期間を短縮し、効率的に事業を始められます。 部署内で小さなアプリケーションが必要な場合情報システム部門に頼らず、短期間で欲しいアプリケーションを制作できます。その他、開発コストを抑え、短期間でサービスをリリースしたい場合に向いています。 ノーコード開発でできることとできないこと その性質上、ノーコード開発にはできないことがあります。特徴と限界を理解して使いましょう。 ノーコード開発でできること Webページ制作企業・団体のWebサイト、商品のサービスサイト、ECサイトなど。 Webアプリ制作フロントエンド、バックエンド、データベースといったWebベースのアプリケーション。 業務の自動化・効率化のための小さなアプリケーション制作日常的な業務を効率化する小規模なアプリ、単機能に特化したアプリ、データ管理アプリなど。 モバイルアプリ制作業務に利用するスマートフォンアプリ。 ノーコード開発でできないこと ノーコード開発では、次のようなシステム開発はできません。 大規模で複雑なシステム開発拡張性や自由度が低いので、複雑なシステム開発には向いていません。 独自部分の多いシステム開発ツールに装備されているコンポーネントを使って開発するため、独自部分の多い開発はできません。 ツールの対象となっていない分野の開発ノーコードツールにはそれぞれ対象とする分野があります。 ゲームのように表示速度が重要なシステムの開発ノーコードで開発した場合、ページの読み込み速度が遅くなる傾向にあります。 […]

December 15, 2022

ローコード開発とはIT人材不足解消の切り札として注目される新しい手法

ローコード開発は、基本的にはコンポーネントの組み合わせですが、ある程度のコーディングが可能な開発手法です。ノーコード開発とは異なりコーディングできるため、外部との連携といった拡張性や自由度もあります。ただし、ツールによってできることには制限があります。

December 9, 2022

企業が注目するCRMとは?基本機能から導入の際の注意点を解説

顧客ニーズの変化に対応するためにCRMを導入する企業が増えています。しかし、一方で「CRMに興味があるもののどのように導入したらいいのか分からない」「自社にどのようなメリットがあるのか分からない」といった声も耳にします。そこで、CRMの機能や導入の際の注意点を解説します。 CRMとは? 企業の営業部門で注目される「CRM」について解説します。 CRMとは「Customer Relationship Management(カスタマー・リレーションシップ・マネジメント)」の略です。日本語では「顧客関係管理」と訳します。概念としてのCRMは、顧客との関係性に着目しながら顧客管理し、長期的に高い利益を生み出す企業体質にするための経営手法です。一般的には、顧客管理を効率的に行うツールやシステムのことを指しています。 CRMが持つさまざまな機能 企業によってツールの目的は多岐にわたり、さまざまな機能があります。CRMが持つ主な機能を紹介します。 顧客情報管理 顧客の基本的な情報に加え、取引履歴、商談の内容やクレームの対応などの履歴情報を管理する機能です。顧客を属性別に分類できます。 案件管理 営業案件の進捗を可視化できます。担当が変更になった場合も営業訪問履歴などの確認ができるため、スムーズな引き継ぎが可能です。 メール配信機能 単発のメールやメールマガジンなどを配信できる機能です。メールの開封率やクリック率などの検証ができ、顧客に対して情報発信によるアプローチの精度を高められます。 キャンペーン管理 設定した条件に当てはまる顧客に対し、クーポン配布、DM配信などさまざまなキャンペーン施策を行えます。 売上予測 顧客情報をもとにした分析により売上予測を立てられます。 モバイル連携 スマホやタブレットなどとモバイル連携でき、営業担当者が外出先でも対応できます。 CRMとSFAの違いとは? CRMとよく似たツールとして挙げられる「SFA」との違いを解説します。 SFAとは「Sales Force Automation(セールス・フォース・オートメーション)」の略です。日本語では「営業支援システム」といいます。営業担当者を支援するためのツールで、企業全体での営業活動の業務効率化や売上向上を目的として導入している企業もあります。 CRMとSFAは共通している機能もあり、いずれも営業部門で導入されるケースが多いです。CRMは顧客関係管理に、SFAは営業支援に特化したシステムです。顧客との関係維持・向上のプロセスではCRM、見込み客との商談開始から購買・成約までのプロセスではSFAというように、使い分けている企業もあります。また、CRMとSFAの機能を一元化したツールもあります。 世界と日本で導入実績が多いツールはSalesforceで、これはクラウドベースのCRM・SFAサービスです。「Sales Cloud」と「Service Cloud」が代表的なツールです。 SFAについて詳しく知りたい方はこちら。 リンク:「SFAとは?CRMやMAとの違いとは?活用方法や注意点など導入時のポイントを解説」 CRMが持つメリット CRMシステム導入のメリットを紹介します。 顧客満足度の向上 CRMを導入すると顧客情報が蓄積し、既存顧客の傾向が把握しやすくなります。顧客のニーズに沿った適切なアプローチができることで、顧客満足度の向上が期待できます。 成約率の向上 商談のプロセスを含めて顧客の記録、管理、分析ができ、営業メンバーの強み、弱みを分析、改善することで成約率の向上にもつながります。営業ノウハウの蓄積と共有ができることで、チーム全体の業績アップも期待できます。 部門間で情報共有できる CRMに入力された情報はリアルタイムで部門間での共有ができます。部門間の連絡時間を短縮し、各部署で必要なアクションができることで、業務効率化や顧客に対するより良質なサービスの提供が可能です。 CRMのメリットを生かした活用事例 CRMを導入している企業の活用事例を紹介します。 時間外労働の削減 「部署内でのスキルのばらつきによる実績の差」「情報共有のスピードの遅さ」が課題だったある企業の事例です。CRM導入により、営業ノウハウの蓄積と共有によって成果を挙げやすい環境に変化しました。情報共有のスピード化も実現し、時間外労働の削減につながりました。 顧客満足度の向上 ある企業では、CRM導入によりコールセンターと現場間での情報を一元管理できるようになりました。顧客情報を部門全体で共有したことで、顧客に継続的なサポートを提供することができるようなり、顧客満足度の向上とともに、LTV拡大にもつながったという事例です。 CRMツールの選び方 CRMを導入しても、ツールの選び方によってはうまくいかないケースがあります。そこで、ツール選びのポイントをお伝えします。 使いやすいか 社内でシステムが定着するには、「使いやすいツール」であることが条件と言えるでしょう。導入前に無料で試せるといった、お試し期間があるものがおすすめです。 連携ツールが豊富であるか 社内ですでに使っているシステムやツールと連携できるかどうかも重要なポイントです。連携できるツールであることで業務の効率化につながります。 導入サポートがあるか 自社に合ったツールとなるとカスタマイズが必要になることがあります。また、導入してから操作に慣れるまでに時間がかかることもあるため、導入サポートがあると安心できるでしょう。 モバイルアプリ版があるか パソコンだけでなく、モバイルアプリ版があるかどうかも重要なポイントです。外出先においてスマートフォンやタブレットでCRMを活用することができれば、業務効率が上がり成約率向上につながります。 […]