IBM i の 開 発 リソース 管 理 ~ Rational Team Concertのご 紹 介 ~ Rev.1.0 2015/11 日 本 アイ ビー エム システムズ エンジニアリング 株 式 会 社 (ISE ) インテグレーション サービス 箕 手 幸 広
内 容 1. Rational Team Concertとは 2. IBM i でRTCを 使 うことによる 開 発 の 変 更 点 3. RTC/RDiを 使 った 開 発 者 の 作 業 フロー 2015 International Business Machines Corporation 4
はじめに IBM i で 開 発 したリソースはどのように 管 理 されているでしょうか? 更 新 履 歴 は 取 られていますか? Excelで 各 自 が 更 新 内 容 を 記 入 ソースに 記 録 される 変 更 日 付 と 変 更 者 がコメントを 入 力 バージョン 管 理 は 行 なっていますか? ライブラリー 名 の 接 尾 をバージョン 番 号 としている LIB10 LIB11 LIB20 など ソース 名 の 接 尾 に@を 付 けて 1 世 代 分 を 保 持 SOURCE SOURCE@ など ビルド 及 びリリースされたリソースはどのように 管 理 されていますか? これらの 質 問 にお 答 えするのが 本 日 ご 紹 介 する です 2015 International Business Machines Corporation 5
第 1 章 Rational Team Concertとは 2015 International Business Machines Corporation 6
Rational Team Concert(RTC)の 概 要 計 画 管 理 構 成 管 理 変 更 管 理 (および 問 題 管 理 ) ビルド 管 理 を 統 合 した All-in-One 製 品 RTCは IBM iにインストール 可 能 また IBM i のコンパイラと 連 携 し ビルド 管 理 も 可 能 RTCクライアントはEclipseベースのRDi, RADなどと 統 合 可 能 RTCクライアントはVisual Studioとも 利 用 可 能 RTCクライアントとして RPGソース 開 発 の 場 合 RDi を 併 用 します RTC サーバー Webサーバー RTC Eclipse クライアント アプリケーションサーバー データベース サーバー 開 発 者 WebUI RTC Eclipse クライアント RTC Eclipse クライアント 開 発 / テスト 開 発 者 管 理 者 開 発 状 況 の 管 理 *1 計 画 / 割 り 振 り *1 WebUIからは 管 理 者 だけでなく 開 発 者 なども 状 況 を 閲 覧 することはできます 7
RTCでできること 反復計画 アジャイル 反復計画と実行の統合 キー マイルストンにリンクしたタスクの見積 Out of the boxのアジャイル プロセス テンプレート SCM フロー制御 ストリーム管理 コンポーネントレベルベースライ ン サーバ側でのサンドボックス ストリームや有効なベースライン 内のコンポーネント識別 ClearCase コネクター プロジェクトの透明性 カスタマイズ可能なプロジェクトダッシュボード リアルタイムのメトリクスとリポートの照会 プロジェクトのマイルストン トラッキングと状況の 表示 ワークアイテム 障害 拡張依頼 その他の作業 依頼 クエリーのルールおよび結果を チームメンバーと共有 承認プロセスとディスカッショ ンのサポート ClearQuest コネクター クエリー エディター ビルド ワークアイテムと変更差分の追跡 ローカル/リモートのビルドサーバ ーの利用 Antおよびコマンドラインツールの サポート Rational Build Forgeとの連携 アイテム及びプライベイト ビル ドに対するビルド定義 Jazz Team Server プロジェクトに関連する成果物を単一構造で管理 チームの環境設定やチームの親子構造およびプロ ジェクト環境の継承により 分散した開発チーム の協業をサポート プロセス定義によるロールベースの操作を実現 ルール の定義と適用 継続的な改善をサポート プロセスのエンアクトメントと強制 コンテキストに応じたコラボレーションによりチー ム メンバーや彼らの作業状況を表示 8
RTCはワークアイテム 駆 動 の 開 発 支 援 インフラストラクチャー ワークの 登 録 アサイン トラッキング 実 装 テスト ビルド 利 害 関 係 者 リーダー 開 発 者 ビルド 担 当 者 2アサイン 見 積 もり 1ワークアイテム を 登 録 3 開 発 &テスト 実 績 値 を 入 力 4コンパイル し ビルドを 作 成 反 復 反 復 反 復 計 画 管 理 ワークアイテム 管 理 Rational Team Concert ソース 管 理 包 括 的 なコラボレーティブ インフラストラクチャー リリース 管 理 - メンバー 管 理 - 自 動 データ 収 集 &レポート 作 成 9
ワークアイテム タスク 障 害 課 題 などのタイプ 設 定 タイプ 毎 に 属 性 を 設 定 可 能 Webブラウザー RTCクライアントいずれからも 表 示 編 集 可 能 所 有 者 = 作 業 担 当 者 10
特 定 の 期 間 の 作 業 リスト: 計 画 各 メンバーの 作 業 およびそのステータスを 容 易 に 把 握 作 業 負 荷 状 況 各 メンバーの 作 業 ドラッグ&ドロップで 作 業 の 割 り 当 てを 変 更 作 業 ステータス 見 積 この 作 業 は2 時 間 の 見 積 ま だ0 時 間 しか 消 費 されてない 11
自 分 に 割 り 当 てられた 作 業 の 確 認 作 業 担 当 の 立 場 から ダッシュボードに 自 分 が 担 当 する 作 業 一 覧 を 表 示 させて 確 認 する ( 計 画 ビューで 確 認 する 方 法 もあ る) Webブラウザー Eclipse マイ ワークビューで 確 認 する 12
作 業 状 況 の 報 告 ワークアイテムのステータスを 変 更 するだけ 進 捗 管 理 も 行 う 場 合 消 費 時 間 を 入 力 することで 進 捗 度 合 いを 確 認 可 能 担 当 者 は 作 業 着 手 や 完 了 などでステータスを 変 更 しワークアイテムを 保 存 この 結 果 は 計 画 ビューや ダッシュボードに 即 座 に 反 映 必 要 に 応 じて 消 費 時 間 (あるいは 残 り 時 間 )を 入 力 する ワークアイテムのステータス や 遷 移 のルールは 管 理 者 画 面 にてマトリックス 形 式 で 設 定 13
ダッシュボード チームの 作 業 状 況 を 簡 単 に 把 握 できる ポータルを 自 由 自 在 に 編 集 可 能 作 業 の 消 化 状 況 チーム 全 体 の 進 捗 ワークアイテム 情 報 各 メンバーの 作 業 ワークアイテム 情 報 14
ツールがプロセス(ルール)をガイドしてくれる 開 発 ルールをメンバーに 守 ってもらうためのしくみを 提 供 自 ら 意 識 して 行 う 反 応 する 煩 わしい 必 要 な 時 だけ 役 に 立 たない 教 えてくれすぐ 直 せる チーム メンバーのミスを 無 くす プロセスに 従 うためのメンバーの 心 の 負 担 を 無 くす 例 ) ワークアイテムと 紐 付 けをせずに 成 果 物 をリポジトリーに 保 存 してはいけない 例 )ワークアイテムの 必 須 属 性 が 入 力 され ていない 15
開 発 標 準 化 ガバナンス チェックリストを 作 成 し クリアしないと 作 業 状 況 の 更 新 ができないよう にすることもできる 例 )これらがチェックされていないと 次 の ステータスに 変 更 することができない 16
分 散 並 行 開 発 を 支 える 先 進 的 なソース 管 理 リポジトリー ソースも 含 めたプロジェクトの 成 果 物 を 格 納 する 場 所 履 歴 管 理 が 可 能 ストリーム サーバーに 保 持 されるプロジェクトのマスターリポジトリー リポジトリー ワークスペース 個 々の 開 発 者 が 保 持 できる 作 業 用 のリポジトリー リポジトリー 内 の 任 意 の 変 更 を チームメンバーに 送 信 することが 可 能 Jazzサーバー リポジトリー ワークスペース チェックイン/ロード RTCクライアント ストリーム 送 信 / 受 諾 リポジトリー ワークスペース ローカル ワークスペース 即 時 に 切 り 替 え 可 能 リポジトリー ワークスペース チェックイン/ロード RTCクライアント ローカル ワークスペース 17
ベースラインを 利 用 したバージョン 管 理 ある 特 定 の 時 点 のバージョン 構 成 をコピー( 保 管 )したもの 変 更 履 歴 として 保 管 され 後 から 参 照 できる ストリームやリポジトリ ワークスペースの 初 期 値 として 利 用 特 定 のベースラインからストリームやリポジトリ ワークスペースを 作 成 できる ソースを 複 数 のメンバーおよびプロセスで 共 有 するために 利 用 できる コンポーネントは 複 数 のベースラインを 持 つことができる 特 定 のベースラインと 他 の 変 更 履 歴 を 比 較 できる 現 在 のストリームやリポジトリ ワークスペースと 比 較 他 のベースラインと 比 較 バージョン 構 成 変 更 履 歴 ベースライン 1 ベースライン 2 ベースライン 3 SETUP.CLLE(12) ORDENTR.RPGLE(3) PROCESS.PRLE(8) SLTCUST.DSPF(1) SLTPART.DSPF(5) 2015 International Business Machines Corporation 18
RTCによる 派 生 開 発 RPG ソースメンバー 統 合 ブランチ INTEG 1 ブランチによりファイル 単 位 での 同 時 並 行 開 発 を 実 現 する ブランチを 用 いて 派 生 関 係 を 自 動 的 に 記 録 する V1 開 発 ブランチ V1_DEV 1 2 V1_EU 対 応 版 マージ V1_US 対 応 版 V1_EU V2 開 発 ブランチ V2_DEV 2 V1リリース V1_US 1 1 1 2 マージ 3 V2リリース 19
変 更 管 理 プロセス(ワークフロー) 変 更 依 頼 ワークアイテムでステータス 等 管 理 される ID 見 出 し 依 頼 タイプ 担 当 優 先 度 状 態 RATLC001 予 期 せぬデータ 破 壊 不 具 合 Alex 高 い 対 応 中 RATLC014 メール 通 知 機 能 実 装 機 能 追 加 Tim 中 クローズ プロジェクト 関 係 者 保 留 RATLC010 レポート 機 能 要 求 変 更 要 求 変 更 Jana 中 アサイン 済 登 録 保 留 保 留 アサイン アサイン オープン 解 決 検 証 OK 登 録 済 アサイン 済 対 応 中 解 決 済 クローズ 重 複 クローズ 却 下 重 複 CCB 開 発 者 統 合 担 当 者 テスト 担 当 者 プロジェクト マネージャ 20
第 2 章 RTCを 活 用 したIBM iのソース 構 成 管 理 2015 International Business Machines Corporation 21
開 発 の 一 般 的 な 流 れ IBM i 開 発 リソース 1 管 理 者 により 開 発 対 象 の 割 り 振 り 開 発 進 捗 などを 管 理 2 各 自 ワーク 用 ライブラリーに て 対 象 ソース を 編 集 3 開 発 者 が 編 集 したソース を コンパイルし リリー ス 準 備 を 行 う 5250 5250 管 理 者 5250 開 発 者 ビルド 担 当 者 22
RTC 環 境 での 基 本 的 な 開 発 の 流 れ IBM i 開 発 リソース 5RTC 上 の 開 発 リソースを 1IBM i 上 の 開 発 リソース をローカルPC 上 に 取 り 込 む 2ローカル PC 上 の 開 発 リソースを RTCに 登 録 して 共 有 RTC 開 発 リソース ビルドしてIBM i 上 に 配 置 開 発 リソース ビルド 担 当 者 RDi RDi 3RTC 上 の 開 発 リ ソースをローカル PC 上 に 取 り 込 んで 編 集 4 編 集 した 開 発 リ ソースをRTC 上 登 録 してチームで 共 有 管 理 者 開 発 リソース RDi 開 発 者 開 発 リソース RTC: Rational Team Concert RDi: Rational Developer for i 23
RTCでのソース 管 理 の 流 れと 構 造 RTC 上 のソースを 参 照 編 集 するためには IBM i の ライブラリー と1 対 1の 関 係 にある iプロジェクト を 使 用 します RTCサーバー(ストリーム) 上 にあるソースを リポジトリー ワークスペ ース と 呼 ばれるサーバー 上 の 個 人 領 域 を 介 し ローカルにダウンロード( ロード)し 編 集 します サーバーに 提 出 されると 他 の 開 発 者 からも 編 集 内 容 を 確 認 すること ができます iプロジェクト 単 位 でソースは 管 理 されます ローカル ワークスペース PGM ソース チェックイン リポジトリー ワークスペース PGM ソース 提 出 ストリーム PGM ソース i プロジェクト ロード コンポーネント 受 諾 コンポーネント ローカルPC RTCサーバー 24
ソースの 編 集 開 発 者 は RDiを 使 いRTCに 登 録 されたソースを 編 集 します RDiにはLPEXエディターという SEU 同 等 機 能 を 有 した 編 集 ツールがあります iプロジェクトに ソース 物 理 ファイルを 作 成 します エクスプローラー 形 式 でソースにアクセスす ることができます 変 数 や 標 識 など ア ウトライン ビュー で 確 認 できます 25
ソースのチェックイン/ 提 出 編 集 を 終 えソースを 保 存 し 変 更 内 容 をRTCにチェックイン/ 提 出 します 提 出 することで 変 更 内 容 がRTC 上 に 反 映 されます 26
コメントの 入 力 ワークアイテムとの 紐 付 け RTCへの 提 出 時 にコメントの 記 入 ワークアイテムと 紐 付 けることで ソ ースの 変 更 経 緯 を 記 録 することができます ワークアイテム フリーコメ ントの 入 力 関 連 するワーク アイテムに 紐 付 け 27
ソースの 比 較 履 歴 の 表 示 RTCに 提 出 されたソースは すべて 履 歴 が 記 録 され バージョン 間 で 比 較 することができます ソースの 比 較 ソースの 変 更 履 歴 28
ビルド(コンパイル)の 実 行 RTCに 提 出 されたソースは ビルド エンジンによりビルドされます ビルド 結 果 にコンパイル 結 果 ログ 依 存 関 係 などをレポートで 確 認 できます コンパイル 結 果 29
RTCを 使 ったビルドの 特 徴 : 依 存 関 係 ビルド RTCでは リソース 間 の 依 存 関 係 を 自 動 で 検 出 し 適 切 なビルド 処 理 を 実 行 します この 例 では ディスプレイ ファイルを 変 更 したことにより 影 響 を 受 ける( = 依 存 関 係 にある) 2つのプログラムが 自 動 で 検 出 され コンパイルされたこ とを 示 しています ビルド レポート 30
プログラム オブジェクトのパッケージ/デプロイメント RTCビルドで 生 成 されたオブジェクトをパッケージ (SAVFにアーカイブ) し テスト 環 境 本 番 環 境 などに 転 送 展 開 することができます パッケージ/デプロイメントの 結 果 は レポート 形 式 で 確 認 でき ワークアイ テムと 紐 付 けすることもできます RTC サーバー ビルド 要 求 RTC ビルド エンジン パッケージ 要 求 デプロイ 要 求 ビルド パッケージ デプロイメント オブジェクト 保 管 オブジェクト 復 元 ビルド コンパイル オブジェクト SAVF 転 送 SAVF デプロイメントメント オブジェクト RTC ビルド パッケージ サーバー RTC デプロイメント サーバー 31
RTCを 使 う 開 発 ツールの 前 提 :Rational Developer for i RPG, COBOL, CL, DDS の 統 合 開 発 環 境 IBM i 上 のファイル アクセス 検 索 編 集 コンパイル 実 行 機 能 豊 富 なエディター アウトライン ビュー コンテンツ アシスト 構 文 への 色 づけ アプリケーション ダイアグラム ILEプログラムの 可 視 化 わかりやすい 対 話 式 デバッグ 機 能 バッチ 対 話 型 Webアプリケーション DDSのビジュアル 設 計 機 能 スクリーン デザイナー レポート デザイナー Rational Team Concert との 連 携 32