論敏捷開發重要性

2021-07-30 07:47:24 字數 1597 閱讀 5500

現今企業系統的業務都複雜無比,給你無限的時間做規劃設計,也無法保證軟體產出完全滿足客戶需求。在這種各方充滿著不可控因素的環境下,有什麼銀彈方法解決?

論敏捷開發重要性,現今企業系統的業務都複雜無比,給你無限的時間做規劃設計,也無法保證軟體產出完全滿足客戶需求。這當中原因有很多,有主觀原因,有客觀原因。例如,客觀原因,客戶自己本身不明確自己的需要,他給出的需求也許會隨時變化。主觀原因,各方溝通理解不一致,誰也無法保證客戶說的業務設計人員理解準確,誰也無法保證設計出來的東西就是客戶需要的,誰也無法保證業務設計人員的講解技術開發理解準確等等。在這種各方充滿著不可控因素的環境下,有什麼銀彈方法解決?答案往往是沒有的,因為軟體開發的世界裡很多時候是沒有銀彈的,你成功了更多可能是天時地利運氣好。但是,我們換個問法,在剛才的情形下應該如何減少損失?答案是有的,敏捷開發可以讓你減少失敗的損失。

敏捷思想的提出很偉大,它本身就是一種試錯機制,讓你快速檢驗軟體產出與市場變化的關係,讓這個各方思想匯聚的產出得到驗證。

那敏捷開發如何實施?首先,要避免誤區,敏捷不是盲目的快,不是簡單堆徹人力趕進度完成任務。

敏捷要求設計人員對系統整體設計有乙個很強的分解能力,要會把乙個大任務分解為乙個乙個可快速完成的小任務

敏捷要求設計人員對系統整體設計有乙個很強的分解能力,要會把乙個大任務分解為乙個乙個可快速完成的小任務,小任務就是實現上要快捷輕盈,任何複雜的設計都意味著擴充套件的困難,維護的困難,所以涉及到複雜的東西,請三思確定是要這麼做。

較高的抽象能力

其次是要有較高的抽象能力,客戶可能說了很多要做的功能,那麼要嘗試抽象出客戶的這些功能點裡是否有共性的東西,一旦找到本質,可能就是客戶真正的需求了。

排任務優先順序,要清晰地知道做什麼和怎麼做的區別

接著是會排任務優先順序,戰場上有很多傷兵,不可能每個都救,只能救重要的,先完成主線功能,要清晰地知道做什麼和怎麼做的區別,因為做什麼是抽象的,明確的,穩定的,只要把握準確就不存在變化的風險,例如老闆說要去北京,只要把握準確老闆的需求是去北京而不是上海,那麼這個需求就是穩定的,至於通過什麼交通方式,是坐船還是飛機,這種實現是變化的,因為可能買不到機票,或者買不到船票,所以實現是變化的,不穩定的,做什麼就是相當於功能,客戶要做什麼是重點,這個關乎成本付出後是不是得到客戶要的東西。而改bug,優化互動屬於具體實現方式,前期階段在時間緊張情況下不是重點。舉個例子,功能a裡需要步驟順序1,2,3實現,開發**假設使用者都正常操作,那麼這個過程只需要花完成整個功能的20%的時間就完成了這個功能的80%工作量,而剩下的20%的工作量,例如要處理客戶不按順序操作的異常,檢驗使用者是否按順序操作的情況等等卻花掉80%的時間。

團隊協作

最後就是團隊協作,人民群眾路線,發揮每個人的優勢。國民黨有的是錢,缺飛機大炮花重金買就是,但是共產黨依靠的是人民群眾並且勝利了。為什麼這麼說,因為有些企業是重業務,輕技術的,老闆往往是偏向業務設計人員為核心,程式開發人員最底層,前期一些重要的需求分析,技術方案實現都是沒有程式開發人員參與的。這些領導往往以為技術簡單,加班加點就能實現,業務功能設計人員就能把控全域性。

論安全的重要性

論安全的重要性 安全 是乙個永不過時的話題。在我們的現實生活中,無數的事實告訴我們,凡是無視安全的行為必將付出慘痛的代價。世界上每天都在發生著安全事故,汽車超載,超速行駛,闖紅燈 生產單位偷工減料,違規操作 公共服務場所無視安全規範 種種無視安全的情況造成了一起又一起的安全事故。慘痛的教訓告訴我們任...

論溝通的重要性

溝通,是建立人際關係的橋梁,如果這個世界缺少了溝通,那將是乙個不可想象的世界。可以這樣說,沒有溝通就沒有人際的互動關係,人與人之間關係,就會處在僵硬 隔閡 冷漠的狀態,會出現誤解 扭曲的局面,給工作和生活帶來極大的害處。資訊時代的到來,工作 生活節奏越來越快,人與人之間的思想需要加強交流 社會分工越...

論特徵的重要性

特徵工程有多重要,可以引用一句話來表達 資料和特徵決定了模型的上限,演算法只是在幫忙逼近這個上限。好的特徵是決定乙個模型準確率的關鍵,那問題來了?什麼是特徵呢,特徵就是資料對於結果的一種描述。比如我們形容乙個人是否漂亮,那她的眼睛大小 鼻子的形狀 臉型都是特徵。通常,當獲得乙份結構化資料的時候,如果...