バージョン 2.xx TaskJuggler のスクリーンショット | |
| 開発者 | クリス・シュレーガー |
|---|---|
| 安定版リリース | 3.7.1 / 2020年3月14日 |
| リポジトリ |
|
| 書かれた | C++、ルビー |
| オペレーティング·システム | クロスプラットフォーム |
| タイプ | プロジェクト管理ソフトウェア |
| ライセンス | ライセンス |
| Webサイト | 翻訳: |
TaskJugglerは、 LinuxおよびUnixオペレーティング システムで実行され、 Qt ツールキットとKDEライブラリ を使用してC++でプログラムされた、 GPLライセンス (フリー ソフトウェア)のプロジェクト管理ソフトウェアです。Windows でも動作します。TaskJuggler プロジェクトは、2001 年に Chris Schläger によって開始されました。初期のリリースでは、HTML レポートを生成するコマンド ラインツールが提供されました。2005 年 8 月から 2010 年 7 月まで、このパッケージは KDE ライブラリに基づくグラフィカル ユーザー インターフェイスも提供していました。
TaskJuggler IIIは2010年7月5日にリリースされました。これはTaskJuggler 2.xシリーズの完全な再実装バージョンであり、Rubyで書かれています。[1] 2.xバージョンのグラフィカルユーザーインターフェイスはまだTaskJuggler IIIに移植されていません。プレーンテキストファイルであるTaskJuggler IIIドキュメントはテキストエディターで編集され、コマンドラインで処理されます。
アプローチ
TaskJuggler プロジェクトは、ドメイン固有の宣言型プログラミング言語で記述された1 つ以上のプレーン テキストドキュメントで構成されます。ドキュメントは、ルート プロジェクト ファイルと、キーワード ( TaskJuggler 用語ではプロパティ)によって1 つ以上のレベルにルートに組み込まれたオプションのサブファイルで構成されます。TaskJuggler 言語リファレンスでは、プロジェクト定義ソース ドキュメントをTJP ファイルとやや緩く呼んでいます。この説明では、プロジェクト定義ソース ドキュメントを単にTJPと呼びます。
include
TJP は宣言型ドキュメントです。中心となるオブジェクトは、タスク、リソース、レポート、シナリオ、およびタスクとリソースに適用されるスケジュール制約です。アカウントを記述し、コストと経費を計上するための基本的な機能もあります。プロジェクトの進行状況は、タスクの完了プロパティ (パーセンテージ) またはリソース予約プロパティを宣言することで追跡できます。リソース予約プロパティは、特定の期間のタスクにリソースを関連付け、スケジュール予測を生成するために使用できます。
TaskJuggler はレポート コンパイル ツールとして機能します。TJP プログラムが記述された後、プログラム上で TaskJuggler コンパイラを実行することで、プロジェクトの状態に関するレポートが生成されます。TJP コンパイラには、ヒューリスティック アルゴリズムに基づくスケジュール コンポーネントが含まれています。TaskJuggler は、TJP 内のレポート宣言に基づいて、ガント チャートを含むさまざまなレポートを生成できます。TaskJuggler コンパイラは、10,000 を超えるタスク、1000 を超えるリソース、および複雑な制約を持つ大規模なプロジェクトを処理できます。
非増分投影
TaskJuggler が共有するコンパイル ツールの共通機能は、入力が非常に類似している場合でも、将来のコンパイル (レポート) が必ずしも過去の出力を反映するわけではないことです。TJP で宣言されたプロジェクト状態に変更があると、完全に新しいスケジュール割り当てが生成される場合があります。
TaskJuggler には現在 (バージョン 2.3.0 時点)、「ボブを 4 時間、ドキュメンテーション タスクに割り当てるとどうなるか」などの仮説入力に基づいて、既存のスケジュール予測から最小限のスケジュール変更を生成する機能はありません。ただし、1 つの予測出力から必要な要素を、スケジュール予測のさらなる改良に関連する固定された仮定として、追加の制約として TJP にフィードバックすることはできます。反復的な制約の改良は強力な手法ですが、財務予測ツールと同様の機能で使用する場合、 スプレッドシートでの増分再計算のような即時性はありません。
利点
TaskJuggler の設計により、プロジェクト マネージャーはプロジェクトのどの段階でも、プロジェクトについてわかっている情報に集中できるようになります。次に、TaskJuggler はこの情報を意味のあるレポートやグラフに変換します。TaskJuggler は、最初のアイデアから作業量の見積もり、予算編成、ステータスの追跡まで、プロジェクトのすべての段階でプロジェクト マネージャーをサポートします。
テキストによるプロジェクトの説明は、TaskJuggler を他のプロジェクト管理プログラムと区別するものです。ユーザーは、作業の内訳、タスクの優先順位と依存関係、指定されたリソースとその可用性に集中できます。提供された制約に基づいて、TaskJuggler は指定されたタスク項目のスケジュールを計算します。組み込みのロード バランサーは、作業時間を尊重し、リソースの使用を自動的に平準化します。TaskJuggler は、タスク間隔、各リソースの割り当て時間、およびプロジェクトの損益分析を計算します。これらの結果は、表示する情報をサブセットに制限するために使用できるフィルタリング メカニズムを使用して、大量のレポートに変換できます。
デメリット
プレーンテキストのプロジェクト記述は階層的な宣言型プログラミング言語で書かれており、プロジェクト内の順序や制約、プログラム自体の構造について抽象的に考える必要があります。典型的なプロジェクトには次のセクションがあります: [2]
- プロジェクト ヘッダー
- マクロ定義
- 旗の宣言
- シフトの定義
- アカウントの定義
- リソース定義
- タスク定義
- 予約
- レポート
この複雑さは強力ですが、TaskJuggler の使用に習熟するには、学習曲線が急峻になる可能性があります。
参照
参考文献
- ジャグリングの芸術、(PDF) Linux Magazine、第 61 号、2005 年 12 月、p. 52-55。
- TaskJuggler: 最善の計画 (PDF)、Linux Magazine、2004 年 1 月、p. 75-77。
- Software Projects による TaskJuggler のレビュー。
注記
- ^ 「インストール」。
- ^ Schlaeger, Chris. 「TaskJuggler Workshop」(PDF) 。2012 年12 月 19 日閲覧。
外部リンク
- 公式サイト
- 「TaskJuggler」。Freecode。
