标准的软件开发过程
软件开发标准化工作流程

1目录1 引言 (3)1.1 编写目的 (3)1.2 适用范围 (3)1.3 定义 (3)1.4 流程图 (4)2 需求调研 (5)2.1 概述 (5)2.2 需求调研 (5)2.3 注意事项 (6)3 可行性分析 (7)4 需求分析 (8)4.1 概述 (9)4.2 产物/成果 (10)4.3 需求分析任务 (11)4.4 需求分析方法 (11)4.4.1 原型化 (11)4.5 需求报告 (12)4.6 划分需求的优先级 (13)4.7 评审需求文档和原型 (13)5 系统设计 (14)5.1 概述 (14)5.2 产物/成果 (14)5.3 产品设计 (15)5.3.1 概述 (15)5.3.2 流程图 (15)5.4 软件设计 (16)5.4.1 概述 (16)5.4.2 流程图 (16)5.4.3 概要设计 (16)5.4.3.1 数据库系统设计 (17)5.4.4 详细设计 (19)6 软件开发 (20)6.1 建立项目开发团队 (20)6.2 实施项目开发测试 (20)6.3 工作内容 (20)6.4 产物/成果 (21)7 项目测试 (23)7.1 软件测试阶段 (23)7.2 概述 (23)7.3 流程 (23)7.4 软件测试准备 (24)7.5 软件测试执行 (24)8 内部验收 (25)8.1 文档准备 (25)8.2 内部验收测试 (26)8.3 内部评审 (26)9 项目试运行与验收 (26)9.1 验收前的准备 (26)9.2 用户测试 (26)9.3 用户确认 (27)10 项目维护 (27)10.1 错性维护 (27)10.2 完善性维护 (27)11 需求变更流程 (28)11.1 目的 (28)11.2 适用范围 (28)11.3 作业流程 (29)11.4 流程描述 (29)11.4.1 内部项目 (30)11.4.2 外部项目 (30)11.5 提交需求变更 (31)11.6 审核评审 (32)11.6.1 工作内容 (32)11.6.2 相关角色 (32)11.7 反馈 (33)12 附录 (33)12.1 附录1《软件需求说明书》 (33)12.2 附录2《概要设计说明书》 (33)12.3 附录3《数据库设计说明书》 (33)12.4 附录4《详细设计说明书》 (33)12.5 附录5《用户使用手册》 (33)12.6 附录6《软件测试说明》 (33)12.7 附录7《项目开发计划》 (33)12.8 附录8《软件测试计划》 (33)12.9 附录9《软件测试方案》 (34)12.10 附录10《测试用例文档》 (34)12.11 附录11《缺陷报告》 (34)12.12 附录12《软件测试报告》 (34)12.13 附录13《需求变更申请表》 (34)软件开发标准化工作流程2引言2.1编写目的2.2说明编写这份软件开发标准化工作流程的目的, 指出预期的读者。
软件开发流程五个流程

软件开发流程五个流程
软件开发流程是标准的软件开发过程,通常涉及策略分析、规划、设计、编码、测试
和维护等几个主要阶段。
系统的软件开发流程可以用于任何软件开发项目,以保证软件产
品的质量。
首先,策略分析阶段是进行软件开发的第一步,它的主要目的是分析用户的需求和功能。
它既可以从整体层面识别项目的可行性,也可以从细节层面对功能进行分析,以便完
成后续工作。
其次是规划阶段,它可以帮助系统开发人员建立完整的开发计划,并明确项目的目标
和要求。
在这一阶段,开发人员将收集需要的信息,分析出所需的资源,估算预期的时间
消耗和费用,以及定义必要的技术详细说明,以便提供完整的计划。
紧接着,是设计阶段,这一步是软件开发过程中最重要的一步,基本上可以说是“一
步失误,全盘皆输”。
在设计这一步中,需要了解软件系统的结构、功能和模块。
开发人
员需要设计软件系统的架构、功能结构及应用程序的实现。
随后是编码,这一步是一切系统开发的支票,需要按照约定的设计,使用恰当的编程
语言将各个功能模块的指令写在程序源文件里,以便程序可以正常执行。
最后,测试阶段,即验证和测试阶段,主要是用来确保软件系统正确实现了设计要求
的内容。
它需要进行功能性测试,以及性能、可靠性测试,并完成项目的部署,确保系统
的正确实施。
同时还需要对软件的功能及性能进行必要的总结,为未来的维护和升级提供
指导和参考。
总之,软件开发的流程可以分为策略分析、规划、设计、编码、测试和维护6个主要
阶段。
这些阶段构成了一个循环过程,软件系统可以在不断的完善和改进中达到最佳效果。
软件开发流程技术手册

软件开发流程技术手册一、概述软件开发是一项复杂的技术活动,涉及到软件需求分析、设计、编码、测试、发布等诸多环节。
为了提高开发效率、确保软件质量以及统一开发流程,软件开发流程技术手册应运而生。
本手册旨在为软件开发团队提供一套标准化的开发流程,帮助开发人员更好地理解和实践软件开发过程。
二、需求分析阶段需求分析是软件开发的基础,通过充分了解用户需求,为后续的设计和开发奠定基础。
在需求分析阶段,应该重点关注以下几个方面:1. 定义需求:明确软件的功能、性能和可靠性要求,并细化为明确的需求描述。
2. 需求评审:邀请项目相关人员进行需求评审,确保各方都对需求有一致的理解。
3. 编写需求规格说明书:将需求描述文档化,并建立一个需求追踪矩阵以便于后续跟踪和验证。
三、设计阶段设计阶段是将需求转化为可执行代码的过程,主要包括软件架构设计和详细设计两个环节:1. 软件架构设计:确定软件的整体结构、组件以及它们之间的关系,在此基础上细化每个组件的功能。
2. 详细设计:对软件的每个模块进行详细设计,包括数据结构、算法、接口定义等。
四、编码阶段编码是将设计文档转变为实际代码的过程,是软件开发的核心环节。
在编码阶段,需要遵循以下几个原则:1. 规范命名:变量、函数、类等命名需具有一定的描述性,避免使用含义不明确的名称。
2. 代码复用:尽量重用已有的组件、函数或者类,减少重复开发。
3. 代码可读性:良好的代码结构、适当的注释以及代码缩进等,有助于其他开发人员理解和维护代码。
五、测试阶段测试是保障软件质量的重要环节,在代码开发的同时,进行相应的测试工作,包括单元测试、功能测试、性能测试等。
以下是测试阶段的几个要点:1. 单元测试:对各个模块进行单元测试,确保代码的正确性和稳定性。
2. 功能测试:测试软件是否满足需求规格说明书中所定义的功能。
3. 性能测试:测试软件的性能指标,如响应时间、吞吐量等。
六、发布和维护发布和维护是软件开发的最后阶段,包括将软件部署到生产环境,并对软件的使用进行监测和维护。
IT行业软件开发流程与规范

IT行业软件开发流程与规范第1章软件开发概述 (4)1.1 软件开发背景 (4)1.2 软件开发流程 (4)1.3 软件开发规范的意义 (4)第2章需求分析 (5)2.1 用户需求调研 (5)2.1.1 确定调研目标 (5)2.1.2 选择调研方法 (5)2.1.3 制定调研计划 (5)2.1.4 执行调研 (5)2.1.5 调研数据分析 (6)2.2 需求分析的方法与工具 (6)2.2.1 需求分析方法 (6)2.2.2 需求分析工具 (6)2.3 需求规格说明书编写 (6)2.3.1 结构与内容 (6)2.3.2 编写规范 (7)第3章系统设计 (7)3.1 架构设计 (7)3.1.1 系统分层 (7)3.1.2 技术选型 (7)3.1.3 组件划分 (7)3.2 模块划分与接口设计 (8)3.2.1 模块划分 (8)3.2.2 接口设计 (8)3.3 数据库设计 (8)3.3.1 数据库选型 (8)3.3.2 表结构设计 (8)3.3.3 数据库规范 (9)3.4 系统设计文档编写 (9)3.4.1 文档结构 (9)3.4.2 编写要求 (9)第4章编码实现 (10)4.1 编程规范与约定 (10)4.1.1 代码风格 (10)4.1.2 编程习惯 (10)4.1.3 代码组织 (10)4.2 代码质量控制 (10)4.2.1 单元测试 (10)4.2.2 代码审查 (10)4.2.3 代码优化 (11)4.3.1 审查流程 (11)4.3.2 审查内容 (11)4.3.3 审查技巧 (11)4.4 版本控制 (11)4.4.1 版本控制工具 (12)4.4.2 代码提交与合并 (12)4.4.3 代码库管理 (12)第5章软件测试 (12)5.1 测试策略与计划 (12)5.1.1 测试策略 (12)5.1.2 测试计划 (13)5.2 单元测试 (13)5.2.1 单元测试方法 (13)5.2.2 单元测试策略 (13)5.3 集成测试 (13)5.3.1 集成测试方法 (13)5.3.2 集成测试策略 (14)5.4 系统测试 (14)5.4.1 系统测试内容 (14)5.4.2 系统测试策略 (14)5.5 验收测试 (14)5.5.1 验收测试内容 (14)5.5.2 验收测试策略 (15)第6章软件部署与维护 (15)6.1 部署策略与工具 (15)6.1.1 部署策略 (15)6.1.2 部署工具 (15)6.2 软件发布 (16)6.2.1 发布准备 (16)6.2.2 发布流程 (16)6.3 软件维护与升级 (16)6.3.1 软件维护 (16)6.3.2 软件升级 (16)第7章项目管理 (17)7.1 项目计划与进度控制 (17)7.1.1 项目目标:明确项目的最终目标,保证项目团队对目标的一致认同。
软件开发流程的具体内容

软件开发流程的具体内容软件开发是一个复杂而又精细的过程,需要经历多个阶段和环节。
下面将介绍软件开发的具体流程,以便更好地了解软件开发的全貌。
1. 需求分析阶段。
软件开发的第一步是需求分析阶段。
在这个阶段,开发团队与客户进行沟通,了解客户的需求和期望。
通过讨论和调研,确定软件的功能和特性,明确软件的用户群体和使用场景,为后续的开发工作奠定基础。
2. 设计阶段。
在需求分析的基础上,开发团队进行软件的设计工作。
包括系统架构设计、数据库设计、界面设计等。
设计阶段的目标是确定软件的整体结构和各个模块的功能,为后续的编码工作提供指导。
3. 编码阶段。
编码阶段是软件开发的核心阶段,开发团队根据需求和设计文档,进行具体的编码工作。
根据需求文档和设计文档,开发团队使用相应的编程语言和开发工具,编写软件的源代码。
4. 测试阶段。
编码完成后,软件需要进行测试。
测试阶段包括单元测试、集成测试、系统测试等多个环节。
测试人员根据测试计划和测试用例,对软件进行全面的测试,确保软件的质量和稳定性。
5. 部署和维护阶段。
软件通过测试后,进入部署和维护阶段。
开发团队将软件部署到目标环境中,并进行相关的配置和优化。
同时,开发团队需要对软件进行维护和更新,确保软件的稳定性和安全性。
总结。
软件开发流程包括需求分析、设计、编码、测试、部署和维护等多个阶段。
每个阶段都有其独特的任务和目标,需要开发团队的密切合作和高效协调。
只有经过严格的流程管理和质量控制,才能保证软件开发的顺利进行和最终的成功交付。
软件开发的基本过程

软件开发的基本过程
软件开发的基本过程包括以下步骤:
1.需求分析:相关系统分析员向用户初步了解需求,用相关的工具软件列出要开发的系统的大功能模块,每个大功能模块有哪些小功能模块,对于有些需求比较明确相关的界面时,在这一步里面可以初步定义好少量的界面。
2.概要设计:开发者需要对软件系统进行概要设计,即系统设计。
概要设计需要对软件系统的设计进行考虑,包括系统的基本处理流程、系统的组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等,为软件的详细设计提供基础。
3.详细设计:在概要设计的基础上,开发者需要进行软件系统的详细设计。
应当保证软件的需求完全分配给整个软件。
详细设计应当足够详细,能够根据详细设计报告进行编码。
4.编码:在软件编码阶段,开发者根据《软件系统详细设计报告》中对数据结构、算法分析和模块实现等方面的设计要求,开始具体的编写程序工作,分别实现各模块的功能,从而实现对目标系统的功能、性能、接口、界面等方面的要求。
5.测试:测试编写好的系统。
交给用户使用,用户使用后一个一个的确认每个功能。
完成测试后,完成验收并完成最后的一些帮助文档,整体项目才算完成。
6.验收:用户验收。
以上就是软件开发的基本过程,不同的公司可能会有自己的一套
流程,但大体上应该是类似的。
软件开发的六个步骤

软件开发的六个步骤
软件开发是指从建立需求到工程交付的整个程序,实现软件产品开发的过程,是软件
项目管理的核心工作内容。
通常,软件开发通常按照以下六个基本步骤进行:
第一步:分析要求。
明确客户需求,确定软件功能要求,计算机硬件、操作系统和软
件环境要求,重要技术要求及其限制,进行控制、保障措施等。
第二步:详细设计。
根据客户要求和研究分析,确定软件的功能模型,包括软件的应
用界面、输入检查、输出报表、特性及程序模块等。
第三步:开发测试。
开发软件原型,完善软件的功能;进行模块测试、系统测试等,
完善软件的质量。
第四步:实施部署。
部署软件,安装硬件,调试软件,训练操作人员使用软件。
第五步:操作守则。
规范软件使用及管理操作,如权限控制、版本、日志等,以确保
软件正确、安全、可靠地运行。
第六步:验证检查。
客户进行验收测试,确保软件实际功能与要求相符,并在实际项
目应用中进行可行性检测,排除可能存在的安全、性能问题。
以上是软件开发的六个步骤。
软件开发的成功,最终取决于项目管理和进度控制能力。
在软件开发项目中,项目管理人员需要把握六个步骤,有效地把握工程进度,避免出现延期,诈骗或其他问题。
在此软件开发过程当中,参与者除了要进行实践工作外,更要掌握
良好的项目管理能力,充分的发挥企业的核心竞争力。
软件开发流程规范

软件开发流程规范第1章项目立项与规划 (5)1.1 项目背景分析 (5)1.1.1 行业背景 (5)1.1.2 市场需求 (5)1.1.3 技术发展趋势 (5)1.2 项目目标与需求 (5)1.2.1 项目目标 (5)1.2.2 项目需求 (5)1.3 项目资源与风险评估 (5)1.3.1 项目资源 (5)1.3.2 风险评估 (5)1.4 项目立项与规划 (5)1.4.1 项目范围规划 (6)1.4.2 项目时间规划 (6)1.4.3 项目成本规划 (6)1.4.4 项目组织结构 (6)第2章需求分析 (6)2.1 用户需求调研 (6)2.1.1 调研目标 (6)2.1.2 调研方法 (6)2.1.3 调研对象 (6)2.1.4 调研内容 (6)2.2 确定系统功能 (6)2.2.1 功能需求分析 (6)2.2.2 功能模块划分 (7)2.2.3 功能需求验证 (7)2.3 编制需求规格说明书 (7)2.3.1 编制目的 (7)2.3.2 内容结构 (7)2.3.3 编制要求 (7)2.4 需求确认与评审 (7)2.4.1 需求确认 (7)2.4.2 需求评审 (7)2.4.3 评审结果处理 (7)第3章系统设计 (8)3.1 架构设计 (8)3.1.1 系统架构概述 (8)3.1.2 架构模式选择 (8)3.1.3 技术选型 (8)3.1.4 系统部署 (8)3.2 模块划分与接口设计 (8)3.2.2 接口设计 (8)3.2.3 接口规范 (8)3.3 数据库设计 (8)3.3.1 数据库选型 (8)3.3.2 数据库模型设计 (9)3.3.3 数据库功能优化 (9)3.4 系统安全与功能设计 (9)3.4.1 系统安全设计 (9)3.4.2 认证与授权 (9)3.4.3 系统功能设计 (9)3.4.4 监控与预警 (9)第4章系统开发 (9)4.1 编码规范与约定 (9)4.1.1 通用编码规范 (9)4.1.2 编程语言特定规范 (9)4.2 开发环境搭建 (10)4.2.1 硬件环境 (10)4.2.2 软件环境 (10)4.3 代码编写与审查 (10)4.3.1 代码编写 (10)4.3.2 代码审查 (10)4.4 系统集成与调试 (10)4.4.1 系统集成 (10)4.4.2 系统调试 (11)第5章系统测试 (11)5.1 测试策略与计划 (11)5.1.1 目标与原则 (11)5.1.2 测试范围 (11)5.1.3 测试方法 (11)5.1.4 测试环境与工具 (11)5.1.5 测试计划 (12)5.2 单元测试 (12)5.2.1 目标与原则 (12)5.2.2 测试方法 (12)5.2.3 测试环境与工具 (12)5.3 集成测试 (12)5.3.1 目标与原则 (12)5.3.2 测试方法 (12)5.3.3 测试环境与工具 (12)5.4 系统测试与验收 (12)5.4.1 系统测试 (12)5.4.2 验收测试 (13)5.4.3 测试方法 (13)第6章系统部署与维护 (13)6.1 部署策略与方案 (13)6.1.1 部署目标 (13)6.1.2 部署策略 (13)6.1.3 部署方案 (13)6.2 系统上线与培训 (13)6.2.1 上线准备 (13)6.2.2 系统上线 (13)6.2.3 用户培训 (14)6.3 系统维护与优化 (14)6.3.1 系统维护 (14)6.3.2 系统优化 (14)6.4 用户反馈与持续改进 (14)6.4.1 用户反馈 (14)6.4.2 持续改进 (14)第7章软件质量保证 (14)7.1 质量管理体系 (14)7.1.1 概述 (14)7.1.2 质量管理体系构建 (15)7.1.3 质量管理体系的实施与运行 (15)7.2 质量控制与检查 (15)7.2.1 质量控制 (15)7.2.2 质量检查 (15)7.3 质量评估与改进 (15)7.3.1 质量评估 (15)7.3.2 质量改进 (15)7.4 风险管理 (15)7.4.1 风险识别 (15)7.4.2 风险评估 (15)7.4.3 风险应对 (15)7.4.4 风险监控 (16)第8章项目管理 (16)8.1 项目进度管理 (16)8.1.1 进度计划编制 (16)8.1.2 进度监控与控制 (16)8.1.3 进度更新与报告 (16)8.2 项目成本管理 (16)8.2.1 成本估算 (16)8.2.2 成本预算 (16)8.2.3 成本控制 (16)8.3 项目风险管理 (16)8.3.1 风险识别 (16)8.3.2 风险评估与量化 (17)8.3.4 风险监控 (17)8.4 项目沟通与协作 (17)8.4.1 沟通计划 (17)8.4.2 信息共享 (17)8.4.3 协作机制 (17)8.4.4 变更管理 (17)第9章团队建设与培训 (17)9.1 团队组织结构 (17)9.1.1 团队层级划分 (17)9.1.2 职能分组 (17)9.1.3 交叉培训 (18)9.2 团队成员职责与技能 (18)9.2.1 项目经理 (18)9.2.2 技术经理 (18)9.2.3 开发人员 (18)9.2.4 测试人员 (18)9.3 培训与提升 (18)9.3.1 培训计划 (18)9.3.2 内部培训 (18)9.3.3 外部培训 (18)9.3.4 激励机制 (18)9.4 团队绩效评估与激励 (19)9.4.1 绩效考核指标 (19)9.4.2 绩效评估方法 (19)9.4.3 激励措施 (19)9.4.4 反馈与改进 (19)第10章项目收尾与总结 (19)10.1 项目验收与交付 (19)10.1.1 验收流程 (19)10.1.2 验收标准 (19)10.1.3 交付物 (20)10.2 项目总结与评价 (20)10.2.1 项目总结 (20)10.2.2 项目评价 (20)10.3 知识库与经验分享 (20)10.3.1 知识库建设 (20)10.3.2 经验分享 (21)10.4 后续项目规划与展望 (21)10.4.1 后续项目规划 (21)10.4.2 项目展望 (21)第1章项目立项与规划1.1 项目背景分析项目背景分析是对项目产生的内外部环境的全面梳理。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
标准的软件开发过程
软件开发的标准过程包括六个阶段,而六个阶段需要编写的各类文件达14种之多,在每个阶段需要编写哪些文件,以及这些文件的主要内容见下:
1.可行性与计划研究阶段
可行性研究报告:在可行性研究与计划阶段内,要确定该软件的开发目标和总的要求,要进行可行性分析、投资一收益分析、制订开发计划,并完成应编制的文件。
项目开发计划:编制项目开发计划的目的是用文件的形式,把对于在开发过程中各项工作的负责人员、开发进度、所需经费预算、所需软、硬件条件等问题作出的安排记载下来,以便根据本计划开展和检查本项目的开发工作。
2.需求分析阶段
软件需求说明书:软件需求说明书的编制是为了使用户和软件开发者双方对该软件的初始规定有一个共同的理解,使之成为整个开发工作的基础。
内容包括对功能的规定对性能的规定等。
数据要求说明书:数据要求说明书的编制目的是为了向整个开发时期提供关于被处理数据的描述和数据采集要求的技术信息。
初步的用户手册:用户手册的编制是要使用非专门术语的语言,充分地描述该软件系统所具有的功能及基本的使用方法。
使用户(或潜在用户)通过本手册能够了解该软件的用途,并且能够确定在什么情况下,如何使用它。
3.设计阶段
概要设计说明书:概要设计说明书又可称系统设计说明书,这里所说的系统是指程序系统。
编制的目的是说明对程序系统的设计考虑,包括程序系统的基本处理流程、程序系统的组织结构、模块划分、功能分配、接口设计。
运行设计、数据结构设计和出错处理设计等,为程序的详细设计提供基础。
详细设计说明书:详细设计说明书又可称程序设计说明书。
编制目的是说明一个软件系统各个层次中的每一个程序(每个模块或子程序)的设计考虑,如果一个软件系统比较简单,层次很少,本文件可以不单独编写,有关内容合并入概要设计说明书。
数据库设计说明书:数据库设计说明书的编制目的是对于设计中的数据库的所有标识、逻辑结构和物理结构作出具体的设计规定。
测试计划初稿:这里所说的测试,主要是指整个程序系统的组装测试和确认测试。
本文件的编制是为了提供一个对该软件的测试计划,包括对每项测试活动的内容、进度安排、设计考虑、测试数据的整理方法及评价准则。
4.实现阶段
模块开发卷宗(开始编写):模块开发卷宗是在模块开发过程中逐步编写出来的,每完成一个模块或一组密切相关的模块的复审时编写一份,应该把所有的模块开发卷宗汇集在一起。
编写的目的是记录和汇总低层次开发的进度和结果,以便于对整个模块开发工作的管理和复审,并为将来的维护提供非常有用的技术信息。
用户手册完工
操作手册:操作手册的编制是为了向操作人员提供该软件每一个运行的具体过程和有关知识,包括操作方法的细节。
测试计划终稿:
5.测试阶段
模块开发卷宗(此阶段内必须完成)
测试分析报告:测试分析报告的编写是为了把组装测试和确认测试的结果、发现及分析写成文件加以记载。
项目开发总结报告:项目开发总结报告的编制是为了总结本项目开发工作的经验,说明实际取得的开发结果以及对整个开发工作的各个方面的评价。
6.运行与维护阶段
开发进度月报的编制目的是及时向有关管理部门汇报项目开发的进展和情况,以便及时发现和处理开发过程中出现的问题。
一般地,开发进度月报是以项目组为单位每月编写的。
如果被开发的软件系统规模比较大,整个工程项目被划分给若干个分项目组承担,开发进度月报将以分项目组为单位按月编写。
对于一项软件而言,有些文件的编写工作可能要在若干个阶段中延续进行。
鉴于软件开发是具有创造性的脑力劳动,也鉴于不同软件在规模上和复杂程度上差别极大,本指南认为在文件编制工作中应允许一定的灵活性,并不是14种文件每种都必须编写。
文件编制的衡量因素
◆在因素总和较低的情况下,项目开发总结报告的内容应包括:程序的主要功能、基本流程、测试结果和使用说明。
◆测试分析报告应该写,但不必很正规。
◆数据要求说明和数据库设计说明是否需要编写应根据所开发软件的实际需要来决定。
例2:为了避免在软件开发中文件编制的不足或过分,一个简便的办法是把对软件文件的编制要求同软件的规模大小联系起来,这就是本例的出发点。
软件的规模不妨分为四级:1.小规模软件源程序行数小于5 000的软件;
2.中规模软件源程序行数为10 000~50 000的软件;
3.大规模软件源程序行数为100 000?500 000的软件;
4.特大规模软件源程序行数大于500 000的软件。
对上述的四级软件的文件编制要求分别列于表O3。
至于源程序行数为5 000~10 000,50 000~100 000的软件,其文件编制要求介于两级之间,可根据一个软件产品的具体情况,由项目负责人参照表O3的规定,确定需要编制的文件种类。
对于源程序行数大于500 000的特大规模软件,可进一步把本指南规定的十四种文件按实际需要扩展成更多种类。