软件工程银行管理系统数据流图盒图AD图流图层次图流程图
- 格式:doc
- 大小:445.00 KB
- 文档页数:4
淮海工学院计算机科学系实验报告书课程名:《软件工程》题目:结构化设计实验班级:***********学号:*************姓名:*************结构化设计验报告要求1目的与要求:1)系统学习和理解结构化软件工程设计阶段的基本任务、概念、原理、技术和方法;2)掌握设计阶段各种设计工具,如、层次图、程序流程图、N-S图、PAD图、判定表(树)、伪代码语言等工具的使用方法;3)通过理论学习和试验要逐步提高运用结构化软件工程的设计理论、技术和方法解决实际问题的综合应用和实践创新能力;4)请借阅有关Microsoft Office Visio 系统,预习系统有关的结构化设计工具和使用方法;5)按照实验题目要求独立完成结构化设计实验内容,严禁拷贝、抄袭他人设计成果;6)认真书写实验报告,并于下周5以前提交。
2 实验内容或题目1.针对自己第一次实验所完成的结构化分析项目(或题目),选择所绘制的数据流图,E-R图、状态图,完成下面2、3、4、5、6要求的结构化设计内容;2.按照面向数据流图的结构化设计方法,并在优化所选择数据流图的基础上,导出项目的总体设计层次图(H图);3.按照详细设计阶段所学的过程设计工具,分别选择程序流程图、盒图和PAD图等设计工具,在第2所得层次图中选择几个主要模块进行详细设计,画出相应设详细计结果图形;4.根据选择的E-R图进行数据库(以关系数据库模型为基准,进行数据库表及其关系设计);5.根据H图进行界面菜单设计(模拟菜单显示样式绘制菜单设计图),选择一个数据库表(实体)进行界面表单(数据编辑界面)设计;6.选择第3步中某一模块的详细设计结果,画出对应得流图,并计算其圈复杂度。
3 实验步骤与源程序1.优化所选择数据流图2.导出项目的总体设计层次图(H图);3.按照详细设计阶段所学的过程设计工具,分别选择程序流程图、盒图和PAD图等设计工具,在第2所得层次图中选择几个主要模块进行详细设计,画出相应设详细计结果图形;(1)流程图登录:存取款:办理银行卡:开始姓名为空FT 填写个人信息提示银行卡类型未选提示办卡成功T提示姓名为空提示身份证号码为空结束身份证号码为空TF银行卡类型已选两次密码一致TF提示两次密码输入不一致F(2)盒图登录: 存取款:(3)PAD 图 登录:用户名存在且密码正确提示错误登陆成功业务办理:要办理的业务手机银行存取款存取款转账贷款缴费网上银行手机银行转账贷款缴费网上银行4.根据选择的E-R 图进行数据库(以关系数据库模型为基准,进行数据库表及其关系设计); 储户数据库:存取款数据库:银行数据库:5.根据H 图进行界面菜单设计(模拟菜单显示样式绘制菜单设计图),选择一个数据库表(实体)进行界面表单(数据编辑界面)设计; 用户界面功能菜单:Form Title办理银行卡帐户管理存取款转帐贷款缴费网上银行手机银行密码修改存款银行卡挂失个人信息修改取款卡内定期转活期历史明细卡内活期转定期汇款卡转帐卡折互转水费电费天然气手机充值开通网上银行修改信息开通手机银行修改信息注销网上银行注销手机银行注销银行卡住房公积金短期小额贷款助学贷款长期抵押贷款银行卡办理界面:办理银行卡欢迎进入银行卡办理系统姓 名性 别身份证号码家庭住址银行卡类型男女信用卡储蓄卡银联卡请输入密码:请再次输入密码:确定清空返回6.选择第3步中某一模块的详细设计结果,画出对应得流图,并计算其圈复杂度。
软件⼯程实验报告-⼗个实验(银⾏系统)软件⼯程实验报告班级:****学号:**********姓名:***实验⼀软件需求分析实验项⽬名称:软件需求分析实验⽬的:1) 根据所选定题⽬进⾏需求分析⼯作;2) 通过实例掌握结构化数据流分析技术;3) 进⾏业务需求分析、⽤户需求、功能需求、⾮功能需求分析;4) 写出需求规格说明书(含数据流图)。
实验内容:⽤结构化数据流分析技术进⾏软件系统需求分析,得出系统得数据流图和数据字典。
实验步骤:1) 到相关单位进⾏需求分析。
2) 综合利⽤Internet ⽹和相关书籍整理并完善需求分析。
3) 画出系统数据流图(分清系统是事务型还是加⼯型)。
4) 得出系统数据字典。
1.软件系统需求描述:(从功能,性能上进⾏描述)(1)功能需求:银⾏系统系统所要完成的主要功能有两⽅⾯:①填写存款单或取款单交给业务员键⼊系统,如果是存款,系统记录存款⼈姓名、住址、存款类型、存款⽇期、利率等信息,完成后由系统打印存款单给储户。
②如果是取款,业务员把取款⾦额输⼊系统并要求储户输⼊密码以确认⾝份,核对密码正确⽆误后系统计算利息并印出利息清单给储户。
(2)性能需求:为了满⾜储户的要求,系统必须要有⾼的运作速度,储户填写的表单输⼊到系统,系统必须能快速及时作出响应,迅速处理各项数据、信息,显⽰出所有必需信息并打印出各项清单,所以要求很⾼的信息量速度和⼤的主存容量;由于要存贮⼤量的数据和信息,也要有⾜够⼤的磁盘容量;另外,银⾏计算机储蓄系统必须有可靠的安全措施,以保证储户的存储安全。
2.软件系统数据流图(由加⼯、数据流、⽂件、源点和终点四种元素组成):1) 顶层数据流打印存单打印清单2) 1层数据流图3) 2层数据流图3.软件系统数据字典:1) 数据流条⽬(1)数据流名:存单(反馈信息)说明:银⾏系统给⽤户每次存款打印的存款资料表单数据流来源:银⾏计算机储蓄系统数据流去向:⽤户数据流组成:存单=存款⼈+存款银⾏+业务员编号+存款⾦额+存款⽇期+⼿续费+帐户余额业务员编号=“01”..“99”存款⽇期=年+⽉+⽇位置:输出到打印机数据量流通量:暂不统计(2)数据流名:取款单说明:记录⽤户每次取款的资料和情况数据流来源:⽤户数据流去向:银⾏计算机储蓄系统数据流组成:取款单=取款⼈+取款银⾏+业务员编号+取款⾦额+取款⽇期业务员编号=“01”..“99”取款⽇期=年+⽉+⽇数据量流通量:暂不统计(3)数据流名:利息清单(或账单)说明:当⽤户取款时,银⾏内库要把利息清单(或账单)给银⾏计算机储蓄系统处理,再把利息清单(或账单)交于⽤户数据流来源:书库数据流去向:事务处理数据流组成:取款信息=取款⼈+取款银⾏+受理业务员+取款⾦额+取款⽇期+⼿续费+帐户余额业务员编号=“01”..“99”取款⽇期=年+⽉+⽇位置:输出到打印机数据量流通量:暂不统计2) 加⼯条⽬a)加⼯名:银⾏计算机储蓄系统加⼯编号:0层简要描述:对⽤户存取款进⾏管理和处理输⼊数据流:存款单、取款单输出数据流:存单、利息清单(或账单)加⼯逻辑:若存取款信息正确且密码正确⽆误则存取款成功,否则提⽰重写或重填。
1、典型的详细设计工具有流程图、盒图、、类程序设计语言。
问题反馈【教师释疑】正确答案:【PAD图】2、UML是一种语言。
问题反馈【教师释疑】正确答案:【可视化】3、类是一组具有属性、操作、关系和语义的对象的描述。
问题反馈【教师释疑】正确答案:【相同】4、对象是类的一个。
问题反馈【教师释疑】正确答案:【实例】5、用况图是一种表达系统模型的图形化工具。
问题反馈【教师释疑】正确答案:【功能】6、UML中的顺序图是一种交互图,即由一组对象以及按组织的对象之间的关系组成。
问题反馈【教师释疑】正确答案:【时序】7、模块的作用域是指受该模块内一个所影响的所有模块的集合。
问题反馈【教师释疑】正确答案:【判定】8、模块的控制域是指这个模块本身以及所有直接或间接它的模块的集合。
问题反馈【教师释疑】正确答案:【从属于】9、在数据流图中引入数据源和数据潭这两个术语的目的是为了表示系统的,可以使用它们和相关数据流来定义系统的。
问题反馈【教师释疑】正确答案:【环境|边界】10、模块结构图是系统的一个高层蓝图,允许设计人员在较高的层次上进行抽象思维。
模块结构图可用和两种形式来表示。
问题反馈【教师释疑】正确答案:【层次图|HIPO图】11、在设计模块结构图时要基于原则来设计模块。
问题反馈【教师释疑】正确答案:【高内聚低耦合】12、在进行总体结构设计时,人们通过长期的软件开发实践,总结出一些实现模块“高内聚低耦合”的启发式规则,对初始的模块结构图进行精化,其中一条规则是“尽力使模块的在其控制域之内”。
问题反馈【教师释疑】正确答案:【作用域】13、在进行总体结构设计时,人们通过长期的软件开发实践,总结出一些实现模块“高内聚低耦合”的启发式规则,对初始的模块结构图进行精化,其中一条规则是“力求深度、宽度、扇出和扇入”。
问题反馈【教师释疑】正确答案:【适中】14、在进行总体结构设计时,人们通过长期的软件开发实践,总结出一些实现模块“高内聚低耦合”的启发式规则,对初始的模块结构图进行精化,其中一条规则是“改进软件结构,提高模块的”。
银行系统UML 图一、用例图1.银行职员用例图登录管理账户修改账户2.客户与银行职员用例图Bank取款转账二、类图holder:String number:int type:Stringname:String ID:int数目:日期:数目:日期:ID:intname:String数目:日期:三、时序图1.登录时序图:LoginForm :MainForm Clerk2.创建登录对话框4.系统身份验证5.通过创建主界面2.存款时序图Clerk:MainForm:WithdrawForm:Account:Deposit2.请求存款操作3.修改账户时序图Clerk:LoginForm:QueryForm:AccountForm:Customer:Account1.进入主界面2.请求查询账户3.创建查询界面4.提交账号5.获得指定账户的信息6.创建账户界面7.修改账户信息8.更新账户信息9.更新账户信息Clerk:LoginForm :QueryFormCreateAccountAccount:Customer四、活动图1.银行职员登录活动图提示错误信息验证信息进入主界面N2.取款活动图验证账户是否存在且有效修改账户信息保存交易记录创建交易记录不存在或无效3.转账活动图提示错误信息验证账户是否存在且有效创建交易记录保存交易记录修改账户信息通知另一银行五、状态图六、协作图1.修改账户协作图提示错误信息验证账户是否存在且有效创建交易记录保存交易记录修改账户信息通知另一银行2.删除账户协作图Clerk:QueryForm:LoginForm七、系统组件图八、系统部署图。
简易银行卡管理系统开发详细设计说明书学院:计算机科学与技术班级:学号:姓名:简易银行卡管理系统的开发1.问题描述本设计开发一个简易的银行卡管理系统,模拟银行卡的一系列基本功能,包括开户、销户、挂失、解挂、存款、取款、转账、查询余额、修改密码等。
要求人机界面设计友好,用户使用方便,在用户输入有误时能给出相关的出错提示,并能承受一定的错误信息。
要求具有一定的安全机制,如用户在一定的时间范围内对系统未予以响应,或者用户多次输入错误的登录信息时,系统可将用户的银行卡代为保管。
用户的部分操作必须在拥有合法的足够的权限时才能生效,如销户、挂失、解挂等,这些操作必须在用户正确登录后才能使用。
建立后台数据库保存用户的信息,用户的操作通过系统程序反映到数据库中。
本系统由于是做一个简易的银行卡管理系统,因此只涉及到了用户的相关操作,将系统所有应有的功能都赋予了正确登录的用户,而没有再将权限部分的分配给系统管理员。
用户操作的最后结果将通过系统程序直接反映到数据库中,最终实现系统的各种功能。
2. 功能描述开户:创建一个新的账户,接受用户输入的身份证号,以及账户密码,判断用户输入的身份证号是否唯一且账户密码是否符合要求,如验证成功则为该用户生成一个唯一的帐号。
存款:在用户输入正确的帐号和密码的情况下,接受用户输入的存款金额,并对该帐号的存款信息进行更新。
取款:在用户输入正确的帐号和密码的情况下,接受用户输入的取款金额。
取款金额不应该大于当前帐号存款金额,当取款金额不大于当前帐号存款金额时,执行取款操作,并对该帐户的存款信息进行更新。
挂失:在用户输入正确的帐号和密码的情况下,接受用户挂失操作。
当帐号挂失后,与该帐号相关的操作都将被禁止。
销户:在用户输入正确的帐号和密码的情况下,接受用户销户。
当用户销户后,该帐号将被永久删除。
转帐:在用户输入正确的帐号和密码的情况下,接受用户转账操作,转帐金额不应该大于当前帐号存款金额,当转帐金额不大于当前帐号存款金额时,执行转帐操作,并对该帐户的存款信息及转帐的接受账户的存款信息进行更新。
软件工程各种图结构摘要:本文档旨在详细介绍软件工程中常见的图结构,包括数据流图、用例图、类图、时序图、活动图等。
每个章节都对不同的图结构进行了细化讲解,以帮助读者更好地理解和使用这些图结构。
1、数据流图1.1 概述1.2 数据流图符号1.3 数据流图的绘制步骤1.4 数据流图的应用场景2、用例图2.1 概述2.2 用例图符号2.3 用例图的绘制步骤2.4 用例图的应用场景3、类图3.1 概述3.2 类图符号3.3 类图的绘制步骤3.4 类图的应用场景4、时序图4.1 概述4.2 时序图符号4.3 时序图的绘制步骤4.4 时序图的应用场景5、活动图5.1 概述5.2 活动图符号5.3 活动图的绘制步骤5.4 活动图的应用场景6、总结在本文档中,我们详细介绍了软件工程中常见的各种图结构,包括数据流图、用例图、类图、时序图和活动图。
每个章节都对不同的图结构进行了介绍、符号说明和绘制步骤。
这些图结构在软件开发过程中有着重要的应用,能够帮助开发人员更好地理解需求、设计系统和测试功能。
附件:本文档无附件。
法律名词及注释:1、软件工程:指以工程化的方法开发、维护和管理软件的一门学科或技术体系。
2、数据流图:是一种表示系统功能模型的图形符号技术,用来描述系统功能的输入、输出以及数据在系统中流动的路径。
3、用例图:是一种用来表示系统功能和用户之间交互的图形符号技术,以用户使用系统的需求为基础来描述系统功能。
4、类图:是一种用来表示系统中各个类以及它们之间的关系的图形符号技术,以类、属性和方法为基础进行建模。
5、时序图:是一种用来描述对象之间消息交互顺序的图形符号技术,以时间为基准,展示对象之间的时序关系。
6、活动图:是一种用来表示系统中各个活动以及它们之间的关系的图形符号技术,以流程、动作和决策为基础进行建模。
软件工程流程图首先,软件工程流程图可以分为几个主要的类型,包括需求分析流程图、设计流程图、编码流程图、测试流程图和部署流程图等。
每种类型的流程图都有其特定的作用和应用场景,可以帮助团队成员更好地理解和把握软件开发的全貌。
需求分析流程图主要用来描述软件需求分析阶段的工作流程,包括需求收集、需求分析、需求确认等步骤。
通过需求分析流程图,团队成员可以清晰地了解每个步骤的工作内容和工作顺序,有助于避免遗漏和混乱,提高需求分析的质量和效率。
设计流程图主要用来描述软件设计阶段的工作流程,包括总体设计、详细设计、接口设计等步骤。
设计流程图可以帮助团队成员更好地理解软件设计的全貌,把握设计的重点和难点,有助于设计工作的规范和统一。
编码流程图主要用来描述软件编码阶段的工作流程,包括编码、调试、代码审查等步骤。
编码流程图可以帮助团队成员更好地把握编码的规范和标准,提高编码的质量和效率。
测试流程图主要用来描述软件测试阶段的工作流程,包括单元测试、集成测试、系统测试等步骤。
测试流程图可以帮助团队成员更好地理解测试的全貌,把握测试的重点和难点,提高测试工作的覆盖范围和深度。
部署流程图主要用来描述软件部署阶段的工作流程,包括部署计划、部署环境准备、部署实施等步骤。
部署流程图可以帮助团队成员更好地规划和执行部署工作,提高部署的效率和成功率。
总的来说,软件工程流程图在软件开发过程中起着非常重要的作用,它可以帮助团队成员更好地理解和规划软件开发的各个阶段和步骤,提高工作效率和质量。
因此,我们在软件开发过程中应该充分利用软件工程流程图,加强团队成员之间的沟通和协作,提高软件开发的整体水平和质量。
一、选择题1.软件开发瀑布模型中的软件定义时期各个阶段依次是:(B)A) 可行性研究,问题定义,需求分析。
B) 问题定义,可行性研究,需求分析。
C) 可行性研究,需求分析,问题定义。
D) 以上顺序都不对。
(软件开发时期:概要设计、详细设计、软件实现、软件测试)2.可行性研究主要从以下几个方面进行研究:(A)A)技术可行性,经济可行性,操作可行性。
B)技术可行性,经济可行性,系统可行性。
C)经济可行性,系统可行性,操作可行性。
D)经济可行性,系统可行性,时间可行性。
3.耦合是对软件不同模块之间互连程度的度量。
各种耦合按从强到弱排列如下:(C)A) 内容耦合,控制耦合,数据耦合,公共环境耦合。
B) 内容耦合,控制耦合,公共环境耦合,数据耦合。
C) 内容耦合,公共环境耦合,控制耦合,数据耦合。
(内容耦合、公共耦合、外部耦合、控制耦合、特征耦合、数据耦合)D) 控制耦合,内容耦合,数据耦合,公共环境耦合。
4.在详细设计阶段所使用到的设计工具是:(C)A) 程序流程图,PAD图,N-S图,HIPO图,判定表,判定树.B) 数据流程图,Yourdon 图,程序流程图,PAD图,N-S图,HIPO图。
C) 判定表,判定树,PDL,程序流程图,PAD图,N-S图。
D) 判定表,判定树,数据流程图,系统流程图,程序流程图,层次图。
详细设计阶段工具:判定表、判定树、数据流程图、系统流程图、程序流程图、PAD图、N-S图、PDL在软件详细设计阶段,常用的图形描述工具有程序流程图,盒图(NS 图)和问题分析图(PAD) .常用的语言描述工具为 PDL(程序设计语言) ,常用的表格描述工具有判定表和判定树.DFD数据流图:总体设计阶段5.按照软件工程的原则,模块的作用域和模块的控制域之间的关系是:(A)A)模块的作用域应在模块的控制域之内。
B)模块的控制域应在模块的作用域之内。
C)模块的控制域与模块的作用域互相独立。
D)以上说法都不对。
选择题1、以下哪个不是详细设计中常用的图形描述工具 A 。
A、数据流图B、程序流图C、盒图(N-S图)D、问题分析图(PAD)2、耦合是对软件结构中各个不同模块之间互相关联程度的度量。
一个模块直接访问另一个模块的内部信息应属于 B 方式。
A、控制耦合B、内容耦合C、数据耦合D、外部耦合3、在七种内聚中属于最强的是功能内聚,最弱的是偶然内聚4、软件工程的原则包括:模块化、抽象与逐步求精、信息隐藏与局部化、模块独立。
模块 D ,则说明模块的独立性越强。
A.耦合越强B、扇入数越高C、扇入数越低D、耦合越弱5、软件设计包括 D 两个阶段。
A、接口设计和结构设计B、数据设计和概要设计C、结构设计和过程设计D、概要设计和详细设计6、现有一个计算类型的程序,它的输入只有一个Y,其范围是—50≤Y≤50。
现从输入的角度考虑设计了一组测试用例:—100,100,0。
设计这组测试用例的方法是 D 173页A、条件覆盖法B、边缘值分析法C、错误推测法 D 、等价划分法7、系统设计分为两个阶段分别为设计方案与选择方案 92页。
8、对于变换型的数据流图,按照软件设计思想,要将一个大型复杂的软件进行分解,要确定数据流图的输入边界,输出边界和变换中心。
9、自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先策略和宽度优先的策略157页。
10、在用面向对象观点建立起的3种模型中, B 231页基本、最重要、最核心的。
A、动态模型B、对象模型C、功能模型D、状态模型11、在软件结构图的有关术语中,用于表示软件结构中控制的层数的是 C 。
A、扇出B、扇入C、深度D、宽度12、指出PDL是哪种语言过程设计语言128页13、在进行软件测试时,首先应当进行单元测试,然后再进行组装测试,最后再进行有效性测试。
14、结构化设计方法是面向 B 的设计。
A.数据编码 B.数据流 C.数据库 D.数据结构15、软件工程的过程模型中,瀑布模型是经典的传统模型。
淮海工学院计算机科学系实验报告书
课程名:《软件工程》
题目:结构化设计实验
班级: ***********
学号: *************
姓名: *************
结构化设计验报告要求
1目的与要求:
1)系统学习和理解结构化软件工程设计阶段的基本任务、概念、原理、技术和方法;
2)掌握设计阶段各种设计工具,如、层次图、程序流程图、N-S图、PAD图、判定表(树)、伪代码语言等工具的使用方法;
3)通过理论学习和试验要逐步提高运用结构化软件工程的设计理论、技术和方法解决实际问题的综合应用和实践创新能力;
4)请借阅有关Microsoft Office Visio 系统,预习系统有关的结构化设计工具和使用方法;
5)按照实验题目要求独立完成结构化设计实验内容,严禁拷贝、抄袭他人设计成果;
6)认真书写实验报告,并于下周5以前提交。
2 实验内容或题目
1.针对自己第一次实验所完成的结构化分析项目(或题目),选择所绘制
的数据流图,E-R图、状态图,完成下面2、3、4、5、6要求的结构化
设计内容;
2.按照面向数据流图的结构化设计方法,并在优化所选择数据流图的基础
上,导出项目的总体设计层次图(H图);
3.按照详细设计阶段所学的过程设计工具,分别选择程序流程图、盒图和
PAD图等设计工具,在第2所得层次图中选择几个主要模块进行详细设
计,画出相应设详细计结果图形;
4.根据选择的E-R图进行数据库(以关系数据库模型为基准,进行数据库
表及其关系设计);
5.根据H图进行界面菜单设计(模拟菜单显示样式绘制菜单设计图),选
择一个数据库表(实体)进行界面表单(数据编辑界面)设计;
6.选择第3步中某一模块的详细设计结果,画出对应得流图,并计算其圈
复杂度。
3 实验步骤与源程序
1.优化所选择数据流图
2.导出项目的总体设计层次图(H图);
3.按照详细设计阶段所学的过程设计工具,分别选择程序流程图、盒图和PAD 图等设计工具,在第2所得层次图中选择几个主要模块进行详细设计,画出相应设详细计结果图形;
(1)流程图
登录:存取款:
办理银行卡:
(2)盒图
登录:存取款:
(3)PAD图
登录:
业务办理:
4.根据选择的E-R图进行数据库(以关系数据库模型为基准,进行数据库表及其关系设计);
储户数据库:
存取款数据库:
银行数据库:
5.根据H图进行界面菜单设计(模拟菜单显示样式绘制菜单设计图),选择一个数据库表(实体)进行界面表单(数据编辑界面)设计;
用户界面功能菜单:
银行卡办理界面:
6.选择第3步中某一模块的详细设计结果,画出对应得流图,并计算其圈复杂度。
办理银行卡:
圈复杂度为:5。
4 测试数据与实验结果(可以抓图粘贴)
见实验步骤
5 结果分析与实验体会
这次实验通过动手实践,对书上介绍的层次图、流程图、盒图、PAD图、流图有了真正的了解,对设计各种图的工具更加熟悉,对于结构化软件工程设计阶段的基本任务、概念、原理、技术和方法有了进一步的了解。