ANAシステムズ株式会社 アプリケーションエンジニアリング部 第一チーム チームリーダー 菊池 範幸氏(写真右)、光岡 佑子氏(写真左)に、アトラシアン製品を導入した経緯と効果について詳しく聞きました。
国内外におよそ175の航路を展開(2014年2月現在)するANA(全日本空輸)グループ。その情報システムを支える企業としてさまざまな要請に応えるとともに、最新のビジネスモデルを提案することでシステム面からフライトの信頼性と安全性を支えてきた「株式会社ANAコミュニケーションズ」と「全日空システム企画株式会社」の2社が合併し、2013年4月1日、ANAシステムズ株式会社は設立された。IT戦略の企画・立案から、システムの設計開発、保守運用まで、長年に亘り培ってきた技術と経験により、ANAというワールドブランドの価値向上を支えている。
私たちの知っている限り、ANAシステムズでは合計4部署でアトラシアンのJira(ジラ)を利用しているようですが、ほかの部署のことはわからないので、アプリケーションエンジニアリング部 第一チームにおけるJiraとCrowd(クラウド)の利用状況を中心に話をさせてください。
アプリケーションエンジニアリング部 第一チームでは、国内線向け基幹系システム「able-D(エーブルディ)」の開発・改修を担当しており、その障害管理ツールとしてJiraを、さらには構成管理システム全体のユーザ管理ツールとしてCrowdを利用しています。なお、まだ正式な利用は開始していませんが、Confluence、Gliffy、Team Calendarsといったアトラシアン製品も導入の準備を進めているところです。
able-Dは、国内線の予約、発券から搭乗に関するほぼすべてを網羅するエアライン業務の中枢システムです。1988年の稼働開始以来34年間、メインフレーム上で開発・運用してきましたが、2013年2月、新しくオープンシステムへと全面刷新し、新国内線旅客システムとして稼働を開始しました。
システムは、「予約」、「発券」、「搭乗」という3つのサブシステムから構成されており、エアライン専用のパッケージソフト(AirCore)をベースに、搭乗手続きをせずに直接保安検査場にお進みいただける「スキップサービス」や「コンビニ決済」といった、ANA独自のサービスや機能を追加しています。
システムの規模は公開していませんが、ANA国内線一日約800便、搭乗者10万人以上をハンドリングするシステムです。
Apache SubversionとJiraのユーザを一元管理するためCrowdを使っています。原則としてCrowdに登録されているユーザしか、構成管理サーバにアクセスできないように設定しています。
その中でJiraは、変更のきっかけとなった要求や障害報告、そして変更履歴を管理する障害管理ツールとして利用しています。
構成管理ツール(Apache Subversion)と連携することで、成果物に対する変更がどの要求に基づいて行われたものなのかを紐付け、把握できるようにしています。また、Apache SubversionとJiraの連携には、Jiraのアドオン「Subversion Plus」を使用しています。
障害管理プロセスにおけるJiraの主な機能は次の通りです。
Apache SubversionとJiraのユーザを一元管理するためCrowdを使っています。原則としてCrowdに登録されているユーザしか、構成管理サーバにアクセスできないように設定しています。
Jiraを導入する以前、すなわち開発フェーズでは、別の構成管理ツールと変更・障害管理ツール(IBM ClearQuest)を使用していました。
新システムの稼働開始に合わせて、構成管理システムを刷新しました。別の言い方をすれば、新システムの開発フェーズから運用・改修フェーズへの移行にともない構成管理システムを刷新し、Jiraの利用も開始しました。
開発フェーズでは、システムの導入を全面的に支援してくれた協力会社が中心となり、導入・開発を進めてもらいましたので、協力会社が使いやすく、条件内でベストだと考える構成管理環境を構築してもらいました。
しかし、運用フェーズに移行するにあたり、今度は当社が中心となり運用や改修、機能追加をしていくことになります。また、開発フェーズと運用フェーズでは、開発体制や手法なども大幅に変わり、小回りの利くアジャイル的な開発が多くなると見込み、構成管理環境をシンプル化することにしました。
旧構成管理環境は、構成管理ツールと変更・障害管理ツールを密に連携させ、細かな部分まで自分たちが使いやすい環境を構築できました。大規模なシステムを統合的に管理するためには必要な環境でした。一方、どのシステムにおいても同じだと思いますが、長年、改修を繰返したことによりツールの保守性が低くなり、高コスト化を招きました。
運用・改修フェーズでは、細かい枝葉のような作業が同時並行的に多発しますので、小回りが利いて、レスポンスが速く、プロセスの変更も容易で、運用面で手間のかからない環境が必要でした。
構成管理環境を再構築するにあたり、開発フェーズと完全に同じ機能を実現しようとは考えませんでしたが、次の5つの項目を要件として満たす必要があると考えました。
次の9つのポイントが、Jiraを採用した主な理由です。
データの移行に関して、名寄せ作業の上、開発が完了しているデータを省き、1/5程度の分量に絞り込みました。また、正式なリリースの前に、2か月ほどユーザテストを実施し、利用者の声も確認しました。
構成管理環境の再構築、そして障害管理ツールとしてのJira導入のめざすところは効率化と精度向上です。
その点では、だれが、何を、いつ変更したのかという履歴管理を効率的かつ確実にできるようになったこと。その環境を、低コストなツールで実現できたことは大きな成果です。
また、新たな構成管理環境を導入後、利用者から反響がないことも導入効果の1つだと考えています。担当や会社が異なるこれだけのエンジニアが同じ環境で作業をすると、問題や使い勝手が悪ければ、クレームとして必ず上がってくるからです。各利用者が問題なくスムーズに使いこなしている証だと解釈しており、設計・構築を担当者した私たちにとっては、重要な成果の1つだと捉えています。Jiraを選んだのは良い選択だったと確信できました。
もちろん、Crowdによるユーザ管理の一元化による、ユーザ管理の効率化とセキュリティの強化も重要なポイントです。
もちろん、それぞれのツールで機能の違いや長所・短所がありますので、できないことや運用でカバーしなければならないこともありました。しかし、コストの差が機能の差になっていると感じることはほとんどなく、むしろレスポンスや使い勝手は向上したと感じることのほうが多いほどです。
Jiraに関しては、まだその潜在能力をすべて使い切っているとは考えていません。タスク管理やダッシュボード、作業分析といった機能を活用し、システムの生産性や機能向上に役立てていきたいと考えています。
また、情報共有の効率化を実現するConfluenceの利用を開始し、作業環境の充実を図っていきたいと考えています。ConfluenceとJiraは、シームレスな連携が可能で、やり取りするメールの数を減らし、情報やノウハウの共有だけでなく、離れた開発拠点のエンジニア同士がシームレスにコラボレーションできる環境を実現できると聞いているので、とても期待しています。
管理者側からすると、プロジェクトを進める上でレポーティングの部分はとても重要で、かつ手間のかかる作業でもあります。せっかく作業履歴を残しているので、レポートやレポート作成に必要な基礎データを、もっと自由かつ容易に出力できるようになるといいですね。追加機能で対応できる部分もあると聞いていますので、実施したいことを整理しサポートベンダーを通じて相談できればと思っています。
また、適応範囲が広く活用の参考にしたいので、事例などもさらに幅広く紹介してもらえればと思います。
選定理由でも話をしましたが、リックソフトのサポートに関してはとても高く評価しています。こんなに丁寧かつ迅速に対応してくれるベンダーをほかに見たことはありません。今後も、これまでと変わらないサポートを期待しています。
菊池様、光岡様、本日はお忙しい中、貴重なお話をありがとうございました。