【事例】WebGISで施設情報を共有
目次
WebGISで施設情報を可視化し、関係者との情報共有を効率化した事例を紹介します。
匿名化について: 本記事は、Link Fieldが支援した実案件に基づいています。守秘義務およびプライバシー保護のため、企業名・所在地等を匿名化しています。
企業概要
【業種】施設管理業
【規模】従業員20名
【所在地】地方都市
【主な業務】
・公共施設の維持管理
・設備点検
・修繕工事の手配
導入前の課題
課題1: 施設情報の管理
【状況】
・Excelで施設台帳を管理
・位置情報は住所のみ
・写真は別フォルダで管理
・情報が分散している
【影響】
・情報検索に時間がかかる
・現地確認が必要になる
・全体像が把握しにくい
課題2: 関係者との情報共有
【状況】
・発注者への報告は書類ベース
・現場作業者への指示が口頭中心
・情報の更新が追いつかない
【影響】
・コミュニケーションコスト増
・認識のズレ
・対応の遅れ
課題3: 点検業務の効率
【状況】
・紙の点検表を使用
・結果を事務所で入力
・過去の点検履歴が見にくい
【影響】
・二重作業
・傾向分析ができない
・予防保全が困難
導入したソリューション
WebGIS(Leaflet + PostgreSQL)
【選定理由】
・オープンソースで低コスト
・ブラウザで利用可能
・スマホからもアクセス可
・必要な機能に絞れる
システム構成
【フロントエンド】
・Leaflet(地図表示)
・HTML/CSS/JavaScript
【バックエンド】
・Node.js
・PostgreSQL + PostGIS
【ホスティング】
・クラウドサーバー
主な機能
【施設管理】
・地図上に施設を表示
・クリックで詳細情報表示
・写真・書類へのリンク
・検索・フィルター機能
【点検管理】
・点検結果の登録
・履歴の閲覧
・異常箇所のマーキング
【レポート】
・一覧表出力
・地図付きレポート
・統計情報表示
導入プロセス
ステップ1: 要件定義(2週間)
【実施内容】
・関係者へのヒアリング
・必要機能の洗い出し
・優先順位付け
・プロトタイプ作成
【ポイント】
・発注者のニーズも確認
・シンプルな機能から開始
ステップ2: データ整備(3週間)
【実施内容】
・既存データの整理
・住所→座標への変換
・写真データの紐付け
・データベース構築
【ポイント】
・データ品質の確認
・欠損データの補完
ステップ3: 開発(1ヶ月)
【実施内容】
・地図表示機能
・施設情報表示
・検索機能
・点検記録機能
【ポイント】
・MVP(最小限の機能)で開始
・段階的に機能追加
ステップ4: 運用開始
【実施内容】
・関係者への説明会
・操作研修
・並行運用
・本格運用
【ポイント】
・フィードバック収集
・継続的な改善
具体的な機能
機能1: 施設マップ
// Leafletで施設を表示
var map = L.map('map').setView([35.6812, 139.7671], 13);
// 地理院タイルを追加
L.tileLayer('https://cyberjapandata.gsi.go.jp/xyz/std/{z}/{x}/{y}.png', {
attribution: '国土地理院'
}).addTo(map);
// 施設データを読み込み
fetch('/api/facilities')
.then(response => response.json())
.then(data => {
data.forEach(facility => {
L.marker([facility.lat, facility.lng])
.bindPopup(`
<h3>${facility.name}</h3>
<p>種別: ${facility.type}</p>
<p>状態: ${facility.status}</p>
<a href="/facility/${facility.id}">詳細を見る</a>
`)
.addTo(map);
});
});
機能2: 詳細情報表示
<!-- 施設詳細ページ -->
<div class="facility-detail">
<h2>○○公民館</h2>
<div class="map-small" id="detail-map"></div>
<table class="info-table">
<tr><th>所在地</th><td>○○市△△町1-2-3</td></tr>
<tr><th>建築年</th><td>1985年</td></tr>
<tr><th>構造</th><td>RC造2階建</td></tr>
<tr><th>管理者</th><td>○○課</td></tr>
</table>
<h3>点検履歴</h3>
<table class="history-table">
<tr><th>日付</th><th>結果</th><th>担当</th></tr>
<tr><td>2025/01/15</td><td>良好</td><td>山田</td></tr>
<tr><td>2024/07/10</td><td>要注意</td><td>佐藤</td></tr>
</table>
<h3>添付資料</h3>
<ul>
<li><a href="#">図面(PDF)</a></li>
<li><a href="#">外観写真</a></li>
</ul>
</div>
機能3: 点検記録
// スマホからの点検記録
function submitInspection() {
const data = {
facilityId: document.getElementById('facilityId').value,
date: document.getElementById('date').value,
result: document.getElementById('result').value,
notes: document.getElementById('notes').value,
photos: uploadedPhotos
};
fetch('/api/inspections', {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify(data)
})
.then(response => {
if (response.ok) {
alert('登録しました');
location.reload();
}
});
}
導入効果
定量的効果
| 項目 | 導入前 | 導入後 | 削減率 |
|---|---|---|---|
| 施設検索 | 15分/件 | 1分/件 | 93% |
| 報告書作成 | 3時間/月 | 30分/月 | 83% |
| 現地確認 | 月10回 | 月3回 | 70% |
| 点検データ入力 | 30分/件 | 5分/件 | 83% |
年間効果(概算)
【時間削減】
・施設検索:100時間/年
・報告書作成:30時間/年
・現地確認移動:50時間/年
・点検データ入力:150時間/年
・合計:330時間/年
【金額換算】
330時間 × 3,000円 = 99万円/年
投資対効果
【開発費用】
・外部委託:50万円
・サーバー費用:月5,000円
【年間効果】
・99万円相当
【回収期間】
・約7ヶ月
定性的効果
【業務品質】
・情報の一元管理
・履歴の可視化
・傾向分析が可能
【コミュニケーション】
・関係者との情報共有
・認識のズレ解消
・迅速な対応
【発注者評価】
・わかりやすい報告
・透明性の向上
・信頼関係の構築
成功のポイント
ポイント1: シンプルな機能
・最初は表示と検索だけ
・使われる機能を優先
・複雑な機能は後回し
ポイント2: データ品質
・既存データの整理に時間
・座標の精度確認
・継続的なメンテナンス
ポイント3: モバイル対応
・現場からアクセス可能
・スマホで操作しやすく
・オフライン対応も検討
ポイント4: 段階的な機能追加
・利用状況を見ながら拡張
・ユーザーの要望を反映
・無理に機能を増やさない
発注者の反応
【発注者コメント】
「地図で施設の位置がわかるので、
現地の状況がイメージしやすくなりました。
過去の点検履歴もすぐに確認でき、
計画的な修繕の検討に役立っています。」
課題と今後
現在の課題
・データ更新の手間
・オフライン対応
・他システムとの連携
今後の計画
・PWA化(オフライン対応)
・写真AI分析の導入
・BIMデータとの連携
・住民向け公開版の検討
技術構成の詳細
フロントエンド
・Leaflet 1.9
・Bootstrap 5
・vanilla JavaScript
バックエンド
・Node.js + Express
・PostgreSQL 15 + PostGIS 3
・PM2(プロセス管理)
インフラ
・クラウドVPS
・nginx(リバースプロキシ)
・Let's Encrypt(SSL)
まとめ
導入のポイント
1. シンプルな機能から開始
2. データ品質を重視
3. モバイル対応
4. 段階的な拡張
得られた効果
・年間99万円相当の効率化
・7ヶ月で投資回収
・関係者との情報共有改善
・業務品質の向上
関連記事
お問い合わせ
WebGIS構築についてのご相談は、お気軽にお問い合わせください。
最終更新: 2025年1月