受託開発の現場では、1件の案件が問い合わせから納品、保守、データ削除まで長期間にわたり稼働します。その間に発生する確認事項、見積と請求、契約書類、仕様変更のやり取りを、表計算とひな形、メモの組み合わせで管理し続けることには、いずれ限界が訪れます。
本記事では、受託制作を行う小規模事業者向けに構築した「案件管理システム」の実装記録を公開します。12工程・111項目のチェックリストを軸に、案件の進行状況や金額、書類作成、仕様変更、データの取り扱いといった各種パラメータを一つの画面に集約しました。
顧客情報を外部に出さないローカル専用のシステムアーキテクチャを守りながら、生成AIとのデータリンクによって入力の負荷を削ぎ落とす仕組みを組み込んでいます。

MISSION
課題・目的
本ミッションのコアは、単に「案件情報を一か所に集めること」ではなく、問い合わせから実績掲載に至るまで、「抜け漏れなく案件を進め切る運用の獲得」にあります。
対象は、業務改善ツールの受託制作を行う小規模事業者です。問い合わせ対応、NDA、ヒアリング、見積、契約、開発、検収、保守、データ削除まで、1件の案件には膨大な確認事項と書類が発生します。これまでは表計算のチェックリストと書類のひな形、メモが分断されて管理されており、「どこまで進んだか」「何が未確認か」を毎回人間の記憶に頼って補完していました。
この状況を打開するため、クリアすべき障壁として以下の3点を定義しました。
工程ごとの確認漏れの排除
案件は12の工程に分かれ、確認項目は全体で111項目に及びます。必須項目の未確認や、入金前の着手、合意前の仕様変更対応といったイレギュラーな進行を、人間の注意力ではなくシステムの仕組みによって防ぐ必要がありました。
書類作成の手間と転記ミスの排除
秘密保持契約書、提案書、見積書、請求書、納品・検収確認書など、案件の進行に合わせて11種類の書類が必要です。案件名・顧客名・金額などのパラメータを毎回ひな形へ手動で転記する作業は、時間を浪費するだけでなく致命的な誤記のリスクを孕んでいました。
顧客情報の機密性担保
扱うのは顧客の社名、契約金額、業務データの取り扱い方針といった機密性の高い情報です。クラウドサービスにデータを預けず、手元のPCのみで完結するクローズドな構成を前提条件としました。
SYSTEM DESIGN / TACTICS
設計・技術的アプローチ
12工程×確認項目のチェックリスト駆動
既存のチェックリスト(Excel)を工程・確認項目・管理ルールのマスターとして取り込み、案件を登録すると、その案件専用のタスク一式が自動展開される設計にしました。
各項目には「必須/推奨/任意/条件付き」の属性と完了条件を持たせ、状態・期限・メモ・証跡を記録します。工程ごとの進捗と、必須項目の残数は常に画面上で可視化されます。


案件状態を一覧で俯瞰するダッシュボード
ダッシュボードおよび案件一覧では、各案件の現在工程、進捗、金額、入金状況、次のアクションとその期限を俯瞰できます。
期限を超過したタスクや、ルール上の警告が存在する案件は自動でハイライトされ、「今日なにをすべきか」を即座に把握できる戦術的なディスプレイを構成しています。


見積から請求・入金までのシームレスな金額管理
見積は明細単位で作成し、承認済みのデータから「全額」「着手金」「残金」などの区分を選択するだけで、金額が反映された請求を作成可能です。
請求・入金状況は案件ごとに集計され、入金確認前に開発工程へ進もうとした際には警告を発します。支払条件の基本ルールも画面上に明示し、確実な回収を支援します。

「合意前に着手しない」ための仕様変更タクティクス
開発途中の修正依頼は「不具合/仕様変更/軽微対応」に区分して登録します。仕様変更の際は、追加費用と納期影響、合意状態をパラメータとして記録し、未合意のタスクが残っている間は案件画面の上部にアラートを表示し続けます。
口頭での追加依頼がなし崩しに作業へ混入することを、運用ルールではなくシステムの構造自体で遮断しています。

データ取り扱いと外部サービスのトラッキング
顧客から預かるデータの区分、匿名化の有無、保管場所、削除予定日、外部AIの利用条件などを案件ごとに記録します。納品後の「実データ削除」も独立した一つの工程として定義し、削除対象・実施日・確認者を証跡として残す設計としました。

ひな形への自動データリンクによる書類生成
既存のWord・Excelのひな形をそのまま活用し、案件名・顧客名・書類番号・日付・金額などを自動で差し込み、書類として出力します。
ひな形側に特殊なマクロやタグを埋め込む必要はなく、表のラベルや段落の書き出しを手がかりにシステムが差し込み位置を判別するため、ひな形の文面を後から修正してもそのままデプロイ可能です。
TROUBLESHOOTING / ARCHITECTURE
環境制約や壁への対処
外部AIを呼ばずに「AI相談」を取り込む設計
入力の手間を減らす上でAIの活用は不可欠ですが、システムから外部AIへ顧客情報を自動送信するアーキテクチャはセキュリティ上採用できませんでした。そこで、システムは「AIへの相談用プロンプト」と「出力形式(JSON)」を生成する役割に徹し、AIとの対話は利用者が普段使っている外部チャットで行うデータリンク方式を設計しました。
相談の途中で発行されるプロンプトを入力すると、AIが不足情報を洗い出し、最終的にシステム取り込み用のJSONを出力します。

「AIが勝手に完了にしない」承認プロセスの確立
出力されたJSONは即座にデータベースへ反映させず、変更前後の差分を確認する画面を必ず経由させます。取り込む項目は1件ずつ精査でき、今後の工程で必要になる情報も先回りしてメモとして記録します。
ただし、タスクの「完了」ステータスはAIの出力では上書きさせません。「入力の補助はAIに、最終的な判断は人間に」という役割分担を、取り込みの仕様として固定しました。

ローカル専用のセキュアなシステムアーキテクチャ
本システムは利用者のPC上でのみ動作し、外部ネットワークからのアクセスを物理的に遮断しています。PCへのログインと同時にバックグラウンドで自動起動するため、都度ターミナルを立ち上げる手間はありません。
データベースは定期的に自動バックアップを実行し、常に直近30世代を安全に保持します。
業務ルールに準じた書類の出し分け
営業書類(提案書・見積書など)には自社ロゴを印字し、法的書類(契約書など)には印字しないといった体裁のコントロールもシステム側で担保しています。人が毎回気をつけるべき運用上の配慮を、設定値としてシステムに組み込みました。
実行環境・システム要件
- 実行環境: Node.js 22(ローカルPC上で動作 / ログイン時に自動起動)
- Webフレームワーク: Express 5 + EJS(画面描画)
- データベース: SQLite(Node.js 標準モジュール) / 自動バックアップ(30世代保持)
- 書類生成: ExcelJS(Excel帳票) / PizZip(Wordひな形への差し込み)
- AI連携: 外部API呼び出しなし(プロンプト出力+JSON取り込み方式)
- マスター: 12工程 / 確認項目111件 / 管理ルール32件 / 書類11種
SUMMARY
完遂の記録・総括
本プロジェクトの真の価値は、「案件をデータベースに登録できること」ではなく、「プロジェクトを進行するルールそのものをシステムに組み込んだこと」にあります。
確認項目、支払条件、仕様変更の合意、データ削除。どれも頭では理解していても、多忙な現場では見落とされがちな要素です。だからこそ、人間の注意力に依存せず、画面の構造と的確なアラートによって正しい進め方へと誘導する設計に注力しました。
AIの活用方針も同様です。情報の整理と入力補助まではAIの担当とし、ステータスの判断や外部への情報送信は人間の手元に残しました。利便性と安全性のどちらかを妥協するのではなく、役割の明確な線引きによって両立させています。
要件の整理から設計、実装、運用環境の整備、そして現場での稼働を通じたブラッシュアップ。「表計算とひな形の寄せ集め」を「日々の案件運営を支える堅牢なシステムアーキテクチャ」へと昇華させるミッションを、妥協なくやり切りました。
DEPLOYMENT SUPPORT
業務改善の実行支援について
「案件や顧客の情報が、表計算やメールに散らばっている」「書類のひな形への転記に毎回時間を取られている」「AIを使いたいが、顧客情報を外に出すのは不安」。こうした現場のボトルネックに対し、当方は確実な実行支援を行います。
当方が運営する仕組み実装室では、現在の業務プロセスを解析し、企業の事業規模に合わせた最適なシステムアーキテクチャを設計します。生成AI、既存SaaS、Webアプリケーション、デスクトップツールなどの各コンポーネントをシームレスにデータリンクさせ、現場で確実に機能する「仕組み」として実装することがミッションです。
具体的な仕様や、作るべきシステムが決まっていないフェーズでも問題ありません。まずは、現在直面している業務上のエラーや、負荷となっているプロセスについて共有してください。現場と経営を繋ぐプレイングマネージャーとして妥協なくやり切り、最適な業務環境へとデプロイします。
