要件定義のアプローチ

要件定義の基本

すべてをシステムで解決してしまおうとする要件定義には注意が必要である。システムの成功の可否は要件定義にかかっていると言っても過言ではない。しかし、十分に要件定義の時間を使ったにも関わらず、ITプロジェクトが失敗することがある。

規模別の要件定義

システム構築の規模によって、要件定義の粒度が変わる。小さなITプロジェクトの場合は要件定義をせずにプロトタイプを作りながらシステム構築を進めるといった方法がある。これをアジャイル開発、プロトタイプ開発と呼ぶ。

要件定義の本質

要件定義の粒度は時間を掛ければ細かくなるわけではない。ユーザー側でも要件定義を進めるにつれて、想定している機能の矛盾点が出てくることがある。この矛盾点を解消していくこと自体を要件定義としてはならない。要件定義はあくまで本質的なコアとなる部分から膨らませることが重要である。

対話型要件定義

要件定義フェーズで失敗するパターンは、ユーザー側との対話ではなく、システム会社側がヒアリングに徹する場合である。ユーザー側はITを利用してどのようなことができるかを知らない可能性が高いため、システム専門家がそれを鵜呑みにした仕様で要件を固めてしまうと、製造工程で無駄な工数が発生し予算をオーバーしてしまうことがある。

まとめ

本質的な要件をコミュニケーションによって、はっきりさせていく作業こそが要件定義と言えるのである。さまざまな視点から何度も繰り返し要件をなぞることで粒度が落ちていき、適切な要件定義書となる。何でもかんでもシステム化せず、オペレーションとの関係性を見合わせながら進めることが望ましい。

関連記事

ベトナムオフショア開発に向く3つのプロジェクトと、向かない3つのプロジェクト

ベトナムに向くプロジェクトの特徴

ベトナムへのソフトウェアのオフショア開発については昔から肯定的な意見と否定的な意見があります。昨今のベトナムの人件費の向上と日本の人件費の低下、そして円安もあり、コストダウン効果が見込めなくなってきています。しかし、単に海外オフショア開発が良いか悪いかという単純な問題ではなく、ベトナムの特徴を踏まえて、どのようなプロジェクトが向いているのか見極めることが重要です。本記事では、ベトナムにおけるオフショア開発に向く3つのプロジェクトと、向かない3つのプロジェクトを紹介します。

ベトナムに向くプロジェクト

1. 生産拠点や流通拠点を持つERPシステム開発

日本企業がベトナムに自社の生産拠点や流通拠点を持ちそのためのERPシステムを開発する場合、ベトナムは適した場所と言えます。ベトナム企業はベトナムの市場に精通しており、日本企業もベトナムの物流や製造現場に慣れています。また、ERPシステムの構築経験も蓄積されており、ベトナムのソフトウェア業界は成熟しています。さらに、ベトナム人の日本語通訳者の能力も向上しており、生産や流通に関わる日本語も習得しています。このような環境下でのERPシステム開発は、効率的かつ円滑に進めることができます。

2. ライトなWeb開発など経験を必要としない開発分野

技術の進化が激しいWeb開発など、比較的ライトで長年の経験を必要としない開発分野においても、ベトナムは適した場所と言えます。これらの分野では、若くて習得の早い技術者が求められます。ベトナムの技術者は熱意を持ち、新しい技術の習得に積極的です。また、技術自体も日本やベトナムといった特定の地域に依存せず、汎用性の高いものが多いため、ベトナムの技術者との協力により効果的な開発が行えます。

3. BPO的なプロジェクトでの教師モデル開発や画像タギングなど

ベトナムはAIにおける教師モデルの開発や画像のタギングなどのBPO的なプロジェクトにも適しています。ベトナムの基礎教育レベルは高く、労働者の字の読み書きやPCの使用能力に問題はありません。また、ベトナムはピラミッド型組織を構築しやすい文化的環境が整っているので大量生産に向いています。これらの要素を活かして、BPO的なプロジェクトをベトナムで展開することは効果的です。

ベトナムに向かないプロジェクト

1. コストダウンが目的のインクルーシブなプロジェクト

単純なコストダウンが目的のインクルーシブなプロジェクトは、ベトナムにとって戦略的な選択肢とは言えません。最初は若くて安いエンジニアを投入することで一時的なコストダウン効果を得るかもしれませんが、時間が経つにつれて人件費が上昇し、コストが増加してしまいます。また、ベトナムのエンジニアも自身のキャリアパスを考えるため、離職率が高く、人材の取り替えが困難になる場合もあります。

2. AIなど最先端技術のラボラトリーとしてのプロジェクト

ベトナムはAIなどの最先端技術のラボラトリーには向いていません。ベトナムは積極的な技術開発を行っていますが、他の国々も同様に積極的であり、特にアドバンテージがあるわけではありません。また、最先端技術になるほど人件費が高くなり、ベトナム価格でも他の国と競争することが難しい場合があります。このような背景から、ベトナムにおける最先端技術の開発には慎重な判断が求められます。

3. 最終消費者向けのセールスやマーケティングシステム

最終消費者向けのセールスやマーケティングシステムは、ベトナムとの文化や商習慣、法律、税制などの違いにより、開発が困難となる場合があります。ベトナム側で日本のマーケットに適したシステムを開発することは難しく、逆に日本側でもベトナム市場に合わせたシステムを構築することは容易ではありません。ただし、バックエンドのシステムに関しては国による違いは少ないため、ERPのようなバックエンドのシステム開発はベトナムでも適しています。

以上がベトナムにおけるオフショア開発に向くプロジェクトと向かないプロジェクトの一例です。プロジェクト選定においては、ベトナムの特徴や環境を的確に把握し、ベターな組み合わせを選ぶことが成功への重要な戦略となります。

続きを見る >

ノーコード・ローコード比較

新たな開発手法

近年、ビジネスのデジタル化が加速する中で、ノーコード・ローコードツールが注目を集めている。従来のシステム開発では専門的なプログラミング知識が必須だったが、これらのツールを使えば、非エンジニアでも直感的な操作でアプリケーションやWebサイトを構築できる。開発期間の短縮やコスト削減が可能になることから、スタートアップから大企業まで幅広く導入が進んでいる。

主要ツール

ノーコードツールの代表例としては、Webサイト構築に強いBubbleやWebflow、業務アプリ開発に適したKintoneやAppSheet、自動化に特化したZapierなどがある。Bubbleは柔軟性が高く複雑な機能も実装可能だが、学習コストはやや高めである。Webflowはデザイン性に優れ、マーケティングサイトに最適だ。Kintoneはデータベース管理に優れ、日本企業での導入実績が豊富で、承認フローなど日本の業務習慣に対応している。一方、ローコードツールではMicrosoft Power AppsがOffice 365との連携に強く、OutSystemsは大規模エンタープライズ向けで基幹システム開発にも対応可能である。料金体系も月額制からユーザー課金制まで多様で、自社の規模に合わせた選択ができる。

両者の違い

ノーコードとローコードの最大の違いは、カスタマイズ性と技術的な介入度である。ノーコードは完全にコード記述なしで開発できる反面、複雑な要件には対応しきれない場合がある。ローコードは基本的な部分は視覚的に構築しつつ、必要に応じてコードを追加できるため、より高度な機能実装が可能だ。選択時のポイントは、開発したいシステムの複雑さ、既存システムとの連携要件、将来的な拡張性、そして社内の技術リソースである。シンプルな業務アプリならノーコード、基幹システム連携が必要ならローコードが適している。

導入のポイント

ノーコード・ローコードツールの導入を成功させるには、いくつかの注意点がある。まず、無料プランで試用し、実際の業務フローに合うか検証することが重要だ。また、ベンダーロックインのリスクを考慮し、データのエクスポート機能やAPI連携の可否を確認すべきである。セキュリティ要件も見逃せない。特に顧客情報を扱う場合は、各ツールのセキュリティ認証やデータ保存場所を確認する必要がある。さらに、導入後の運用体制も計画的に整備し、社内でのツール活用スキルを育成することが、長期的な成功につながる。

まとめ

ノーコード・ローコードツールは、企業のDX推進を加速させる強力な手段である。適切なツールを選定し、自社の課題に合わせて活用することで、開発コストを抑えながらスピーディーにシステムを構築できる。まずは小規模なプロジェクトから始め、成功体験を積み重ねながら展開していくことを勧める。デジタル化の第一歩として、ぜひ検討すべきだろう。

続きを見る >

運用の昇華

開発現場の想定外

基幹システムの開発現場では、最初に想定した仕様とは異なる業務フローが後から発覚することが多い。

マネジメントの試金石

後から発覚した業務フローは、すでに構築が進んでいるシステムに組み込むことが難しいため、どのように対応するかがプロジェクトマネージャーの腕の見せ所である。

プロジェクトの舵取り

プロジェクトマネージャーとは何かと問われたときに、一言で言い表すならば、不測の事態にどのように対応できるか、ということではないかと考える。プロジェクトが何の問題もなく、完遂できることは少ない。したがって、イレギュラーケースが発生した時にどのような手立てを打てるか、迅速に行動できるかがプロジェクトマネージャーのレベルとなる。

パートナーシップの重要性

プロジェクトマネージャーがシステムの完成しか考えていなければ、途中から発覚した仕様は「運用でカバーせよ」とユーザー側に責任を押し付けてしまうことがある。しかし、より良いシステムを目指す、パートナーとしてであればこの回答は好ましくない。

まとめ

どのような事象がきっかけで、途中で使用漏れが発覚したのか、プロジェクトの進行状況を見ながら、ひも解くことが重要である。運用でカバーというユーザー側だけにだけ負担をさせるのではなく、運用をカバーするようなシステムを構築できるのが理想である。

続きを見る >