盡管說起軟件安全,大多數(shù)人都會聯(lián)想到網(wǎng)絡(luò)攻擊有關(guān)內(nèi)容,但其實(shí)在功能性能上同樣需要充分考慮。也就是說,一個應(yīng)用軟件在上線使用時(shí),不僅要讓人可以放心的把個人敏感信息存放在應(yīng)用軟件中,而且還需要軟件“質(zhì)量”好。
提到軟件“質(zhì)量”就離不開應(yīng)用軟件的功能/性能等測試。高“質(zhì)量”的軟件很少出現(xiàn)錯誤,按時(shí)交付并在預(yù)算范圍內(nèi),滿足要求、驗(yàn)收標(biāo)準(zhǔn)和/或期望,并且是可維護(hù)的。但在“質(zhì)量”要求上不同軟件的標(biāo)準(zhǔn)不一。一般來說,軟件質(zhì)量包括以下這2個方面:
1、運(yùn)行時(shí)的質(zhì)量
1) 性能效率:軟件系統(tǒng)及時(shí)提供相應(yīng)服務(wù)的能力
a.速度; 通過平均響應(yīng)時(shí)間來度量
b.吞吐量:通過單位時(shí)間處理的交易量來度量
c.持續(xù)高速性:保持高速處理速度的能力
2)信息安全性:
a.向合法用戶提供服務(wù)
b.阻止非授權(quán)用戶的使用
c.阻止惡意的攻擊
3)易用性:
軟件系統(tǒng)易于使用的程度
4)持續(xù)可用性
系統(tǒng)常時(shí)間無故障運(yùn)行的能力
5)可伸縮性
指當(dāng)用戶和數(shù)據(jù)量增加時(shí),軟件系統(tǒng)保持高服務(wù)質(zhì)量的能力
6)互操作性
指本軟件系統(tǒng)和其他軟件系統(tǒng)交換數(shù)據(jù)和相互調(diào)用服務(wù)的難易程度
7)可靠性
軟件系統(tǒng)在一定時(shí)間以內(nèi)無故障運(yùn)行的能力
8)魯棒性Robust(也稱健壯性,容錯性)
是指軟件系統(tǒng)在以下情況下依然能夠正常運(yùn)行的能力,用戶進(jìn)行了非法操作,相連的軟件系統(tǒng)發(fā)生了故障,其他非正常情況的發(fā)生。
2、開發(fā)期質(zhì)量屬性
1)易理解性:指設(shè)計(jì)被開發(fā)人員理解的難易程度
2)可擴(kuò)展性:為適應(yīng)新需求和需求的變化為軟件增加功能的能力
3)可重用性:重用軟件系統(tǒng)或其一部分能力的難易程度
4)可測試性:對軟件測試以證明其滿足需求規(guī)約的難易程度
5) 可維護(hù)性:為了達(dá)到這三種目的之一而定位修改點(diǎn)并實(shí)施的難易程度:修改bug,增加功能,提高質(zhì)量屬性。
6)可移植性:將軟件系統(tǒng)從一個運(yùn)行環(huán)境轉(zhuǎn)移到另一個不同的運(yùn)行環(huán)境的難易程度。
1、明確的需求和驗(yàn)收標(biāo)準(zhǔn)
清晰、完整、適當(dāng)詳細(xì)、有凝聚力、可實(shí)現(xiàn)、可測試的規(guī)范或所有參與者都同意的驗(yàn)收標(biāo)準(zhǔn)。在“敏捷”類型的環(huán)境中,與產(chǎn)品所有者或其代表的持續(xù)密切協(xié)調(diào)是必要的,這可以確保及時(shí)了解不斷變化的/新出現(xiàn)的需求。
2、合理的時(shí)間表
留出足夠的時(shí)間進(jìn)行規(guī)劃、設(shè)計(jì)、測試、錯誤修復(fù)、重新測試、更改和文檔編制;開發(fā)人員應(yīng)該能積極的完成項(xiàng)目并能以可持續(xù)的速度工作。
3、充分的測試
盡早開始測試,在修復(fù)或更改后重新測試,為測試和錯誤修復(fù)計(jì)劃足夠的時(shí)間。“早期”測試可以包括靜態(tài)代碼分析/測試、開源代碼分析、測試優(yōu)先開發(fā)、開發(fā)人員的單元測試、內(nèi)置測試和診斷功能等。如果作為整體測試策略的一部分進(jìn)行有效設(shè)計(jì)和實(shí)施,借助自動化測試工具可以幫助開發(fā)團(tuán)隊(duì)高效工作。
4、盡量堅(jiān)持最初的要求/標(biāo)準(zhǔn)
在開發(fā)開始和最后階段盡量避免過多增加或更改需求。如果需要更改,則應(yīng)在相關(guān)日程更改或故事/點(diǎn)更改中充分反映,并與客戶/最終用戶密切溝通。在敏捷開發(fā)環(huán)境中,需求可能經(jīng)常變化是可以接受的,需要真正的敏捷過程到位。同時(shí),在敏捷開發(fā)過程中,事故不應(yīng)該在最后階段才進(jìn)行修改。
5、溝通
加強(qiáng)團(tuán)隊(duì)成員之間的溝通及與客戶的溝通,確保信息保持一致,這不但可以促進(jìn)團(tuán)隊(duì)合作,也能提高敏捷開發(fā)效率。
參讀鏈接:
https://www.woocoom.com/b021.html?id=ff6ba79fce4a42c3bf9d4eddfc8e321f
http://www.softwareqatest.com/qatfaq1.html
https://blog.csdn.net/bryangp/article/details/113663009
來源:FreeBuf.COM