软件设计编码规范

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

软件设计编码规范

The Standardization Office was revised on the afternoon of December 13, 2020

质量管理体系过程文件

软件设计编码过程

文件版本信息:

目录

1.目的

设计编码的目的在于设计和实现关于需求的解决方案。保证《需求规格说明书》中的各项要求在设计时都能够得到满足;对项目的编码实现进行质量控制,保证编码实现活动按计划顺利完成并与设计相一致。

2.范围

适用于公司的各类软件项目的系统设计编码过程。

3.术语

4.角色与职责

角色/部门职责

项目经理组织和参与设计评审,批准设计结果

协调项目组内各角色之间的协同合作关系

设计人员进行系统整体架构的分析和设计;

编写《概要设计说明书》;

参与详细设计的评审

开发人员进行详细设计,编写《详细设计说明书》;

编写代码并进行单元测试,执行代码走查

5.入口准则

《需求规格说明书》已通过评审。

6.输入

《需求规格说明书》

7.流程图

图1:系统设计编码过程

8.主要活动

系统设计编码过程包括系统设计、系统实现。系统设计是指设计软件系统的体系结构、数据库、模块等,在需求和代码之间建立桥梁,一般分概要设计和详细

设计两个阶段;系统实现是指开发人员按照系统设计去编码开发,并进行单元测试、代码走查;在设计编码过程中同时进行用户文档的编制。

8.1.概要设计

概要设计是分析各种设计方案和定义软件体系结构的过程。设计人员在充分了解需求的基础上,依据《需求规格说明书》选用适当的设计方法,分析与设计软件的结构、模块功能。通过系统分解,确定子系统的功能和子系统之间的关系,以及模块的功能和模块之间的关系,编写《概要设计说明书》。《概要设计说明书》必须经过技术评审。

8.1.1.解决方案选择

系统设计时可能会涉及到多种解决方案的选择,如:

系统实现路线;

采用的工具和技术;

产品架构;

设计模式;

模块的制作、购买或重用等。

当出现多种候选方案,难以通过简单的方法判断出方案的优劣时,应按照

《S_DAR00_决策分析和决定过程》进行决策。

8.1.2.概要设计

概要设计是建立整个软件的体系结构,包括子系统、模块以及相关层次的说明、每一模块的接口定义等。概要设计的主要步骤有:

选择设计方法;

识别解决方案的主要组件:根据解决方案的技术架构和分析方法(面向对

象、面向结构),相应确定解决方案的组件模块;

对候选技术和工具、组件进行评估,确定是进行开发、购买还是复用已有

技术(工具或者组件)。评估开发、购买或复用方案时需要考虑的事项包

括:业务方面:可行性、产品成本、经验、投资回报、成熟度及其他因

素;企业体系结构方面:解决方案必须与当前状态和远景状态计划的约束

相适应。包括与企业现有系统的集成等;技术方面:安全、组件模块交互

标准、数据访问、数据存储、系统服务、开发工具、操作系统等。

识别解决方案主要组件的重要属性和关键关系:在前一任务的基础上,对

解决方案主要组件的重要属性和关键关系进行识别;

进行数据库设计,建立数据库的逻辑模型和物理模型;

进行用户界面设计,确定整个系统的界面框架以及界面风格;

形成《概要设计说明书》。

8.1.3.概要设计评审

概要设计的结果应进行技术评审。技术评审由设计人员提出,由项目经理组织召开。技术评审会议应邀请需求分析师、公司的技术专家、开发人员、测试人员等参加。

关于技术评审会议的要求详见《评审过程》。

8.2.详细设计

详细设计可以和概要设计并行进行,但应考虑并行设计不会因概要设计而导致较大的详细设计返工。

8.2.1.详细设计

详细设计是从开发需求的角度描述解决方案的组件、服务和技术的过程。详细设计定义了解决方案的各个组成部分,以及这些组成部分的开发方法和交互方式。详细设计的步骤包括:

选择用于开发解决方案的技术并完善设计模型:在概要设计的基础上,选

择开发解决方案采用的技术,并且完善对应的设计模型。

确定分发和打包策略:分发和打包策略决定了最终各模块功能服务在解决

方案体系结构中的位置以及模块功能服务在哪个组件的基本原理。设计时

需要在理解客户业务环境、业务架构现状和发展趋势的基础上,考虑设计

的可伸缩性、性能、可管理性、重用性。此外,高内聚性、低耦合性是优

秀组件模块设计的特征之一,需要作为设计参考。

将组件和服务打包:根据解决方案的基础架构,将各功能组件模块分布到

基础架构的各个部分。

将组件分发到网络拓扑中:将应用程序模块与网络、物理服务器拓扑联系

起来构成部署模型。

确定编程模型:编程模型是一组特定的准则,提供了一致性的组件实现。

编程模型包含了:实现技术、状态对象和无状态对象、进程内函数调用和

进程外函数调用、内聚性和耦合性、连接模型和非连接模型、同步编程模

型和异步编程模型、线程模型、错误处理、安全性和分发等方面的准则。

指定详细的组件接口、属性和服务:包括了组件接口设计、用户详细界面

设计。

详细设计输出《详细设计说明书》。

8.2.2.详细设计评审

详细设计根据设计需要确定是否进行评审。一般,以下情况应进行详细设计评审:

新业务的设计;

涉及3个及以上业务流程的设计;

复杂算法和数据结构的设计;

新设计人员设计的结果。

技术评审由详细设计人员提出和组织召开。技术评审会议应邀请概要设计人员、开发人员等参加。

关于技术评审会议的要求详见《评审过程》。

8.3.编码实现

8.3.1.开发环境准备

代码开发前应对开发环境进行规范并搭建开发环境。开发环境搭建应考虑的内容有:

开发服务器环境(开发数据库、源代码管理、网络、项目组门户等);

开发工具及版本;

编码涉及的复用组件及版本;

代码目录结构;

编码规范等。

开发环境应由开发负责人配置好后,对开发人员进行培训。

8.3.2.代码编写

开发人员根据《详细设计说明书》进行编码实现。代码编写应考虑以下两个方面:

编程方法:为提高代码的质量,可使用一些有效的编程方法来编制软件。

常见的编程方法有:结构化编程、面向对象编程、重用已有代码或者组件

等。此外代码编写根据所使用的开发语言不同,应该遵循相应的编码规

范。

相关文档
最新文档