软件需求分析论文.docx

上传人:b****6 文档编号:4529758 上传时间:2022-12-01 格式:DOCX 页数:20 大小:299.39KB
下载 相关 举报
软件需求分析论文.docx_第1页
第1页 / 共20页
软件需求分析论文.docx_第2页
第2页 / 共20页
软件需求分析论文.docx_第3页
第3页 / 共20页
软件需求分析论文.docx_第4页
第4页 / 共20页
软件需求分析论文.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

软件需求分析论文.docx

《软件需求分析论文.docx》由会员分享,可在线阅读,更多相关《软件需求分析论文.docx(20页珍藏版)》请在冰豆网上搜索。

软件需求分析论文.docx

软件需求分析论文

理工大学

软件需求分析论文

 

题目:

宿舍管理系统

班级:

*********

学号:

*********

学生:

***

指导教师:

****

 

2015年11月17日

 

一、摘要

需求分析是指理解用户需求,就软件功能与客户达成一致,估计软件风险和评估项目代价,最终形成开发计划的一个复杂过程。

需求分析在IT项目中具有十分重要的作用。

IT项目的需求分析不仅是项目的开端,也是确保项目成功的基石。

本文从IT项目的需求定义、重要性、过程、方法等层面来了解IT项目的需求分析。

关键词:

项目需求分析定义过程方法

二、需求的定义和重要性

(一)需求的定义

软件需用户为解决某个问题或达到某个目标而需具备的条件或能力。

系统或系统组件为为符合合同、标准、规或其它正式文档而必须满足的条件或必须具备的能力。

以上所述为定义条件和能力的文档表达。

这一定义既体现了用户对需求的看法(系统的外部行为),也代表了开发人员的观点(一些深层次的特性)。

术语用户隶属于涉众,因为并非所有涉众都是用户。

产品为涉众提供价值而必须具备的特性。

显然,需求没有一个统一的定义。

为了便于交流,需要协商来决定一组限定词来修饰“需求“这个涵丰富的术语。

并认识到用可通用的形式记录需求的重要性。

(二)需求的重要性

实现有效的需求工程过程可以让组织受益匪浅。

减少开发后期以及整个维护过程中不必要的返工并可带来极大的回报。

但优质需求的高回报往往不明显,以至人们常常错误的认为讨论需求所花费的时间会导致推延产品的交付。

然而,对质量成本的整体评估却显示出重视早期质量工作的意义。

合理的需求过程强调产品开发过程中的协作,要求涉众始终参与合作。

收集需求使开发团队对产品的用户和市场有更好的了解。

用户和市场是任何项目成功与否的关键因素。

在开发产品之前了解市场和用户,与用户收到产品后在进行理解相比,所需的代价要低得多。

邀请用户参与收集需求可以激发他们对产品的热情,并建立他们对产品的忠诚。

强调用户的目标而不是华而不实的功能,就能避免那些永远排不上用场的代码。

客户的参与能够缩小用户需要的产品与开发人员提交产品之间的期望差。

开发者迟早都要面对用户的反馈。

应该尽早得到用户的反馈,也可以借助原型来激励用户产生反馈。

需求开发的确需要时间,但要比产品测试时或发布后大量的修改所需的时间要少的多。

优质的需求带来的好处远不止这些。

把选定的系统需求明确的分配到各个不同的软件、硬件和人员子系统这种方式突出了产品的系统设计方法。

有效的变更控制过程可以把需求变更的负面影响降至最低。

无歧义的需求文档给测试工作带来了极大的便利,使交付让各方都满意的优质产品的可能性大大提高。

没有人能够保证需求工作所作出的投入一定能够收到回报。

但能够通过分析来思考及推测需求能够提供的帮助。

首先来看改进过程的投入。

其中包括用于评估现状、开发新的过程和文档模板、人员培训、购买参考书籍与工具,以及可能要聘请的顾问和产生的成本等。

最大的投入则是开发团队收集、编写、检查和管理需求的时间。

接下来则看可以得到的好处和因此而节省的时间和金钱。

三、需求分析的过程

调研

目前很多高校的学生越来越多为宿舍的管理带来了极大的压力。

本系统旨在便于学校管理住宿学生而设计

分析与综合

编写该系统需要MicrosoftVisualStudio2010,MicrosoftSQLServer2005等软件来实现代码的编写以及数据库的相关操作。

上述软件都已安装,因此编写方面完全是可行的。

除了编写代码的软件外,还需要完成需求分析,以及评估报告的软件,例如Office,Visio,Project等。

经工作人员的检查,这些软件在公司的开发电脑上都已安装。

另外,Windows操作系统运行正常。

可以确保在开发的过程中不会出现太大的问题。

软件条件具备了,还需要配套来支持。

公司刚刚更新了用于开发的电脑。

并且数据库和服务器的运行一切正常。

可见,从硬件条件上来说,此次开发也是可行的。

最重要的一点就是人员储备。

秋招刚过,公司也补充了一大批人员,他们为公司带来了朝气,提供了活力。

以尽可能的使开发工作尽早完成从而减轻其他方面工作人员的压力,提高整体工作的效率。

需求人员大多经验丰富,可以保证对此次项目的需求做到精准无误,减少客户与开发人员之间的隔阂。

测试人员也大多具备胜任此次工作的能力。

总之,从技术上讲,此次的项目是完全可行的。

程序的开发人员大多都具有很强的学习能力与技术,他们的主动学习能力都很高,善于学习目前主流的技术。

尽力使开发的系统在满足用户需求的同时,也能够使用户在操作上没有盲点。

其次,需求人员大多经验丰富,能够准确定位用户的需求,确保需求这一环节不会成为问题。

另一方面,公司还安排了相关人员帮助用户熟悉并使用系统。

使其早日投入工作当中。

测试人员也能够做好相关工作,尽最大可能使用户满意。

进而提高公司的声誉。

上述工作可以为用户能够满足尽快使用软件并迅速熟悉提供了条件。

为该系统提供它应有甚至超过其本身的价值打好了基础。

实现这一点的关键还得看系统的总体性能。

首先要确保该系统能够运转正常,这对运维人员提出了更高的要求。

所幸,公司的运维人员都是具有多年工作经验的老员工,对服务器的各个方面都有着细致入微的了解,所以,可以预见系统能够保持小时的正常运行。

在有一点是系统的更新,这需要测试人员和开发人员协调好工作,保持良好的沟通。

追踪最新的技术,改进系统中的不总,提高运行速度。

使得系统的运行效率能够提升,进而为公司带来更高的效益。

从宏观上看改系统总共有六大功能。

包括对学生基本信息的增删查改,以及对宿舍信息的相关查询。

详细信息如下。

(1)录入学生信息:

主要由学校的工作人员完成,负责依据宿舍分配的情况,将个学生的详细信息录入“宿舍管理系统”中。

(2)查询学生信息:

分为按照进行查询,按照学号进行查询,按照房号查询,并分别打印查询结果。

(3)统计学生信息:

分为按统计,按学号统计,按宿舍房号统计。

(4)更改学生信息:

宿舍管理员将修改后的学生信息和宿舍信息输入到宿舍管理系统中。

(5)删除学生信息:

在宿舍管理系统中删除某学生的信息,并在数据库中除去此学生的数据。

(6)查询宿舍信息:

输入宿舍房号,查询该宿舍的相关信息。

总体功能模块图如下:

 

图3.1总体功能

该模块主要实现对学生信息的查询工作。

包括按查询,按学号查询,按房号查询。

主要由宿舍管理员操作。

不同的查询,依据不同的情况采用了不同的算法,极大的提高了整个系统的整体效率。

详细信息如下。

(1)按查询学生信息:

采用折半查找的方法按照进行查询并输出结果。

(2)按学号查询学生信息:

采用二叉排序树按照学号进行查询并输出结果。

(3)按房号查询学生信息:

采用哈希表按照房号查询并输出结果。

查询学生信息的模块图如:

图3.2查询学生信息

该模块主要实现了对学生信息的统计工作,包括按统计,按学号统计,按房号统计。

按不同关键字的统计也相应的采用了不同的排序算法。

提高了整个系统的效率。

详细信息如下按统计学生信息:

采用了“冒泡排序”算法按进行排序并输出结果。

(2)按学号统计学生信息:

采用了“堆排序”算法按学号进行排序并输出结果。

(3)按房号统计学生信息:

采用了“快速排序”算法按房号进行排序并输出结果。

统计学生信息的模块图如下:

图3.3统计学生信息

系统包含学生信息类,宿舍实体类,宿舍管理员类。

学生类继承自宿舍管理员类,宿舍类相对于其它两个类独立。

因为学生信息类和宿舍管理员类有很多重叠的部分,因而可以将学生类继承自宿舍管理员类,避免了冗余的出现。

但管理员类的某些方法学生类不能使用。

系统的类图如下:

图3.4类图

 

系统业务流程图

图3.5查询业务流程图

 

图3.6修改信息业务流程图

 

图3.7统计业务流程图

 

定义

目标

软件需求规格说明描述了“宿舍管理系统(DormitoryManagementSystem,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:

如果在系统得到确认或取消之前,用户和系统的连接切断。

则用户应当及时关闭系统。

附录:

数据字典

数据名称

数据解释

数据类型

d_name

学生

Varchar(50)

d_num

学生学号

Varchar(50)

d_dorm

学生宿舍

Varchar(50)

d_birth

学生生日

Varchar(50)

d_age

学生年龄

Int

d_address

学生地址

Varchar(50)

d_sex

学生性别

Varchar

(2)

d_major

学生专业

Varchar(50)

d_class

学生所在的班级

Varchar(50)

d_grade

学生年级

Varchar(10)

图3.13学生信息数据字典

数据名称

数据解释

数据类型

m_name

宿舍管理人员的

Varchar(50)

m_sex

宿舍管理人员的性别

Varchar

(2)

m_age

宿舍管理人员的年龄

Int

m_address

宿舍管理人员的地址

Varchar(50)

m_num

宿舍管理人员所管理宿舍号

Varchar(50)

m_birth

宿舍管理人员的生日

Varchar(50)

图3.14宿舍管理人员数据字典

数据名称

数据解释

数据类型

S_name

宿舍名

Varchar(50)

S_num

宿舍号

Long

S_floor

宿舍所在的楼层

Long

S_amount

宿舍的人数

Long

S_district

宿舍所在的区域

Varchar(50)

S_major

宿舍的专业数

Long

图3.15宿舍信息数据字典

 

数据库改建系统设计

该数据库包括宿舍信息实体、宿舍管理员信息实体、学生信息实体。

整体关联E-R图如下:

图3.16实体E-R图

 

评审

经过评审确认系统的功能完整。

实现了用户要求的功能。

设计人员考虑全面,对系统的每一个细节处理的极为妥当。

基本满足评审的各项要求。

可以进入下一阶段。

四、需求分析的方法

面向对象分析法简介:

面向对象分析法主要是讲了动态模型方法。

动态模型是描述与操作时间和顺序有关的系统特征、影响更改的事件、事件的序列、事件的环境以及事件的组织。

动态模型是借助顺序图、协作图、状态图和活动图来描述系统的。

动态模型的每种作用图都有助于理解系统的行为特征。

对于开发人员来说,动态建模具有明确性、可视性和简易性的特点。

 

顺序图

用于描述执行系统功能的各个角色之间相互传递信息的顺序关系,显示跨越多个对象的系统控制流程。

图4.1顺序图

 

协作图

用于描述相互合作的对象间的交互关系和关系。

图4.2协作图

活动图

用于对一个系统的动态方面建模。

活动图是描述交互关系的一种方式,着重体现对象的工作流程。

图4.3活动图

状态图

通常是对类描述的补充,它说明该类的对象所有可能的状态以及那些事件将导致状态的改变。

图4.4查询状态图

图4.5统计状态图

大量成功的软件工程实践了动态模型的补助性,而动态模型的优越性使得该方法被广泛接受。

五、总结

本次论文是我第一次进行论文方面的实践。

通过本次论文的撰写,收获良多。

其中最重要的一点了解了什么是论文,以及论文是用来做什么的。

论文是将原创者的想法用通俗易懂的语言表达出来进而普及知识。

另一方面,也了解了各论文撰写者的不易。

短短的几行字蕴含着日以继夜的思考。

由于之前对所学课程中的知识点掌握的不扎实等原因。

使得本次论文的撰写捉襟见肘。

所幸,之前有一次报告的编写,为本次论文的顺利完成打下了坚实的基础。

最重要的一点重新温习了之前所学的知识。

进一步了解软件需求与设计在一个项目中的重要性。

编码只是其中的一小部分。

而且编码是在需求与设计都顺利完成的基础上进行的。

没有好的需求与涉及,则必然意味着项目的失败。

虽然本次论文的撰写使我获益良多,但也有很多问题。

比如,如何用更加通俗的语言将自己的想法表达出来,如何用更简洁,直观的图表达系统的各个流程与功能,论文整体的排版等等。

这都是之后学习过程中应当注意的。

 

六、参考文献:

[1]《软件需求》(Thedemandforsoftware),KarlE.Wiegers(American)著伟琴、洪涛译,清华大学,2004年4月。

[2]《软件工程导论》(Theintroductionofsoftware),海藩、牟永敏著,清华大学,2013年5月。

[3]《系统分析与设计方法》(SystemAnalysisandDesignMethods,fifthEdition),JeffreyL.等著,高等教育,2001年6月。

[4]《UML面向对象设计基础》,MeilirPage-Jones著,包晓露等译,人民邮电,2001年4月第1版。

[5]《统一软件开发过程》,IvarJacobson,JamesRumbaugh,GradyBooch著,周伯生译,机械工业,2002年1月。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1