ソフトウェア開発チームを管理する非技術者がいる場合、プロセスをよりよく理解するために読んでもらいたい本はありますか?
たとえば、ほとんどの作業では、タスクにかかる時間をかなりよく見積もることができます。しかし、開発では、全体のポイントは、未知の時間がかかる問題を把握する必要があるということです。これを伝えるのは難しいです。
あなたが知っていることはこれをよく説明していますか?
ソフトウェア開発チームを管理する非技術者がいる場合、プロセスをよりよく理解するために読んでもらいたい本はありますか?
たとえば、ほとんどの作業では、タスクにかかる時間をかなりよく見積もることができます。しかし、開発では、全体のポイントは、未知の時間がかかる問題を把握する必要があるということです。これを伝えるのは難しいです。
あなたが知っていることはこれをよく説明していますか?
回答:
「Peopleware」と「Mythical Man Month」はいくつかの古典になりますが、古いと思われるかもしれないので、経営者がどちらの本を読むのにどれだけうまくいくかわかりません。
ソフトウェアのプロセスとプロジェクトの管理については、Steve McConnellのRapid Development:Taming Wild Software Schedules and Software Project Survival Guideをお勧めします。これらの本では、ソフトウェアプロジェクトの管理における典型的な間違いから、リスクの管理、ベストプラクティスの説明、およびそれらを適切に適用する方法まで、さまざまなトピックについて説明しています。
Jim McCarthyのソフトウェア開発のダイナミクスは、ソフトウェアチームがどのように機能するかについての興味深い洞察を提供し、実際のケースに基づいてソフトウェアプロジェクトを最適化するためのヒントとコツを提供します。
本ではありませんが、(かなり明るい)非技術系のマネージャーをSoftwareのJoelに向けることに成功しました。
ソフトウェアエンジニアリングの事実と誤りを入手してください。
編集
この本は読みやすく、管理のために簡単に段落を読み込めます。ソフトウェア開発の問題に焦点を当て、何も知らないという距離から。当時、私はOPと同様の問題を抱えていたため、マネージャーとこの本と協力して、タスクを完了するためにより多くの時間とリソースが必要であることを彼に納得させることができました。
しかし、私は最近、その本の多くのものが矛盾しているのを見ました。相変わらず、社会科で何かを読んでいる人にはお勧めしません。それはあまりにも希望的であり、日ごとに変化します。
Perfect Software:そして、テストに関する他の幻想は、あなたがそれらを手に入れる別の本であるべきです。
序文から、それが議論するいくつかの質問があります:
「速度が低下しているように見えるのに、なぜテストを煩わさなければならないのですか?
なぜ人々はソフトウェアを正しく構築できないので、テストする必要がないのでしょうか?
すべてをテストする必要がありますか?
なぜすべてをテストしないのですか?
テストをこれほど難しくしているのは何ですか?
テストに時間がかかるのはなぜですか?
完璧なソフトウェアも可能ですか?
なぜいくつかのバグを受け入れられないのですか?」
おそらく「アジャイル開発の技術」。これにより、ソフトウェアプロジェクトをより現実的な方法で管理することを彼らに説得させることができます。もちろん、彼らにアジャイルを試してほしくないなら、それは悪いことかもしれません。しかし、私はそれを説得力のある本だと感じています。
ソフトウェア開発プロセスに関しては、Andy HuntとDave Thomasの「The Pragmatic Programmer:Journeyman to Master」を使用する必要があります。それ以外の方法を学ぶには、通常、実際のプログラミングの実際の経験が多く必要になる有用な知識の宝庫です。また、プログラミング言語に依存せず、ほとんどが理解しやすいです。
見積もりに関しては、実用的なプログラマーはそれについて簡単なセクションを持っていますが、フレッドP.ブルックスによる古典的な「神話上の男の月」は読む価値があります。一部のプロジェクト例は少し時代遅れのように見えますが、今日でも多くのアイデアが真実です。