2009-11-25 74 views
5

我主修一個偉大的軟件工程計劃,並被教授過程的重要性和生命週期模型的步驟。我熟悉經典的「瀑布」模型。儘管我們探索了其他人,但無論您的新時代模型多麼狡猾或棘手,瀑布都能很好地列出可能的任務。所以這是一個很好的起點。網絡開發的軟件生命週期模型

當我讀完了學校後,.NET纔剛剛起步,所以我們沒有涵蓋新的方式來使用良好的生命週期模型來處理web開發。現在我在一家網上商店工作,我們正在努力建立一些我們沒有的良好實踐和流程。由於我6​​年前才畢業,並且有更多結構化軟件環境的經驗,所以我是推出一些新東西的人。

現在辦公室只是混亂。昨天,我從項目經理那裏得到很多笑聲,告訴他「我們的過程就是一隻手拍手的聲音。」我們對流程感到絕望,但我們不知道該怎麼做。每個人都在採取一種倒退的方法,希望一個工具告訴他們如何做,而我們應該首先收集需求。

我們是一個共有9位顧客的商店。我們需要能夠快速工作。現在有哪些行業標準的優秀軟件開發模型?其他人都在這樣做,所以我們需要學習,這家商店自1995年以來一直在建設網站。我在哪裏可以找到有關最佳實踐的良好資源?我們是一家LAMP店。

編輯:我還應該補充一點,我們希望將流程添加到現有網站。所以我們不會建設新的項目,這是這些模型總是面向的。我們正在維護10年前的網站怪物(確定更像3 - 5年,但客戶年齡更大)並保持它們不斷增加,同時增加新功能。這可以幫助嗎?

回答

0

AgileeXtreme Programming (XP)都能正常工作。我對Rational Unified Process (RUP)也有很好的體驗。

所有這些都是迭代的,這給了他們一個支持瀑布,因爲你不會卡住實現大量的功能,不知道它將如何被感知(更不用說你的用戶得到更小的位功能遠遠超過傳統的單片版本)。

RUP在預先收集需求方面做得非常出色。敏捷和XP都採用了一些非常有趣的技術來確保快速轉向的質量。我會仔細看看這三者,找出最適合你的團隊(或者爲你的應用程序準備好三個最好的部分)。

4

現在很多商店正在使用的是敏捷開發方法。它可以從單個開發人員擴展到您可能擁有的任何人。使用這種方法可以很容易地跟蹤任何一個人在給定時間內能夠完成的工作量。退房描述方法的維基百科頁面:

http://en.wikipedia.org/wiki/Agile_software_development

也有一些偉大的開源和免費的工具,幫助你建立團隊,項目,迭代和一切。

但是,我會說我曾經在一家瀑布店工作,除非管理層隨着這個變化而上船,否則你將無法從瀑布變爲敏捷。

編輯(回覆問題編輯):是!敏捷無疑將幫助您對現有項目進行維護和增強發佈,以及可能的重構版本。它是包羅萬象的。

〜的md5sum〜

+0

+1對每個人都必須在船上或它不會工作。管理和開發人員。 – kenwarner

+0

很高興有現有的開發人員加入,但如果他們不想合作,他們可以替換,而且我還沒有遇到任何在敏捷方法下工作時遇到問題的「好」開發人員。不幸的是,你不能解僱你的老闆。我曾經工作過的解決方案架構師負責選擇使用的方法,雖然他是個不錯的人,但我認爲他不能用少於3000行的C#代碼來解決FizzBu​​zz測試。他聲稱喜歡Scrum,並且我們敏捷,但我們更像是某種破碎的瀑布。一個沒有水的瀑布也許...... –

0

Scrum,這是敏捷實踐中,將是試圖在一些混亂的遏制的建議。你的項目經理有什麼做法?這可能是更大的問題之一,也許這些笑聲來自於某個感覺受到威脅的人。

編輯:正如別的東西要考慮,你在地方有這些:

  • 測試 - 你有任何的自動化測試?
  • 持續集成 - 你知道嗎?一直使用它?
  • 源代碼管理 - 您有分支機構,程序或簽到嗎?
  • 開發方法 - 特設或「只做一些有用的」心態?
  • 環境 - 是否有開發,測試和生產環境?
+0

不可能,笑是真的,因爲他知道我是對的。實際上沒有任何過程。每個項目經理都做他們自己的事情。我們相互交談,完成工作,然後結束火災。真正的混亂。 – tkotitan

+0

至少有一些工作已經完成。我可以想象一些地方沒有完成,因爲所有的指責誰的錯誤是沒有任何事情完成。 –

+0

是的,但是有幾天 - 也就是 - 幾周,甚至幾個月,在那裏我會殺死一些宕機! :)但你說得對。在我的辦公室裏,我們擁有令人難以置信的協作精神,無需指責,只需共同努力解決問題並幫助客戶。我從來沒有見過這樣的事情。 – tkotitan

0

炒作很敏捷。我喜歡Lean背後的原理,它源於敏捷社區。

0

我認爲一個好的起點是Joel測試。這裏是Joel Test for web development。一旦你看看這個,你就會知道從哪裏開始改進東西。這些是基礎知識。

1

我知道這是一個非常舊的帖子,原來的海報最近還沒有活躍。但是,我想知道這可能不是當前的問題,還需要一個答案。我是StackOverflow的noob,但我對這個問題有一些瞭解。

有很多事情要解決這個職位。首先,您想知道「最佳」類型的SDLC模型。有許多不同的模型,但不是一個正確的答案。這取決於你想要完成什麼以及你的團隊如何最好地工作。

根據您的文章,敏捷和Scrum的組合將是管理您的流程排序的好方法。敏捷將允許您在迭代中更快地工作,而Scrum將幫助您的團隊確定任務,責任,優先級,挑戰和解決方案。

在建立最佳實踐和方法時,重要的是應該解決SDLC方法本身的過程識別和關注問題。組織應評估需要完成的項目,需要的人員和需求,問題和潛在的解決方案,以及有助於管理每項任務的需求以創建流程的工作分解結構。例如,**如果您需要將頁面添加到現有網站,可能會創建一個流程指南(因爲每個頁面都會與客戶不同,因此每個頁面都會有所不同)。您可能有一個類似於以下的流程: 1.收集客戶的顧慮,要求,想法,期望等: (需求採訪) 2.現有標準/實施標識 3.列出完成所需的每項任務頁面添加 4.爲每個 任務 創建詳細的工作分解結構(WBS)和時間表/截止日期5.創建一個進度管理系統(這是一個新開發的過程) 6.委託任務/截止日期/團隊的/ etc。 7.建立團隊溝通 8.回顧/測試進度 9。根據已建立的敏捷/ Scrum方法調整任務/ WBS /時間表。
10.重複,直到完成/滿足要求。

在設置其他進程之前,您可能已經設置了敏捷和Scrum進程,您可以調整它們直到它們適用於您提供的服務。

您不必根據其他人正在做的事情來使用Agile或Scrum或特定的可用性組合。有這麼多可供選擇的美妙之處在於你可以混合搭配它們,直到你找到適合你的項目的東西。

爲了使您的任何流程都有效,您需要與團隊進行溝通,哪些工作有效,哪些不起作用,哪些工作有效,但需要改進。一些我非常讚賞的工具是: 1. Slack dot com:這是一個團隊項目管理工具。 2. G Suite:這是一款付費應用套件,但您可以輕鬆使用Gmail,Google雲端硬盤,Google表格,Google文檔,日曆,環聊,Google +及其他免費工具。
3. Trello dot com:這是一個很酷的合作委員會,我和一些朋友一起使用我的項目。你可以有個人董事會或共享板:日曆,團隊,電子郵件連接,提醒等。我非常喜歡這個網站工具。

這些只是我認爲很不錯的一些,但還有更多提供不同的功能,所以你可以選擇適合你的東西。

最後,項目管理是一項艱鉅的任務,但你聘請的人應該能夠幫助你解決這個難題。但是,以下是一些可能幫助您做一些自己的項目管理的網站:1. PMI dot org:這是項目管理機構。即使您不是項目經理,也不想成爲項目經理,對於管理項目後勤管理職位的任何人來說,都有非常好的見解和技巧。
2. SDLC PM:這仍然是PMI.org,但這個鏈接是針對你的問題。 3. Projectmanager.com:這有用於項目管理的工具。這裏還有一個鏈接,附加資源。

那麼,我希望這些信息可以幫助你和其他人。我會有更多的鏈接,但我需要更多的聲望點。但是,我試圖偷偷溜進去。最好的祝福。

-AudreyLin