したがって、バグを修正しているときに、ソフトウェア製品の他のモジュールに影響を与える可能性のあるバグに遭遇しました。あなたのデータは、修正の効果についてのあなたの主張をサポートするのに十分ではなく、影響分析文書を作成するように求められました。
私が働いている社内で作成された影響分析用に見たテンプレート。変更リクエストを評価する前、および変更リクエストを処理する前に(場合によっては一部を拒否するために)使用します。次のようなセクションがありました:
考えられるすべての影響をカバーするには、依存関係を確認する必要があります。双方向トレーサビリティマトリックスがある場合は、それが容易になります。
設計者は変更をより深く理解するためにアナリストの視点からの影響を知る必要があり、テスターもアナリストとアーキテクトの意見を知る必要があるため、上記の順序を使用しました。同様に、PMは、コストとスケジュールを知るためにすべての情報を必要とします。
CRでこれを使用しましたが、バグと同じ方法で使用できます。また、バグを解決するためにいくつかの修正ソリューションから選択するためにこれを行う必要がある場合は、考えられるすべてのソリューションに対して影響分析を繰り返し、すべてのデータを1つの意思決定分析および解決(DAR)フォームに統合して、どのソリューションであるかを知る必要があります。最高の。 DARフォームでは、将来の保守性や影響分析に暗黙的に含まれていないその他の要素などの評価要素を追加する必要があります。次に、各因子に重みを付け、各因子のすべての解スコアを与えます。最後に、score * weightを掛けて合計し、最適なものを選択します。コストが要因に含まれている場合や、PMには別の意見がある場合があります。
どんなドキュメントでも、アジャイルアプローチは良いものだと思います。さて、アジャイルは「文書化も分析もまったくない」という意味で誤解されていますが、そうではありません。私がアジャイルについて読んだことは、「機能するものを使う」と言っています。私は、ドキュメントがタスクに見合った長さと詳細であることを意味すると解釈します。
テンプレートはチェックリストとして役立ちますが、小さな変更やリスクの低い変更については、すべてのセクションに記入する必要はありません。 1行の変更では、おそらくドキュメントは必要ありません。私は影響分析文書のテンプレートを使用したことがありませんが、ビジネス要件や技術仕様を定期的に扱っています。テンプレートは制限が多すぎる可能性があります。代わりに、適切なガイドラインは、聴衆が誰になるかを検討することです。技術的でないマネージャー向けの場合は、変更のビジネス上の正当化に焦点を当てます。技術者向けの場合は、チームの新しい人物が失われることがないように、背景を少し説明し、変更をサポートする必要がある場合に十分に対応できるようにします。また、さらに摩擦が少なく軽量なものが必要な場合は、ドキュメントをまったく使用せず、wikiに配置してください。
含める情報:
それはまともな最小値です。もう1つの投稿では、IBMからのかなり重いCMMiのものが強調されました。それに時間とリソースがあれば(そして人間の生命が危機に瀕しているNASAのシステムを構築しているときは、人々はそれについて真剣に考えるべきです)素晴らしいですが、小規模なチームではおそらくそれほど重いものである必要はありません。いつものように、見積もりに注意してください。マネージャーは見積もりが実際のものであると仮定する傾向があります。
アジャイルアプローチには危険があることに注意してください。一部の開発者は、「ドキュメントは不要で、ハッキングを開始するだけ」という意味があると考えています(状況によっては問題ない場合があります)。また、他の人は、タスクが与えられた場合に寛容で、本当に役に立たない本当にくだらないドキュメントを作成します(ほとんどの状況では必ずしも問題ありません)。問題の一部は、上手に書くにはいくらかの努力、スキル、そして時間がかかるということです。私たちのほとんどは、これらのうち少なくとも2つが不足しています;)
少なくとも計画を立てる資格を得るのに十分な考慮を払っていることを証明するので、私は常にドキュメンテーションに熱心に取り組んできました。しかし、私の古い時代には、ドキュメントが多すぎると、それ自体がメンテナンスの面倒になる可能性があり、ドキュメントを最新の状態に保つために十分な人が気になっていないことも高く評価しています。