• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            CG@CPPBLOG

            /*=========================================*/
            隨筆 - 76, 文章 - 39, 評論 - 137, 引用 - 0
            數據加載中……

            淺論要協同作戰

            兵者,國之大事,不可不察也。——孫武

            戰 爭是一個復雜的系統工程,需要多兵種的協同,即便是在冷兵器時代,也不能依靠單一兵種完成某場戰役,現代戰爭更是需要不同專業士兵的配合。我們經常可以在 影視劇中看到這樣的情景:兩軍對壘,最前面是盾牌兵,接下來是弓箭兵、長槍兵、騎兵、樸刀兵。首先弓箭兵在盾牌兵的掩護下放箭,一通亂射之后,然后盾牌兵 和長槍兵沖鋒,弓箭兵掩護,快接近敵軍時,盾牌兵后撤,弓箭兵停止射箭,騎兵和樸刀兵沖鋒。這種配合看似教條,實際是有一定意義的,它是從實踐中總結出來 的,從某種程度上反應了冷兵器時代多兵種協同作戰的重要性。

            軟 件開發也是一個復雜的系統工程,需要各種專業的技術人員配合。通常我們簡單的把這些技術人員分成需求、開發和測試,相應的也把整個過程分為需求階段、開發 階段、測試階段。這種劃分積極的意義是區分了不同專業方向,將整個過程流水化,負面的意義是將各個階段和各個專業團隊割裂開,各自為政,失去了劃分專業的 本意,形式替代了目的。結果需求人員的目的變成了寫出一份需求,然后封閉意見;開發人員按照需求寫出代碼,改正bug;測試人員挖掘bug,監督開發人員改正,然后寫一份報告。整體的目的蕩然無存。當然無法否認這種流水作業的正確性以及必要性,我這里要說的只是它的負面問題。

            當 作戰室只要指定一份作戰計劃,作戰部隊只要沖鋒殺敵,后勤部隊只要做飯埋尸體;空軍只管按線路圖投彈,炮兵只要向指定坐標開炮時。如果沒有一個正確的、偉 大的、英明的將軍,這場戰爭只能在一個貌似嚴格符合教科書的方式開始,以一個不可思議的方式失敗。因為除了這位將軍,所有人都沒有帶著腦袋去打仗,他想的 對不對,直接影響到結局。

            可 惜的是,我們沒有這樣的將軍指揮軟件開發,也不存在這樣的將軍。我們都長著腦袋,都要去思考。從另外一個角度,我們并不嚴格類似軍隊,我們更像一個自治的 團體。那么自我協同就成了一個現實問題。需求、開發和測試人員如何協同完成一個產品呢?首先我們要把他們看做一個整體,他們所有人工作的目的只有一個:完 成一個產品。需求階段、開發階段和測試階段只是這個目的的一個階段,不是某個人工作的終極目的。我們已經認識到這點,但我們做的遠遠不夠。

            在 需求階段,需求人員應該統領全局,向開發和測試人員介紹產品構想,解釋需求,輔助開發和測試人員完成后續階段的計劃和方案;在開發階段,開發人員要重新整 合所有資源,由開發人員沖鋒,需求人員提供支持,測試人員監督開發過程,糾正開發失誤;而在測試階段,測試人員才是指揮中心,他們要檢查軟件,需求人員配 合診斷,開發人員按測試計劃解決故障并封閉。不同的階段只是中心成員不同,決策人員不同,而不是責任不同,目的不同。

            可 能說的太隱晦了,舉兩個例子來說明。一個還是打仗的例子,比如現在我們需要讓弓箭兵上馬,去追殺敵軍。弓箭兵老大可能反對并提出幾個原因,第一,并非職責 范圍,弓箭兵的職責是遠距離造成敵軍傷亡,沒有追逃的責任,這是騎兵的責任。第二,技術能力不足,弓箭兵都不善于騎馬,而且馬上射箭難度較大,沒法實現。 第三,如果敵人反撲,由于不善近戰,可能會造成大量傷亡。的確有道理,可是如果我們真的需要這樣做來表現我們的戰略意圖,怎么辦?

            再 舉一個身邊的例子來說明,前幾天有這樣的爭執,關于需求應不應該明確界面限制導致選項不生效,然后切換界面取消限制,選項應如何的問題。需求人員的意見是 這樣的,第一,選項最終是什么不重要。第二,強行限制,會使需求工作量變大,同時開發和測試的工作量也增大(因為不同的地方,自然結果必然不同,強行一致 會導致不自然的處理,同時測試需要關注測試)。第三,不利于平臺化建設,這種限制會導致需求過分依賴于產品,無法在不同產品間共用。都很有道理。但是我認 為,提出這個問題是無可厚非的,需求的意見也是中肯的,解決的辦法是,我們要看看我們的終極目標,以此來判斷是否需要這樣做。首先,如果不限制造成不一 致,對我們的產品有沒有影響,其次,如果不一致,會不會造成后續工作的阻滯。對于這個問題的本身,我覺的對于無關緊要的選項,需求可以不寫,開發可以順其 自然,測試不必關注。而對于比較重要的選項,需求必須明確,開發必須處理,測試要注意關注。不可一概而論,非左即右。


            posted on 2008-01-10 23:02 cuigang 閱讀(347) 評論(0)  編輯 收藏 引用 所屬分類: 雜談

            久久综合久久综合亚洲| 久久99国产综合精品| 一本大道久久香蕉成人网| 欧美麻豆久久久久久中文| 伊人久久大香线蕉精品不卡| 99精品久久精品一区二区| 国产亚洲欧美成人久久片 | 97久久精品人妻人人搡人人玩 | 久久久久久青草大香综合精品| 欧美亚洲国产精品久久| Xx性欧美肥妇精品久久久久久| 亚洲伊人久久成综合人影院| 99久久99久久| 免费精品久久天干天干| 欧美激情精品久久久久| 97精品依人久久久大香线蕉97| 99久久伊人精品综合观看| 青草国产精品久久久久久| 色天使久久综合网天天| 精品乱码久久久久久夜夜嗨| 久久国产色AV免费看| 久久久久国产精品嫩草影院| 久久久WWW成人免费毛片| 美女写真久久影院| 久久青青草原亚洲av无码app| 亚洲人成网站999久久久综合| 91精品国产91久久久久久蜜臀| 久久发布国产伦子伦精品| 久久久国产99久久国产一| 欧美亚洲国产精品久久| 人妻无码久久精品| 综合久久久久久中文字幕亚洲国产国产综合一区首 | 国内精品久久久久久久亚洲| 久久国产精品成人免费 | 国产精品成人99久久久久| 久久美女人爽女人爽| 99久久夜色精品国产网站| 国产成人AV综合久久| 久久香蕉国产线看观看猫咪?v| 久久成人永久免费播放| 久久青青草视频|