將產(chǎn)品投入市場的速度對產(chǎn)品的成功與否至關(guān)重要。對于創(chuàng)業(yè)團隊和小規(guī)模企業(yè)來說,面對在盡可能短的時間發(fā)布嵌入式軟件項目的壓力也就更大。下面所闡述的5個加速固件開發(fā)的小貼士,盡管它們顯而易見,但是在實踐中很少得到很好的應用。
1指定一個可行的計劃
在過去的幾年內(nèi),我曾遇到很多的這樣的項目,從項目的開始階段,開發(fā)人員的進度往往落后于計劃數(shù)個星期。項目管理者在對功能的復雜性和可能遇到的技術(shù)難點預計不足情況下,就為產(chǎn)品設(shè)定了一個交付日期,如果產(chǎn)品在設(shè)定的時間內(nèi)沒有交付,他們就認為項目是失敗的。
造成總是落后于進度的原因在于開發(fā)人員常常在壓力下工作。在高壓力的環(huán)境下,人體會分泌腎上腺皮質(zhì)醇供給給大腦。腎上腺皮質(zhì)醇將會降低人的推理和判斷的能力。為了趕進度,而讓團隊在高壓力下工作,這樣往往達不到你所想要的結(jié)果。制定一個合理的計劃,將有效的緩解壓力,讓工程師更高效的工作。從而保證項目按照計劃完成。
2優(yōu)先設(shè)計架構(gòu)
當交付的時間很短時,開發(fā)人員的第一反應是跳過架構(gòu)設(shè)計階段,直接開始軟件開發(fā)。之所以這樣想,是因為時間很緊迫,進行軟件架構(gòu)固然好,但是太費時了。
為了更快交付軟件,開發(fā)人員需要仔細思考軟件的設(shè)計,并計劃好所要做的事項。架構(gòu)是軟件產(chǎn)品的藍圖。沒有架構(gòu),開發(fā)人員是無法交付正確的固件,就如同沒有藍圖,建筑工人是無法建造樓房一樣。
3不要重復制作自己的調(diào)度器
對于嵌入式軟件開發(fā)者來說,編寫一個實時調(diào)度器或者實時操作系統(tǒng)(RTOS)是讓人興奮的有益的嘗試。問題是從零開始設(shè)計一個調(diào)度器,要讓這個調(diào)度器在所有操作條件下都正常工作,需要很大的努力可以做到的。開發(fā)人員需要浪費大量的時間用在設(shè)計固件組件,而這些組件已經(jīng)存在于許多市面上的實時操作系統(tǒng)上了。一些實時操作系統(tǒng),例如 FreeRTOS,是免費的。其他的也就需要很少的費用。利用商業(yè)化現(xiàn)成的調(diào)度器,而不是自己開發(fā),這樣可以縮短開發(fā)周期,甚至有可能大大提高系統(tǒng)的質(zhì)量和穩(wěn)定性。
4利用現(xiàn)有的中間件和驅(qū)動框架
微控制器已經(jīng)變得極其復雜,其功能已經(jīng)和90年代中期的通用計算機的處理單元相當。高端的微控制器有板載緩存、DMA和大量的外圍設(shè)備,并以超出200MHz的時鐘頻率運行。從新開始設(shè)計開發(fā)這樣復雜的設(shè)備將會耗費大把的時間。
應該把時間花在尋找設(shè)備供應商或者第三方組件提供者,這樣可以把注意力從硬件設(shè)計轉(zhuǎn)移到軟件實施階段。利用現(xiàn)有的中間件和驅(qū)動程序的框架,可以讓開發(fā)人員把精力放在產(chǎn)品差異性和特性的開發(fā)上,而不是放在研究硬件如何工作上。
5找對人
軟件工程師是高智商的人群,他們無所不能。問題是如果工程師是對某個應用領(lǐng)域不熟悉,他們往往會花很多的時間,盡管他們無所不能。
當交付時間很短,不要把沒有經(jīng)驗的菜鳥放入項目組中,取而代之的是某個領(lǐng)域的專家。也許大家都知道要用專家,但是由于時間緊迫,許多團隊隨便調(diào)配一些人加入項目組。這樣做的結(jié)果會使項目失去推動力,造成延遲交付。從短期來看,使用領(lǐng)域?qū)<倚枰嗟腻X,但是從長遠看,項目可以按時交付,開發(fā)的功能正確,這些遠遠超出了付出的金錢。
最后一些想法:也許有人會認為這些如何緩解項目時間壓力、按時交付項目的貼士說起來很顯而易見,做起來難。以上五個貼士看起來都是常識。但是當壓力來臨,這些常識經(jīng)常會被拋出九霄云外。只有認真和紀律性強的工程師和團隊才能時刻保持警醒,按照這些常識來行事。
審核編輯:湯梓紅
-
嵌入式
+關(guān)注
關(guān)注
5082文章
19104瀏覽量
304808 -
操作系統(tǒng)
+關(guān)注
關(guān)注
37文章
6801瀏覽量
123283 -
固件
+關(guān)注
關(guān)注
10文章
555瀏覽量
23016 -
RTOS
+關(guān)注
關(guān)注
22文章
811瀏覽量
119593
原文標題:分享 5 條實用建議,助你加速嵌入式固件開發(fā)。
文章出處:【微信號:工程師進階筆記,微信公眾號:工程師進階筆記】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論