2022年软件开发和文档编制程序 .pdf

上传人:Q****o 文档编号:30548780 上传时间:2022-08-06 格式:PDF 页数:32 大小:371.76KB
返回 下载 相关 举报
2022年软件开发和文档编制程序 .pdf_第1页
第1页 / 共32页
2022年软件开发和文档编制程序 .pdf_第2页
第2页 / 共32页
点击查看更多>>
资源描述

《2022年软件开发和文档编制程序 .pdf》由会员分享,可在线阅读,更多相关《2022年软件开发和文档编制程序 .pdf(32页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、l 范围本标准规定了软件产品开发研制过程质量职责及控制要求。本标准适用于本公司研制的计算机各类型软件的管理。2 引用标准 GB8567 88 计算机软件产品开发文件编制指南3 定义不需用。4 职责设计部门负责人批准软件开发项目任务书。技术发展部负责组织对公司下达的软件项目进行各阶段的评审。物流部经理负责组织项目的最终检测。项目负责人负责组织对软件项目的各阶段进行考核、质量控制、组织接口协调文档的发布批准及文档更改审批。项目负责人 (软件负责人 ) 负责: a、制定软件课题开发计划和进度安排及资源需求;b、进行总体设计;c、提供阶段评审资料;d、协调技术接口。标准档案室管理员负责文档的存贮、保管

2、和处理。5 工作程序与要求公司下达的软件项目立项后,由技术发展部下达 新产品研制任务书 。湖南计算机股份有限公司管理标准软件开发和文档编制程序QG/PLA 2002 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 32 页 - - - - - - - - - 软件项目5.2.1 公司立项项目由技术发展部负责组织评审。 a、项目负责人(软件负责人)于评审前3 天填写 评审申请表 ,并备齐评审资料,交技术发展部。 b、技术发展部审批评审申请表,并将有关资料提前3-5 天下发评

3、审组成员以供分工审阅, c、评审组长主持评审会,并填写 评审报告 ;评审结束,技术发展部负责收回评审资料交项目组存档。5.2.2 凡上级下达的项目,若上级部门(或系统组织单位)对评审另有要求时,则按其执行;否则,按条执行。5.2.4 若项目既有软件开发,又有硬件开发,其评审是分开(软件、硬件)还是合并进行,由设计部门负责人决定。软件项目的检测5. 3. 1 项目负责人负责组织完成下述工作。 a、测试阶段的检测; b、软件课题的系统检测; c、软件版本存档前的检测。对以上测试发现的问题,由项目组填写 软件测试修改单 ,经分析原因和采取纠正措施及回归测试后,由项目负责人审批, 方可列入正式版本。5

4、. 3. 2 物流部经理负责组织软件版本存档前的最终检测,并在 版本送检(启用)通知单上签署检测结果。5. 4 设计部门负责人批准软件项目开发计划。设计部门负责人审批各项目负责人资格,并负责: a、考核各阶段的进度完成情况;b、及时协调开发中组织接口及计划修改; c、控制项目开发各阶段的设计输入、设计输出、技术状态和各阶段的验证, 并对软件的正确性、文档的完整性负责。项目负责人 (软件负责人 ) 负责组织: a、制定项目开发计划,若软件、硬件相结合的,其计划也可合并制定。开发计划须明确划分各开发阶段,并可按开发阶段进行自主开发; b、总体设计;名师资料总结 - - -精品资料欢迎下载 - -

5、- - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 32 页 - - - - - - - - - c、提供各阶段文档 (包括评审文档 ),并于鉴定后一周内存入标准档案室; d、组织软件 ( 版本)检测,并对检测结果负责; e、协调技术接口; f、定期填报工作进度, 若进度计划需修改, 应在报表中申述 (进度报表既可按月也可按项目分阶段填报) 。软件的交付管理按 版本启用 / 存档细则 执行。软件版本管理5.8.1 应顾客需要进行软件版本升级或修订时,设计部门负责人确定项目负责人,组织软件人员实施。5.8.2 软件负责人发出

6、版本送检(启用)通知单 升级的版本由物流部组织检测合格后,由软件负责人将新版本存入标准档案室;并在 版本档案 中详细记录升级内容,存入项目档案中。5.8.3 技术人员在为顾客服务的现场,遇到需要版本修订时,应先电告项目负责人, 经认可后,回厂填写 用户服务档案 ,必要时项目负责人应组织评审和检测。文档要求5.9.1 各阶段需具备的基本文档及文档格式(见附录)鉴定需具备的文档参见附录。6 支持文件7 记录质量记录 7.1.1 JL/ 版本启用通知单 7.1.2 JL/ 用户服务档案 7.1.3 JL/ 软件测试修改单以上记录由标准档案室保存三年。工作记录名师资料总结 - - -精品资料欢迎下载

7、- - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 32 页 - - - - - - - - - 7.2.3 版本档案以上记录由标准档案室保存三年。附录附录一:软件产品文件表附录二:版本启用 / 存档实施细则附录三:概要设计说明书附录四:需求说明书附录五:软件开发规范附录六:程序设计若干规定名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 32 页 - - - - - - - - - 附录一:软件

8、产品文件表序号文 件 名 称文件简号产品产品的组成部门成套软件整 件整 件软 件1 任务委托书RW 2 可行性研究报告KY 3 软件需求说明RX 4 数据要求说明书SY 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 32 页 - - - - - - - - - 5 项目开发计划XK 6 概要设计说明书GS 7 详细设计说明书QS 8 数据库设计说明书SG 9 测试计划CJ 10 程序CX 11 测试分析报告CF 12 用户手册YS 13 操作手册CS 14 程序维护手册

9、CW 15 项目开发总结报告XZ 16 使用报告SB 17 产品标准18 媒体内程序 / 数据目录MM 19 成套软件明细表MX 20 整件明细表MX 21 成套运用文件清单YQ 22 整件汇总表ZH 23 鉴定报告JB 24 用户反馈信息YX 25 维护记录文件WJ 26 版本更新通知BT 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 32 页 - - - - - - - - - 注:表示必须编制的文件;表示可根据产品的需要制定。湖南计算机股份有限公司用户服务档案JL

10、/ 出 差 人出差时间出差地点用户名称产品名称版 本 号实际费用(元)使用的系统环境:发现的问题:解决情况:改动的程序模块:用户意见:办事处意见:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 32 页 - - - - - - - - - 处理结果(回厂后经协调或评审结论) :湖南计算机股份有限公司版本档案(工作记录)编号:产品名称版本号版本适用范围源 版 本取代版本号版本源程序压缩文件名代 码 和提 交 人提交时间存档日期配备的输入方法:修改记录:名师资料总结 - -

11、-精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 32 页 - - - - - - - - - 备注:软 件 测 试 修 改 单 JL/ 软件名称测试人日 期测试问题:测试人:日期:原因分析:签字:日期:纠正措施:签字:日期:回归测试:签字:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 32 页 - - - - - - - - - 日期:审批意见:批准人:日期:附录二:版

12、本启用 / 存档实施细则为了规范版本的管理, 减少版本的数量, 文档资料的管理和保存, 文档的及时更新,以及便于电子化的管理和规范工作流程,特制定该实施细则。一、工作流程和任务 :编写修改程序,整理资料内部测试外部测试审核资料审查批准版本发放编号、录入数据库、刻光盘流程/ 任务负责人输入文档输出文档项目组人员所有文档资料发行版本版本启用通知单公司副总工程师档案室资料管理员技术经理品管部项目组其他人员档案室资料管理员档案室资料管理员发行版本源程序版本启用通知单版本启用通知单发行版本版本启用通知单版本启用通知单所有文档资料发行版本版本启用通知单所有文档资料版本启用通知单所有文档资料发行版本版本启用

13、通知单版本启用通知单版本启用通知单版本启用通知单所有文档资料发行版本版本启用通知单数据库资料、光盘发行版本版本启用通知单说明:1.内部测试:进行白盒测试,要求对源程序进行检查,分析出可能影响的模块,并对相应的模块进行测试。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 32 页 - - - - - - - - - 2.外部测试:进行黑盒测试,对整个系统进行测试。3.审核:检查文件的完整性和正确性。4.资料审查:检查文件的完整性和格式的正确性。5.批准:审查该版本是否可以

14、发行。 委派他人对提交的文档进行抽查,验证其正确性和完备性。6.编号、录入数据、刻盘:光盘的卷标为 8 位数字的序列号,在根目录下建立以版本编号为名称的子目录,所有提交的文档资料存放在该子目录中。版 本 启 用 通 知 单 JL/ 名称编号状态配套版本简要描述日期光盘编号提交人版本号被取代的版本编号验证码适用范围编制人测试人资料审查复制要求修改的原因不 能合 并的 原因测试结名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 32 页 - - - - - - - - - 果

15、审 核意见批 准意见名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 32 页 - - - - - - - - - 说明:栏目描述填写人备注名称要求填写产品的全称提交人编号由项目编号 +分模块编号 +序列号构成项目编号由 4 位数字构成, 分模块编号由2 位数字构成,序列号由4 位构成该版本批准后,编写编号档案管理员日期提交的日期提交人版本号提交人资料审查负责检查提交文件的完整性, 并将版本启用单录入计算机档案管理员验证码要求复制时能验证版本正确性的关键数据(代码和、文件

16、长度等)提交人简要描述对该版本的简单描述提交人光盘编号由 8 位数字序列号构成档案管理员提交人负责提交所有的文件主要设计者适应范围描述适用的用户和机器的批次提交人状态作废/ 使用档案管理员编制人编写该程序的人员签名审核意见对提交的文件负责对被取代版本已发行产品的处理意见和该版本的使用时效项目负责人批准意见技术部经理修改原因写明改正了的错误或新增的功能提交人不能合并的原因在原来的版本基础上产生了一个新版本时,但应又不能取代原来版本时,必须说明原因。提交人复制要求说明发行版本的格式,版本载体的类型(介质) ,复制的设备,复制的特殊要求提交人配套版本当一个产品需要几个软件构成,必须主要与该版本配套的

17、版本的编号,或关系用“/ ”隔开,与关系用“,”隔开提交人测试人不能少于两人测试该版本的所有人员的名单,要求签名名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 32 页 - - - - - - - - - 附录三:概 要 设 计 说 明 书概述介绍该项目的名称、任务提出者、提出的背景,应用的目标。功能和性能对照软件需求说明书,来说明系统是如何满足功能和性能需求的。开发工具和平台描述采用何种操作系统平台、何种编程语言、开发工具进行开发。总体结构设计用图表和文字方式说明该系

18、统由几个模块构成,各模块的功能、各模块之间的关系。用数据流图描述出数据在该系统中的流动过程,在各模块输入前和输出后数据的变换。用程序流程图描述出主要功能的实现方式。接口设计外部接口说明该系统同外部所有的接口安排,包括硬件接口、软件接口、用户接口。内部接口说明该系统内部各个模块之间的接口安排。系统数据结构设计逻辑数据结构设计给出该系统内所使用的每个数据项、记录、文件的标识、定义、长度以及他们之间的相互关系。物理数据结构设计给出系统中的数据的存储要求和访问方式、和存储介质。系统出错处理设计出错信息用表格形式列出每种可能的出错或故障情况出现时,系统输出信息的形式、含义及处理方法。补救措施说明故障出现

19、后可能采取的变通措施,如后备技术、 降效技术、 恢复及再启动技术等。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 32 页 - - - - - - - - - 系统维护设计说明为了系统维护方便而在程序内部设计中作出的安排,如在程序中专门安排用于系统的检查与维护的检测点和专用模块。关键的技术和难点描述开发该系统采用的关键技术和难点,对关键技术和难点作出风险评估,要求作出相应的解决对策,或提出其他的解决方案。交付方式交付的内容全部的设计文件、发行版本、源程序交付的媒体介质

20、纸质文件、电子文件、CD 、FLASH 、软盘附录四:需求说明书简介介绍该项目的名称、任务提出者、提出的背景,应用的目标名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 32 页 - - - - - - - - - 详细需求环境需求硬件环境描述运行该软件需要的设备能力处理器的速度、数量和内存容量存储媒体的容量输入、输出设备的种类和数量通讯网络软件环境运行该软件需要的操作系统、数据库软件、以及相应的其他应用软件人员环境操作该软件对人员的要求,人员的素质、数量功能需求对系统中

21、每一个功能,要求用图示或文字详细描述:概述叙述功能名称、目标和作用输入详述该功能输入的信息处理描述该功能作什么,如何对输入信息进行加工并转换成输出信息输出详述该功能输出的信息内部生成数据列出用户所关心的内部生成数据性能需求定量的描述该软件系统应满足的具体性能需求精度说明该软件系统的精度要求,如:数据的精度要求数字计算的精度要求数据转送的误码率要求时间特性说明该软件系统的时间要求,如:解题时间询问和更新数据文件的响应时间系统各项功能的顺序关系由于输入类型的不同和操作方式的变化而引起的优先顺序名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - -

22、- - 名师精心整理 - - - - - - - 第 16 页,共 32 页 - - - - - - - - - 在峰值负载期,与所规定的响应时间的允许偏离范围灵活性说明当需求发生某些变化时该软件系统的适应能力,指出为适应这些变化而需要设计的软件成分和过程输入和输出描述输入和输出的每个数据元素,对每个数据元素可列出如下信息:数据元素名同义名定义格式值域度量单位数据项名、缩写词和代码对于输入数据, 还要说明时间要求、优先顺序和输入媒体。对于输出数据,亦要说明时间要求、 优先顺序和输出形式,并要描述对特殊输入输出项的保密要求和措施。数据库特性详细描述数据库中要用到的每个数据元素,对每个数据元素可列

23、出如下信息:数据元素名同义名定义格式值域度量单位数据项名、缩写词和代码要根据记录的规模和数量来估计数据存储要求,并要预测数据的增长率。故障处理列出在该系统出现故障时,为满足信息处理要求而可能采取的技术措施,如:后备技术低效技术再启动技术名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 32 页 - - - - - - - - - 接口说明该软件系统与其他系统和子系统的接口软件接口和硬件接口安全和保密说明该软件系统在安全和保密方面的要求交付方式交付的内容全部的设计文件、发行

24、版本、源程序交付的媒体介质纸质文件、电子文件、CD 、FLASH 、软盘附录五:软件开发规 范软件开发的流程和需要的文档资料同项目开发类似,在第章中有详细的描述,在这不再作介绍了, 仅介绍与软件紧密相关的常用文档资料的格式模板,以及编程设计中的若干规定名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 18 页,共 32 页 - - - - - - - - - 常用文档的格式模板流程图概述国家标准GB1526-89信息处理数据流程图、程序流程图、系统流程图、程序网络图和系统资源图的文件编

25、制符号及约定规定了信息处理文件使用的各种符号及其使用的具体约定。要求采用 VISIO 或 SMARTDRAW软件绘制流程图。流程图所用符号及其简要说明符号符号名简要说明备注数据表示数据, 其中可注明数据名、来源、用途或其他的文字说明。此符号并不限定数据的媒体处理表示各种处理功能。符号内可注明处理名或其简要功能既定处理表示已命名的既定处理。该处理为在另外地方已得到详细说明的一个操作或一组操作。例如子程序、 函数、模块。 符号内可注明处理名或其简要功能准备表示修改一条指令或一组指令以影响随后的活动。例如:设置开关、修改变址寄存器、初始化例行程序判断表示判断或开关。 符号内可注明判断的条件,它只有一

26、个入口,但可以有若干可以选择的出口。在对符号内的条件求值后,有一个且只有一个出口被激活。求值结果可在表示出口路径的流线附近写出并行处理表示同步进行两个或两个以上并行方式的操作。循环界限循环界限由上界限和下界限构成,分别表示循环的开始和结束。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 19 页,共 32 页 - - - - - - - - - 流线表示控制流的流向虚线用于表明被注解的范围或连接被注解部分与注解正文连接符用于表明转向流程图的它处,或从它处转入。 它是流线的断点。在圆内

27、注明某一标志符,表明该流线将在具有相同标志符的另一连接符处继续下去。端点符程序流程的起点或结束注解符表示注解的内容,虚线须连接到被注解的符号或符号组合上。省略符若流程图中有些部分无需给出符号的具体形式和数量,可用省略符。省略符应夹在流线符号之中。使用约定图的布局流程图所用的符号应该均匀分布,连线保持合理的长度,并尽量少使用长线。符号标志符这是赋予某个符号的标志符,其作用是便于其他文件中引用该符号。符号标志符要写在符号的左上角。符号描述符它用于交叉引用, 表达一个符号的特殊用途,或者进一步理解某个符号的功能。描述符要写在符号的右上角。名师资料总结 - - -精品资料欢迎下载 - - - - -

28、- - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 20 页,共 32 页 - - - - - - - - - 连接的约定标准流向从左至右,自上而下箭头的使用可随时在流线上使用箭头指示方向,当流程不是标准流向时,一定要采用箭头来指示方向。流线的交叉应当尽量避免流线的交叉,即使出现, 交叉的流线之间没有任何逻辑关系,不对流向产生影响。流线的汇集两根或更多的进入线可以汇集为一根输出线,各连接点应相互错开以提高清晰度,并在必要时使用箭头表示流向。互连一般情况下, 流线应从符号的左边或顶端进入,从右边或底端离开。它们都应对准符号的中心。多出口一个符号如有多

29、个出口,应按下述方式表示,在每个出口都应标有适当的条件值,以反映它所表示的逻辑路径。数据结构结构名称描述名称定义描述使用特点条件值Case 1Case 2Case 3比较A 、BA=BABAB名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 21 页,共 32 页 - - - - - - - - - 数据字典数据字典和数据结构图可形成交互参照关系名称定义描述使用特点项目计划表要求采用PROJECT 软件制作,大致格式如下:项目名称标识号任务工期开始时间完成时间提交件负责人拟制:校对:审

30、核:批准:第页名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 22 页,共 32 页 - - - - - - - - - 函数 / 过程接口函数名 :必须与源程序中的一致,包括大小写功能 :简要说明该函数/ 过程实现的功能,以及主要的算法,对重要的函数 / 过程可采用伪语言进行描述入口参数 :对入口参数作简要的说明,利用全局变量,则也要说明出口参数 :对出口参数作简要的说明,改变了全局变量,则也要说明返回值 :对函数的返回值说明其类型和作用程序设计的若干规定这里例举了C语言和汇编语言

31、的规定,其他编程语言应参照这些规定编写C语言见附录六汇编语言见附录六附录六:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 23 页,共 32 页 - - - - - - - - - 程 序 设 计 若 干 规 定引言本文档描述了项目开发中的编程标准,其目的是提供一个编程的严格规则,使得程序有统一的风格,以便于理解和维护,项目主要由C语言和汇编语言编写. C语言产生新代码图D-1描述了产生 C语言新代码的格式,在写新代码之前, 程序员必需首先将拷贝到新文件中,然后编辑新文件以提供下列

32、信息. 目的提供一个关于程序的简要描述. 版本状态给出当日的日期,程序员姓名,创建或修改. 输入列出及描述所有该程序将输入的变量,描述应简要而完全,有必要要描述一个组中不同的元素,或者一个词的字节或位,如果没有输入变量, 则键入 none. 输出列出及描述所有该函数的输出变量,同时描述副作用,如果有的话. 限制简要说明程序的限制,例如数组长度,算法等等,同时给出对未来版本的建议,如果没有限制,给出“none”错误信息描述出错信息或在出错时变量的置值,如果没有的话给出“none”. 方法简单描述程序中所有调用的算法及方法,如果方法很明显,则删去这一项,如果应用了复杂的算法或方程式,请给出解释及参

33、考. 外部变量描述仅列出及描述那些一般不为人所知的变量,如果该函数不用任何外部变量,给出“none”. 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 24 页,共 32 页 - - - - - - - - - 局部、静态、寄存器变量描述列出及描述局部,静态寄存器变量,如果一个变量的用途可从其它变量名中明显地看到,则不必给出解释,变量名按字典顺序列出. /* * 本程序属于XXXXXXXXX( 公司名 ). 作为商品机密* * 版权所有 , 未经许可不得公布或使用. * . 目的 -

34、 函数的功能描述. 版本状态 - 11-7-90(程序员姓名 ) 新代码. 输入 - 列出所有输入变量和解释. 输出 - 列出所有输出变量参数返回值及解释. 限制 - 给出使用的算法和处理方法. 错误信息 - 描述错误信息. 方法 - 该函数中用的算法和处理方法. 函数调用 - 列出调用的函数. 外部变量 - 描述所有使用的外部变量. 局部变量 - 描述局部变量. */ 图 D-1 C 标准格式 (in “” ) 改旧代码在函数头上的所有必要的信息必须修改, 版本状态必须包含版本日期, 程序员姓名 , 以及版本的简要描述, 这种描述必须规格化, 而且要包含足够的信息, 以便于对这些修改进行回溯

35、. 版本状态列出的顺序必须使得最新的版本列在最上边. 所有其它的信息包括输入、输出、限制、以及函数调用等等, 必须与最新的版本保持一致. 编程常规下面说明了 C语言指令中的标准结构: 程序设计风格?通过空格和空行, 使程序有层次感, 便于阅读 . ?提倡使用 C+ 的语法和程序结构. ?所有代码必须是小写字符, 以下的例外 : 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 25 页,共 32 页 - - - - - - - - - 1 。常量或宏 ( 用#define 或 #typ

36、edef 在 include 文件中定义的 ) 必须用大写字母 . 2。在编译或连接器中要求大写的标识符或库函数名. 3。该文本中说明的其它必须大写的字母. ?代码尽可能写得简单、清晰、将复杂语句切成几个简单的语句以增加可读性. ?一般将子程序限制在100行以内 . ?对于一个程序只允许一个入口和出口(在有出错处理等情况下可能允许有若干个出口) . ?设计的子程序必须有一个完整定义的输出、输入并且完成一个任务. ?将密切相关的子程序存放在一个文件中. ?程序中尽量不使用直接数, 即尽量不在源程序中出现某个具体的数值, 相应的数值最好用 #define 语句定义成宏 , 以便于修改和维护. ?使

37、用统一的工作环境, 建立子目录 , 各目录存放指定的内容: src (源程序存放目录) doc (文档存放目录 ) bin (可执行程序存放目录) lib (库函数存放目录) test (测试用目录 ) inc (引用文件存放目录) personal (各人自用目录 ) ?使用 make, Makefile进行编译 , 更新目标文件和可执行文件. C 库函数?仅使用 Unix System V 、Microsoft C、Lattic C及 Turbo C 编译器中的库函数. ?在用 malloc或calloc申请空间之后 , 建议测试一下不为空指针,若使用空指针,通常会导致系统的崩溃,或莫名其

38、妙的错误。?在用 malloc或calloc申请空间之后, 必须牢记在不需要它们的时候调用free 释放空间以便于将来使用空间. 类型说明?类型说明的顺序是由短到长: char short long float double ?尽量不使用 int, 用short 或long 取代 , 以免不同硬件环境的影响. ?仅仅使用中用 typedef 定义的宏以便共享. 变量名变量名的长度没有限制. 但各个变量的前31个字符必须唯一.( 各系统的状态会有变化,尽可能在开始时区分变量名). 建议用英文语句的一般风格命名变量名, 英文单词的首字母大写,后面的字母小写。对于外部( 公共 ) 变量或函数名, 在

39、第一个字符之前加_, 对局部的变量名 , 建议遵照下列格式: 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 26 页,共 32 页 - - - - - - - - - bxxx_ 或 xxxx_b 字节变量 cxxx_或 xxxx_c 字符变量 ixxx_或 xxxx_i 数变量 sxxx_或 xxxx_s 字变量 lxxx_或 xxxx_l 长变量 fxxx_或 xxxx_f 浮点变量 dxxx_ 或 xxxx_d 精变量 fpxxx 或 xxxx_fp 文件指针 xpxxx 或

40、 xxxx_xp 指针变量 ( 例:ipxxxx 或 xxxx_ip) 注意:变量名不应该和当前系统采用的编译器,以及与已知的其他编译器中已定义的函数名或 C的库函数相同,也不应与同C的关键字相同。比如:class 不是 C编译器的关键字,但是 C+ 的关键字,在用C编译器开发的系统中,不能采用class 作为变量名,否则将影响移植性。寄存器变量在程序中找一个频繁使用的变量(int或指针类型 ), 将其定义成寄存器类以加快运行速度,特别适用于循环变量中。外部变量?外部变量必须在函数中以extern 语句说明 . ?如果外部变量是数组, 在外部说明中, 第一维必须为空. ?如果不同类型的变量要组

41、在一起, 用结构取代数组. ?将外部变量说明成static类, 如果它们在一个文件中共享而不被其它文件访问. 常量?对公共使用的常量, 引用中定义的宏. for 循环对于数组的处理, 循环的结束用 取代 =. 例: int a9; for (i=0;i z=(y+3)/3=y/3=1 2、char *buf; long *plong; plong=(long *)buf+2; (1) plong=(long *)(buf+2); (2) 如果 buf=0; 则在 (1) 中 plong=8,(2)中 plong=2; 注释?在需要明确程序含义的地方应勤于使用注释, 所有注释写成 :/*. .*

42、/或 ._ .*/ statement /*._ .*/ 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 28 页,共 32 页 - - - - - - - - - ?如果注释太长 , 超出一行 , 应将其按如下格式放在语句之前: /*. . . .*/ ?如果变量需要注释, 它们必须一行行地进行说明, 例如 : int i; /*. .*/ 汇编语言产生新模块代码图D-2描述了产生汇编语言新模块代码的格式, 在写新代码之前, 程序员必需首先将拷贝到新文件中 . 然后编辑新文件以提供

43、下列信息. 目的提供一个关于程序模块的简要描述. 版本状态给出当日的日期, 程序员姓名,版本号。COMMENT % * * 本程序属于XXXXXXXXX( 公司名 ). 作为商品机密 * * 版权所有 , 未经许可不得公布或使用. * * . 目的 - 模块的功能描述. 版本状态 - 11-7-90(程序员姓名 ) 新代码图 D-2 ASM 标准格式 (in “” ) 产生新的子过程代码图D-3描述了产生汇编语言新的子过程代码的格式, 在写新子过程代码之前, 程序员必需首先将拷贝到新子过程前. 然后编辑新文件以提供下列信息. 子过程名称给出子过程的名称功能描述用语言或伪 C代码提供一个关于该子

44、过程的简要描述, 并且简要说明子过程的限制。版本状态和历史给出当日的日期, 程序员姓名 . 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 29 页,共 32 页 - - - - - - - - - 入口参数列出及描述所有该子过程将输入的变量和寄存器,描述应简要而完全, 有必要描述一个组中不同的元素, 或者一个词的字节或位. 如果没有输入变量, 则键入“ none”. 出口参数列出及描述所有该子过程的输出变量和寄存器, 同时描述对全局变量的影响和被破坏的寄存器 , 如果有的话 . 同

45、时还要描述出错信息或在出错时变量的值, 如果没有的话给出“none”. 默认的段寄存器和段名用ASSUME 指出在该子过程中,默认的段寄存器和段名的关系。COMMENT . 子过程名称 - 给出子过程的名称. 功能描述 - 提供一个关于子过程的简要描述,并且简要说明子过程的限制. . 版本状态和历史- 给出当日的日期, 程序员姓名 . . 入口参数 - 列出及描述所有该子过程将输入的变量和寄存器. . 出口参数 - 列出及描述所有该子过程的输出变量和寄存器, 并列出被破坏的寄存器. . 默认的段寄存器和段名- 用 ASSUME 指出在该子过程中,默认的段寄存器和段名的关系。% 图 D-3 标准

46、格式 (in “” ) 修改旧代码在过程头上的所有必要的信息必须修改, 版本状态必须包含版本日期, 程序员姓名 , 以及版本的简要描述, 这种描述必须规格化, 而且要包含足够的信息, 以便于对这些修改进行回溯. 版本状态列出的顺序必须使得最新的版本列在最上边. 所有其它的信息包括输入、输出、限制、以及过程调用等等, 必须与最新的版本保持一致. 编程常规下面说明了汇编语言指令中的标准结构: 程序设计风格?应该遵照 MIRCOSOFT MASM 和TURBO ASMBLE 的语言规范。建议不用简写方式. ?在同一子过程中所有代码必须是统一的小写字符和大写字母, 以下的例外 : (1) 宏必须用大写

47、字母. (2) 在编译或连接器中要求大写的标识符或库函数名. (3) 该文本中说明的其它必须大写的字母. 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 30 页,共 32 页 - - - - - - - - - ?对于一个程序只允许一个入口和出口(在有出错处理等情况下可能允许有若干个出口) . ?设计的子程序必须有一个完整定义的输出、输入并且完成一个任务. ?将密切相关的子程序存放在一个文件中. ?程序中尽量不使用直接数, 即尽量不在源程序中出现某个具体的数值, 相应的数值最好用

48、EQU 语句定义成宏, 以便于修改和维护. ?使用统一的工作环境, 建立子目录 , 各目录存放指定的内容: src (源程序存放目录) doc (文档存放目录 ) bin (可执行程序存放目录) lib (库函数存放目录) test (测试用目录 ) inc (引用文件存放目录) personal (各人自用目录) ?使用统一的程序名后缀: .ASM (汇编源程序 ) .INC (公共的宏定义和结构定义) .DOC (文档 ) .LIB (函数库 ) .BAT (批处理文件 ) .DAT (数据文件 ) .ROM (烧入 EPROM的数据,在前缀中应该指明芯片对应的插座) ?使用 make,

49、Makefile 进行编译 , 更新目标文件和可执行文件. 子过程名子过程名的长度没有限制. 但各个名称的前31个字符必须唯一.( 各系统的状态会有变化, 尽可能在开始时加以区分). 建议用英文语句的一般风格命名过程名. 英文单词的首字母大写,后面的字母小写。对于外部( 公共 ) 子过程名 , 在第一个字符之前加_. 变量名变量名的长度没有限制. 但各个变量的前31个字符必须唯一.( 各系统的状态会有变化, 尽可能在开始时加以区分). 建议用英文语句的一般风格命名变量名. 英文单词的首字母大写,后面的字母小写。对于外部( 公共 ) 变量或函数名 , 在第一个字符之前加_, 对局部的变量名 ,

50、建议遵照下列格式: bxxx_ 或 xxxx_b 字节变量 wxxx_ 或 xxxx_w 字变量 dxxx_ 或 xxxx_d 双字变量 sbxxx 或 xxxx_sb 字节串变量 swxxx 或 xxxx_sw 字串变量 cxxx_ 或 xxxx_c 常量外部变量?外部变量必须在模块中以extrn 语句说明 . 所有的外部变量集中在一起放在文件的开始处 . 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 31 页,共 32 页 - - - - - - - - - ?如果不同类型的变

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁