Screwdriverのシステム開発の進め方/やり方/流れや方法/手法/工程/手順

Screwdriverの導入は6段階で進めます。最初の要件整理で自動化の範囲を決め、最後の定着まで、段階ごとに完了条件を満たしながら進めると、安全な継続的デリバリーにつながります。

本体を動かすだけでは導入は終わらず、実行基盤やSecret、監視、運用ルールも一体で動きます。

▼全体ガイドの記事
・Screwdriverのシステム開発の完全ガイド

Screwdriverのシステムの全体像

Screwdriverを中心に、SCM・Webhook、API・Web UI、Launcher・実行エンジン・データストアがつながる図。
コード変更を起点に、各コンポーネントがデプロイまでを支えます。

Screwdriverは、ソースコードの変更を起点にジョブを実行する継続的デリバリーのプラットフォームです。ビルドから各環境へのデプロイまでを、一本の流れでつなぎます。

SCMからWebhookを受けると、API、Web UI、Launcher、実行エンジン、データストアなどが連携して動きます。そのため、Screwdriver本体を動かしただけでは導入は完了しません。

業務アプリケーションではなくデリバリー基盤

Screwdriverは、開発したソフトウェアを検証し、リリースできる形で各環境へ届ける基盤です。ERPや販売管理のように業務データを登録する製品とは、性格が違います。

そのため、要件書には業務画面ではなく、開発から運用までの流れを書いておきます。たとえば、Pull Requestで自動テストを実行し、承認後に検証環境へデプロイする流れが考えられます。

変更通知から後続ジョブ実行までの基本フロー

標準のフローは、コミット、Pull Request、タグ作成などのイベントを起点に進みます。処理は次の順で行われます。

  1. SCMから署名付きWebhookがScrewdriver APIへ届きます。
  2. APIが実行エンジンへジョブを渡します。
  3. Launcherが指定コンテナでコードを取得し、コマンドを実行します。
  4. 必要に応じて、DockerイメージやパッケージをBuildの成果物として保存します。
  5. 完了通知を受けたAPIが、次のジョブを起動します。

この流れは、Screwdriver公式ガイドでも示されています(出典: Screwdriver Guide「Overall Architecture」)。

複数チームの標準化に向く場面と小規模での比較

複数チームで品質基準をそろえる場合は、screwdriver.yamlをコードレビューの対象にできます。テンプレートやBuild Clusterの共通化も可能です。

単一リポジトリで簡単なCIを始めるだけなら、マネージドCIのほうが構築と保守の負担を抑えやすいかもしれません。

採用前には、リポジトリ数とデプロイ環境数を整理します。同時実行数と既存Jenkinsの移行範囲も、あわせて押さえておきます。そうすることで、採用理由を数字で説明できます。

ポイント

Screwdriverが合うかは、複数チームで品質基準をそろえたいか、単一リポジトリの簡単なCIで足りるかで考えます。業務アプリではなくデリバリー基盤だと社内で共有しておくと、要件の認識がずれにくくなります。

Screwdriverのシステム開発の進め方|6フェーズの流れ

Screwdriver導入を要件整理・選定、設計・開発、テスト・稼働、定着の4つのパネルで示した図。
各工程の成果物と完了条件を決めて、順に進めます。

各段階で成果物と完了条件を決めておき、設定が動いただけでは完了とせず、条件を満たしてから次の段階へ進みます。

アプリ担当だけでなく、インフラ・セキュリティ・運用の担当者も早い段階から参加させます。パイプラインや実行基盤、Secret、監視、運用ルールは一体で動くためです。

1. 要件整理|自動化する流れと成功指標

まず、自動化する範囲と人が承認する箇所を決めます。そのうえで、次の項目を洗い出します。

  • 開発対象:リポジトリ数、言語、ビルド時間、テスト種別
  • 運用条件:デプロイ先、環境数、リリース頻度、既存CI、Secretの種類
  • 現状指標:デプロイ頻度、変更リードタイム、失敗率、復旧時間、手作業時間

現状指標を導入後と比べれば、効果を確かめられます。加えて、Pull Requestの検証時間、本番承認者、失敗時の再実行箇所を決めます。成果物の保管日数と、ログへの個人情報・Secretの混入も確認しておきます。

PoCの対象には、重要度が低く、代表的なビルド・テスト・デプロイを含む1サービスを選びます。短期間で判断材料を得られるからです。

2. 選定|Screwdriverを置く場所と運用体制の比較

選定では、実行環境だけでなく、接続先と委託先の対応力も見ます。

  • 実行環境:Kubernetes、Docker、既存Executor
  • 連携・運用:SCM認証、AWS・Azure・GCP・オンプレミス接続、CI移行、脆弱性対応
  • 委託先:隣接実績、夜間連絡、screwdriver.yamlの作成経験

クラウドのKubernetesは拡張性があり、Build Clusterを分けやすい方法です。一方で、ノード、ネットワーク、レジストリ、ログ、バックアップの運用が必要になります。

外部に委託する場合は、KubernetesやDevSecOpsの隣接実績を、直接実績と分けて確認します。OSS保守やCI/CD移行の実績も、同じように見ます。

小規模に検証する場合は、Dockerや既存Executorを使い、本番基盤へ段階的に移す方法もあります。

3. 設計・開発|パイプラインと実行基盤の構築

接続構成とPipelineを組み立て、実行負荷やSecretの扱いも含めて、安全に運用できる設計にします。

  • 接続構成:SCM、API・Web UI、Store、Queue、Launcher、実行エンジン
  • Pipeline:PRで静的解析・単体テスト・依存関係を検査し、コミット後に成果物を作る
  • ジョブ:requiresで依存を示し、共通処理はテンプレート化する
  • Secret:PR用と本番用を分け、PRジョブには原則渡さない

構成図には、レジストリやログ・監視、Secret管理、データベースも描き込みます。

公式のAWS例では、アプリとBuildをKubernetes上で動かし、Build用のNamespaceを分けています(出典: Screwdriver Guide「Setting Up a Screwdriver Cluster on AWS using Kubernetes」)。

本番では、ノード上限やPodリソース、同時実行数を決めて、ビルド負荷が広がるのを防ぎます。ネットワーク境界も、あわせて決めます。ただし、ジョブを細かく分けすぎると管理対象が増えるため、失敗箇所の特定と再実行のしやすさを基準に分割します。

成果物は、承認後に検証環境から本番環境へと進めます。

Secretは暗号化して保存されますが、ジョブでは環境変数として扱われます。また、allowInPRの初期値はfalseです(出典: Screwdriver Guide「Build Secrets」)。

4. テスト|正常系と失敗時の復旧の確認

テストでは、イベントの発生から承認後の昇格まで、次のシナリオを検証します。

  • 実行経路:PR作成、コミット、タグ、手動再実行、後続ジョブ停止
  • 成果物:取得・再利用、承認後の昇格、重複デプロイの有無
  • セキュリティ:PRから本番Secretへ到達せず、ログに認証情報が出ないこと

失敗時に再実行するジョブも確認します。Git権限とScrewdriverの操作権限は連動するため、両方をそろえて設計します。

権限は、Guestが状態とログを参照し、Collaboratorがビルドの開始と停止を行い、AdminがPipelineとSecretを管理する設計です(出典: Screwdriver Guide「Authentication and Authorization」)。

5. 稼働|段階的な切り替えと本番負荷の確認

全リポジトリを一斉に移行せず、代表チームから段階的に導入します。移行は次の順に広げていきます。

  1. 低リスクのサービスを移し、成功率、リードタイム、実行時間を旧CIと比べます。
  2. 失敗時の復旧時間と問い合わせ件数も比較します。
  3. 同じテンプレートを使えるチームへ広げます。
  4. 最後に本番影響の大きいサービスを移します。

旧CIは一定期間並行して稼働させ、切り戻しの条件を文書で定めます。あわせて、監視通知の宛先と障害時の一次対応者も決めておきます。

Screwdriver本体とBuild Clusterの再起動を確認します。データベースと成果物のバックアップ、復元テスト、ロールバックの方法も確かめます。

2025年の公式リリースでは、Secret・APIトークンの管理UI、PR不整合検知、ログ量制御などが追加されました。

採用時点の互換性と保守の状況は、案件ごとに確認します(出典: Screwdriver公式ブログ「New bug fixes and features – April 2025」)。

6. 定着|テンプレートとKPIによる運用改善

作成担当者だけに運用が偏らないよう、手順書を整えます。手順書には、次の内容を盛り込みます。

  • 共通設定:テンプレート、命名規約、ジョブ分割基準
  • 日常運用:Build更新、Secretの申請・見直し、ログ保持期間
  • 移行・障害:本番移行チェックと障害時の連絡先

毎月、デプロイ頻度と変更リードタイム、失敗率を確認します。平均復旧時間、ビルドの成功率と待ち時間も見ておきます。

再実行回数、Build Clusterの利用率、ログと成果物の保存量も確認します。数値が悪化したときは、ジョブの直列化や巨大なイメージを調べます。重複したテストや無期限の保存なども調べます。

Yahoo! JAPANの公開事例では、クラスタやジョブの増加に伴い、Pipelineが巨大化して運用コストが増えたことが紹介されています。共通化する場合も、自動生成なしでは直せない規模にしないよう判断する必要があります。

ポイント

各段階で成果物と完了条件を満たしてから次へ進みます。迷ったら、重要度の低い1サービスで段階導入を試し、旧CIとの比較と切り戻し条件を見てから広げるかを決めます。

Screwdriverのシステム開発にかかる費用相場と内訳

検証・PoC、小規模チーム、本番標準基盤、全社展開などの4ケースについて、初期費用レンジを比較した横棒図。
対象範囲が広がるほど、初期費用の目安も大きくなります。

ScrewdriverはOSSですが、導入費用は本体のライセンス料だけでは決まりません。クラウドやKubernetes、ビルドノードの費用がかかります。データベースやレジストリ、ログ・監視の費用もかかります。

移行、セキュリティ設計、保守の費用も発生します。ただし、日本向けのScrewdriver固有の標準価格は公開されていません。

次に示すのは、類似するDevOps・Kubernetes導入の公開情報と、要件別の作業量をもとに置いた予算レンジです。確定した見積もりではなく、比較の起点になる数字です。

導入範囲別の初期費用と期間の目安

検証から全社展開まで、導入ケースごとの初期費用と期間を比べます。

  • 検証・PoC:1リポジトリ、Dockerなどの簡易環境、サンプルPipelineで0〜100万円、1〜4週間
  • 小規模チーム:SCM連携、複数ジョブ、Secret、ログ、基本監視、運用手順まで整えて300〜600万円、1〜2か月程度
  • 本番標準基盤:複数チーム向け。テンプレート、Build Cluster分離、成果物管理、権限、監視、障害訓練を含め600〜1,200万円、2〜4か月程度
  • 全社展開など:Jenkins大規模移行、複数クラスタ・リージョン、DR、24時間運用を含む場合、1,500万円以上、6〜12か月以上の可能性

PoCは社内工数が中心なら外部支出を抑えられる場合があります。また、上記は公式価格ではなく、構成と作業範囲からの推定レンジです。

本体・基盤・移行・運用に分けた費用の内訳

見積書では本体費用にまとめず、基盤、移行、運用・保守に分けて示してもらいます。

  • 基盤:実行環境、データストア、認証、ネットワーク、監視、バックアップ
  • 移行:screwdriver.yaml、Pipeline、Buildイメージ、テストデータ、成果物保管先
  • 運用・保守:運用設計、手順書、教育、障害対応、更新、脆弱性対応

アールワークス(出典: 「Kubernetesを導入して、アプリデプロイやインフラ運用を自動化したい」)は、Kubernetesの構築・設定代行を税抜277万2,000円で公開しています。

この金額には、クラウド利用料やライセンスのほか、テスト、監視、アプリ側の作業は含まれていません。

この公開料金は、Screwdriver導入の総額とはみなさず、Pipeline移行と運用設計は別に見積もります。

実行量と保持期間で変わるランニングコスト

ランニング費用は、実行量と保存に関わる項目を積み上げて考えます。

  • 実行基盤:常時稼働ノード、ビルド同時実行数・時間
  • 保存・運用:レジストリ、ログ・メトリクス、バックアップ、外部Secret管理
  • 支援:保守支援。月次で実行時間と失敗再実行の増減を確認

目安として、小規模なら月5〜30万円程度、中規模以上なら月30〜150万円以上を仮置きできます。ただし、ノード数やビルド回数、ログ保持期間によって大きく変わります。

従量課金では、検証環境の停止時間も含めて試算します。無期限の保存は、ストレージ費用や検索の負荷を増やすため、保存期間と削除の条件、監査用の保管先を決めておきます。

一般的な業務システムでは、初期費用の15〜25%を年間保守の目安とする考え方もあります。ただし、これはScrewdriver固有の確定率ではありません。そのため、対応時間と作業範囲を添えて提示してもらいます。

ポイント

まず導入範囲を、検証・小規模・本番・全社展開のどこに置くかを決め、そのうえで初期費用と毎月のランニング費用を分けて比べます。公開料金は総額ではない点に注意します。

Screwdriverの見積もりを取る際のポイント

見積金額だけを見ると、移行や運用が含まれていない提案を見落とすことがあります。そのため、RFPや依頼書で対象範囲を具体的に示します。

依頼書には、対象リポジトリ数、既存CI、SCMを書きます。加えて、実行基盤とデプロイ先、Secretの扱いも盛り込みます。

成果物と監視、保守の範囲も含めます。納品物と検収条件も、あわせて示してもらいます。そのほかの条件は、次の見出しで整理します。

「CI/CD環境一式」のような曖昧な項目は、含む作業と含まない作業に分けてもらいます。

数字で示す要件と対象範囲

見積もりの前提をそろえるために、対象範囲とセキュリティ条件を一覧にしておきます。

  • リポジトリ:数、言語、ビルド時間、テスト数、依存サービス
  • 成果物・環境:種類、デプロイ先、環境数、リージョン・顧客ごとの差
  • 権限・ログ:PR Secret、権限分離、マスキング、監査ログ
  • 安全・委託条件:スキャン、署名、外部接続、保存・削除、事故連絡

たとえば10リポジトリでも、共通テンプレートを使うか、10種類の独自ジョブを作るかで工数が変わります。また、環境が開発・検証・本番の3つかどうかも明確にします。

リージョンや顧客ごとに環境が分かれる場合は、その数も確認します。個人情報を含むなら、委託先のアクセス記録や保存期間を決めます。削除の手順と事故時の連絡体制も決めておきます。

要件が追加されると基盤設計と見積もりが大きく変わるため、未確定の項目は仮定条件として残しておきます。

技術・移行・保守などの観点での比較

各社の提案は、同じ観点をそろえて比べます。

  • 技術:直接経験、Executor、Kubernetes・クラウド構築
  • 移行:Jenkins移行、サンプル設定、構成図、移行手順
  • 保守・納品:OSS更新、障害連絡、監視、手順、教育資料
  • 費用:初期、クラウド、ライセンス、月額保守、追加変更単価
  • 引き渡し:管理者権限、ソース・YAML・IaC・ログ・成果物・Secretの削除・返却

Screwdriver専門の公式認定会社が広く公開されているわけではないため、直接実績と隣接技術の実績を分けて判断します。

提案書には、サンプルのscrewdriver.yamlと構成図を含めてもらいます。移行手順と障害時の連絡フローも示してもらい、担当者の理解度を見ます。

失敗しやすいポイントと対策範囲

見積もりでは、失敗の要因と対策の範囲も確認します。導入後に手戻りが生じやすい箇所を洗い出し、どこまでを対策に含めるかを決めておきます。

  • Pipeline:巨大化と設定修正コスト。過度な巨大化は避ける
  • セキュリティ:Secretの過剰公開
  • 基盤・保存:容量不足、ログ・成果物の無期限保存
  • 品質:テスト不足での本番移行

Yahoo! JAPAN Tech Blogの「CI/CDの巨大パイプライン、デプロイを高速化するには?」では、ジョブ分割、依存関係の明示、設定の自動生成による修正コストの改善例が紹介されています。

設定を自動生成しなければ修正できないほど巨大なPipelineは避けます。

最終確認では、PoCの成功条件、移行順位、旧CIへの切り戻しを確かめます。加えて、本番承認者と障害対応の時間帯を確認します。さらに、脆弱性修正の期限とクラウド費用の上限も確認します。

見積書や契約書にない作業は、稼働後に認識のずれを生みます。そのため、価格だけでなく、作業範囲と責任の分担が明確かどうかで選びます。

ポイント

見積もりは、対象範囲と未確定項目を依頼書で具体化してから比べます。条件をそろえた提案同士で比べると、金額の差の理由が見えやすくなります。

Screwdriverのシステム開発でよくある質問(FAQ)

導入でよく聞かれるのは、OSSの費用と既存CIとの違いです。Secretの安全性や導入期間も、採用判断や見積もりに関わるため確認します。

Screwdriverは無料で導入できますか?

Screwdriver本体はオープンソースです。ただし、無料で本番運用できるとは限りません。基盤となるKubernetesやVM、DBの費用がかかります。加えて、レジストリやログ、監視、実行時間にも費用が必要です。

構築や移行、保守の費用も必要です。PoCは社内工数が中心なら支出を抑えられる場合がありますが、本番では総保有コストで比べます。

JenkinsやGitHub Actionsがある会社でも導入する意味はありますか?

複数チーム・複数環境のデリバリーを共通基盤にまとめたい場合は、導入を検討できます。Build ClusterやPipeline as Codeを統一しやすいためです。テンプレートや成果物の昇格ルールも、あわせて統一できます。

単一サービスで短時間にCIを始めたい場合や、既存CIの運用負担が小さい場合は、移行費用を含めて現行基盤やマネージドサービスと比べます。

Pull RequestからSecretが漏れる危険はありませんか?

Pull Requestからの漏えいは、ゼロにはできません。そのため、PRジョブに本番Secretを渡さない設計が必要です。Secretは暗号化して保存されますが、ジョブでは環境変数として使われます。

allowInPRの初期値はfalseです。ただし、例外的に有効化する場合は、対象のSecretとリポジトリ、承認者を明記します。監査方法も、あわせて書いておきます。

導入にはどのくらいの期間がかかりますか?

目安は、代表的な1サービスのPoCが1〜4週間、小規模チームの本番導入が1〜2か月、複数チーム向けの標準基盤が2〜4か月です。

全社移行やJenkinsの整理を含む場合、また複数クラスタや監査・DR・24時間運用まで含む場合は、6〜12か月以上になる可能性があります。

期間は、リポジトリ数だけでなく、環境数や独自ジョブでも変わります。承認フロー、データ移行、セキュリティ審査も期間を左右します。

ポイント

「無料か」は本番の総保有コストで、既存CIの扱いは複数チームの基盤に統一したいかで判断します。PR用と本番用のSecretを分けられるか、期間を環境数で見積もれるかも目安です。

まとめ|Screwdriverのシステム開発の段階導入

導入は6フェーズで進みます。前半は要件整理と選定で、そのあと設計・開発、テスト、稼働、定着と続きます。最初から全社に広げず、代表的なサービスでPoCを行ってから、段階的に対象を広げます。

パイプラインやSecret、成果物の状態を見ます。監視と障害復旧の流れも確認してから、対象を広げます。

採用判断で押さえる3つの条件

採用の判断では、複数チーム・環境のデリバリーを標準化したいか、実行基盤を管理できるか、Pipelineをコードレビューしながら改善できるかを確かめます。

条件が不明確なら、マネージドCIや既存基盤の改善も比べます。そのうえで、リリースの品質と速さ、運用の再現性を高められるかで判断します。

最初に作るべき資料と次のアクション

まず、対象とPoCの条件を整理し、費目ごとに相見積もりを取ります。作業は次の順で進めます。

  1. 対象リポジトリ、現行CI、デプロイ先、環境数を一覧にします。Secret、成果物、KPIも書き出します。
  2. 1サービスのPoC成功条件を決めます。
  3. Screwdriver本体、実行基盤、Pipeline移行、監視、保守を分けて見積もります。

推定レンジはPoCが0〜100万円、小規模が300〜600万円、本番標準が600〜1,200万円です。構成と作業範囲に応じて調整します。

▼全体ガイドの記事
・Screwdriverのシステム開発の完全ガイド

会社紹介

株式会社riplaでは、お客様の事業・ユーザー・業務に最適化したオーダーメイド型システムを、構想策定・要件定義から開発・改善まで一気通貫で支援。事業会社でIT・DXを経験したプロフェッショナルによる高い要件定義力・システム設計力を活かし、事業成果の最大化に伴走します。

また、当社独自の開発テンプレート「Boxシリーズ」による標準機能の高速開発と、AI駆動開発の独自フレームワーク「GoDD」による独自機能のAI実装を組み合わせることで、低コスト・短期間で開発を実現いたします。

もし、システム開発やプロダクト開発に関するご要望がございましたら、お気軽にお問い合わせください。

・サービス概要資料のURLはこちら >>>
・お問合せページのURLはこちら >>>
・お役立ち資料のURLはこちら >>>

執筆者プロフィール
張田谷凌央
張田谷凌央

株式会社ripla 代表取締役CEOとして、システムパッケージ活用、システム開発、データ分析、生成AI活用、SaaS開発、アプリ開発、EC構築など、幅広い領域で企業のDX推進と事業成長を支援している。事業会社でIT・DXを経験したプロフェッショナルが集う株式会社riplaにおいて、お客様の事業・ユーザー・業務に最適化したオーダーメイド型システムを構想策定・要件定義から開発・改善まで一気通貫で支援し、単なるシステム納品にとどまらず、クライアントと同じ目線で事業成果の最大化に向けた伴走支援を行う。早稲田大学卒業後、ラクスル株式会社、LINEヤフー株式会社にて事業開発やDX推進などに従事した後、株式会社riplaを創業。