アットウィキロゴ

7 > 1end

多くのソフトウェア開発者は、今日フラストレーションを感じている。
彼らは長く、厳しい時間を働くが、彼らのチームは現在のプロジェクトを終えることはできないようです。
それは、努力や意欲が無いためではない;
チームに所属する誰でもきれいにプロジェクトを仕上げたいです、しかし、誰もそのための方法を知らない。
あなたの操作で何が動作し、どのようにそれを作るのか、を見つけるために読書や実験をする時間を見つけることは、非常に難しい。
大部分の人々は、この種の研究に乗り出すには、働くのに忙しすぎる。


そこで、Ship It! の出番である。
この本は、フィールドで、複数のプロジェクトに関して、すべてのサイズの会社で証明された、基本的な、実際的なアドバイスのコレクションである。
それは、我々が遭遇したものだ。
我々は、数週間で出たり入ったりしたコンサルタントではない;
我々は、明けても暮れても、これらの会社で働いた。
我々は、良く聞こえて、次の約束へいどうするという考えの中に落ちたりしなかった。
物事がうまくいかなかったとき、我々はそれらが倒れるのを見るためにまだそこにいた。
一方、我々も、物事が本当にうまく行った時に見ることができた。


これらの考えの一部は有名なソフトウェア方法論から露骨に持ち上げられました、そして、我々はそれが信用を与えるべきであるとした。
他の考えは、血と汗と涙から創り出されました。
我々は多くのツール、技術、最高のプラクティスで実験しました、そして、何かが働いたとき、我々はそれを保ちました。
それがパタパタしたとき、我々はそれを投げました。
あなたがここで見るほとんどは際立って独創的でない(これはいいことである)。
その代わりに、我々は、業界で最良の知性から考えを選んで、「巨人の肩の上に立っていた」と、彼らをあなたがここで見るものに変えました。

ソフトウェア・チームの50~70パーセントが今日の基本的な、有名なソフトウェアの実践([CusO3])を使わない。
まだしばしば、彼らがどうすべきかわからないからではなく、彼らが単に実行を現時点で始めさせる方法を知らないから、これは使われない。
よく、各々の考えに関して管理を販売する方法をあなたに教えてください、あなたを始めさせるために、実用的なステップを配置してください、
そして、あなたが競馬場外に変わらないように、探す警告標識を提供してください。

Ship It! は、「溝の中」にいた開発者によって書かれました。
この本は我々の経験(理論でない)です。そして、小さなスタートアップから世界最大の非公開ソフトウェア会社にわたります。
それは、プロジェクトをうまくいかせるための方法論を選ばない、現実的なガイドです。

我々は、人気があるPragmatic Bookshelf titles にならって本を作ろうとしました:
実際的な、小さい、簡単な読むこと。
我々の見込みは、他のPragmaticタイトルが開始した基盤を基にしていることである。


1.1 習慣的優秀さ

それで、どのように、アリストテレスの引用は、ここで合いますか? 「我々は繰り返しそうするものです。優秀さは、それから、行為でなく、習慣です。」
優秀さは、1つのすばらしい製品(またはいくつかのすばらしい製品)を生産することによって定義されません。
それは、我々が毎日することから出てきます:
我々の習慣。 驚異的な製品は、単に良い習慣の副作用だけです。

この引用を我々自身(両方とも専門的に、そして、個人的には)に適用することは我々が命が我々の習慣の副作用であると認めることを義務づけるので、我々は慎重に習慣を選んだ方がよいです。
いろいろな理由で、大部分の人々は、彼らの仕事ルーチンにちょうどランダムに落ちます:
これはあなたがそれを学んだ方法です、それはあなたのボスがそれ、その他をしたものである方法です。
我々はよりうまくやることができます。


故意に、良い習慣を捜してください。そして、彼らをあなたの日課に加えてください。


この実験をためしてください。
研究に開発方法論を見つけてください、そして、あなた(そして、それが単独で使われることができます)に親切に、見える1つの衣服を引き抜いてください。
1週間使用に迫ってください。
それとそれのようなあなたが有益なようであるならば、1ヵ月それを使い続けてください。
それがあなたのルーチンの自然の一部になるまで、新しい習慣を行ってください、そして、はじめからもう一度プロセスを始めてください。
まさにあなたがレンガによって基盤レンガを積んで、このプロセスを繰り返して、一度に優秀な基盤に1つの新しい習慣を建ててやる通りです。 決してあなたの状況で働かない何かを取り出すのを恐れないでください、そして、それが有名であるか人気があるから、実行を保たないでください。
あなたのために働くこととそうしないことに基づいて、あなたなりに外に進出してください。


“How we spend our days is, of course, how we spend our lives."
If that's so, then we must be careful how we spend our days.
Don't fall into habits by accident.
Choose your habits deliberately.

「我々が時代を過ごす方法は、もちろん、我々が命を費やす方法です。」
それがそうであるならば、我々はどのように時代を過ごすかについて注意しなければなりません。
偶然に習慣を始めないでください。
故意にあなたの習慣を選んでください。


1.2 実際的な見解
この本は何かが働かなければならないか、働いてはならない理由のアカデミックな分析でありません、そして、
それは利用できる実行のカタログとあなたが選ぶことができる方法論でありません。


その代わりに、この本は、現実のソフトウェア・プロジェクトに関して我々のために働いたことを提示します。
それが働いたかどうかにかかわらずそれが明白であるまで、我々は新しいツールまたは実行を導入して、それを使います。
我々は、ソフトウェア開発ツールボックスで働いて、我々と彼らを運んだものを保ちました。
結局、我々が何をしているかについてわかっているように実は見えました!
これらのツールと実行があなたのためにもよく働くことを、我々は望みます。


単にそれが「目的のもの」であったので、方法論を使用する贅沢を持たなかったスタートアップに、我々は時間を費やしました。
我々の状況は、我々に我々が説明することができた問題を解決した考えがすぐに働くとわかることを強制しました。
彼らの自由で重要な資源とテクノロジーがあったより大きな会社で、我々も働きました。

それがエレガントであるから、あるいは、一部の導師がそれを支持するので、大企業さえツールを使用することを望まないと、我々はわかりました。
彼らは、迅速かつ経済的に今日の問題を解決する解釈を望みます。
それで、ツールキットが持ち歩けるのに一般的な十分であるが、効果的にまだ問題を解決するまで、我々は習慣にここで気付いて、習慣をそこでやめました。
この本は我々が意志が同様にあなたの店で違いを生じることを使った良い習慣のコレクションです-結果は驚くべきものでありえます。


以下を例示します:
あなたにTale ofTwo Software Shops(謝罪がチャールズ・ディケンズへにある)を話しましょう


最初の店は、失敗でした。
彼らは、むしろ高価なソースコード管理ソフトウェアを購入したが、それをこれまでインストールしませんでした。
その結果、彼らは、潜在的な顧客に示していたデモのために、ソースコードを失いました。
どんな特徴が製品に含まれると思われるか誰にもよくわかりませんでした、しかし、それにもかかわらず、全開発チームはそれに取り組んでいました。
コードは不安定で、約5分(通常最悪でもデモの間に)おきにクラッシュします。
この失敗は、士気に大きく影響しませんでした;
会社会議は、定期的に下方への螺旋でした-どなり合いへ
一部の開発者は、一日中彼らのオフィスに隠れることによって、状況を避けました。
全般的に見て、それは、働くための悪い場所でした。
誰でも、大きな問題があるということを知っていました。しかし、誰もそれらを修正することができませんでした。


第2の店は、非常により良い形でした。
同じ数の開発者についてで、彼らは、同時に3つの主要な製品に取り組んでいました。
これらのプロジェクトには、ソースコード管理システムで彼らのコードがありました;
それが変わったときはいつでも、コードは自動的に立て直されて、テストされました。
全チームは、短く、職業的で、効果的な毎日の会議を催しました。
各々のプロジェクトにはマスタープランがあったので、どんな特徴に取り組むべきかについて、開発者全員がわかっていました。
彼らは、採石場の労働者の信条に従いました;
単なる石を切る我々は、常に大聖堂[HTOO]を心に描いていなければなりません。
つまり、誰でもより大きな、調整フレームワークの前後関係の範囲内で彼ら自身の専門知識と技術を使用することができました。
それらが巧みに作られたので、それらの製品は最小限の手間ひまで、安定して時間通りに出荷されました。


これらの2社についての最も驚くべきことは、彼らが同じ店で、この本によって6ヵ月未満で主義の適用により切り離される、ということです。
(でも、あなたはそれをすでに推測したね?)
転換の後、CEOは「よい雰囲気」を導入し、「場所さえ認めなかった」と、言いました。
この会社は我々が最近働いた場所の1つです、そして、それらを提出して、我々はほぼ同級で支えるためにこの本に主義をもたらしました。
我々がそこで経験した変化は、あなたのためにこの本を書くことを決めた理由の1つです。


我々は、4人のベンチャーからからSAS(世界最大の私有ソフトウェア会社)まで、すべての会社で、これらの考えを発見して、適用しました。
率直に言って、これらの主義がすべての会社でどれほどよく働いたかについて、我々は驚きました。
これらの考えをすばらしい製品への基盤とみなしてください。
前金で基盤をきちんと建てさせることに投資する気があるならば、あなたは製品のライフサイクルの残りの間利益を得ます。
もちろん、プロジェクトをこれらの全ての実行と場所で始めることは、より簡単です。
家の壊れた基盤のように、他が深く構造的で、多くの仕事で振り返って固定する必要がある間、いくつかは簡単に修復されることができます。


あなたが現在プロジェクトの最中である場合、良い習慣を始めるのに遅すぎるということはありません。
あなたはこれらの考えの多くを既存のプロジェクトに導入することができ、即座に利益を得ることができます、そして、最後の章でそうする方法を説明します。


1,3ロードマップ
我々は、3つの主な地域にアイデアを準備しました:
基盤。技術とプロセス(図1.1参照)。
一貫してあなたの顧客が望む製品を届けることは、さっきの3つはあなたのチームの能力に直接影響を及ぼします。


基盤
ツールと基盤を用いて、我々は、あなたの人生とあなたのチームの一生をより安楽にするソフトウェア・ツールをカバーします。
たとえば、良いソースコード管理システムは、あなたのプロジェクトの「クラウンジュエル」―我々のソースコード―を無事に保ちます
自動化されたシステムは、あなたの好きな場所、時間で与えられます。
そして、バグ・レポート、特集要請とあなたが残りの世界を何であったかについて見させた瞬間、やって来る他の問題の経過を追う方法を、我々は検討します
発達すること。
そして、あなたが何かを開発しているときに見つけたバグのレポートや特殊な要望、他の問題の経過を追う方法を我々は議論します。
最後に、良いテスト・ハーネスは、あなたのコードがあなたの思った通りのことをするという確信をどのように与えるかについて教えます。


技術
実用的なプロジェクトのテクニック(Pragmatic Project Techniques)では、あなたとあなたのチームが「よりスマートである。ハードでない」ものへの
毎日使うことができる具体的なプラクティス(実践)を、我々はカバーします。
我々は、あなたを外界から遮断し、あなたが知る必要がある情報だけを得るためにあなたのチームに技術的なリードを与える方法を話します。
グループを順調にしておくために、あなた自身の仕事とチームを組織するのに、一人でリストを使ってください。
あなたのチームは、コミュニケーションしていますか?
誰が何をしているか、話せませんか?
チームメイトの心を汲み取る機会なので、全員が同じモチベーションを保つためにデイリー会議を始めてください。
短いコード・レビューは、あなたの同僚の専門知識に影響を及ぼして、あなたにあなたの専門知識の少しも共有させるのを助けます。
そして、一旦チェックが終わっているならば、あなたのしたコードチェンジについて、あなたのチームの残りに教えてください。

タグ:

+ タグ編集
  • タグ:
最終更新:2011年07月01日 14:53