系統(tǒng)好不好主要看質(zhì)量屬性

軟件屬性分為功能屬性和質(zhì)量屬性舍肠,
功能屬性指的是軟件可以做什么搀继,可以實(shí)現(xiàn)什么功能窘面。
質(zhì)量屬性指的是軟件怎么樣,比如好不好用叽躯,穩(wěn)不穩(wěn)定财边。

質(zhì)量屬性為何重要?

早年同時用過諾基亞手機(jī)和蘋果手機(jī)的人都知道点骑,論功能酣难,諾基亞手機(jī)其實(shí)比蘋果多很多,當(dāng)年蘋果剛出來時黑滴,凡是蘋果有的功能憨募,諾基亞都有,可每一個功能袁辈,蘋果都更好用菜谣,在易用性上,蘋果完勝諾基亞晚缩,于是最終結(jié)果大家都知道了尾膊。

對于一套軟件系統(tǒng),質(zhì)量屬性甚至比功能屬性更重要荞彼。

實(shí)現(xiàn)一個功能可能會有很多方式冈敛,不同的方式,功能一樣鸣皂,質(zhì)量卻大不相同抓谴。系統(tǒng)架構(gòu)設(shè)計,就是在軟件設(shè)計大的層面上做出選擇寞缝,以實(shí)現(xiàn)軟件系統(tǒng)的質(zhì)量屬性需求癌压。

質(zhì)量屬性都有哪些?

軟件系統(tǒng)都有哪些質(zhì)量屬性呢第租?主要有如下這些措拇,

  1. 可靠性
    可靠性,也叫可用性慎宾,是指軟件可長期穩(wěn)定運(yùn)行的能力,一般用一段時間內(nèi)故障時間與正常運(yùn)行時間比來評估浅悉√司荩可靠性高的系統(tǒng),能夠長期不出錯术健,或者出錯后可以快速從錯誤中恢復(fù)汹碱。

  2. 可修改性
    當(dāng)需求發(fā)生變更或者環(huán)境發(fā)生變化時,系統(tǒng)是否可以快速得到調(diào)整荞估,就體現(xiàn)出系統(tǒng)的可修改性咳促。好的系統(tǒng)要求可以方便快速修改稚新。

  3. 性能
    指系統(tǒng)的在用戶發(fā)出指令后響應(yīng)的時間,及單位時間內(nèi)處理事務(wù)的數(shù)量跪腹。性能好的系統(tǒng)褂删,可以快速響應(yīng)用戶的指令,能在單位時間內(nèi)完成更多的事務(wù)處理冲茸。簡單來講屯阀,就是要快。

  4. 安全性
    指系統(tǒng)不會被無關(guān)人員濫用轴术,系統(tǒng)數(shù)據(jù)不管在存儲還是傳輸過程中都有得到妥善的保護(hù)难衰。

  5. 可測試性
    指系統(tǒng)方便被測試,以驗(yàn)證系統(tǒng)的業(yè)務(wù)邏輯確實(shí)與系統(tǒng)規(guī)格要求一致逗栽。

  6. 易用性
    指系統(tǒng)方便使用盖袭,可以很快上手,使用過程中不用操作復(fù)雜的步驟彼宠,沒有需要記憶的隱蔽的功能點(diǎn)鳄虱。一個字來形容,就是要讓用戶用起來爽兵志。

實(shí)現(xiàn)質(zhì)量屬性有哪些常用方法

要實(shí)現(xiàn)這些質(zhì)量屬性醇蝴,在軟件架構(gòu)設(shè)計時,是有一些方法想罕,或者說套路可以使用的悠栓。

  1. 可靠性
    要提高系統(tǒng)的可靠性,可以從錯誤檢測按价,錯誤恢復(fù)惭适,錯誤預(yù)防三個方面下功夫。
  • 心跳設(shè)計楼镐,是一個錯誤檢測機(jī)制癞志,讓系統(tǒng)定期向另外一套檢測系統(tǒng)發(fā)生固定信息(類似心跳),當(dāng)檢測系統(tǒng)在固定時間內(nèi)沒有收到信息時框产,即可以判斷對方系統(tǒng)發(fā)生了故障凄杯,即刻啟動恢復(fù)或者報警程序。
  • 冗余設(shè)計秉宿,冗余是屬于一種錯誤恢復(fù)機(jī)制戒突,即提前準(zhǔn)備好一套備用方案,當(dāng)主方案發(fā)生錯誤時描睦,系統(tǒng)自動按照預(yù)先設(shè)計好的備用方案執(zhí)行膊存。
  • 事務(wù)設(shè)計,屬于錯誤預(yù)防機(jī)制,即綁定一系列密切相關(guān)的步驟隔崎,要么全部成功今艺,要么全部不成功,避免數(shù)據(jù)不一致的情況發(fā)生爵卒。最典型的一個例子就是銀行轉(zhuǎn)賬虚缎,一個賬號出,一個賬號進(jìn)技潘,不能把錢在路上轉(zhuǎn)丟了遥巴。
  1. 可修改性
    提高系統(tǒng)可修改的方法,包括局部化修改享幽,防止連鎖反應(yīng)铲掐,推遲綁定時間。
  • 局部化修改值桩,即設(shè)計期間摆霉,按照責(zé)任分配模塊,將預(yù)期的變更奔坟,限定在一定范圍內(nèi)携栋。
  • 防止連鎖反應(yīng),比如盡可能對接口編程咳秉,且維持接口規(guī)格不變婉支。每個模塊對外公開盡可能少的信息,隱藏一切不必要的信息澜建。
  • 推遲綁定時間向挖,就將有可能的修改,盡量用配置文件炕舵,或者其他后期讓非開發(fā)人員可調(diào)整的方式實(shí)現(xiàn)何之。
  1. 性能
    提供性能,可以通過減少資源的消耗咽筋,或者改善資源的管理及調(diào)度實(shí)現(xiàn)溶推。
  • 改善算法,以減少資源的使用奸攻,提高計算效率
  • 引入并發(fā)蒜危,幾個任務(wù)同時進(jìn)行,減少用戶等待時間睹耐。
  • 分配不同任務(wù)不同優(yōu)先級舰褪,比如在視頻會議系統(tǒng)中,優(yōu)先保證語音的傳輸疏橄,以改善系統(tǒng)整體性能體驗(yàn)。
  1. 安全性
    提高安全性,可以采用的方法有捎迫,抵抗攻擊晃酒,檢測攻擊和從攻擊中恢復(fù)。
  • 對用戶身份進(jìn)行校驗(yàn)窄绒,增加校驗(yàn)碼輸入 等都是抵抗攻擊的方法
  • 通過對訪問的來源贝次,頻率檢測,檢測可能發(fā)生的攻擊行為是抵抗攻擊的一種方式
  • 攻擊中恢復(fù)即在檢測到攻擊行為發(fā)生后彰导,按照預(yù)先設(shè)計好的方案執(zhí)行動作
  1. 可測試性
    可以通過輸入輸出和內(nèi)部監(jiān)控的方式來提高可測試性蛔翅。
  • 記錄/回放,捕獲跨接口的調(diào)用信息位谋,作為測試軟件的輸入信息
  • 內(nèi)部監(jiān)控山析,激活監(jiān)視器,將事件記錄下來以供測試檢查使用
  1. 易用性
    包括即時提供系統(tǒng)輔助信息掏父,提供用戶操控性
  • 比如在特定界面笋轨,預(yù)期用戶接下來的行為,告知用戶可以做什么操作及如何操作
  • 在系統(tǒng)執(zhí)行過程中赊淑,提供用戶主動取消等操控功能

好的系統(tǒng)一定是質(zhì)量好的系統(tǒng)

好的系統(tǒng)與差的系統(tǒng)爵政,可以天差地別,用戶一用便知陶缺。就如喬布斯所說钾挟,客戶也許不知道自己想要的是什么,但是如果你同時提供兩套系統(tǒng)給客戶饱岸,客戶會知道如何選擇掺出,好的系統(tǒng)一定是質(zhì)量好的系統(tǒng),而不是功能多的系統(tǒng)伶贰。架構(gòu)設(shè)計師蛛砰,應(yīng)該要在質(zhì)量屬性上下功夫。特別要注意的是黍衙,有些質(zhì)量屬性之間是互相沖突的泥畅,比如安全性與易用性,安全性提升了琅翻,易用性可能會降低位仁,架構(gòu)設(shè)計時還需要拿捏平衡。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末方椎,一起剝皮案震驚了整個濱河市聂抢,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌棠众,老刑警劉巖琳疏,帶你破解...
    沈念sama閱讀 211,194評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件有决,死亡現(xiàn)場離奇詭異,居然都是意外死亡空盼,警方通過查閱死者的電腦和手機(jī)书幕,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評論 2 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來揽趾,“玉大人台汇,你說我怎么就攤上這事±橄梗” “怎么了苟呐?”我有些...
    開封第一講書人閱讀 156,780評論 0 346
  • 文/不壞的土叔 我叫張陵,是天一觀的道長俐筋。 經(jīng)常有香客問我牵素,道長,這世上最難降的妖魔是什么校哎? 我笑而不...
    開封第一講書人閱讀 56,388評論 1 283
  • 正文 為了忘掉前任两波,我火速辦了婚禮,結(jié)果婚禮上闷哆,老公的妹妹穿的比我還像新娘腰奋。我一直安慰自己,他們只是感情好抱怔,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,430評論 5 384
  • 文/花漫 我一把揭開白布劣坊。 她就那樣靜靜地躺著,像睡著了一般屈留。 火紅的嫁衣襯著肌膚如雪局冰。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,764評論 1 290
  • 那天灌危,我揣著相機(jī)與錄音康二,去河邊找鬼。 笑死勇蝙,一個胖子當(dāng)著我的面吹牛沫勿,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播味混,決...
    沈念sama閱讀 38,907評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼产雹,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了翁锡?” 一聲冷哼從身側(cè)響起蔓挖,我...
    開封第一講書人閱讀 37,679評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎馆衔,沒想到半個月后瘟判,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體怨绣,經(jīng)...
    沈念sama閱讀 44,122評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,459評論 2 325
  • 正文 我和宋清朗相戀三年荒适,在試婚紗的時候發(fā)現(xiàn)自己被綠了梨熙。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,605評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡刀诬,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出邪财,到底是詐尸還是另有隱情陕壹,我是刑警寧澤,帶...
    沈念sama閱讀 34,270評論 4 329
  • 正文 年R本政府宣布树埠,位于F島的核電站糠馆,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏怎憋。R本人自食惡果不足惜又碌,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,867評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望绊袋。 院中可真熱鬧毕匀,春花似錦、人聲如沸癌别。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,734評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽展姐。三九已至躁垛,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間圾笨,已是汗流浹背教馆。 一陣腳步聲響...
    開封第一講書人閱讀 31,961評論 1 265
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留擂达,地道東北人土铺。 一個月前我還...
    沈念sama閱讀 46,297評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像谍婉,于是被迫代替她去往敵國和親舒憾。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,472評論 2 348

推薦閱讀更多精彩內(nèi)容