場合など、ソフトウェアの開発を外部に委託するケースもあると思います。その際に最初のハードルとなるのが「見積もり」にかかる行程ではないでしょうか。ソフトウェア開発の見積もりは、専門的知識無くしては分かりにくいものです。今回の記事では、一般的な見積もりの種類や手法について解説していきます。新規事業を担当される方や、これからアプリ開発の外注をお考えの方に、是非参考にしていただければと思います。依頼する前に開発の無駄を省いておく発注者として無関心にならないことソフトウェア開発の見積もりの基本的な考え方まず、ソフトウェア開発における内容を具体的に細分化して解説します。・コストソフトフェア開発に必要な費用のことを指します。・工数ソフトフェア開発に必要なを時間指し、見積もり時に使われる作業量を表す単位になります。・規模ソフトフェアの開発量を指します。・工期ソフトフェア開発の作業期間を指します。主には要件の定義からリリースまでです。見積もりを依頼する前に、発注者側もあらかじめソフトウェア開発における基礎知識を身につけておく必要があります。全ての方がソフトウェア開発に精通しているわけではありません。ここでは、ソフトウェア開発を初めて担当する場合には、”どんな手法があるか“、”見積もりの内訳や種類“など、外注する前に把握しておくべき基礎的知識を解説します。ソフトウェアの開発に対する外注予算を組む上で、費用の大枠を把握するために利用する見積書になります。やりたいことは決まっているものの、どんな画面や機能が必要かをしっかり洗い出せていない段階での見積もりとなります。仕様が不確定なため、見積もり額の精度は正直高いとは言えません。見積もり金額から「−50%から+100%」ほどのズレがでるケースもあります。概算見積書(相見積書)超概算見積書より具体的な見積書のことを指します。必要な機能や画面の洗い出しが完了したのち、RFP*などをもとに、目的や用途に沿った具体的な提案を受けるための見積もりになります。相見積もりをとり、開発会社選定のために利用されることもあります。超概算見積もりよりは精度が高い見積もりを期待できますが、この段階ではUI/UXなど細部までは決まっていないケースが多く、正式見積もりとズレが出るケースもあります。(あくまで目安ですが、「−25%から+50%」など)正式見積書(確定見積書)先ほどの”概算見積書”をベースに、UI/UX、性能要件など出来る限り詳細な部分を話し込みながら、正確に内容を盛り込んだ見積書になります。この時期までくると正式な発注・契約となりますので、この段階で大まかなスケジュールや作業分担が、大枠で決まってきます。作業段階の行程では色々と変更が起こります。トラブルがあった際も対処出来るように、わかる範囲で契約に盛り込むなどのリスクヘッジをしておきましょう。Proposal)...情報システムの導入、業務委託などのシステム開発時に、使用者側が必要とする性能を満たす具体的な設計案の提出を開発会社に依頼する文書(仕様書)基礎知識2「見積もり手法を把握する」ここではソフトウェア開発の見積もりについて、主な手法におけるメリットとデメリットを解説していきます。類推見積もりシステム開発やコストや工数を見積もる際に用いる手法です。過去に開発済みの類似システムの実績値をもとに推定していく方式です。・メリットシステム・ソフトウェア開発などの規模、工数、リスクの想定などを見積もる際に用いられることが多く、一般的に小規模なものであれば、正確性が高く早く見積もりを出すことが可能です。初期段階でのある程度の工数やコストを算出することが可能です。・デメリット過去に類似システムの前例がないと、担当側の勘や経験をもとに見積もりが行われるため、またプロジェクト特有の要件への考慮が漏れている場合もあり、精度が低くなります係数モデル見積もり(パラメトリック見積もり)最も一般的に使われており、ソフトウェアの工数や期間、規模などの要件に合わせて、機能数や画面数を積算していく手法になります。中小規模プロジェクトのソフトウェア開発に多く用いられる手法です。・メリットユーザーの納得度を得やすいという特徴があります。利用実績のあるデータをもとに構築されることから信頼度も高い手法となります。・デメリット見積もりに必要な要素が厳密であることが挙げられます。内部の機能を数え上げ、複雑度の評価、ソフトウェアの特性などを加味して機能別に作成されるためかなりの時間を要します。操作性やデザインなどの工程が反映されません。ボトムアップ見積もりプロジェクト全体で実施する作業単位を細かな工数に分解して、それぞれを足し合わせて積み上げていく見積もりの手法になります。小中規模のシステムに多く用いられる手法です。・メリット作業内容が細分化されているので、スケジュールやコストの管理が行えます。・デメリット成果物を基準に見積もりを行うため、ソフトウェア開発の要件等の定義が完了していなければなりません。依頼する前に開発の無駄を省いておくプロジェクトを失敗に導く一つの要因として、「無駄なことにコストを支払う」ことが挙げられます。ソフトウェア開発を依頼する前に、本当に必要な機能だけになっているかをチェックすることが重要です。悲しいことにシステムをリリースすると思ったよりも使われない機能がでてくることがあります。メールアドレス認証とSNS認証を導入したがほぼSNS認証しか利用されない、管理画面で集計できる機能を開発したが、運用担当者はローデータをダウンロードしてエクセルで集計を行っているなどはよく聞く話です。見積もりを依頼する前に本当に必要な機能か、他に代替できる手段はないか、検討してみるのがよいでしょう。発注者として無関心にならないこと「外注」となると、プロに依頼することになるので安心してしまいがちです。システム化される実際の業務やサービスに最も精通しているのは発注者です。一つの仕様の認識の齟齬が、見積もり、開発、工期全てに影響を与えます。任せる側も開発に参画する気持ちで依頼することが大切です。ソフトウェアを開発することが目標ではなく、その後にいるユーザーの方に気持ちよく使っていただくことが前提となります。みなさんにとって有益なシステム開発となることを心がけましょう。コメントをキャンセルメールアドレスが公開されることはありません。Blogお問い合わせ。