力扣 題目45- 跳躍遊戲 II
中科軟測認證中心(第三方軟體測評)
1、支援GB/T 25000.51的質量特性
(1)產品質量模型及特性
-
功能性
- 功能完備性
- 功能正確性
- 功能適合性
- 功能性的依從性
-
效能效率
- 時間特性
- 資源利用率
- 容量
- 效能效率的依從性
-
相容性
- 共存性
- 互操作性
- 相容性的依從性
-
易用性
- 可辨識性
- 易學性
- 易操作性
- 使用者差錯防禦性
- 使用者介面舒適性
- 易訪問性
- 易用性的依從性
-
可靠性
- 成熟性
- 可用性
- 容錯性
- 易恢復性
- 可靠性的依從性
-
資訊保安性
- 保密性
- 完整性
- 抗抵賴性
- 可核查性
- 真實性
- 資訊保安性的依從性
-
維護性
- 模組化
- 可重用性
- 易分析性
- 易修改性
- 易測試性
- 維護性的依從性
-
可移植性使用者文件集要求
- 適應性
- 易安裝性
- 易替換性
- 可移植性的依從性
- 產品說明要求
(2)使用質量模型及特性
- 有效性
- 效率
- 滿意度
- 抗風險
- 周境覆蓋
2、功能性
(1)功能完備性——指功能集對指定的任務和使用者目標的覆蓋程度
即需求規格說明書或其他技術說明書中有關軟體功能需求在軟體中被完整實現的情況,軟體實際功能覆蓋文件中 所有功能的程度。使用者文件集和產品說明中指定的功能點與軟體中的功能點進行匹配,將軟體應實現的功能(如功能清單)與實際測試中執行的測試用例進行對應,形成功能對照。
•微信產品經理要求本次迭代實現三種支付方式(支付密碼、指紋支付、刷臉支付)期望
(2)功能正確性——指產品或系統提供具有所需精度的正確結果的程度
功能正確性用於測量軟體提供準確資料的能力,驗證軟體產品提供與所需精度相符的結果或效果的能力。開發者或維護者可以通過驗證軟體特定功能(該功能的實際輸出結果師傅符合需求規格說明書中定義的特定目標的預期結果),對使用者文件集中陳述的軟體功能性限制條件進行驗證,如驗證字串長度限制、數字精度、郵箱格式等要求。
•某社交平臺的資訊釋出欄位長度限制為140字(3)功能適合性——指軟體功能促使指定的任務和目標實現的程度
功能適合性主要指滿足使用者適用要求的程度,也就是軟體產品提供的功能是否是需方或使用者需要的功能。這種適用要求可以在需求規格說明書、使用者操作手冊或使用者的期望中標識。功能是否按照需求規格說明書、使用者操作手冊規定執行。對於功能目標實現的程度,可通過使用者執行系統期間是否出現未滿足的功能或不滿意的操作情況進行識別,是否提供合理的和可接受的結果以實現使用者任務所期望的特定目標。
(4)功能性的依從性——指產品或系統遵循與功能性相關的標準、約定或法規以及類似規定的程度。
產品說明中是否提及產品功能性的相關標準、約定或法規及類似規定要求,若提及,並提供證明材料,則認可;否則,驗證軟體與提及的檔案(需求文件)要求是否相符。
•系統文件滿足GB/T 8567:2006 《計算機軟體文件規範》要求3、效能效率
(1)時間特性——指產品或系統執行其功能時,其響應時間、處理時間及吞吐率滿足需求的程度。
時間效率反映與執行速度相關的效能。響應時間是指從使用者發起一個請求開始到伺服器完成對請求的處理並返回處理結果所經歷的時間。使用者請求可以是一個單步驟操作,也可以是完成某項事務過程的一個步驟,如資料庫查詢所花費的時間、將字元回顯到終端上所花費的時間、訪問web頁面所花費的時間。
•10w人同時點選指紋支付功能,從點選指紋到介面顯示支付成功資訊,耗時<=2s(2)資源利用性——指產品或系統執行其功能時,所使用資源數量和型別滿足需求的程度。(人力資源屬於效率的一部分)
資源利用性主要考察系統所採用的各種資源的利用程度。資源並不僅僅指執行系統的硬體,而是指支援整個系統執行程式的一切軟/硬體平臺。一般考察伺服器、資料庫以及中介軟體的資源利用情況,伺服器監控資源主要包括CPU利用率(%)、可用記憶體(MB、GB)、磁碟I/O(MB/s),寬頻(Mb/s)等指標。資料庫監控資源包括資料緩衝區、命中率等。
•10w人同時點選指紋支付功能,從點選指紋到介面顯示支付成功資訊,伺服器效能指標滿足閾值區間(cpu<=80%,memory<=85%)(3)容量——指產品或系統引數的最大限量滿足需求的程度。(引數可包括儲存資料項數量、併發使用者量、通訊寬頻、交易吞吐量和資料庫模式)
容量主要反映系統能夠承受的最大併發使用者數、最大的請求極限,以及系統可能存在的最大事務吞吐量、最大資料容量和資料處理容量,以及在何種極端的情況下,系統出現緩衝區溢位、訪問超時等問題。通常情況下,最大使用者併發數指在實際執行環境下系統能夠接受的最大併發使用者,如網上訂票系統能夠承受多少使用者同時訂票。典型的資料庫處理容量如系統能夠處理的最大檔案長度、資料庫能夠處理的最大資料庫記錄數。
•微信遊戲小程式子系統可同時滿足線上人數2800萬人/小時。4、相容性
(1)共存性——指在與其他產品共享通用的環境和資源的條件下,產品能夠有效執行其所需的功能並且不會對其他產品造成負面影響的程度
軟體在執行和安裝過程中必須要與其他軟體進行互動,共存性主要考察軟體產品安裝和執行時與正在執行的軟體之間的共存性約束。兩個軟體同時執行時,系統的CPU、程序等系統資源是否異常,或者造成其他軟體執行錯誤或本身不能正確地實現功能,或者系統出錯,軟體使用者介面顯示不友好等。
•C/S架構的軟體應用與360防毒軟體無法共用,使用Chrome瀏覽器訪問的web系統無法與瀏覽器外掛共用。 (2)互操作性——指兩個或多個系統、產品或元件能夠互動資訊並使用已交換資訊的程度。資料格式的可交換性:軟體互操作性表現為軟體之間共享並交換資訊,以便能夠互相協作共同完成一項功能的能力,如軟體是否支援.xls、.doc檔案的匯入/匯出等。
•系統資料支援匯入匯出,系統間通過介面進行資料交換。 5、易用性(1)可辨識性——指使用者能夠辨識產品或系統是否適合他們要求的程度。需要注意的是:可辨識性取決於通過對產品或系統的初步印象或任何相關文件來辨識產品或系統功能的能力;產品或系統提供的資訊可包括演示、教程、文件或網站的主頁資訊。
使用者通過查閱需求文件、設計文件、操作手冊等使用者文件集和產品說明,辨識產品或系統功能的程度。使用者在首次使用產品或系統時,要考察能夠了解到的功能項。產品或系統提供的演示、教程、文件或網站的主頁資訊能夠幫助使用者辨識產品或系統是否符合他們的要求。
•學前兒童教育網站,以影象和音視訊為主,而不以大量文字來表達(2)易學性——指在指定的使用周境中,產品或系統在有效性、效率、抗風險和滿意度特性方面,為了學習使用該產品或系統,這一指定的目標可為指定使用者使用的程度。。
使用者依據使用者文件和有關幫助機制應能正確地完成任務,即當藉助使用者介面、幫助功能或使用者文件集提供的手段,終端使用者應能夠容易學習如何使用某一功能。系統可以通過提供線上幫助、可操作指導的視訊,可操作課程系統等措施,使使用者容易學會使用該產品或系統。
•系統幫助功能,首次登陸時以視訊的形式對系統操作進行講解。(3)易操作性——指產品或系統具有易於操作和控制的屬性的程度。
終端使用者能夠根據使用者文件集對產品或系統進行操作,並且實際結果應與使用者文件集相一致。產品或系統的提示資訊應易於理解,便於使用者糾正使用中的錯誤。
•身份證號輸入框提示輸入18位的二代身份證,輸入不滿18位給予使用者修改提示。(4)使用者差錯防禦性——指系統預防使用者犯錯的程度。
使用者在執行具有嚴重後果的刪除、蓋寫(覆蓋寫入)以及中止一個過長的處理操作時,該操作應是可逆的,或者有明顯得警告和提示“確認”資訊。
•進行刪除操作時,彈出提示框“是否確認刪除” 。(5)使用者介面舒適性——指使用者介面提供令人愉悅和滿意的互動程度。(這涉及產品或系統旨在提高使用者愉悅性和滿意度的各種屬性,如顏色的使用和圖形化設計的自燃性)
內部或外部使用者介面舒適性測度是用來評價使用者介面的外觀好壞和受到如螢幕設計和顏色等因素影響的程度。好的顏色組合能夠幫助使用者快速閱讀文字或識別影象,有利於辨識產品或系統的選單項。使用者介面不應出現亂碼、不清晰的文字或圖片等影響介面美觀和使用者操作的情形。
•APP介面的UI配色符合鄰近色配色原則(6)易訪問性——指在指定的使用周境中,為了達到指定的目標,產品或系統被具有最廣泛的特徵和能力的個體所使用的程度。(能力的範圍包括與年齡有關的能力障礙)
易用性以實現制定目標使用者(如特殊使用者)可以訪問的程度來度量,特殊群體包括認知障礙,生理缺陷,聽覺/語言障礙和視覺障礙的使用者。
•Windows作業系統為視覺障礙人員提供放大鏡,為手部功能不便人士提供螢幕鍵盤等功能。6、可靠性
(1)成熟性——指系統、產品或元件在指定條件下、指定時間內執行指定功能的程度。
成熟性一般是指軟體產品在滿足其要求的軟/硬體環境或其他特殊條件(如一定的負載壓力)下使用時,為使用者提供相應服務的能力。
•某系統要求平均失效間隔時間不得小於30個自然日。(2)可用性——指系統,產品或元件在須要使用時能夠進行操作和訪問的程度
可用性是對產品可使用程度的一個評價,如對於預定的系統操作時間中實際可用時間的比例、平均無故障時間。根據需求規格說明書或產品說明中描述的產品或系統指定的系統操作時間編寫測試用例,記錄系統實際提供的系統操作時間,例如,在文件中寫明系統支援72小時服務,據此編寫測試用例,執行測試用例,記錄系統實際提供的操作時間。在測試期間,當產品或系統出現失效時,記錄下從宕機到軟體可正常使用所花費的時間,以及總的宕機次數,計算出平均宕機時間。
•微信系統支援7×24小時不宕機,期間可正常處理相關業務的能力。(3)容錯性——指儘管存在硬體或軟體故障,但系統、產品或元件的執行符合預期的程度。
容錯性與發生執行故障或違反規定介面時產品或系統維持規定效能等級的能力有關。使用者操作某一功能導致產品或系統出現錯誤或異常時,與差錯處置相關的功能應與需求文件、設計文件、操作手冊等使用者文件集或產品說明中的陳述一致。在使用者文件集陳述的限制範圍內對產品或系統進行操作時,不應丟失資料。輸入違反句法條件的資訊時,產品或系統給出提示資訊,並且不能作為許可的輸入加以處理
•某產品在註冊賬戶時,使用者輸入6位電話號碼(電話號碼是非必填欄位,且要求不超過13位),介面會彈框提示異常資訊,處理錯誤彈框後,系統註冊功能正常執行。 (4)易恢復性——指在發生中斷或失效時,產品或系統能夠恢復直接受影響的資料並重建所期望的系統狀態的程度。 在產品或系統發生中斷或失效時,恢復系統所需時間的長短、業務系統恢復程度體現了系統的恢復能力。可通過資料備份恢復,最大限度降低損失。通過需求規格說明和產品說明中描述的資料備份和恢復方法,瞭解資料備 份和恢復機制、具體備份的資料資訊。 •Word文件過程中,系統異常斷電,內容未儲存,此時重新開機開啟word程式,會編輯提示是否恢復上次未儲存的內容。 7、資訊保安性 (1)保密性——指產品或系統確保資料只有在被授權時才能被訪問的程度。 確保資料只有在被授權時才能被訪問,須防止未得到授權的人或系統訪問相關的資訊或資料,還要保證得到授權的人或系統能正常訪問相關的資訊或資料。為了保證資料在傳輸過程中不被竊聽,須對通訊過程中的整個報文 或會話過程進行加密。例如,在交易系統中,涉及銀行賬號、交易明細、身份證號、手機號碼等敏感資訊,須保證這些資訊在傳輸過程中的安全性,可採用3DES(三重資料加密演算法)、AES(高階加密標準)和IDEA(國際數 據加密演算法)等進行加密處理。同時,須保證敏感資訊在儲存過程的保密性。啟用訪問控制功能,依據安全策略和使用者角色設定訪問控制矩陣,控制使用者對資訊或資料的訪問。使用者許可權應遵循“最小許可權原則”,授予賬戶承擔 任務所需的最小許可權,例如,管理員只須擁有系統管理許可權,不應具備業務操作權限;同時,要求不同賬號之間形成相互制約關係,系統的審計人員不應具有系統管理許可權,系統管理人員也不應具有審計許可權。這樣,審計員和 管理員之間就形成了相互制約關係。 •使用微信掃碼第三方服務時,系統會提示需要使用者進身份授權,點選同意按鈕,才能繼續訪問第三方資料。 (2)完整性——指系統、產品或元件防止授權訪問、篡改計算機程式或資料的程度。 為了防止資料在傳輸和儲存過程中被破壞或被篡改,一般會採用增加校驗位、迴圈冗餘校驗(CyclicRedundancyCheck,CRC)的方式,檢查資料完整性是否被破壞,或者採用各種雜湊運算和數字簽名等方式實現通訊過程中的資料完整性。採用關係型資料庫儲存資料,例如,採用Oracle資料庫,增加資料完整性約束,如唯一鍵、可選值、外來鍵等;實現事務的原子性,避免因為操作中斷或回滾造成資料不一致,完整性被破壞。 •使用者登入時,系統對使用者密碼和資料庫中儲存的密碼的MD5值做校驗,判斷密碼正確性。 (3)抗抵賴性——指活動或事件發生後可以被證實且不可被否認的程度。 啟用安全審計功能,對活動或事件進行追蹤。對審計日誌進行管理,日誌不能被任何人修改或刪除,形成完整的證據鏈。採用使用數字簽名處理事務,在收到請求的情況下為資料原發者或接收者提供資料原發和接受政績。 •微信產品在進行修改密碼、支付等敏感操作,系統根據log級別進行記錄使用者行為。 (4)可核查性——指實體的活動可以被唯一追溯到該實體的程度。 可核查性和抗抵賴性不同,重點在追溯實體的程度。主要考察啟用安全審計功能之後,覆蓋使用者的多少和安全事件的程度等。覆蓋到每個使用者活動,使用者活動的日誌記錄內容至少應包括事件日期、時間、發起者資訊、類 型、描述和結果等;審計跟蹤設定是否定義了審計跟蹤極限的閾值,當儲存空間被耗盡時,能否採取必要的保護措施。例如,報警並匯出、丟棄未記錄的審 計資訊、暫停審計或覆蓋以前的審計記錄等。 •門禁系統中可追查到進入某房間的人員身份資訊。 (5)真實性——指物件或資源的身份標識能夠被證實符合其宣告的程度。 系統提供專用的登入控制模組對登入使用者進行身份標識和鑑別,驗證其身份的真實性,同時需證實符合其宣告的程度;使用者的身份鑑別資訊不易被冒用,同時不存在重複的使用者身份標識。系統中使用者名稱唯一且與使用者一一對 應,採用使用者名稱和口令的方式對使用者進行身份鑑別,提高使用者的口令開啟複雜度,例如,口令長度在8位以上時,應至少包含數字、大小寫字母、特殊字元中的三種,強制定期更換口令;系統不存在共享賬戶。提供登入失敗處 理功能,採取如結束會話、限制非法登入次數和自動退出等措施,這些都可以在使用者文件集中進行要求。 •CA系統中,可對假冒證書進行鑑別,並拒絕假冒證書的訪問。 8、維護性 (1)模組化——用於衡量由多個獨立元件組成的系統或計算機程式中一個元件的變更對其他元件的影響最小的程度。 所謂模組化就是把程式劃分成若干模組,每個模組完成一個子功能,這些模組被集中起來就組成一個整體。模組化是好的軟體設計的一個基本準則,耦合性是對程式結構各個模組之間相互關聯的一種度量,取決於 各個模組之間介面的複雜程度、呼叫模組的方式等。模組間耦合性越低,模組獨立性越強,相互間的影響也越小,如ESB(企業服務匯流排)、WebService架構、微服務架構、SOA(面向服務的架構)、訊息傳遞等。 ESB是一種在鬆散耦合的服務和應用之間標準的整合方式。微服務架構強調的是業務系統需要徹底的元件化和服務化,原有的單個業務系統拆分成多個可以獨立開發、設計、執行和運維的小元件。這些小元件之間通過服 務完成互動和整合,一個元件的變更對其他元件的影響較小。 •系統使用者管理功能由許可權管理模組、角色管理模組、賬戶管理模組三個模組構成。 (2)可重用性——指資產能夠被用於多個系統或其他資產建設的程度。 在軟體工程中,重用是指使用一個產品中的元件來簡化另一個不同產品的開發。重用可以減少維護的時間和降低維護成本。軟體開發的全生命週期都有可重用的價值,包括專案計劃、體繫結構、需求規格說明、使用者文件和 技術文件、使用者介面和測試用例等都是可以被重複利用或借鑑的。 •微信聊天表情包可在聊天視窗和朋友圈兩個功能中重用。 (3)易分析性——用於評估預期變更(變更產品或系統的一個或多個部分)對產品或系統的影響、診斷產品的缺陷或失效原因、識別待修改部分的有效性和效率的程度。 易用性評估中的效率程度是指維護者或使用者診斷產品的缺陷或失效的原因,或者標識須要修改的部分所要耗費的工作量。在操作產品或系統的過程中,出現異常或失效時,有明確的提示資訊,根據提供的機制能有效地解決 問題。需求文件、設計文件、操作手冊等使用者文件集中描述了產品或系統常出現的問題或現象,以及故障排除方法等。 •Windows藍屏時會提供錯誤資訊和錯誤程式碼,方便使用者查詢解決方案。 (4)易修改性——指產品或系統可以被有效地、有效率地修改,並且不會引入缺陷或降低現有產品質量的程度。 當產品或系統支援對編碼、設計、文件和驗證進行變更時,使用者作出相應修改後,產品或系統能夠正確執行。修改的實際結果與預期結果相一致,修改形式可以是對應用系統引數進行配置,也可以是對使用者許可權和業務流程 等進行定製化。 •Windows系統支援修改配置,從效能模式變為節能模式,且不影響作業系統使用。 (5)易測試性——指能夠為系統、產品或元件建立測試準則,並且通過執行測試來確定測試準則是否被滿足的有效性和效率的程度。 測試準則是指能夠根據需求文件或操作手冊編寫測試用例和執行測試用例。檢視需求文件、設計文件、操作手冊等使用者文件集,是否容易選擇檢測點進行測試用例的編制;軟體的功能或配置被修改後,應驗證是否可對修改 之處進行測試。通過編寫測試用例,執行測試用例,驗證實際效果與預期效果是否一致。 •系統需求文件描述準確且無二義性,易於編寫測試用例以及進行測試。 9、可移植性 (1)適應性——指產品或系統能夠有效地、有效率地適應不同的或演變的硬體、軟體或其他執行(或使用)環境的程度。 產品或系統適應軟體、硬體變化的能力,包括硬體環境、作業系統、資料庫資料庫管理系統、瀏覽器、支撐軟體的適應性。 •微信產品支援在不同Android廠商的UI中顯示。 (2)易安裝性——指在指定環境中,產品或系統能夠成功地安裝和解除安裝的有效性和效率的程度。 考察安裝文件中是否明確產品或系統的安裝方法,同時考察產品安裝和解除安裝過程的有效性和效率,如安裝文件的有效性、軟體安裝和解除安裝過程的自動化程度。安裝文件中指定的每一種安裝選項要素均被覆蓋,包括軟體的安裝安裝方式(自定義安裝、快速安裝等)、路徑、使用者名稱、資料庫等,每種情況均能成功安裝軟體;提供產品或系統解除安裝的方法,例如,採用解除安裝嚮導進 行自動解除安裝、從控制面板中的新增/刪除中進行解除安裝或直接刪除對應的資料夾等。 •微信產品在安裝過程中提供圖形化嚮導介面,供使用者自定義安裝、快速安裝。 (3)易替換性——指在相同的環境中,產品能夠替換另一個相同用途的指定軟體產品的程度。 產品替換方式包括產品的覆蓋、升級等,安裝文件中規定重新安裝或升級的規程,並按照安裝規程能夠成功重新安裝或升級軟體。 •移動終端中APP支援新版本快速升級(替換部分檔案)。(注意:標黑點的都是舉的例子)