首先,軟體的效能和功能的源頭都是來自於使用者的需求。
功能指的是在一般條件下軟體系統能夠為使用者做什麼,能夠滿足使用者什麼樣的需求。拿乙個電子郵件系統來講,使用者期望這個軟體系統能夠提供收發電子郵件、儲存草稿、設定偏好等功能,只有這些功能實現了,使用者才認為這是他想要的軟體。但是隨著軟體市場競爭的激烈,軟體技術的日益提高,系統能不能工作已經是乙個最起碼的門檻,能夠「又好又快」才會得到使用者的青睞,而效能則是衡量軟體系統「好快」的乙個重要考慮因素。「好」就是要為使用者省錢,用最小的硬體成本執行軟體系統;「快」就是軟體響應時間要短,我們的使用者都是急性子,最好一秒鐘也不要等。簡單地說,效能就是在空間和時間資源有限的條件下,軟體系統還能不能工作。
如果把上面郵件的功能和效能需求量化,寫成使用者需求說明書可能是下面這個樣子:
功能:郵件系統能夠支援收發以30種語言為標題和正文的郵件,並支援貼上10mb的郵件附件。
效能:郵件系統能夠在2gb ram/1ghz cpu的伺服器上,支援10000註冊使用者,日均處理10000郵件,響應時間不超過5秒/封。
我們來對比一下功能需求說明和效能需求說明,發現兩者有一些不同之處:
(1)功能需求中名詞和動詞多,描述軟體主體和動作行為,比如「標題」、「正文」、「收發」、「貼上」等;
(2)效能需求中對涉及容量和時間詞彙多,如「2gb ram伺服器」、「1000註冊使用者」、「5秒/封」等。
相信我們的讀者已經從上面的對比看出功能和效能的區別了,軟體效能和功能區別的實質是,軟體功能焦點在於軟體「做什麼」,關注軟體物質「主體」發生的「事件」;而軟體效能則關注於軟體物質「做得如何」,這是綜合「空間」和「時間」考慮的方案(資源和速度),表現為軟體對「空間」和「時間」的敏感度。認識到效能的這個基本特徵對於效能測試人員非常重要,因為在下面的章節中我們將要通過多個「空間」和「時間」的組合,來揭開效能指標的實質和提高的辦法。另外,我們也要認清乙個事實,軟體的效能實現是建立在功能實現的基礎之上的。
這就像乙個人首先要能跑,這是乙個健康的人的正常功能,然後才能參加百公尺比賽,這就如對人身體的效能考驗。而百公尺比賽隱含了兩個要素:乙個是運動員有乙個一百公尺的運動空間;另乙個是比賽,要跑得足夠快,要在短時間內跑完。因此我們說百公尺比賽其實就是乙個空間和時間的綜合結果。
「空間」和「時間」是乙個哲學中抽象層次較高的概念,在不同的應用範圍有不同的詮釋。那麼在軟體理論和實踐中,我們怎樣理解「空間」和「時間」呢?所謂「仁者見仁,智者見智」,下面我們就分別從使用者的角度和軟體人員的角度來看一下軟體的效能。
**:
功能與結構的關係
加入公司快乙個半月了,對這裡的系統整體印象還是不錯的 首先 她 規模大,應用多,應用職責劃分較明確,應用間契約也比較清晰.但是深入到各個應用的 級就會發現很多的問題.這些問題總結為一句話就是 結構不太清晰.我深知這個問題的產生是有很多原因的.記得剛剛從師兄手裡接管tbc開發的時候,tbc的結構很好....
mac usb modem驅動軟體功能與demo
該 mac usb modem 驅動程式可以支援各廠商 cdma wcdma 系列平台,包括 mtk的 mt6268 qualcomm 的qsc6085 6290 等,並可以通過修改配置檔案驅動各廠商相容 usb cdc acm 類的modem 裝置。關鍵特性如下 1.支援mac os x 10.4...
EditText的功能與用法
edittext與textview 非常相似,它甚至與textview 共用了絕大部分xml屬性與方法。edittext 與 textview的最大區別在於 edittext 可以接受使用者輸入。edittext元件最重要的屬性是inputtype,該屬性相當於html的元素的type屬性,用於將e...