アジャイル手法でイノベーションを可能にする方法[終了]


21

アジャイル方法論は、要件が十分に理解されていない設定で優れている、または重要な新規性が関係していると言うことは一つのことです。しかし、完全なイノベーションが必要な場合に適用すべきでしょうか?はいの場合、どのように?

考えていることが業界で不明であるか、不可能であると思われる場合でも、ユーザーストーリーと関連タスクを想像することは困難です。たとえば、アルバート・アインシュタイン(または彼が報告する仮想の雇用主)にとって、一般相対性理論を叙事詩、短距離走、および課題に分解することで考案したのは有益でしょうか?答えが「はい」の場合、アインシュタインのアプローチが革命的な洞察を達成するアジャイルのアプローチと最もうまく機能するのを助けるために、どの特別な宿泊施設が組み込まれるべきでしたか?

特定のソフトウェアの例を挙げると、2008年であり、WCFを使用してCOMETまたは「ロングポーリング」タイプの機能を提供したいと考えてください。「以前の仕事」に関するあなたの研究はすべて何も見つかりませんでしたし、MSDNのブロガーはそれが不可能だと言っていました。

繰り返しますが、この試みの発明性(または大胆さ)に対応するために、ユーザーストーリーおよびタスクにどのような調整または「フレーバー」を組み込むことができますか?それとも、その努力は非常に革新的であると結論付ける方が良いでしょうか(2008年)、それは無向のシンクタンクの練習として残すのが最善です。

2週間のスプリントで動作しているイノベーターは、デッドエンドタスクを放棄し、スプリントが定義されたときに想定されていなかった新たに発見されたタスクで作業を開始するたびに撃certainlyされることを望みません。同様に、スプリントが終了し、実行中のコードまたは実行中のアプローチが配信されない場合、イノベーターは経営陣に打ち倒されるべきではありません。このような状況でも、努力を「成功」とラベル付けする方法が必要です。おそらく、この種の「行き止まり」の追求の1つまたは3つ以上のスプリントで、イノベーターは最終的に機能する何かにぶつかります。

アジャイルは、革新的な後退にもかかわらず、各スプリントが「OK」であることを経営者がどのように知ることができるのですか?バーンダウンチャートが不合理に見えないように、これをどのように管理しますか?


8
@Liath:イノベーションには、2週間ごと、つまりスプリントの終わりに何かを見せなければならないというプレッシャーなしに、アイデアを試す時間が必要なことがよくあります。短期的なフィードバックでは、「あなたが思うようにやろうとするのではなく、将来のスプリントでいつでも修正できるので、いつでも何かを見せること」に焦点を当てています。それを行う必要があります」。「表示する必要があるときに準備を整える」のではなく、「準備ができたら表示する」。
ジョルジオ14年

4
この質問から派生できる派生的な質問は、「タイムボクシングはソフトウェアの研究や非常に革新的なプロジェクトに価値があるのでしょうか?」、「時間の恩恵を受けない革新的/高リスクのプロジェクトはありますか?」 -ボクシング"?(私はこれをアドホックGoogle検索から読んでいた:agile.conscires.com/2010/03/30/agile-for-research-projects
rwong 14年


1
Xavier Amatriainに起因するこのリンクも、研究プロジェクトでアジャイル手法を適用するための完全なパッケージ(「プロセス」)を提供しているようです。私たちが知っているように、それはスクラムとは異なりますが、アジャイルの価値と実践を採用するという点では非常に大きなものです。
rwong

2
ソフトウェア開発の革新は、方法論に関係なく簡単ではありません。なぜなら、人々はほとんどの人々が同意することに固執するように(正当な理由で)教えられるからです。それは、ソフトウェアエンジニアリングが他のエンジニアリング分野と比較してあまり科学的ではないからだと思います。他のエンジニアリング分野では、アイデアは適合性ではなくそのメリットで判断されます。
マイクダンラベイ14年

回答:


8

タイトルの質問。イノベーションは、アジャイルですでに成功しているチームの小規模な創造的進歩を指します。

最良の答えは、「ゴールドカードの日数」に関するこの記事にまとめられています。

要約(言い換え、著者の意図を反映していない可能性のある私自身の解釈)

  • 開発者は、自分が取り組みたい仕事関連の興味深い(知的に刺激的な)ストレッチ目標を特定できます。
  • これらのストレッチ目標は、チーム(製品所有者を含む)によって承認された後、「ゴールドカード」になります。
  • チームは、これらの「ゴールドカード」の作成に1日かかることをお勧めします。
    • 通常、これは金曜日に行われるため、「ゴールドカードの日」になります。
  • スクラムに関しては、ゴールドカードは他のバックログアイテムと同様にスケジュールおよび追跡されます。チームは結果を実証する必要があります。

「ゴールドカード」の適用に関しては、他にもいくつかのポイントがあります(その記事にはありません)。

  • 一人のチームメンバーにすべての楽しみを奪わせないでください。すべてのチームメンバーは、「ゴールドカードの日」をたまに取ることにより、創造的な時間を過ごすよう奨励されるべきです。
  • 同じ方針に沿って、「単独のタスクではなく」チームの努力として「ゴールドカード」を作成し、そのタスクを社交的(チームビルディング)の瞬間として活用します。

革新とは、有用な解決策を見つけられないという本当のリスクがある研究(数か月から数年の恐ろしい作業)を指す実質的な質問です。

この先ほどの質問、研究環境での使用に適した極端なプログラミング手法はどれですか?この質問の根拠の多くをカバーしています。

(免責事項:選択したものではないが、私はその質問に対する回答の1つを書いた。)

要約すると、ソフトウェアの研究作業はペースが速いことがあります。参加者には、新しい情報に基づいて優先順位を付ける必要があります(発見/学習したアイデアを吸収し、新しいアイデアを合成することにより)。「成功の成果を示すのが遅く、成功した場合のみ」であるため、「遅い」という外観を与えます。


プロジェクト管理ベータに関するこの質問- プロジェクトマネージャーを研究チームに組み込むことの長所と短所は何ですか?-同じ理由もカバーしています。


精神で、はい。

mouvicielの回答で指摘されているように、ソフトウェア研究の精神はアジャイル宣言の精神と一致しています。次に議論するのは、リスクの高い研究を組織または管理方法論としてのアジャイルに適合させることができるかどうかです(「アジャイルの実践」)。


実際には、いくつかの質問に答える必要があります。
このリストは完全ではありません...

アジャイル手法がどのように生まれたのかを少し追跡する必要があります。

プロジェクトのスポンサーがいる場合、通常、アジャイル手法が使用されます。さらに、プロジェクトに資金を提供するスポンサーの意欲は限られています。プロジェクトにしばらく資金を提供した後、使用可能な(出荷可能な)品質のソフトウェアが定期的に配信されることを期待しています。

この質問における研究の種類は、「解決できない可能性のある努力」を指します。言い換えれば、この種の作業の本質には、関係者の意図と勤勉さのすべてにもかかわらず、最終的に失敗するリスクが伴います。

これはScrumButtスタイルのチェックリストではありません。
これは、「Que Sera、Sera」の方が良いかどうかを予測するプリフライトチェックリストです


1.事前の透明性。プロジェクトのスポンサーは、プロジェクトの危険性について真実を語られていますか?


2.スポンサーの意欲。スポンサーはリスクを認識しており、資金提供を続けますか?

スポンサーは、一般的なビジネスプロジェクト、または一般的なソフトウェア/ IT /アジャイルプロジェクトよりも高いリスク許容度を持っている必要があります。すべてのスポンサーがこの基準に適合するわけではありません。それが合わない場合、プロがプロジェクトから撤退するのは良いことです。


3.プロジェクト全体の透明性。スポンサーはプロジェクトの真のステータスを定期的に通知されていますか?

これは、ステータス更新間の時間経過を誤って使用することにより、プロジェクトの後退や迫り来る障害を隠そうとする試みを阻止するためです。


4.スポンサーの積極的な参加。スポンサーは、それぞれの試みの細部、浮き沈み、約束、制限を知ることに興味がありますか?

ソフトウェア研究の問題は、多くの偽のリードが存在する可能性があることです-偽陽性(アプローチは機能すると信じていても成功しませんでした)と偽陰性(何かが不可能であると主張するだけで、他の誰かによって反証される) 。

アジャイルプロジェクトでは、チーム(スポンサーと利害関係者を含む)が計算されたリスクを取ることができます。「計算された」とは、リスクを負う人が十分な情報を得ていることを意味します。スポンサーがプロジェクトの詳細を知りたくない場合、スポンサーは自分でリスクを計算(判断)するための完全な情報を持っていません。

スポンサーが金銭的リスクを引き受けようとしても、意思決定リスクにも参加したくない(そして自身の選択に対する結果を受け入れる)ことを望まない場合、スポンサーはそのようなハイリスクの研究プロジェクトにも適さない。


5.研究チームは、プレゼンテーションのスライドとは対照的に、ソフトウェアの実行という形で進捗状況を示す(実証する)ことができますか?

この質問は、最終結果がソフトウェアを実行すると予想される研究プロジェクトに適しています。プレゼンテーションスライドは、CS理論を説明するのに役立ちますが、ソフトウェアの実装のset折を隠すために誤用される可能性もあります(または完全に欠如しています)。ソフトウェアデモは、このような誤用を防ぐことを目的としています。


6.スポンサーがプロジェクトの任意の時点で資金提供を停止することを決定した場合でも、研究チームは部分的に価値のあるソフトウェア製品を提供できますか?

この質問は、ケースバイケースでのみ関連します。一部の研究プロジェクトは漸進的です。複数のマイルストーンと成果物がある場合があります。研究チームは、アプローチを優先して「最も低いぶら下げ果物」を優先するか、「実行可能性を実証するための最小コストのアプローチ」を必要とします。

一部の研究プロジェクトはインクリメンタルではありません。単一の非常に具体的な技術的ブレークスルーを提供します。それはヒットかミスです。このタイプのプロジェクトの場合、唯一の漸進的な成果は、研究作業とプロトタイピング、そしておそらく学術出版物です。それにもかかわらず、これらの「非消耗品」のインクリメンタルな成果物は、大学、研究資金提供機関、および学術的な信用を築こうとしている大企業など、一部のタイプのスポンサーにとって価値があります。

ただし、このような特性を持つ研究プロジェクトは、以下でさらに説明するように、「カウボーイコーディング」アプローチも好む可能性があります。これらは適切に「ハック」と呼ばれ、学界で発生します。

ほとんどの学術研究の時間スケールのため、学術スタイルの研究資金は通常1年以上のコミットメントで提供されます。医学研究資金(学術的および商業的)は、さらに長期間にわたってコミットされる可能性があります。一方、典型的な商業資金による研究は、予告なしに終了したり、他のプロジェクトにリソース(人的資源)を完全に再割り当てしたりする場合があります。


7.サイロ対クロスファンクショナルの規模で研究チームはどのように測定しますか?

ある種の研究チームは非常にサイロ化されています。多くの場合、これは「学際的な」プロジェクトで発生します-各専門分野から1人のメンバーが関与しています。その結果、知識とスキルが重複しないため、1人のメンバーが他のメンバーのタスクを、非常に小さなタスクでも、引き継ぐことはできません。難易度は、コミュニケーションとタスクの定義にも拡大します。

非常にサイロ化されたチームは、毎日のスタンドアップミーティングなどのスクラムの儀式の恩恵を引き続き受けますが、「儀式」以外の相互作用はあまりないかもしれません。チームが話し合い、信頼を築くには、非常に社交的なアジャイルコーチが必要です。


8.アジャイルコーチが存在する場合、コーチは短い反復サイクル、タイムボクシング、および時間推定の提供を規定していますか?

これらのアジャイルプラクティスのそれぞれは、特定のタイプの研究プロジェクトに困難をもたらします。それにも関わらず、いくつかの熟練した研究グループがこれらの実践を高度な研究に適用できることが報告されました。これらの専門家チーム内でアジャイルコーチングがどのように行われるかについての詳細はないため、これらの各困難をどのように克服できるかを知ることができない場合があります。


9.研究チームは、Solo開発スタイルを他の方法論よりも採用することに全会一致で投票しますか?

編集済み: 以前のバージョンでは「カウボーイコーディング」というフレーズが使用されていましたが、これはプロ意識の欠如を暗示しています。ただし、ソロ開発とカウボーイコーディングには違いがあり、このチェックリスト項目の状況により、ソロ開発が正当な選択になる場合があります。

この質問は、開発の大部分を所有することを好むプログラマーがいることを示しています。研究チームが主にこのタイプのプログラマーで構成されている場合、チームメンバーのスキルセットはかけがえのないものである(以前のスキルサイロのポイントを参照)ため、チームメンバーは希望するものを交換する必要があります彼らのスキルと労働力のために。

ソロ開発とカウボーイコーディングの主な違いは、ソロ開発では、新しい機能を追加する前に、バージョン管理、ビルドの自動化、バグの修正など、「ジョエルテスト:より良いコードへの12ステップ」にリストされているプラ​​クティスを採用できることです。

ソロ開発を行う各メンバーに有利な状況もあれば、カウボーイコーディングに有利な状況もあります。

カウボーイコーディングは、最終目標が「ポイントを作る」ことである場合、何かが技術的に可能であることを示すことによって好まれます。次のDEF CON®での優れたプレゼンテーションを除けば、配信や品質に関する要件はありません。


最後の質問。状況によってアジャイルチームが画期的な研究を実行できない場合、革新的な技術をどのように活用しますか?

いつものようにビジネス。他の企業(または学者、個人、ハッカー、スタートアップなどのチーム)が最初に困難な問題に取り組み、次にそれらから技術を購入/ライセンス供与します。ソフトウェア業界は何十年もの間、これらの原則に基づいて運営されています。

アジャイル手法で初期作業プロトタイプを表示することに重点を置いているため、チームは既存のソリューションを最初に探す必要があります。これは、チームを冗長な作業から救う可能性があるため、良いことです。


6

アジャイル宣言に戻る:

  1. プロセスとツールを介した個人と相互作用
  2. 包括的なドキュメントよりも機能するソフトウェア
  3. 契約交渉を介した顧客コラボレーション
  4. 計画に従うことによる変化への対応

これらの価値には革新を禁じるものは何もありません。実際、ウォーターフォールよりもアジャイルの方がイノベーションの巣があります。

それにもかかわらず、アジャイルの通常の実装では、期限(スプリントの時間枠は期限です)やコストなど、イノベーションを制限するソフトウェアプロジェクトに制約を課すことがあります。しかし、これはアジャイルの問題ではなく、現在の作業組織の問題です。


3
+私はあなたがそれを持っていると思います。問題は、その方法を人々に伝える本にあると思います。(物を作らずに書くのは非常に難しいことがわかりました。)私たちのチームは「アジャイル」に従い、それが意味することは無限の会議です。あるメンバーは、「私を数えてください。それはただの最新流行です。あなたが私を必要としないなら、それは大丈夫です。」
マイクダンラベイ14年

@MikeDunlavey-私はあなたのやり方が好きです:私たちのチームは「アジャイル」に従うと共鳴します:計画に従うことに対する変更への対応
ムーヴィシエル14年

1
@mouviciel:私はあなたの答えに同意しますが、アジャイルの価値について本当に新しいことを理解していません:私はアジャイルという言葉を聞く前にすべてのプロジェクトでポイント1、2、4をフォローしていました私が一緒に働いた人々の同じことをしていました。私たちはそれを常識と呼びました。「アジャイル」という用語は、「あなたのプロセスの奴隷にならず、常識を使う」という新しい言葉ですか?一方、アジャイルが私の仕事にもたらした唯一の本当の違いは、従うべきミーティングとルールが増えることです。
ジョルジオ14年

@Giorgio-はい、これは私が見ている方法です。私が取り組んだ最高のウォーターフォールプロジェクトは、チームリーダーが開発者の間で常識を支持し、顧客にかなりの「Vモデル/ ISO9001 /巨大なドキュメント」の話をしたときでした。アジャイルの価値で新しくなったことは、マニフェストの著者によって提供された資格情報にあります。
mouviciel 14年

アジャイルはもともとソフトウェア開発に関するマニフェストでした。多種多様なビジネスに対応するために成長(または変異)しました。会議は、政治や個人的なスタイルのために1対1のコミュニケーションほど効果的ではなかったとしても、対面のコミュニケーションの形式です。
rwong

6

私はそうは思わない。アジャイルはチョコレートの象を食べることです-大きなタスクを取り、配信できるだけでなく、定期的に配信される管理可能なチャンクに分割します。

研究タイプのプロジェクトはこれに当てはまりません-プロジェクトを2週間ごとに実証できる小さなチャンクに分解できない限り(またはそれ以上-アジャイルは、スプリントにかかる時間は2週間だとは言いません。これまでで最高のアジャイルプロジェクトです。 6週間のスプリントがありました)

私はそれを試していないだろう。私はあなたがあなたのために働くと思うアジャイルツールのビットを取り、そうでないものを無視したいと思います。アジャイルは「スクラムチュートリアルで行うべきことをすべて行う必要があり、裁量は一切許可されない」とアジャイルを考える人があまりにも多く、そのアプローチは非常にアジャイルではありません。


1
大きなタスクを小さなチャンクに分割することは、アジャイルなことではありません。古代メソポタミアとエジプトでのエンジニアリングの開始以来使用されており、ウォーターフォールプロジェクトで広く使用されています。アジャイルプロジェクトで使用される場合、アジャイルの性質ではなく、何世紀にもわたる成功の成果から受け継がれた考え方が原因です。
mouviciel 14年

@mouviciel:確かに、アジャイルでは、問題を単一のスプリントに収まらなければならないチャンクに分割する必要があります。そうでない場合(研究プロジェクトでよくあることです)、スプリントをもっと長くしない限り、ねじ込まれます。複雑な研究​​問題に取り組むとき、それを十分に小さな断片に分割するのにどれくらいの時間がかかるかを予測することはできません。
ジョルジオ14年

@rwong:できるだけ早いフィードバックと短い開発サイクルを必要としない、スクラム以外のアジャイルプロセスはありますか?
ジョルジオ14年

4
「あまりにも多くの人が、アジャイルは「スクラムチュートリアルで行うべきことをすべて実行する必要があり、裁量は一切許可されていません」と考えています。そのアプローチは非常にアジャイルではありません。」:滝:私たちは必要なピースを取り、ニーズに合わせていました。その後、アジャイルコーチングが始まり、私たちはこの本で働かなければなりませんでした:私たちはほとんどのアジリティを失いました。;-)
ジョルジオ14年

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.