讀易[4]·撞進軟工新時代(同人卦)

來源:互聯網
上載者:User

前段時間一直都在忙著項目的事情,這篇文章在心裡放了很久了,今天終於能寫出來,不至於老放在心中發黴生鏽了:)

文章主要說的是易經中卦的順序和軟體業發展順序的對應,希望能從易經中得到一點啟示。
下面會簡單談一談軟工的發展,不過充其量只能算是“野史”,並且具體的時間也沒有經過專門的考證。大家隨意看看就行了,不必深究。

一、軟體工程發展史

1946年2月14日,世界上第一台電腦ENIAC在美國誕生。不過那時候還不存在現在所說的軟體,而到了軟體工程興起又是過了很多年。

第一次軟體工程概念提出是在1968年的NATO會議上,使軟體開發開始了從“藝術”、“技巧”和“個體行為”向“工程”和“群體協同工作”轉化。

30多年來,軟體工程的研究和實踐取得了長足的進步,其中一些具有裡程碑意義的進展包括:
20世紀60年代末~70年代中期,在一系列進階語言應用的基礎上,出現了結構化程式設計技術,並開發了一些支援軟體開發的工具。
20世紀70年代中期~80年代,電腦輔助軟體工程(CASE)成為研究熱點,並開發了一些對軟體技術發展具有深遠影響的軟體工程環境。
20世紀80年代中期~90年代,出現了物件導向語言和方法,並成為主流的軟體開發技術;開展軟體過程及軟體過程改善的研究;注重軟體複用和軟體構件技術的研究與實踐。

(摘自:楊芙清 《軟體工程技術發展思索》)

二、自然的規律

上面簡單介紹了軟體工程的發展情況,任何事物的發展規律都是一樣的,所以才有了象易經一樣的揭示所有事物發展規律的資料。

易經中共有八八六十四卦,這些卦的排列順序並不是隨意分布,而是經過精心安排的。比如說前面幾卦為:乾、坤、屯、蒙、需、訟、師、比、小畜、履、泰、否、同人、大有……

“乾”為天、“坤”為地,有了天地才有萬物。接下來的屯卦代表事物的起源、“屯”字就是種子剛鑽出地面的形象,從字形上可以看出來。軟體工程提出來後很多 地方是模糊的,畢竟是一個全新的概念,屯卦後面接著就是“蒙”卦,迷茫、幼稚的意思。20世紀60年代,由於進階語言的流行,使得電腦應用範圍得到較大 擴充,對軟體系統的需求急劇上升,從而產生了“軟體危機”,由此提出了軟體工程的概念,在經過一段時間的迷茫後,由社會客觀世界的需要才能觸發軟體工程的 成長,接下來就是“需”卦。在發展的過程中,人們會有不同的觀點,各種爭論的出現代表了 不同思維的碰撞,“訟”就是爭論。這時候越來越多的軟體橫空出世,軟體產品之間的競爭又推動工程化的發展。“師”者,聚伍紛戰也。

隨後也是軟體行業發展進入了高速發展時期,軟體產品規模不斷擴大,不同的軟體作者、或者軟體公司都聚集起來形成更加有競爭力的團隊,“比”說白點就是拉幫結夥。軟體公司或者工作室形成後開始的 是資金與技術的積累,為“小畜”。當積累達到一定的層次後,發現制定一系列的規範與標準大家才能更好地合作,所以出現了“履”卦,履就是規範、禮儀的意思。履卦出現後,進入了一個欣欣向榮的階段,稱為“泰”。

不過美好總是不能長久,在進入了“泰”卦後,卻是出現了問題,進入“否”卦。問題是什麼呢?因為規範與制度的不人性化,導致文檔繁重,團隊響應遲緩,流程僵化等。這些現象尤其在軟體 業比較發達的國家更加嚴重一些,軟體項目的低成功率也是大家有目共睹的。所以國外有不少大師推崇“敏捷”。先不說它的好壞。在“否”卦之後是“同人”卦,然後是“大有”卦……

下面說一說同人卦的秘密。

三、同人卦的秘密

卦象

同人,柔得位,得中而應乎乾,曰同人。同人曰:“同人於野,亨,利涉大川。”乾行也。文明以健,中正而應,君子正也。唯君子為能通天下之志。

3.1 同心同德

從下往上第二爻為柔(陰)爻,與第五爻剛爻相呼應。用卦象來解釋管理上的事情時,一二爻代表基層,三四爻代表中層,五六爻代表高層。卦象顯示是基層和高層相呼應,所以稱為同人卦,同心同德的意思。以前就寫了些文章說管理時“志”很重要,這裡又說同人卦,都是一個意思。

制度規範能讓大家更方便的做事,但完全這樣就將人當作了機械,不能發揮出創造力,至少對於軟體行業,這樣的方式是不可取的。真正高明的管理者能夠將團隊成員的志向集中在一起,符合約人卦的含義。

同人卦上半部分為乾卦,“天行健,君子以自強不息”。上面說到了軟體工程發展到了“否”卦,需要的是有一部分人努力領導軟體工程的發展,團隊中同樣需要有 人引領著走出困境。在此之前,軟體業因為制定了標準化流程取得了很好的成效,但經過時間推移現在的軟體有了新的變化——向服務轉型。軟體開發中人(尤其指 基層的工作人員)的因素再一次體現出來了——在同人卦中,處於基層的第二爻為全卦的主爻。

下半部分為離卦,離為火,為光明。在上層領導剛健不息的推動下,作為下層的人員應該以更加坦然的態度進行溝通,交流。當然,很重要的一點,這種坦然應該是 雙向的。以前帶著幾個人一起嘗試敏捷方法,發現只要坦率地說出來,很多人對於提高自身效率的方法還是非常樂意接受的,並且團隊之間坦率地交流是成功的一個 關鍵因素。

上層的剛健加上下層的坦然才可能同心。

3.2 核心是什麼

從另外一個角度來看,同心協力總有一個目標。企業的核心目標就是利潤,沒有利潤任何一家企業都沒有存在的價值;程式員的目標是個人發展、更好的生存環境。所以很多時候企業和程式員的目標是衝突的。不過敏捷倒是非常巧妙地將這種衝突轉到了另外一個地方。

平時和一些朋友聊到敏捷,問敏捷的核心是什嗎?

有人會說,敏捷的核心是程式員。誠然,程式員在敏捷的價值觀中備受重視,但程式員絕對不是敏捷的核心。

敏捷的核心是迭代,而迭代的核心是客戶。客戶就意味著利潤。推崇以客戶為中心可以緩解企業和程式員之間的利益衝突,畢竟大家都是在賺客戶的錢。

所以說同人除了內在的條件需要滿足,外界的因素也是必須具備的。

四、“揠苗助長”還是“直接晉級”

上面提到敏捷,但並不一定敏捷就是同人卦的卦象,只是就現在來看敏捷更加接近。

軟體工程發展從比、小畜、履、泰、否到同人卦共有五個階段。那些軟體發達的國家順利地經過了這幾個階段,所以他們對履卦的缺陷也理解的更加深刻。

但在中國來說,大部分企業是“比”或者“小畜”的階段,少數到“履”。這種情況下是否能直接晉級到同人卦確實值得商榷。就像前段時間出現的“敏捷熱”一樣,最近較少聽人提起了。敏捷是好東西,但是不是能符合我們中國的現狀,不一定了。
或者有一種說法是,我們的軟體企業比較小,能輕裝上陣更加快速地推行敏捷。這也是我希望看到的。

就像這篇文章的標題一樣,我認為中國現在是“撞”進軟體工程的新時代,整體水平要比國外的同行晚了幾個階段。但國際化的趨勢是越來越快,在本土軟體和外來軟體之間的競爭中,我們怎樣才能穩步發展呢?至少不至於幾年後,還是踉踉蹌蹌、撞來撞去的,那樣就讓老外看笑話了。

由於自己掌握的資料比較少,還是希望能多多聽到大家的看法。 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.