エクストリーム・プログラミング

出典: へっぽこ実験ウィキ『八百科事典(アンサイクロペディア)』
ナビゲーションに移動 検索に移動
最適化の基盤は真の恐怖だ
エクストリーム・プログラミング について、オスカー・ワイルド
故ジョン・プラット(チームマイクロソフト)が複雑な.NETフレームワークのデバッグを行なう様子。この後、彼は命を落とした。
Wikipedia
ユーモア欠落症患者のために、ウィキペディア専門家気取りたちが「エクストリーム・プログラミング」の項目を執筆しています。

エクストリーム・プログラミング(XP)は革新的なソフトウェア開発手法の一つ。XPにおいては、プログラマスキーでの滑走中に、スカイダイビングでの降下中に、凶暴なスティーブ・バルマーグルーに追われながらコードを記述する。これらのことから、XPでは鍛え上げられた反射神経や一瞬でのデバッグ技術が生存の為に要求され、同様に敏捷性と勇気がプログラマには必要となる。

研究によると、XPを用いたソフトウェア開発は既存の手法によるプロジェクトよりも64%も速い。また、XPの観客動員力は既存のプログラミング手法を65,536%も上回る。


歴史[編集]

ラリー・ジョンソンが開発中のJavaアプリケーションにおいてリファクタリングを行なっている様子。このようにXPにおいては一瞬の判断ミスが重大な事故に繋がる。

エクストリーム・プログラミングはケント・ベックらによって開発された。XP以前にはウォーターフォール・プログラミングが大きな成功を収めたが、一方でウォーターフォール型の開発はプログラマにとって退屈極まりないものであった。ケント・ベックらは自らの理論をまずクリスピー・クリーム・コーポレーションの給与支払システムの開発プロジェクトに適用し、このプロジェクトは未曾有の大成功を収めた(ケントらは本社が火の玉に包まれ焼き尽くされる前に脱出に成功した)。

実践[編集]

プロジェクト・ベロシティ[編集]

エクストリーム・プログラミングは移動の重要性を常に強調する。場合によっては時速300kmを超えるスピードでXPは行なわれ、XPにおけるスピードは「プロジェクト・ベロシティ」と呼ばれる。

名前空間[編集]

名前空間の概念は、テーブルトークRPGをシステム化する際のままならなさから発明された。

頻繁なリリース[編集]

XPはまた頻繁な血ヘド等のリリースを重要視する。これらは1日に14時間以上のプログラミングを要求されるプログラマ達への治療としてだけでなく、見世物としてもテレビで頻繁に見ることができる。

テストステロン駆動開発[編集]

エクストリーム・プログラミングの合言葉は「テストステロン・ファースト」である。コードを書く際は、必ずカメラや熱狂的女性ファン(コードベイブと呼ばれる)に向かって、マッチョな決めポーズを取らなければならない。

XPによるデバッグ風景。こうしてまた一つ世の中から致命的なバグが片付けられた。

維持不可能なペース[編集]

XPの鍵は通常なら維持できないペースにプロジェクトを設定することであり(時速300km以上の速度はプロジェクト・ベロシティを保つ為に不可欠である)、プログラマ達にそれらのペースを強制させることである。

ペア・プログラミング[編集]

XP は重大な危険を伴うスポーツであるため、時として単独での実施が禁止されることがある。こういった場合は 2名のプログラマが 1つの端末を共有し、共同で危機に対処する。これをペア・プログラミングという。 注意すべき点としては、ペア・プログラミングは新人教育には向いていないということである。軍隊におけるバディと同様、ペア・プログラミングは熟練者ですら危険が伴う場合に実施される。こういった場所に新人を送り込むのは推奨されない。

結論[編集]

危険な状況による極度の恐怖とアドレナリンの噴出がプログラマを覚醒させ、生み出されるコードの品質を高める一方、XPはプログラマの寿命を著しく縮める。しかし、大学は驚くべき速度で若く優秀なプログラマ達を大量生産する為、XPとプログラマの寿命のトレード・オフはコスト面から仕方のないことだと考えられている。

関連項目[編集]

Syazaai.jpg この項目「エクストリーム・プログラミング」はエクストリームスポーツに関連する書きかけ項目である。この項目へ加筆すれば、君もエクストリームスポーツへの出場が優遇されるのである。ただし、出場しても命の保障がないから気をつけろ! (Portal:スタブ)