第二章课后习题2、为方便储户,某银行拟开发计算机储蓄系统。储户填写的存款单或取款单由业务员输入系统,如果是存款,系统记录存款人姓名、住址、存款类型、存款日期、利率等信息,并印出存款单给储户;如果是取款,系统计算利息并印出利息清单给储户。写出问题定义并分析系统的可行性。答:如果是存款,储户填写存款单,然后交给业务员键入系统,同时系统还要记录存款人姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、利率等信息,完成后由系统打印存款单给储户。如果是取款,储户填写取款单,然后交给业务员,业务员把取款金额输入系统并要求储户输入密码以确认身份,核对密码正确无误后系统计算利息并印出利息清单给储户。为了满足储户的需求,该系统需要迅速的对用户的要求做出反馈,要对用户输入的信息作出最快的处理,所以就需要很大的主存容量,以及强大的数据库支持。由于是所面向的用户是广泛的储蓄用户群,所以需要系统强大的安全性能支持。可行性研究方法条件、假定和限制建议开发软件运行的最短寿命:5年进行系统方案选择比较的期限:2个月经费来源和使用限制:定制银行硬件、软件、运行环境和开发环境的条件和限制:银行中心拥有大型机以及用来支持的数据库,各个银行网点都有安好的PC机,安装有Windows2000及以上的操作系统。建议开发软件投入使用的最迟时间:开发完成后试运行1个月。可行性研究方法通过与银行熟练业务员进行深入讨论,制定详细用户调查问卷,真正了解用户以及银行业务员的实际需求,根据业务员提供的信息以及问题定义再综合调查问卷中用户提出的意见进行改进。最终确定项目需要解决的问题,并确定问题能不能被解决。决定可行性的主要因素1)项目开发成本2)所需设备置办成本3)技术是否能满足需求4)操作人员的熟练程度5)资源有效性对现有系统的分析1处理流程和数据流程系统流程图存款流程图:取款流程图:数据流图:2工作负荷当前大多数银行所使用的银行储蓄系统在办理业务时手续繁琐,人工业务操作过多,办理一个客户的业务就需耗费较长的时间,其他客户只有等待。这样太浪费时间,需要大量的业务员处理客户业务。特别是在节假日人流高峰期,导致工作效率非常低,且出错率高,以致客户等待办理手续过长感到不耐烦,降低了银行效率。这也给银行工作人员增加了非常大的负担和额外的工作负荷;同时业务员增多,银行费用支出多,给银行公司的发展带来严重的制约和压力。3费用支出运行现有系统所需要的费用支出包括:银行业务员及其他工作人员的工资,系统维护所需资金,4人员需要大量的业务员、客服人员,系统维护人员以及其他工作人员。5设备现有系统所需要的设备有:打印机、PC机、电脑。6局限性工作效率底下,不能符合大量群众的及时需求,给群众的生活带来不便。这是现有系统办理业务的流程中出现的一个严重问题。为了解决这一问题,让人们再办理银行业务更加方便快捷,我们急需开发一个更为高效的银行计算机储蓄系统,让储蓄业务不用再排队。(1)当前银行使用的银行储蓄系统在办理业务时仅仅靠手工操作,人工业务占据了全部,所以要求银行业务员办理业务时细心耐心,对数字敏感,算术水平高。它严重影响了工作效率,且出错率高,储户办理事务时需要等待时间过长,需要大量的银行业务员才能满足日益增长的存取款要求。(2)用纸张记录保存用户存款记录查找繁琐,耗时久,不方便,且容易丢失。且人工记录不能保证万无一失,容易出现数据录入错误。随着用户数的增多,这个缺陷会越发凸显。(3)存款记录保密性差,任何一个业务员都可以随意更改查阅用户数据,用户的资料容易泄漏,带来安全隐患。(4)业务员服务的时间有限,不能24小时办理业务,没有应急处理,不能更好的解决群众的需求。(5)所有客户的业务都由业务员手工办理,浪费人力资源。有的简单的业务经改进可由机器完成,完全不用人工参与,这样节约了人力成本,也提高效率。(6)对现有系统的改进维护只能依靠增多业务员数量,增多银行分行数目,提高业务员业务素质来实现。增多业务员数量会导致银行人员支出大大增多,同时需要多选址建设分行,或者扩大分行规模,费用代价巨大。业务员的业务素质需要培养,不能短期无限看见成效,及培养新人员需要一定的时间,这又浪费资金和人力资源。对现用系统的改进型维护已经不能解决储户越来越多、储户时间越来越长的问题。3、为方便旅客,某航空公司拟开发一个机票预定系统。旅行社把预定机票的旅客信息(姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地等)输入进入该系统,系统为旅客安排航班,印出取票通知和账单,旅客在飞机起飞的前一天凭取票通知和账单交款取票,系统校对无误即印出机票给旅客。写出问题定义并分析系统的可行性。1目标:在一个月内建立一个高效率,无差错的航空公司机票预定系统2存在的主要问题:人工不易管理,手续繁琐3建立新系统①经济可行性成本效益分析成本估算:打印机一台(2000元)+开发费(3500元)=5500元可承担效益估算:该系统有很好的社会效益,提高了航空公司售票效率,方便了旅客,售票方便化,科学化②技术可行性经过调查分析,得到目前航空公司机票预定系统流程图如下:③操作的可行性比较以上两图看出,与人工系统相比,计算机保留了原有的主要工作流程,可以看出计算机系统是人工系统的优化,操作也不复杂,工作人员在短时间经过培训就可熟练掌握。4结论由于经济、技术、操作三方面的可行性分析都通过,因此此技术系开发航空公司机票预定系统是可行的。4、目前住院病人主要由护士护理,这样做不仅需要大量的护士,而且由于不能随时观察危重病人的病情变化,还可能会延误抢救时机。某医院打算开发一个以计算机为中心的患者监护系统,试写出问题定义,并且分析开发这个系统的可行性。医院对患者监护系统的基本要求是随时接收每个病人的生理信号(脉搏、体温、血压、客户开购票证明购票证明开购票发票发票收费机票单机票客户查询请求机票核对事务事务航班信息的更新表单申请产生报表系统管理员系统管理员系统管理员数据库产生报表产生报表产生报表及账单系统管理员服务器终端显示数据在客户端打印机票和账单客户机终端显示数据客户机终端显示数据心电图等),定时记录病人情况以形成患者信息,此外,护士在需要时还可以要求系统印出某个指定病人的病情报告。答:从文体陈述可知,本系统的数据源点是“病人”和“护士”,他们分别提供生理信号和要求病情报告的信息。进一步分析问题陈述,从系统应该“定时记录病人情况以形成患者日志”这项要求可以想到,还应该有一个提供日期和时间信息的“时钟”作为数据源点。从问题陈述容易看出,本系统的数据终点是接受警告信息和病情报告的护士。系统对病人生理信号的处理功能主要是“接收信号”、“分析信号”和“产生警告信息”。此外,系统还应具有“定时取样生理信号”、“更新日志”和“产生病情报告”功能。为分析病人生理信号是否超出了医生规定的安全范围,应输出“患者安全范围”信息,此外,定时记录病人生理信号所形成的“患者日志”,显然也是一个数据存储。本系统的基本系统模型如下:监护患者系统的基本系统模型患者监护系统的功能级数据流图日志数据日志数据病情报告要求报告定时的生理信号日期时间患者安全范围生理信号生理信号危急病人信息生理信号生理信号1接受信号病人2分析信号3产生警告信息护士D2时钟4定时取样生理信号5更新日志6产生病情报告护士D1患者日志警告信号、病情报告日期、日志生理信号病人时钟护士患者监护系统病人5、北京某高校可用的电话号码有以下几类:校内电话号码由4位数字,第1位数字不是0;校外电话又分为本市电话和外地电话两类,拔校外电话需先拔0,若是本市电话则再接着拔8位数字(第一位不是0),若是外地电话则拔3位区码再拔8位电话号码(第一位不是0)。用2.5.2小节讲述的定义数据的方法,定义上述的电话号码。答:电话号码=[校内电话号码|校外电话号码]校内电话号码=非零数字+3位数字//后面继续定义校外电话号码=[本市号码|外地号码]本市号码=数字零+8位数字外地号码=数字零+3位数字+8位数字非零数字=[1|2|3|4|5|6|7|8|9]数字零=03位数字=3{数字}3//3至3个数字8位数字=非零数字+7位数字7位数字=7{数字}7数字=[0|1|2|3|4|5|6|7|8|9]第三章课后习题3、银行计算机储蓄系统的工作过程大致如下:储户填写的存款单或取款单由业务员输入系统,如果是存款则系统记录存款人姓名、住址(或电话号码)、身份证号码、、存款类型、存款日期、到期日期、利率密码等信息,并印出存单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出系统清单给储户。用数据流图描绘本系统的功能,并用实体联系图描绘系统中的数据对象。答:数据流图为存款信息利息值存款信息存款存单存款信息取款单存款单存款信息存款信息存款信息储户1记录存储信息2打印存款存单储户3核对密码4计算利息5打印利息存单D1存款信息ER模型本问题中共有两类实体,分别是“储户”和“储蓄所”,在它们之间存在“存取款”关系。因为一位储户可以在多家储蓄所存取款,一家储蓄所拥有多位储户,所以“存取款”是多对多(M:N)关系。储户的属性主要有姓名、住址、电话号码和身份证号码,储蓄所的属性主要是名称、地址和电话号码,而数额、类型、到期日期、利率和密码则是关系类型存取款的属性。4、分析习题2第3题所述的机票预定系统。试用实体联系图描绘本系统中的数据对象并用数据流图描绘本系统的功能。答:数据流图:E-R图向关系模型的转换将图3.6总体概念结构E-R图转化成关系模型。退票信息(订单号,旅客姓名,联系方式,证件号码)旅客(旅客姓名,证件号码,联系方式,性别)取票订票旅客机票预定系统处理旅客航班信息表(航班号,票价,起飞地,目的地,起飞时间)取票通知单(旅客姓名,取票时间,证件号码,航班号,座位号)机票信息表(座位号,航班号,座位信息,机票类型)nnn11mn退票信息航班信息旅客购买包含退票取票通知机票信息购买1姓名性别证件号码码联系方式起飞时间航班编号目的地起飞地票价航班编号座位号机票类型座位信息码航班编号旅客姓名座位号取票时间订单号旅客姓名证件号码码联系方式证件号码第五章课后习题3、用面向数据流的方法设计下列系统的软件结构(1)储蓄系统系统流程图:软件结构图:(2)机票预定系统功能级数据流图:E1储户E1储户F1存款单F2取款单F3存单F4利息D1存款信息F5存款信息F5存款信息E2业务员P3核算密码P4计算利息P5打印利息清单P1记录存款信息P2打印存单F7密码D2存款利率F8储蓄利率P6设置利率F8储蓄利率F8储蓄利率F6取款信息F5存款信息F7密码F4利息F4利息E1储户F2取款单D1存款信息P3.1输入取款信息F7密码P3.2密码校验F5存款信息F7密码无效取款信息旅行社顾客机票预定系统旅客信息机票预定信息机票顾客账单、取票通知旅客信息机票旅行社账单、取票通知航班信息P1录入预定信息P2安排航班P3顾客取票旅行社旅客信息账单机票取票通知预定信息机票顾客取票通知旅客信息机票旅客信息航班信息账单取票通知取票通知账单机票航班信息旅客信息账单机票取票通知机票旅客信息航班信息账单取票通知P2.1安排航班P2.3打印取票单据P2.1设置航班航班信息航空公司航班信息机票账单机票取票通知机票顾客取票通知机票账单取票信息P3.1核对取票凭证P3.2交款P3.3打印机票时钟日期账单取票通知交款信息顾客机票交款信息信息取票可以是两个子系统,预定和取票是不同的处理方式(后台批量和前台单个)P1录入预定信息旅行社预定信息机票顾客旅客信息机票航班信息账单取票通知取票通知账单机票P2.1设置航班航空公司P2.1安排航班航班信息P2.3打印取票单据P3.1核对取票凭证P3.2交款P3.3打印机票顾客软件结构图:(3)患者监护系统功能级数据流图:机票预定系统机票预定子系统机票发放子系统预定信息处理安排航班录入预定信息设置航班打印取票单据取票凭证处理录入取票凭证核对取票凭证交款打印及发放机票航班信息预定信息航班信息预定信息机票信息通知单账单机票信