軟硬件開發(fā)流程及規(guī)范.docx_第1頁
軟硬件開發(fā)流程及規(guī)范.docx_第2頁
軟硬件開發(fā)流程及規(guī)范.docx_第3頁
軟硬件開發(fā)流程及規(guī)范.docx_第4頁
軟硬件開發(fā)流程及規(guī)范.docx_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

軟硬件開發(fā)流程及規(guī)范 機密編號:受控狀態(tài):軟硬件開發(fā)流程及規(guī)范編 制: 日期: 審 核: 日期: 批 準: 日期: 修訂記錄日 期修訂狀態(tài)修改內(nèi)容修改人審核人批準人0 目錄0目錄21概述41.1硬件開發(fā)過程簡介41.1.1硬件開發(fā)的基本過程41.1.2硬件開發(fā)的規(guī)范化41.2硬件工程師職責與基本技能51.2.1硬件工程師職責51.2.2硬件工程師基本素質(zhì)與技術(shù)52軟硬件開發(fā)規(guī)范化管理62.1硬件開發(fā)流程62.1.1硬件開發(fā)流程文件介紹62.1.2硬件開發(fā)流程詳解62.2硬件開發(fā)文檔規(guī)范102.2.1硬件開發(fā)文檔規(guī)范文件介紹102.2.2硬件開發(fā)文檔編制規(guī)范詳解112.3與硬件開發(fā)相關(guān)的流程文件介紹132.3.1項目立項流程:132.3.2項目實施管理流程:142.3.3軟件開發(fā)流程:142.3.4系統(tǒng)測試工作流程:142.3.5內(nèi)部驗收流程143附錄一. 硬件設計流程圖:164附錄二. 軟件設計流程圖:175附錄三. 編程規(guī)范181 概述1.1 硬件開發(fā)過程簡介1.1.1 硬件開發(fā)的基本過程硬件開發(fā)的基本過程:1.明確硬件總體需求情況,如CPU 處理能力、存儲容量及速度,I/O 端口的分配、接口要求、電平要求、特殊電路(厚膜等)要求等等。2.根據(jù)需求分析制定硬件總體方案,尋求關(guān)鍵器件及電路的技術(shù)資料、技術(shù)途徑、技術(shù)支持,要比較充分地考慮技術(shù)可能性、可靠性以及成本控制,并對開發(fā)調(diào)試工具提出明確的要求。關(guān)鍵器件索取樣品。3.總體方案確定后,作硬件和單板軟件的詳細設計,包括繪制硬件原理圖、單板軟件功能框圖及編碼、PCB 布線,同時完成發(fā)物料清單。4.領(lǐng)回PCB 板及物料后由焊工焊好12 塊單板,作單板調(diào)試,對原理設計中的各功能進行調(diào)測,必要時修改原理圖并作記錄。5.軟硬件系統(tǒng)聯(lián)調(diào),一般的單板需硬件人員、單板軟件人員的配合,特殊的單板(如主機板)需比較大型軟件的開發(fā),參與聯(lián)調(diào)的軟件人員更多。一般地,經(jīng)過單板調(diào)試后在原理及PCB布線方面有些調(diào)整,需第二次投板。6.內(nèi)部驗收及轉(zhuǎn)中試,硬件項目完成開發(fā)過程。1.1.2 硬件開發(fā)的規(guī)范化硬件開發(fā)的基本過程應遵循硬件開發(fā)流程規(guī)范文件執(zhí)行,不僅如此,硬件開發(fā)涉及到技術(shù)的應用、器件的選擇等,必須遵照相應的規(guī)范化措施才能達到質(zhì)量保障的要求。這主要表現(xiàn)在,技術(shù)的采用要經(jīng)過總體組的評審,器件和廠家的選擇要參照物料認證部的相關(guān)文件,開發(fā)過程完成相應的規(guī)定文檔,另外,常用的硬件電路(如ID.WDT)要采用通用的標準設計。1.2 硬件工程師職責與基本技能1.2.1 硬件工程師職責一個技術(shù)領(lǐng)先、運行可靠的硬件平臺是公司產(chǎn)品質(zhì)量的基礎(chǔ),硬件工程師職責神圣,責任重大。1、硬件工程師應勇于嘗試新的先進技術(shù),在產(chǎn)品硬件設計中大膽創(chuàng)新。2、堅持采用開放式的硬件架構(gòu),把握硬件技術(shù)的主流和未來發(fā)展,在設計中考慮將來的技術(shù)升級。3、充分利用公司現(xiàn)有的成熟技術(shù),保持產(chǎn)品技術(shù)上的繼承性。4、在設計中考慮成本,控制產(chǎn)品的性能價格比達至最優(yōu)。5、技術(shù)開放,資源共享,促進公司整體的技術(shù)提升。1.2.2 硬件工程師基本素質(zhì)與技術(shù)硬件工程師應掌握如下基本技能:1、由需求分析至總體方案、詳細設計的設計創(chuàng)造能力;2、熟練運用設計工具,設計原理圖、EPLD、FPGA 調(diào)試程序的能力;3、運用仿真設備、示波器、邏輯分析儀調(diào)測硬件的能力;4、掌握常用的標準電路的設計能力,如ID 電路、WDT 電路、型濾波電路、高速信號傳輸線的匹配電路等;5、故障定位、解決問題的能力;6、文檔的寫作技能;7、接觸供應商、保守公司機密的技能。2 軟硬件開發(fā)規(guī)范化管理2.1 硬件開發(fā)流程2.1.1 硬件開發(fā)流程文件介紹硬件開發(fā)的規(guī)范化是一項重要內(nèi)容。硬件開發(fā)規(guī)范化管理是在公司的硬件開發(fā)流程及相關(guān)的硬件開發(fā)文檔規(guī)范、PCB 投板流程等文件中規(guī)劃的。硬件開發(fā)流程是指導硬件工程師按規(guī)范化方式進行開發(fā)的準則,規(guī)范了硬件開發(fā)的全過程。硬件開發(fā)流程制定的目的是規(guī)范硬件開發(fā)過程控制,硬件開發(fā)質(zhì)量,確保硬件開發(fā)能按預定目的完成。硬件開發(fā)流程不但規(guī)范化了硬件開發(fā)的全過程,同時也從總體上,規(guī)定了硬件開發(fā)所應完成的任務。做為一名硬件工程師深刻領(lǐng)會硬件開發(fā)流程中各項內(nèi)容,在日常工作中自覺按流程辦事,是非常重要的。所有硬件工程師應把學流程、按流程辦事、發(fā)展完善流程、監(jiān)督流程的執(zhí)行作為自己的一項職責,為公司的管理規(guī)范化做出的貢獻。2.1.2 硬件開發(fā)流程詳解硬件開發(fā)流程對硬件開發(fā)的全過程進行了科學分解,規(guī)范了硬件開發(fā)的五大任務。 硬件需求分析 硬件系統(tǒng)設計 硬件開發(fā)及過程控制 系統(tǒng)聯(lián)調(diào) 文檔歸檔及驗收申請。1. 硬件需求分析項目組接到任務后,首先要做的硬件開發(fā)工作就是要進行硬件需求分析,撰寫硬件需求規(guī)格說明書。硬件需求分析在整個產(chǎn)品開發(fā)過程中是非常重要的一環(huán),硬件工程師更應對這一項內(nèi)容加以重視。一項產(chǎn)品的性能往往是由軟件和硬件共同完成的,哪些是由硬件完成,哪些是由軟件完成,項目組必須在需求時加以細致考慮。硬件需求分析主要有下列內(nèi)容: 系統(tǒng)工程組網(wǎng)及使用說明 基本配置及其互連方法 運行環(huán)境 硬件系統(tǒng)的基本功能和主要性能指標 功能模塊的劃分 關(guān)鍵技術(shù)的攻關(guān) 外購硬件的名稱型號、生產(chǎn)單位、主要技術(shù)指標 主要儀器設備 可靠性、穩(wěn)定性、電磁兼容討論 電源、工藝結(jié)構(gòu)設計 硬件測試方案2.硬件總體設計硬件總體設計的主要任務就是從總體上進一步劃分各單板的功能以及硬件的總體結(jié)構(gòu)描述,規(guī)定各單板間的接口及有關(guān)的技術(shù)指標。硬件總體設計主要有下列內(nèi)容: 系統(tǒng)功能及功能指標 系統(tǒng)總體結(jié)構(gòu)圖及功能劃分 單板命名 系統(tǒng)邏輯框圖 組成系統(tǒng)各功能塊的邏輯框圖,電路結(jié)構(gòu)圖及單板組成 單板邏輯框圖和電路結(jié)構(gòu)圖 關(guān)鍵技術(shù)討論 關(guān)鍵器件從上可見,硬件開發(fā)總體方案把整個系統(tǒng)進一步具體化。硬件開發(fā)總體設計是最重要的環(huán)節(jié)之一??傮w設計不好,可能出現(xiàn)致命的問題,造成的損失有許多是無法挽回的。3. 硬件開發(fā)及過程控制。一個好的產(chǎn)品,特別是大型復雜產(chǎn)品,總體方案進行反復論證是不可缺少的。只有經(jīng)過多次反復論證的方案,才可能成為好方案??傮w審查包括兩部分,一是對有關(guān)文檔的格式,內(nèi)容的科學性,描述的準確性以及詳簡情況進行審查。再就是對總體設計中技術(shù)合理性、可行性等進行審查。如果評審不能通過,項目組必須對自己的方案重新進行修訂。硬件總體設計方案通過后,即可著手關(guān)鍵器件的申購,主要工作由項目組來完成。關(guān)鍵器件落實后,即要進行結(jié)構(gòu)電源設計、單板總體設計。單板總體設計需要項目與CAD 配合完成。單板總體設計過程中,對電路板的布局、走線的速率、線間干擾以及EMI 等的設計應與CAD 室合作。CAD 室可利用相應分析軟件進行輔助分析。單板總體設計完成后,出單板總體設計方案書??傮w設計主要包括下列內(nèi)容: 單板在整機中的的位置:單板功能描述 單板尺寸 單板邏輯圖及各功能模塊說明 單板軟件功能描述 單板軟件功能模塊劃分 接口定義及與相關(guān)板的關(guān)系 重要性能指標、功耗及采用標準 開發(fā)用儀器儀表等每個單板都要有總體設計方案,且要經(jīng)過總體辦和管理辦的聯(lián)系評審。否則要重新設計。只有單板總體方案通過后,才可以進行單板詳細設計。單板詳細設計包括兩大部分: 單板軟件詳細設計 單板硬件詳細設計單板軟、硬件詳細設計,要遵守公司的硬件設計技術(shù)規(guī)范,必須對物料選用,以及成本控制等上加以注意。不同的單板,硬件詳細設計差別很大。但應包括下列部分:單板整體功能的準確描述和模塊的精心劃分。接口的詳細設計。關(guān)鍵元器件的功能描述及評審,元器件的選擇。符合規(guī)范的原理圖及PCB 圖。對PCB 板的測試及調(diào)試計劃。單板詳細設計要撰寫單板詳細設計報告。詳細設計報告必須經(jīng)過審核通過。單板軟件的詳細設計報告由管理辦組織審查,而單板硬件的詳細設計報告,則要由總體辦、管理辦、CAD 室聯(lián)合進行審查,如果審查通過,方可進行PCB 板設計,如果通不過,則返回硬件需求分析處,重新進行整個過程。這樣做的目的在于讓項目組重新審查一下,某個單板詳細設計通不過,是否會引起項目整體設計的改動。如單板詳細設計報告通過,項目組一邊要與計劃處配合準備單板物料申購,一方面進行PCB 板設計。PCB 板設計需要項目組與CAD 室配合進行,PCB 原理圖是由項目組完成的,而PCB 畫板和投板的管理工作都由CAD 室完成。PCB投板有專門的PCB 樣板流程。PCB 板設計完成后,就要進行單板硬件過程調(diào)試,調(diào)試過程中要注意多記錄、總結(jié),勤于整理,寫出單板硬件過程調(diào)試文檔。當單板調(diào)試完成,項目組要把單板放到相應環(huán)境進行單板硬件測試,并撰寫硬件測試文檔。如果PCB 測試不通過,要重新投板,則要由項目組、管理辦、總體辦、CAD 室聯(lián)合決定。4. 系統(tǒng)聯(lián)調(diào)在結(jié)構(gòu)電源,單板軟硬件都已完成開發(fā)后,就可以進行聯(lián)調(diào),撰寫系統(tǒng)聯(lián)調(diào)報告。聯(lián)調(diào)是整機性能提高,穩(wěn)定的重要環(huán)節(jié),認真周到的聯(lián)調(diào)可以發(fā)現(xiàn)各單板以及整體設計的不足,也是驗證設計目的是否達到的唯一方法。因此,聯(lián)調(diào)必須預先撰寫聯(lián)調(diào)計劃,并對整個聯(lián)調(diào)過程進行詳細記錄。只有對各種可能的環(huán)節(jié)驗證到才能保證機器走向市場后工作的可靠性和穩(wěn)定性。聯(lián)調(diào)后,必須經(jīng)總體辦和管理辦,對聯(lián)調(diào)結(jié)果進行評審,看是不是符合設計要求。如果不符合設計要求將要返回去進行優(yōu)化設計。如果聯(lián)調(diào)通過,項目要進行文件歸檔,把應該歸檔的文件準備好,經(jīng)總體辦、管理辦評審,如果通過,才可進行驗收。總之,硬件開發(fā)流程是硬件工程師規(guī)范日常開發(fā)工作的重要依據(jù),全體硬件工程師必須認真學習。2.2 硬件開發(fā)文檔規(guī)范2.2.1 硬件開發(fā)文檔規(guī)范文件介紹為規(guī)范硬件開發(fā)過程中文檔的編寫,明確文檔的格式和內(nèi)容,規(guī)定硬件開發(fā)過程中所需文檔清單,與硬件開發(fā)流程對應制定了硬件開發(fā)文檔編制規(guī)范。開發(fā)人員在寫文檔時往往會漏掉一些該寫的內(nèi)容,編制規(guī)范在開發(fā)人員寫文檔時也有一定的提示作用。規(guī)范中共列出以下文檔的規(guī)范: 硬件需求說明書 硬件總體設計報告 單板總體設計方案 單板硬件詳細設計 單板軟件詳細設計 單板硬件過程調(diào)試文檔 單板軟件過程調(diào)試文檔 單板系統(tǒng)聯(lián)調(diào)報告 單板硬件測試文檔 硬件信息庫這些規(guī)范的具體內(nèi)容可在HUAWEI 服務器中資料庫中找到,對應每個文檔規(guī)范都有相應的模板可供開發(fā)人員在寫文檔時“填空”使用。2.2.2 硬件開發(fā)文檔編制規(guī)范詳解1、硬件需求說明書硬件需求說明書是描寫硬件開發(fā)目標,基本功能、基本配置,主要性能指標、 運行環(huán)境,約束條件以及開發(fā)經(jīng)費和進度等要求,它的要求依據(jù)是產(chǎn)品規(guī)格說明書和系統(tǒng)需求說明書。它是硬件總體設計和制訂硬件開發(fā)計劃的依據(jù),具體編寫的內(nèi)容有:硬件整體系統(tǒng)的基本功能和主要性能指標、硬件分系統(tǒng)的基本功能和主要性能指標以及功能模塊的劃分等。2、硬件總體設計報告硬件總體設計報告是根據(jù)需求說明書的要求進行總體設計后出的報告,它是硬件詳細設計的依據(jù)。編寫硬件總體設計報告應包含以下內(nèi)容:系統(tǒng)總體結(jié)構(gòu)及功能劃分,系統(tǒng)邏輯框圖、組成系統(tǒng)各功能模塊的邏輯框圖,電路結(jié)構(gòu)圖及單板組成,單板邏輯框圖和電路結(jié)構(gòu)圖,以及可靠性、安全性、電磁兼容性討論和硬件測試方案等。3、單板總體設計方案在單板的總體設計方案定下來之后應出這份文檔,單板總體設計方案應包含單板版本號,單板在整機中的位置、開發(fā)目的及主要功能,單板功能描述、單板邏輯框圖及各功能模塊說明,單板軟件功能描述及功能模塊劃分、接口簡單定義與相關(guān)板的關(guān)系,主要性能指標、功耗和采用標準。4、單板硬件詳細設計在單板硬件進入到詳細設計階段,應提交單板硬件詳細設計報告。在單板硬件詳細設計中應著重體現(xiàn):單板邏輯框圖及各功能模塊詳細說明,各功能模塊實現(xiàn)方式、地址分配、控制方式、接口方式、存貯器空間、中斷方式、接口管腳信號詳細定義、時序說明、性能指標、指示燈說明、外接線定義、可編程器件圖、功能模塊說明、原理圖、詳細物料清單以及單板測試、調(diào)試計劃。有時候一塊單板的硬件和軟件分別由兩個開發(fā)人員開發(fā),因此這時候單板硬件詳細設計便為軟件設計者提供了一個詳細的指導,因此單板硬件詳細設計報告至關(guān)重要。尤其是地址分配、控制方式、接口方式、中斷方式是編制單板軟件的基礎(chǔ),一定要詳細寫出。5、單板軟件詳細設計在單板軟件設計完成后應相應完成單板軟件詳細設計報告,在報告中應列出完成單板軟件的編程語言,編譯器的調(diào)試環(huán)境,硬件描述與功能要求及數(shù)據(jù)結(jié)構(gòu)等。要特別強調(diào)的是:要詳細列出詳細的設計細節(jié),其中包括中斷、主程序、子程序的功能、入口參數(shù)、出口參數(shù)、局部變量、函數(shù)調(diào)用和流程圖。在有關(guān)通訊協(xié)議的描述中,應說明物理層,鏈路層通訊協(xié)議和高層通訊協(xié)議由哪些文檔定義。6、單板硬件過程調(diào)試文檔開發(fā)過程中,每次所投PCB 板,工程師應提交一份過程文檔,以便管理階層了解進度,進行考評,另外也給其他相關(guān)工程師留下一份有參考價值的技術(shù)文檔。每次所投PCB 板時應制作此文檔。這份文檔應包括以下內(nèi)容:單板硬件功能模塊劃分,單板硬件各模塊調(diào)試進度,調(diào)試中出現(xiàn)的問題及解決方法,原始數(shù)據(jù)記錄、系統(tǒng)方案修改說明、單板方案修改說明、器件改換說明、原理圖、PCB 圖修改說明、可編程器件修改說明、調(diào)試工作階段總結(jié)、調(diào)試進展說明、下階段調(diào)試計劃以及測試方案的修改。7、單板軟件過程調(diào)試文檔每月收集一次單板軟件過程調(diào)試文檔,或調(diào)試完畢(指不滿一月)收集,盡可能清楚,完整列出軟件調(diào)試修改過程。單板軟件過程調(diào)試文檔應當包括以下內(nèi)容:單板軟件功能模塊劃分及各功能模塊調(diào)試進度、單板軟件調(diào)試出現(xiàn)問題及解決、下階段的調(diào)試計劃、測試方案修改。8、單板系統(tǒng)聯(lián)調(diào)報告在項目進入單板系統(tǒng)聯(lián)調(diào)階段,應出單板系統(tǒng)聯(lián)調(diào)報告。單板系統(tǒng)聯(lián)調(diào)報告包括這些內(nèi)容:系統(tǒng)功能模塊劃分、系統(tǒng)功能模塊調(diào)試進展、系統(tǒng)接口信號的測試原始記錄及分析、系統(tǒng)聯(lián)調(diào)中出現(xiàn)問題及解決、調(diào)試技巧集錦、整機性能評估等。9、單板硬件測試文檔在單板調(diào)試完之后,申請內(nèi)部驗收之前,應先進行自測以確保每個功能都能實現(xiàn),每項指標都能滿足。自測完畢應出單板硬件測試文檔,單板硬件測試文檔包括以下內(nèi)容:單板功能模塊劃分、各功能模塊設計輸入輸出信號及性能參數(shù)、各功能模塊測試點確定、各測試參考點實測原始記錄及分析、板內(nèi)高速信號線測試原始記錄及分析、系統(tǒng)I/O 口信號線測試原始記錄及分析,整板性能測試結(jié)果分析。10、硬件信息庫為了共享技術(shù)資料,我們希望建立一個共享資料庫,每一塊單板都希望將的最有價值最有特色的資料歸入此庫。硬件信息庫包括以下內(nèi)容:典型應用電路、特色電路、特色芯片技術(shù)介紹、特色芯片的使用說明、驅(qū)動程序的流程圖、源程序、相關(guān)硬件電路說明、PCB 布板注意事項、單板調(diào)試中出現(xiàn)的典型及解決、軟硬件設計及調(diào)試技巧。2.3 與硬件開發(fā)相關(guān)的流程文件介紹與硬件開發(fā)相關(guān)的流程主要有下列幾個: 項目立項流程 項目實施管理流程 軟件開發(fā)流程 系統(tǒng)測試工作流程 中試接口流程 內(nèi)部接收流程2.3.1 項目立項流程:是為了加強立項管理及立項的科學性而制定的。其中包括立項的論證、審核分析,以期做到合理進行開發(fā),合理進行資源分配,并對該立項前的預研過程進行規(guī)范和管理。立項時,對硬件的開發(fā)方案的審查是重要內(nèi)容。2.3.2 項目實施管理流程:主要定義和說明項目在立項后進行項目系統(tǒng)分析和總體設計以及軟硬件開發(fā)和內(nèi)部驗收等的過程和接口,并指出了開發(fā)過程中需形成的各種文檔。該流程包含著硬件開關(guān)、軟件開發(fā)、結(jié)構(gòu)和電源開發(fā)、物料申購并各分流程。2.3.3 軟件開發(fā)流程:與硬件開發(fā)流程相對應的是軟件開發(fā)流程,軟件開發(fā)流程是對大型系統(tǒng)軟件開發(fā)規(guī)范化管理文件,流程目的在對軟件開發(fā)實施有效的計劃和管理,從而進一步提高軟件開發(fā)的工程化、系統(tǒng)化水平,提高XXXX 公司軟件產(chǎn)品質(zhì)量和文檔管理水平,以保證軟件開發(fā)的規(guī)范性和繼承性。軟件開發(fā)與硬件結(jié)構(gòu)密切聯(lián)系在一起的。一個系統(tǒng)軟件和硬件是相互關(guān)聯(lián)著的。2.3.4 系統(tǒng)測試工作流程:該流程規(guī)定了在開發(fā)過程中系統(tǒng)測試過程,描述了系統(tǒng)測試所要執(zhí)行的功能,輸入、輸出的文件以及有關(guān)的檢查評審點。它規(guī)范了系統(tǒng)測試工作的行為,以提高系統(tǒng)測試的可控性,從而為系統(tǒng)質(zhì)量保證提供一個重要手段。項目立項完成,成立項目組的同時要成立對應的測試項目組。在整個開發(fā)過程中,測試可分為三個階段,單元測試、集成測試、系統(tǒng)測試。測試的主要對象為軟件系統(tǒng)。2.3.5 內(nèi)部驗收流程制定的目的是加強內(nèi)部驗收的規(guī)范化管理,加強設計驗證的控制,確保產(chǎn)品開發(fā)盡快進入中試和生產(chǎn)并順利推向市場。項目完成開發(fā)工作和文檔及相關(guān)技術(shù)資料后,首先準備測試環(huán)境,進行自測,并向總體辦遞交系統(tǒng)測試報告及項目驗收申請表,總體辦審核同意項目驗收申請后,要求項目組確定測試項目,并編寫測試項目手冊。測試項目手冊要通過總體辦組織的評審,然后才組成專家進行驗收。由上可見,硬件開發(fā)過程中,必須提前準備好文檔及各種技術(shù)資料,同時在產(chǎn)品設計時就必須考慮到測試。3 附錄一. 硬件設計流程圖:4 附錄二. 軟件設計流程圖:5 附錄三. 編程規(guī)范單板軟件編程規(guī)范目的:為了開發(fā)人員之間更好地進行交流,提高代碼的可讀性,可維護性,特制訂本規(guī)范,作為程序編寫的指導文件。本規(guī)范只涉及到源碼書寫的格式,希望能有較統(tǒng)一的編程風格。將來若有和公司相關(guān)規(guī)定沖突的地方,本規(guī)范有可能作適當修改。1。模塊描述模塊是為了實現(xiàn)某一功能的函數(shù)的集合,文件名使用缺省的后綴,在每一模塊的開頭應有如下的描述體:/* PROJECT CODE:項目代號或名稱* CREATE DATE :創(chuàng)建日期* CREATED BY:創(chuàng)建人* FUNCTION:模塊功能* MODIFY DATE:修改日期* DOCUMENT:參考文檔* OTHERS:程序員認為應做特別說明的部分,如特別的編譯開關(guān)*/不同的修改人應在修改的地方加上適當?shù)淖⑨專ㄐ薷娜说男彰?。另外,如有必要,要注明模塊的工作平臺,如單板OS、DOS、WINDOWS等。注明適用的編譯器和編譯模式。2。函數(shù)描述函數(shù)是組成模塊的單元,一般用來完成某一算法或控制等。在每一函數(shù)的開頭應有如下的描述體:/* FUNCTION NAME:函數(shù)名稱* CREATE DATE :創(chuàng)建日期* CREATED BY :創(chuàng)建人* FUNCTION :函數(shù)功能* MODIFY DATE :修改日期* INPUT :輸入?yún)?shù)類型(逐個說明)* OUTPUT :輸出參數(shù)類型(逐個說明) * RETURN :返回信息*/可選的描述有:* RECEIVED MESSAGES:收到的消息* SENT MESSAGES :發(fā)送的消息* DATABASE ACCESS :存取的數(shù)據(jù)庫* CALLED BY :該函數(shù)的調(diào)用者* PROCEDURES CALLED:調(diào)用的過程 * RECEVED PRIMITIVES : 收到的原語* SENT PRIMITIVES : 發(fā)送的原語及其它程序員認為應有的描述。標題可以只大寫第一個字母。例如:Function Name:3。命名規(guī)則:A) 函數(shù): 函數(shù)名應能體現(xiàn)該函數(shù)完成的功能,關(guān)鍵部分應采用完整的單詞,輔助部分若太長可采用縮寫,縮寫應符合英文的規(guī)范。每個單詞的第一個字母大寫。如:ShowPoints,CtrlDestBoard,SendResetMsg 等。B) 變量: 變量的命名規(guī)則部分采用匈牙利命名規(guī)則(鼓勵完全使用匈牙利名規(guī)則)。變量的第一個或前兩個字母小寫,表示其數(shù)據(jù)類型,其后每個詞的第一個字母大寫。推薦的類型前綴如下:前綴含義前綴含義a數(shù)組nshort intbBOOLnp短指針byBYTEp指針ccharlLONGcb字節(jié)記數(shù)lp長指針cr顏色參考值s串cx,cy短型(x,y長度的記數(shù))sz以零結(jié)尾的串dwDWORDtm文本fn函數(shù)wWORDhHANDLEx,y短型(x或y的坐標)iintg_全局變量m_類的數(shù)據(jù)成員ucunsigned char 如iCurrentValue,uTransitionCount 等。對于其他復合類型或自定義類型,請用適當?shù)那熬Y來表示。除局部循環(huán)變量外,不鼓勵單個字母的變量名。對于常用的類型定義,盡量使用WORD、BOOL、LPWORD、VOID、FAR、NEAR等慣用寫法,避免使用char、long、void、far、near等小寫格式。不使用_UC、 _UL等XXXX公司以前一些人的習慣寫法。C) 結(jié)構(gòu):結(jié)構(gòu)的定義有兩個名稱,一個是該結(jié)構(gòu)的類型名,一個是變量名。按照C語言的語法,這兩個名稱都是可選的,但二者必有其一。我們要求寫類型名,類型名以tag做前綴。下面是一個例子:struct tagVBXEVENT HCTLhControl;HWNDhWindow;intnID;intnEventIndex;LPCSTRlpEventName;intnNumParams;LPVOIDlpParamList;veMyEvent;tagVBXEVENTveMyEventMAXEVENTTYPE, *lpVBXEvent; 對于程序中常用的結(jié)構(gòu),希望能使用 typedef 定義,格式如下:typedef struct tagMYSTRUCT struct members . TMYSTRUCT,* PTMYSTRUCT,FAR * LPTMYSTRUCT;struct 后的類型名有tag前綴,自定義的結(jié)構(gòu)名稱一律用大寫字母,前面可以加一大寫的T。而結(jié)構(gòu)類型變量定義則可以寫為:TMYSTRUCT variablename;并可在定義 MYSTRUCT_S 同時根據(jù)需要,定義其指針,遠指針和尺寸常量:typedef tagMYSTRUCT struct members TMYSTRUCT,* PTMYSTRUCT,FAR * LPTMYSTRUCT;#define MYSTRUCTSIZE sizeof ( TMYSTRUCT );結(jié)構(gòu)變量的命名,建議采用如下方式:從結(jié)構(gòu)名中,取出二至三個詞的首字母作為代表此結(jié)構(gòu)的縮寫,小寫作為變量前綴。例如:(取自Microsoft Windows示例)struct OPENFILENAME ofnMyFilestrcut CHOOSECOLOR ccScreenColorD) 聯(lián)合:聯(lián)合的命名規(guī)則和結(jié)構(gòu)相似,如:union tagMYEXAMPLE intiInteger;longlLongInt; myExample;typedef tagMYEXAMPLE int iInteger; long lLongInt; MYEXAMPLE,* PMY

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論