ソフトウェア開発計画:経験の共有

今日、ソフトウェア開発における時間計画の方法論を共有したいと思います。これは、小規模なチームで非常に迅速に実装できます。 実装と「サポート」は非常に簡単で、非常に効果的であることが証明されています。異なる時期に、開発の管理にさまざまなタスクとさまざまな制限があるため、Microsoft Projectやオンラインサービスから「自作」ソリューションまで、あらゆることを試しました。 各オプションには欠点と利点があり、それぞれに個別の記事が必要です。 今日は、最も簡単なオプションであるExcelでのリリース開発の管理について説明します。 また、この計画のテンプレートを共有します。このテンプレートは誰でも「自分で」変更できます。



不要な炎を防ぐために、すぐに予約する価値があります。 私が説明する問題の解決策は、どの開発チームにも、すべてのタスクにも、ソフトウェアプロジェクトのクラスにも、各開発方法論にも適していません。 それには明らかな利点があります-ゼロで実装でき、サーバー、特別なソフトウェアを必要とせず、オフィスを除いて何も必要ありません。 確かに、できればマイクロソフト。



したがって、 タスク :次の条件下で企業製品の開発およびサポートのプロセスを合理化する: タスクの主要部分は1日から3週間続くタスクであり、それぞれが1人の開発者と1人のテスターに​​影響し、開発は「リリース」ベースで実行されます-テストされたモジュールは週に1回含まれます次のバージョンでは、各タスクに特定の内部「顧客」(マネージャー)がいます。もちろん、彼らはリリース日、タスクが表示される場所、運用中の並列タスクの総数-10から 50。



上で言ったように、私はそのようなプロジェクトで作業を整理するためのさまざまな方法を試しました。 たとえば、Microsoft Projectには、計画の変更を管理するのに十分な柔軟性がありません。プロジェクトに関連するタスクを管理するように設計されており、優先順位は受信順序や緊急度ではなく、その性質によって説明されます。 プロジェクト計画でのタスクの交換は、特に頻繁に行う必要がある場合は特に不便です。 とにかく、説明されたタスクにはすべてが不便です。



オンラインおよびオフィスサーバーにインストールされたWebベースのサービスは、選択肢が多いため優れています。 たとえば、最後の作業場所でJIRAを実装し、非常に積極的に使用しました。 しかし、彼女は十分なマイナスを持っています...私は必要な解決策を見つけられませんでした。 Microsoft Excelを使用したタスクスケジューリングのトピックに戻ると、誰かが彼に伝えることができたら嬉しいです。



計画は次のようになります。







したがって、計画のラインはタスクです。 列の構造は次のとおりです。







次の週では黄色の領域が塗りつぶされ、過去の週では青い領域が塗りつぶされます。 重要です-この点で、実行者はタスクに示されていません。必要に応じて、列を追加するだけです(私の場合は、週ごとに現在の状況に基づいて各タスクが週にスケジュールされたプールから割り当てられるため、柔軟性を追加できます) 。



以下では、同じタイプのすべてのタスクについて、1週間の時間が自動的に合計されます。 1つの専門分野のプログラマーが同じタイプのタスクに従事していると想定されているため、このクロックをこれらのプログラマーの使用可能なクロックと相関させることができます。 計画に使用できる時間を計算する方法-それぞれ独自の方法で、たとえば、バグの修正と予測できない緊急の改善に20%を割り当て、計画のために80を残すことができます。過去の週は上記のマイナスによって「最小化」されます。 前の週を次の期間にコピーして、新しい週を追加します。 コピーするとき、日付と週番号を自動的に再計算できますタスクが完全に完了したら、完了ブロックに「はい」を入力します。 完了したタスクを表示しないようにフィルターを設定します(最初の列の「はい」のチェックを外します)。すべての場合、ヘッダー付きの5行目でフィルター処理(「exel」のフィルター)が非常に便利です。 これにより、質問に答えることができます。







50を超えるタスクがある場合、またはタスクの構造がより複雑である場合、エグゼキューターの数が多い場合、またはExcelが計画にとって複雑すぎるまたは不適切なツールであると思われる場合は、市場に既製のソリューションが数多くあるため、より適切なものを探す必要があります。 このツール(IMHO)の比較的単純な状況(そして、まだ大多数です)では、次の段落ではそうでなければ十分です。



次に、私にとって理想的な解決策を説明します。 私はどこにも同様の概念の実装を見つけていませんが、誰かが彼女に伝えることができればうれしいです:



行は実行者(人、グループ、または部門全体)、列は時間です。 新しいタスクがやってくる-それは「組み立てられていない」ものに分類される。 そこから目的の行にドラッグします。既にあるタスクをプッシュするか、特定のアーティストのタスクの末尾にドラッグします。彼女は最後のアーティストの後の「滝」にしがみつきます。 ドラッグアンドドロップにより、エグゼキュータの次のタスクの順序を任意に変更できますが、彼のタスクは常に「ウォーターフォール」に並んでいます。 または、あるアーティストから別のアーティストにタスクを転送すると、両方の「滝」が再構築されます。 [適用]ボタンをクリックすると、変更のリストが表示され(顧客-タスク-古い日付-新しい日付)、[送信]ボタンをクリックすると、顧客と請負業者に変更が通知されます。 現在のタスクはいつでも中断でき、残りは時間内にレビューして将来のどこかに置くか、「組み立てられていない」ブロックに転送するか、完全に削除できます。 この場合はどうなりますか? 次のタスクはすべて動いています。



これがイラストです:







計画テンプレートは、私のブログrauf.lj.ruまたは私のウェブサイトRaufAliev.ruの 「役に立つ」セクションにあります。



All Articles