問題タブ [project-management]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
project-management - 機能が「完了」と見なされるのはいつですか?
ソフトウェア開発者として、私たちは多くの...まあ...コードを作成します。私たちが作成するコードの多くは、新しい機能や既存の機能の拡張に使用できます。この場合、この機能がいつ完了したかをどのように知ることができますか?
機能のコンテキストにおいて、完了とはどういう意味ですか? たとえば、会社 A にとって、これは次のような多くの異なることを意味する可能性があります。
- 顧客の要件を満たす (それ自体が難しい)
- 既知のバグはありません
- ドキュメントが書かれている
- 等
- 等
さまざまな開発者やチームにとって完了が何を意味するのかをよりよく理解するために、最大 5 つ (ただし最大 10 個) の項目を挙げてください。このリストは、開発者またはチームが通過するものであり、すべての項目がチェックされると、機能は完了したと見なされます。
アップデート
これらはいくつかの素晴らしい答えです。この質問はやや主観的だと思うので、最良のものを決定する方法を見つけようとしています。私はまだより完全な画像を探していると思います。
project-management - プロジェクト管理のない開発者としてスコープ クリープを回避する最善の方法
私は金融会社の小規模な社内 IT 部門で開発者として兼務しており、プロジェクト管理がほとんど、またはまったく行われていない多数の中小規模のプロジェクトに携わってきました。これは常にスコープクリープを引き起こし、締め切りに間に合わず、短期間でユーザー/マネージャーを満足させるために優れた設計/コードを犠牲にしなければならないようです.
ユーザー/マネージャーの要求と期待を考慮して、コードを記述する前にユーザーの要件を明確にし、変更要求が適切に管理されるようにするために、開発者として何ができるでしょうか。
ありがとう。
testing - 構造化されたUATアプローチ
開発者として、バグを特定し、要件が満たされていることを確認するためにユーザーがテストしたいさまざまなバージョンのアプリケーションをリリースすることがよくあります。
私はユーザーに、私が変更したことやテストが必要な新機能の大まかなアイデアを提供しますが、これは少しばかげているようで、あまりよく構成されていません。
反復型開発中にUATを要求するときに、他の人がどのようなアプローチや手順をとるか知りたいです。
ありがとう。
testing - 自分のコードをテストしない開発者をどうしますか?
私たちの開発者の 1 人は、継続的にコードを書き、それをテストせずにバージョン管理に入れています。その結果、コードの品質が低下しています。
開発者を取り除く以外に、どうすればこの問題を解決できますか?
編集
私はそれについて何度も彼に話し、彼に書面による警告さえしました
project-management - ガントチャートは1ページよりも大きいので便利ですか?
私はガントチャートを使用して管理されるいくつかのプロジェクトに取り組んできました。これらの中には膨大な数のタスクがあり、プロジェクトマネージャーは適切な選択をする代わりにMSProjectと格闘することにすべての時間を費やしています。
プロジェクト全体を管理するために何か(たとえば、法務、IT、マーケティング)に取り組んでいる複数の別々のチームがある場合、私はポイントを見ることができます。
ガントチャートを使用して成功したソフトウェア開発プロジェクトに参加した人はいますか?
project-management - サブチケットをサポートする課題トラッカーはどれですか? また、プロジェクト マネージャーと開発者の間のギャップを埋めるために、それらはどの程度うまく機能しますか?
あまり一般的ではないように思われる問題追跡ソフトウェアで見たい機能があります。それは、チケット (バグ、機能要求など) をサブタスクに分割して表示する機能です。おそらく、特定のチケットとその子チケットの進行状況に関するある種の進行状況バー スタイルのレポートを使用して、階層的に表示されます。
私の考えでは、これは開発者とプロジェクト マネージャーの両方に役立つと思います。プロジェクト マネージャーは何が起こっているかについてかなり広い概要を知りたいのですが、開発者は詳細にドリルダウンする必要があり、タスクをサブに分割する必要があることが非常に多いのです。 -タスク。これは、誰かが 2 つの問題を 1 つのチケットに入れる場合にも役立ちます。
これを行う課題トラッカーを知っている人はいますか? これまで見てきたもの (Trac、FogzBugz、および Basecamp) はすべて、チケットの構成がフラットであるため、開発者またはプロジェクト マネージャーのいずれかにとって有用ですが、両方にとって有用ではありません。Assemblaでは、チケットに子チケット (および複数の親チケット) を含めることができますが、この特定の機能の使いやすさはあまりよくありません。
そのようなイシュー トラッカーがある場合、開発者とプロジェクト マネージャーの両方に使用したことのある人はいますか。または、両方のカテゴリのユーザーが使用できるより良いアプローチはありますか?
(更新:これは、「お気に入りのバグ追跡ソフトウェアは何ですか」という主観的な質問ではありません。特定の目的のために特定の機能を備えたバグ追跡ツールについて尋ねているので、そうでない場合は、お気に入りのバグ追跡ソフトウェアを投稿しないでください。間違いなく主観的な要素は、この特定の目的に対してどれだけうまく機能するかです。)
tfs - Team Foundation Server でのロールアップ タスク
プロジェクト管理に TFS 2008 を使用しており、tfs 内で小さなタスクを大きなタスクにロールアップする方法を探しています。私たちのワークフローは次のように機能します。
- 「Web ページ X を実装する」という新しい大規模な作業項目を作成し、開発者に割り当てます (彼を Brad と呼びましょう)。
- Brad がタスクを受け取ります。現在、彼は「Web ページ X」を設計したことがなく、すべてを実装するのにどれくらいの時間がかかるかわかりません。しかし、彼は過去にそのようなページを作成したことがあります...そのため、ブラッドは大きなタスクを取り、それを彼が推定できる 4 つまたは 5 つの小さなタスクに分割します。
- Brad は 5 つの新しいタスクを取り、各タスクにかかる時間を見積もります。これらのタスクのいくつかでさえ、たとえば 8 時間の作業よりも長いため、新しい Web ページを実装するのにかかる時間を正確に見積もることができるように、タスクを十分に細かく分割し続けています。
- Brad は、各タスクにかかる時間を現実的に見積もった優れたタスク リストを作成しました。このデータを使用して、この新しいページを実装するのにかかる時間を計算できます。
このすべてを経て、全体的な「マスター タスク」が失われました。Brad と私自身が簡単にマスター タスクを参照し、これらのサブ タスクがすべてより大きなマスター タスクに属していることを伝えることができるワークフローを探しています。
このようなワークフローを実装する方法についての考え、または tfs でタスクのロールアップに取り組む方法に関するより良い提案はありますか?
svn - SVN リポジトリをどのように構成していますか?
何が良いですか?
A:
B:
使用するリポジトリ構造とその理由は?
version-control - ブランチを持つ中規模のプロジェクトでデータベースのリビジョンをどのように管理しますか?
職場では、いくつかの異なるプロジェクトで 4 人が一緒に働いています。プロジェクトごとに、それぞれが取り組んでいるローカル コピーがあり、その後、開発、ステージング、およびライブ デプロイがあり、さらにブランチ (Subversion を使用) があります。私たちのデータベースは MySQL です。
そこで私の質問は、データベースのどのリビジョンが各展開 (および開発者の場合はローカル コピー) に対して行われたかを管理する良い方法は何かということです。現在、各変更は、名前にタイムスタンプが付けられたテキスト ファイルに保存され、プロジェクトの下のフォルダーに配置されます。正直なところ、これはあまりうまく機能していません。何がどこに適用されたかを追跡するのに役立つソリューションが必要です。
project-management - 愛着のある生徒を最大限に活用するには?
時々、私たちのプロジェクトに参加している学生がいます。私は確かに彼/彼女に多くのことを割り当てて、より多くを学ぶことができるようにしたいと思います. しかし、多くの場合、ドキュメンテーションや UI モックアップ画面の更新などの割り当てをあきらめています。問題は、学生が提供する作業の質を信頼するのが少し難しいことです。もう 1 つのことは、学生がまだ若く、熱意を持っている可能性があることです。そこにいない。彼らが実際に私たちの仕事量を削減し、将来の仕事の機会に役立つより多くのことを学ぶことを意味するように、それらをどのように活用すればよいでしょうか?