如何開發出高可用性的軟體?
通常我們軟體開發時的問題:
我們在設計和實現許許多多的軟體時,都沒有很好的考慮使用者將如何使用這些軟體,以及這些軟體怎樣才能以最佳方式支援使用者的工作。
基礎概念:
軟體系統是什麼?
所有軟體系統都是工具,因此軟體開發人員都是工具製造者。
可用性是什麼?
實用性:指乙個系統能用來做某件值的的事情,即事情本身足以證明其裝置和程式設計投入是值得的。(要開發乙個有用的軟體,必須為它選擇乙個合適的問題)
能力:即使乙個軟體在理論上能夠執行所賦予的任務,而在實際使用時卻不能執行這些任務,它也是沒有什麼用 的。
可用性的特徵:
易學性易記憶性
使用效率
使用可靠性
使用者滿意度
如何改進可用性?
①可用性測試
可用性測試實驗室
現場測試
beta測試:一種非控制,非干預方式的現場可用性測試。
測試的最大問題,它們往往是在產品開發過程的後期才進行。(發現和改正任何軟體缺陷的成本是隨時間增加的)
②風格指南及標準
標準往往被人們所忽略,即使是那些指定標準的軟體公司。
③專家諮詢:但專家少
④設計評審來發現可用性問題和改進使用者介面,但是同行評審,效率低,會有更多的無意義的爭論
⑤反覆原型設計
反覆修改方法往往缺乏整體規劃,這意味著到了一定的時候,對軟體的意向新的修改或擴充套件會使底層**崩潰。
通常所有的改進可用性方式都有所缺陷,對於改進可用性並不是乙個完美的解決方案。
事實上:有關可用性和使用者介面設計的大多數決策都不是由人機互動專家或受過訓練的可用性專業人員來做出,而是用普通開發人員(包括系統分析人員,設計人員甚至是程式設計師)來做出。
因此需要使用更好的工具和技術將軟體的「一線部隊」(即開發人員)武裝起來,這樣才能開發出高可用型的軟體。
以使用為中心的設計方法幫助開發人員關注需要由軟體來支援的任務的基本內用。它通過使用簡便,有效,易學,好用的工具和概念,為軟體開發人員提供了乙個有力的**。
面向使用的軟體設計隨筆16
以使用為中心的設計方法所採用的抽象模型傾向於使問題簡單化,鼓勵使用一般的而不是特殊的概念來進行思考。反覆地進行簡單化和一般化可以使模型以及從模型產生的介面設計趨向於其最本質的核心。開發人員一次又一次地修改自己以前的工作,對其進行簡化,使之更加通用,最後開發出更小 更簡單的系統,在保持系統複雜性和成本...
面向使用的軟體設計隨筆15
為了理解使用系統的是哪種型別的使用者,我們構建乙個角色模型,它由一組使用者角色以及乙個定義其相互關係的使用者角色關係圖組成 為了理解使用者使用系統做什麼事情,我們構建乙個任務模型,它由一些基本用例和乙個用例關係圖組成。為了描述需要提供什麼工具和材料來支援那些基本用例,我們使用乙個介面環境模型以及乙個...
面向使用的軟體設計隨筆14
我們不能指望只根據看問題的一種視角就能設計出好的使用者介面。我們需要多個角度的檢視來設計介面。對於使用者介面來說,只有主螢幕的一幅草圖是不夠的,我們還需要描繪出使用者介面的不同部分如何相互連線。乙個好的使用者介面設計是以好的使用者介面體系結構為基礎的,而乙個好的體系結構應當支援方便高效的使用。以使用...