《软件需求工程大作业(15页).doc》由会员分享,可在线阅读,更多相关《软件需求工程大作业(15页).doc(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-软件需求工程大作业-第 6 页目录论文要求:1一、项目开发计划21、引言22、项目概述23、实施计划44、支持条件55、专题计划要点66、交付期限6二、需求获取71、确定需求开发计划72、建立项目范围和目标73、确定调查对象74、实地收集用户需求信息75、确定非功能需求和约束条件7三、需求分析81、建立系统关联图82、分析需求可行性93、确定需求的优先级94、需求过程95、建立数据字典12四、需求规格说明书131、引言132、综合描述143、外部接口需求154、系统特性155、其他非功能需求166、其他需求17五、附录18A、词汇表181821六、总结与感悟23本科课程论文评分标准25论文要
2、求:()对所选系统进行严密的需求获取以及需求分析。()给出所选系统的各层次需求,包括业务需求,用户需求,功能需求以及非功能需求。()论文中给出所要实现系统的需求规格说明书。()需求规格说明书要详尽,必须包括以下内容:引言,总体描述,功能需求,接口需求以及其它非功能性需求等,符合需求规格说明书各项细则。()附录中给出所选系统需求规格说明书中各图表, 或者图表的获取过程. 例如数据字典的具体描述或者是UML建模中图的获取过程。(6)请根据自己的理解与体会谈谈软件需求工程过程的重要性。也可以以软件需求工程中某知识点谈谈自己的理解与看法。一、项目开发计划1、引言 为了能高效的,有计划设计企业人事管理系
3、统,此项目计划书目的是让软件程序设计人员能确定详细的项目实施范围、定义递交的工作成果、评估实施过程中的主要风险、制定项目实施的进度计划、成本和预算计划、人力资源计划等。本报告的主要作用是确定各个项目模块的设计情况和主要的负责人的负责任务,以便每个项目模块的负责人阅读,做到及时协调,按步有序进行项目的开发.减少设计中的不必要损失。进而能更好的更高效的完成本系统的开发。(1)项目名称:公司人事管理系统(2)项目任务提出者:12软件 范维(3)项目开发者:XX团队(4)用户:XX公司人事管理部门(5)实现软件中心:XX软件设计中心(6)项目与其他软件或其他系统的关系 此系统仅是总系统中的一个组成部分
4、,该系统与企业的员工培训管理系统、考勤管理系统、工资管理系统等系统存在数据共享等关系。与其他数据库可以建立链接,为其他模块相应功能的实现提供信息来源和依据。 1.3参考资料 软件工程导论(第5版) 编著:张海藩 出版社:清华大学出版社软件需求工程 编著:毋国庆 梁正平 袁梦霆 李勇华 出版社:机械工业出版社 2、项目概述(1)定义阶段:此阶段主要是立项和需求分析和计划部分,需要做出的报告和计划书:项目立项报告需求定义书、项目开发计划、配置管理计划、测试计划;(2)开发阶段:此阶段主要是设计、编码和测试三个部分,各个部分需要做出相应的设计书或说明书:系统结构图、概要设计说明书、详细设计书、数据库
5、设计说明书、数据库设计规范、测试报告书;(3)维护阶段:此阶段主要是运行和维护部分需要做出的说明书:用户操作手册和项目部署手册。XX团队系统名称:企业人事管理系统使用的语言:C+ 存储形式:磁盘 项目计划书,可行性研究报告,需求分析报告,概要设计说明书,详细设计文档,测试分析报告,测试计划文档,项目开发总结报告书,系统问题报告 (1)用户登录功能(2)人事部门信息发布功能(3)系统管理功能(4)员工管理功能(5)员工自助功能2.3.4非移交的产品 项目组内部的文档:有需求规格说明书,概要设计说明书、详细设计说明书、源代码清单、代码接口说明、测试策略、测试计划、系统测试用例、缺陷报告和最终测试结
6、果报告。 系统能正常运行且功能能达软件需求说明书中定义的全部功能、性能、可靠性等需求。整个系统是否达到客户的要求,且试运行阶段不会出现两次以上故障。2.5 完成项目的最迟期限2015年6月1日2.6 本计划的批准者和批准日期2014年11月20日3、实施计划 任务阶段具体任务划分描述负责人计划阶段项目开发计划测试用例计划配置管理计划需求分析阶段调研分析系统主要任务需求规定运行环境规定需求定义书设计阶段 接口设计、概要设计、系统出错处理设计、概要设计说明书结构设计、数据库设计、运行设计、数据库设计说明书实现阶段数据库实现模块终端控制模块数据同步模块后天管理中心控制模块测试与维护界面测试与数据确认
7、测试接口测试与代码走读集成测试测试报告书项目交付与技术支持用户培训用户使用手册项目部署手册(1)负责本项目同用户的接口人员:XXX (2)负责本项目同本单位计划管理部门接口人员:XXX(3)负责本项目同本单位财务部门接口人员:XXX(4)负责本项目同本单位质量管理部门接口人员:XXX (5)负责本项目同各分合同负责单位的接口人员:XXX 编号任务阶段开始日期完成日期所需资源标志性事件1 计划阶段2 需求分析阶段3 设计阶段4实现阶段5测试与维护6项目交付与技术支持总体预算10,000如何提高系统的运行效率以及可靠性,应采用高效率搜索算法以及模块化设计,减少各模块之间的耦合。对于数据库设计,应尽
8、量减少数据冗余。4、支持条件 团队成员:N人硬件设备:电脑N台软件设备:Microsoft XP、SqlSever2005本系统打算使用Adobe Dreamweaver CS3作为界面和功能开发工具,使用MySQL作为后台数据库,并利用其提供的各种面向对象的开发工具进行界面和数据库开发。系统开发过程要结合快速原型模型与增量模型的优点:首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成可行系统。用户需要明确的需求说明,当有需求改动的时候需要及时提醒。无5、专题计划要点 (1)数据库模块设计(2)数据库操作模块的实现(3)网络同步模块的设计(4)网络同步模
9、块模型的实现(5)客户终端程序接口的设计与实现(6)后台控制中心接口设计与实现6、交付期限2015年6月1日二、需求获取1、确定需求开发计划 对于一个公司主管来说,管理整个公司是非常困难的事情。人员复杂,变数很大。为了让一个公司的管理更加有条理,需要一个软件将所有人员信息记录,并能做出及时修改,相信很多公司都需要这样一个软件,增加公司的管理水平与工作效率。2、建立项目范围和目标(1)开发商角度: a.为客户提供便利的人事管理系统 b.将产品的功能做的齐全 c.简洁有效的产品来吸引更多的客户 d.产品的高可靠性来赢得更好的口碑(2) 开发人角度 a.使用更先进的开发技术 b.建立更完善更健全的系
10、统(3) 使用者的管理层角度 a.对公司管理更为方便快捷 b.有效地记录员工奖惩状况与假期加班情况3、确定调查对象可选择的调查对象:公司的一些基层员工公司管理部门经理公司总经理4、实地收集用户需求信息实地收集需要分析员体验公司工作环境,长期收集后得到较好的信息。此分析过于麻烦,本此分析将不使用。5、确定非功能需求和约束条件安全性:公司成员信息是公司机密,一旦泄露将有可能造成非常大的损失,所以安全性是本软件必须考虑的需求可维护性:如果一次故障造成整个系统瘫痪,这将导致整个公司的人员管理遇到障碍。系统需要能被及时纠正,以便不妨碍整体的其他部分的工作。三、需求分析1、建立系统关联图2、分析需求可行性
11、 本软件应考虑的几项软件风险类型:性能风险:中,软件主要为数据管理功能安全风险:高,安全风险较为重要,这关系到一个企业的利益与机密过程风险:中实现技术风险:中数据库风险:高,数据库是一个公司的机密,尤其是工资和人员分配等 日程风险:低外部接口风险:中稳定风险:高3、确定需求的优先级软件需求优先级从高到低的排序:员工资料人事管理统计管理系统管理工资管理4、需求过程(1)系统操作简单,界面友好。(2)规范、完善的基础信息设置。(3)支持多人操作,可以将权限进行分配。(4)系统支持多条件查询。(5)对员工信息在需要时打印不同需要的报表。(6)支持数据更新与改变。(7)系统存有原始数据,防止丢失。4.
12、2用户需求:(1)用户注册:主要实现员工的注册,创建自己的帐户密码(2)用户登录:登陆应用程序查看自己的信息(3)修改密码:修改用户自己的密码(1)员工调动:查看修改员工的调动信息(2)基本信息:统计与查询员工基本信息(3)员工考评:记录员工考评信息(4)人员调薪:管理员工的薪水调整(5)职称评定:评定和记录员工的职称信息(6)培训管理:管理员工的培训信息 (7)报表输出:将需要的信息以报表形式输出打印 (8)数据备份:管理员备份数据 (9)数据恢复:病毒,黑客等破坏数据库后对数据进行恢复 (10)系统管理:主要对用户的密码、管理权限的设置等。4.3.1员工信息:统计与查询员工基本信息4.3.
13、2调薪信息:管理员工的薪水调整4.3.3培训信息:管理员工的培训信息4.3.4考评信息:记录员工考评信息4.3.5奖惩信息:记录员工奖惩信息(1)软件必须严格按照设定的安全权限机制运行,并有效防止非授权用户进入 本系统。(2)软件必须提供对系统中各种码表的维护、补充操作。(3)软件必须按照需求规定记录各种日志。(4)软件对用户的所有误操作或不合法操作进行检查,并给出提示信息。(5)用户必须对系统中的材料成本信息进行维护,以便软件能取得5、建立数据字典四、需求规格说明书1、引言对于一个公司主管来说,管理整个公司是非常困难的事情。人员复杂,变数很大。为了让一个公司的管理更加有条理,需要一个软件将所
14、有人员信息记录,并能做出及时修改,相信很多公司都需要这样一个软件,增加公司的管理水平与工作效率。该软件是针对公司管理部门对公司所有员工进行详细的数据管理。在该软件中,管理人员可以对所有数据进行修改和输入,同时,每一位员工也可以登陆后查看自己的信息。管理人员可以对信息进行很多功能的修改与删除,例如,管理员工的薪水调整,管理员工的培训信息,记录员工考评信息和记录员工奖惩信息等,每一位员工均需要在该软件上存有信息。使用Microsoft Office Word文档编写需求规格说明书,按照文字两端对齐、表格居中对齐的排版约定进行编写。字体大小要求合理,复合各个层级的关系。对于开发人员,应主要关注需求分
15、析部分,了解客户对产品的要求;对于公司主管,则应关注功能分析模块,注意软件可操作项;对于经理,主要关注产品的综合描述部分,对产品的主要大致功能进行了解;对于普通员工,应主要对管理系统的各个部分关注,了解自己的哪些信息被着重记录,以便能更好的表现出色。建议不同的身份按照目录进行部分章节的重点查看。本软件将主要是对某个公司的员工情况进行登记,扩大使用将失去其管理效果。软件工程导论(第五版)2008年2月 张海藩编著 清华大学出版社软件需求工程 2008年8月 毋国庆等编著 机械工业出版社UML和模式应用(第三版)2009年3月Craig Larman著 机械工业出版社2、综合描述 本产品是根据公司
16、的人事管理灵感开发出来,还不算比较成熟,在今后的开发中将会有进一步的升级,软件应该也会有更多的扩充功能。相比前一个版本,此版本的功能更加多样,操作也会较之前更为流畅些。本产品的主要功能是人事管理,记录每一位员工的详细信息以及家庭的部分情况,并根据表现对员工情况有更好的了解。例如哪些员工有获得过表彰,那些成员有得到惩罚,迟到等状况,薪水分配以及涨薪水等等细节部分都可以记录在软件中,每位员工可以通过登录查看自己的信息,管理人员也可方便地对每一位成员进行管理。同时,高层领导也可以清晰地了解企业具体的状况。用户类主要分为三类:管理者,对所有成员进行事务标记普通成员:对自己的情况进行查看领导层:对总体信
17、息进行查看,无实际操作权限。Windows平台均可运行,几乎不与其他软件冲突。开发时间比较短,机器限制,开发人员的数目少、经验也不足,是开发系统中主要问题管理不完善,设计时没能全得到考虑,系统的数据多处理难度高,安全保密方面的问题都会影响本项目的开发进程。(1)预计开发期限:2015年6月1日(2)预计开发经费:10,000RMB3、外部接口需求用户界面设计:最小分辨率为800*600,最大分辨率为1366*768.界面在浏览器中居中全屏显示。 采用USB接口方式与外部设备相连接。 这里,主要考虑软件与操作系统、数据库管理系统的接口,以及局域网和互联网软件之间的数据交换。考虑到文档处理时有可能
18、需要较常用的办公软件。例如Microsoft的Office系列,所以应尽量实现它们之间的数据格式的自动转换。该系统为了实现公司人员之间互相联系,需要在局域网下使用软件(以让每位用户能进行登录和查看),不需要再互联网中运行。4、系统特性以下是对部分功能进行的优先级的评定(1-9优先级是一次上升)(1)用户注册:主要实现员工的注册,创建自己的帐户密码9(2)用户登录:登陆应用程序查看自己的信息9(3)修改密码:修改用户自己的密码7(4)员工调动:查看修改员工的调动信息6(5)基本信息:统计与查询员工基本信息7(6)员工考评:记录员工考评信息5(7)人员调薪:管理员工的薪水调整5(8)职称评定:评定
19、和记录员工的职称信息5(9)培训管理:管理员工的培训信息4(10)报表输出:将需要的信息以报表形式输出打印4(11)数据备份:管理员备份数据8(12)数据恢复:病毒,黑客等破坏数据库后对数据进行恢复8(13)系统管理:主要对用户的密码、管理权限的设置等。9(1)员工信息:统计与查询员工基本信息(2)调薪信息:管理员工的薪水调整(3)培训信息:管理员工的培训信息(4)考评信息:记录员工考评信息(5)奖惩信息:记录员工奖惩信息5、其他非功能需求(1)软件必须严格按照设定的安全权限机制运行,并有效防止非授权用户进 入本系统。(2)软件必须提供对系统中各种码表的维护、补充操作。(3)软件必须按照需求规
20、定记录各种日志。(4)软件对用户的所有误操作或不合法操作进行检查,并给出提示信息。(5)用户必须对系统中的材料成本信息进行维护,以便软件能取得。系统需要进行操作确认前保护,如果用户在使用系统时,系统突然退出(例如断电),则在编辑前的数据应得到恢复,以至于不会完全丢失。每位用户在查看信息时必须登录。为防止信息得到外部泄露,每位用户注册时将需要输入公司约定的口令,以防止外人恶意进入系统。管理员进入软件系统要有短信验证,同时,管理员修改信息是需要多位人员一致确认才可生效。 (1)可维护性强,要求软件的组成程序组构较为简单,因此,需要的电子设备简单易于管理和维护,具体到软件时数据库数据结构简单但庞大,
21、参与操作的人员数量多的话,维护起来也比较简单,出错也容易修复。 (2)数据处理的功能较强,因为系统中的数据交流比较平凡且要求反应速度快、不易出错出现意外是系统的恢复能力强。只有管理人员才能查看所有信息,只有当多位管理者确认后,某位管理员修改的信息才能得到保存。员工要修改自己的信息或想改正错误的惩罚,需要提交申请。管理员将在看到申请后决定是否修改员工具体信息(这可能需要员工与管理者私下协调)。 编写在线系统帮助文档和用户手册,提供在线咨询,方便用户对改系统的使用,增加界面的友好性。6、其他需求(1)软件用户界面系统采用对话框的方式,多功能窗口运行。对于给出的请求,要尽量在短时间内完成解决。(2)
22、软件仅供公司内部使用。任何组织和个人不得将软件传播,或者用于其他用途,软件涉及到的相关信息将严格保密,绝对不可以泄露。(3)软件必须按照需求规定记录各种日志五、附录A、词汇表系统流程图说明:系统流程图是描述物理系统的工具,所谓物理系统,就是一个具体实现的系统,也就是描述一个单位、一个组织的信息处理的具体实现的系统数据流图说明:数据流图(Data Flow Diagram,简称DFD),是结构化(Structured)方法中用于表示系统逻辑模型的一种工具,它描述系统由哪几部分组成,各部分之间有什么联系等,它以图形的方式描绘数据在系统中流动和处理的过程。DFD只反映系统必须完成的逻辑功能。数据字典
23、说明:数据字典(Data Dictionary,简称DD)定义了数据流图中的数据和加工,是对各个数据流、加工及数据存储的详细说明,它包含4类条目:数据流条目、数据存储条目、数据项条目和加工条目。只将部分模型画出 用户登录登录用户密码用户编号用户身份员工简历工作简历部门职工编号开始时间结束时间工作单位编号职务职工信息职工编号职工基本信息职工姓名民族出生日期年龄性别婚姻工作时间工龄政治面貌身份证职工类别职务类别工资类别文化程度电话手机毕业学校主修专业毕业时间家庭地址数据流图薪资管理考勤管理1、主要的数据流定义: 数据流名称:职员情况 定义:职员情况=职员编号+姓名+性别+年龄+电话+身份证号码+婚
24、姻状况 数据流量:根据公司的员工具体录用情况而定 说明:要对每一位被聘用的新员工进行唯一编号 数据流名称:工资查询 定义:工资查询=工资编号+员工号+基本工资+罚款+提成+发薪日期 数据流量:根据公司的具体情况而定 说明:根据员工号和发薪编号可以唯一确定一个工资记录数据流名称:部门情况定义:部门记录=部门编号+部门名称+员工号+姓名+入职日期+离岗日期+调动情况数据流量:视公司具体情况而定说明:对部门的人员变动进行记录数据流名称:操作记录情况定义:操作记录情况=操作记录编号+用户编号+操作内容+发生操作的时间数据流量:视用户具体操作情况而定说明:记录每一次对数据库的操作数据流名称:系统用户情况
25、定义:系统用户情况=用户编号+员工编号+密码+登录系统时间数据流量:按实际情况而定说明:对每一个系统用户设定唯一编号2、主要的数据存储定义数据存储编号:员工记录数据结构:员工记录=姓名+性别+出生日期+民族+学历+职称+员工编号+部门编号数据流量和存取频度:根据公司具体情况而定说明:员工编号具有唯一性和非空性;性别:男|女,部门编号未外键数据存储编号:工资记录数据结构:工资记录=工资编号+员工编号+基本工资+罚款+提成+发薪日期数据流量:看具体情况说明:主码是工资编号和员工编号,外码是员工号数据存储编号:部门记录数据结构:部门记录=部门编号+部门名称+部门负责人数据流量:根据公司具体情况而定说
26、明:记录公司的部门信息,主码设为部门编号数据存储编号:操作记录数据结构:操作记录=用户编号+操作记录编号+内容+时间数据流量:视用户操作具体情况而定说明:存储用户操作信息数据存储编号:用户记录数据结构:用户记录=用户编号+员工编号+登录密码数据流量:是实际情况而定。说明:用户编号为主键,员工号为外键3、主要的处理:处理名:档案管理输入:用户身份、员工记录、员工情况输出:员工记录处理说明:根据员工的聘用、解聘建立或删除员工记录,以及在后续的过程中,以管理员的身份对员工的记录进行修改。处理名:工资管理输入:用户身份、工资记录输出:工资记录、工资查询处理说明:根据员工目前的工资情况进行调薪的操作处理
27、名:用户管理输入:用户身份、用户记录、操作记录输出:用户记录、操作记录情况处理说明:增加用户;通过用户名和口令,确认用户身份处理名:部门管理输入:部门情况,部门记录、操作记录输出:部门记录,操作记录情况处理说明:根据上级的调度,对现有的公司的部门进行管理。六、总结与感悟软件需求工程是个非常不同寻常的学科,如果没有了解过这一方面的知识就去开发软件,将会让整个软件制造变得杂乱而没有条理。甚至不会知道有这么一项专业的学科。这个学科学习完时,不会感觉到有多大的感悟,但是当自己真正进入软件开发阶段时,才会发现原来这些对自己的技能是有很大帮助的。下面是我对部分知识的理解:需求分析是项看起来简单但又非常重要
28、的过程,需求分析要贯穿软件开发的整个阶段,我们要向得到客户满意的产品,而且不做太多无用功,就需要实时了解客户的想法,一步步确定客户需要的东西是什么样的。客户有时候也并不知道自己需要的是什么,与他们一步步进行沟通,慢慢进行需求分析,最后给出一份详细的规格说明,让客户更了解自己该怎样操作。更重要的一点是,对一个个产品进行需求分析,将会非常有效地帮助开发团队进步,下次会做出更好的分析,效率会变得更高,这一点也是影响团队的经济收益的。需求获取有一个重要的身份需求分析员。需求分析员的工作就是将客户与开发团队联系起来,作为两方的中间人。对需求分析员的要求也是很高的,他最好什么都能懂,有比较全面的知识。需求分析员可以来自开发方,可以来自客户方,甚至可以来自于两个身份之外的人员。分析能力,协调能力,观察能力,组织能力,人际交往能力,组织能力等都是需要的。一个好的需求分析员将会让双方的利益最大化。最后,我认为学好需求分析还是需要实际中的锻炼,这份需求分析报告中很多问题填写起来都比较吃力,有些需要借助之前的模板才能够掌握操作与制作方式。相信需求分析的学习也是一个漫长的过程,在实际需求分析中慢慢体验会让我对产品的需求分析工作更加熟练。本科课程论文评分标准