第三次作業

2022-06-04 22:33:12 字數 3314 閱讀 3063

第一部分:初識scrum

參考資料:

敏捷開發之scrum掃盲篇

scrum 總結

硝煙中的scrum 和 xp

什麼是敏捷開發?

敏捷開發(agile development)是一種以人為核心、迭代、循序漸進的開發方法。

怎麼理解呢?首先,我們要理解它不是一門技術,它是一種開發方法,也就是一種軟體開發的流程,它會指導我們用規定的環節去一步一步完成專案的開發;而這種開發方式的主要驅動核心是人;它採用的是迭代式開發;

什麼是迭代?

迭代是指把乙個複雜且開發周期很長的開發任務,分解為很多小週期可完成的任務,這樣的乙個週期就是一次迭代的過程;同時每一次迭代都可以生產或開發出乙個可以交付的軟體產品。

什麼是scrum?

敏捷軟體開發有多種版本,scrum是最受歡迎的版本之一,接受《2023年敏捷現狀》報告調查的受訪者中70%表示,他們採用scrum或scrum混合方法。這是一種協作框架,最先由傑夫·薩瑟蘭(jeff sutherland)在2023年發明。它把複雜專案分成了多個簡短的迭代開發周期(sprint),每個迭代開發周期為期兩到四周,它注重勇氣、專注、承諾、尊重和開放性這五個價值觀。

精益軟體開發

雖然精益開發通常與敏捷開發聯絡起來,但精益開發的原則實際上源自豐田公司的精益製造流程。這套開發方法依賴七個關鍵的原則:消除浪費、促進反饋、盡量延遲決策、快速交付、融入完整性、授權團隊和著眼整體。2023年,精益首次引起了軟體開發界的注意,當時瑪麗·波彭代克(mary poppendieck)和湯姆·波彭代克(tom poppendieck)出版了《精益軟體開發:敏捷工具包》一書。

看板看板是敏捷軟體開發的另乙個變種,靈感源自豐田公司。它為開發人員提供了一種直觀的方法,可以檢視什麼工作需要完成,讓他們得以在有精力時可以「拉取」工作,而不是「推送」工作,以完成某些任務。看板依賴三個核心原則:視覺化今天處理的工作,限制在製品,並改進流動。

關於scrum和xp

前面說了敏捷它是一種指導思想或開發方式,但是它沒有明確告訴我們到底採用什麼樣的流程進行開發,而scrum和xp就是敏捷開發的具體方式了,你可以採用scrum方式也可以採用xp方式;scrum和xp的區別是,scrum偏重於過程,xp則偏重於實踐,但是實際中,兩者是結合一起應用的,這裡我主要講scrum。

scrum 工具

禪道jira+greenhopper

scrum 中的角色

scrum master——專案負責人、專案經理

保護團隊不受外界干擾,是團隊的領導和推進者,負責提公升 scrum 團隊的工作效率,控制 scrum 中的「檢視和適應」週期過程。與 product owner 一起將投資產出最大化,他確保所有的利益相關者都可以理解敏捷和尊重敏捷的理念。

team——開發人員、測試人員、美工設計、dba等全職能性團隊

團隊負責交付產品並對其質量負責,團隊與所有提出產品需求的人一起工作,包括客戶和終端使用者,並共同建立 product backlog 。團隊按照大家的共識來建立功能設計、測試 backlog 條目交付產品。

product owner——產品負責人、產品經理、運營人員

從業務角度驅動專案,傳播產品的明確願景,並定義其主要特性。product owner 的主要職責是確保團隊只開發對於組織最重要的 backlog 條目,在 sprint 中幫助團隊完成自己的工作,不干擾團隊成員,並迅速提供團隊需要的所有資訊。

user——終端使用者、運營人員、系統使用人員

很多人都可能成為終端使用者,比如市場部人員、真正的終端使用者、最好的領域專家,也可能是因其專業知識而被僱傭的資訊顧問。終端使用者會根據自己的業務知識定義產品,並告知團隊自己的期望,提出請求。

manager——管理層、投資人

管理層要為 scrum 團隊搭建良好的環境,以確保團隊能夠出色工作,必要的時候,他們也會與 scrum master 一起重新組織結構和指導原則。

customer——客戶、系統使用人員、運營人員

客戶是為 scrum 團隊提出產品需求的人,她會與組織簽訂合同,以開發產品。一般來說,這些人是組織中的高階管理人員,負責從外部軟體開發公司購買軟體開發能力。在為內部產品的公司中,負責批准專案預算的人就是客戶。

scrum流程圖

如何進行scrum開發?

1.我們首先需要確定乙個product backlog(按優先順序排列的乙個產品需求列表),這個是由product owner 負責的;

2、scrum team根據product backlog列表,做工作量的預估和安排;

3、有了product backlog列表,我們需要通過 sprint planning meeting(sprint計畫會議) 來從中挑選出乙個story作為本次迭代完成的目標,這個目標的時間週期是1~4個星期,然後把這個story進行細化,形成乙個sprint backlog;

4、sprint backlog是由scrum team去完成的,每個成員根據sprint backlog再細化成更小的任務(細到每個任務的工作量在2天內能完成);

5、在scrum team完成計畫會議上選出的sprint backlog過程中,需要進行 daily scrum meeting(每日站立會議),每次會議控制在15分鐘左右,每個人都必須發言,並且要向所有成員當面匯報你昨天完成了什麼,並且向所有成員承諾你今天要完成什麼,同時遇到不能解決的問題也可以提出,每個人回答完成後,要走到黑板前更新自己的 sprint burn down(sprint燃盡圖);

6、做到每日整合,也就是每天都要有乙個可以成功編譯、並且可以演示的版本;很多人可能還沒有用過自動化的每日整合,其實tfs就有這個功能,它可以支援每次有成員進行簽入操作的時候,在伺服器上自動獲取最新版本,然後在伺服器中編譯,如果通過則馬上再執行單元測試**,如果也全部通過,則將該版本發布,這時一次正式的簽入操作才儲存到tfs中,中間有任何失敗,都會用郵件通知專案管理人員;

7、當乙個story完成,也就是sprint backlog被完成,也就表示一次sprint完成,這時,我們要進行 srpint review meeting(演示會議),也稱為評審會議,產品負責人和客戶都要參加(最好本公司老闆也參加),每乙個scrum team的成員都要向他們演示自己完成的軟體產品(這個會議非常重要,一定不能取消);

8、最後就是 sprint retrospective meeting(回顧會議),也稱為總結會議,以輪流發言方式進行,每個人都要發言,總結並討論改進的地方,放入下一輪sprint的產品需求中;

第二部分:小組協作開發

小組成員:

曹晨冰、舒夢嬌、楊瓊、李琛、張旋

開發計畫:

李琛:負責分析專案需求,安排任務,協調各組員分功

張旋:測試

楊瓊:對使用者的需求充分了解,編寫需求文件

舒夢嬌:溝通使用者,了解需求,和團隊互動

曹晨冰:編寫**

小組github位址

第三次作業

2 12有600 mb 兆位元組 的資料,需要從南京傳送到北京。一種方法是將資料寫到磁碟上,然後託人乘火車這 些磁碟捎去。另一種方法是用計算機通過長途 線路 設資訊傳送的速率為2.4kb s 傳送此資料。試比較這兩種方法的優劣。若資訊傳送速率為33.6kb s,其結果又如何?解 當傳送速率為2.4k...

第三次作業

1 有600mb 兆位元組 的資料,需要從南京傳送到北京 一種方法是將資料寫到磁碟上,然後託人乘火車將這些磁碟捎去。另一種方法是用計算機通過長途 線路 設資訊傳送的速率為2.4kb s 傳送此資料,試比較這兩種方法的優劣。若資訊傳送的速率為33.6kb s,其結果又如何?解 假定連續傳送且不出錯。若...

第三次作業

p67 2 12 有600mb的資料,需要從南京傳送到北京。一種方法是將資料寫到磁碟上,然後託人乘火車將這些磁碟捎去。另一種方法是用計算機通過長途 線路 設資訊傳送的速率是2.4kbps 傳送此資料。試比較這兩種方法的優劣。若資訊傳送速率為33.6kbps,其結果又如何?解 1 t 600 1024...