個人用ソフトウェア プロセスに従っていますか?あなたの組織/チームはチーム ソフトウェア プロセスに従っていますか?[閉まっている]

StackOverflow https://stackoverflow.com/questions/28197

  •  09-06-2019
  •  | 
  •  

質問

詳細については - ウィキペディアの個人ソフトウェア プロセス そして ウィキペディアのチーム ソフトウェア プロセス.

質問が 2 つあります。

  1. これらのプロセスからどのような利点を見ましたか?
  2. これらのプロセスに従うためにどのツールや方法を使用していますか?
役に立ちましたか?

解決

私はトレーニングを受け、会社が費用を出してくれたので、カーネギーメロン大学に行き、PSP インストラクタートレーニングコースを受けてインストラクターの認定を取得しました。これを当社の CMM/CMMI への取り組みの一環として使用することが目的だったと思います。私はワッツ・ハンフリーに会ったところ、彼がプロセスについて深く根付いた考えを持った、親切で穏やかな人であることがわかりました。私も彼の本を何冊か読みました。

これについての私の見解を簡潔に述べます。文字どおりに理解することを前提として、ほとんどの人には理解できないほど構造が複雑です。過去の情報に基づいて推定するというアイデアは、特に教室環境では問題ありませんが、要件や方向性の変化により推定が 1 日で取り消される現実の世界では、あまり役に立ちません。Wide Band Delphi 推定も行ったことがありますが、それは問題ありませんでしたが、正直なところ、必ずしも私が行う「最良の推定」よりも優れているとは限りませんでした。

私のチームは PSP にそれほど熱心ではありませんでしたが、それが問題の一部、つまり開発者の同意です。私の会社は間違った理由でそれを行っていました。単に「ほら、うちは PSP を使っていて、認定インストラクターもいるよ!」と言いたかっただけです。

結局のところ、「アジャイル」アプローチを使用するほうがより良いことがわかりました。私にはやるべき仕事の残務があり、それをほぼ正確に見積もることができます。私はこれを長くやっているので、時間通りにかなり正確な大まかな見積もりを立てることができますが、率直に言って、時間追跡によって実際に状況がそれほど改善されるとは思いません。おそらく環境によってはうまく機能するかもしれませんが、私のところでは、疑わしい利点をもたらすプロセスのフープをすべて排除して、高品質のソフトウェアを送り出し続けるつもりです。

私の2セントだけです。

他のヒント

私も一度これにハマって、PSP ダッシュボードを使ってみたりもしました。

ついていくのが大変すぎます。すべての活動にストップウォッチを使いたい人がいるでしょうか?痛みのないスケジューリングと証拠に基づいたスケジューリングに関するジョエルのアドバイスに従ってください。

この質問には +1、PSP には -1。

私は PSP と TSP プロセスを 4 年間暗記してきました (ただし、それはソフトウェアのキャリアの初期段階でした)。理想主義者として、あなたは自分が行っていることを気に入るでしょう、そしてもちろん、驚くべき結果もあります。
PSP は、欠陥を徹底的に記録することを推奨していますが (例:またはタイプミス)、私は氏と会話していました。ワッツ・ハンフリーでは、多くの人がコンパイラーの進歩とオブジェクト指向の欠落について彼に質問しました (私はオブジェクト指向プログラマーであり、オブジェクト指向をうまく使っていたので、どうしてオブジェクト指向が欠落しているのかと感じました)。彼からはとても良い答えが得られました。さらに、「PSP や実際のところ、あらゆるプロセス方法論は、単一のアイデアに固執する概念ではありません。中心的なアイデアは、人々に高品質の手法と分析を紹介することです。
「それは常に適応的です。ニーズに合わせてカスタマイズできます。ファンクション ポイント手法を使用するつもりであれば、そのまま実行しても問題ありません。あらゆる推定手法についても同様です。ただし、それを継続的に繰り返し行う必要があります。
「コンパイラの進歩も同様です。PSP の構造内の WBS が開発に適合しないと感じた場合は、変更して使用してください。ただし、継続的に WBS を使用してください。
「これを継続的に行うと、過去のデータが収集され、すべてのパラメータについて統計的に予測可能で正確な推定が行われるようになります。」
この回答をするのが遅れているかもしれませんが、すべての回答を読んだとき、これを共有したいと感じました。ツールとしては、プロセス ダッシュボード、PSP Excel シートなどがあります。

PSPの場合、私は見ました ソフトウェアプロセスダッシュボード, しかし、非常に使いにくいようです。

私は PSP コースを完了しました。次のコースは、他の人が言っているように、チームダイナミクスを目的とした TSP になる予定です。私は PSP について複雑な感情を抱いていますが (ほとんど否定的ですが、結果は興味深いものでした)、次のような結論に達しました。

  • 初めに 私のイライラの主な原因は、デザインテンプレートがあまりにも退屈で非現実的であることです. UML と BPMN 用に変更し、最初からインストラクターに「必要な場合は課す」と伝えてください。. 。この本自体には、デザイン テンプレートは UML を知らない人、または UML を学びたい人向けであると記載されています。
  • 第二に、 見積もりだけが私にとって価値のある部分だった. 。この本自体には、コード行とは別に他のものを使用できることが記載されており、それらが統計的にどの程度関連しているかを知る方法さえも説明されています。これについての私の見解 (コード行数を数える) は、VCS (git、mercurial) に接続するツール/プラグインが存在し、個人データベースの構築を自動化する必要があるということです。そうでない場合、ベース/追加/再利用された部分を追跡するには面倒すぎるということです。
  • 過程自体はいいのですが、 大きなプロジェクトには当てはまらない, 、なぜですか?、なぜなら 反復に対応できないだけです. 。現実の世界では、要件の変更により、プロジェクトについて常に繰り返し説明する必要があります。この規律は、プログラムによる小さなタスクにも適用できます。これは次のとおりです。計画、設計、設計のレビュー (設計標準と暗記できる小さなチェックリストがある)、コーディング、コードのレビュー (明確なコーディング標準と暗記できる小さな精神的チェックリストがある)、テスト、間違いについて熟考する。経験豊富なプログラマであれば、これらが最終的には直感的に実行できる手順であることがわかるでしょう。 実際の実践における私の推奨事項:プロセスに従いますが、設計以外のことは文書化しないでください。単体テストを実装する場合は、それを十分に文書化してください。.
  • このプロセスは実際に従う価値があり、実用的かもしれません...間違いがまったく許されないリアルタイム システム プログラミングの場合は、それ以外の場合は価値がありません。
  • 集中力を整理して改善するための方法論を探している場合は、試してみてください。 GTD (物事をやり遂げる) そして ポモドーロ 初め。
  • 強迫性障害がある人は、実際に PSP を楽しめるかもしれません =)。

私の最後の推奨事項は、参考として学ぶことで、より良い、より実用的なものにつながる可能性があります。これはあまりにも学術的すぎる。

追記:RIP。ワッツ・ハンフリー

ここ半年ほどPSPを使っています。

時間がかかります。私の推定では、フォームに記入するのに時間の 7% を費やす必要がありました。「セミコロンが抜けている」という間違いを何度も入力しなければならないのはイライラします。

しかしその一方で、プロセスに慣れるにつれて、どのエラーが主に行われているかがわかり始め、それらを「自然に」回避できるようになり、それが重要になりました。

また、コードを「レビュー」して、コンパイル ボタンを押す前に問題があるかどうかを確認することもできます。

Timetracker の使用をお勧めするツール: http://0xff.net/

コンパイルや小さなバグの修正に費やす時間を短縮するための習慣を身につけることができるため、少なくとも 2、3 か月間は PSP を試してみることをお勧めします。

私はちょうど大学の最後の学期にそれを学びました、そしてそれは私にとってとても役に立ちました。文字どおりに実行すれば、自信を持って [コンパイル] を押すことができ、エラーは発生しません。また、[実行] を押すことで、プログラムを何度も実行するためにプログラムを修正したり再コンパイルしたりする時間を費やす必要がなくなりました。混乱が解決するまで。

人々は「セミコロンの欠落」などを記録しなければならないことに不満を言いますが、プログラム 7 を使用する頃には、そのような些細な間違いはもう犯さなくなり、代わりにプログラムの重要な部分で欠陥が見つかります。実際のシナリオに適用する機会はありませんが、とても楽しみにしています。

可能な限り PSP 2.1 プロセスに従うようにしています。これは、プロジェクトの重要ではあるがあまり面白くない部分をスキップしないように集中するのに非常に役立ちます。通常、これは小規模プロジェクトの設計および設計レビューです。

時間を追跡するには、PSP ダッシュボードを使用できます。これには、プロセスを追跡するのに役立つ一連の機能とスクリプトが組み込まれています。

単に時間追跡ツールを探しているだけなら、こちらも好きです http://slimtimer.com. 。まともなレポートも作成できます。

数年前、私のグループが PSP を実験したかったので、私は数週間 PSP を追っていました。私はそれが非常に残念であり、仕事をするのにイライラさえ感じました。それは私の忍耐力を消耗させました。私の主なマイナス点は次のとおりです。

  • タイプミスやセミコロンの欠落などのばかげた強調。
  • 手作業で記入する必要がある非実用的なフォーム。
  • OO ではなく手続き型プログラミングに焦点を当てます。
  • 見積もりには、ループや関数などの数をカウントすることが含まれます。

それは膨大な時間の無駄だと思いました。PSPに従うことを強制されるよりは、この職業から離れることを選択したいと思っています。

関連資料: PSP本についての私の答え 「開発者にお勧めできないプログラミング本は何ですか」という質問。

大学時代に使っていましたが、職場では実際にプロセスがまったくありません。バージョン管理を使い始めたのはつい最近のことです。

私の経験では、あまりにも退屈すぎて役に立たないと感じました。自動化されていない場合は、消えてしまう可能性があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top