软件工程实验报告总.docx
- 文档编号:10447893
- 上传时间:2023-02-11
- 格式:DOCX
- 页数:37
- 大小:380.74KB
软件工程实验报告总.docx
《软件工程实验报告总.docx》由会员分享,可在线阅读,更多相关《软件工程实验报告总.docx(37页珍藏版)》请在冰豆网上搜索。
软件工程实验报告总
信息工程学院
软件工程实验报告
专业:
班级:
学号:
姓名:
指导老师:
实验一:
软件开发的过程计划
实验课时:
2课时
一、实验目的
项目计划的目的是为项目的研发和管理工作制定合理的行动纲领,以便所有相关人员按照计划有条不紊地开展工作。
⑴估计项目的总体规模、工作量和成本。
⑵制定项目计划,重点放在产品生命周期中的主要关键任务。
⑶制定项目时间表和预算。
二、实验环境
1.硬件环境
P4以上的个人计算机环境,要求内存不少于512MB,硬盘不小于20G.。
2.软件环境
操作系统:
WindowsXP
数据库:
SqlServer2000以上或Access2003以上
3.通用工具软件
通用绘图工具:
MicroSoftVisio2003以上
文本编辑工具:
MicroSoftWord2003以上
4.CASE工具
UML建模工具:
RationalRose2000
三、实验要求、实验内容
1、实验要求:
在进行实验之前,必须掌握软件开发过程的一些基础知识,准备参考资料和阅读相关的过程模型的文档。
2、实验内容
熟悉RUP(RationalUnifiedProcess)软件开发统一过程的思想,RUP(RationalUnifiedProcess)是由Rational公司(现已是IBM公司的一部分)提出的过程模型,它软件工程史上最完整、最成熟、最优秀的过程模型之一。
学习软件开发的组织和管理,将项目开发各阶段的任务明确,掌握各阶段的里程碑,并熟悉相应的工具。
四、思考题
1、项目开发首先要做的事是什么?
答:
进行需求分析和定义,了解客户或用户的需求,然后再进行后续。
2、你认为该软件应具备的最重要的特性是什么。
答:
安全性、实用性、灵活性。
3、你认为怎样分工是最合理的?
答:
该项目已经采取项目经理制,但是在具体开发过程中,情况也许会比预计的复杂,因此,在了解了各组员的工作风格的情况下,根据性格类型进行工作分配,比如:
外向而且善于交流的,可以给他安排和客户交流沟通,让客户随时了解我们的工作情况,并且反应客户的需求改变;为了让项目更好的组织和管理,可以采取主程序员负责制;这样,在项目经理的带领下,内部安排主程序员和副程序员,工作员有问题的话,内部自己解决,只要按时汇报工作就可以了。
五、实验内容:
项目背景
项目名称:
银行计算机储蓄系统
随着社会经济的发展,XX银行的业务不断增长,传统的依靠手工的存取款业务办理方式已经不能满足不断增长的业务需求。
其一,业务需求的增加需要消耗大量人力物力资源;其二,业务复杂化导致人工处理方式出错率增加,从而引起储户不满。
一方面可以减轻银行业务员的工作量,另一方面可以减少工作的出错率,从而提高工作效率。
现在计算机网络的告诉发现使越来越多的人更喜欢在网购物、在家存款取款。
在这样的背景下,很明显现在的银行储蓄系统已经不能满足人们越益增长的需求,急切需要建立一个新的、高效的、方便的、互联的计算机储蓄系统。
为解决此问题,拟为其开发计算机储蓄系统。
项目进度:
项目在项目经理的制度下,在整个开发过程中,树立“里程碑”,而且严格按照计划进行,各阶段任务必须完成,现把任务进度历程绘制如下:
项目资源管理:
在开发过程中涉及的东西太多如:
质量保证、配置管理、文档、数据;还有系统开发应该采用什么样的工具、技术,以上这些都要做统一的管理和规范,以至于开发工作能顺利有序的进行和完成。
风险管理:
风险是一种具有负面影响的事件,风险的发生会影响系统的开发,甚至毁掉整个工作的进行。
所以,为了确保任务的正常完成,必须进行风险管理和控制,风险管理步骤如图所示:
检查清单
分解
对假设的分析
决策驱动因素分析
系统动态性
性能模型
成本模型
风险识别网络分析
决策分析
定量风险因素分析
风险分析
风险暴露
风险优先级分配
复合风险降低
购买信息
风险避免
风险转移
风险降低
风险降低杠杠
开发过程
风险要素变化
风险管理计划
风险计划集成
风险化解风险减轻
风险监控和报告
风险重新评价
项目后期管理:
系统开发完成之后,并不代表就完事,还有一系列的事要做比如:
测试、培训、安全管理、维护等等。
六、实验小结:
整个开发工作都要按照计划执行,随时了解客户的需求,随时更改相关的事项,但是大的方向不变.
实验二:
软件开发可行性分析
实验学时:
2课时
一、实验目的
确定所开发项目的可行性和必要性,在此基础上完成系统的数据流图和数据字典文档。
给出系统的可行性分析文档。
二、实验要求、实验内容
1、实验要求
⑴实验之前学生应了解本项目的业务流程。
⑵学生基本掌握MicrosoftVisio建模工具。
2、实验内容:
分析项目的业务流程图,掌握用MicrosoftVisio进行功能分析和建模,并绘制数据流图、系统流程图和状态图等。
三、思考题
1、可行性分析在软件开发中真的有那么重要吗?
2、针对所开发项目的数据流图,谈谈数据流图设计的原则。
3.怎样组织对可行性分析阶段工作的评审?
四、实验内容:
1要求
1.1功能
此系统所要完成的主要功能有两方面:
如果是存款,储户填写存款单,然后交业务员键入系统,同时系统还要记录存款人姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、利率及密码(可选)等信息,完成后由系统打印存款单给储户。
如果是取款:
储户填写取款单交给业务员,业务员把取款金额输入系统并要求储户输入密码以确认身份,核对密码正确无误后系统计算利息并印出利息清单给储户。
1.1性能
为了满足储户的要求,系统必须要有高的运作速度,储户填写的表单输入到系统,系统必须能快速及时做出响应,迅速处理各项数据、信息,显示出所有必需信息并打印出各项清单,所以要求很高的信息量速度和大的主存容量;由于要存贮大量的数据和信息,也还要有足够的磁盘容量;安全性也似系统最终要的性能需求之一,银行计算机储蓄系统必须有可靠的安全措施,以保证储户的存储安全。
2.目标
近期目标
第一年内在一个银行建立一个银行内部计算机储蓄系统,初步实现银行储蓄系统计算机化,并保证该银行能够按期望顺利完成工作。
长期目标
拟在三至四年内,在国内多间银行中建立该计算机储蓄系统,促进多间银行间的互联合作,实现银行储蓄系统的计算机管理体制,提高银行储蓄系统的整体水平;并实现银行储蓄系统的高效性、方便性、实用性、互联性,从而提高银行的信用度,提高银行公司的经济效益和社会效益。
a.用系统的高速特性来节省大量的人力,并且能够极大程度上简化操作人员的工作,使得操作人员只需要做简单的输入输出以及对于本系统的管理就可以简便的完成自己的工作;
b.将人工计算的部分更改为系统运算处理极大的提升了速度,这样就提高了工作效率,也极大程度缩短了用户的等待时间,这样可以提高银行在行业中的竞争力。
c.利用计算机的系统优势,可以弥补人工作业时的出错率高的缺陷,使得每一笔业务都能最大限度避免核实以及复工。
d.利用计算机大容量存储数据库的模式来完成记录的存储,这样在工作中可以及时查证任意一条记录。
3.进行可行性研究的方法
采用查找资料的方法:
通过专业书本,及图书馆的有关资料,并且充分利用网上的资料说明来确定客户和实际应用中的需求:
然后经过组员讨论和开会的形式最终确定项目需要解决的问题,并确定问题能不能被解决。
4.决定可行性的主要因素
1)项目开发成本
2)所需设备置办成本
3)技术是否能满足需求
4)操作人员的熟练程度
5)资源有效性
5.可行性研究
5.1技术可行性
程序设计采用VisualBasic6.0,所谓Visual,中文的意思是“可视化”,它提供了一种创建图形用户界面(GUI)的方法,利用这种方法,我们可不必书写复杂的描述界面元素外观和位置的程序代码,而只需将系统提供的对象放到屏幕上的适当位置,并通过属性窗口进行适当的设置或调整,就可以设计出一个优秀的应用程序界面。
此外,我们除了可以使用单独的VisualBasic6.0程序设计环境进行程序设计外。
VisualBasic6.0程序设计系统还被包括在ExcelAccess等众多Windows功能应用软件中,以供用户进行二次开发。
目前在编制网页上使用较多的VBScript脚本语言实际上是VisualBasic语言的子集。
用VisualBasic6.0用户创建的是一个真正的EXE文件,该文件可直接运行于操作系统(Windows98/2000/XP或WindowsNT系统),完全脱离VisualBasic系统环境,并且该文件可以自由发布,安装到单机或网络服务器上。
数据库用SQLServer2000,SQLServer2000是Microsoft公司推出的SQLServer数据库管理系统的新版本。
该版本继承了SQLServer7.0版本的优点,同时又比它增加了许多更先进的功能,具有使用方便、可伸缩性好、与相关软件集成程度高等优点。
可跨越从运行MicrosoftWindows98的膝上型电脑,到运行MicrosoftWindows2000的大型多处理器的服务器等多种平台使用。
5.2经济可行性
本系统实现的功能较少且简单,所以在开发的过程中基本上不需要考虑什么成本,开发人员已尽可能的减少。
使用较成熟的开发工具也减少不必要的支出,只需用很小的代价便可开发完毕。
使用本系统的用户只需在短时间内就可以获得个人所需的信息,并获得需要的服务。
这点与传统的人工服务相比,效率得到了很大的提升,无论是对用户还是公司都节省了大量的时间,带来很大的方便,并且省去了雇佣员工的费用。
软件的经济效益大大的超过了它的开发成本,所以开发本软件在经济上是可行的。
5.3操作可行性
本系统采用的是直观的图形用户界面,用户进入银行储蓄管理系统的主界面后,有注册新用户、存款和取款这三个操作按钮可供用户选择,各个界面简洁,操作方便,容易上手,更有提示信息。
存款只要在存款界面按提示输入信息,然后在界面显示相应的信息。
取款只要在取款界面输入提示信息,输入无误就可取款成功。
总体来说,程序操作简单,数据显示直观。
另外,从法律方面来看,该系统的开发只运用于学习中,它不存在法律问题,也可以说是完全合法的,完全可行的。
从社会效益方面来看,该系统的应用有利于银行储蓄业的发展,提高它的经济效益,同时促进社会经济的发展。
五、实验小结:
银行储蓄计算机系统技术在目前是一个技术上成熟的系统,并且在银行公局内部准备采取有力措施保证资金和人员配置等。
因此,分阶段开发“银行计算机储蓄系统”的构想是可行的。
为了使银行公司适应现代化高场竞争的需求,促进银行管理信息化,不断满足储户的要求,争取更好的经济效益,根据以上分析,认为此系统的开发是可行的并着手开发此系统。
实验三:
软件开发需求分析
实验学时:
2课时
一、实验目的
确定所开发项目的需求,在此基础上完善和细化可行性分析中数据流图的功能,可以采用不同的分析工具(如Rose或Visio),完成对项目的分析过程,给出系统的需求分析文档。
二、实验要求、实验内容
1、实验要求
⑴实验之前学生应熟悉本项目的业务流程。
⑵学生熟练掌握MicrosoftVisio或RationalRose建模工具。
2、实验内容:
分析项目的业务流程图,掌握用MicrosoftVisio及RationalRose工具进行功能分析和建模,并绘制数据流图、系统流程图、状态图、用例图、类图、顺序图等。
三、思考题
1、需求分析在软件开发中真的有那么重要吗?
答:
需求分析是软件开发的核心部分,是连接客户和软件开发人员之间的纽带,只有弄清楚客户需求之后,才能按照客户需求来工作,否则,投入大量人力、无力之后开发出来的产品不符合要求就造成浪费和损失,而且还不能解决实际问题,因此,需求分析是至关重要的。
2、怎样组织对需求分析阶段工作的评审?
答:
分层次评审(目标性需求、功能性需求、操作性需求)、正式评审和非正式评审结合、分阶段评审、精心挑选评审员、对评审员进行培训、充分利用需求评审检查单、建立标准的评审流程、做好评审后的跟踪工作、充分准备评审。
四、实验内容:
1.确定对系统的综合要求
1.功能需求:
此系统所要完成的主要功能有两方面:
储户填写存款单或取款单交给业务员键入系统,如果是存款,系统记录存款人姓名、住址、存款类型、存款日期、利率等信息,完成后由系统打印存款单给储户。
如果是取款,业务员把取款金额输入系统并要求储户输入密码以确认身份,核对密码正确无误后系统计算利息并印出利息清单给储户。
2.性能需求:
为了满足储户的要求,系统必须要有高的运作速度,储户填写的表单输入到系统,系统必须能快速及时作出响应,迅速处理各项数据、信息,显示出所有必需信息并打印出各项清单,所以要求很高的信息量速度和大的主存容量;由于要存贮大量的数据和信息,也要有足够大的磁盘容量;另外,银行计算机储蓄系统必须有可靠的安全措施,以保证储户的存储安全。
3.接口要求:
业务员键入储户的资料要全部一直显示在屏幕上;储户键入密码到系统以核对;计算机与打印机有高速传输的连接接口,最后以纸张的形式打印出清单给储户。
4.输入要求:
业务员从存取款表单输入数据,要迅速精确,适当调整输入时间,不能让客户等太久,但也不能让业务员太过忙碌以免影响正确率,造成用户损失。
5.输出要求:
要求快速准确地打印出存款或取款清单给客户。
2.分析建模
1.数据对象E-R图
NM
NN
1
M
2.存款数据流图:
D1存款信息
填出存信
表错款息
存款单存款单
(存折)
密码
D2密码
存单存款信息存款信息
取款数据流图:
有误错误
密码
取款单需要密码D1密码
(或银行卡)
取款清单取款信息余额信息
现金
取款信息余额信息
D1取款信息D2余额信息
3.状态转换图
存款状态转换图:
储户存款
填写有误
完成
正确
储户确认无误
完成
不设密码存款信息
存款信息
存款清单
取款状态转换图:
储户取款
填写有误
正确完成
错误
无
密
码正确
完成
利息
更新
取款信息
取款清单
五、实验小结:
通过此实验,了解了软件工程中需求分析的知识。
实验四:
软件开发系统设计
实验学时:
2课时
一、实验目的
⑴掌握体系结构设计的方法。
⑵了解用户界面设计的方法。
⑶了解数据库设计的方法。
⑷了解模块设计的方法。
二、实验要求、实验内容
1、实验要求
在实验之前要求学生掌握关系数据库的数据库设计知识。
在实验二、三基础上完成系统的体系结构的建立和系统详细设计,并给出规格说明书。
2、实验内容
系统设计过程是软件工程的重要组成部分。
系统设计是指设计软件系统的体系结构、用户界面、数据库、模块等,指导开发人员去实现能满足用户需求的软件产品。
认真分析实验三的结果,给出系统合理的体系结构,描绘系统结构图,合理分工,并合理划分系统的各组成模块,最后给出系统的各部分设计规格说明书。
三、思考题
1.系统设计和需求分析的关系是什么?
两者必须先后关联吗?
答:
需求分析是系统设计的前驱,系统设计是需求分析的结果两者前后关联,对系统的后期工作至关重要。
2.怎样描绘系统的体系结构?
答:
系统体系结构是一个综合模型,系统体系结构是由许多结构要素及各种视图(或观点)(View)所组成的,而各种视图主要是基于各组成要素之间的联系与互操作而形成的。
所以,系统体系结构是一个综合各种观点的模型,用来完整描述整个系统。
在系统体系结构的各种视图中,以组织视图与行为视图最为突出和重要。
所以,要完成各种视图的综合,必须先完成组织与行为视图的统一。
基本上,通过组织视图与行为视图的合一过程,我们就可以构建出一个可以完整描述的系统。
所以,系统体系结构可以作为构建系统模型的一种方法。
一般来说,系统或软件体系结构都需要用相应的体系结构描述语言来描述,其目的在于为体系结构进行描述和呈现,为体系结构中的相关人员,如:
管理人员、系统开发人员和用户等,提供可以进行沟通的语言。
3.怎样绘制符合规范的类图?
答:
流程图是流经一个系统的信息流、观点流或部件流的图形代表,流程图主要用来说明某一过程,这种过程既可以是生产线上的工艺流程,也可以是完成一项任务必需的管理过程,流程图有时也称作输入-输出图,流程图对准确了解事情是如何进行的,以及决定应如何改进过程极有帮助,流程图使用一些标准符号代表某些类型的动作,如决策用菱形框表示,具体活动用方框表示。
但比这些符号规定更重要的,是必须清楚地描述工作过程的顺序。
流程图也可用于设计改进工作过程,具体做法是先画出事情应该怎么做,再将其与实际情况进行比较。
为便于识别,绘制流程图的习惯做法是:
圆角矩形表示“开始”与“结束”,矩形表示行动方案、普通工作环节用,菱形表示问题判断或判定(审核/审批/评审)环节用,平行四边形表示输入输出,箭头代表工作流方向。
4.怎样组织对设计阶段工作的评审?
在整个开发过程设计阶段基本要设计三个评审:
初步设计评审;关键设计评审;程序设计评审。
其中进行初步设计评审是和客户及用户一起检查概念设计;关键设计评审是将技术设计介绍给其他开发人员,在进行实现之前检查它的细节;程序设计评审这样编程人员就可以在实现前得到关于设计的反馈,每一个评审过程的总体目标是相同的:
保证正在构造的系统就是客户想要的系统
四、实验内容:
1.系统设计目标
1)项目内容要求的储蓄类别管理及储蓄币种类别管理、初始化数据库、定期储蓄、外部消费与结算模拟、阶段业务处理和综合查询报表等。
2)用户界面友好、性能稳定,软件具有较好的鲁棒性。
充分考虑备份、存档等系统维护策略。
3)优化数据的逻辑模型设计和物理模型设计,以便提高运行速度、降低存储空间,且能满足数据一致性要求。
充分考虑行为的合理划分,提高软件使用的便利性。
2.总体设计
软件层次结构图
系统的层次方框图:
3.详细设计
主要模块设计说明
1.身份验证模块设计说明(用户登录时涉及到身份验证,所以在此说明)
模块描述:
设置身份验证模块的目的在于保证储户信息的安全。
身份验证模块功能在于对申请登录的用户进行身份验证,通过者才能进入系统。
设计方法(算法):
银行业务员输入储户用户账号,储户输入密码并确定,系统保存用户输入的用户账号和密码,并在customer表中查找customerid和customername字段值,看是否等于业务员输入的用户账号和密码,如相同则通过验证,否则不通过,并给出“密码错误”的提示,如数据库中不存在这样的记录,则给出“该用户不存在”的提示。
身份验证模块的逻辑流程图:
NY
NY
2.存款模块设计说明
模块描述:
设置存款模块的目的在于将储户的金额存到系统中并记录信息。
存款模块将储户存款金额录入存储到系统中,并附带显示其他储户信息。
设计方法(算法):
当银行业务员输入存款金额后,系统进行处理,显示出账户余额,并且显示其他固定信息。
存款模块的逻辑流程图:
3.取款模块设计说明
模块描述:
设置取款模块的目的在于将储户的取款金额录入并存储到系统中。
取款模块将储户取款金额录入存储到系统中,并附带显示储户其他信息。
设计方法(算法):
当银行业务员输入取款金额后,点击确定按钮,系统进行处理,显示出账户余额,并且显示其他固定信息。
取款模块的逻辑流程图:
4.存款单打印模块设计说明
模块描述:
设置存款单打印模块的目的在于将储户的存款信息以单据的形式及时反馈给储户。
存款单打印模块将储户存款金额以及储户账户信息以单据形式反馈给储户。
设计方法(算法):
当银行业务员输入存款金额后,系统进行处理,显示出账户余额,并且显示其他固定信息。
5.取款单打印模块设计说明
模块描述:
设置取款单打印模块的目的在于将储户的取款信息以单据的形式及时反馈给储户。
取款单打印模块将储户取款金额以及储户账户信息以单据形式反馈给储户。
设计方法(算法):
当银行业务员输入取款金额后,系统进行处理,显示出账户余额,并且显示其他固定信息。
6.“按户名和账号”查询模块设计说明
模块描述:
设置“按户名和账号查询”模块的目的在于方便用户获知自己的存取款信息。
“按用户名和账号查询”模块功能在于通过储户输入户名和账号来查询自己的信息。
设计方法(算法):
输入户名和账号,单击查询按钮,系统判断户名和账号是否与数据库中的customername,customerid相同,若相同则输出储户各项信息,若不同则输出“输入有误!
请重新输入!
”的提示信息。
用户账号查询模块流程图:
重
新
输Y
入N
4.功能概要设计
银行储蓄软件的定期储蓄和外部消费与结算模拟是我负责的主要的部分,上述的几大模块是全部设计完毕的模块部分,模块设计是系统设计中非常重要的一部分,是编码的前提和基础,下面就上面所描画的功能模块图,我将具体、细致的介绍一下:
1)初始界面模块图:
这一个模块图主要描述了软件的整体设计。
由初始窗体界面进入登录窗体界面,在登录窗体界面中,选择你的身份(操作员或系统管理员),输入代码和密码,确认后就可进入主界面窗体。
如果你是新的成员,无论你是操作员还是系统管理员,都可以在此窗体界面上点击注册向导,在注册界面输入所要求的项,确定后你就可以进入主界面。
在主界面中包含上述模块图的几部分,根据身份,即是操作员还是系统管理员,对应权限不同。
1)系统设置模块图:
这一模块图主要用于系统人员的自我设置,包括密码修改和退出。
密码修改主要针对操作员和系统管理员,如果想修改自己的密码,在
这儿就可实现。
退出是用于退出本系统所用。
2)系统管理模块图:
这一模块图主要用于完成银行内部阶段性的统计业务。
日汇总:
日汇总业务是银行每天必须的工作,主要完成本日的业务汇总工作。
基表是日业务凭证表,由此表出发得到操作员代码表、币种代码表、类别代码表、存取标志代码表的本日数。
并把上述表中的昨日数加上本日数得到本月数。
日承转:
日承转是用于第二天早上业务的承转,发生在新的一天工作的开始。
主要完成日业务凭证表向月业务凭证表得承转,并把日业务凭证表清空;再就是完成操作员代码表、币种代码表、类别代码表、存取标志代码表个表中的本月数向昨日数的承转。
月汇总:
月汇总业务是银行每月月底必
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 实验 报告