|
福州嵌入式開發(fā)培訓視頻教程_合肥嵌入式linux培訓機構_軟件項目管理在嵌入式系統(tǒng)中的應用研究,
項目管理方法通常用于PC系統(tǒng)的大型軟件開發(fā)中。本文以項目時間管理為例,把軟件項目管理方法引入嵌入式系統(tǒng)的開發(fā)之中。
以嵌入式USB主機為例,建立工作分解結構,利用網絡圖技術分析項目的關鍵路徑,從而合理分配了嵌入式USB主機項目的設計開發(fā)時間,控制進度。
傳統(tǒng)的嵌入式系統(tǒng)開發(fā)往往被歸類于硬件開發(fā),而采用匯編語言控制硬件CPU的方法被嚴格區(qū)分于面向過程、面向對象的PC平臺軟件的開發(fā)。但是隨著嵌入式處理器和控制器、嵌入式實時操作系統(tǒng)等的發(fā)展,嵌入式系統(tǒng)的軟件開發(fā)工作已越來越多的采用高級語言來進行,匯編語言則只應用在部分需要高效率的模塊中并且嵌入在高級語言中。面向嵌入式CPU的軟件編譯器的特性也越來越接近于純PC的軟件編譯環(huán)境。
在建立了硬件開發(fā)平臺(包括嵌入式CPU選型、外圍電路設計、功能模塊設計、PCB電路板制作等)之后,嵌入式系統(tǒng)軟件的開發(fā)工作對于整個系統(tǒng)的成功與否至關重要。其從算法設計、代碼實現、流程控制到代碼重用性、可靠性的提高等,都接近于PC平臺的軟件設計。二者都可以利用軟件工程的方法來優(yōu)化軟件質量,通過軟件項目管理來控制整個開發(fā)過程,使得每個項目能夠有序、高效、高質量、按時的完成。二者的異同如圖1所示。在嵌入式系統(tǒng)的開發(fā)中,同樣應該利用軟件項目管理方法來規(guī)劃、控制整個項目的進行。
1 在嵌入式系統(tǒng)項目開發(fā)中進行軟件項目時間管理的必要性
軟件項目管理就是以項目管理的體系、融合軟件開發(fā)的具體特點、為適應軟件開發(fā)項目的需要,揭示最常見的、困擾軟件項目的主要問題,提出較好的實踐方法和解決方案。軟件項目管理包括9大領域:項目整體、范圍、時間、成本、質量、人力資源、溝通、風險和采購管理。范圍、時間、成本和質量管理是軟件項目管理的核心內容。而范圍、時間、成本是項目管理的3要素,相互約束著執(zhí)行,成功的項目應該是同時實現這3個方面的。
據美國國防部19世紀70年代立項研究軟件項目做不好的原因,結果發(fā)現70%的項目問題是由于管理不善引起的,而不是因為技術能力不夠;1995年,Standish Group研究表明,所有的開發(fā)項目中有32%的項目在它們結束之前被中止,此外多于一半的軟件項目花費的成本相當于原來預算的2倍;只有42%的軟件項目完成時達到了預期的范圍和功能?梢姡瑫r間對于一個項目的成功是至關重要的。
本文以嵌入式USB主機項目為例,把軟件項目時間管理的理念和方法引入其中。
2 嵌入式USB主機功能描述
有關嵌入式USB主機的內容可參見參考文獻[5]。簡而言之,嵌入式USB主機就是將PC上的USB主機功能嵌入式化。該系統(tǒng)由6大模塊組成:MC68HC912D60A模塊;SL811HS模塊;CAN總線模塊;鍵盤輸入模塊;LCD顯示模塊;SCI通信模塊。
3 創(chuàng)建工作分解結構WBS
工作分解結構WBS(Work Breakdown Structure)是將項目按照其內在結構或實施過程的順序逐層分解而形成的結構示意圖。WBS是實施項目、創(chuàng)造最終產品或服務所必須進行的全部活動的一張清單,也是進度計劃、人員分配和預算計劃的基礎。
根據分析,嵌入式USB主機項目的工作分解結構WBS如圖2所示。
4 制定項目進度計劃
關鍵路徑法CPM(Critical Path Method)和計劃評審技術PERT(Program Evaluation and Review Technique)在網絡圖的畫法上基本相同,基本原理是用網絡圖來表達項目中各項活動的進度及其之間的相互關系,并在此基礎上進行網絡分析,計算網絡中各項時間參數,確定關鍵活動與關鍵路線,利用時差不斷地調整與優(yōu)化網絡,以求得最短工期,又叫做網絡圖技術。本文采用網絡圖技術,為嵌入式USB主機項目制定進度計劃。
4.1 制定項目的活動表
在嵌入式USB主機項目的工作分解結構WBS的基礎上,經過分析每一項任務的工作量和前后關系,可制定出如表1所示的項目活動表。
4.2 繪制前導圖
以項目活動表為基礎,前導圖的繪制規(guī)則是:無先行活動的活動從開始結點發(fā)出,有的活動是并行的,有的活動是有先后順序的,根據活動表中的關系,畫出網絡圖。繪制的嵌入式USB主機項目的前導圖如圖3所示。其中無后繼活動的活動匯聚于結束結點。每個節(jié)點的結構為,其中A代表節(jié)點活動編號;B代表最遲結束時間;C代表活動浮動時間;D代表最早結束時間。
嵌入式螺栓二維圖, 嵌入式系統(tǒng)跟單片機, 嵌入式SP全拼, 嵌入式操作寄存器, 常州同惠嵌入式軟件, 嵌入式的成本, 中移物聯嵌入式開發(fā), css內聯式嵌入式, tx2算嵌入式開發(fā), 互嵌入式社會結構, 義烏嵌入式開發(fā), 嵌入式常用模塊大全, 嵌入式遠程升級程序, 大學嵌入式沒學好, 互聯網嵌入式培訓, 嵌入式系統(tǒng)漏洞挖掘, 半嵌入式臺盆龍頭, 嵌入式smif, 嵌入式鍵盤原理圖, 嵌入式的國際會議, 嵌入式軟考怎么分, 嵌入式實驗芯片, 寫嵌入式程序, 嵌入式驅動什么意思, 嵌入式喇叭箱體, 嵌入式工控開發(fā)平臺, ?低暻度胧酱罂, dsp屬于嵌入式, 嵌入式軟件維護, 嵌入式床床沿很寬, 嵌入式展2017, 嵌入式賺錢嗎, 嵌入式采集攝像頭, 嵌入式三個基本要素, 嵌入式華容道代碼, 自學嵌入式多久, A9嵌入式開發(fā), 嵌入式帶進位加減法, 嵌入式衣帽間的特點, 嵌入式16路解碼器, 嵌入式平方根倒數, 嵌入式新產品, 嵌入式架構類型, 嵌入式芯片冷卻, 嵌入式和plc通訊,
4.3 前向路徑計算活動最早開始時間TES和最早結束時間TEF
根據圖3所示的前導圖,求出每個項目活動的最早開始時間TES和最早結束時間TEF,結果如表2所示。計算順序是前向從節(jié)點1往后計算,直至計算到節(jié)點9。
每一項活動的最早開始時間,均需要按照前導圖的前后關系逐漸累加計算。需要說明的是,活動I是由F、G、H共3項活動匯聚而成的,因此I的最早開始時間TES等于這3個活動的最早結束時間的最大值,即如表2所示,I的最早開始時間
TES-I=max{18,13,10}=18
下一步,從表3中選取每一個節(jié)點的最早結束時間,填入前導圖中,如圖4所示。
需要特殊說明的是節(jié)點9的最早開始時間就是活動J的最早結束時間,即21。
4.4 后向路徑計算活動最遲開始時間TLS和最遲結束時間TLF
這里,需要計算的是在不影響整個項目按期完成的前提下,本活動必須開始和完成的最遲時間。反向計算各活動的最遲結束時間時,要以結束結點的最遲結束時間等于最早開始時間為準。若一個結點有幾個活動發(fā)出,則該結點(事件)的最遲開始時間取各活動最遲開始時間的小者。計算結果如表3所示。計算順序是后向從節(jié)點9開始往前算。
最后,將每一個節(jié)點的最遲結束時間填入前導圖,如圖5所示。
4.5 確定關鍵活動及關鍵路徑
(1)確定關鍵節(jié)點
總浮動時間是最遲開始時間和最遲結束時間的差,首先將計算后的各活動的總浮動時間填入表3,并將節(jié)點總浮動數填入前導圖,如圖6所示。
最早時間與最遲時間相等的點,也就是總浮動時間為0的節(jié)點是關鍵節(jié)點。因此,由圖6可知,嵌入式USB主機項目的所有節(jié)點1、2、3、4、5、6、7、8、9均為關鍵節(jié)點。這是本項目的特殊之處。
(2)確定關鍵路徑
由以上分析,以及表1可知,嵌入式USB主機項目的關鍵路徑是1-2-3-4-5-6-7-8-9,而相應的關鍵活動是A、B、C、D、E、F、I、J。
這條關鍵路徑在時間上沒有回旋余地,即每個關鍵活動應滿足最早開始時間等于最遲開始時間,而非關鍵活動則有富裕時間。這使得人們在實施嵌入式USB主機項目計劃時做到心中有數,項目的關鍵活動工作包括:
項目需求分析(A);系統(tǒng)總體設計(B);系統(tǒng)硬件設計(C);初始化及用戶交互界面軟件設計(D);單片機與接口芯片通信軟件設計(E);USB主機系統(tǒng)軟件設計(F);系統(tǒng)聯調測試(I);項目結題報告(J)。
要嚴格控制按預定工作時間進行,否則就會拖長整個任務的工期,延誤項目的按時完成。相對來說,作為非關鍵工作的MS 設備類協(xié)議軟件設計和FAT 文件系統(tǒng)軟件設計由于有浮動時間存在,在資源或人力不足時,可適當調整這些工作的耗費時間和開始時間,不會影響總工期。
參考文獻
1 殷人昆.清華大學《軟件項目管理》課程講義.2005,
2 Schwalbe K.IT項目管理(英文版,第2版).北京:機械工業(yè)出版社,2003
3 鄭人杰.實用軟件工程.北京:清華大學出版社,1997
4 Jalote P著,施平安譯.軟件項目管理實踐.北京:清華大學出版社,2003
5 馬 偉.計算機USB系統(tǒng)原理及其主/從機設計.北京:北京航空航天大學出版社,2004
6 金振華.面向對象方法在汽車排放測試系統(tǒng)軟件開發(fā)中的應用.電子技術應用,2001;(4) |
|