web-dev-qa-db-ja.com

チームの規模を犠牲にすることなく、複数のビジネス要件ストリームに対処する

ビジネスには、ソフトウェアに実装されるビジネス要件の5つの個別のストリームがあります。 10人の開発者からなるチームがあります。

「ナイーブな」組織的ソリューションは、チームを2つのうち5つの「チーム」に分割することです(要件ストリームごとに1つ)。しかし、これはチームの完全性を損なうと感じています(チームワークをより困難にし、サイロ効果を引き起こし、コミュニケーションをより困難にするなど)。

複数の要件ストリームに対して提供するために、このような開発者チームをどのように最適に編成するかについての洞察はありますか?要件ストリームよりも開発チームの数を減らすことは可能ですか?

4
52d6c6af

私は2つのチームを提案します。 10は1つのチームには本当に多すぎます(知識の広がりが広すぎると速度が低下し、1人のチームリーダーが一度に5つのストリームに集中するべきではありません)が、それぞれ5つで快適に機能し、4:6に柔軟に対応できます。 1つのチームに大きなプレッシャーがかかります。

あなたは5チームが素朴な見方であるということは絶対に正しいです。ストリームから1人でも失うと、問題が発生します。それらの両方を失うと、あなたは生き残るのに苦労するでしょう。

1つのチームに複数のストリームを通過させるのはかなり簡単です。スクラムとかんばんの組み合わせをお勧めしますが、最も単純なケースでは、優先順位の高い作業のバックログが必要であり、チームの誰もが1つのジョブを終了すると、ストリームに関係なく、次に優先度の高いジョブに移動します。

ドメインの専門家がいても(実際には避けられない)、ストリーム1から仕事を選んで、その知識がまったくない場合は、彼らのところに助けを求めることができます。しかし、私が最終的に仕事をして、すべてのストリームについて少なくとも少し学ぶことが重要です。

コードレビューは、その知識を広めるのに役立つだけでなく、コードベースを高レベルの品質に保つのにも役立ちます。

3
pdr

私見、チーム形成の1つの方法は次のとおりです。

  1. 各開発者チームが2つを超える同時プロジェクトを取得しないように開発者を分割し​​ます(それを超えると、効率が大幅に低下するため)。たとえば、8人の開発者と5人のプロジェクトが手元にある場合、3つのチーム、2つのチームと3人の開発者、それぞれ2つのプロジェクト、1つのチームと2人の開発者と1つのプロジェクトを作成します。ストリームが実際に異なる場合、開発ではチーム間の調整はそれほど必要ありません。ただし、ストリームが互いに非常に似ている場合は、@ pdfが言ったように、単に2つのチームを作成し、それらの間でプロジェクトを分割します。
  2. 設計者とテスターは、特定の1つのチームに専念する必要はありません。作業パイプラインを作成できます。たとえば、テスターと設計者はチームをまたがって機能することができます。つまり、特定のチームに所属していなくても、設計またはテストを注文できます。
0
Saeed Neamati