通過心理學(xué)知識(shí)提高問題定位與解決能力(下)前言本文上篇主要介紹了解決問題的心理過程以及問題表征階段影響問題解決的一些心理因素,并分享了另外相關(guān)案例和指導(dǎo)意見。本文繼續(xù)介紹影響問題解決的其它心理因素。 影響問題解決的心理因素自我監(jiān)控技能
在設(shè)計(jì)好解題計(jì)劃后,問題解決者并不是簡單地執(zhí)行解題計(jì)劃,而是要時(shí)刻自己監(jiān)控自己對(duì)解題計(jì)劃的執(zhí)行是否正確、解題計(jì)劃本身是否正確。這有點(diǎn)類似行車過程中,GPS導(dǎo)航軟件時(shí)刻檢查車輛當(dāng)前的行車路線與之事先規(guī)劃的路線是否吻合。若不吻合,則導(dǎo)航軟件會(huì)提示車主車輛已偏離規(guī)劃的路線。。 問題解決者自我監(jiān)控技能的強(qiáng)弱可能對(duì)問題解決的效果和效率產(chǎn)生決定性的影響。例如,解決某道數(shù)學(xué)題時(shí),解題過程中需要計(jì)算出某事件出現(xiàn)的概率,然后再以此數(shù)據(jù)繼續(xù)解題。若經(jīng)過很多步驟才算出這個(gè)事件的概率是1.02,通過自我監(jiān)控則可以發(fā)現(xiàn)這個(gè)概率值的計(jì)算顯然是錯(cuò)誤的。那么,應(yīng)該重新計(jì)算這個(gè)概率值,而不是繼續(xù)執(zhí)行其它解題步驟。相反,此時(shí)若未覺察到這個(gè)錯(cuò)誤,繼續(xù)執(zhí)行其它解題步驟,最終的答案很可能是錯(cuò)的。 專家在解決問題過程傾向于更加頻繁地進(jìn)行自我監(jiān)控,并且其自我監(jiān)控的效果比新手更好。專家在解決問題,尤其是一些難題,往往更加頻繁地提出各種假設(shè),并通過邏輯推理和尋找數(shù)據(jù)證據(jù)對(duì)其進(jìn)行檢驗(yàn),然后再根據(jù)檢驗(yàn)的結(jié)果提出新的假設(shè),再對(duì)這些新假設(shè)逐一驗(yàn)證,通過這樣的自我監(jiān)控逐步向解決方案靠近。就好比撥洋蔥皮,每撥一層皮,就離洋蔥核心更進(jìn)了一步,最終解決問題。而新手在解決問題過程往往很難提出假設(shè),即便提出假設(shè),他可能不能清晰地意識(shí)到那僅僅是個(gè)假設(shè),便在此基礎(chǔ)進(jìn)行其它操作了。最后他們得到的所謂“結(jié)論”,可能通過簡單的邏輯推理就可以發(fā)現(xiàn)是錯(cuò)誤、甚至是自相矛盾的。 筆者曾經(jīng)遇到這樣的問題求助。求助人在寫一段服務(wù)端的Java代碼,用于獲取網(wǎng)頁表單中提交的某個(gè)字段的值。求助人傳達(dá)給我的信息是:網(wǎng)頁中確實(shí)存在服務(wù)端代碼中所要獲取值的字段,但是服務(wù)端代碼就是取不到該值,“原因”是瀏覽器并沒有把該字段的值提交到服務(wù)器。我問對(duì)方得出這個(gè)“結(jié)論”的證據(jù)是什么?他又回答不出來。顯然,他只是把“假設(shè)”和猜想一廂情愿地當(dāng)作結(jié)論了。如果求助人在該問題的定位過程中做到了自我監(jiān)控,他可能會(huì)問我如何去驗(yàn)證客戶端某個(gè)字段是否被提交到了服務(wù)端,而不是問我這個(gè)問題如何解決。最后,通過簡單的Debug查看變量,發(fā)現(xiàn)瀏覽器事實(shí)上提交了服務(wù)端所要獲取值的字段,只不過服務(wù)端代碼中所用的字段名的大小寫弄錯(cuò)了! 提高自我監(jiān)控能力,不是能夠一蹴而就的事情。需要問題解決者清楚地明白“結(jié)論”和“假設(shè)”的區(qū)別。在問題解決過程中,任何中間結(jié)論的得出都必須經(jīng)過邏輯推敲和相應(yīng)的事實(shí)證據(jù)(數(shù)據(jù))。另外,也可以對(duì)自己的解決問題過程進(jìn)行反思:在問題解決后第一時(shí)間,自己問自己在問題解決過程中,自己犯了哪些錯(cuò)誤,有沒有及時(shí)自己發(fā)現(xiàn)這些錯(cuò)誤(而非求助于他人)。通過這樣的反思,問題解決者能夠跟好地理解自我監(jiān)控的重要作用,有助于以后在問題解決過程中逐步加強(qiáng)自我監(jiān)控。筆者有時(shí)在遇到一些問題定位的求助時(shí),尤其是對(duì)方是新人時(shí),往往會(huì)先問對(duì)方目前的結(jié)論和進(jìn)展是什么。若發(fā)現(xiàn)對(duì)方的結(jié)論(或者中間結(jié)論)是錯(cuò)誤的,我可能不直接指出,而是引導(dǎo)其思考,讓對(duì)方自己發(fā)現(xiàn)自己的錯(cuò)誤。這種方法一定程度上也能提高問題解決者的自我監(jiān)控能力。 短時(shí)記憶容量根據(jù)記憶保存時(shí)間的長短,人腦的記憶可以分為短時(shí)記憶和長時(shí)記憶。前者類似于計(jì)算機(jī)的內(nèi)存,其特點(diǎn)是記憶保持時(shí)間短(約為5秒到2分鐘),容量小。后者類似于磁盤,其特定是記憶保持時(shí)間長(永久保存)、容量大。人腦在解決問題過程中,需要將長時(shí)記憶中的內(nèi)容提取到短時(shí)記憶中參與信息加工。而短時(shí)記憶的容量很小,它只能容納7±2個(gè)塊的信息。這個(gè)“塊”是一個(gè)相對(duì)的單位,一個(gè)英文字母可以算一塊,而一個(gè)英文單詞也可以算一塊。因此,適當(dāng)增加“塊”的長度可以增加短時(shí)記憶的容量。例如,手機(jī)號(hào)碼”13612345678“按“136-1234-5678”這樣3塊來記憶比“136-12345678”這樣2塊來記憶要容易一些。 盡管如此,對(duì)于復(fù)雜問題的解決,或許減輕短時(shí)記憶的負(fù)擔(dān)比設(shè)法提高短時(shí)記憶容量要重要。畢竟人腦此時(shí)的主要任務(wù)是解決問題,而不是記憶。減輕短時(shí)記憶負(fù)擔(dān)可以使人腦集中力量到其它更加重要的活動(dòng)上,如邏輯推理、提出假設(shè)和驗(yàn)證假設(shè)。一種簡單可行的減輕短時(shí)記憶負(fù)擔(dān)的方法就在解決問題過程中打草稿。例如,將問題的已知條件、待確認(rèn)的細(xì)節(jié)、問題解決過程中獲得的新知識(shí)、新經(jīng)驗(yàn)以及中間結(jié)論(它可以看作新的已知條件)都列在紙上,這樣既不增加短時(shí)記憶負(fù)擔(dān),又便于綜合考慮。同時(shí),也便于同他人就問題進(jìn)行討論。 動(dòng)機(jī)強(qiáng)度與情緒相信大家都遇到過這樣的情形。解決問題時(shí),尤其是遇到困難時(shí),自己越是強(qiáng)烈地希望去解決它,問題解決越是沒有什么進(jìn)展。相反,當(dāng)我們適當(dāng)?shù)赝O聛?,把注意力轉(zhuǎn)移到這個(gè)問題之外一段時(shí)間,回頭再重新繼續(xù)這個(gè)問題的解決。這個(gè)時(shí)候往往靈感閃現(xiàn),有可能問題一下子就被解決了。這個(gè)過程中,其中一個(gè)影響問題解決的因素就叫做動(dòng)機(jī)。動(dòng)機(jī)簡單來講就是指心理動(dòng)力。術(shù)語化的表述就是激發(fā)并維持個(gè)體活動(dòng)的一種內(nèi)在心理過程或內(nèi)部動(dòng)力。它與問題解決的效率呈一個(gè)倒U型關(guān)系,如圖3所示。 圖 3. 動(dòng)機(jī)強(qiáng)度與問題解決效率的關(guān)系 可見,最有利于問題解決的動(dòng)機(jī)強(qiáng)度是中等的(并非越高或者越低才是越好的),并且對(duì)于不同困難程度的問題,其所需的最佳動(dòng)機(jī)強(qiáng)度也是不同的。困難的問題比起容易的問題,所需的最佳動(dòng)機(jī)強(qiáng)度要低。這就說,面對(duì)難題,問題解決者適度調(diào)低動(dòng)機(jī)強(qiáng)度,心里不要抱著過大的意愿要去解決它,反而有利于問題的解決。 情緒在問題解決過程可能起到積極的作用,也可能起到消極的作用。樂觀、平靜和積極的情緒有助于問題的解決,而緊張、惶恐、煩躁、壓抑等消極的情緒會(huì)阻礙問題的解決。不難發(fā)現(xiàn),不少新手遇到問題時(shí)的第一反應(yīng)是害怕和緊張,甚至于煩躁。而專家在面對(duì)問題甚至是難題時(shí)往往也從容不迫。在問題解決過程中,如果我們覺察到自己的情緒有些緊張和煩躁時(shí),不妨先暫時(shí)停頓下,先調(diào)節(jié)好情緒再繼續(xù)問題的解決,這樣效率可能比一頭扎到問題中要高一些。 因此,團(tuán)隊(duì)的直接主管在日常工作中也可以多關(guān)注組員在工作中表現(xiàn)出的動(dòng)機(jī)強(qiáng)度和情緒狀態(tài),并在必要的時(shí)候指導(dǎo)組員對(duì)它們進(jìn)行調(diào)節(jié),而不是一味地施加壓力和有意無意地制造緊張的氣氛。這點(diǎn),和中國古代各種兵書所重視的士氣其實(shí)是一個(gè)道理。 自動(dòng)化加工與直覺思維熟練的打字員打字的時(shí)候無需思索要敲擊的字母位于鍵盤的哪個(gè)位置,熟練的汽車司機(jī)可以邊開車邊與人聊天。這些都是自動(dòng)化加工的例子。當(dāng)人們對(duì)解決問題的某些部分的操作已經(jīng)達(dá)到充分熟練的程度,這些操作就形成了自動(dòng)化加工。這有助于在解決問題時(shí)將個(gè)體有限的心理能量集中到整個(gè)問題中最難、最關(guān)鍵的部分。從而提高了問題的解決效率。自動(dòng)化加工也有助于形成直覺思維。下面看一個(gè)筆者經(jīng)歷過的直覺思維的例子。 筆者曾經(jīng)遇到這樣的求助。對(duì)方稱其在遠(yuǎn)程Debug一段Java代碼時(shí)遇到了一個(gè)奇怪的問題:有個(gè)變量的值始終賦不上去。我的直覺的反應(yīng)是對(duì)方Debug時(shí)所看的代碼與遠(yuǎn)程主機(jī)上運(yùn)行的代碼不匹配導(dǎo)致該現(xiàn)象的。因此建議對(duì)方將遠(yuǎn)程主機(jī)上的jar包下載下來反編譯相關(guān)class看看其代碼與本地代碼有何區(qū)別,以驗(yàn)證我的想法。最后發(fā)現(xiàn)是欲進(jìn)行賦值的變量其值來自另外一個(gè)class中定義的常量,對(duì)方更改了該常量的值后僅僅將該變量所在class更新到遠(yuǎn)程主機(jī),而未將該常量所有引用類重新編譯后更新到遠(yuǎn)程主機(jī),從而在編譯器的作用下使得遠(yuǎn)程主機(jī)上的class讀取到的仍然是該常量的先前值。 上述問題的解決關(guān)鍵的一步其實(shí)是靠直覺思維:直覺給了我們一個(gè)問題的解決方向,接著才是在這個(gè)方向的指引下去求證,最后解決問題??梢?,直覺思維往往可以使我們快速得到問題的解決思路,從而提高問題解決效率。但問題是新手通常不具備直覺思維的能力。直覺思維需要在解決問題方面長期的練習(xí)和積累才能逐漸形成。另一方面,軟件開發(fā)人員在學(xué)習(xí)新技術(shù)新事物的過程中,需要注意理解和掌握基本概念和原理,并在日常工作中遇到問題時(shí)聯(lián)系這些概念和原理進(jìn)行分析,這樣有助于問題解決,并通過一個(gè)個(gè)問題的解決逐步達(dá)到問題解決過程中能夠形成直覺思維的境界。 心理定勢(shì)心理定勢(shì)指預(yù)先存在的心理狀態(tài)、習(xí)慣或態(tài)度。日常生活中我們提到的思維定勢(shì)就是心理定勢(shì)的一種。下面看一個(gè)實(shí)際的例子。 測(cè)試人員要對(duì)一個(gè)數(shù)據(jù)庫過期記錄刪除腳本的性能進(jìn)行評(píng)估。測(cè)試該腳本時(shí)需要數(shù)量較大的數(shù)據(jù)庫表記錄(如30萬條)。對(duì)于這些記錄,有的測(cè)試人員仍然會(huì)采用提高負(fù)載測(cè)試工具給應(yīng)用發(fā)送請(qǐng)求的方式由應(yīng)用去生成數(shù)據(jù)庫記錄,因?yàn)樗麄兘?jīng)常接觸到數(shù)據(jù)庫記錄多數(shù)是這么生成的。而事實(shí)上,這些記錄完全可以由專門編寫的腳本(如存儲(chǔ)過程)去負(fù)責(zé)生成。這樣不僅方便具體控制記錄中的數(shù)據(jù),也可以提高記錄生成的速度,便于反復(fù)測(cè)試。 可見,心理定勢(shì)使得我們?cè)诿鎸?duì)“新問題”時(shí)傾向于采用過去使用過的方法和方式,從而可能不利于問題的解決。這是心理定勢(shì)在問題解決中表現(xiàn)出來的消極作用。值得注意的是,心理定勢(shì)也能對(duì)問題解決起到積極的作用,其表現(xiàn)在于通過復(fù)用過去的經(jīng)驗(yàn)和方式方法可以減少問題解決所需的心理能量,有助于問題解決的自動(dòng)化加工。 因此,問題解決過程中一方面我們可以借助心理定勢(shì),以減少問題解決所需的心理能量,另一方面又要注意打破心理定勢(shì),避免其束縛我們采取更優(yōu)的問題解決方法。 當(dāng)我們?cè)噲D沿用以前的方式方法去解決現(xiàn)有問題而無法解決時(shí),不妨再仔細(xì)分析下當(dāng)前問題與以前遇到的問題究竟還有什么不同之處,以前的方法是否仍然適用。或者說,問題解決的更高境界是面對(duì)一個(gè)問題時(shí)我們能夠敏銳地發(fā)現(xiàn)現(xiàn)有問題與以前問題的不同之處,從而在第一時(shí)間選擇與以往不同的、更為適用的方法。例如上面例子中,如果問題解決者能在第一時(shí)間意識(shí)到其目標(biāo)是生成一批記錄,而這批記錄是如何生成的是一個(gè)與其目標(biāo)無關(guān)的因素,那么他可能就會(huì)去想有什么方法比通過發(fā)請(qǐng)求給應(yīng)用更高效。 人際關(guān)系軟件開發(fā)畢竟是一個(gè)社會(huì)化的團(tuán)隊(duì)活動(dòng),從這個(gè)角度來看,可以說個(gè)人在問題解決中所起的作用有時(shí)是非常有限的。良好的人際關(guān)系有助于個(gè)人在團(tuán)隊(duì)中找到愿意協(xié)助其解決問題的人。而緊張的人際關(guān)系則使個(gè)人解決問題時(shí)能夠使用的資源變得非常有限。 觀點(diǎn)采擇團(tuán)隊(duì)開發(fā)中遇到的問題有時(shí)不是靠一個(gè)人的力量就能夠解決的。當(dāng)個(gè)人在解決問題過程中需要求助他人的時(shí)候,就需要涉及與他人的溝通。溝通是否順暢會(huì)影響問題的解決效率。而溝通過程中當(dāng)事人是否能夠站在對(duì)方的角度去理解和思考可能成為溝通效果、效率的瓶頸。 觀點(diǎn)采擇指采用他人的視角來理解他人的想法和感受的能力。心理學(xué)的研究認(rèn)為觀點(diǎn)采擇這方面能力強(qiáng)的兒童能夠更好地理解同伴的需求,因而他們能夠更有效地和同伴進(jìn)行溝通。如果拿實(shí)際的經(jīng)驗(yàn)來對(duì)比,我們不難發(fā)現(xiàn)這點(diǎn)在成年人(同事)之間也是適用的。 有心理學(xué)理論認(rèn)為人的觀點(diǎn)采擇經(jīng)歷從3歲到青春期(12-15歲)的發(fā)展已經(jīng)到達(dá)了“深入”的程度。但是,筆者也經(jīng)歷過不少個(gè)案,這些個(gè)案中的當(dāng)事人在工作過程中與其他同事進(jìn)行溝通時(shí)很難站在對(duì)方的角度去理解和思考對(duì)方的觀點(diǎn)和思路,因而降低了他們?cè)趩栴}解決過程中求助的效果、效率。 總結(jié)本文介紹了問題解決的心理過程,并在此基礎(chǔ)上介紹了影響問題解決的心理因素。然后,以筆者實(shí)際經(jīng)歷的例子為基礎(chǔ)通過比較專家與新手在問題解決過程中表現(xiàn)出的差異分享了提高軟件開發(fā)人員問題定位與解決能力的指導(dǎo)意見。需要指出的是,本文所給出的相關(guān)指導(dǎo)意見,也可將其看成其有助于我們形成心理定勢(shì)。因此,面對(duì)問題是我們一方面可以借鑒它們,另一方面要注意打破和超越它們。 參考資源
0
0
|
|