2010-06-04 60 views
3

我剛剛完成了我的計算機科學畢業。
現在我知道所有的軟件開發過程模型,即
哪個軟件開發過程模型是當前公司使用最多的?

• Waterfall Model 
• Spiral Model 
• Iterative and Incremental Development 
• Agile Development [I don't know much about this] 

但我想知道這是使用的最被新 - 當前的公司?
除此之外,還有什麼新的模式,這是新的,所有人都不知道嗎?

+5

可能是「無論什麼模式都可以完成」。 – Klinger 2010-06-04 05:25:29

回答

6

敏捷 - SCRUM現在被廣泛使用了一天。

6

我說大多數公司都有牛仔編碼,因爲他們的管理根本不關心開發過程......他們只是想快速完成工作。

當然,更好的公司......和你想要工作的公司應該有一個過程。我發現這些公司最常使用的敏捷方法如:Scrum,測試驅動開發,持續集成和迭代開發等。

我最近接受了從擁有牛仔編碼的大型組織開始的挑戰......並且我正在引入敏捷方法來改變流程並提高質量。

12

我想說的是,目前使用最廣泛的方法是「現在開始工作,稍後再開始工作」(稍後,無論你在那裏工作還是產品死亡後)。

這是最好的方法嗎?絕對不。但你要求使用最廣泛的一個。

+0

這可能對你只能開發的小項目有好處,但是在那些需要大量開發人員並且持續增強的巨大項目中,這樣的災難纔是這樣的 – 2013-08-12 09:24:15

+0

@ AbdEl-RahmanEl-Tamawy我從來沒有說這是一個好方法heh「這是最好的方法嗎?絕對不是,但你要求使用最廣泛的方法。」 – Earlz 2013-08-12 15:46:11

1

主要是瀑布模型。

對於過程控制解決方案軟件人員正在進入迭代過程,以開發像敏捷這樣的軟件。

我更喜歡TDD。

2

也許不是你想聽到的,但'敏捷'不是一個過程模型,而是一組態度,例如,甚至可以與瀑布一起使用。軟件開發過程模型可能是eXtreme Programming或Crystal Clear。

問題是,儘管術語'Agile'是爲了定義一組屬性而創建的(參見敏捷宣言),但社區已經重新定義了它,以引用方法論。任何方法(例如Scrum或XP)都可以實現爲敏捷或非敏捷。

另外,方法/過程旨在解決不同的問題。一些爲軟件開發人員提供流程(例如,XP要求配對編程和TDD),而其他提供項目管理流程(例如Scrum和XP)。所以比較是困難的,有時是毫無意義的。

在某種程度上都是瀑布,它只取決於焦點水平。

我建議您閱讀Alister Cockburn。不同規模的團隊和不同層次的「關鍵性」需要不同的解決方案。查看Crystal的一組進程。 Alister花了將近20年的時間學習成功,而且在世界各地都沒有那麼成功。例如,他發現,在一個小團隊中,實際流程與頻繁交付等屬性關聯不大。

希望這會有所幫助。

0

恐怕畢業的嚴酷現實之一是「大多數」軟件開發發生在大型企業環境中,而大多數企業IT部門仍然使用瀑布(通常至少在英國稱爲「瀑布」)結構化方法發展。

總之就是設計>>構建>>測試>>部署>>維護

這種方法更多驅動由於需要管理預算,交付,時間表和維護可審計性不是開發優秀的軟件...但嘿,這就是我們生活的世界......

1

每個過程模型都不好,不壞。因爲它取決於你將要開發的軟件。根據我的openion增量流程模型更好。

相關問題