コンテンツへスキップ

AUSIR

サービス会議プラットフォーム

2023 - now · プラットフォームアーキテクチャとエンジニアリング

フリウリ・ヴェネツィア・ジューリア州の水道・廃棄物当局である AUSIR 向けの内部プラットフォーム。Conferenze di Servizi をエンドツーエンドで運用し、関係主体・段階・意見を、稼働日と祝日を数える法的に正確な期限エンジンの上で管理し、決定の自動失効、カレンダー、通知を備える。

法的手続きを実用的なソフトウェアへ

AUSIR — Autorità Unica per i Servizi Idrici e Rifiuti — は、フリウリ・ヴェネツィア・ジューリア州全体の統合水道サービスと都市廃棄物管理を統括する唯一の州当局であり、州内のすべての自治体が参加している。同当局のために構築されたプラットフォームは、期限に縛られた一つの具体的な法的プロセス、すなわちインフラ事業が認可される Conferenza di Servizi を運用する。

Conferenza di Servizi は会議ではなく、規制された手続きである。事業が前進するとき — たとえば主要な水道本管に緊急工事を伴う「Masterplan degli acquedotti」のような場合 — AUSIR は関係するすべての主体から法定の期限内に正式な意見(pareri)を集め、決定をもって締めくくらなければならない。期限は確定的である。一つでも逃したり、一つでも数え間違えたりすれば、法的立場が変わる。プロダクトの役割は、手続き全体をまとめ上げ、運用する人々が日付を手作業で再計算するのではなく信頼できるようにすることだ。

システムは手続きを明示的なステートマシンとしてモデル化する。会議は段階とサブ段階を経て進む — istruttoria 段階、次に簡易会議、そして必要に応じて完全会議 — それぞれに独自のステータス(completanon completasospesa)と独自の法定期間があり、5 日間の審査ステップから 60/70 日および 125/180 日の会議まで及ぶ。会議一覧は運用の拠点だ。各手続きが、その年・事業・会議の ID、現在のステータス、直近のイベント、件名とともに並ぶ。いずれかを開くと、オペレーターが案件の全期間にわたって過ごす作業領域 — Stato e azioniInformazioniCalendarioAttiVerbaliNote e commenti — が現れる。

プラットフォームの中核は期限エンジンであり、ここに最も多くのエンジニアリングの注意が払われた。法的リスクが最も高いのがここだからだ。期限は決して素のカレンダー日数で数えられない。週末と管理された祝日の集合 — イタリアの国の祝日、州の祝日、AUSIR 自身の閉庁日で、何年も先まで事前登録されている — を飛ばして稼働日ベースで計算され、閉庁日に当たる期限はすべて次の稼働日へ移される。その上に意見受領のロジックが乗る。parere が実際に受領された日付はアップロードされた日付と異なり得るため、システムは実際の受領日を記録し、遡及記入を許可するが将来の日付はブロックし、会議の状態を今日ではなくその日付時点で評価する。否定的な意見は手続きを第二段階の会議へ進めることがある。これらの動きの一つひとつが、実行したユーザーとともに監査証跡に書き込まれる。

そのエンジンの周囲では、手続きの残りは手作業で見守るのではなく自動化されている。決定の失効は、期限を締め、適時にアラートを上げるスケジュールされたジョブで処理される。カレンダーは期限とイベントを週ごとに配置し、in scadenza のものを示す。通知は、サーバー上のテンプレートから生成され、アプリ内とメールの両方でオペレーターに届く。anagrafica モジュールは参加主体とその referenti を保持し、それぞれを参加する会議に結び付ける一方、ドキュメント、行為、議事録は会議ごとに統合され、何かが誰かの受信トレイにだけ存在することがないようにする。

内部はセルフホスト型の二層システムだ。管理画面は Vue 3 のシングルページアプリ — Vite、Pinia、Pug テンプレート、Tailwind と DaisyUI、カレンダーコンポーネント、Supabase アクセス — で、Zod 検証、JWT 認証、Handlebars による国際化メール、そして共通の TypeScript パッケージを通じてエンドツーエンドで共有される同じ稼働日演算を備えた NestJS API が支える。データ、認証、ストレージはセルフホストの Supabase と PostgreSQL のスタック上で動き、S3 互換ストレージとスケジュールされた cron ジョブとともに Docker Compose で起動される。その結果は、遅く誤りの起きやすい法的な振り付けを、追跡可能で自動的かつ期限通りにする、焦点を絞った行政向けツールである。

ギャラリー