Power Toolsを利用した作業項目定義の編集
インストールが無事に終わったら早速試してみましょう。Power Toolsでインストールされる作業項目定義の編集機能はVisual Studio(VS)のアドインとして利用できます。VSを起動したら、[ツール]-[Process Editor]を展開します。
ここから、作業項目定義の編集を行うには、さらに[Work Item Types]メニューの中から作業が可能です。ほかに、プロセステンプレートそのものを編集する場合には[Process Templates]から、現在TFS上に登録されている作業項目定義に含まれるフィールド定義情報の一覧を見るには[Work Item Field Explorer]からといったメニューが用意されています。
今回は作業項目定義の編集がしたいので、図3に示すように[Work Item Types]メニューの先に進みます。メニューが4つありますが、[Export WIT]と[Import WIT]は本稿の前半で説明していたチームプロジェクトからの作業項目定義ファイルの取得と登録を行えるものです。残りの2つが実際に作業項目定義を編集するために利用するもので[Open WIT from Server]の場合は、チームプロジェクト上にある作業項目定義を直接編集することができ、[Open WIT from File]の場合は、ローカルにある定義ファイルを編集することができます。第1回から解説してきている内容はすべて、ファイルを編集していますので[Open WIT from File]が同様の作業に該当しますが、本稿の前半で解説していた内容は[Open WIT from Server]を利用して、直接行うことも可能となります。
今回は前半で保存した「Task.xml」(または「MyTask.xml」)を開いて内容を見ていきましょう。[Open WIT from File]メニューを選択するとファイル選択ダイアログが表示されるので、デスクトップに保存してあるファイルを選択します。ファイルが開くと図4のような画面が表示されます。
では、これを利用して作業項目定義を編集していく過程を見ていきましょう。
フィールドの編集
[Fields]タブでは、フィールド定義を行うことができます。図4のように定義済みのフィールドのName(name
属性), Type(type
属性), Ref Name(refname
属性)が一覧で表示されている状態になっています。フィールドを新規作成または削除する場合は、[New]または[Delete]をクリックします。編集する場合は、一覧から対象フィールドをダブルクリックするかメニューから[Open]をクリックします。[New]から開いたときも同様ですが、図5のような画面が開きます。
ここで、必須項目は、Name, Type, RefNameの3つです。シリーズの今までの説明でもほとんどがこの3つのみを対象に説明をしていましたが、実際には他にもいくつかの属性が用意されています。
少し補足をしておくとHelp Text(フィールドのサブ要素のHELPTEXT要素)は、VS上で作業項目を利用するとき、対象コントロールにマウスオーバーした時のツールチップヒントになるメッセージです。
Reportable(フィールドのrepotable
属性)とFormula(フィールドのformula
属性)はこのフィールドの値がTFSのレポート機能に対してどのように反映されるかを定義するものです。このように本来ならフィールド定義に必要なxml要素をすべて覚えておかなければ作業ができないところが、GUIを使って簡単に編集することができます。なお、図5の画面の[Rules]タブ側ではフィールドの規則というものを設定できますが、これについては、次回に改めて詳細を見ていくことにします。
フォームの編集
次は、デザイナ上での[Layout]タブです。ここは、フォーム定義を作成するための部分です。
左側にはフォーム定義のツリー構造があり、右側には現在選択されている項目のプロパティウィンドウが表示される構成になっています。まず左側に注目してみると、LayoutやGroup、ColumnやControlなど本連載の第一回でも確認したフォーム定義の各要素が並んでいます。各要素はサブ要素として持てる要素が決まっていますが、図7のように追加したい個所でコンテキストメニューを表示すると操作可能なメニューのみが利用可能になり、何ができるのかがより分かりやすくできています。
このコンテキストメニューを確認すると分かりますが、項目の上下の移動や削除もここから簡単に行うことができます。
次にダイアログの右側に注目してみます。図6ではコントロールが選択されている状態なので、それに対応する編集可能な項目が表示されています。前回、実際に編集してみる際に特に操作していたのはFieldName, Label, LabelPosition, Typeでしたが、操作可能なものが他にも多数あることが分かります。ただ、どれもWindowsフォームアプリケーションやASP.NET Webアプリケーションを開発している際にコントロールによく出てくるプロパティですので、使い方で悩むということもないと思います。
編集が終わったら、どのようなレイアウトになるか確認してみましょう。フォーム定義の編集で一番便利な機能はこの機能です。左上にある[Preview Form]をクリックします。すると図8のような画面が表示されます。
VSで表示される本来の作業項目のレイアウトとは若干異なる部分もありますが、概ね同じ表示内容で確認することができます。xmlファイルを手作業で編集している場合は、TFSに登録して実際に作業項目を作成してみるまでレイアウトの確認ができないため、この段階でレイアウトの確認ができることは大きなアドバンテージがあります。
ワークフローの編集
最後に[Workflow]タブです。ここでは状態と状態遷移、すなわちワークフロー定義を行うことができます。作業項目定義のxmlファイルを編集する場合には文字列だけを見ながらの分かりにくい作業でしたが、ここではワークフローそのものをデザインすることができます。
ここでは、赤枠の角丸四角が状態を、青枠の四角が状態遷移を示しています。例えばアクティブという赤枠から終了という赤枠へ、さらにその逆という定義がされていることが確認できます。新しい状態を定義する場合にはVisual Studioのツールボックスから[State]を配置します。新しい状態遷移を定義する場合には同じくTransition Linkを選択し、状態から状態へリンクを定義します。
状態遷移については、青枠の「Transition」あたりで右クリックして、[Open Details]を選択すると図10のような定義の詳細情報が表示されます。
[Transition Detail]では、状態の遷移元、遷移先を設定します。ForとNotは状態遷移を許可するロールを指定するものです。ある特定のロールに対して、Forで許可、Notで拒否を設定することができます。
次に[Reasons]タブです。ここでは状態遷移の理由を定義します。操作感はフィールド定義を操作するときと同じような感じです。いくつかの理由を定義する場合には、どれか1つにIs Defaultのチェックをつけ、デフォルトの遷移理由となるようにします。
ほかに[Actions]と[Fields]というタブがありますが、この辺は本稿までではまだ割愛しているフィールドの規則に関連する項目となります。
これらの作業を通して、作業項目定義の編集が終わったらこのまま保存しましょう。保存のタイミングで、witimport.exeを利用して検証を行ったのと同様のことが行われます。その結果エラーがある場合には、例えば図12のようなダイアログが表示されます。
このまま、[はい]を選択すれば保存できますが、基本は[いいえ]を選択してエラーを修正するようにしましょう。今回はもともとが[Open WIT from File]メニューから作業をしてきていますので、エラーなく保存できたら、最後に[Import WIT]を利用して作業項目定義を登録しておきましょう。なお、[Open WIT from Server]メニューから作業を始めた場合、保存と同時にチームプロジェクトに作業項目定義が登録されます。
本シリーズを一からご覧頂いていると、作業項目定義を作成するのはかなり大変な作業だという印象をもたれる方が多いと思います。事実、手作業で編集を行う場合にはかなりの情報を覚えた上で作業をしなければならず、これはかなり大変でした。しかし、今回紹介してきた方法を利用すれば、それよりはかなり簡単に作業できることがお分かりいただけたのではないでしょうか。