《人月神话》观后感
?????1.外科手術隊伍
????項目經理在項目的初期必須清楚的估計項目的人月運作模式(時間、人力在項目各階段的分配),例如什么時候需要出什么樣成果,決定了什么時候需要什么樣的人加入項目,這是項目經理的責任。
????2.貴族專制
?要獲得概念的完整性,設計必須由一個人或具有共識的小組來完成。
??????3.畫蛇添足
????講述的基本都是基于IBM?360操作系統以及編譯程序等方面的經驗,講述如何避免開發第二個系統的風險,作者認為開發第二個系統的設計師設計出來的系統是最危險的,因此要求他們自律。
????4.貫徹執行
????印象比較深刻的是"體系結構設計人員必須為自己描述的任何特性準備一種實現方法,但他不應該支配具體的實現過程。"
????5.為什么巴比倫塔會失敗
????講述巴比倫塔會失敗的原因是缺乏交流。
????6.胸有成竹
????主要講述如何計算編程時間,以及提出幾個人的經驗算法。
????講述的各種算法可能都不太適合與現在的高級語言,但Portman的觀點仍然適合現在,即編程人員實際的編程時間只有50%,其他的時間都花在了無關的瑣碎事情上。
????7.削足適履
????主要講述程序占用的空間等,在70年代比較突出,但現在好多了。
????8.提綱擎領
????說明文檔的作用
????9.未雨綢繆
????唯一不變的是變化本身。
????在大型項目中,項目經理需要有兩個和三個頂級程序員作為技術輕騎兵,當工作繁忙最密集的時候,他們能急馳飛奔,解決各種問題。?講述技術人員與項目人員的互換是,對我有一定的提示,但圖中IBM的兩條職位晉升線,不太理解。
????10.干將莫邪
????主要講述項目中管理好各種工具的重要性,項目經理首先要制定一種策略,讓各種工具成為公用的工具,這樣才能使開發、維護和使用這種工具的開發人員的效率更高,這種工具可能是開發人員開發出來的,也可能是使用現有的,可能是通用的,也可能是專用的或個人偏好的。比如:文檔編寫工具、開發工具(包括各種不同開發平臺)、調試工具、測試工具、數據庫工具、版本管理、項目管理工具等。
????11.整體部分
????一讀這一章,就讓我感觸頗深,特別是這句話"BELL實驗室監控系統項目的V.A.Vyssotsky提出,'關鍵的工作是產品定義。許許多多的失敗完全源于那些產品未精確定義的地方',細致的功能定義,詳細的規格說明,規范話的功能描述說明以及這些方法的實施,大大減少了系統中必須查找的BUG數量"。雖然這句話的意思只是說明精確定義產品將減少BUG的數量,但我看到了系統分析的最重要的工作——產品定義?,F在,許多?開發人員嘴里口口聲聲說也做過需求調研、系統分析、系統設計,但大多數沒有涉及到產品定義的深度,嚴格意義上不能叫做系統分析。這句話對我的以后想從事系統分析工作有很大的幫助。
??????12.禍起蕭墻
????這章節說明使項目進度拖后的最大原因不是重要的事件,如新技術、重組等,而是一些瑣碎的小事,每件小事只耽誤半天或一天時間,但這種小事多以后,將使項目的進度嚴重拖后。
????項目對于公司就如程序對測試工程師一樣,如果不了解它,它就是一個黑盒子,如果不打開這個黑盒子,你可能永遠不知道盒子里面有什么。這部分描寫項目經理以及小組主管的一些心理,值得一看。
????13.另外一面
????本章說明程序的另一面——文檔。
????不了解,就無法真正擁有——歌德,作者引用的歌德的話來描述文檔對客戶的重要性,提出客戶需要什么樣的文檔以及文檔的格式和包含的內容,指出當時存在的大多數文檔只描述了樹木,形容了樹葉,但沒有整個森林的圖案。
????想想,這種情況在現在仍然沒有改變。于是作者提出了兩個觀點:
????1.流程圖:流程圖是被吹捧得最過分的一種程序文檔。許多程序甚至不需要流程圖,很少程序需要一頁以上的流程圖
????2.自文檔化的程序:提出文檔與程序合為一體,能很好的解決文檔與程序分開造成的文檔過時的問題,并說明了在程序中加入文檔的一些方法和技巧。2002年,我看到一位網友關于文檔與程序合一的文章,當時就覺得是個好方法,沒想到70年代,老美已經提出來了。
????14.沒有銀彈-軟件工程中的根本和次要問題
????這是一篇論文,發表于1986年,我自認為我的理論水平沒有上升到可以對他的論點和論據做出懷疑或質疑的結論,我只是說說我的感想。
????人狼是傳說中的妖怪,只有銀彈才能殺死他。作者認為軟件項目具有人狼的特性,因為軟件項目也可能變成一個怪物,一個落后進度、超出預算、存在大量缺陷的怪物。作者通過軟件系統的內在特性復雜性、一致性、可變性和不可見性來分析說明了軟件天生就沒有銀彈。
????作者試圖通過分析軟件問題的本質和很多侯選銀彈的特征來探究其中的原因。他行動的第一步是將大塊的“巨無霸理論”替換成“微生物理論”。這個變化的過程告訴你,進步是逐步取得的,伴隨著辛勤的勞動,對規范化過程應
????進行持續不懈的努力,而這個努力的過程相應的就誕生了軟件工程。作者對軟件工程誕生的原因做出這樣的解釋,我覺得符合外國思維的特點,這正是國人所缺乏。記得有一位朋友說過,中國媽媽與德國媽媽的區別,他說,如果手里拿的針掉到地上了,中國媽媽的第一反應是估計針掉下去的范圍,然后在這個范圍里面找,可能很快就找到了,也可能一直都找不到;但德國媽媽不同,她會拿一根粉筆來,把整個屋子畫成一個大圈,接著把大圈分成許許多多的小圈,然后再到每個小圈里找,雖然比較慢,但最終肯定可以找到。仔細想象,大多數情況下,中國媽媽都會找到得比較快,這確實符合大多數中國媽媽的思維習慣,每個中國媽媽都這樣找,這好象是與生俱來的本事,但為什么德國媽媽沒有這個本事呢?是德國媽媽笨嗎?為什么中國媽媽也有找不到的情況?而德國媽媽,雖然速度慢了點,卻始終能夠找得到?如果把這件故事推而廣之,多年以后,德國媽媽創建了找針工程,她通過多次找針的實驗數據,分析出針掉到整個房間中各個小圈的概率,總結出針在哪個小圈的概率最大,很快就可以找到針,找針速度早已高過中國媽媽,而中國媽媽還在依循與生俱來的本事。你能說德國媽媽笨嗎?為什么中國媽媽和德國媽媽會有這么大的區別?是德國媽媽把大塊的“巨無霸理論”替換成“微生物理論”嗎?我覺得是是,你說呢?作者在后面的論述中用數學和物理的發展為例子也說明了,這種思想的成立。
????余下的作者把軟件工程按“巨無霸理論”替換成“微生物理論”的過程詳細的說明,值得看,我關注的不是具體的內容,具體內容可能有些不合適宜,我關注的是作者的思考方式以及處理方法,這是非常重要的。
????在“以往解決次要困難的一些突破”和“銀彈的希望”章節,從概念上講述了軟件的發展,其中講到“專家系統”時,使我想起一部科幻電影,忘了電影名字了,有個情節大致是這樣的,一位非常有經驗的主管死后,有一名較優?秀的下屬接任,但這時出現了一位非常厲害的敵人,這位新主管無論如何也戰勝不了敵人,這時想起了以前的主管,心想前主管一定有辦法對付這個敵人,而前主管的大腦就存放在系統里,
轉載于:https://www.cnblogs.com/jump/p/4298518.html
總結
- 上一篇: vivado常规操作之烧写bit文件_固
- 下一篇: SpringMVC(一):环境搭建