輕松

          記述我學習java的里程

          常用鏈接

          統計

          積分與排名

          友情鏈接

          最新評論

          解決問題之道--將復雜的問題簡單化

          在我們的日常工作過程中,經常會遇到很多復雜的問題,我們怎么能快速解決這些問題呢?這里我要介紹的個人經驗就是“將復雜的問題簡單化”。下面舉個剛剛發生的小例子來說明這個方法。

          最近在做公司ECP升級項目中引入了Portal中間件,因為大家都對這個Portal的使用很不熟悉,所以開發過程中遇到了很多問題。我這個例子就是解決其中的一個問題“如果配置PORTAL中的用戶信息從LDAP中讀取”,其實這件事就是發生在我寫些文的前十分鐘。下面說一下解決問題的過程。

          第一步,閱讀相關文檔,按照文檔中的說明進行配置。結果由于文檔不是很詳細,而公司使用的LDAP服務器是微軟的Active Directory所以未能按照文檔說明配置成功。

          第二步,確定問題點,這個比較困難,因為不知道是因為配置的原因還是portal中間件本身對AD的支持不好。所以我們只能猜測是我們配置的不正確,雖然我們是完全按照文檔進行的。

          第三步,找出我們配置中我們哪里配的不對。這個更困難了,因為已經無資料可查,只能自己看源碼了。

          第四步,看了半天的源碼無果,只能調試了。

          說到調試,而且又是比較復雜的中間產品,可能大家想到的就是使用遠程調試的方式了。可是這種方法只能查看一下運行時的變量狀態,也不能插入自己的代碼進行測試。而且這重啟一次又是那幾分鐘過去了,解決這個問題可能要花很多的時間。

          所以我想到了另一種方式,搭建了一個只針對問題點的測試環境。在eclipse里新建了一個項目,把我們前期配置的部分拷到項目中,寫了單元測試程序。這個時間我只花了十分鐘。運行了一下,發現確實不能從LDAP中正確讀取出人員信息。因為對LDAP不是很熟只好請外援了,把咱大名頂頂的安工請過來。因為反問題點簡化到了就加載兩個類和啟動一個單元測試。所以安工花了十幾分鐘就把問題搞定了。

          故事描述完了,最后總結一下。在一個復雜的環境下調試,其實我們是很難很快發現問題的。同時環境的加載啟動還要浪費很多時間。可是我們在確定或猜測出問題點的時候,把環境簡化到,只剩下有可能出現的問題地方。可能我們很快就能解決它了。這就是我要說的“解決問題之道--將復雜的問題簡單化”。有點啰嗦,很少寫東西。以后還得鍛煉。這個方法其實我已經用了很多年,說起來簡單,希望你能在碰到問題的時候想起這個方法,并能真正的運用它。

          最后感謝安工的全力幫助。這種全心幫助他人的精神,永遠是我們學習的榜樣。


          posted on 2011-11-24 16:49 輕松 閱讀(3000) 評論(2)  編輯  收藏

          評論

          # re: 解決問題之道--將復雜的問題簡單化 2011-11-24 16:58 feisishui

          你說的和我當時soe的調式情況一個樣,其實可以把其中的方法拿出來在ae環境下測試 。  回復  更多評論   

          # re: 解決問題之道--將復雜的問題簡單化 2011-11-25 10:50 tb

          恩 不錯   回復  更多評論   


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 临江市| 呈贡县| 岗巴县| 南江县| 普洱| 邯郸县| 耿马| 长岭县| 饶河县| 大洼县| 游戏| 巨鹿县| 田林县| 安国市| 花莲市| 盐津县| 苏尼特右旗| 长沙县| 荆门市| 临汾市| 太康县| 广西| 兰考县| 长顺县| 东丽区| 兰西县| 高密市| 普宁市| 奇台县| 大庆市| 虎林市| 婺源县| 孟津县| 小金县| 泸溪县| 蒙山县| 青阳县| 安国市| 文山县| 宁都县| 建宁县|