天天看點

軟體産品的可使用性設計 - 塑造概念

      最近所做的一個項目與指令行配置有關,簡單地說我們的産品能采用輸入指令的方式對其功能進行配置,這一點與Cisco路由器的配置很相似。在産品的開發過程中,美國的同僚提出一種設計思路,即所有的配置指令之間都不應當存在依賴關系。

     提出這種設計思路的同僚,其初衷在于讓使用者能更加容易地對産品進行配置。但是,這種設計思想并沒有得到我的支援,相反,我對這種設計思路持反對意見。因為在我看來,打破所有配置指令之間的依賴關系反而使得使用者更加難以配置産品。

     為什麼我們會這麼在乎依賴關系,難道依賴關系的徹底消除對于産品的可使用性就有那麼重要嗎?在現實的世界中,很多東西是存在依賴關系的。比如,如果沒有自行車那就談不上騎自行車、沒有錢就談不上去購物、等等。而軟體的設計應當盡可能做到現實事物的依賴關系在軟體世界中有所反映,而不是徹底地采用簡單的準則(比如這裡所談到的“所有的指令之間不應存在依賴關系”)對其進行颠覆。

     如果依賴關系不是産品具有良好可使用性的重點,那對于采用指令行進行配置的産品,什麼是重點?兩個字:概念。

     在進行産品設計時,應當打造一定的概念,這種概念一方面最好來源于現實世界,另一方面最好能有一定的邏輯内涵。當概念有了以後,如何設計指令就顯得更直覺了;當概念有了以後,在教育訓練産品的使用使用者時也且得更有效,隻要将概念傳輸給使用者,使用者就更容易掌握,乃至能自己思考配置時所出現的問題。反之,沒有概念而隻有一大堆的指令留給使用者,很容易讓他們在使用時裡要更多地參考使用手冊,或尋求支援。

     概念有了以後,各指令之間是否存在依賴關系就應當順應概念的需要,而不是簡單地将所有的依賴關系都打破。将依賴關系強行打破,還會造成軟體設計上的困難以及所編寫的代碼更加難以了解和維護。

     一個産品是否好用,最為重要的是産品的設計者是否真正地為自己的産品塑造了一定的使用概念。一個易用的産品,在它的背後也一定隐藏了一定的概念,且這種概念很容易被使用者掌握并加以運用。

     依賴關系并非都是惡魔,其關鍵是我們如何合理地運用依賴關系去塑造概念。

繼續閱讀