硬體和軟體的區別:
一、軟體是一種邏輯的產品,與硬體產品有本質的區別。
硬體是看得見、摸得著的物理部件或設備。在研製硬體產品時,人的創造性活動表現在把原材料轉變成有形的物理產品。
而軟體產品是以程序和文檔的形式存在,通過在計算機上運行來體現他的作用。
在研製軟體產品的過程中,人們的生產活動表現在要創造性地抽象出問題的求解模型,然後根據求解模型寫出程序,最後經過調試、運行程序得到求解問題的結果。整個生產、開發過程是在無形化方式下完成的,其能見度極差,這給軟體開發、生產過程的管理帶來了極大的困難。
二、軟體產品質量的體現方式與硬體產品不同。
質量體現方式不同表現在兩個方面。硬體產品設計定型後可以批量生產,產品質量通過質量檢測體系可以得到保障。但是生產、加工過程一旦失誤。
硬體產品可能就會因為質量問題而報廢。而軟體產品不能用傳統意義上的製造進行生產,就目前軟體開發技術而言,軟體生產還是「定製」的,只能針對特定問題進行設計或實現。但是軟體愛你產品一旦實現後,其生產過程只是複製而已,而複製生產出來的軟體質量是相同的。
設計出來的軟體即使出現質量問題,產品也不會報廢,通過修改、測試,還可以將「報廢」的軟體「修復」,投入正常運行。可見軟體的質量保證機制比硬體具有更大的靈活性。
三、軟體產品的成本構成與硬體產品不同。
硬體產品的成本構成中有形的物質占了相當大的比重。就硬體產品生存周期而言,成本構成中設計、生產環節占絕大部分,而售後服務只占少部分。
軟體生產主要靠腦力勞動。軟體產品的成本構成中人力資源占了相當大的比重。軟體產品的生產成本主要在開發和研製。研製成功後,產品生產就簡單了,通過複製就能批量生產。
四、軟體產品的失敗曲線與硬體產品不同。
硬體產品存在老化和折舊問題。當一個硬體部件磨損時可以用一個新部件去替換他。硬體會因為主要部件的磨損而最終被淘汰。
對於軟體而言,不存在折舊和磨損問題,如果需要的話可以永遠使用下去。但是軟體故障的排除要比硬體故障的排除複雜得多。軟體故障主要是因為軟體設計或編碼的錯誤所致,必須重新設計和編碼才能解決問題。
軟體在其開發初始階段在很高的失敗率,這主要是由於需求分析不切合實際或設計錯誤等引起的。當開發過程中的錯誤被糾正後,其失敗率便下降到一定水平並保持相對穩定,直到該軟體被廢棄不用。在軟體進行大的改動時,也會導致失敗率急劇上升。
五、大多數軟體仍然是定製產生的。
硬體產品一旦設計定型,其生產技術、加工工藝和流程管理也就確定下來,這樣便於實現硬體產品的標準化、系列化成批生產。
由於硬體產品具有標準的框架和接口,不論哪個廠家的產品,用戶買來都可以集成、組裝和替換使用。
儘管軟體產品復用是軟體界孜孜不倦追求的目標,在某些局部範圍內幾家領軍軟體企業也建立了一些軟體組件復用的技術標準。
例如,omg的corba,microsoft的com,sun的j2ee等,但是目前還做不到大範圍使用軟體替代品。大多數軟體任然是為特定任務或用戶定製的。
一、軟體是一種邏輯的產品,與硬體產品有本質的區別。
硬體是看得見、摸得著的物理部件或設備。在研製硬體產品時,人的創造性活動表現在把原材料轉變成有形的物理產品。
而軟體產品是以程序和文檔的形式存在,通過在計算機上運行來體現他的作用。
在研製軟體產品的過程中,人們的生產活動表現在要創造性地抽象出問題的求解模型,然後根據求解模型寫出程序,最後經過調試、運行程序得到求解問題的結果。整個生產、開發過程是在無形化方式下完成的,其能見度極差,這給軟體開發、生產過程的管理帶來了極大的困難。
二、軟體產品質量的體現方式與硬體產品不同。
質量體現方式不同表現在兩個方面。硬體產品設計定型後可以批量生產,產品質量通過質量檢測體系可以得到保障。但是生產、加工過程一旦失誤。
硬體產品可能就會因為質量問題而報廢。而軟體產品不能用傳統意義上的製造進行生產,就目前軟體開發技術而言,軟體生產還是「定製」的,只能針對特定問題進行設計或實現。但是軟體愛你產品一旦實現後,其生產過程只是複製而已,而複製生產出來的軟體質量是相同的。
設計出來的軟體即使出現質量問題,產品也不會報廢,通過修改、測試,還可以將「報廢」的軟體「修復」,投入正常運行。可見軟體的質量保證機制比硬體具有更大的靈活性。
三、軟體產品的成本構成與硬體產品不同。
硬體產品的成本構成中有形的物質占了相當大的比重。就硬體產品生存周期而言,成本構成中設計、生產環節占絕大部分,而售後服務只占少部分。
軟體生產主要靠腦力勞動。軟體產品的成本構成中人力資源占了相當大的比重。軟體產品的生產成本主要在開發和研製。研製成功後,產品生產就簡單了,通過複製就能批量生產。
四、軟體產品的失敗曲線與硬體產品不同。
硬體產品存在老化和折舊問題。當一個硬體部件磨損時可以用一個新部件去替換他。硬體會因為主要部件的磨損而最終被淘汰。
對於軟體而言,不存在折舊和磨損問題,如果需要的話可以永遠使用下去。但是軟體故障的排除要比硬體故障的排除複雜得多。軟體故障主要是因為軟體設計或編碼的錯誤所致,必須重新設計和編碼才能解決問題。
軟體在其開發初始階段在很高的失敗率,這主要是由於需求分析不切合實際或設計錯誤等引起的。當開發過程中的錯誤被糾正後,其失敗率便下降到一定水平並保持相對穩定,直到該軟體被廢棄不用。在軟體進行大的改動時,也會導致失敗率急劇上升。
五、大多數軟體仍然是定製產生的。
硬體產品一旦設計定型,其生產技術、加工工藝和流程管理也就確定下來,這樣便於實現硬體產品的標準化、系列化成批生產。
由於硬體產品具有標準的框架和接口,不論哪個廠家的產品,用戶買來都可以集成、組裝和替換使用。
儘管軟體產品復用是軟體界孜孜不倦追求的目標,在某些局部範圍內幾家領軍軟體企業也建立了一些軟體組件復用的技術標準。
例如,omg的corba,microsoft的com,sun的j2ee等,但是目前還做不到大範圍使用軟體替代品。大多數軟體任然是為特定任務或用戶定製的。