新入職者の入社やPCの入れ替えのたびに発生するPCのセットアップ作業。
このようなセットアップを手作業で行っていたり、そもそも手順が確立されていなかったりするケースは、決して珍しくありません。
そして、そのような状態が何年も続いていることもあります。
かくいう私が勤めている会社でも、PCのセットアップは手作業が中心で、担当者が一つひとつ設定を行っていました。
そこで私は、PCのセットアップ作業を自動化できないかと考え、Bat・PowerShell・Pythonを組み合わせた自動化ツールを作成しました。
本記事では、そのツールを導入する前に抱えていた課題から、導入後に得られた効果、そして実際に自動化した処理の例まで紹介します。
ツール導入前の課題
ツールを導入する前は次のような課題がありました。
- 一つひとつの設定に時間がかかる
- 設定箇所を探すのに時間がかかる
- 作業内容に抜けや漏れが発生する
- 経験や知識の差により、設定内容にばらつきが発生する
- 手順やノウハウが特定の担当者に依存している
特に、複数台のPCをセットアップする場合、同じ設定を何度も手作業で行う必要があります。
そのため、作業台数が増えれば増えるほど作業時間が増加し、設定漏れや作業者による品質のばらつきも発生しやすくなっていました。
実際に自動化した処理の例
実際のところ、次のような処理を自動化しました。
- Windowsのクリーンインストール
- OOBE(初期セットアップ)の操作
- Windowsの各種設定
- PCごとの個別設定
- 複数アプリケーションのインストール
この他にも自動化した処理はたくさんあります。
Windowsのクリーンインストール
以前はインストール画面を操作しながら、画面の指示に沿ってWindowsをインストールしていました。
自動化後は、次の処理を自動化し、Windowsのクリーンインストールにかかる手作業を削減しました。
WindowsPEの起動
↓
既存データの削除
↓
パーティション再構成
↓
OSのインストール
OOBE(初期セットアップ)の操作
Windowsのインストール後に表示されるOOBE画面についても、
- ユーザー作成
- 各種初期設定
- ネットワーク設定
- その他の初期セットアップ
など、画面に沿って行っていた作業を自動化しました。
Windowsの各種設定
セットアップ後に手作業で変更していた、次のようなWindowsの設定も自動化しました。
- 電源オプション
- 既定のアプリ
- システムトレイアイコン
- ローカルグループポリシー
- その他のWindows設定
PCごとの個別設定
PCごとに異なる設定についても、自動化できるようにしました。例えば次のような設定です。
- PC名
- IPアドレス
- プリンター
- その他の端末固有の設定
特にPC名やIPアドレスなどは、CSVなどの設定ファイルから値を読み込んで自動設定する仕組みにすると、大量展開との相性が非常に良いです。
複数アプリケーションのインストール
PCセットアップ時に必要となる複数のアプリケーションについても、まとめてインストールできるようにしました。
例えば次のようなアプリケーションです。
- Oracle Client
- Microsoft Office
- Adobe Acrobat
- ESET
- その他必要なアプリケーション
これにより、アプリケーションごとにインストーラーを起動して操作する手間を削減しました。
ツール導入後の効果
導入したことで、次の効果が得られるようになりました。
- セットアップ時間が大幅に短縮
- 抜けや漏れ、設定ミスが大幅に削減
- 作業品質が均一化
- 属人化状態が改善
- 優先業務に集中できる環境の確保
セットアップ時間を大幅に短縮
これまで平均4時間程度かかっていたPCのセットアップ作業を、約25分まで短縮することができました。
さらに、この25分間はツールが自動で処理を実行するため、作業者がPCの前で操作し続ける必要はありません。
そのため、ツールがセットアップを行っている間に、別の業務を進めることができるようになりました。
約4時間 → 約25分
という大幅な作業時間の短縮に加えて、作業者の拘束時間も削減できたことが大きな効果でした。
抜け・漏れ・設定ミスを大幅に削減
これまで人が手作業で行っていた設定を、あらかじめ決められた手順に従ってツールが自動的に処理するようにしました。
これにより、
- 設定項目の入力漏れ
- 設定箇所の見落とし
- 設定値の入力ミス
- 作業手順の飛ばし
などのヒューマンエラーを大幅に削減することができました。
作業品質を均一化
自動化した処理は、誰が実行しても同じ手順・同じ設定で処理されます。
そのため、作業者の経験や知識によって設定内容にばらつきが生じることがなくなり、PCごとの設定品質を均一化することができました。
属人化を改善
これまでは、PCセットアップに必要な手順やノウハウが特定の担当者に依存していました。
自動化によって作業手順をツールに組み込むことで、特定の担当者でなくても同じ作業を実施できる環境を構築しました。
これにより、担当者が不在の場合でも作業を進めやすくなり、属人化の改善につながりました。
優先業務に集中できる環境の確保
PCセットアップのような定型業務を自動化することで、これまでセットアップに費やしていた時間を、より付加価値の高い業務に振り分けられるようになりました。
単純に「4時間の作業が25分になった」だけではなく、作業者が本来取り組むべき業務に集中できる環境を作れたことも、大きな効果でした。
まとめ
今回、Bat・PowerShell・Pythonを組み合わせてPCのセットアップ作業を自動化することで、これまで手作業で行っていたさまざまな処理を自動化することができました。
その結果、平均4時間かかっていたセットアップ作業を約25分まで短縮し、さらに自動処理中は別の業務に取り組めるようになりました。
また、作業時間の短縮だけでなく、
- 設定漏れや入力ミスの削減
- 作業品質の均一化
- 作業の属人化の改善
- より優先度の高い業務への時間の確保
といった効果も得られました。
PCのセットアップには、OSのインストールやWindowsの各種設定、アプリケーションのインストール、プリンター設定など、毎回同じように行う定型作業が数多くあります。
これらの作業は、一つひとつを見ると小さな作業でも、PCの台数が増えるほど大きな負担になります。
「毎回同じことをしている」「手作業に時間がかかっている」と感じる作業があれば、その作業は自動化できるかもしれません。
今回の取り組みを通して、定型業務を自動化することで、単に作業時間を短縮するだけでなく、人が本来取り組むべき業務に集中できる環境を作ることができると実感しました。
WinDeployAutoでは、Bat・PowerShell・Pythonを組み合わせた自動化ツールのご提供、および自動化の支援を行っております。
「毎回同じ作業を繰り返している」
「この作業を自動化できるかわからない」
そんな業務があれば、お問い合わせフォームよりお気軽にご相談ください。


コメント