
使用豬八戒APP
隨時隨地享服務(wù)
作者:褚鴻熙 發(fā)布:2023-06-24 11:56 499瀏覽
俗話說,不會寫文檔的工程師不是好的工程師!如果你只會寫代碼,而從不寫文檔,遲早有一天會“出事”。這不是危言聳聽,現(xiàn)實生活中有很多活生生的例子。不寫文檔有什么后果?如果不寫文檔,開發(fā)過程中就會出現(xiàn)類似下面這些情況。領(lǐng)導(dǎo)這個功能不好、再添加一個功能、把這個功能去掉等。軟件這個功能不能實現(xiàn)、代碼只能重構(gòu)、一個bug引發(fā)N個bug等。
硬件添加功能只能重新畫板、沒有考慮要預(yù)留通信接口等。通常,在小公司不寫設(shè)計文檔很正常,但是隱患很大。反復(fù)增刪功能、調(diào)整方案這都需要付出大量時間和精力。只是一兩次小改動都還好,如果多次、大改動的話,就會出現(xiàn)互相甩鍋、同事不和的后果。不要問為什么,經(jīng)歷過的人都懂嵌入式項目,需要哪些設(shè)計文檔?我之前參與開發(fā)的項目,從需求、設(shè)計、實現(xiàn)、測試、總結(jié)等這幾個階段下來,設(shè)計文檔多的時候有上100個文檔。當(dāng)然,這里面是包含不同崗位(軟件、硬件、機械、測試等)、不同模塊等細分的各種文檔。對于不同的項目,可能設(shè)計文檔種類和數(shù)量不同,比如你一個簡單的電子手表,可只需要一個需求文檔、一個方案設(shè)計文檔就可以了。其實,項目越復(fù)雜,設(shè)計文檔越多。比如京東的倉儲物流這一套系統(tǒng),你能想想一下有多少個設(shè)計文檔嗎?光是需求階段的文檔肯定都有上百個需求、評估、審核等各種文檔。當(dāng)然,對于我們普通的項目,需要的設(shè)計文檔可能幾個~十幾個就可以了,比如需求文檔、評估文檔、總方案文檔、模塊方案文檔、通信協(xié)議文檔、測試用例文檔等。每一種文檔沒有固定的格式,只需要結(jié)合你自己實際項目,把重點描述清楚,能指導(dǎo)開發(fā)人員,方便開發(fā)和設(shè)計即可。舉例xxx項目電源管理方案下面分享一個簡單方案設(shè)計文檔?!緦W(xué)習(xí)交流群】不知道怎么學(xué)?遇到問題沒人問?到處找資料?邀請你加入我的嵌入式物聯(lián)網(wǎng)單片機學(xué)習(xí)交流群,群內(nèi)氣氛活躍,大咖小白、在職、學(xué)生都有,還有群友整理收集的100G教程資料,點擊下方進群占位。
1.封面總體
1.封面總體就像一個本書的封面,把主要信息羅列出來。比如項目名稱、文檔版本、日期、作者、密級等。比如
2.文檔目錄作為一個技術(shù)開發(fā)人員,如果你連word的目錄都不知道怎么生成,你應(yīng)該好好反思一下了。目錄很簡單,比如這里想說下,目錄是自動生成,而不是手動編輯的目錄。我就發(fā)現(xiàn)有人的目錄居然是手動編輯的,不知道大家是不也這么“水”?
3.引言這里引言也可以是“概述”,把整個方案的主要內(nèi)容進行描述,比如這里簡單列幾點4.框架框架就是首先給人第一眼就能了解你這個項目有些什么東西。比如系統(tǒng)框架、軟、硬件框架等。這里需要用到一些設(shè)計框架的工具,比如Visio.比如5.硬件設(shè)計羅列硬件相關(guān)的設(shè)計信息,比如硬件供電、狀態(tài)等。6.軟件流程牽涉到軟件,在方案中必不可少的一點,就是軟件流程。如果你軟件流程都不清楚,在開發(fā)過程中,肯定會反反復(fù)復(fù)修改代碼,甚至修改了數(shù)十版不能用。軟件流程網(wǎng)上有很多例子可參看,比如按鍵檢測流程比如電壓、電流檢測流程7.系統(tǒng)狀態(tài)每一個系統(tǒng)基本都由多個狀態(tài)(或者模式),比如工作狀態(tài)、空閑狀態(tài)、故障狀態(tài)等。
你要把系統(tǒng)可能遇到的狀態(tài)都列出來,并描述清楚。比如8.通信協(xié)議、接口設(shè)計等其他比如你的項目中會用到通信,需要把通信協(xié)議整理出來?;蛘吆唵蚊枋鐾ㄐ畔嚓P(guān)的內(nèi)容,比如硬件使用了UART、CAN,通信協(xié)議使用CANopen、Modbus等。然后具體協(xié)議指令單獨一個文檔。(見協(xié)議文檔)。最后,以上內(nèi)容僅供參考,不同項目的情況不同。根據(jù)項目情況把設(shè)計中需要考慮的重要信息整理出來,并容易理解就可以了。
10贊同
2023-06-24 11:56:40推薦閱讀 RECOMMENDED READING