ジョエルテストについてどう思いますか? [閉まっている
https://softwareengineering.stackexchange.com/questions/2776
-
16-10-2019 - |
質問
ジョエルテスト あなたのチームがどれほど優れているかを判断するためのよく知られているテストです。ポイントについてどう思いますか?あなたはそれらのいずれかに同意しませんか?追加するものはありますか?
解決
ジェフ・アトウッドは持っています プログラマーの権利章典.
投稿から:
- すべてのプログラマーには2つのモニターがあります
- すべてのプログラマーには、高速のPCがあります
- すべてのプログラマーは、マウスとキーボードを選択するものとします
- すべてのプログラマーには快適な椅子があります
- すべてのプログラマーには、インターネット接続が高速になります
- すべてのプログラマーには静かな労働条件があります
これには、ジョエルのリストに表示されたいアイテムがいくつかあるようです。特にハードウェアの領域(デュアルモニター、高速PC、マウス/キーボード、快適な椅子、高速接続)。
言及されていない唯一のことは、快適で調整可能なものを持っていることです デスク.
これはすべて変更することで追加できます。
現在の#9:お金が購入できる最高のツールを使用していますか?
に
改善された#9:あなたは最高のものを使用しますか ツール と機器 お金は買えますか?
他のヒント
ポイント8が読み取っていることは興味深いです:
8. Do programmers have quiet working conditions?
それが以前読んでいたとき(ようなもの)
8. Do programmers have their own office?
そして、最後の段落はまだ始まります:
それでは、壁とドアのある別のオフィスに移動しましょう。
従業員と訪問者の両方として、私が働いていたすべての場所のように、私は常にこのテストを疑っていました。自分のオフィスを持つ唯一の人々はディレクターとシニアマネージャーです。
現実世界でソフトウェアを書くことは通常、チームアクティビティです。チームメイトと話をしてアイデアを跳ね返す必要があります。これは、インスタントメッセージングシステムであっても、別々のオフィスの人々とやるのが難しいです。物事を引き出して人々にコードと図を示すことができることは、非常に役立ちます。これは、分配されたチームが機能しないということではありません - 彼らは明らかにできることとできます、それはただの問題のセットです。
私が言うことは、各チームが6〜8人の自分のオフィスにいる必要があるということです(それがチームの規模だと仮定して)。そうすれば、彼らは他のチームを邪魔することなく(もしあれば)相互作用し、営業チームや訪問者に邪魔されることなく仕事を続けることができます(1つの場所で、私が働いていた場所で、玄関を通り抜けて開発エリアに入りました)。
他の開発者と一緒に仕事をしているが、それぞれが別々のプロジェクトに取り組んでいる場合、共有オフィス できる 有用である - しかし、あなたが会議室に会議を開催し、他の人の締め切りなどを尊重することに厳しい場合のみ。
他のほとんどは自明の真実です。
私はそれが好きですが、会社を評価するためにそれを使用していた場合、私はすべてのアイテムを等しく比較検討することはありません。ソースコントロールを持たないことは、お金が購入できる最高のツールを購入することなく、はるかに大きな問題です。
私にとって唯一の契約を破ることは次のとおりです。
8. Do programmers have quiet working conditions?
興味深いことに、スタックオーバーフローの求人で失敗する可能性が最も高い質問です。
特に会社に複数のプログラマーがいる場合、質問のいくつかは失敗するのが困難です。
1. Do you use source control?
2. Can you make a build in one step?
4. Do you have a bug database?
私が本当に気にしない他のほとんど。つまり、正直なところ:
12. Do you do hallway usability testing?
嘘つきを検出するものがあります:
5. Do you fix bugs before writing new code?
私はそれが良い「ベースライン」であると言わざるを得ませんが、測定ツールには他の要因があります。たとえば、私が働いていた1人の会社が毎日のビルドを行ったことはありません(私は知っている、私は知っています)が、それらのいくつかは非常に良いものでした。
私は個人的にリストに追加する他のいくつかのアイテムを持っています。
- 会議に出席したり、本を購入したり、その性質の何かを支援していますか?
- 必要に応じて、新しいツールを採用するための簡単な文書化されたプロセスがありますか
- 開発者の機器と、生産性を高める環境を提供していますか。
何よりも、これらの項目は以前の雇用主から「私を怒らせた」ことがあります。
私はジョエルのポイントのほとんどに同意します。 「廊下の使いやすさのテスト」についてはよくわかりません。確かにユーザビリティテストですが、実際に廊下から誰かをつかんで、彼らの仕事ではないにしても、プログラムをテストさせますか?それは人々を刻むのに最適な方法のようです。
一般的な意味では理にかなっていると思いますが、リストは特定の種類のソフトウェアを中心にしていることがわかりました。 フォグクリークソフトウェア します(収縮包装)。彼はまた別の投稿でそれについて話しているので、それは本当に驚くことではありません、 5つの世界. 。そして、その世界以外では多くの発展があります。
たとえば開発した場合、実際にはあまり意味をなさない条件があります 埋め込まれたソフトウェア 毎日のビルド(3)やユーザビリティテスト(12)などの衛星または自動販売機の場合。
Joel Testは、チームがどれほど優れているかをテストしません。チームがJoelテストをどれだけうまく順守するかをテストします。
これがあなたのチームがどれほど優れているかについてのより良いテストです。私はそれをGrandmasterbテストと呼びます。質問が1つあります。
1)あなたが書くソフトウェアは良いものですか?
あなたが「廊下のテスト」かどうか、またはあなたが持っているソースコントロール、またはあなたのビルドプロセスが何であるか(1つがある場合 - すべてのLanugageがそれらを持っているわけではない)かどうかは私には無関係です。チームの真の尺度は、彼らが作成するソフトウェアの品質です。
基本的に、Joel Testのすべてのステップに従って、まだ出荷されないがらくたコードと製品になってしまう可能性があります。たとえば、ソースコントロールは魔法のようにより良いコーダーになりません。コードを管理しやすくなります。そして、Visual Studioの最新バージョンを持つことは、あなたのアプリケーションがそれが書かれた場合よりもうまく機能するという意味ではありません Visual Studio 2005.