SD Systems Designer, 系统设计师;还有叫SE的,system engineer,类似的意思;
软件设计文档国家标准_软件设计文档国家标准规范
DS 软件设计需求;
GB 国标的头字母,即国家标准。这个是国内的叫法;
UT Unit Test,单元测试;
其他的内容都是没有见过的。目前软件开发使用的流程大都是敏捷或者是CMM流程。上述概念不知道你是在哪里得到的,很有可能是某个公司自己的标准,并非是通用的内容。
软件文档的前言
软件文档编制贯穿于软件产品开发的各个阶段,是提高软件产品开发效率、规范软件产品开发过程、保证软件产品质量的关键,国家发布的一系列软件文档标准有力地促进了软件产品开发的系统化、规范化和标准化。
GB/T 34960.5-2018《信息技术服务 治理 第5部分:数据治理规范》。GB/T 34960的本部分提出了数据治理的总则和框架,规定了数据治理的顶层设计、数据治理环境、数据治理域及数据治理过程的要求。本部分适用于:a)数据治理现状自我评估,数据治理体系的建立;b)数据治理域和过程的明确,数据治理实施落地的指导;c)数据治理相关的软件或解决方案的研发、选择和评价;d)数据治理能力和绩效的内部、外部和第三方评价。
(2)GB/T 36463.1-2018《信息技术服务 咨询设计 第1部分:通用要求》。GB/T 34960的本部分提出了信息技术咨询设计服务能力模型,规定了提供信息技术咨询设计服务组织在人员、过程、技术和资源应具备的条件和能力。本部分适用于:a)计划提供信息技术咨询设计服务的组织建立服务能力体系;b)信息技术咨询设计服务供方改进和提升自身的服务能力;c)信息技术咨询设计服务需方选择和评价供方;d)第三方评价信息技术咨询设计服务供方。
(3)GB/T 37961-2019《信息技术服务 服务基本要求》。本标准规定了信息技术咨询、设计与开发、信息系统集成实施、运行维护、数据处理和存储、运营等服务的基本要求。本标准适用于信息技术服务领域提供相关领域服务的供方就所能提供的服务建立具体的规范,以及为供需双方拟订特定服务或服务组合的服务合同提供参考。
(4)GB 50174-2017《数据中心设计规范》(取代《电子信息系统机房设计规范》)。本规范适用于建筑中新建、改建和扩建的电子信息系统机房的设计。数据中心划分为A 、B 、C 三级。
A级:“容错”。电子信息系统运行中断将造成重大的经济损失,或将造成公共场所秩序严重混乱。
B级:“冗余”。电子信息系统运行中断将造成较大的经济损失,或将造成公共场所秩序混乱。
C级:不属于A、B级的,为C级。
在异地建立的备份机房,设计时应与主用机房等级相同。 同一个机房内的不同部分可根据实际情况,按不同的标准进行设计。
主机房内通道与设备间的距离应符合下列规定:
①用于搬运设备的通道净宽不应小于1.5m;
②面对面布置的机柜(或机架)正面之间的距离不宜小于1.2m;
③背对背布置的机柜(或机架)背面之间的距离不宜小于0.8m;
④当需要在机柜(或机架)侧面和后面维修测试时,机柜(架)与机柜(架)、机柜(架)与墙之间的距离不宜小于1.0m;
⑤成行排列的机柜(架),其长度超过6m 时,两端应设有通道;当两个通道之间的距离超过15m 时,在两个通道之间还应增加通道。出口通道的宽度不宜小于1m,局部可为0.8m。
电子信息系统机房的耐火等级不应低于二级。
当A 级或B 级电子信息系统机房位于其他建筑物内时,在主机房与其他部位之间应设置耐火极限不低于2h 的隔墙,隔墙上的门应采用甲级防火门。
1.1.2 信息技术软件
(1)GB/T 8566-2007《信息技术 软件生存周期过程》。本标准把软件生存周期中可能执行的活动分为三类过程,分别是:基本过程(5个,即获取、供应、开发、运作和维护)、支持过程(9个)和组织过程(7个),每一生存周期过程划分为一组活动,每一活动进一步划分为任务。
(2)GBT16680-1996 《软件文档管理指南》。本标准为那些对软件或基于软件的产品的开发负有职责的管理者提供软件文档的管理指南。本标准的目的在于协助管理者在他们的机构中产生有效的文档。
关于文档评审,无论项目大小或项目管理的正规化程度,需求评审和设计评审是必不可少的。需求必须说明清楚,用户和开发者双方都必须理解需求,为了能把需求转换成程序及程序成分,设计的细节须经同意并写成文档。
①需求评审:进一步确认开发者和设计者已了解用户要求什么,及用户从开发者一方了解某些限制和约束。需求评审(可能需要一次以上)产生一个被认可的需求规格说明。基于对系统要做些什么的共同理解,才能着手详细设计。用户代表必须积极参与开发和需求评审,参与对需求文档的认可。
②设计评审:产生的最终文档规定系统和程序将如何设计、开发和测试,以满足一致同意的需求。包括两个主要的设计评审:概要设计评审和详细设计评审。在概要设计评审过程中,主要详细评审每个系统组成部分的基本设计方法和测试计划。系统规格说明应根据概要设计评审的结果加以修改。详细设计评审主要评审计算机程序和程序单元测试计划。
(3)GB/T 8567-2006《计算机软件文档编制规范》。本标准根据GB/T 8566—2001《信息技术软件生存周期过程》的规定,主要对软件的开发过程和管理过程应编制的主要文档及其编制的内容、格式规定了基本要求。本标准原则上适用于所有类型的软件产品的开发过程和管理过程。
计算机软件文档
其中《软件需求规格说明》SRS内容包括:范围、引用文件、需求、合格性规定、需求可追踪性、尚未解决的问题、注解、附录。该标准中将系统需求分为三大类:功能需求、业务需求(包括:接口、资源、性能、可靠性、安全性、保密性等)、数据需求。
(4)GB/T 9385-2008《计算机软件需求规格说明规范》。本标准给出了软件需求规格说明(SRS)的编制要求,描述了一份好的
网上书店系统的需求分析
1 引言
1.1 编写目的:本文档将描述对网上书店(电子商务网站)项目的可行性研究。
1.2 项目背景:
本项目作为《软件工程》课程的实习项目提出,希望通过《网上书店》电子商务网站的设计开发,了解软件文档的相关标准和编写原则,训练并掌握软件各类文档写作的技巧;另一方面,提高使用JSP开发J2EE架构的电子商务网站(B/S结构)的能力。
B/S结构的特点:
几乎没有限制的客户端访问和极其简单化的应用程序部署和管理是B/S模型的优势所在。它和C/S模型比较优点极为突出。
两层技术模型(Two-Tier Architecture)是指客户机直接与服务器交流,没有其他服务介入的技术模型。对用户量在12—100的局域网环境中,两层模型的确是个不错的方案。由于该模型中,所有的用户连接都是被保持的,也就是说即使在空闲状态,连接依然存在。所以,用户的并发请求数量有限的。为了解决这个限制,使得成千上万的用户可以被无顾虑地添加,我们最好选用三层模型。
B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者说是改进的结构。用户界面完全通过浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成三层结构,是一种全新的软件系统构造技术。B/S模型结构图如下所示:
从上图可见 这种结构的一个重要的特点是,用户可以完全不需要安装客户端软件,当然也不需要担心任何软件升级和不兼容等任何客户端所遇到的问题。
相比之下,B/S模型的优点显而易见,更适合这个网站的构建,有利于网站的维护和扩充。
● 所建议开发项目的名称 :
网上书店。
● 所建议开发项目的开发平台:
WINDOWS XP SP2。
● 所建议开发项目的测试平台:
WINDOWS XP SP2。
● 所建议开发项目的使用平台:
WINDOWS XP SP2。
● 所建议开发项目的开发软件:
Borland JBuilder2005 企业版,Tomcat5.0,SQL Server2000标准版,JDK1.5。
● 所建议开发项目的建模工具:IBM rational rose 2003 企业版。
1.3 定义:
电子商务
JSP,J2EE,JINI,
1.4 参考资料:
《软件工程》齐治昌 谭庆平 宁洪 高等教育出版社
《实用软件工程》郑人杰 殷人昆 陶永雷 清华大学出版社
《软件工程方法与实践》胥光辉 金凤林 丁力 机械工业出版社
《软件设计文档国家标准》GB8567-88
2 可行性研究的前提
2.1 要求:
● 功能 :对书店的图书信息和用户(书店工作人员,网站注册用户即潜在购书者)信息的进行有效的管理;对图书的进存销等环节进行信息化管理;实现读者网上浏览图书,网上购书的可能;通过论坛同读者进行有效的沟通;通过聊天室实现作者和读者的实时交流;处理读者网上的投诉和建议。
● 性能:数据库的录入;图书检索;用户信息查询;图书信息查询;论坛和bbs互动;网上购书;
● 安全与保密要求 :书店中所有的图书能够供用户随时查阅;用户的个人信息可以由用户自己修改,添加;书店图书的信息只能由书店管理人员添加,修改;所有注册用户信息只能由书店管理人员查询。
● 运行环境 :
服务器端 :
操作系统 :WINDOWS,LINUX/UNIX及任何能运行Java虚拟机的平台;
Java Runtime Environment :version5.0以上。
Web Server:Tomcat 5.0以上。
客户端:
操作系统 :任何pc平台;
浏览器 :Internet Explorer,Netscape Navigator。
● 完成日期 :2005年12月。
2.2 目标:
本系统希望通过构建一个J2EE架构的电子商务网站,利用日益繁荣的互联网,为传统的书店打造一个新的销售平台。本系统希望通过电子信息化的手段对书店的进存销等环节进行管理,以达到人力与设备费用的减少,服务能力的提高,管理信息服务的改进,工作人员利用率的提高等目标。
2.3 条件、假定和限制:
● 建议开发软件运行的最短寿命: 四个月
● 进行显然方案选择比较的期限 :暂时不考虑
● 经费来源和使用限制 :暂时不考虑
● 法律和政策方面的限制 :暂时不考虑
● 硬件、软件、运行环境和开发环境的条件和限制 :在Windows XP SP2下使用
● 建议开发软件投入使用的最迟时间 :四个月
2.4 可行性研究方法
2.5 决定可行性的主要因素:
技术因素、硬件因素、软件因素、经济因素、团队合作精神等。
3 对现有系统的分析 (缺乏原型系统)
3.1 处理流程和数据流程 :暂时不考虑
3.2 工作负荷 :暂时不考虑
3.3 费用支出:如人力、设备、空间、支持性服务、材料等项开支 :暂时不考虑
3.4 人员:列出所需人员的专业技术类别和数量 :暂时不考虑
3.5 设备 :暂时不考虑
3.6 局限性:暂时不考虑
如何写需求分析报告(软件需求说明书GB856T-88)
近来学校的一些科研项目又在申报了,一些学弟开始Q我一些软件工程上书面的问题。大概的总结了下,写到这里。本文涉及到的是需求分析部分的书写,主要是根据国家标准文档中的要求来的。
在互联网公司或者一些敏捷开发的公司里,其实大家都是秉承着重开发,重讨论,而轻文档的态度。这个轻文档并不是指没有文档或者几乎不做文档,而是在严格的文档流程中解脱出来,只把最最实际的部分写出来。这个特征是有互联网本身迭代周期短,版本发布快等特点决定的。而在实际的兼职项目的时候,同学们就要注意了,最重要的应该就是在签合同的时候一定要附上最清楚的一份需求分析,虽然这份需求说明可能不是按照某些标准文档而来的,描述清楚每个功能达到的效果,而这个效果一定要让客户点头确认,而不能出现“应该是”、“可能是”、“也许是”这样的模糊回答。否则在项目后期就会比较难过了。在学校申请的项目和大型公司项目开发中,是重视文档流程的,一部一部来。所以还是看情况来对待文档的深度和标准。
一、目录: 目录要用word的 “引用”—>”目录”,自动生成目录,一般都是要三级目录。通常这部分基本都不需要改结构,直接更新页码即可。
二、内容部分。 国家标准软件需求说明书G856T-88下载
1引言
1.1编写目的
说明编写这份软件需求说明书的目的,指出预期的读者。
(这部分说明需求分析报告的概况,例如:本X需求分析报告是为S系统而编写的。+S系统的两句话概述。+本X报告旨在使U1(需求者)明确S系统的要求和细节,给U2(开发人员)了解需求实现的难度和困难,最终提供给U3(审核人、管理者)讨论和审核,达到沟通效果)
1.2背景
说明:
a. 待开发的软件系统的名称;
b. 本项目的任务提出者、开发者、用户及实现该软件的计算中心或计算机网络;
c. 该软件系统同其他系统或其他机构的基本的相互来往关系。
(这部分可以将a,b,c分为2部分,例子如下:
1.2.1项目概况
本需求分析报告所预期开发的软件系统是:S。S是(不是则无)SS系统的某一个功能子模块,S和S1、S2等系统之间的联系,以及概述其他系统的状态等等。
1.2.2任务分配
a. 任务提出者:xxx
b. 软件开发者:xx
c. 产品使用者:xx
d. 文档编写者:xx
e. 预期产品使用者:xx
)1.3定义
列出本文件中用到的专门术语的定义和外文首字母组词的原词组。
(这部分很简单,就是描述专业词汇,比如
1. XML(Extensible Markup Language)即可扩展标记语言,它与HTML一样,都是SGML(Standard Generalized Markup Language,标准通用标记语言)。
2. Word2, 解释。。。
)1.4参考资料
列出用得着的参考资料,如:
a. 本项目的经核准的计划任务书或合同、上级机关的批文;
b. 属于本项目的其他已发表的文件;
c. 本文件中各处引用的文件、资料、包括所要用到的软件开发标准。 列出这些文件资料的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的来源。
2任务概述
2.1目标
叙述该项软件开发的意图、应用目标、作用范围以及其他应向读者说明的有关该软件开发的背景材料。解释被开发软件与其他有关软件之间的关系。如果本软件产品是一项独立的软件,而且全部内容自含,则说明这一点。如果所定义的产品是一个更大的系统的一个组成部分,则应说明本产品与该系统中其他各组成部分之间的关系,为此可使用一张方框图来说明该系统的组成和本产品同其他各部分的联系和接口。|
(本模块开发主要是为SS的整体服务,完成SS工作中的XX部分以及相关的工作。其涉及的范围就是,从下达A、B命令后,到给出C结果的过程。具体描述:B1,来完成B11功能;B2,来完成B22功能; 等等。本部分是(否)耦合在分词工具包其他部分中的,主要为嵌入方式和先后方式相互交互。
图图1. 该系统的组成同其他各部分的联系和接口
)2.2用户的特点
列出本软件的最终用户的特点,充分说明操作人员、维护人员的教育水平和技术专长,以及本软件的预期使甩频度。这些是软件设计工作的重要约束
(例如:二次开发和系统调用人员:具有很高的专业知识水平,理解XX的运行机制。可以对开放代码进行阅读和分析,以完成其系统独特的需求,提供给这部分用户开放API手册和Debug版本的源代码即可;预期这部分用户会占本系统总用户量的多大部分。
xx使用者:具有一定的计算机操作能力和知识,了解xx领域的相关概念和用途。提供给这部分用户操作手册即可。预期这部分使用者主要是来简单的xx操作。
维护人员:具有较高的计算机专业水平,可以对常见的系统Bug进行追踪和分析,具有一定的测试能力。 这部分用户主要是采用了本系统之后的后期工作维护者。
等等
)2.3假定和约束
列出进行本软件开发工作的假定和约束,例如经费限制、开发期限等。
(这部分重要是对你有的技术力量、资金状况、人力资源等情况的假设,以使得你可以在什么样的情况和时间范围内完成工作。工期约束,经费约束,人员约束,地理约束,设备约束等几个方面列举说明。)
3需求规定
3.1对功能的规定
用列表的方式(例如IPO表即输入、处理、输出表的形式),逐项定量和定性地叙述对软件所提出的功能要求,说明输入什么量、经怎样的处理、得到什么输出,说明软件应支持的终端数和应支持的并行操作的用户数。
(例如:
INPUT输入
PROCESS处理
OUTPUT输出
LOAD负载量 A
预处理,做怎样的动作,
AA
CC B
BBBB
Bb
v C
CCCC
cc
v 表一、xx模块IPO表
对IPO表的简单文字描述。
)3.2对性能的规定
3.2.1精度
说明对该软件的输入、输出数据精度的要求,可能包括传输过程中的精度。
(例如:
Xx目标处理:1Byt–10M,包括左右边界值。
yy精度范围:….
ZZ的精度:由于xx的特殊性,本系统均采用xx型来进行字符统计运算,概率部分以及其他比率部分精度精确到0.0x%。
)3.2.2时间特性要求
说明对于该软件的时间特性要求,如对:
a. 响应时间;
b. 更新处理时间;
c. 数据的转换和传送时间;
d. 解题时间;等的要求。
(这部分只要一一列举就可以:
由于xxx过程中,需要大量xxxx操作或怎样,故xx解题时间占总时间的最大部分。其次就是xx转换和存储的开销。其具体时间特性要求,如下:
a. xx响应时间:xxms左右;
b. yy更新处理时间:yy;
c. zz数据的转换和传送时间:zz;
d. vv解题时间:vv。
等等
)3.2.3灵活性
说明对该软件的灵活性的要求,即当需求发生某些变化时,该软件对这些变化的适应能力,如:
a. 操作方式上的变化;
b. 运行环境的变化;
c. 同其他软件的接口的变化;
d. 精度和有效时限的变化;
e. 计划的变化或改进。
对于为了提供这些灵活性而进行的专门设计的部分应该加以标明。
(这部分按列举来即可, 由于本模块第一目的是用于xxx,其次则是xxxx。故本模块的灵活性在于实际应用者的不同。当需求发生某些变化时,该软件对这些变化的适应能力。具体情况如下:
f. 操作方式上的变化:采用集成运行制和独立运行制两种模式,集成运行制是把本模块嵌入到分词工具包的主框架中,提供给用户具有一定UI的可操作软件;独立运行制是可以独立运行于后台,并提供给各种程序调用的模式的工作方式,以增强其生命力。
g. 运行环境的变化:主采用Windows平台的编译版本运行和调试,在时间允许的情况下,同步开发支持SUSE Linux的服务器版本。;
h. 同其他软件的接口的变化:在尽量保证接口不出现变动的情况下,允许接口的重载和再定义。但接口的命名规则是统一的;
i. 精度和有效时限的变化:精度在必须调整的条件下,可以上下浮动10个百分点;有效时限则依据现实的测试情况允许稍大范围的变化。
j. 计划的变化或改进:工作时间安排会存在必然的浮动,这部分要协同分词工具包课题设计组其他成员一同来进行商定,前期的计划可以稍微有些变动,后期的安排尽量按照计划执行。
等等
)3.3输人输出要求
解释各输入输出数据类型,并逐项说明其媒体、格式、数值范围、精度等。对软件的数据输出及必须标明的控制输出量进行解释并举例,包括对硬拷贝报告(正常结果输出、状态输出及异常输出)以及图形或显示报告的描述。
(这部分可以把输入输出分为 3.3.1输入要求和3.3.2输出要求,如下给出一个单元的例子。
XXX输出
数据名称:XXX输出数据
实际含义:用于XX,表示XXXX
数据类型:Character(字符串)
数据格式:XX
数据约束:由于xxx,,大小在xx以内
)3.4数据管理能力要求
说明需要管理的文卷和记录的个数、表和文卷的大小规模,要按可预见的增长对数据及其分量的存储要求作出估算。
(根据实际系统要求列举即可
Name名称
Number数量
Size大小
Increase增长 词典xx
xx
xxxx
并行执行,其大小依据实际xx大文本而增长 )
3.5故障处理要求
列出可能的软件、硬件故障以及对各项性能而言所产生的后果和对故障处理的要求。
(包括软件压力,内存不足,硬件损坏等,这部分可以根据百度到其常见故障。)
3.6其他专门要求
如用户单位对安全保密的要求,对使用方便的要求,对可维护性、可补充性、易读性、可靠性、运行环境可转换性的特殊要求等。
(例如安全保密性:密钥更换等; 预期扩展:扩展兼容等;OS更换:Slackware转SUSE等
)4运行环境规定
4.1设备
列出运行该软件所需要的硬设备。说明其中的新型设备及其专门功能,包括:
a. 处理器型号及内存容量;
b. 外存容量、联机或脱机、媒体及其存储格式,设备的型号及数量;
c. 输入及输出设备的型号和数量,联机或脱机;
d. 数据通信设备的型号和数量;
e. 功能键及其他专用硬件
(列举说明即可)
4.2支持软件
列出支持软件,包括要用到的操作系统、编译(或汇编)程序、测试支持软件等。
(操作系统和版本:xxxx
支撑环境和版本:xxxx
备用IDE环境和版本:xxxx
与该软件有关的软件组件:xxxx
后续可能扩展环境:xxxx
)4.3接口
说明该软件同其他软件之间的接口、数据通信协议等。
(例如:
a.用户和主程序调用接口(图中接口1)。这个接口采用封装API形式和函数调用形式,分别以外部调用和内部调用的方式为不同用户提供使用本机械分词工具的入口。例如以xxxx方式调用DLL文件,以xxxx方式调用函数。如下图2所示。
图2.软件接口调用图
b.xx接口(图中接口2)。这里是一个xxx的接口调用过程。xxxx
)4.4控制
说明控制该软件的运行的方法和控制信号,并说明这些控制信号的来源。
(例如:
下面通过图表的形式,将本模块以及涉及到本模块的软件模块的运行方法、控制信号,以及这些控制信号的来源,其中箭头所指方向对应的模块的控制信号来自箭头另一方向的模块,具体情况如下:
图3 .控制流程图
图3的具体说明情况如下表所示:
Name模块名称
Method运行方式
Signal控制信号
Forward控制去向 主程序模块
运行框架
用户调用或运行
1. 调用xx模块
2. 调用xx方法
3. 调用标准输出模块 xxx模块
xxx
xxx调用
Xxx模块 )
附录: 软件设计文档国家标准(GB8567–88)软件设计文档国家标准(GB8567–88)GB8567——88
操作手册(GB8567——88).doc 数据库设计说明书(GB8567——88).doc
测试分析报告(GB8567——88).doc 数据要求说明书(GB856T——88).doc
测试计划(GB8567——88).doc 图1.doc
概要设计说明书(GB8567——88).doc 文件给制实施规定的实例(GB8567-88).doc
开发进度月报(GB8567——88).doc 详细设计说明书(GB8567——88).doc
可行性研究报告(GB8567——88).doc 项目开发计划(GB856T——88).doc
模块开发卷宗(GB8567——88).doc 项目开发总结报告(GB8567——88).doc
软件需求说明书(GB856T——88).doc 用户手册(GB8567——88).doc