CLOSE UPコラム - 平井 明夫 - | Excel要らずの予算管理をOSS「BudgetRunner」で実現しよう!

Excel要らずの予算管理をOSS「BudgetRunner」で実現しよう!

CLOSE UPコラム - 平井 明夫 -

2013年09月27日
株式会社クロスキャット 平井 明夫

皆さん、こんにちは!クロスキャットの平井です。

皆さんの会社の予算管理業務には、何を使ってますか?たぶんExcelを使って苦労されているんじゃないでしょうか?この予算管理業務をOSSを使って、楽にする方法をお話しします!

だいたいの会社では、年度末になると、経営企画や経理といった部門の予算管理担当者から「来期の予算を入力してね」という依頼が来て、Excelシートに自部門の予算を入力して、返信するという作業を行っているのではないでしょうか。

実は、この後が大変で、予算管理担当者は、いろいろな部門で入力されたExcelシートを集めて、一つ一つコピペしながら集計していきます。そうやって、集計された予算を精査して、「この部門は承認」とか「この部門はこの科目が多すぎるから却下」とかを判断します。却下した部門には、もう一回Excelシートを送りなおして、修正させて、また集計しなおす・・・といった作業をしていきます。どうです。気が遠くなりますよね。

そもそも、予算管理の業務は、大まかにわけると、①予算編成業務、②予実管理業務の二つになります。先ほど、お話した年度末に来期予算を入力して・・・という作業は①の予算編成業務になります。

②の予実管理業務では、だいたい月に1回程度、予算データと実績データ(これは会計システムから取り出します)を突き合わせて、オーバーしている部署や科目がないかどうかをチェックします。この作業もExcelでやるとなるとけっこう大変です。もっとも、ちょっと進んだ会社では、予算と実績データをデータベースに入れて、BIツールでレポートを作る、という環境を構築しているはずです。おまけに、最近では、JaspersoftやPentahoといったOSSのBIツールが広く使われていますので、予実管理に関しては、技術力さえあれば、低コストでシステムが構築できる状況になっています。

しかし、①の予算編成に関しては、そうはいきません。なぜなら、予算編成では予算データの入力が発生するため、BIツールでは対応できないからです。もちろん、世の中には予算入力ができる予算編成専用のアプリケーションパッケージは存在します。ですが、これらの商用製品は大企業向けに作られていて機能もたくさんあるかわりに、費用も高額になります。

そこで、今回ご紹介するのが「BudgetRunner」です。「BudgetRunner」はphp言語で書かれたOSSで、Sourceforge.jpに公開されています。「BudgetRunner」を使うと、予算編成作業が簡単に行えるようになります。次の画面イメージは「BudgetRunner」の予算入力画面の一部です。

一番上に「出張旅費」とあるのが、現在入力中の科目です。科目はリストから選択できるようになっていて、リストの項目は、あらかじめ科目マスターにセットしておくことで自由に変更できます。

「BudgetRunner」の面白いところは、一つの科目の予算金額を合計で入力するのではなく、複数の細目を入力して、その合計が自動的に計算されて科目の予算金額となることです。この画面では、細目が4行入力されています。「大阪出張」、「第一商事米国支店展示会支援」、「福岡支店定例ミーティング」、「北海道得意先まわり」の4つです。それぞれの細目について、月ごとの予算金額が千円単位で入力されています。それらが、まず細目ごとに集計されて当年度の合計金額として表示れます。この画面では、「150」、「1,000」、「600」、「300」となっています。この細目合計が総合計されて、この科目「出張旅費」の予算金額となります。この画面では、「2,050」となっています。

こうやって入力された予算は、「申請」することができます。申請されたデータはデータベースに格納され、予算管理者に通知されます。予算管理者は、その申請を受けて「承認」、もしくは「却下」の操作を行うことができます。「却下」された場合は、申請者が再び予算入力画面を開いて、金額を訂正し、再度申請することになります。

この一連の動作は、全てWebブラウザー画面で行われ、データは単一のデータベース内で管理されています。ですから、Excelを使って同じ作業を行うのに比べ、はるかに手間がかからず、間違いも起こらなくなります。

いかがですか?随分簡単にできそうですね。

OSSとして公開された「BudgetRunner」は、予算編成機能だけですが、他のOSSを駆使することで、フルオープンソースで予算管理システムを構築することができます。下の図は、筆者の勤務するクロスキャットがSaasとして提供している予算管理サービス「CC-BudgetRunner」の構成図です。

予算編成機能を実現する「BudgetRunner」がphpで動作することは、すでにお話しました。それ以外の部分では、アプリケーションサーバーとしてApache Tomcatが、予算と実績データを格納するデータベースにはPostgreSQLが、実績データを会計システムから取り込む処理には、Japser ETL(Talend)が、予実管理を実現するレポート部分にはJapser Serverが、それぞれ利用されていて、フルオープンソースで構成されています。

このように、「BudgetRunner」が予算管理の中で一番複雑な予算編成機能をカバーできますから、システムを自社開発することがある程度できる会社であれば、自力で予算管理システムを構築できるようになりました。

また、自社開発が難しい会社であれば、クロスキャットがOSS「BudgerRunner」を利用した予算管理システム構築サービス(オンプレミス版CC-BudgetRunner)を提供していますので、ご検討ください。

それでは、皆さん、またどこかでお会いしましょう!

BudgetRunnerの公開サイト
http://sourceforge.jp/projects/budgetrunner/

CC-BudgetRunnerの製品紹介サイト
http://cc-budgetrunner.jp/


OSSNEWSに広告を掲載しませんか?

著者プロフィール

株式会社クロスキャット 平井 明夫

2004年、前職にて、当時は珍しかったOSS BIツールOpenOLAPの開発に参画、現在は、中堅・中小企業向け経営管理ソリューションのラウンチに携わるかたわら、データ分析を中心としたテーマでの講演・執筆活動を行っている。主な著書・共著書に『BIシステム構築実践入門』、『データ分析できない社員はいらない』がある。

関連オープンソース

Activiti(アクティビティ)

  • ビジネスプロセス

Activiti(アクティビティ)とは、オープンソースのビジネスプロセス管理(BPM)プラットフォームです。軽量ワークフローを作成でき、プロセス自動化ニーズをサポートします。ビジネスエンドユーザー/開発者/システム管理者などを対象としており、自動化課題の解決を支援します。

Apache ZooKeeper(アパッチズーキーパー)

  • 運用管理・運用自動化

Apache ZooKeeper(アパッチズーキーパー)とは、分散環境運用サポートサービスを提供するコーディネーションエンジンです。各ノード(システム全体)を集中保守管理するための機能を提供します。「設定管理」「名前解決」「同期」「グループサービス」などの利用頻度の高いさまざまなサービスが用意されています。

Graphite(グラファイト)

  • 運用管理・運用自動化

Graphite(グラファイト)とは、高度にスケーラブルなエンタープライズ対応監視ツールで、リアルタイムグラフを作成できます。「Webサイト」「アプリケーション」「ビジネスサービス」「ネットワークサーバ」などのパフォーマンスを追跡し、時系列データの「保存」「取得」「共有」「視覚化」が可能です。

Zabbix(ザビックス)

  • 運用管理・運用自動化

Zabbix(ザビックス)とは、オープンソースの統合監視ツールです。統合監視ツールとして必要な機能を網羅的に搭載しており、「サーバ」「ネットワーク」「アプリケーション」などを高度に集中監視し、「障害検知」「アラート通知」「パフォーマンス可視化」などを行えます。システム全体を1つのZabbixで監視できます。

Spinnaker(スピネーカー)

  • 運用管理・運用自動化

Spinnaker(スピネーカー)とは、マルチクラウド対応の継続的デリバリプラットフォームです。複数クラウドに対するデプロイ/クラスタ管理を行い、継続的デリバリプロセスの自動化を行います。マルチクラウド連続配信プラットフォームとして、クラウドプラットフォームに対するアプリケーションリリースについてインテリジェントな展開を行えます。

Puppet(パペット)

  • 運用管理・運用自動化

Puppet(パペット)とは、オープンソースの構成管理ツールです。「パッケージインストール」「サーバ構成更新」「ユーザー追加」などインフラストラクチャの管理を自動化するツールを提供します。「Linux」「UNIX」「Windows」をサポートし、システムの自動管理エンジンとして一元化された仕様に基づいて管理タスクを実行します。

NUT(ナット)

  • 運用管理・運用自動化

NUT(ナット)とは、電源デバイスを監視するために設計されたソフトウェアコンポーネントスイートです。「無停電電源装置」「配電ユニット」「ソーラーコントローラー」「サーバ電源ユニット」などの多くのブランドとモデルをサポートし、ネットワークプロトコルと標準化されたインターフェースを介して管理できます。

Graylog(グレイログ)

  • ログ管理

Graylog(グレイログ)とは、オープンソースのログ管理プラットフォームです。オープンスタンダードに基づいてさまざまなデータソースからデータを収集し、1つの中央ロケーションからデータ管理を行えます。セキュリティとコンプライアンスに関するニーズに対応できる包括的なログ管理ソリューションを構築できます。

Nagios(ナギオス)

  • 運用管理・運用自動化

Nagios(ナギオス)は統合監視フレームワークです。「サーバ」「ネットワーク」「リソース」「サービス」などの稼働状況を監視し異常時に通知を行います。Nagios本体は主に「プラグインのスケジューリング」「チェック結果保存」「チェック結果通知」「Webインターフェース提供」などを行い、実際の監視は各プラグインが実施する構造になっています。

Prometheus(プロメテウス)

  • 運用管理・運用自動化

Prometheus(プロメテウス)とは、システム監視および警告ツールキットです。柔軟なクエリとリアルタイムアラートを備えたHTTPプルモデルを使用して構築された時系列データベースにリアルタイムメトリックを記録します。時系列データに基づいたアクティブな「スクレイピング」「保存」「クエリ」「グラフ化」「アラート」を含む完全な監視および傾向分析機能を提供します。

Ansible(アンシブル)

  • 運用管理・運用自動化

Ansible(アンシブル)とは構成管理ツールです。多数の構築管理対象に対するアプリケーションとシステムの導入を容易にするシンプルなIT環境構築自動化プラットフォームです。「設定ファイルがシンプル」「使いやすい」「管理対象サーバへのエージェントソフトウェアインストール不要」など、最小限の手間で各種設定を自動化できる特徴があります。

fluentd(フルエントディー)

  • ログ管理

Fluentd(フルエントディー)とは、データコレクタ(ログデータ収集管理ツール)として、ログデータを収集しJSONに変換して出力する機能を提供します。「入力機能」や「出力機能」などはモジュール化されており、プラグインモジュールを追加することで、さまざまなデータソースや出力先に対応できます。

Terraform(テラフォーム)

  • 運用管理・運用自動化

Terraform(テラフォーム)とは、インフラストラクチャ用プロビジョニングツールです。インフラをコードで管理し、安全かつ効率的に「構築」「変更」「バージョン管理」を実施できます。構成管理ツール「Chef」「Puppet」などと組み合わせて利用でき、管理台数が増えるほど効果を発揮します。

Grafana(グラファナ)

  • 運用管理・運用自動化

Grafana(グラファナ)とは、オープンソースのデータ時系列分析用ダッシュボードツールです。インフラやアプリケーションなどのさまざまなデータソースにアクセスして各種メトリクス情報を収集し、時系列データとして可視化できます。リッチなグラフ描画によって一目見ただけでリアルタイムにステータスを把握できます。

OTRS(オーティーアールエス)

  • ITIL管理

OTRS(オーティーアールエス)とは、「ヘルプデスク機能」+「ITIL対応運用管理機能」を備えるオープンソースの高機能チケット管理ソリューションです。会社や団体や組織などが「顧客から受け取った個々の問い合わせやクレーム」や「それに関連する対応履歴や各種事象など」を「チケット」と呼ばれる単位でまとめて効率的に管理できます。

Logstash(ログスタッシュ)

  • ログ管理

Logstash(ログスタッシュ)とは、Elastic社が提供するログ収集管理ツールです。サーバサイドデータ処理パイプラインとして、さまざまなデータソースからログを収集し、1つのサーバに集約する機能を提供します。多様なプラグインを使用して、どのようなタイプのイベント(ログ)にも対応できます。

Open-Falcon(オープンファルコン)

  • 運用管理・運用自動化

OpenFalconは、エンタープライズレベルに対応できる拡張可能なオープンソースの監視ソリューションです。

Kubernetes(クーベルネイテス)

  • 運用管理・運用自動化

Kubernetes(クーベルネイテス)とは、クラウドネイティブコンピューティング基盤のためのDockerコンテナ群管理フレームワークです。Dockerコンテナ群に対する各種管理機能を提供することで、アプリケーションコンテナを論理的な単位にグループ化し、管理性を向上させます。

FOG Project(フォグプロジェクト)

  • その他

FOG Project(フォグプロジェクト)とはオープンソースのコンピュータイメージングソリューションです。「OSイメージング(クローニング)機能」および「ネットワーク管理機能」を備えています。「Windows」「Mac OSX」「各種Linuxディストリビューション」などのデスクトップOSをサポートしています。

Bacula(バキュラ)

  • バックアップツール

Bacula(バキュラ)とは、オープンソースのバックアップ&リカバリソリューションです。複数OSが混在する異種ネットワークでのバックアップも可能であるため、エンタープライズレベルの統合的なバックアップシステムを構築できます。

Juju(ジュジュ)

  • 運用管理・運用自動化

Juju(ジュジュ)とは、アプリケーションモデリングによるデプロイツールです。パブリック(プライベート)クラウドおよびローカルコンテナに対して効率的な展開/構成/拡張/操作を行えます。

Hinemos(ヒネモス)

  • 運用管理・運用自動化

Hinemos(ヒネモス)とは、国産オープンソース統合運用管理ソリューションです。複数コンピュータ群を単一コンピュータのようなイメージで管理することを可能とします。

Beats(ビーツ)

  • 運用管理・運用自動化

Beats(ビーツ)とは、オープンソースデータ収集/転送プラットフォームです。Elastic社のプロダクト群で、サーバからあらゆる種類のオペレーショナルデータを収集して、Elasticsearch/Logstashなどに情報を転送します。

Camunda BPM(カムンダBPM)

  • ビジネスプロセス

Camunda BPM(カムンダBPM)とは、ワークフローおよび意思決定自動化プラットフォームです。

Xymon(シモン/サイモン)

  • 運用管理・運用自動化

Xymon(シモン/サイモン)とは、ネットワーク監視ツールです。サーバ/アプリケーション/ネットワークなどについてグラフィカルインターフェースでの監視を行えます。

JobScheduler(ジョブスケジューラ)

  • 運用管理・運用自動化

JobScheduler(ジョブスケジューラ)とは、エンタープライズレベルに対応するワークロード自動化ソリューションです。

Amanda(アマンダ)

  • バックアップツール

Amanda(アマンダ)とは、統合バックアップツールです。独自デバイスドライバ/ファイルフォーマットを使用していないため汎用的に利用できます。

Apache Maven(アパッチ メイヴン)

  • 運用管理・運用自動化

Apache Maven(アパッチ メイヴン)とは、Java用プロジェクト管理ツールです。不明瞭なソフトウェア開発プロジェクトをモデル化して、開発効率を高めます。

Draft(ドラフト)

  • 運用管理・運用自動化

Draft(ドラフト)とは、「Docker」コンテナデプロイサポートツールです。Microsoftが提供しています。「Kubernetes」クラスタ上へのデプロイと継続的インテグレーション機能を提供します。

Consul(コンサル)

  • クラスタリング

Consul(コンサル/コンスル)とは、クライアントサーバ型のクラスタ管理ツールです。同様ツール「Serf」よりも汎用的で、サービス検出(ヘルスチェック)用途などにも活用できます。

Serf(サーフ)

  • クラスタリング

Serf(サーフ)とは、非集中/分散型のクラスタ管理ツールです。対象サーバにバイナリを1つ配置して軽量エージェントを起動するだけで、手軽にクラスタを構成できます。

Packer(パッカー)

  • 運用管理・運用自動化

Packer(パッカー)とは、マシンイメージの自動生成/管理を行なうコマンドラインツールです。マシンイメージ作成に関するさまざまな問題を解決するためのサポートを行います。

Vagrant(ベイグラント)

  • 運用管理・運用自動化

Vagrant(ベイグラント)とは、仮想環境構築/共有ツールです。仮想化ツール(VirtualBoxなど)のフロントエンドラッパーとして機能し、数行のコマンドのみで簡単に仮想化環境を構築できます。

Itamae(イタマエ)

  • 運用管理・運用自動化

Itamae(イタマエ)とは、サーバ管理を自動化する構成管理ツールです。「Chef」ライクなRuby DSLで記述するツールで、必要最低限の機能のみを揃えており、非常にシンプルに使用できます。

Serverspec(サーバスペック)

  • 自動テストツール

Serverspec(サーバスペック)。サーバ状態のテスト自動化フレームワークです。UNIX/LinuxサーバとWindowsサーバに対応します。

CDIR Collector(シーディーアイアールコレクター)

  • インシデント管理

CDIR Collector(シーディーアイアールコレクター)。セキュリティインシデント初動対応時の適切なデータ保全をサポートするツールです。調査対象端末汚染を最小限に抑えながら安全にデータを収集します。

Apache Ant(アパッチアント)

  • 運用管理・運用自動化

Apache Ant(アパッチ アント)。ビルドツールです。複雑なコンパイル作業を自動化します。「XML記述」「Javaベースであるためプラットフォームに依存しない」などの特徴があります。

CuMAS(カマス)

  • ITIL管理

CuMAS(カマス)。オープンソースの問い合わせメール情報管理/運用システムです。受信メールを問い合わせ情報として登録し、進捗/対応状況の管理が可能です。

Pandora FMS(パンドラエフエムエス)

  • 運用管理・運用自動化

Pandora FMS(パンドラエフエムエス)。オープンソースの高機能統合監視ツールです。ネットワーク/コンピュータシステム/アプリケーション稼働状況などの監視を行います。

Hatohol(ハトホル)

  • 運用管理・運用自動化

Hatohol(ハトホル)。システム全体を一元的に監視する統合運用管理ツールです。複数の運用管理ツール(Zabbix、Nagiosなど)のハブとして統合的に機能します。

Embulk(エンバルク)

  • ログ管理

Embulk(エンバルク)。オープンソースの並列データ転送フレームワークです。「fluentd」のバッチ版のようなバルク処理に特化したプラグインベースのデータローダーです。大規模データセットのバルクインポートを行えます。

Chef(シェフ)

  • 運用管理・運用自動化

Chef(シェフ)。構成管理(プロビジョニング)ツールです。ユーザ作成、パッケージインストール、設定ファイル編集などの展開作業を自動化します。物理環境/仮想環境/クラウド環境などの各種インフラに対応します。

SyLAS(シラス)

  • ログ管理

SyLAS(シラス)。システムログを高速検索できるソフトウェアです。複数サーバログの一元管理も可能です。Webインターフェースから操作を行えます。

EasySCP(イージーエスシーピー)

  • 運用管理・運用自動化

EasySCP(イージーエスシーピー)とは、仮想ホスティングコントロールパネルです。Linux系サーバの各種管理/設定をサポートします。

Apache log4j(アパッチログフォージェイ)

  • ログ管理

Apache log4j(アパッチログフォージェイ)。オープンソースのJava プログラム用ロギングユーティリティ(API)。

バックナンバー

関連記事

セミナー講演資料公開中

OSSのプロジェクト管理「Redmine」ベースにガントチャートなど必要機能を包括提供する「Easy Redmine」とは ~OSS版との違いと、ガントチャート、グラフなどによる可視化、ワークフローなど機能の紹介~

ひとり情シス(又は中小・中堅企業)のための、現実的なリフト&シフト戦略について

業務効率化を実現するためのポイントとコツを徹底解説! ~RPAだけじゃないツール選択と組み合わせ Robochestration~

  • オープソース書籍(サイド)

facebook

twitter