關於系統開發的伺服器與基礎設施相關的法律問題
在企業中使用的IT系統在某種意義上,是通過創建規格書和設計書,並撰寫相應的源代碼來構建的。然而,系統的實際運作不僅僅依賴於這些軟性的方面,還需要物理的電腦,即基礎設施。本文將解釋在系統開發項目中,與基礎設施這一領域深度相關的法律問題。
在IT系統中,基礎設施是什麼?
進行系統開發的技術人員被稱為系統工程師(SE)。開發項目從上游流程開始,如創建規範書和設計書,然後實施程序和進行測試,這是大致的流程。然而,廣義上的系統工程師(SE)可以說是負責所有這些所需的工作的技術人員,但根據公司或工作場所,可能會根據負責的工作內容和領域進一步細分名稱。基礎設施工程師這個名稱指的是負責IT系統開發和運營工作的技術人員,特別是負責維護物理計算機運行環境的人員。在公司或工作場所使用的IT系統在某種意義上是由源代碼組合而成的抽象構造。然而,為了使該系統能夠發揮其本來期待的作用,建立包括服務器和網絡在內的基礎設施環境是必不可少的。系統開發的實務工作是通過實施程序源代碼和支持其運行環境的基礎設施環境建設的兩個方面來進行的。這種觀點被認為對於預防意外故障的發生也是重要的。
具體情況下,基礎設施問題如何引發項目失敗
在系統開發項目中,過於專注於抽象的程式或源碼設計,而忽視基礎設施維護的視角,這種情況在現實中確實可能發生。然而,如果兩者的步調不一致,有時可能會導致項目失敗的風險。
伺服器規模設定錯誤引發的爭議案例
例如,程式的實現和測試等全部結束後,最終發現伺服器的處理能力不足,導致系統無法實際使用。此外,預測系統在運營階段可能承受的負載,並根據系統規模進行基礎設施維護的行為被稱為「規模設定」。由於伺服器規模設定的錯誤而導致問題升級的案例在過去確實發生過。(雖然最終以和解解決,但可以參考這個著名的案例。)關於雙方當事人的爭議以及通過「和解」這種處理方式解決問題的方法,本所在以下的文章中進行了詳細的解釋。
https://monolith-law.jp/corporate/disputes-related-to-system-development[ja]
爭議通過和解達成結束,簡單來說,就是雙方當事人通過「對話」解決了爭議。因此,與法院判決的情況不同,和解內容並不會作為判例累積,通常具有很強的個別性。
案例的本質是,對於不明確的規範,供應商應承擔的責任範圍
然而,這種爭議的本質可能是「對於未明確規定的事項,供應商應承擔多大的責任」。考慮到這一點,您可以從以下文章的內容中獲得許多提示。
https://monolith-law.jp/corporate/system-development-specs-function[ja]
在上述文章中,本所解釋了規範書中未記載的事項中,供應商應該承擔多大的實施義務。在這裡,本所解釋了在需求定義書和基本設計書等可以輕易視覺化的「界面方面」(所謂的「前端」領域)和數據遷移等「邏輯方面」(所謂的「後端」,「數據庫」領域)的情況大不相同。也就是說,通常對於系統開發項目沒有專業知識的訂購者/用戶可以輕易確認規範問題的「界面方面」,訂購者/用戶更容易承擔責任。另一方面,「邏輯方面」的問題,接受者/供應商更容易承擔責任。考慮到這些因素,伺服器規模設定的問題主要在於,除非是技術專家,否則很難認識到問題的所在,因此,接受者/供應商更容易承擔責任。因此,如果真的要在法庭上就此問題進行全面的爭議,除非有積極的情況可以免除接受者/供應商的責任,否則預計接受者/供應商可能會受到不利的判決。
防止因伺服器尺寸錯誤而引起的問題的措施
為了預防上述的問題,重要的是要將程式的實現、源碼的描述等業務與基礎設施周邊的環境準備的步調統一。具體可考慮的措施如下。
在合約上明確規定與伺服器尺寸相關的責任歸屬
不僅限於這種情況,許多與系統開發項目相關的爭議,往往源於系統開發的專家(即供應商)與熟悉公司內部情況的用戶之間的角色分配不明確。雖然兩者的緊密合作對項目的順利進行是必不可少的,但在此過程中,最好通過合約等方式盡可能明確地確定角色分配和責任範圍。
具體化開發要求,完全進行變更管理
此外,如果要實現的功能要求模糊,這種爭議的風險也會增加。這涉及到項目初期的需求定義階段的規範明確化,以及項目途中的變更管理兩個方面。關於如何應對項目途中的規範變更,本所在以下的文章中進行了詳細的解釋。
https://monolith-law.jp/corporate/howto-manage-change-in-system-development[ja]
選擇符合項目性質的開發模型
此外,與上述兩點的對策深度相關的是,根據系統開發項目的性質和規模等,選擇適當的開發模型是非常重要的。一般來說,對於可能需要伺服器尺寸的一定規模以上的系統開發,採用適合明確規範和責任範圍的瀑布模型的優點會增加。關於根據項目性質選擇適當的開發模型的問題,本所在以下的文章中進行了詳細的解釋。
https://monolith-law.jp/corporate/legal-merits-and-demerits-of-development-model[ja]
總結
為了確保系統開發項目的順利進行,由基礎設施周邊環境整備引發的問題往往容易被忽視。對於非技術專家來說,關注到基礎設施周邊的問題可能會帶來不小的負擔。然而,這些問題的預防措施可以說是「明確化規格/徹底變更管理」、「明確化角色/責任範疇」、「根據項目規模和預算選擇開發模型」等基本措施的延伸。從事企業法務的人首先應該理解的是,對於基礎設施的問題,預防法務的基礎是完全可以應用的。此外,對於IT領域的技術人員,理解基礎設施的問題可能成為項目嚴重的風險,並順利地管理實務工作,是非常重要的。
Category: IT
Tag: ITSystem Development