引入軟件領(lǐng)域是有意義的。我曾買(mǎi)了一本關(guān)于軟件可靠性的著作,此書(shū)充滿(mǎn)了數(shù)學(xué)公式。我發(fā)現(xiàn)以我目前的學(xué)歷實(shí)在難以看懂書(shū)上講了些什么。請(qǐng)寬恕我的愚昧,我把此書(shū)給“供”起來(lái),沒(méi)敢用筆畫(huà)一處記號(hào)。
3.2 性能與效率
用戶(hù)都希望軟件的運(yùn)行速度高些(高性能),并且占用資源少些(高效率)。舊社會(huì)地主就是這么對(duì)待長(zhǎng)工的:干活要快點(diǎn),吃得要少點(diǎn)。程序員可以通過(guò)優(yōu)化算法、數(shù)據(jù)結(jié)構(gòu)和代碼組織來(lái)提高軟件系統(tǒng)的性能與效率。優(yōu)化的關(guān)鍵工作是找出限制性能與效率的“瓶頸”,不要在無(wú)關(guān)痛癢的地方瞎忙乎。如果你想職稱(chēng)升得快,光靠增加課時(shí)能頂屁用;你就該一年寫(xiě)它幾十篇文章,爭(zhēng)取破格升教授。
3.3 易用性
易用性是指用戶(hù)感覺(jué)使用軟件的難易程度。用戶(hù)可能是操作軟件的最終用戶(hù),也可能是那些要使用源代碼的程序員。現(xiàn)代人的生活節(jié)奏快,干啥事都想圖個(gè)方便。所以把易用性作為重要的質(zhì)量因素?zé)o可非議。
導(dǎo)致軟件易用性差的根本原因是開(kāi)發(fā)人員犯了“錯(cuò)位”的毛?。核詾橹灰约河闷饋?lái)方便,用戶(hù)也一定會(huì)滿(mǎn)意。俗話(huà)說(shuō)“王婆賣(mài)瓜,自賣(mài)自夸”。當(dāng)程序員向用戶(hù)展示軟件時(shí),常會(huì)得意地講:“這個(gè)軟件非常好用,我操作給你看,……是很好用吧!”軟件的易用性要讓用戶(hù)來(lái)評(píng)價(jià)。當(dāng)用戶(hù)真的感到軟件很好用時(shí),一股溫暖的感覺(jué)油然而生,于是就用“友好”來(lái)評(píng)價(jià)易用性。
3.4 可理解性與簡(jiǎn)潔性
可理解性表達(dá)了人們一種質(zhì)樸的愿望:我化錢(qián)買(mǎi)了它,總得讓我明白它是什么東西。我小時(shí)候的一個(gè)伙伴在讀中學(xué)時(shí),就因無(wú)法理解電荷之分正負(fù),覺(jué)得很煩惱,便早早地綴學(xué)當(dāng)工人。
可理解性也是對(duì)用戶(hù)而言的。開(kāi)發(fā)人員只有在自己思路清晰時(shí)才可能寫(xiě)出讓別人能理解的程序。編程時(shí)還要注意不可濫用技巧,應(yīng)該用自然的方式編程。我們的確不知道自己的得意之舉究竟是錦上添花,還是畫(huà)蛇添足。就象蒸出一籠饅頭,在上面插一朵鮮花,本想弄點(diǎn)詩(shī)情畫(huà)意,卻讓人誤以為那是一堆熱氣騰騰的牛糞。
簡(jiǎn)潔是一種美,不管是自己還是用戶(hù)都會(huì)有同感。在生活中,與簡(jiǎn)潔對(duì)立的是“羅里羅嗦”。中國(guó)小說(shuō)中最“婆婆媽媽”的男人是唐僧。有一項(xiàng)民意調(diào)查:如果世上只有唐僧、孫悟空、豬八戒和沙僧這四類(lèi)男人,你要嫁給哪一類(lèi)?請(qǐng)列出優(yōu)先級(jí)。調(diào)查結(jié)果表明,現(xiàn)代女性毫不例外地把唐僧?dāng)[在老末。
一個(gè)原始的應(yīng)用問(wèn)題可能很復(fù)雜,但高水平的人就能夠把軟件系統(tǒng)設(shè)計(jì)得很簡(jiǎn)潔。如果軟件系統(tǒng)臃腫不堪,它遲早會(huì)出問(wèn)題。簡(jiǎn)潔是人們對(duì)工作“精益求精”的結(jié)果。
廢話(huà)大師有句名言:“如果我令你過(guò)于輕松地明白了,那你一定是誤解了我說(shuō)的話(huà)?!蔽易罱幸环N奇怪的體會(huì):如果把學(xué)術(shù)文章寫(xiě)得很簡(jiǎn)潔,讓人很容易理解,它往往中不了;只有加上一些玄乎的東西,把本來(lái)簡(jiǎn)單的弄成復(fù)雜的,才會(huì)增加投稿的命中率。事實(shí)上,我可以在5分鐘之內(nèi)說(shuō)清楚三年來(lái)讀博所做的工作,根本用不著寫(xiě)100多頁(yè)的博士論文。我是在臨近畢業(yè)時(shí),才發(fā)覺(jué)自己完全不適合讀博士學(xué)位。將來(lái)工作后,我一定要好好編程,重新做人。
3.5 可復(fù)用性與可擴(kuò)充性
復(fù)用的一種方式是原封不動(dòng)地使用現(xiàn)成的軟構(gòu)件,另一種方式是對(duì)現(xiàn)成的軟構(gòu)件進(jìn)行必要的擴(kuò)充后再使用。可復(fù)用性好的程序一般也具有良好的可擴(kuò)充性。本書(shū)第六章將論述如何設(shè)計(jì)可復(fù)用、可擴(kuò)充的C++程序。
4 質(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)行分析,以
項(xiàng)目經(jīng)理勝任力免費(fèi)測(cè)評(píng)PMQ上線(xiàn)啦!快來(lái)測(cè)測(cè)你排多少名吧~
http://www.vanceur.cn/pmqhd/index.html