-
- 素材大。
- 954.50 KB
- 素材授權(quán):
- 免費下載
- 素材格式:
- .ppt
- 素材上傳:
- ppt
- 上傳時間:
- 2018-05-10
- 素材編號:
- 110080
- 素材類別:
- 學(xué)校PPT
-
素材預(yù)覽
這是一個關(guān)于軟件工程導(dǎo)論心得PPT,主要介紹估算軟件規(guī)模、工作量估算、估算開發(fā)時間。第13章 軟件項目管理 13.3.1 估算開發(fā)時間 Brooks規(guī)律:向一個已經(jīng)延期的項目增加人力,只會使得它更加延期。隨著開發(fā)小組規(guī)模的擴大,個人生產(chǎn)率將下降,以至開發(fā)時間與從事開發(fā)工作的人數(shù)并不成反比關(guān)系。出現(xiàn)這種現(xiàn)象主要有下述兩個原因:當小組變得更大時,每個人需要用更多的時間與組內(nèi)其他成員討論問題、協(xié)調(diào)工作,因此增加了通信開銷。如果在開發(fā)過程中增加小組人員,則最初一段時間內(nèi)項目組總生產(chǎn)率不僅不會提高反而會下降。這是因為新成員在開始時不僅不是生產(chǎn)力,而且在他們學(xué)習(xí)期間還需要花費小組其他成員的時間。 項目組規(guī)模與項目組總生產(chǎn)率的關(guān)系當幾個人共同承擔軟件開發(fā)項目中的某一任務(wù)時,人與人之間必須通過交流來解決各自承擔任務(wù)之間的接口問題,即所謂通信問題。通信需花費時間和代價,會引起軟件錯誤增加,降低軟件生產(chǎn)率。若兩個人之間需要通信,則稱在這兩個人之間存在一條通信路徑。如果一個軟件開發(fā)小組有 n 個人,每兩人之間都需要通信,則總的通信路徑有 n(n-1)/2 (條)。 設(shè)一個人單獨開發(fā)軟件,生產(chǎn)率是5000行/人年。若 4 個人組成一個小組共同開發(fā)這個軟件,則需要 6條通信路徑。若在每條通信路徑上耗費的工作量是 250 行/人年。則小組中每個人的軟件生產(chǎn)率降低為 5000-6×250/4 = = 5000-375 = = 4625 行/人年。從上述分析可知,一個軟件任務(wù)由一個人單獨開發(fā),生產(chǎn)率最高;而對于一個稍大型的軟件項目,一個人單獨開發(fā),時間太長。因此軟件開發(fā)小組是必要的。但是,開發(fā)小組不宜太大,成員之間避免太多的通信路徑。在開發(fā)進程中,切忌中途加人,避免太多的生產(chǎn)率損失。 任務(wù)的確定與并行性當參加同一軟件工程項目的人數(shù)不止一人的時候,開發(fā)工作就會出現(xiàn)并行情形,歡迎點擊下載軟件工程導(dǎo)論心得PPT哦。
軟件工程導(dǎo)論心得PPT是由紅軟PPT免費下載網(wǎng)推薦的一款學(xué)校PPT類型的PowerPoint.
第13章 軟件項目管理 13.3.1 估算開發(fā)時間 Brooks規(guī)律:向一個已經(jīng)延期的項目增加人力,只會使得它更加延期。隨著開發(fā)小組規(guī)模的擴大,個人生產(chǎn)率將下降,以至開發(fā)時間與從事開發(fā)工作的人數(shù)并不成反比關(guān)系。出現(xiàn)這種現(xiàn)象主要有下述兩個原因:當小組變得更大時,每個人需要用更多的時間與組內(nèi)其他成員討論問題、協(xié)調(diào)工作,因此增加了通信開銷。如果在開發(fā)過程中增加小組人員,則最初一段時間內(nèi)項目組總生產(chǎn)率不僅不會提高反而會下降。這是因為新成員在開始時不僅不是生產(chǎn)力,而且在他們學(xué)習(xí)期間還需要花費小組其他成員的時間。 項目組規(guī)模與項目組總生產(chǎn)率的關(guān)系當幾個人共同承擔軟件開發(fā)項目中的某一任務(wù)時,人與人之間必須通過交流來解決各自承擔任務(wù)之間的接口問題,即所謂通信問題。通信需花費時間和代價,會引起軟件錯誤增加,降低軟件生產(chǎn)率。若兩個人之間需要通信,則稱在這兩個人之間存在一條通信路徑。如果一個軟件開發(fā)小組有 n 個人,每兩人之間都需要通信,則總的通信路徑有 n(n-1)/2 (條)。 設(shè)一個人單獨開發(fā)軟件,生產(chǎn)率是5000行/人年。若 4 個人組成一個小組共同開發(fā)這個軟件,則需要 6條通信路徑。若在每條通信路徑上耗費的工作量是 250 行/人年。則小組中每個人的軟件生產(chǎn)率降低為 5000-6×250/4 = = 5000-375 = = 4625 行/人年。從上述分析可知,一個軟件任務(wù)由一個人單獨開發(fā),生產(chǎn)率最高;而對于一個稍大型的軟件項目,一個人單獨開發(fā),時間太長。因此軟件開發(fā)小組是必要的。但是,開發(fā)小組不宜太大,成員之間避免太多的通信路徑。在開發(fā)進程中,切忌中途加人,避免太多的生產(chǎn)率損失。 任務(wù)的確定與并行性當參加同一軟件工程項目的人數(shù)不止一人的時候,開發(fā)工作就會出現(xiàn)并行情形。軟件開發(fā)進程中設(shè)置許多里程碑。里程碑為管理人員提供了指示項目進度的可靠依據(jù)。軟件工程項目的并行性提出了一系列的進度要求。因為并行任務(wù)是同時發(fā)生的,所以進度計劃表必須決定任務(wù)之間的從屬關(guān)系,確定各個任務(wù)的先后次序和銜接,確定各個任務(wù)完成的持續(xù)時間。項目負責人應(yīng)注意構(gòu)成關(guān)鍵路徑的任務(wù),即若要保證整個項目能按進度要求完成,就必須保證這些任務(wù)要按進度要求完成。 13.3.2 Gantt圖? Gantt圖(甘特圖)是歷史悠久、應(yīng)用廣泛的進度計劃工具,下面通過一個非常簡單的例子介紹這種工具。 13.3.3 工程網(wǎng)絡(luò)? 當把一個工程項目分解成許多子任務(wù),并且它們彼此間的依賴關(guān)系又比較復(fù)雜時,僅僅用Gantt圖作為安排進度的工具是不夠的,不僅難于做出既節(jié)省資源又保證進度的計劃,而且還容易發(fā)生差錯。?工程網(wǎng)絡(luò)是制定進度計劃時另一種常用的圖形工具,它同樣能描繪任務(wù)分解情況以及每項作業(yè)的開始時間和結(jié)束時間,此外,它還顯式地描繪各個作業(yè)彼此間的依賴關(guān)系。因此,工程網(wǎng)絡(luò)是系統(tǒng)分析和系統(tǒng)設(shè)計的強有力的工具。? 在工程網(wǎng)絡(luò)中用箭頭表示作業(yè)(例如,刮舊漆,刷新漆,清理等),用圓圈表示事件(一項作業(yè)開始或結(jié)束)。注意,事件僅僅是可以明確定義的時間點,它并不消耗時間和資源。作業(yè)通常既消耗資源又需要持續(xù)一定時間。圖13.2是舊木板房刷漆工程的工程網(wǎng)絡(luò)。圖中表示刮第1面墻上舊漆的作業(yè)開始于事件1,結(jié)束于事件2。用開始事件和結(jié)束事件的編號標識一個作業(yè),因此“刮第1面墻上舊漆”是作業(yè)1—2。? 在工程網(wǎng)絡(luò)中的一個事件,如果既有箭頭進入又有箭頭離開,則它既是某些作業(yè)的結(jié)束又是另一些作業(yè)的開始。例如,圖13.2中事件2既是作業(yè)1—2(刮第1面墻上的舊漆)的結(jié)束,又是作業(yè)2—3(刮第2面墻上舊漆)和作業(yè)2—4(給第1面墻刷新漆)的開始。也就是說,只有第1面墻上的舊漆刮完之后,才能開始刮第2面墻上舊漆和給第1面墻刷新漆這兩個作業(yè)。因此,工程網(wǎng)絡(luò)顯式地表示了作業(yè)之間的依賴關(guān)系。? 在圖13.2中還有一些虛線箭頭,它們表示虛擬作業(yè),也就是事實上并不存在的作業(yè)。引入虛擬作業(yè)是為了顯式地表示作業(yè)之間的依賴關(guān)系。例如,事件4既是給第1面墻刷新漆結(jié)束,又是給第2面墻刷新漆開始(作業(yè)4—6)。但是,在開始給第2面墻刷新漆之前,不僅必須已經(jīng)給第1面墻刷完了新漆,而且第2面墻上的舊漆也必須已經(jīng)刮凈(事件3)。也就是說,在事件3和事件4之間有依賴關(guān)系,或者說在作業(yè)2—3(刮第2面墻上舊漆)和作業(yè)4—6(給第2面墻刷新漆)之間有依賴關(guān)系,虛擬作業(yè)3—4明確地表示了這種依賴關(guān)系。注意,虛擬作業(yè)既不消耗資源也不需要時間。 13.3.4 估算進度?畫出類似圖13.2那樣的工程網(wǎng)絡(luò)之后,系統(tǒng)分析員就可以借助它的幫助估算工程進度了。為此需要在工程網(wǎng)絡(luò)上增加一些必要的信息。?首先,把每個作業(yè)估計需要使用的時間寫在表示該項作業(yè)的箭頭上方。注意,箭頭長度和它代表的作業(yè)持續(xù)時間沒有關(guān)系,箭頭僅表示依賴關(guān)系,它上方的數(shù)字才表示作業(yè)的持續(xù)時間。? 其次,為每個事件計算下述兩個統(tǒng)計數(shù)字:最早時刻EET和最遲時刻LET。這兩個數(shù)字將分別寫在表示事件的圓圈的右上角和右下角,如圖13.3左下角的符號所示。 事件的最早時刻是該事件可以發(fā)生的最早時間。通常工程網(wǎng)絡(luò)中第一個事件的最早時刻定義為零,其他事件的最早時刻在工程網(wǎng)絡(luò)上從左至右按事件發(fā)生順序計算。計算最早時刻EET使用下述三條簡單規(guī)則:? 考慮進入該事件的所有作業(yè);?對于每個作業(yè)都計算它的持續(xù)時間與起始事件的EET之和;選取上述和數(shù)中的最大值作為該事件的最早時刻EET。? 事件的最遲時刻是在不影響工程竣工時間的前提下,該事件最晚可以發(fā)生的時刻。按慣例,最后一個事件(工程結(jié)束)的最遲時刻就是它的最早時刻。其他事件的最遲時刻在工程網(wǎng)絡(luò)上從右至左按逆作業(yè)流的方向計算。計算最遲時刻LET使用下述三條規(guī)則:考慮離開該事件的所有作業(yè);?從每個作業(yè)的結(jié)束事件的最遲時刻中減去該作業(yè)的持續(xù)時間;?選取上述差數(shù)中的最小值做為該事件的最遲時刻LET。? 13.3.5 關(guān)鍵路徑?圖13.3中有幾個事件的最早時刻和最遲時刻相同,這些事件定義了關(guān)鍵路徑,在圖中關(guān)鍵路徑用粗線箭頭表示。關(guān)鍵路徑上的事件(關(guān)鍵事件)必須準時發(fā)生,組成關(guān)鍵路徑的作業(yè)(關(guān)鍵作業(yè))的實際持續(xù)時間不能超過估計的持續(xù)時間,否則工程就不能準時結(jié)束。? 13.3.6 機動時間?不在關(guān)鍵路徑上的作業(yè)有一定程度的機動余地——實際開始時間可以比預(yù)定時間晚一些,或者實際持續(xù)時間可以比預(yù)計的持續(xù)時間長一些,而并不影響工程的結(jié)束時間。一個作業(yè)可以有的全部機動時間等于它的結(jié)束事件的最遲時刻減去它的開始事件的最早時刻,再減去這個作業(yè)的持續(xù)時間:?機動時間=(LET)結(jié)束-(EET)開始-持續(xù)時間?對于前述油漆舊木板房的例子,計算得到的非關(guān)鍵作業(yè)的機動時間列在表13.6中。? 在工程網(wǎng)絡(luò)中每個作業(yè)的機動時間寫在代表該項作業(yè)的箭頭下面的括弧里(參看圖13.4)。在制定進度計劃時仔細考慮和利用工程網(wǎng)絡(luò)中的機動時間,往往能夠安排出既節(jié)省資源又不影響最終竣工時間的進度表。 13.4.1 民主制程序員組特點 —成員之間關(guān)系平等 —根據(jù)每個人的能力和經(jīng)驗適當分配 —通過全體人員協(xié)商決定項目工作優(yōu)點 —同等項目參與權(quán),可以激發(fā)大家的創(chuàng)造力,利于攻克 難關(guān) —適用于小規(guī)模、能力強、有共同工作經(jīng)歷的團隊缺點 —缺少權(quán)威人士,在意見分歧的情況下很難解決 13.4.2 主程序員組 13.4.3 現(xiàn)代程序員組現(xiàn)代程序員組優(yōu)缺點優(yōu)點 —將“主程序員”的職責專一化缺點 —“技術(shù)組長”與“行政組長”的職責劃分不清 —不能適應(yīng)大規(guī)模的項目現(xiàn)代程序員組-組織結(jié)構(gòu)2 改進方案 13.5.2 軟件質(zhì)量保證措施 軟件質(zhì)量保證(software quality assurance SQA)的措施主要有: 基于非執(zhí)行的測試(也稱為復(fù)審或評審),主要用來保證在編碼之前各階段產(chǎn)生的文檔的質(zhì)量;基于執(zhí)行的測試(即以前講過的軟件測試),需要在程序編寫出來之后進行,它是保證軟件質(zhì)量的最后一道防線;程序正確性證明,使用數(shù)學(xué)方法嚴格驗證程序是否與對它的說明完全一致。 2. 基線 IEEE把基線定義為: 已經(jīng)通過了正式復(fù)審的規(guī)格說明或中間產(chǎn)品,它可以作為進一步開發(fā)的基礎(chǔ),并且只有通過正式的變化控制過程才能改變它;(Baseline)由一組配置項組成,這些配置項構(gòu)成了一個相對穩(wěn)定的邏輯實體;中的配置項被“凍結(jié)”了,不能再被任何人隨意修改(見變更控制規(guī)程)。基線通常對應(yīng)于開發(fā)過程中的里程碑(Milestone),一個產(chǎn)品可以有多個基線,也可以只有一個基線;的主要屬性有:名稱、標識符、版本、日期等。通常將交付給客戶的基線稱為一個“Release”,為內(nèi)部開發(fā)用的基線則稱為一個“Build”。 13.6.2 軟件配置管理過程 1、 標識 2、 版本控制 3、 變化控制 4、 配置設(shè)計 5、狀態(tài)報告 配置控制是核心: 存取控制(開發(fā)庫、基線庫、產(chǎn)品庫) 版本控制 變更控制 產(chǎn)品發(fā)布控制 13.6.3 常用配置管理工具 1、 SourceSafe SourceSafe是Microsoft公司推出的配置管理工具,是Visual Studio的套件之一。SourceSafe是國內(nèi)最流行的配置管理工具,用戶量絕對是第一位。 SourceSafe的優(yōu)點可以用8個字來概括“簡單易用,一學(xué)就會”,這個優(yōu)點是Microsoft繼承下來的。 雖然SourceSafe并不是免費的,但是在國內(nèi)人們以接近于零的成本得到它,網(wǎng)上到處可以下載啊。當然Microsoft也不在乎這個小不點的軟件,它屬于“買大件送小件”的角色。如果你合法地得到Visual Studio,你就得到了免費的SourceSafe。 SourceSafe的主要局限性:只能在Windows下運行,不能在Unix, Linux下運行。SourceSafe不支持異構(gòu)環(huán)境下的配置管理,對用戶而言是個麻煩事。這不是技術(shù)問題,是微軟公司產(chǎn)品戰(zhàn)略決定的。適合于局域網(wǎng)內(nèi)的用戶群,不適合于通過Internet連接的用戶群,因為SourceSafe是通過“共享目錄”方式存儲文件的。 2 、CVS CVS 是 Concurrent Version System(并行版本系統(tǒng))的縮寫,它是著名的開放源代碼的配置管理工具。 CVS的官方網(wǎng)站是http://www.cvshome.org/ 。官方提供的是CVS服務(wù)器和命令行程序,但是官方并不提供交互式的客戶端軟件。許多軟件機構(gòu)根據(jù)CVS官方提供的編程接口開發(fā)了各色各樣的CVS客戶端軟件,最有名的當推Windows環(huán)境的CVS客戶端軟件——WinCVS。WinCVS是免費的,但是并不開放源代碼。與SourceSafe相比,CVS的主要優(yōu)點是: SourceSafe有的功能CVS全都有,CVS支持并發(fā)的版本管理,SourceSafe沒有并發(fā)功能。CVS服務(wù)器的功能和性能都比SourceSafe高出一籌。 CVS服務(wù)器是用Java編寫的,可以在任何操作系統(tǒng)和網(wǎng)絡(luò)環(huán)境下運行。CVS深受Unix和Linux 的用戶喜愛。Borland公司的JBuilder提供了CVS的插件,Java程序員可以在JBuilder集成環(huán)境中使用CVS進行版本控制。 CVS服務(wù)器有自己專用的數(shù)據(jù)庫,文件存儲并不采用SourceSafe的“共享目錄”方式,所以不受限于局域網(wǎng),信息安全性很好。 CVS的主要缺點在于客戶端軟件,真可謂五花八門、良莠不齊。Unix和Linux 的軟件高手可以直接使用CVS命令行程序,而Windows用戶通常使用WinCVS。安裝和使用WinCVS顯然比SourceSafe麻煩不少,這是令人比較遺憾的。 3、 ClearCase IBM(Rational公司)的ClearCase是軟件行業(yè)公認的功能最強大、價格最昂貴的配置管理軟件。 ClearCase主要應(yīng)用于復(fù)雜產(chǎn)品的并行開發(fā)、發(fā)布和維護,其功能劃分為四個范疇:版本控制、工作空間管理(Workspace Management)、構(gòu)造管理(Build Management)、過程控制(Process Control)。ClearCase通過TCP/IP來連接客戶端和服務(wù)器。另外,ClearCase擁有的浮動License可以跨越UNIX和Windows NT平臺被共享。 ClearCase的功能比CVS、SourceSafe強大得多,但是其用戶量卻遠不如CVS、SourceSafe的多。主要原因是: ClearCase價格昂貴,如果沒有批量折扣的話,每個License大約5000美元。對于中國用戶而言,這無疑是天價。 用戶只有經(jīng)過幾天的培訓(xùn)后(費用同樣很昂貴),才能正常使用ClearCase。如果不參加培訓(xùn)的話,用戶基本上不可能無師自通。 13.7 能力成熟度模型 1、概述 1) CMM是什么 CMM(Capability Maturity Model)是用于衡量軟件過程能力的事實上的標準,同時也是目前軟件過程改進最好的參考標準。美國卡內(nèi)基-梅隆大學(xué)軟件工程研究所(SEI)研制 2) 發(fā)展簡史 CMM 1.0于1991年制定。 CMM 1.1于1993發(fā)布,該版本應(yīng)用最廣泛。 CMM 2.0草案于1997年制定(未廣泛應(yīng)用)。 到2000年,CMM演化成為CMMI(Capability Maturity Model Integration),CMM 2.0成為CMMI 1.0的主要組成部分。 CMMI-SE/SW 1.1(CMMI for System Engineering and Software Engineering)于2002年1月正式推出。 3) CMM重要概念 5個成熟度等級:初始級,可重復(fù)級,已定義級,已管理級,持續(xù)優(yōu)化級。 18個關(guān)鍵過程域。關(guān)鍵過程域指出為了達到某個成熟度等級必須要解決的一族問題。 4)能力成熟度模型的基本思想 ---- 幫助軟件開發(fā)機構(gòu)建立一個有規(guī)律的、成熟的軟件過程。改進后的軟件過程將開發(fā)出質(zhì)量更好的軟件,使更多的軟件項目免受時間和費用超支之苦。 5)CMM的策略 ---- 力圖改進對軟件過程的管理,而在技術(shù)方面的改進是其必然的結(jié)果。 6)CMM在改進軟件過程中所起的作用 ---- 指導(dǎo)軟件機構(gòu)通過確定當前的過程成熟度并識別出對過程改進起關(guān)鍵作用的問題,從而明確過程改進的方向和策略。通過集中開展與過程改進的方向和策略相一致的一組過程改進活動,軟件機構(gòu)便能穩(wěn)步而有效地改進其軟件過程,使其軟件過程能力得到循序漸進的提高。 2、 CMM的五個級別 CMM提供了將這些演化步驟組織為5個成熟度級別的框架,這為持續(xù)的過程改進提供了基礎(chǔ)。成熟度級別定義了在使 軟件過程成熟的過程 中的演化狀態(tài)。 初始級組織:組織通常沒有提供開發(fā)和維護軟件的穩(wěn)定的環(huán)境。項目:當發(fā)生危機時,項目通常放棄計劃的過程,回復(fù)到編碼和測試。過程能力:不可預(yù)測。(unpredictable) 可重復(fù)級組織:將軟件項目的有效管理過程制度化,這使得組織能夠重復(fù)以前項目中的成功實踐。項目:配備了基本的軟件管理控制。過程能力:嚴格的。(disciplined) 已定義級組織:在組織范圍內(nèi)開發(fā)和維護軟件的標準過程被文檔化,其中包括軟件工程過程和管理過程,它們集成為一個一致的整體。項目:對組織的標準軟件過程進行裁剪,來開發(fā)它們自己的定義軟件過程。過程能力:標準的和一致的。(standard and consistent) 已管理級組織:為軟件產(chǎn)品和過程都設(shè)定了量化的質(zhì)量目標。項目:項目減小過程性能的變化性,使其進入可接收的量化邊界,從而達到對產(chǎn)品和過程的控制。過程能力:可預(yù)言的。(predictable) 持續(xù)優(yōu)化級組織:關(guān)注于持續(xù)的過程改進。項目:軟件過程被評價,以防止過失重復(fù)發(fā)生,從中獲得的教訓(xùn)散布給其它項目。過程能力:持續(xù)的改善。(continuously improving) 3、關(guān)于五個級別的說明從第1級提升到第2級可能需要幾年的時間,在其它級別間提升通常依次需要2年的時間。由于每個級別形成了達到下一個級別的必須的基礎(chǔ),所以跳過級別是達不到預(yù)期的目標的。用途 --- 評定(Assessment)組使用CMM,識別組織的長處和弱點; --- 評價(Evaluation)組使用CMM,識別在不同的訂約人之間進行風(fēng)險的選擇,并監(jiān)控合同; --- 管理者和技術(shù)人員使用CMM,理解為他們的組織所制定的規(guī)劃以及實現(xiàn)軟件過程改善計劃所需的活動; --- 過程改善組使用CMM,作為在他們的組織中定義和改善軟件過程的指南。 4、成熟度級別的內(nèi)部結(jié)構(gòu) 練習(xí)題填空題: 1、估算軟件規(guī)模的兩個主要技術(shù)分別為:( )和( ),使用代碼行技術(shù)時,常用的單位為( )。 2、工作量估算的三種基本模型分別為:( )、( )和COCOMO2模型 3、constructive cost model是構(gòu)造性成本模型,COCOMO2給出了3個層次的估算模型分別為( )、( )和( )。 4、CMM的中文含義是( )。 簡答題: 1、簡述COCOMO2的5個分級因素? 2、簡述Brooks規(guī)律? 3、簡述人員組織的三種典型組織方式? 4、簡述保證軟件質(zhì)量的三個要點? 5、簡述軟件配置管理的5項任務(wù)? 6、簡述能力成熟度的5個等級,要求從低到高排序? 7. P.336第7、8、9、10、11、12題
軟件工程基礎(chǔ)ppt:這是軟件工程基礎(chǔ)ppt,包括了軟件需求分析與定義,可行性研究,可行性研究工作步驟,軟件設(shè)計,軟件測試,軟件維護,軟件維護的分類,軟件過程管理,類圖等內(nèi)容,歡迎點擊下載。
實用軟件工程ppt:這是實用軟件工程ppt,包括了軟件工程概述,軟件工程的概念,發(fā)展歷程,軟件工程的生命周期,建模的目的等內(nèi)容,歡迎點擊下載。
軟件工程類答辯ppt:這是軟件工程類答辯ppt,包括了系統(tǒng)介紹,研究背景,需求分析,系統(tǒng)設(shè)計,系統(tǒng)實現(xiàn),總結(jié),致謝等內(nèi)容,歡迎點擊下載。