エンジニアリングプラクティスと技術的債務の区別が必要です。テスト駆動型開発と自動テストをプラクティスとして見る。
ウォーターフォールチームによって構築されたコード資産を使用したため、資産にはユニット、機能、またはパフォーマンスの自動テストが行われていませんでした。ソフトウェア資産の責任を負うと、Agileの製品オーナーを訓練し、使用するプラクティスを教えました。
慣行を使い始めると、技術的負債を特定し始めます。テクニカル・ストーリー・カードは、技術的な負債が特定されたときに書かれ、製品の所有者が製品のバックログに記録したものです。開発者とテスト担当者は、XPエンジニアリングプラクティス(TDD、自動テスト、ペアプログラミングなど)を使用してすべての作業を評価しました。これらのプラクティスは、TDD、自動化された機能とパフォーマンステストを通じてコードの脆弱性を特定しました。特に、自動化されたパフォーマンステストとプロファイリングにより、重要なパフォーマンスの問題が特定されました。債務は大きかったので、修正案に6回の反復を要すると見積もった。新機能が開発された場合、アプリケーションのパフォーマンスが低いため、ユーザーベースで使用できなくなる可能性があることを製品の所有者に通知しました。アプリを数百人のユーザーから数千人のユーザーに拡張する必要があることを考えると、製品の所有者はパフォーマンスの技術的債務を非常に高く設定していました。
メモ:ストーリーカードの見積もり内でリファクタリングによって解決できる技術的負債には、技術的ストーリーカードは必要ありません。より大きな技術的負債が実現する。テクニカルカードが必要な技術的債務については、ビジネスへの影響を特定し、製品の所有者にテクニカルカードの優先順位を付けるよう依頼します。それから、カードを作ってください。エンジニアリングのための技術的負債を作りません。エンジニアリング実務が見積りの一部となることを知っているすべての見積もりを行います。自動化されたユニット、機能、性能テストでアプリケーションを改造するためのカードを作成しないでください。代わりに、見積もっているカードにのみ作品を含め、作業中のカードを使ってタッチしたコードに自動テストを追加してください。これは、進行を止めることなく時間の経過と共に改善するアプリを可能にします。すべての名刺の追加を停止することは、アプリケーションの実行や拡張ができないなどの最も激しい状況の場合にのみ、保存する必要があります。
自動ユニット、機能、性能テストなしでコードベースを継承する場合、ビジネスパートナに悲しい状況を伝えます。仕事をどのように見積もるかを教えてください。エンジニアリングプラクティスを通じて発見された技術的負債を創出する。最後に、製品の所有者に、ユニット、機能、性能の自動化されたテストにより、コードベースの多くが触れられるにつれて、チームの速度が向上することを伝えました。
、これは良い説明かもしれません:http://benlakey.com/2012/06/18/technical-debt/ –
このような質問は、HTTPSで尋ねする必要があります。 //pm.stackexchange.com/ –
この質問はhttps://pm.stackexchange.com/ –