10

私のプロジェクトで働いているソフトウェア開発者が何人かいて、彼らが実際の開発に費やした時間を登録する方法を提供したいと考えています。

開発時間を登録することには善意があり、強制はありませんが、Excel シートの登録などの手法は非常に不快なので避けようとしています。

svn コミットを追跡できますが、これは信頼できません。開発者は、1 日の間にさまざまなプロジェクトをサポートするのにも役立ちます。そのため、1 つのプロジェクトに終日取り組むと仮定することは正しくありません。

作業中のプロジェクトを確認するメッセージを 1 時間ごとにポップアップ表示するユーティリティを見たことがありますが、これは面倒です。

ある種の active-window-title-anaylzer が役立つかもしれません (Visual Studio の場合はそこからソリューション名を取得できます) が、私はそのようなアイデアの経験がありません。

プログラマー/デザイナーの勤務時間登録の経験があれば、教えてください。ありがとう

4

11 に答える 11

10

良い質問です。開発プロジェクトに費やされた時間を測定する最善の方法は、費やされた時間をまったく測定しないことです。

あなたは時間登録に善意があるとおっしゃっていますが、私には疑問があります。現実的には、開発者の観点からすると、過度の時間管理はほとんど (おそらく地球上のすべての開発者) にとって気を散らすものです。

ODesk で時間が過度に計測される理由がよくわかります。これには十分な理由があります。プロジェクトの時間はクライアントから ODesk に前払いされ、開発者は ODesk の作業時間について証明する必要があるからです。支払いも保証されており、oDesk プロバイダーと開発者が実際に会うことはめったにないため、信頼はありません。

開発者に前払いしている可能性は低く、より良い信頼を確立している可能性が高いため、おそらく、面倒で煩わしい管理戦略から、より有用なものに注意を向ける必要があります。

はい、ご列席の皆様、私はスクラムについて話しています。開発者のタブを 1 時間ごとに維持するという考えは捨ててください (開発者はあなたを気に入ってくれるでしょう)。代わりに、スクラム管理をシナリオに導入します。

製品開発のためにいくつかのスプリント (マイルストーン) を作成し、その中でイテレーション (バッチ化された成果物) のリストを作成し、イテレーションを毎週の期間に抑えるようにしてください。製品のバックログを作成し、誰が何に取り組んでいるのかを正確に把握してください。あなたに代わってスクラムマスターとして行動するか、自分でこの責任を負う人をチームで見つけてください。成果物の邪魔になる可能性のあるリスクを特定するために、フィードバック ミーティングを毎日開催し、短時間で焦点を絞ってください。開発者に多かれ少なかれタイミング プロセスを推進させ、タスクの現実的な見積もりを取得します。

スクラムに関する本を 1 冊か 2 冊読み、他の人やチーム メンバーを学習曲線に参加させます。基本的なスクラムの方法論を調整して、特定の管理スタイルに最も合うようにします。そうすれば、非常に満足のいくチームになることを保証します。

時間を人日で測定し、時間ごとの進行状況について開発者の背中に乗るのを避けてください...

于 2009-10-15T15:23:32.343 に答える
3

おそらくGoogle検索を行うことですでに見たように、さまざまな時間追跡ソフトウェアツールがあります. しかし、正直なところ、あなたは時間追跡の聖杯を求めています. たとえば、自分のコードをじっと見つめて考えている開発者を開発時間と見なしますか? 彼女は 1 時間画面を見つめ、10 分間しかタイプしないかもしれません。この場合、実際に 1 時間 10 分働いたときにあまり機能していないように見えます。あなたが求めているものが正当なものではないと言っているわけではありません。それは、完璧な解決策がない問題の1つにすぎないようです.

幸運を。

于 2009-10-15T15:20:35.890 に答える
2

あなたは間違った質問をしており、滑りやすい坂道に向かっていると思います。開発には、実際のコーディングとは関係のないことがたくさんあります。

何かを追跡することに行き詰まっている場合のより良い解決策は、開発に関係のない活動に費やされた時間を追跡することだと思います。もちろんグレーゾーンもあります。たとえば、ユーザー要件について話し合う会議は、コーディングが行われなくても、おそらく開発にカウントされるべきです。

于 2009-10-15T15:32:28.053 に答える
1

IDE によって異なります。Eclipse を使用している場合は、Mylynプラグインを使用することをお勧めします。各タスクに費やされた時間を測定できます。タスクは、すべての有名なタスク リポジトリ、つまりTuleapから取得できます。詳細はこちら

ユーザーはタスクをアクティブ モードにするだけで済み、タスクが終了したら非アクティブ化してタイマーを停止できます。Mylyn はそのようなプロセスをサポートすると思います - タスクのステータスが変更された場合、これはアクティブ モードをトリガーします (クローズされた場合はタスクを非アクティブ化します)。

開発には、ブラウザーや端末の使用が含まれる場合があります。Eclipse はブラウザーとしてもターミナルとしても使用できるため、開発者は Eclipse から離れる必要がありません。そのため、タスクに関連するほぼすべてのアクティビティを測定できます。

于 2013-08-28T19:42:03.800 に答える
1

タスクの時間を測定するには、このダッシュボードのようなものが必要です。実際のソフトウェア開発者の時間を知る唯一の方法は、それを追跡することです。そうすれば、彼らはタスクを切り替えるときに、いわば時計を止めます。最も難しいのは、開発者が特定のプロジェクトやコード モジュールなどに取り組んでいる時間の尺度としてそれを使用するようにすることだと思います。これらのメトリックを使用して、気を散らしたり、他の時間を無駄にしたりすることを減らすことができれば、少なくとも、コーディング、電子メール、他の開発者との会話などに費やす時間について、まともな盗品を得ることができません.

于 2009-10-15T16:12:34.680 に答える
1

開発者がアクティブなウィンドウとして何を持っているかを測定しようとしている場合は、善意を想定する必要があります。たとえば、私は「開発時間」の約 3 分の 1 を Firefox でリファレンスを調べることに費やしています。

開発者にログを残すように依頼して、彼らの時間がどこに費やされているかがわかりますか? それは理想的ではありませんが、それ以上にうまくいくことはありません。

于 2009-10-15T16:16:04.893 に答える
1

気晴らしや妨害、その他のタスクに費やされた時間を測定しようとしている場合、この情報を喜んで提供することは開発者の関心事ではないでしょうか?
あなたはどこかでスクラムを実装していると言いました。

本当に必要な場合は、毎日のスクラムで取り上げて儀式の一部にするか、1 日の終わりに非常に短い毎日のミーティングを追加します。開発者に、気晴らしや妨害、その他のタスクに 1 日がどれだけ費やされたかを推測させます。測定の難しさを考えると、他のどの測定方法よりも「正しい」に近いと思います。

そのため、開発者に時間を書き留めてもらう代わりに、スクラムマスターの仕事にまとめてもらい、開発者ができるだけ苦労しないようにします。開発者もそれを行うことから具体的な何かを得ることができるようにしてください。

Dean J が暗示したように、とにかく開発者を信頼する必要があります。

于 2009-10-15T16:32:11.953 に答える
0

DotProjectまたはXPlannerをお試しください

于 2009-10-15T15:12:57.670 に答える
0

開発者はプログラム(Outlook、ファイルエクスプローラー、バージョン管理、インターネットブラウザーなど)を交換するため、アクティブなウィンドウアナライザーでは信頼できる結果が得られません。提案されたアナライザーはその時間をログに記録しませんが、開発者がプロ​​ジェクトに投入する開発時間の一部である可能性が非常に高くなります(ソフトウェア開発は常にVSでコーディングするだけではありません)。

于 2009-10-15T15:14:28.960 に答える
0

開発者の労働時間を測定しようとするのは間違った考えです。尋ねるべき適切な質問は、プログラマーの有効性とは何かということです。これは、コーディング時間やコンピューターの前に座っている時間などでは測定できません。

Joel Spolsky がソフトウェア クラフトマンシップに関するブログでよく述べているように、ソフトウェア開発は「...製造プロセスではありません」。

関連するが多少異なる議論が、侵入型プログラマー生産性測定ツールに関するこの SO 記事に記載されています。

于 2010-06-13T04:42:20.893 に答える
0

開発者が強制される時間測定ソフトウェアを使用することは絶対にお勧めしません。これは、開発者の集中力を大幅に妨げます。

代わりに、次の簡単なテクニックを使用できます。

スプレッドシート: 小規模なプロジェクトまたは開発者チーム向け

スプレッドシートを作成してオンラインで共有し、それにプロジェクト タスクを追加し、開発者にタスクを割り当て、開発者にタスクの時間を見積もらせ、タスクのステータスを更新させることほど簡単なことはおそらくありません (非常に大まかな値は 0% からそして 100%) 必要に応じて、タスクを完了するのに実際にかかった時間 (時間) を指定させます。

したがって、スプレッドシートには、タスク名、割り当て先、推定時間、実際の時間、完了 (%) という列がある場合があります。

Google ドライブのスプレッドシートが答えかもしれません。これは非常にシンプルで高速な方法であり、開発者の注意を最小限に抑えます。

スクラム: 中規模から大規模のプロジェクトまたは開発者チーム向け

タスクとスクラム情報は記録され、オフィスの掲示板に保管されます。また、特別なスクラム アプリケーションを使用することもできます。優れた Web スクラム アプリケーションはPivotal Trackerであり、あらゆる規模のプロジェクトやチームにお勧めします。

スクラムの詳細: http://en.wikipedia.org/wiki/Scrum_(development )


どちらの場合でも、製品所有者 (クライアントまたはクライアントと取引する人)、プロジェクト マネージャー、およびすべての開発者は、より良く、より速く行うことができます。

  • 伝える
  • 見積もり
  • チームと関係者全員の進捗状況を確認する
于 2013-01-23T13:41:42.047 に答える