データ・マックス
生コン業界関係者ならだれもが知っているコンクリート劣化現象の
塩基 - Wikipedia
- [ 翻譯此頁 ]特にDNA・RNAのヌクレオチドを構成する核酸塩基については核酸を、NATOコードネーム「 アルカリ」についてはAA-1をご覧ください。 ... またアルカリ金属あるいはアルカリ土類金属などの水酸化物あるいはアンモニア、アミンなど水溶液が塩基性を示す物質を ...開発の分散は品質の問題が生じるだろう
作者 Vikas Hazrati, 翻訳者 沼田 暁子 投稿日 2009年1月5日 午後12時45分
「ロケーション間でのスキルレベルの違いによるソフトウェアの品質の問題」は世論調査結果からわかった最も興味深いことの一つであるが、この調査は2008年9月のReg読者調査(リンク)で行われたものである。この調査の回答者は369人で、その内80%は分散ソフトウェア開発を直接経験していた。地理的には44%が英国、36%が米国、そして他の場所が20%に分かれていた。
コミュニケーションとコラボレーションは依然として分散開発の主要な課題であり回答者の85%以上が挙げていたが、驚いたことに2番目は、 調査によると、サイト間でスキルセットに差異があり過ぎることに起因するソフトウェアの品質の問題であった。もう一つ密接に関係している問題は、プラク ティスやプロセスの質における違いである。これらの課題は、組織の種類や以下のような管理手法にかかわらず、該当するものであった。分散開発において、回 答者たちが利用している3つの主な手法には以下のものがある。
- ハブ・アンド・スポーク – 中心となる開発機能を地理的に分散されたチームが囲む
- ピア・ツー・ピア – 全てのアクティビティを対等な立場のチームで分担する
- アドホック – 一貫した方針は無く様々な手法を組み合わせる
調査では、分散開発の課題はアドホックな手法をとると大きくなることが明らかになったが、しかし、課題の順番は手法を問わず同様であった。手法全体で報告された課題の上位5つは次のものである。
- 全般的なコミュニケーションやコラボレーションの課題
- ロケーション間でのスキルレベルの違いによるソフトウェアの品質の問題
- 組織を構築する方法に関する政治的な課題
- プロセス/プラクティスの違いによる品質に関する懸念
- 分散開発の複雑さに起因するプロジェクト管理の問題
分散開発の背後にある一番の動機は、コストに照らしたリソースの柔軟性と戦略上の価値からきたものである。これは、コストだけに焦点を合わせることは役に立たないという意見に至るかもしれないが、それは安価なリモートのリソースが不十分な経験やスキルに結びつくかもしれないからである。
もう一つの興味深い意見は、どれが分散可能であるかというアクティビティに関する結果である。回答者たちの中で ハブ・アンド・スポークの手法をとっている人たちは、仕様の定義や分析、設計のような、何らかの重大なアクティビティよりも、コーディングやテストのアク ティビティを分散することを好んでいる。ピア・ツー・ピアの手法をとっている人たちは、これらの重大なアクティビティを分散することを、比較的に渋っては いなかった。
同じような分析の中で(リンク)、Scott Ambler氏(リンク)はDr. Dobb'sが行った2008年のアジャイル採用に関する調査(参考記事)の結果をまとめたが、その中では、プロジェクトの成功率が地理的な距離に反比例することが明らかにされた。以下はアジャイルチームの成功率である。
- 一緒にいたチーム – 83%
- 近くにいたチーム – 72%
- 遠く離れていたチーム – 60%
Scott氏の意見では、コミュニケーションとスキルの発展を助ける分散開発成功への鍵(リンク)は、次のものである。
- プロジェクトの開始時に全てのチームが集まる。
- 比較可能なスキルを確立するため、いくつかの最初のモデリングを前もって行う。
- ハイレベルな計画を立て、主要な依存関係とマイルストンの日付を確認する。
- アーキテクチャを中心としてチーム構造を組織化し、いくつかのサブチーム間で必要となるコミュニケーションを減らすようにする。
- チームが同じ場所で作業する場合よりも優れたツールを使う。なぜなら離れたところでは、インデックスカードやコルクボードやホワイトボードはうまくいかないからである。
- 使節の役割をする人や境界をまたぐ人を作ること。
他に、Martin Fowler氏(リンク)のOffshore Development(リンク)(オフショア開発)や、Jeff Sutherland氏(リンク)が分散開発成功のための優れたプラクティスについて話したReaching Hyper-Productivity with Outsourced Development Teams(リンク)(アウトソースされた開発チーム群で高い生産性に到達する)などのサクセスストーリーがある。
分散開発は自らの課題を抱えているが、今日の世界における現実である。鍵は、効果的なツールを使用することと、より優れたコラボレーションのプラクティスにあり、それらはコミュニケーションの促進や地理的な配置を超えたスキルの構築を支援するだろう。
Distribute Development and the Quality Will Suffer
Posted by Vikas Hazrati on Dec 19, 2008 03:46 AM
‘Software quality issues due to variable level of skills between locations’ was one of the most interesting findings which came out of an survey, which was performed by The Reg reader poll in September 2008. The survey was conducted with 369 respondents, of whom, 80% had direct experience with distributed software development. The geographic split being 44% UK, 36% USA and 20% elsewhere.
Though, communication and collaboration was still the dominant challenge in distributed development with more than 85% respondents mentioning it, the surprise second, as per the survey, was software quality issues arising from too much variation in skill sets between sites. Another closely related concern was the difference in quality of practices and processes. These challenges remained true irrespective of the type of organization and management approaches followed. Three main approaches, used by the respondents, in distributed development were
- Hub and Spoke – Core development function surrounded by geographically distributed teams
- Peer to Peer – All activities divided between teams of equal status
- Ad-Hoc – No consistent policy and a mix of various approaches
The survey revealed that the challenges of distributed development are amplified when an Ad-Hoc approach is followed, however, the order of challenges was similar across the approaches. The top 5 challenges reported across approaches were
- General communication and collaboration challenges
- Software quality issues due to variable level of skills between locations
- Political issues with the way organization is structured
- Quality concerns due to difference in processes/practices
- Project management issues caused by complexities of distributed development
The primary motivation behind distributed development came out to be resource flexibility and strategic value as compared to cost. This might lead to an observation that just focusing on cost does not help because cheap remote resources might translate to inadequate experience and skill.
Another interesting observation was the result of the activities, which can be distributed. Respondents, who followed Hub and spoke approach, preferred distributing coding and testing activities more than some critical activities like specification definition and analysis and design. Those following peer to peer approach were relatively less reluctant to distribute these critical activities.
In a similar analysis, Scott Ambler summarized the results from the Dr. Dobb's 2008 Agile Adoption Survey, which showed that the success rate of the project is inversely proportional to the geographic distance. Following were the success rates for Agile teams,
- Collocated – 83%
- Near located – 72%
- Far located – 60%
According to Scott, the key enablers of distributed development, which help both communication and skill development are
- Getting the whole team together at the start of the project
- Some initial upfront modeling to build comparable skills
- High-level planning to identify their major dependencies and milestone dates
- Organization of team structure around the architecture, so as to reduce the communication required between various sub-teams
- Better tooling than collocated teams because index cards, cork-boards, and white-boards don't work well from a distance.
- Have ambassadors and boundary spanners.
There are other success stories like Offshore Development by Martin Fowler and Reaching Hyper-Productivity with Outsourced Development Teams by Jeff Sutherland which talk about good practices for successful distributed development.
Though, distributed development has its own set of challenges but it is a reality in today’s world. The key lies in effective tooling and better collaboration practices which would help in facilitating communication and building skills across geographies.
0 意見:
張貼意見