Agile software developmentメソッドが多数あります。成功したプロジェクトを提供するためにどのプロジェクトを実際に使用しましたか?その成功にどのように貢献しましたか?どの俊敏なソフトウェア開発方法で成功しましたか?
答えて
私は、「アジャイル」な方法で仕事をしていると主張しているかなりの組織に関わっています。 XP(極端なプログラミング)に基づいているように見えたが、それらのどれもがすべてのプラクティスの近くでどこにでも従ったことはなかった。私はおそらくXPのいくつかについてはコメントすることができ、言っ
は、ユニットテストは、それがプロジェクトの開始から完了だ場合に非常に有用であることを証明しているようだが、それはすることが非常に困難と思われる
-
を実践します既存のコードベースに入り、単体テストを追加しようとします。初心者から始める機会があれば、テスト駆動開発が本当に助けになります。
連続的インテグレーションは、実際には良い(またはむしろ、本当に悪いです)ようです。それは、私が見た組織は、他のアプローチを愚かに見せるほど小さくなっていると言いました。
ユーザーストーリーカードは、それが優先順位付けのために周りに投げるための物理的なオブジェクトを持っているのは素晴らしいことだということでいいですが、彼らはあなたの開発者が実際にドメインを知らない限り、十分に近い詳細なじゃないか、現場を持っています顧客(私は実際に見たことがない)。
スタンディングミーティングは、新しいチームメンバーが誰でも知っていること、そして彼らが取り組んでいることに本当に役立つ傾向があります。古い手は非常に急速にゆるんでしまい、ちょうど彼らが過去1週間行ってきた「私はまだXに取り組んでいる」のようなことを言います - 彼らは詳細を掘り下げるよう強く指揮します。をリファクタリング
は今、本当に誤用用語ですが、あなたは十分なユニットテストを持っているとき、それは追加」概念的から「機能を変更することなく、既存のコードのデザインを変更」の活動を分離するのに非常に便利です新しい機能 '
スラムがどこにあるかを示すため、スクラム。また、ビジネスユニットが通常、実際に欲しいものを手がかりにしていないこともわかります。
スクラム。
毎日のスタンドアップミーティングは、物事が進行中であり、進歩が行われていることを確認するのに最適な方法です。私はまた、製品/市場関係者をプロセスに関与させることが重要であると考えています。よりコラボレーティブな環境を作り、製品チームと開発チームが別々の「サイロ」であるときに出てくる多くの厄介なゴミを取り除きます。
私は、XPとScrumの手法を使って、ある程度のリーンで振りかざすチームと協力してきました。それは非常に生産的でした。
毎日のスタンドアップ - 誰もが何をやっているのかを完全に把握するのに役立ちます。
ペアプログラミング - コードベースが改善され、システムに導入された「ばかげた」バグが削除されました。
反復開発から1週間の反復を使用すると、アップもTDD私たち
をサイズ要件を支援してきましたより直接的な目標を設定することによって、私たちの速度を向上させる助けた - 私は今、私はプログラミングの私の方法を変更役立っています壊れたテストを修正しないコードは書きません。明確に定義されていないテストは書きません。私たちはまた、開発者やBAが本当に必要としていることを理解するのに役立つ実行可能な要件を使用してきました。
かんばん板 - リアルタイムで表示します。マイルストーンと現在の反復のためのものがあります。一見すると、何が残されているのか、何が完了しているのか、何が完了し、受け入れられているのかを見ることができます。ボード上にあるものに関連する何かをあなたの日常的なスタンドアップで報告しなければ、説明する必要があります。
共同配置されたチーム - 誰もが何をしているのか、誰もがスピードを上げてページに表示します。コミュニケーションはジャストインタイムで、非常に生産的です。私はキューブをまったく見逃しません。
通常のレトロスペクティブを使用すると、チームがより効果的になる/敏捷性を高めるのに役立ちます。 アジャイルの具体的な味を守ること以外に、このプラクティスは、チームがうまく機能していることを特定し、変化する環境に適応するのに役立ちます。
レトロスペクティブを実行している人が、自分が何をしているのかを知っていることを確認してください。それ以外のセッションに退化する可能性があります。
回顧録に反映し、価値を引き出すためにチームを組んでいくことができます。私は、ソフトウェア・エンジニアリング・ラジオのLinda Risingのインタビューを聞いて、良い紹介をすることをお勧めします。
詳細については、「ハートビートの回顧録」をGoogle検索で検索してください。
- 1. 敏感なソフトウェア開発環境書式設定された文字列
- 2. ASP.NETスレッドの俊敏性 - どのように克服するのですか?
- 3. インストラクションは成功しましたが、ソフトウェアはありません
- 4. サポートのお客様のための俊敏な作業の流れ
- 5. ソフトウェア開発プロセスはソフトウェア開発ライフサイクルと同じですか?
- 6. 冬眠の代わりに軽量のORM - 堅牢で俊敏な
- 7. クエリが成功したかどうかを知る方法?
- 8. BPMプロセスが成功したかどうか知る方法
- 9. ソフトウェア開発ライフサイクルリソース
- 10. 組み込みソフトウェア開発からWeb開発への移行方法
- 11. 成功? 'sent':成功しなかった場合は 'failed'がデフォルトで 'sent'になります。どうして?
- 12. ソフトウェア開発におけるコード生成
- 13. iPhone開発のためのOS XとVmwareで成功?
- 14. 3D印刷モバイルアプリの開発にはどのソフトウェアを使用しますか?
- 15. iPhoneの開発に必要なソフトウェア
- 16. ObfuscationがCSharpプロジェクトファイルで成功したかどうかを確認する方法
- 17. マルチパートアップロードがalamofireイメージで成功したかどうかを確認する方法
- 18. SQLでCOPYが成功したかどうかを確認する方法
- 19. verticleの展開に成功しましたが、このエラーが発生しました。結果は既に完了:成功
- 20. ソフトウェア開発の難しい部分は何ですか?
- 21. ORA-24344:コンパイル・エラーで成功しました。なぜですか?
- 22. ソフトウェア開発の分析
- 23. 孤独な開発者はどのようなソフトウェア開発プロセスを持つべきですか?
- 24. 成功したリクエストでVolley POSTでエラーが発生しました
- 25. MozilaのGeolocation Firefox:成功とエラーの両方が発生しました
- 26. ノンブロッキングセンドが成功したかどうかを確認します。
- 27. データのインポートが成功したかどうかを確認する方法
- 28. mysqlの挿入が成功したかどうかを確認する方法
- 29. ない成功した(パイソン)
- 30. IDEで開発されたKasperskyトラストプログラム(NetBeans、Eclipseなど)の作成方法