FogBugz

FogBugzは、Fog Creek Softwareが開発・販売しているプロジェクトマネジメントソフトウェアである。
特徴.
FogBugzの主な機能は、バグトラッキング機能・Wiki・コミュニティ・エビデンスベーススケジューリング（後述）・顧客関係管理機能である。FogBugzの利用方法としては、パッケージを購入（ダウンロードを含む）して自分の環境に導入する形態と、Fog Creekによるホスティングサービスを利用する形態（FogBugz On Demand）がある。
エビデンスベーススケジューリング.
エビデンスベーススケジューリング（Evidence-Based Scheduling）とは、Fog Creekの創業者でCEOでもあるジョエル・スポルスキが考案したソフトウェアの見積手法である。
通常のプロジェクトマネジメントでは通常、休日・病欠・庶務・休憩といったプロジェクトに直結しない活動はスケジュール計画からは除外され、プロジェクトに直結した時間のみが計測の対象となる。しかし、実際のプロジェクトではこれらの時間を明確に区分することは難しく、たとえば（ジョエル・スポルスキの例えを挙げると）「上司の釣りの話を聞かされる憂鬱な時間」をスケジュールから除外するのは望ましいことでもない。
こういった問題を避けるために、エビデンスベーススケジューリングでは、特定のタスクを完了するために実際に経過する時間のみを計測と見積もりの対象としている。そして、担当者の過去の見積もりを元にモンテカルロ法を適用して担当者の見積もりの信頼度を高めることを行っている。
この方法では、単純に「完了日」を見積もる代わりに、見込みのある完了日を、その実現確率とあわせた一覧形式で出力することができる。これによって、より見積もりに対する信頼度を正確に把握することができる。
FogBugz API.
FogBugzには、ユーザーが自分のアプリケーションとFogBugzを統合できるようなAPIが備わっている。これを用いれば、FogBugzのデータを外部アプリケーションから参照・更新することができるようになる。これはHTTPリクエストに対するXMLによるレスポンスとして実装されている。
沿革.
FogBugzはもともとはFog Creek Softwareの社内バグトラッキングツールとして開発され、2000年11月に最初のバージョンがリリースされている 。
クロスプラットフォームのサポート.
Thistle.
もともとのFogBugzはASPとVBScriptで実装されていたためWindowsのみのサポートとなっていたが、LinuxをサポートするためFog CreekではASPをPHPへコンパイルするためのThistleというコンパイラを開発している 。
Wasabi.
FogBugzを継続的に改良してゆくためにはVBScriptという言語が力不足なことは明らかだったため、Fog Creekでは現代的なプログラミング言語の機能をVBScriptに追加したWasabiと呼ばれるインハウスの開発言語を使っている。Wasabiでは関数を第一級オブジェクトとして扱えたり、自動プログラミングやO/Rマッピングの機能を備えている 。WasabiコンパイラはC#で書かれており、ASPとPHPにコンパイルすることができる 。