2022年软件项目文档定义 .pdf
《2022年软件项目文档定义 .pdf》由会员分享,可在线阅读,更多相关《2022年软件项目文档定义 .pdf(14页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件文档文档的作用和分类软件文档 (document)也称文件,通常指的是一些记录的数据和数据媒体,它具有固定不变的形式,可被人和计算机阅读。 它和计算机程序共同构成了能完成特定功能的计算机软件(有人把源程序也当作文档的一部分 )。我们知道,硬件产品和产品资料在整个生产过程中都是有形可见的,软件生产则有很大不同,文档本 身就是软件产品。没有文档的软件,不成其为软件,更谈不到软件产品。软件文档的编制(documentation)在软件开发工作中占有突出的地位和相当的工作量。高效率、高质量地开发、分发、管理和维护文档对于转让、变更、修正、扩充和使用文档,对于充分发挥软件产品的效益有着重要意义。然而
2、,在实际工作中,文档在编制和使用中存在着许多问题,有待于解决。软件开发人员中较普遍地存在着对编制文档不感兴趣的现象。从用户方面看,他们又常常抱怨:文档售价太高、文档不够完整、文档编写得不好、文档已经陈旧或是文档太多,难于使用等等。究竟应该怎样要求它,文档应该写哪些,说明什么问题,起什么作用?这里将给出简要的介绍。图 文档桥梁作用文档在软件开发人员、软件管理人员、维护人员、用户以及计算机之间的多种桥梁作用可从图92 中看出。软件开发人员在各个阶段中以文档作为前阶段工作成果的体现和后阶段工作的依据,这个作用是显而易见的。 软件开发过程中软件开发人员需制定一些工作计划或工作报告,这些计划和报告都要提
3、供给管理人员,并得到必要的支持。管理人员则可通过这些文档了解软件开发项目安排、进度、资源使用和成果等。软件开发人员需为用户了解软件的使用、操作和维护提供详细的资料,我们称此为用户文档。以上三种文档构成了软件文档的主要部分。我们把这三种文档所包括的内容列在图6 中。其中列举了十三个文档,这里对它们作一些简要说明:? 可行性研究报告:说明该软件开发项目的实现在技术上、经济上和社会因素上的可行性,评述为了合理地达到开发目标可供选择的各种可能实施的方案,说明并论证所选定实施方案的理由。? 项目开发计划:为软件项目实施方案制定出具体计划,应该包括各部分工作的负责人员、开发的进度、开发经费的预算、所需的硬
4、件及软件资源等。项目开发计划应提供给管理部门,并作为开发阶段评审的参考。? 软件需求说明书:也称软件规格说明书,其中对所开发软件的功能、性能、用户界面及运行环境等作出详细的说明。它是用户与开发人员双方对软件需求取得共同理解基础上达成的协议,也是实施开发工作的基础。? 数据要求说明书:该说明书应给出数据逻辑描述和数据采集的各项要求,为生成和维护系统数据文卷作好准备。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 14 页 - - - - - - - - - ? 概要设计说明
5、书:该说明书是概要设计阶段的工作成果,它应说明功能分配、模块划分、程序的总体结构、输入输出以及接口设计、运行设计、数据结构设计和出错处理设计等,为详细设计奠定基础。? 详细设计说明书:着重描述每一模块是怎样实现的,包括实现算法、逻辑流程等。?用户手册:本手册详细描述软件的功能、性能和用户界面,使用户了解如何使用该软件。文档用户文档用户手册操作手册维护修改建议软件需求(规格)说明书开发文档软件需求(规格)说明书数据要求说明书概要设计说明书详细设计说明书可行性研究报告项目开发计划管理文档项目开发计划测试计划测试报告开发进度月报开发总结报告?图 三种文档? 操作手册:本手册为操作人员提供该软件各种运
6、行情况的有关知识,特别是操作方法的具体细节。? 测试计划:为做好组装测试和确认测试,需为如何组织测试制定实施计划。计划应包括测试的内容、进度、条件、人员、测试用例的选取原则、测试结果允许的偏差范围等。? 测试分析报告:测试工作完成以后,应提交测试计划执行情况的说明。对测试结果加以分析,并提出测试的结论意见。? 开发进度月报:该月报系软件人员按月向管理部门提交的项目进展情况报告。报告应包括进度计划与实际执行情况的比较、阶段成果、遇到的问题和解决的办法以及下个月的打算等。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理
7、- - - - - - - 第 2 页,共 14 页 - - - - - - - - - ? 项目开发总结报告:软件项目开发完成以后,应与项目实施计划对照,总结实际执行的情况,如进度、成果、资源利用、成本和投入的人力。此外还需对开发工作作出评价,总结出经验和教训。? 维护修改建议,软件产品投入运行以后,发现了需对其进行修正、更改等问题,应将存在的问题、修改的考虑以及修改的影响估计作详细的描述,写成维护修改建议,提交审批。以上这些文档是在软件生存期中,随着各阶段工作的开展适时编制。其中有的仅反映一个阶段的工作,有的则需跨越多个阶段。表5 给出了各个文档应在软件生存期中哪个阶段编写。这些文档最终要
8、向软件管理部门,或是向用户回答以下的问题:表 9.2 软件生存期各阶段编制的文档阶段文档可行性药酒与计划需求分析 设计 代码编写 测试 运行与维护可行性研究报告项目开发计划软件需求说明数据要求说明概要设计说明星系设计说明测试计划用户手册操作手册测试分析报告开发进度月报项目开发总结维护修改建议? 哪些需求要被满足,即回答“做什么?”? 所开发的软件在什么环境中实现以及所需信息从哪里来,即回答“从何处?”? 某些开发工作的时间如何安排,即回答“何时干?”? 某些开发 (或维护 )工作打算由“谁来干?”? 某些需求是怎么实现的? ? 为什么要进行那些软件开发或维护修改工作? 上述十三个文档都在一定程
9、度上回答了这六个方面的问题。这可从表中看到。表 文档所回答的问题名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 14 页 - - - - - - - - - 所提问题文档什么何处何时谁如何为何可行性研究报告项目开发计划软件需求说明数据要求说明概要设计说明详细设计说明测试计划用户手册操作手册测试分析报告开发进度月报项目开发总结维护修改建议至此,我们对文档的作用有了进一步的理解。每一个文档的任务也是明确的, 任何一个文档都此是多余的。文档的管理和维护在整个软件生存期中,各种文
10、档作为半成品或是最终成品,会不断地生成、修改或补充。为了最终得到高质量的产品,达到上节提出的质量要求,必须加强对文档的管理。以下几个方面是应注意做到的:软件开发小组应设一位文档保管人员,负责集中保管本项目已有文档的两套主文本。两套文本内容完全一致。其中的一套可按一定手续,办理借阅。软件开发小组的成员可根据工作需要在自己手中保存一些个人文档。这些一般都应是主文本的复制件,并注意和主文本保持一致,在作必要的修改时,也应先修改主文本。开发人员个人只保存着主文本中与他工作相关的部分文档。在新文档取代了旧文档时,管理人员应及时注销旧文档。在文档内容有更动时,管理人员应随时修订主文本,使其及时反映更新了的
11、内容。项目开发结束时,文档管理人员应收回开发人员的个人文档。发现个人文档与主文本有差别时,应立即着手解决。这常常是未及时修订主文本造成的。在软件开发过程中,可能发现需要修改已完成的文档,特别是规模较大的项目,主文本的修改必须特别名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 14 页 - - - - - - - - - 谨慎。修改以前要充分估计修改可能带来的影响,并且要按照:提议、评议、审核、批准和实施等步骤加以严格的控制。文档编制的质量要求为了使软件文档能起到前节所提到
12、的多种桥梁作用,使它有助于程序员编制程序,有助于管理人员监督和管理软件开发,有助于用户了解软件的工作和应做的操作,有助于维护人员进行有效的修改和扩充,文档的编制必须保证一定的质量。质量差的软件文档不仅使读者难于理解,给使用者造成许多不便,而且会削弱对软件的管理 (管理人员难以确认和评价开发工作的进展),增高软件的成本 (一些工作可能被迫返工),甚至造成更加有害的后果(如误操作等 )。造成软件文档质量不高的原因可能是:?缺乏实践经验,缺乏评价文档质量的标准。?不重视文档编写工作或是对文档编写工作的安排不恰当。最常见到的情况是,软件开发过程中不能按表5 给出的进度,分阶段及 ?时完成文档的编制工作
13、,而是在开发工作接近完成时集中人力和时间专门编写文档。另一方面,和程序工作相比,许多人对编制文档不感兴趣。于是在程序工作完成以后,不得不应付一下,把要求提供的文档赶写出来。这样的做法不可能得到高质量的文档。实际上,要得到真正高质量的文档并不容易,除去应在认识上对文档工作给予足够的重视外,常常需要经过编写初稿,听取意见进行修改,甚至要经过重新改写的过程。高质量的文档应当体现在以下一些方面:针对性;文档编制以前应分清读者对象,按不同的类型、不同层次的读者,决定怎样适应他们的需要。例如,管理文档主要是面向管理人员的,用户文档主要是面向用户的,这两类文档不应像开发文档 (面向软件开发人员 )那样过多地
14、使用软件的专业术语。精确性:文档的行文应当十分确切,不能出现多义性的描述。同一课题若干文档内容应该协调一致,应是没矛盾的。清晰性:文档编写应力求简明,如有可能,配以适当的图表,以增强其清晰性。完整性:任何一个文档都应当是完整的、独立的,它应自成体系。例如,前言部分应作一般性介绍,正文给出中心内容,必要时还有附录,列出参考资料等。同一课题的几个文档之间可能有些部分相同,这些重复是必要的。例如,同一项目的用户手册和操作手册中关于本项目功能、性能、实现环境等方面的描述是没有差别的。特别要避免在文档中出现转引其它文档内容的情况。比如,一些段落并未具体描述,而用“见文档节”的方式,这将给读者带来许多不便
15、。灵活性:各个不同的软件项目,其规模和复杂程度有着许多实际差别,不能一律看待。图6 所列文档是针对中等规模的软件而言的。对于较小的或比较简单的项目,可做适当调整或合并。比如,可将用户手册和操作手册合并成用户操作手册;软件需求说明书可包括对数据的要求,从而去掉数据要求说明书;概名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 14 页 - - - - - - - - - 要设 计说明书与详细设计说明书合并成软件设计说明书等。可追溯性; 由于各开发阶段编制的文档与各阶段完成的工
16、作有着紧密的关系, 前后两个阶段生成的文档,随着开发工作的逐步扩展,具有一定的继承关系。在一个项目各开发阶段之间提供的文档必定存在着可追溯的关系。例如,某一项软件需求,必定在设计说明书,测试计划以至用户手册中有所体现。必要时应能做到跟踪追查。程序文档合一与动态文档很多企业已经建立了许多庞大的计算机管理系统,而且将不断地推出新的系统。满足经营的需求须不断维护、改造计算机系统,但同时又要不影响现行生产,所以必须建立一整套机制来评价、控制和完成对系统的维护。在软件维护过程中,提出程序与文档合一的概念在软件开发的同时建立动态文档。程序与文档合一概念的提出一、目前软件的状况程序与文档的形式分离,不仅是用
17、各自独立的形式存放,而且使用不同的工具在不同的时间里书写和检索。维护程序时不能方便地得到文档的帮助,不能同步修改文档。程序与文档的内容分离,由于程序与文档采用不同的描述,既有计算机语言也有自然语言。维护过程中不能及时、一致地更新文档或程序,使文档不能准确地描述程序而几乎成为废纸甚至带来负面价值。软件开发与维护的分离,绝大多数软件在设计、开发时不太考虑以后可能的修改,加大了软件维护的难度,而且使维护容易引入新的错误。这些分离也表现在设计、开发的不同阶段的文档之间的不相容性,例如:需求分析说明书是纸上的东西,在概要设计阶段不能很好地继承、利用需求分析说明书,设计、编制概要设计时必须从零开始,需要重
18、新分析、理解需求分析,这种思维上的脱节,不仅延缓开发进度、加重设计人员的负担,而且由于理解上的不同导致不同阶段描述的对象有许多不相容情况。这些分离使得文档在系统的设计、开发、维护中的作用下降,这也是很多软件人员不愿意编写文档的主要原因。二、程序与文档合一的概念提出怎样才是好的文档系统呢?应当具备以下属性:1. 能够准确地描述软件、并且简单易懂;2. 能够迅速错误定位、影响分析、修正设计;3. 能够提高软件维护质量;4. 能够方便程序修改时理解程序。为此提出了程序与文档合一的概念。这概念使软件成为真正意义上的软件:程序 +文档,程序就是文档,文档集成在程序中。它要求在选择开发环境时不仅要考虑环境
19、对设计、开发的完美支持,而且要考虑对维护、文档的支持;它要求软件人员在设计、开发过程中要考虑维护问题、文档问题;它要求程序与文档存名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 14 页 - - - - - - - - - 储在同一位置、同一系统中;它要求使用相同工具进行程序与文档的书写、检索;它要求在编写和维护程序的同时形成文档,在书写文档时编写、维护程序。程序与文档合一的概念不仅存在于系统的设计、开发阶段而且存在于系统的维护阶段,它贯穿软件的生命周期。动态文档系统是建
20、立在程序与文档合一的概念基础上的、文档与程序一致的、简单易懂的联机文档系统。它包括构件说明与数据描述、对构件与构件之间、构件与数据之间的关系进行的描述。动态文档系统是提高了文档的可用性、易用性和连贯性,使文档更加有效,是解决维护问题的有效途径。动态文档系统问题分析需要解决的问题是:软件文档的内容划分与获取、文档的存储与维护、文档的检索、软件文档的生成打印。一、软件文档的内容划分成:语义文档、结构文档、过程文档语义文档是对软件的功能、概念、总体设计、流程、规约等用自然语言的描述,是软件人员根据规范在使用 CASE 工具编写并填入程序的文档,它也是为更全面的解释文档而灵活加入的额外信息。结构文档是
21、在软件设计工具、开发环境中对象的属性、构件间接口、构件间引用关系、软件的结构等的描述。利用词法、语法分析程序对整个系统的对象、构件进行识别、分析,获取上述描述并形成表格文件。过程文档是对软件的设计、编码、维护过程中形成的过程描述和程序注释,如设计目的、设计人、时间等说明,利用开发环境对软件人员在设计、开发、维护过程中操作的记录形成操作跟踪。二、程序与文档的统一存储与维护根据程序与文档合一的概念和文档从程序中提取的要求,文档必须存放在程序中,甚至文档固有的源代码中。结构如此的程序源代码的存储必须采用一种新技术对象仓储(Repository )技术,而不能采用流式文件,这样才能使程序与文档既结合又
22、分离。程序与文档结合在一个对象仓储中,结合在统一的开发环境中;结合在修改代码时可以同时修改文档、修改文档时可以同时人工检查和修改程序,并在多次文档生成而不会丢失手工输入的文档。程序与文档应当分别存放在对象仓储中的不同表或不同的字段中,在编译与运行时分离。三、文档的检索对单个对象、构件文档的检索方式是若于文档存放在一个对象仓储中,它可以随源代码一起检索和维护。这种检索给分析和维护单个构件、对象提供文档支持。建立多种视图、编写程序对整个系统进行文档的检索和获取,完成对整个系统的分析,对整个系统进行实时文档支持。这将在例子中较详细的描述。四、软件文档的生成打印编写程序检索和获取整个系统的文档,按照国
23、家软件标准的文档式样建立文档模板并将按模板生成文档和利用文字处理软件强大的功能进行创建、编辑文档并打印。根据上述分析,文档分布和获取对开发环境提出了要求:开发环境应该是设计工具、开发工具的集成,名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 14 页 - - - - - - - - - 应该基于 CASE 技术、对象仓储技术、构件技术、OLE 技术。基于CASE 技术的开发环境;设计、开发、维护过程中形成的文档并植入程序代码中,使文档成为程序的一部分。基于对象仓储技术的开
24、发环境,将文档与程序统一存储在对象仓储中方便检索。基于构件技术的开发环境,便于识别、获取构件,分析、形成结构文档和过程文档。基于OLE 等技术使文档可以很好地利用Word 等文档处理软件。动态文档系统的一个应用实例广州电信科技开发有限公司自行设计、开发的名为九七系统的庞大的电信管理计算机系统自1997 年投产验收后,将长期用于生产,维护工作非常重要和紧迫。这为动态文档系统提供了需求和试验场所。在长期维护的过程中,体会到好文档的重要性并提出了程序文档合一的概念,这为动态文档系统提供了理论基础。九七系统是使用Uniface 开发环境。这种开发环境采用了CASE 技术、对象仓储技术、构件技术,这为动
25、态文档系统提供了技术支撑。一、广州电信动态文档系统的建立步骤1. 理解 Uniface、Oracle 工具的开发环境,规划语义文档在各级对象中存放的表与字段,并根据工具的特性制定填写的规则。2. 寻找结构文档、过程文档在Uniface、Oracle 工具中存放的表与字段。3. 在设计、开发和维护软件的过程中对这些表或字段按照规则进行填写。4. 建立一整套模板使文档结构与信息源建立映像,包括:数据字典模板、设计文档模板、结构文档模板、开发过程文档模板等。5. 将这些模板组装成文档系统,并使它独立于开发目标系统。广州电信动态文档系统的组成可以分为文档查询、维护记录查询、文档生成。文档查询不仅包括构
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年软件项目文档定义 2022 软件 项目 文档 定义
限制150内