DevOpsワークショップ

 ビジネス on ITの中でもたびたび記事の中で取り上げてきた、ソリニア(Solinea)。今回はソリニアがサービスメニューとして提供しているDevOpsの基本的なワークショップをレポートします。

▼ハイライト
1. DevOps 4つの柱
2. ツール群のご紹介

1. DevOps 4 つの柱

 2016年12月、サンフランシスコに本社を構えるソリニアからSethとJoelが来日しました。 JoelはAutomation Architectの第一人者(写真左)。Sethは20年以上テクノロジーの世界で活躍しており、ソリニア社のVice Presidentです(写真右)。

DevOps ワークショップ

Joel 氏と Seth 氏

 Sethよりワークショップの冒頭、アメリカに実在する企業を例として考えていきましょう、とありました。
 今回の事例となった企業はAcme Inc.(アクミ社)です。同社は米国でブログなどのプラットフォームを提供している会社です。ソリニア社はCI/CD (Continuous Integration / Continuous Delivery)によるコンサルティングを実施し、アクミ社の環境を変えていくことに成功しました。

1-1. アクミ社が抱えていた問題

・複雑な組織の問題

  システムはクラウドに移行することなく、それぞれの部門でITを扱っていました。つまりサイロ型のプロジェクトが個々に走っていたのです。

  • 危険なファイル共有(バージョンの管理をしていない)
  • 組織間の問題(どの部門もコントロールできない)
  • ITガバナンスが存在しない

・解決策

問題を解決していくには、ソリニア社が提唱する、Four Pillars of DevOpsで考えていく必要があるのです。以下がその4つの柱です。

  1. カルチャー(culture)
  2. プロセス(process)
  3. 人 (people)
  4. テクノロジー (technology)

1-2. カルチャー

 カルチャーはDevOpsでは必ず失敗に陥るポイントでもあります。コラボレーション、ビジョンの共有が大切です。組織でレガシーなアプリケーションを使っていたりすると本当に大変です。なぜなら、誰も変化を望んでいない、変化に恐れを感じているからです。
 各自で違う問題をかかえていることが多く、組織を超えて解決するビジョンが必要になります。

1-3. プロセス

 次にプロセスを見ていきましょう。ワークプロセスにおいては、ソースコード/コンフィグレーション情報/ソフトウェアパッケージ/スクリプト類/自動生成のためのコードなど、開発に関連するすべてのアウトプットを対象にして履歴管理が必要です。プロセスの自動化を考える場合に重要なことです。また、各プロセスで挙げられた課題は、マネージャが割り振るのではなく、各担当者が自発的に取得し解決するようにすることでプロセスの停滞を防ぐことも重要です。

1-4. 人

 次は人、(People)です。DevOpsのプロセスに関わる人たちは、ソースコード管理、ソフトウェアのビルド自動化、テスト自動化、管理操作のスクリプト化などに必要となるスキルセットの習得が必要です。

1-5. テクノロジー

 最後にテクノロジーです。コラボレーション、ソースコードの管理、コードのレビュー、テスト、コードのビルド、自動化、IaaS/PaaS等のさまざまな要素について標準化とインターフェースの標準化を考えていく必要があります。

2. ツール群のご紹介

 米国の企業、アクミ社では社員が互いに”ツール”を利用していませんでした。つまりすべてマニュアルの仕事だったのです。ここでソリニアが実施していった手順は組織が利用しているツールを洗い出すことでした。
ツールは以下に分類されるのではないでしょうか。

  • コラボレーション
  • ソースコード管理
  • ソフトウェアビルド
  • ソフトウェアオーケストレーション
  • ソフトウェアテスト

2-1. コラボレーション

  • Tuleap service now、 confluence、 JIRA
  • すべてタスク管理に関するものです。

2-2. ソースコード管理ツール

  • Github、bitbuket、git

2-3. ソフトウェアビルド

  • Maven、Gradle。Apatch ant

2-4. ソフトウェアオーケストレーション

  • Jenkins、Team city、 Travis CI、Bamboo
  • Jenkinsがとくによく知られています。どれもソースコードの管理などを実施してくれるツールです。

2-5. ソフトウェアテスト

  • Junit、cucumber、jbehave

2-6. コードレビュー

  • Gerrit、phabricator、crucible
  • バグを発見してもらえる重要なツールです。
  • いろんな角度からコードをチェックすることができるので自身のコード改良のいいきっかけになります。

まとめ

 自社の環境に適したツールを探していくことが重要にはなりますが、実際にDevOpsワークショップを体験してみませんか。ご質問やお問い合わせお待ちしています。

お問合せボタン

関連記事はこちら