土木行業軟件應向開源發展

土木行業軟件應向開源發展

   

1.信息技術的應用

 

隨着計算機技術的發展,信息技術的應用業已滲透到了社會的各行各業。在土木工程行業,先進的信息技術產品也受到極大的歡迎,人們也更加渴望能有更多更好的技術產品被開發出來,將人們從日益重負的工作中解脫出來,提高工作效率和工作質量。這個改善是顯著的,如若到現今許多的設計單位,已經很難看見有人再伏在圖版前描畫圖紙。一些過去尤顯重要的設計硬件都被拋棄在了一邊,轉而使用先進的CAD軟件。

究竟截至目前,計算機信息技術已經在土木行業的那些方面得到應用了呢?我們可以大致把它們歸爲數值分析、圖形設計、結構分析、力學計算、工程測量、施工技術及項目管理、仿真與模擬、工程信息化、協同工作等方面。

 

2.現在的狀況

 

時至今日,計算機器件技術、組成技術得到了很大地發展,計算機的處理能力和系統結構能夠適應各種不同的應用要求。然而,計算機的性能的發揮還要看是否有高效的軟件,提高硬件的利用率,提高系統靈活性。

在土木行業,已經不乏有許多好的軟件得到應用。可是,只要是軟件就必定會有自己的生命週期。一方面,是隨着工程技術的發展,出現了新的解決問題的方法。要把它們轉移到過去的計算機軟件中,就需要提供商對軟件的相關功能模塊進行重構維護,用戶則只能拭目以待。另一方面,行業軟件經常是爲解決某一方面的問題而設計,當用戶出現額外的需求,過去的軟件商往往難以兼顧,使得用戶不得不去尋求其他的或者編寫新的軟件。這樣做,最終都提高了應用的成本,降低了軟件的利用率。

軟件提供商獨佔核心產品產權,這是當前軟件的一個特點。這也造就瞭如微軟、IBMAutodesk等一批軟件公司。可是,這樣的局面下出現了許多問題,比如軟件的性能和安全性完全掌握在提供商手中,軟件公司常向用戶隱瞞設計或開發過程中的漏洞。另外一個問題是,當新的公司或個人想進入這一領域時,不得不從頭開始,重複已經得以實現基礎性技術環節,以及可能陷入被率先這一領域的公司的起訴的風險。

 

3.該如何解決

 

開源軟件 open source software

解決一個的問題都需要提出一個可行的方法,開源軟件就是這個方法

 

4.爲什麼開源軟件可以解決?

 

開源軟件的定義讓它具有了可自由重新發行、可以被修改和衍生新作品、不限制使用目的、不收取銷售版稅、可多人協同開發等特點(可以參考附錄1的開源軟件定義)。開源軟件和自由軟件的最大區別就是開源軟件並沒有限制商業用途。自由軟件是Richard Stallman的哲學,而開源軟件則理性的思考了從事軟件行業人們的生存,並且讓開源與商業軟件可以更大程度的混合。

正因爲如此多的優點,開源軟件具有極大的生命力和靈活性。有關土木行業軟件現狀的問題,也一一得解。其實,不僅僅是在土木行業,在計算機相關各個領域都敘述掀起了開源運動。只是,在互聯網技術領域相對較快。並且,之前如IBM這樣的計算機業巨頭也積極投身到開源社區。不過,在土木行業軟件領域,這隻還是個開始,但也是一種迫切的需求。

附錄1   [原文] 出自 www.opensource.org  [譯者] Dirk Xu                   【有修改】

   

【開源軟件定義】

  

開源,並不僅僅是公開源代碼。 開源軟件的發行必須遵守以下標準:
1.
自由重發行

任何組織都可以把一個或多個不同的開源軟件作爲自己程序的一部分,來進行出售或分發。開源軟件的許可權中,不能對此要求支付版權費或其它費用。

[] 自由發佈限制了程序商因謀求短期營利,而放棄某些長期收益的作法。
2.
源代碼

發佈的程序必須包含源代碼。如果產品的發佈中沒有源代碼,那麼必須提供一個免費的,容易獲得其源代碼的方式,比如Internet的免費下載, 以便於其更好的傳播與複製。 源代碼必須以一種易於程序開發人員開發的方式發佈。 一切混淆源代碼的作法都是不允許。以一種中間產物的形式(比如,預處理指令,轉譯程序)發佈其源代碼也是不允許的。

[] 清晰的源代碼促使人們修改它,促進了開源軟件的升級、進化。
3.
衍生作品

開源軟件必須許可人們對其進行修改和對它產生衍生作品的權利。允許人們以原作品同樣的許可權,發佈它們修改後的或衍生出的作品。

[] 提供易於修改的源代碼,還需要賦予人們修改的權利,才能讓開源軟件快速變革。
4.
作者源代碼的完整性

當開源軟件使用者發佈其修改的產品時,開源軟件作者可以限制人們對其原作品的發佈。人們不可以發佈原作品, 除非許可權中允許補丁程序可以與原作品一起發佈, 以便於其它使用者安裝和使用這些補可作品。許可權限中可以要求衍生的作品以不同於原作品的名字或版本號發佈。

[] 促進修改開源軟件是件好事,但需要讓使用者知道,誰該負責這個軟件。原作者和維護者都應該擁有提供幫助和保護其名譽的權利。補丁 + 源碼的發佈方式,可以確保開源作品易於獲得穩定版,同時確保非官方的修改可以被人們使用,並且這些修改可以被人們很容易地識別出來。
5.
不得歧視個人或團隊

開源軟件的許可協議中,不能存在對個人或團隊歧視的條款。

[] 爲了最大化的利益,任何人或團隊都有平等的權利爲開源事業做出貢獻。
6.
不得歧視任何使用目的

開源軟件的許可協議中,不得約束人們對其在某些行業的使用或開發。例如,不可以阻止人們把它用於商業,或遺傳學上的研究。

[] 防止開源軟件的許可權中有阻止其用於商業行爲的陷阱。我們想要商業開發人員加入開源事業中來。
7.
許可證的發行

所有對開源軟件進行重新發布的軟件,都會被該開源軟件中所附的發佈條款約束,但不可以再有另個的條款約束。

[] 此條款的目的是防止因某些未公佈的條款,而終止某個開源的發佈。
8.
許可證不能針對某個產品

開源軟件中所附的權限,與它發佈在某個產品中無關。如果從發佈的開源程序中提取出一部分程序,進行使用或發佈,同樣受到原作品中發佈條款的約束。

[] 此條款是阻止另一種開源軟件許可權的陷阱。
9.
許可權不能約束其它軟件

許可權不能約束與其一同發佈的其它軟件。例如,許可權中不能強調與其一同發佈的其它軟件,也必鬚髮布爲開源軟件。

[] 開源軟件中的許可權僅可以約束自己。GPL兼容此條例。使用GPL庫的軟件,它需要遵守GPL許可,但它使用到的其它第三方庫,可以獨立出來,並不需遵守GPL許可。
10.
許可權必須技術中立

許可權中不可以間接或直接地鼓勵某些個別的技術。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章