资源描述
基于软件开发测试方法及分析系统设计文档
一、软件开发定义
软件开发是依据用户要求建造出软件系统或系统中软件部分过程。软件开发是一项包含需求捕捉,需求分析,设计,实现和测试系统工程。软件通常是用某种程序设计语言来实现。通常采取软件开发工具能够进行开发。软件分为系统软件和应用软件。 软件并不只是包含能够在计算机上运行程序,和这些程序相关文件通常也被认为是软件一部分。 软件设计思绪和方法通常过程,包含设计软件功效和实现算法和方法、软件总体结构设计和模块设计、编程和调试、程序联调和测试和编写、提交程序。
二、软件开发特点
(一)、综合布局
对所要处理问题进行总体定义,包含了解用户要求及现实环境,从软件开发技术、经济和社会原因等3个方面研究并论证本软件项目标可行性,编写可行性研究汇报,探讨处理问题方案,并对可供使用资源成本,可取得效益和软件开发进度作出估量。制订完成软件开发任务实施计划。
基础步骤说明:
项目开启: 本阶段关键是进行可行性分析,定义项目,识别需求;
制订计划: 本阶段关键是计划策划,估算工作量,制订具体可实施计划;
计划实施: 本阶段关键是实施计划,完成计划中各项任务,汇报计划状态;
项目终止: 计划实施完成,总结项目;
(二)、各阶段衔接逻辑规范化
软件需求分析就是回复做什么问题。它是一个对用户需求进行去粗取精、去伪存真、正确了解,然后把它用软件工程软件开发语言(形式功效规约,即需求规格说明书)表示出来过程。本阶段基础任务是和用户一起确定要处理问题,建立软件逻辑模型,编写需求规格说明书文档并最终得到用户认可。需求分析关键方法有结构化分析方法、数据步骤图和数据字典等方法。本阶段工作是依据需求说明书要求,设计建立对应软件系统体系结构,并将整个系统分解成若干个子系统或模块,定义子系统或模块间接口关系,对各子系统进行具体设计定义,编写软件概要设计和具体设计说明,数据库或数据结构设计说明书,组装测试计划。
软件需求分析就是对开发什么样软件一个系统分析和设想。在任何软件或系统开发初始阶段必需先完全掌握用户需求,以期能将紧随系统开发过程中哪些功效应该落实、采取何种规格和设定哪些限制优先加以定位。系统工程师最终将据此完成设计方案,在此基础上对随即程序开发、系统功效和性能描述及限制作出定义。
(三)、结构化设计
软件设计能够分为概要设计和具体设计两个阶段。实际上软件设计关键任务就是将软件分解成模块是指能实现某个功效数据和程序说明、可实施程序程序单元。能够是一个函数、过程、子程序、一段带有程序说明独立程序和数据,也能够是可组合、可分解和可更换功效单元。模块,然后进行模块设计。概要设计就是结构设计,其关键目标就是给出软件模块结构,用软件结构图表示。具体设计首要任务就是设计模块程序步骤、算法和数据结构,次要任务就是设计数据库,常见方法还是结构化程序设计方法。
(四)、定时升级管理
软件编码是指把软件设计转换成计算机能够接收程序,即写成以某一程序设计语言表示"源程序清单"。充足了解软件开发语言、工具特征和编程风格,有利于软件开发工具选择和确保软件产品软件开发质量。
目前软件开发中除在专用场所,已经极少使用二十世纪80年代高级语言了,取而代之是面向对象软件开发语言。而且面向对象软件开发语言和软件开发环境大全部合为一体,大大提升了软件开发速度。
(五)、误差最小化
软件测试目标是以较小代价发觉尽可能多错误。要实现这个目标关键在于设计一套出色测试用例(测试数据和预期输出结果组成了测试用例)。怎样才能设计出一套出色测试用例,关键在于了解测试方法。不一样测试方法有不一样测试用例设计方法。两种常见测试方法是白盒法测试对象是源程序,依据是程序内部逻辑结构来发觉软件编程错误、结构错误和数据错误。结构错误包含逻辑、数据流、初始化等错误。用例设计关键是以较少用例覆盖尽可能多内部程序逻辑结果。白盒法和黑盒法依据是软件功效或软件行为描述,发觉软件接口、功效和结构错误。其中接口错误包含内部/外部接口、资源管理、集成化和系统错误。黑盒法用例设计关键一样也是以较少用例覆盖模块输出和输入接口。
(六)、精细维护
维护是指在已完成对软件研制(分析、设计、编码和测试)工作并交付使用以后,对软件产品所进行部分软件工程活动。即依据软件运行情况,对软件进行合适修改,以适应新要求,和纠正运行中发觉错误。编写软件问题汇报、软件修改汇报。
一个中等规模软件,假如研制阶段需要十二个月至二年时间,在它投入使用以后,其运行或工作时间可能连续五年至十年。那么它维护阶段也是运行这五年至十年期间。在这段时间,大家几乎需要着手处理研制阶段所碰到多种问题,同时还要处理一些维护工作本身特有问题。做好软件维护工作,不仅能排除障碍,使软件能正常工作,而且还能够使它扩展功效,提升性能,为用户带来显著经济效益。然而遗憾是,对软件维护工作重视往往远不如对软件研制工作重视。而实际上,和软件研制工作相比,软件维护工作量和成本全部要大得多。
在实际软件开发过程中,软件开发并不是从第一步进行到最终一步,而是在任何阶段,在进入下一阶段前通常全部有一步或几步回溯。在测试过程中问题可能要求修改设计,用户可能会提出部分需要来修改需求说明书等。
软件开发步骤图以下:
软件设计功效叙述
系统逻辑设计
依据软件产品需求规格说明书和软件产品数据字典建立系统逻辑模型。此种模型临时和系统物理原因(比如:计算机、数据库管理系统)无关。它是系统需求和物理实现中间结构,它关键结果是建立在系统结构图、系统界面结构图、系统犯错处理、和系统开发技术说明。
系统结构图:
系统组织设计
系统组织设计经过系统组织表描述本系统由哪些子系统(模块)组成,这些子系统和业务职能之间关系,和各个子系统安装地点。系统组织表格式以下:
子系统编号
英文名称
汉字名称
业务职能
安装地点
备注
其中:
子系统编号
给出本系统中指定子系统次序编号。假如本系统末划分为多个子系统,仅由一个运行模块组成;则本项内容仍需要描述,不过本表内容只有一行。
说明:在一个系统中有可能安装若干个相同子系统,在这种情况下,应该视为一个子系统,而且对多个安装地点分别进行描述。假如相同子系统经过系统设置,实现业务职能含有显著差异时,应该采取多行进行分别描述,而且在备注中说明其差异所在。
子系统英文名称
给出本子系统英文名称,该名称是在应用软件中实际使用可实施文件名称,必需能够说明该子系统特点。
若本系统中只有一个子系统,则本项内容仍需要描述,不过本表内容只有一行。
子系统汉字名称
给出本子系统汉字名称,该名称必需能够说明该子系统特点。
若本系统中只有一个子系统,则本项内容仍需要描述,不过本表内容只有一行。
业务职能
描述该子系统完成关键业务。
安装地点
描述该子系统实际安装部门、或某个具体地点。
备注
针对该子系统,需要说明其它相关问题。
系统结构设计
本节将对系统特征作较为具体描述,并给出系统特征结构图。
系统特征表
系统特征是系统中完成某项具体操作基础单元,它由入口参数,出口参数和处理过程三部分组成。
系统特征能够含有操作界面,也能够没有操作界面;能够被其它操作界面、或系统特征调用,也能够调用其它操作界面、非操作界面、或系统特征;不过不许可递归调用(调用自己),包含间接递归调用。
当系统由多个子系统(模块)组成时,每个子系统分别使用一张系统特征表进行描述。系统特征表格式以下:
子系统编号:
子系统英文名称:
子系统汉字名称:
特征编号
系统特征
英文名称
系统特征
汉字名称
操作功效
调用对象
被调用
对象
备注
说明:
其中
子系统编号
含义同上。
子系统英文名称
含义同上。
子系统汉字名称
含义同上。
特征编号
整个系统全部特征统一编号。
系统特征英文名称
系统特征英文正式名称,未来用于软件开发中,必需符合命名规范。
系统特征汉字名称
系统特征汉字正式名称,起源于需求规格说明书中,系统特征一节中相关描述。
操作功效
是指该特征实际完成操作说明。
调用对象
是指调用该系统特征系统对象,这里系统对象能够是系统特征、也能够是操作界面。
被调用对象
是指被该系统特征调用系统对象,这里系统对象能够是系统特征、也能够是操作界面。
说明:一些较低层系统特征,可能不存在被调用对象。
备注
描述和该系统特征相关其它注意事项。
说明
描述和该系统特征表相关其它注意事项。
系统特征结构图
系统特征结构图给出系统特征在逻辑层面上相互之间关系,其关键依据起源于需求规格说明书中,系统特征一节中相关描述。
假如系统划分为多个子系统,应分别给出系统和子系统、和各个子系统和系统特征结构图。
绘制系统和子系统结构图时,通常不需要描绘出系统特征,假如确有必需,尽可能只画出第一层系统特征。绘制子系统和系统特征结构图时,通常也不需要描绘出第二层系统特征,假如确有必需能够画出,不过尽可能不要画出第三层系统特征。
1.3系统接口设计
系统接口是一个非可视系统界面,在多数情况下,它对用户是透明。
本节将对系统接口作较为具体描述,并给出接口说明清单。
系统接口表
接口作为系统一个输入/输出形式,分为网络接口、数据库接口、RS-232串行通讯接口、IEEE—485串行总线接口、并行I/O接口等等多个类型。
对于部分为可视界面服务接口,比如:打印机接口、显示器接口等,因为这类接口对应用软件是透明,所以不在本节描述范围内。
当系统由多个子系统(模块)组成时,每个子系统分别使用一张系统接口表进行描述。系统接口表格式以下:
子系统编号
子系统英文名称
子系统汉字名称
接口
编号
接口
名称
接口
类型
接口
性质
接口
速率
接口
协议
备注
说明:
其中:
子系统编号
含义同上。
子系统英文名称
含义同上。
子系统汉字名称
含义同上。
接口编号
整个系统全部接口统一编号。
接口名称
系统接口正式名称,必需符合通常习惯。
接口类型
指出该接口所传输数据在该模块中起到作用。
接口性质
指出该接口在通讯中起到作用,这里作用能够是:
输入;
输出;
双向。
接口速率
指出该接口传输速率。假如该接口依靠于其它通讯方法,那么传输速率将不高于它所依靠其它通讯方法速率。
接口协议
给出该接口实际使用通讯协议。
相关对象
给出直接使用本接口系统对象,这里系统对象,能够是操作界面,也能够是系统特征。
备注
描述和该系统接口相关其它注意事项。
说明
描述和该系统接口表相关其它注意事项。
系统接口传输协议说明
逐项具体描述系统接口表中所列出各个系统接口使用传输协议,和其它相关内容,比如:驱动程序、动态连接库、等等。
1.4系统完整性设计
描述系统对象(数据元、数据类),所受到逻辑约束关系。
当系统由多个子系统(模块)组成时,每个子系统应分别使用一张系统完整性约束表进行描述。系统完整性约束表格式以下:
子系统编号
子系统英文名称
子系统汉字名称
约束编号
完整性名称
相对对象名
约束表示式
备注
说明:
其中:
子系统编号
含义同上。
子系统英文名称
含义同上。
子系统汉字名称
含义同上。
约束编号
整个系统全部约束统一编号。
完整性名称
系统完整性约束正式名称,必需符合通常习惯。
相对对象名
完整性约束中相关对象(数据元和数据类)。
约束表示式
用一阶逻辑表示式表示约束方程式。
备注
描述和该系统完整性约束相关其它注意事项。
说明
描述和该系统完整性约束表相关其它注意事项。
系统犯错处理设计
本节描述系统发生外界及内在错误时,所提供错误信息及处理方法,它包含系统犯错处理表及维护处理过程表。
系统出表错处理
本表给出相关犯错处理产生原因、提醒信息、和提议处理方法。
当系统由多个子系统(模块)组成时,每个子系统分别使用一张系统犯错处理表进行描述。系统犯错处理表格式以下:
子系统编号:
子系统英文名称:
子系统汉字名称:
错误编号
错误名称
错误原因
错误信息
处理方法
备注
说明:
其中:
子系统编号
含义同上。
子系统英文名称
含义同上。
子系统汉字名称
含义同上。
错误编号
整个系统全部错误统一编号。
错误名称
错误正式名称,该名称应该是常见,而且为大家所普遍接收。
错误原因
对该错误产生原因解释和说明。
错误信息
产生该错误时,向用户发出提醒信息。
处理方法
对该错误处理一个提议,此项许可缺省。
备注
描述和该系统错误相关其它注意事项。
说明
描述和该系统错误表相关其它注意事项。
维护处理过程表
系统犯错时,将调用维护处理过程对错误进行处理,相关维护处理过程各项内容由维护处理过程表进行描述。
当系统有多个子系统(模块)组成时,每个子系统分别使用一张维护处理过程表进行描述。维护处理过程表格式以下:
子系统编号:
子系统英文名称:
子系统汉字名称:
错误编号
处理过程
处理过程
处理功效
入口参数
出口参数
备注
英文名称
汉字名称
说明:
其中:
子系统编号
含义同上。
子系统英文名称
含义同上。
子系统汉字名称
含义同上。
错误编号
含义同上。
处理过程英文名称
系统维护处理过程英文正式名称,未来用于软件开发中,必需符合命名规范。
处理过程汉字名称
系统维护处理过程汉字正式名称,是系统维护处理过程英文名称汉字说明。
处理功效
描述本维护处理过程对错误处理方法。
因为一个维护处理过程有可能含有对多个错误进行处理能力,所以该处理功效
必需是针对本项错误编号。
入口参数
进行本项错误处理时,赋给维护处理过程入口参数。
出口参数
进行本项错误处理时,维护处理过程返回出口参数。
备注
描述和该系统错误相关其它注意事项。
说明
描述和该系统错误表相关其它注意事项。
技术设计
系统技术设计描述系统各个特征实际使用开发技术,和具体开发技术使用时应该注意事项。
系统开发技术说明表
本表描述系统各个特征开发时实际使用具体技术,只有部分不太常见技术需要在这里描述。部分常见技术,比如:经过数据库接口调用存放过程,则无须冗述。
当系统由多个子系统(模块)组成时,每个子系统分别使用一张系统开发技术说明表进行描述。系统开发技术说明表格式以下:
子系统编号:
子系统英文名称:
子系统汉字名称:
技术编号
开发技术
开发技术
处理功效
系统特征编号
备注
英文名称
汉字名称
说明:
其中:
子系统编号
含义同上。
子系统英文名称
含义同上。
子系统汉字名称
含义同上。
技术编号
这个系统所使用多种技术统一编号。
开发技术英文名称
该开发技术英文正式名称,可方便用缩写。
该名称应该是常见,而且为大家所普遍接收。
开发技术汉字名称
该开发技术汉字正式名称,是该开发技术英文名称汉字说明。
该名称应该是常见,而且为大家所普遍接收。
处理功效
描述本开发技术处理目标。
系统特征编号
含义同上。
因为一项开发技术可能在多处使用,所以针对一项开发技术,有可能存在多个系
统特征编号,在此必需一一列出。
备注
描述和该系统开发技术相关其它注意事项。
说明
描述和该系统开发技术说明表相关其它注意事项。
开发技术应用说明
逐项具体描述系统开发技术说明表中所列出各项系统开发技术使用技术关键点,和其它相关内容,比如:所需服务、使用动态连接库、调用组件、等等。
数据库设计
假如该软件产品需要使用数据库,不管是使用数据库平台支撑,还是采取由软件产品开发者自行定义;全部应该在完成软件产品需求分析汇报后,开始进行软件产品具体设计之前,根据软件产品数据库设计说明文档模板完成数据库设计工作。
数据库物理结构设计
本系统设备之间物理结构图;
给出本系统内所使用每个数据结构中每个数据项存放要求,访问方法、存取单位、存取物理关系(索引、设备、存放区域)、设计考虑和保密条件。
数据库逻辑结构设计
给出本系统内所使用每个数据结构名称、标识符和它们之中每个数据项、统计、文卷和系标识、定义、长度及它们之间层次或表格相互关系。
数据对象之间ER图。
展开阅读全文