まずは参考文献
システム運用アンチパターン
システムの開発・運用範囲が異なるエンジニア間でも、共通して会話ができる社内輪読会にはよい書籍
パターナリスト症候群
- あるリソースへのアクセス制限や承認プロセスなど
上記のような規則を正当化するような出来事が過去にあった
初期:チームをより効果的にする意図
経年:チームを停滞させてしまうプロセス
このような状態をパターナリスト症候群と筆者は呼んでいる
考え方
- ある行動の実行や承認に必要な資格や信頼性を持つのは特定の人物やグループだけである
ゲートキーパー
パターナリスト症候群の状況において
・仕事の進め方
・仕事のタイミング
を委ねられた(権限をもった)人
障壁が作られる過程
1. 権限でコントロール
課題:システムの安全性が欠けている(誤操作しやすい状態)
解決策:操作する人を限定する
実情:誤操作のリスクは減っていない。権限保有者にストレスを集中させているだけ
障壁が作られる過程
2. 承認プロセスでコントロール
課題:その時点のプロセスで対処できない問題が発生した
解決策:問題となったプロセスで承認プロセスを入れる
実情:
- 問題が起こるたびに開発プロセス全体が重くて負担が大きくなっていく
- リリースまでに予定日が変更となるリスクが高まり、価値提供の機会が伸びる
- 新たなヒューマンエラーリスクの発生
DevOps組織におけるアプローチ
ゲートキーパーに対しての改善のゴールとして
- ・チーム間のコラボレーションの強化
- ・不必要なゲートや作業の受け渡しの削減
- ・開発チームがシステムを所有するために必要なツールと権限の提供
- ・再現性のある予測可能なプロセスの構築
- ・アプリケーションの本番環境に対する責任の共有
をCAMSモデルにしたがって実現していく。
その根底として・・・
- 価値を付加するものは残しつつ、人為的な障壁を取り除く
ことにDevOps的組織は気を配る特性がある
1.文化的な問題に正面から取り組む
2.人間の能力の浪費によるコストに焦点を当てる
書籍としては
2.1節までがここまで。
2.2:障壁の生成の事例
2.3:そこで生じる新たなリスクに関する話
2.4以降:プロセスの自動化によるプロセス負荷の軽減の取り組み方について記載されています。
2.4からは、プロジェクトの進め方に近いものとなり
- ・ステークホルダーからのメンバー選定(ゲートキーパーは必須)
- ・目的の共有が一番重要
- ・解決策のサイズを小さめなものからスタート
などがポイントとなるというお話になります。