今こそバッチでしょ令和一発目の更新がバッチ処理。き方改革」のキーワードに必要なIT利活用の基礎の基礎、バッチ処理を今だからこそ振り返っていきたいと思います。スポンサーリンクそもそもバッチ処理とは教えて!Wikipedia先生!そもそもバッチ処理とは何ぞや?という方のために、用語の解説をWikipedia先生から引用します。コンピュータで1つの流れのプログラム群(ジョブ)を順次に実行すること。対義語は対話処理・インタラクティブ処理、またはリアルタイム処理。–バッチ処理=ルーチンワークバッチ処理は予め決められた順番にA→B→Cという処理だけをします。準備するものはInputのファイルだけで、後は処理を開始すれば途中のファイルやデータを含めて全て作成してくれます。決まった処理を行うルーチンワーク的な動きをします。Inputに入っているデータに誤りがあっても、誤っているまま全ての処理を行ってしまいます。順番をB→A→Cに変えることもありませんし、A→BだけやってCをやらないということもありません。そこに判断や変更の無い、決められた通りの流れで処理を行うのがバッチ処理です。プログラムというものは基本的に書かれたとおりに動くものなので、バッチ処理に限ったことでは無いとも言えます。途中で条件分岐等を作って一致しなければ処理を行わないとすることもできますが、基本的な考え方としては上記の通りです。洗剤を入れてスイッチを押せば後はやってくれる全自動洗濯機のようなものです。傷みやすい服があればネットに入れておかなければいけないし、しつこいシミには直接洗剤をかけておく必要があるでしょう。ネットや直接かける洗剤が条件分岐なのです。一方の対話処理は、都度人間が処理を指示してその結果を確認します。システム画面に向かって検索や入力を行う操作などがこれにあたります。Inputは毎回必ず同じではありません。Outputも同様に同じとは限りません。そこに人間の判断が入った上で、次に行うことを決定する必要があります。得意分野はファイルやデータの加工、受渡バッチ処理が主に使われる場面は上記の図の例の通りで、Inputデータを元にOutputが必要とする形にデータを加工し、それを次の処理に受け渡すことです。データ登録、連携ファイル作成、他バッチのためのデータ作成などです。毎日100件のデータを、システムの画面から入力しつつ、他のシステムに渡すためにレイアウトを加工しつつ、別のExcel帳票に張り付けて報告書を作成する、というようなことをバッチ処理は自動で行うことができるのです。苦手分野は画面操作と想定外データ逆に苦手なことはシステムなどの画面操作です。バッチはどのような言語で書かれているとしても基本的にコマンドで操作を行います。システム画面に向かってキーボードを叩くようなことはできません。※それを克服したのがRPAであるとも言えます。Inputデータに想定とは異なる値やデータ形式があると、エラーになってそこで処理が終了してしまい、先に進まなくなります。Aだけ更新されてBが更新されない状態だとデータの整合がとれずに業務に支障をきたすようなシステムの場合、処理の順序を考慮するなど工夫が必要です。この場合の工夫は「エラーにならない工夫」というより「エラーになった時にできるだけ影響を小さくする工夫」ですが。バッチ処理のメリットは何か?ルーチンワークならプログラムにやらせたほうが楽だし早いし正確プログラムが最も得意とすることは「同じ動きを大量に素早く正確に行うこと」です。プログラムは記述されたとおりの結果しか返さないので抜け・漏れ・入力誤りはありません。処理速度は人間の数十倍、数百倍早いので、大量の情報を短時間で処理できます。できるだけ判断(条件分岐)が少ないほど早くなりますが、その分判断する人間の手を煩わせます。多くの判断をプログラムにやらせたほうが人間が楽になります。AIのディープラーニングなども、広義に見ればプログラムに判断させる範囲を広げて人間が楽になるための方法です。人が操作しなくても、人がいなくても処理してくれる先述の通り、バッチ処理は開始さえすれば最後まで自動で処理を行います。開始させること自体をスケジュールで自動化することができれば、人間が行うのはバッチの開始時間までにInputを準備しておくだけになります。人間の業務時間外に処理を行っておくことができるのです。広義の意味ではRPAもバッチ処理と呼んでよいと考えます。効率化の効果を正しく認識しなければもったいない他のITツールによる勤務時間中の効率化とバッチ処理による退社後の自動化で業務量を圧縮できれば、働き方改革につなげることができます。業務量の圧縮は売上と同じで、一つ一つの小さな成果を積上げることで大きくなります。時短や効率化の恩恵をなかなか感じられないのは、売上などの経営数値と違って、そもそも業務時間がきちんと測定がなされていないからです。何の作業に何時間費やしたかを把握しないと、全く違う理由で作業時間が増えているのに「ちっとも時間が減っていない」としか感じられなくなります。「判断しなくてもいい仕事」と「判断を要する仕事」を仕分けるスキルバッチ処理にすることにより、人間の作業はツールが読み込むデータを作り、ツールの実行結果を確認するだけになります。事務・経理系の部門の場合、このイメージは多少しっくりくるかもしれませんが、営業やクリエイティブ系の職種にはピンとこないことも多いかもしれません。本当にそうでしょうか。営業の場合、毎日わざわざ帰社して日報を書いたり、毎週の会議資料の作成に時間を取られたり、似たようなプレゼン資料の作成に毎回長い時間がかけたりしていないでしょうか。バッチ処理にしても、SFAやBI、ファイル共有にしても、現在の業務のやりかたを変える前提で考えなければ効率化の効果は出てきません。上記の日報を例に挙げると、SFAを導入したとしても社外からのアクセスインフラが不十分だったり、そもそも上長がSFAの情報を見ずに担当者に直接確認するような状況で効率化の成果が出るはずがありません。バッチ処理も、バッチで行える「判断しなくてもいい仕事」とバッチで行えない「判断を要する仕事」の切り分けを行えるかどうかが重要です。して書くとRPAがバッチ処理であるということもしっくりくるのではないでしょうか。Automation(ロボットによる業務自動化)2.2.[...]GSuite14日間無料おためしGSuiteを14日間無料で試用できます。※Googleのサイトへ接続します。当サイトからGSuiteをお申込みいただいた方へ、開始1年目の利用料が20%OFFになるクーポンを差し上げています。ひとり情シスという詰み一歩手前の状況から色々四苦八苦してなんとか形になってきたので、「自分のやったことをアウトプットした方が、世の中の情シスの人が同じことで困らなくて済むんじゃないか」と思い、このブログを立ち上げました。技術よりもサービス/マネジメント寄りの内容が多いかもしれません。WordPress.。