软件测试工程师管理系统需求分析报告─本资料原文由北大青鸟提供版本说明日期版本号发布说明作者2006.10.22V1.0实现了工程师管理系统的基本功能贾彬2006.10.29V2.11.改变了原有程序的判断机制,采用%s接受输入数据使得判断更加充分,基本可以对任何的非法输入做出正确的判断。2.修改了图形界面用各种字符美化界面使得界面更加友好易于用户接受。3.修正了以前版本中的一些错误逻辑并且优化了算法使得程序运行更加高效贾彬2006.10.30V2.2添加了密码登陆功能。贾彬2006.11.02V2.31.精简了一部分代码并对保存到文件做了处理使得被保存的文件变成乱码提高安全性。2.针对保存的改变载入部分也做了相应的处理。贾彬2006.11.03V2.41.改善了打印模块的功能,增加了按编号打印工资表,信息表和全体工程的工资表,信息表。2.将打印的信息直接输出到.doc文件方便用户打印使用。3.在打印功能中还加入了可选的打印预览贾彬2006.11.06V2.5增加了一般用户登陆功能,限制了其一些权限,并添加了重新登陆选项。贾彬2006.11.06V2.6更改了计算全体工资和打印全体工资中的错误。贾彬2006.11.07V2.71.更正了性别输入没有跳出的错误。2.更正了工资输入的算法错误。3.更正了打印输出中的错误。4.修正了登陆中的错误,并使用户输入的密码变成*号。贾彬2006.11.08V3.0将功能模块细分为更小的模块方便查找和维护。贾彬1.编写目的本软件需求规格说明的目的在于为《软件测试工程师管理系统》项目的开发提供:提出软件总体要求,作为软件开发人员和最终使用者之间相互了解的基础;提出软件功能要求、性能要求、接口要求、数据结构等要求,作为软件设计和程序编制的基础;为软件测试提供依据。本软件需求规格说明的读者对象主要是项目主管软件设计人员和最终用户。引言2.项目背景该项目的实施主要是为提高北京梅梅公司的人事管理效率而编制的3.参考资料《软件测试工程师管理项目条款》—北京梅梅公司项目概述1.软件总体说明本项目的目标是完成一个计算机人事管理系统,系统的功能主要包括:分权限的登陆、录入工程师信息、修改录入信息、查询信息删除信息清空信息浏览录入信息计算工资保存到文件从文件导入生成工程师信息报表和工资报表(直接生成WORD文档可直接打印)等进入本系统提供用户选择菜单要求人机界面友好具有错误处理和故障恢复能力2.总体数据流图按照功能设计,系统数据流图如下:本软件的最终运行环境是DOS5.0,Windows95/98/2000/me/NT/XP等环境上,要求有中文平台或操作系统为中文的计算机上,配有一台打印机。运行软件系统所需的设备能力一台微机:主频=100,硬盘=1M,内存=1M;一台打印机;支持软件环境操作系统:DOS5.0以上,或Windows95/98/2000/me/NT/XP。开发环境:MicrosoftVisualC++6.0;接口该系统硬件和软件与外界软件没有接口,也不需要网络环境;在界面上,要求使用DOS菜单选择,用户可以随时选择菜单进行;在操作上,要求操作简单,通过少数的选择菜单或单击按钮即可完成操作;在系统运行任何阶段,提示给用户当前系统的状态。3.运行环境软件测试工程师管理系统删除指定工程师资料查询指定工程师资料修改指定工程师资料计算工程师月薪水保存工程师资料对工程师资料进行排序输出工程师资料清空所有工程师资料打印工程师资料信息报表从文件重新取工程师信息分权限的登陆退出系统输入工程师资料4.功能需求根据系统功能的需要,对系统的功能进行划分,表示如下图:图二:软件测试工程师管理系统功能下面详述每一项功能的要求:4.2.1输入工程师资料工程师的资料主要包括:编号、姓名、性别、生日、籍贯、学历、地址、电话、工龄、基本薪水。要求:编号为数字,编号使用4为位数字,格式为0001、0002….,不能重复。姓名:为字符,最长不超过20个字符。不能为空。性别:用数字表示0表示女,1表示男。不能为其它数值。生日:用数字分别表示年、月、日。格式例如年使用四位数字表示范围是(1900,2004)月使用1-12表示,日使用1-31表示。籍贯:使用字符表示,最长不超过10个字符。不能为空。学历:使用数字表示高中0、学士1、硕士2、博士3、其它为4。不能为其它数字。地址:使用字符表示,最长不超过30个字符。不能为空。电话:使用字符表示,最长不超过15个字符。不能为空。工龄:使用数字表示,工龄范围是(0,50]。基本薪水:为实型,不能为0。对这些输入的信息进行合法性检查。保证系统接收合法的输入。用户输入错误时具有提示功能和重新输入功能。4.2.2删除指定工程师资料可根据工程师的编号删除指定工程师资料。删除资料后,该工程师的信息则完全在系统中删除了。其后若有信息则后面的信息自动向前移动,其它工程师编号不变。4.2.3查询指定工程师资料可根据两种方式查询指定工程师资料:一是工程师的编号二是工程师的姓名查询后打印该工程师的信息,如果没有该工程师资料则给用户提示。4.2.4修改指定工程师资料可根据用户输入的工程师编号显示工程师的信息并根据选择条目代号的方式进行相应条目的修改,修改后立即显示修改后的信息按“0”返回主菜单。4.2.5计算工程师月薪水可根据两种方式计算工程师的月工资:一是计算全体工程师的工资二是按编号计算单个工程师的工资根据当月的月效益,计算工程师的当月工资。在计算机工资时要扣除当月的保险金。计算薪水的算法如下:程师的月应发的薪水如下计算方法:薪水=(基本工资+10╳月有效工作日天数+月效益╳工作年限÷100)╳0.9-月保险金4.2.6保存工程师资料当用户输入工程师资料、修改、删除、清空后需要用户决定是否保存工程师资料。如果用户不保存,则默认输入和修改等不做保存。4.2.7输入工程师资料对工程师资料进行排序,排序使用三种方式:编号排序(升序)姓名排序(升序)工龄排序(降序)采用哪种排序方式,由用户选择。4.2.8输出工程师资料按每页显示一名工程师信息的方式,打印所有的工程师资料。4.2.9清空所有工程师资料把所有的工程师资料删除,可以重新输入工程师资料。4.2.10打印工程师资料信息报表可分为四种格式:一生成全体工程师信息报表二生成全体工程师工资报表三生成需要的工程师信息报表四生成需要的工程师工资报表4.2.11从文件重新得到工程师资料这项功能主要是为了用户进行某些操作后,没有保存到文件前,可以从文件重新得到这些数据信息,使用户的操作不起作用。4.2.12分权限的登陆当用户登陆系统时会根据用户输入密码的不同而具有不同的权限,从而防止有人恶意修改数据。4.2.13退出系统当用户不再使用该系统后,可退出该系统。如果用户进行了影响工程师资料信息的操作,提示用户是否进行保存。5.数据需求软件测试工程师资料数据类型和说明成员类型说明编号整型用四位数字表示。例如:0001姓名字符0表示长度=20性别整型(枚举)2表示女、1表示男出生日期可使用结构体年四个数字(19002004)、月两个数字(1-12)、日(1-31)学历整型(枚举)1高中2学士3硕士4博士5其它籍贯字符0表示长度=10地址字符0表示长度=30电话字符(数字或-)0表示长度=15,有分机时在后面使用’-’接分机号工龄整型0工龄50基本工资实型0工资其它数据需要:月效益:实型月保险金:实型月工资:实型保存工程师资料文件:在当前目录下,名称为engineer.txt,为文本格式。输出报表:在当前目录下,名称为report.txt,为文本格式。