作軟件的最終用戶,也可能是那些要使用源代碼的程序員?,F(xiàn)代人的生活節(jié)奏快,干啥事都想圖個(gè)方便。所以把易用性作為重要的質(zhì)量因素?zé)o可非議。
導(dǎo)致軟件易用性差的根本原因是開發(fā)人員犯了“錯(cuò)位”的毛病:他以為只要自己用起來(lái)方便,用戶也一定會(huì)滿意。俗話說“王婆賣瓜,自賣自夸”。當(dāng)程序員向用戶展示軟件時(shí),常會(huì)得意地講:“這個(gè)軟件非常好用,我操作給你看,……是很好用吧!”軟件的易用性要讓用戶來(lái)評(píng)價(jià)。當(dāng)用戶真的感到軟件很好用時(shí),一股溫暖的感覺油然而生,于是就用“友好”來(lái)評(píng)價(jià)易用性。
可理解性與簡(jiǎn)潔性
可理解性表達(dá)了人們一種質(zhì)樸的愿望:我化錢買了它,總得讓我明白它是什么東西。我小時(shí)候的一個(gè)伙伴在讀中學(xué)時(shí),就因無(wú)法理解電荷之分正負(fù),覺得很煩惱,便早早地綴學(xué)當(dāng)工人。
可理解性也是對(duì)用戶而言的。開發(fā)人員只有在自己思路清晰時(shí)才可能寫出讓別人能理解的程序。編程時(shí)還要注意不可濫用技巧,應(yīng)該用自然的方式編程。我們的確不知道自己的得意之舉究竟是錦上添花,還是畫蛇添足。就象蒸出一籠饅頭,在上面插一朵鮮花,本想弄點(diǎn)詩(shī)情畫意,卻讓人誤以為那是一堆熱氣騰騰的牛糞。
簡(jiǎn)潔是一種美,不管是自己還是用戶都會(huì)有同感。在生活中,與簡(jiǎn)潔對(duì)立的是“羅里羅嗦”。中國(guó)小說中最“婆婆媽媽”的男人是唐僧。有一項(xiàng)民意調(diào)查:如果世上只有唐僧、孫悟空、豬八戒和沙僧這四類男人,你要嫁給哪一類?請(qǐng)列出優(yōu)先級(jí)。調(diào)查結(jié)果表明,現(xiàn)代女性毫不例外地把唐僧?dāng)[在老末。
一個(gè)原始的應(yīng)用問題可能很復(fù)雜,但高水平的人就能夠把軟件系統(tǒng)設(shè)計(jì)得很簡(jiǎn)潔。如果軟件系統(tǒng)臃腫不堪,它遲早會(huì)出問題。簡(jiǎn)潔是人們對(duì)工作“精益求精”的結(jié)果。
廢話大師有句名言:“如果我令你過于輕松地明白了,那你一定是誤解了我說的話?!蔽易罱幸环N奇怪的體會(huì):如果把學(xué)術(shù)文章寫得很簡(jiǎn)潔,讓人很容易理解,它往往中不了;只有加上一些玄乎的東西,把本來(lái)簡(jiǎn)單的弄成復(fù)雜的,才會(huì)增加投稿的命中率。事實(shí)上,我可以在5分鐘之內(nèi)說清楚三年來(lái)讀博所做的工作,根本用不著寫100多頁(yè)的博士論文。我是在臨近畢業(yè)時(shí),才發(fā)覺自己完全不適合讀博士學(xué)位。將來(lái)工作后,我一定要好好編程,重新做人。
可復(fù)用性與可擴(kuò)充性
復(fù)用的一種方式是原封不動(dòng)地使用現(xiàn)成的軟構(gòu)件,另一種方式是對(duì)現(xiàn)成的軟構(gòu)件進(jìn)行必要的擴(kuò)充后再使用??蓮?fù)用性好的程序一般也具有良好的可擴(kuò)充性。
質(zhì) 量 檢 查
檢查是人們不信任自己和別人的一種行為。當(dāng)某些事情涉及到利益分配時(shí),更需要有檢查活動(dòng)來(lái)保證公平。估計(jì)即使進(jìn)入了共產(chǎn)主義社會(huì),也少不了檢查。
質(zhì)量檢查并不是要等到項(xiàng)目結(jié)束時(shí)才執(zhí)行唯一的一次,應(yīng)該在每個(gè)實(shí)踐環(huán)節(jié)都要執(zhí)行。對(duì)應(yīng)于進(jìn)度表,在每個(gè)里程碑到達(dá)時(shí)執(zhí)行質(zhì)量檢查比較合理。質(zhì)量檢查的內(nèi)容有二:一是作出評(píng)審,是合格還是不合格?能打多少分?二是作出建議,對(duì)質(zhì)量為什么好為什么差進(jìn)行分析,以便“改差為好”、“好上加好”。
以下是人們經(jīng)常采用的軟件質(zhì)量檢查措施[Pressman 1999]:
(1)事先把檢查的主要內(nèi)容制成一張表,使檢查活動(dòng)集中在主要問題上。
(2)只評(píng)審工作,不評(píng)審開發(fā)者。評(píng)審的氣氛應(yīng)該是融洽的。存在的錯(cuò)誤應(yīng)該被有禮貌地指出來(lái),任何人的意見都不應(yīng)被阻撓或小看。
(3)建立一個(gè)議事日程并遵循它。檢查過程不能放任自由,必須排照既定的方向和日程進(jìn)行。
(4)不要化太多的時(shí)間爭(zhēng)論和辯駁。
(5)說清楚問題所在,但不要企圖當(dāng)場(chǎng)解決所有問題。
(6)對(duì)檢查人員進(jìn)行適當(dāng)?shù)呐嘤?xùn)。
……
做好檢查工作并不是件容易的事。自古以來(lái)“上有政策,下有對(duì)策”。 虛假的質(zhì)量檢查還不如不檢查,下面講兩個(gè)故事作為解釋。
故事一
不久前我回到西北那