Tyler Technologies 如何透過 JSON Schema 縮短客戶回饋循環
挑戰
由於有多個政府客戶,Tyler Technologies 面臨著不斷滿足法律中定義的不同嚴格要求的挑戰。為每個客戶建立自訂規則非常耗時,Tyler Technologies 正尋求創建一個多租戶應用程式解決方案,該解決方案可以針對每個客戶進行自訂,而無需自訂程式碼。
Tyler 的多租戶應用程式解決方案需要一種簡單的方法來定義自訂資料和驗證規則,將權力交給客戶,而不是必須在自訂開發工作上進行大量投資。
「這樣一來,我們就可以把時間花在提供業務價值和創新應用程式上,而不是手動處理所有自訂工作。」- Tyler Technologies 首席軟體工程師 Andres Moreno。
解決方案
JSON Schema 允許 Tyler Technologies 以簡單易懂的格式為每個客戶建立和維護不同的模型定義。
JSON Schema 被選為定義資料結構的可行解決方案。Tyler 發現該標準在整個行業中得到廣泛採用,部分原因是使用了 OpenAPI,並且開放原始碼工具提供了豐富的功能。
「有了 JSON Schema、Formly 和 AJV,我們就能夠獲得我們所需的功能,以便為每個租戶動態呈現和驗證欄位,而無需開發人員來執行!」- Andres Moreno
Formly 允許從 JSON Schema 動態生成表單,使每個客戶都能根據其獨特的定義擁有獨特的表單。AJV 允許在伺服器端驗證來自這些相同表單的資料。
Andres 繼續說:「我們專注於 API 優先的開發,因此我們需要一種方法,以便在我們的 API 直接使用而不是通過生成的表單使用時,在伺服器端進行驗證。」
此外,AJV 還有一些選項可以利用註釋,例如 default
關鍵字,填寫缺失的屬性,並選擇性地過濾掉 schema 中未定義的資料。這些選項讓 Tyler Technologies 可以為客戶提供額外的價值,以滿足更廣泛的需求。
影響
減少了為滿足客戶特定需求而開發和交付自訂工作所需的工作量。現在可以使用 API 輕鬆更新現有的 schema,而無需等待完整的部署週期。
Andres 解釋說:「一個新的自訂欄位需要被完全識別並獲得批准,然後發送給開發團隊,由 QA 驗證,最後部署到生產環境。這個過程可能需要好幾天甚至好幾週。」
更新 JSON Schema 只需幾分鐘,由那些了解 JSON Schema 的人來操作,而不是完整開發週期和發布流程,這大大縮短了與自訂資料結構相關的錯誤的解決時間。
主要影響結果
Andres 說:「從過去需要幾天/幾週的過程,到能夠在幾分鐘內將東西展示給客戶。」
Tyler Technologies
Tyler Technologies 是為地方政府提供端對端資訊管理解決方案和服務的領先供應商。近年來,他們在公共部門的數位轉型中發揮了關鍵作用。


「我們授權公共部門創建更智慧、更安全、更強大的社群。我們的團隊正在為每個客戶的流程提供最具創新性的解決方案,而無需重新發明輪子;我們選擇組裝而不是自己構建一切。」
每個客戶的自訂開發工作是一項巨大的投資,需要一種更具成本效益和高效的方法。
開發中的優勢
「我們非常有信心,JSON Schema 已經解決了我們在開始這些專案時所面臨的挑戰」- Andres Moreno
Tyler 最初使用 Formly 的專有配置格式來動態生成表單,但需要在伺服器端驗證生成的資料。為客戶端和伺服器端建立不同的配置,這些配置需要匹配,這並不能給 Tyler 提供他們所需的可擴展性。
在調查時,他們發現 Formly 也支援使用 JSON Schema 進行配置。相同的 JSON Schema 可用於客戶端和伺服器端的驗證。經過最少的研究和原型設計後,很明顯使用 JSON Schema 將會很有用。
在展示如何輕鬆使用 JSON Schema 來建立可擴展的應用程式之後,Tyler 的其他團隊看到了使用單一配置來動態生成表單並對提交的資料執行驗證的吸引力。
JSON Schema 現在是開發現有和新應用程式時的核心考量。
「我們非常有信心,JSON Schema 已經解決了我們在開始這些專案時所面臨的挑戰。我們可以肯定地說,我們將繼續使用 JSON Schema 作為應用程式的核心,用於任何使用我們已建立的雲端基礎架構構建的未來應用程式。」Andres 解釋道。
感謝首席軟體工程師 Andres Moreno 和 Tyler Technologies 允許並使我們能夠與您分享此案例研究。