分散開発プロジェクトとは、複数の事業所や拠点にまたがって行われる研究開発(R&D)プロジェクトです。プロジェクトメンバーは互いに直接顔を合わせることはありませんが、プロジェクトの成果に向けて全員が協力して取り組むR&Dの一形態です。多くの場合、これは電子メール、インターネット、その他の迅速な遠距離コミュニケーション手段を通じて行われます。[ 1 ]分散開発は、オープンソースソフトウェアコミュニティによって大きく開拓されました。[ 2 ]
これは、ある組織が別の組織に業務を下請けするのではなく、すべての組織が対等な立場で連携する点でアウトソーシングとは異なります。仮想チームに似ていますが、研究の要素が加わります。
分散開発の特徴
開発者は複数の拠点に分散し、同じプロジェクトまたは製品に取り組んでいます。分散の理由は問いません。異なる拠点でのリソースの可用性、特定のクラスターへの近さ、顧客への近さ、コスト優位性などが挙げられます。
分散開発環境では、人々は専門分野に分かれるかもしれませんが、共通の目標を達成するために積極的に協力します。プロジェクトマネジメントのどこかにプログラムリーダーまたはプロジェクトマネージャーが必ず存在します。分散環境では、プロジェクトメンバーはアイデア、情報、リソースを共有します。重要な要件の一つは、すべてのコミュニケーションが同じオフィスビル内の人に限らず、関係者全員に公開される必要があることです。これは通常、インターネットベースのコラボレーションによって実現されます。一般的に使用されるコミュニケーションツールには、GitHubやWikiなどがあります。[ 2 ]
分散開発は、あらゆるエンジニアリングや科学研究開発環境において、最も高度なコラボレーション形態の一つです。通常、ビジネスの成功を阻むものではありませんが、高い管理能力、優れたコミュニケーション環境、政治的に干渉されない環境、非常に効率的なインフラ、整備された組織図、そして頻繁な交流が必要となるため、多少の負担から実現の困難さまで、その程度は様々です。最も重要なのは、経営陣が体制を信頼し、遵守者への報奨措置を講じるとともに、遵守しない者に対しては厳格に対処することです。起業家のミッチ・ケイパー氏によると、多くの企業が分散開発を成功させています。[ 1 ]
成功要因
分散開発にはいくつかのデメリットがあります。研究によると、従業員全員が同じオフィスで働く場合、仕事の調整がうまくいき、生産性が向上することが示されています。同様に、緊密に統合されたソフトウェアアプリケーションは、分散開発で開発するのが非常に困難になる可能性があります。こうした理由から、Facebookをはじめとする多くの大企業は、全従業員に同じオフィスで働くことを義務付けています。
とはいえ、分散開発にはビジネスにとっていくつかの利点があります。企業は、在宅勤務を希望する従業員や長距離移動を望まない従業員など、より多様な労働力を雇用することができます。また、シリコンバレーの高賃金とは対照的に、質の高い労働者を低コストで雇用することができます。分散開発は、プログラムの異なる部分を個別に開発できるモジュール型ソフトウェアに適している場合が多いです。[ 2 ]
分散開発プロジェクトの主な成功要因は 3 つあります。
- 優秀で、強く、高度なスキルを持った人材を選抜・採用する。[ 1 ] [ 3 ]
- 特に大きなプロジェクトの開始時には、対面でのミーティングにいくらかの費用をかけましょう。[ 3 ]
- 適切なインセンティブシステムを含め、分散開発での作業をサポートする組織設計を構築する。[ 3 ]
これら 3 つのアクションを実行することで、純粋なアウトソーシングやオフショアリングを超える利点が得られます。つまり、分散ネットワークのすべての部分で従業員のモチベーションが大幅に高まり、定着率が向上し、ネットワークの多様性から確実に利益が得られます。
アプリケーション
グローバル分散型ソフトウェアエンジニアリング
グローバル分散ソフトウェアエンジニアリング(GDSE)は、分散開発プロセスのためのエンタープライズアプリケーションです。企業は、チームが複数の場所で作業している場合や、アウトソーシングやオフショアリングなどの理由で、分散環境で作業を行うことがあります。[ 4 ]分散ソフトウェアエンジニアリングの一般的なアプローチは、分散アジャイルソフトウェア開発です。
過去には、ほぼすべてのソフトウェア開発は、チームリーダー、設計者、開発者、テスト担当者など、すべてのメンバーが物理的に近い場所で一緒に作業するチームによって行われていました。[ 5 ]年月とともに、企業は規模と複雑さが増し、ソフトウェアをグローバルに開発する必要に迫られました。[ 6 ]さらに、他の力も影響を与えました。たとえば、経済力とグローバリゼーションにより、国内市場がグローバル市場になり始め、競争が激化しました。[ 6 ]
前述の成功要因で説明したように、分散環境でソフトウェアを開発することにはいくつかの利点があり、これはグローバルにソフトウェア開発を始める企業にとっても重要な要素です。[ 7 ]
- 例えば、世界の他の地域での賃金が低いため、開発コストが低くなる
- 時間効率の向上、毎日の労働時間の増加
- より大規模な熟練労働力へのアクセス
- 企業の市場と顧客とのより近い距離
グローバル分散ソフトウェアエンジニアリングは、コミュニケーションに関して多くの課題を抱えています。分散ソフトウェア開発におけるコミュニケーションの研究分野は、これらの課題に対処し、企業が誤解のない信頼性の高いコミュニケーションチャネルを構築できるようにすることに重点を置いています。[ 8 ]
参照
参考文献
- ^ a b cミッチ・カポル、「成功する会社の作り方」 、スタンフォード大学起業家精神を育む学生への講義、2008年1月16日。
- ^ a b c Asay, Matt (2014年6月24日). 「分散開発:あなたはまだ間違っている」 . readwrite . 2014年6月25日時点のオリジナルよりアーカイブ。 2015年1月28日閲覧。
- ^ a b cダニエル・エク、「起業家のためのプレイリスト」 、スタンフォード大学起業家育成学生への講義、2012年5月16日。
- ^リチャードソン、イタリア;ケイシー、バレンタイン。バートン、ジョン。マッカフェリー、ファーガル (2010)。ミストリーク、イワン。グランディ、ジョン。フック、アンドレ。ジム・ホワイトヘッド(編)。協調的なソフトウェア エンジニアリング。シュプリンガー ベルリン ハイデルベルク。 pp. 35–56 . doi : 10.1007/978-3-642-10294-3_2。ISBN 9783642102936。
- ^ Thissen, M. Rita; Page, Jean M.; Bharathi, Madhavi C.; Austin, Toyia L. (2007). Proceedings of the 2007 ACM SIGMIS CPR conference on 2007 computer personnel doctoral consortium and research conference the global information technology workforce - SIGMIS-CPR '07 . p. 28. doi : 10.1145/1235000.1235007 . ISBN 9781595936417. S2CID 2741073 .
- ^ a b Eykelhoff, Maarten (2007). 「グローバルソフトウェア開発におけるコミュニケーション」(PDF) .
{{cite journal}}:ジャーナルを引用するには|journal=(ヘルプ)が必要です - ^ Conchúir、エオイン・オー; \AAgerfalk、Pär J.;ヘレナ・H・オルソン。ブライアン、フィッツジェラルド (2009 年 8 月)。 「グローバル ソフトウェア開発: メリットはどこにありますか?」共通。 ACM。52 (8): 127–131 .土井: 10.1145/1536616.1536648。ISSN 0001-0782。S2CID 663043。
- ^ tutkimuskeskus、ヴァルション・テクニリネン (2012)。グローバル ソフトウェア エンジニアリング: 課題と解決策のフレームワーク。ISBN 9789513874599. OCLC 820775844 .