青岛理工大学软件需求分析论文题目:宿舍管理系统班级: *********学号: *********学生姓名: ***指导教师: ****2015年11月17日一、摘要需求分析是指理解用户需求,就软件功能与客户达成一致,估计软件风险和评估项目代价,最终形成开发计划的一个复杂过程。
需求分析在IT项目中具有十分重要的作用。
IT项目的需求分析不仅是项目的开端,也是确保项目成功的基石。
本文从IT项目的需求定义、重要性、过程、方法等层面来了解IT项目的需求分析。
关键词:项目需求分析定义过程方法二、需求的定义和重要性(一)需求的定义软件需求是用户为解决某个问题或达到某个目标而需具备的条件或能力。
系统或系统组件为为符合合同、标准、规范或其它正式文档而必须满足的条件或必须具备的能力。
以上所述为定义条件和能力的文档表达。
这一定义既体现了用户对需求的看法(系统的外部行为),也代表了开发人员的观点(一些深层次的特性)。
术语用户隶属于涉众,因为并非所有涉众都是用户。
产品为涉众提供价值而必须具备的特性。
显然,需求没有一个统一的定义。
为了便于交流,需要协商来决定一组限定词来修饰“需求“这个内涵丰富的术语。
并认识到用可通用的形式记录需求的重要性。
(二)需求的重要性实现有效的需求工程过程可以让组织受益匪浅。
减少开发后期以及整个维护过程中不必要的返工并可带来极大的回报。
但优质需求的高回报往往不明显,以至人们常常错误的认为讨论需求所花费的时间会导致推延产品的交付。
然而,对质量成本的整体评估却显示出重视早期质量工作的意义。
合理的需求过程强调产品开发过程中的协作,要求涉众始终参与合作。
收集需求使开发团队对产品的用户和市场有更好的了解。
用户和市场是任何项目成功与否的关键因素。
在开发产品之前了解市场和用户,与用户收到产品后在进行理解相比,所需的代价要低得多。
邀请用户参与收集需求可以激发他们对产品的热情,并建立他们对产品的忠诚。
强调用户的目标而不是华而不实的功能,就能避免那些永远排不上用场的代码。
客户的参与能够缩小用户需要的产品与开发人员提交产品之间的期望差。
开发者迟早都要面对用户的反馈。
应该尽早得到用户的反馈,也可以借助原型来激励用户产生反馈。
需求开发的确需要时间,但要比产品测试时或发布后大量的修改所需的时间要少的多。
优质的需求带来的好处远不止这些。
把选定的系统需求明确的分配到各个不同的软件、硬件和人员子系统这种方式突出了产品的系统设计方法。
有效的变更控制过程可以把需求变更的负面影响降至最低。
无歧义的需求文档给测试工作带来了极大的便利,使交付让各方都满意的优质产品的可能性大大提高。
没有人能够保证需求工作所作出的投入一定能够收到回报。
但能够通过分析来思考及推测需求能够提供的帮助。
首先来看改进过程的投入。
其中包括用于评估现状、开发新的过程和文档模板、人员培训、购买参考书籍与工具,以及可能要聘请的顾问和产生的成本等。
最大的投入则是开发团队收集、编写、检查和管理需求的时间。
接下来则看可以得到的好处和因此而节省的时间和金钱。
三、需求分析的过程调研目前很多高校的学生越来越多为宿舍的管理带来了极大的压力。
本系统旨在便于学校管理住宿学生而设计分析与综合编写该系统需要Microsoft Visual Studio2010,Microsoft SQL Server2005等软件来实现代码的编写以及数据库的相关操作。
上述软件都已安装,因此编写方面完全是可行的。
除了编写代码的软件外,还需要完成需求分析,以及评估报告的软件,例如Office,Visio,Project等。
经工作人员的检查,这些软件在公司的开发电脑上都已安装。
另外,Windows操作系统运行正常。
可以确保在开发的过程中不会出现太大的问题。
软件条件具备了,还需要配套来支持。
公司刚刚更新了用于开发的电脑。
并且数据库和服务器的运行一切正常。
可见,从硬件条件上来说,此次开发也是可行的。
最重要的一点就是人员储备。
秋招刚过,公司也补充了一大批人员,他们为公司带来了朝气,提供了活力。
以尽可能的使开发工作尽早完成从而减轻其他方面工作人员的压力,提高整体工作的效率。
需求人员大多经验丰富,可以保证对此次项目的需求做到精准无误,减少客户与开发人员之间的隔阂。
测试人员也大多具备胜任此次工作的能力。
总之,从技术上讲,此次的项目是完全可行的。
程序的开发人员大多都具有很强的学习能力与技术,他们的主动学习能力都很高,善于学习目前主流的技术。
尽力使开发的系统在满足用户需求的同时,也能够使用户在操作上没有盲点。
其次,需求人员大多经验丰富,能够准确定位用户的需求,确保需求这一环节不会成为问题。
另一方面,公司还安排了相关人员帮助用户熟悉并使用系统。
使其早日投入工作当中。
测试人员也能够做好相关工作,尽最大可能使用户满意。
进而提高公司的声誉。
上述工作可以为用户能够满足尽快使用软件并迅速熟悉提供了条件。
为该系统提供它应有甚至超过其本身的价值打好了基础。
实现这一点的关键还得看系统的总体性能。
首先要确保该系统能够运转正常,这对运维人员提出了更高的要求。
所幸,公司的运维人员都是具有多年工作经验的老员工,对服务器的各个方面都有着细致入微的了解,所以,可以预见系统能够保持小时的正常运行。
在有一点是系统的更新,这需要测试人员和开发人员协调好工作,保持良好的沟通。
追踪最新的技术,改进系统中的不总,提高运行速度。
使得系统的运行效率能够提升,进而为公司带来更高的效益。
从宏观上看改系统总共有六大功能。
包括对学生基本信息的增删查改,以及对宿舍信息的相关查询。
详细信息如下。
(1)录入学生信息:主要由学校的工作人员完成,负责依据宿舍分配的情况,将个学生的详细信息录入“宿舍管理系统”中。
(2)查询学生信息:分为按照姓名进行查询,按照学号进行查询,按照房号查询,并分别打印查询结果。
(3)统计学生信息:分为按姓名统计,按学号统计,按宿舍房号统计。
(4)更改学生信息:宿舍管理员将修改后的学生信息和宿舍信息输入到宿舍管理系统中。
(5)删除学生信息:在宿舍管理系统中删除某学生的信息,并在数据库中除去此学生的数据。
(6)查询宿舍信息:输入宿舍房号,查询该宿舍的相关信息。
该模块主要实现对学生信息的查询工作。
包括按姓名查询,按学号查询,按房号查询。
主要由宿舍管理员操作。
不同的查询,依据不同的情况采用了不同的算法,极大的提高了整个系统的整体效率。
详细信息如下。
(1)按姓名查询学生信息:采用折半查找的方法按照姓名进行查询并输出结果。
(2)按学号查询学生信息:采用二叉排序树按照学号进行查询并输出结果。
(3)按房号查询学生信息:采用哈希表按照房号查询并输出结果。
查询学生信息的模块图如:图3.2 查询学生信息该模块主要实现了对学生信息的统计工作,包括按姓名统计,按学号统计,按房号统计。
按不同关键字的统计也相应的采用了不同的排序算法。
提高了整个系统的效率。
详细信息如下按姓名统计学生信息:采用了“冒泡排序”算法按姓名进行排序并输出结果。
(2)按学号统计学生信息:采用了“堆排序”算法按学号进行排序并输出结果。
(3)按房号统计学生信息:采用了“快速排序”算法按房号进行排序并输出结果。
统计学生信息的模块图如下:图 3.3 统计学生信息系统包含学生信息类,宿舍实体类,宿舍管理员类。
学生类继承自宿舍管理员类,宿舍类相对于其它两个类独立。
因为学生信息类和宿舍管理员类有很多重叠的部分,因而可以将学生类继承自宿舍管理员类,避免了冗余的出现。
但管理员类的某些方法学生类不能使用。
系统的类图如下:图 3.4 类图系统业务流程图图3.5查询业务流程图图3.6 修改信息业务流程图图3.7统计业务流程图定义目标软件需求规格说明描述了“宿舍管理系统(Dormitory Management System,DMS)”的软件功能性需求和非功能性需求。
这一文档由实现和验证系统正确功能的项目团队成员来使用。
除非在其他方面另有说明,这里指定的所有需求都具有高优先级,而且都要加以实现。
项目范围和产品特性学校有若干公寓,需要一个宿舍管理系统实现学生信息的查询、统计、修改等操作。
经过实际分析调查,一个宿舍管理系统可以方便宿舍管理人员的工作,提高其工作效率,不仅可以方便广大学生,而且还可以方便于教师和相关人员。
要求系统能够有效、快速、安全、可靠和无错误的完成需要的操作,并要求客户机的界面要简单明了,易于操作。
服务器程序易于维护。
产品远景规划“宿舍管理系统”是一个新系统。
图2.8是一幅关联图。
它演示了系统与外部实体的联系。
图3.8“宿舍管理系统”关联图外部接口需求1.用户界面:用户界面在完善系统功能的基础上充分考虑用户与界面的友好性。
除了可以综合使用鼠标和键盘共同完成外,还可以只通过键盘来单独完成。
用户界面设计如下:图 3.9 主界面图 3.10 输入学生信息界面图 3.11 查询学生信息界面图 3.12 统计学生信息界面硬件接口硬件接口还没有确定。
软件接口SI-1:录入学生信息系统。
SI-2:“查询学生信息系统”通过用户输入的查询关键字依靠相关算法进行查询。
最终显示学生信息。
SI-3:“统计学生信息系统”通过用户选择的统计项进行学生信息的统计并显示统计结果。
其它非功能性需求1.性能需求PE-1:在当地时间早晨8点到10点这一高峰期间,系统将能够适应400个用户,平均每个会话会持续8分钟。
PE-2:系统生成的所有界面,通过速率为40KBps的调制解调器在不超过10秒的时间内可以全部下载下来。
PE-3:用户提交查询后,对查询的响应时间不得超过7秒,在此时间内要将查询结果显示在屏幕上。
PE-4:用户向系统提交信息后,系统将在4秒内向用户显示确认信息。
2.防护性需求防护性需求还没确定。
3.安全性需求SE-1:所有涉及功能信息或个人身份信息的网络事务,都要按照BR-33进行加密操作。
SE-2:用户的登录受计算机系统访问控制策略的限制,具体参照BR-35。
SE-3:只有那些被授权可以在家访问“宿舍管理系统”的用户,才可以在学校以外的地方使用“宿舍管理系统”。
4.软件质量属性Availability(可用性)-1:“宿舍管理系统”将对学校的学生以及宿舍管理员使用,使用时间在早晨5点到晚上12点。
Robustness(健壮性)-1:如果在系统得到确认或取消之前,用户和系统的连接切断。
则用户应当及时关闭系统。
附录:数据字典图3.13 学生信息数据字典图3.14 宿舍管理人员数据字典图 3.15 宿舍信息数据字典数据库改建系统设计该数据库包括宿舍信息实体、宿舍管理员信息实体、学生信息实体。
整体关联E-R图如下:经过评审确认系统的功能完整。
实现了用户要求的功能。
设计人员考虑全面,对系统的每一个细节处理的极为妥当。