欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    软件工程导论课后习题答案41826.docx

    • 资源ID:62760222       资源大小:1.93MB        全文页数:29页
    • 资源格式: DOCX        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    软件工程导论课后习题答案41826.docx

    Evaluation Warning: The document was created with Spire.Doc for .NET.第一章一、什么是软件危机?它有哪些典型表现?为什么会出现软件危机?软件危机是指在计算机软件开发、使用与维护过程中遇到的一系列严重问题和难题。它包括两方面:如何开发软件,已满足对软件日益增长的需求;如何维护数量不断增长的已有软件。软件危机的典型型表现:(1) 对软件件开发成本和和进度的估计计常常很不准准确。常常出出现实际成本本比估算成本本高出一个数数量级、实际际进度比计划划进度拖延几几个月甚至几几年的现象。而而为了赶进度度和节约成本本所采取的一一些权宜之计计又往往损害害了软件产品品的质量。这这些都降低了了开发商的信信誉,引起用用户不满。(2) 用户对对已完成的软软件不满意的的现象时有发发生。(3) 软件产产品的质量往往往是靠不住住的。(4) 软件常常常是不可维维护的。(5) 软件通通常没有适当当的文档资料料。文档资料料不全或不合合格,必将给给软件开发和和维护工作带带来许多难以以想象的困难难和难以解决决的问题。(6) 软件成成本、软件维维护费在计算算机系统总成成本中所占比比例逐年上升升。(7) 开发生生产率提高的的速度远跟不不上计算机应应用普及的需需求。软件危机出现的的原因:(1) 来自软软件自身的特特点:是逻辑部件件,缺乏可见见性;规模庞庞大、复杂,修修改、维护困困难。(2) 软件开开发与维护的的方法不当:忽视需求分分析;认为软软件开发等于于程序编写;轻视软件维维护。(3) 供求矛矛盾将是一个个永恒的主题题:面对日益增增长的软件需需求,人们显显得力不从心心。二、什么是软件件工程?它有有哪些本质特特征?怎样用用软件工程消消除软件危机机?1993年IEEEE的定义义:软件工程程是: 把系统的的、规范的、可可度量的途径径应用于软件件开发、运行行和维护过程程,也就是把把工程应用于于软件; 研究中提到的途途径。软件工程的本质质特征:(1) 软件工工程关注于大大型程序(软件系统)的构造(2) 软软件工程的中中心课题是分分解问题,控控制复杂性(3) 软件件是经常变化化的,开发过过程中必须考考虑软件将来来可能的变化化(4) 开发软软件的效率非非常重要,因因此,软件工工程的一个重重要课题就是是,寻求开发发与维护软件件的更好更有有效的方法和和工具(5) 和谐地地合作是开发发软件的关键键(6) 软软件必须有效效地支持它的的用户(7) 在软件件工程领域中中是由具有一一种文化背景景的人替具有有另一种文化化背景的人(完成一些工工作)消除软件危危机的途径:(1) 对计算算机软件有一一个正确的认认识(软件程序)(2) 必须充充分认识到软软件开发不是是某种个体劳劳动的神秘技技巧,而应该该是一种组织织良好、管理理严密、各类类人员协同配配合、共同完完成的工程项项目(3) 推广使使用在实践中中总结出来的的开发软件的的成功技术和和方法(4) 开发和和使用更好的的软件工具三、简述结构化化范型和面向向对象范型的的要点,并分分析他们的优优缺点。七、什么是软件件生命周期模模型?试比较较瀑布模型、快快速原型模型型、增量模型型和螺旋模型型的优缺点,说说明每种模型型的使用范围围。软件生命周期模模型是跨越整整个生存期的的系统开发、运运作和维护所所实施的全部部过程、活动动和任务的结结构框架。l 瀑布模型 优优点:它提供了一个模模板,这个模模板使得分析析、设计、编编码、测试和和支持的方法法可以在该模模板下有一个个共同的指导导。虽然有不不少缺陷但比比在软件开发发中随意的状状态要好得多多。缺点:(1) 实际的的项目大部分分情况难以按按照该模型给给出的顺序进进行,而且这这种模型的迭迭代是间接的的,这很容易易由微小的变变化而造成大大的混乱。(2) 经常情情况下客户难难以表达真正正的需求,而而这种模型却却要求如此,这这种模型是不不欢迎具有二二义性问题存存在的。(3) 客户要要等到开发周周期的晚期才才能看到程序序运行的测试试版本,而在在这时发现大大的错误时,可可能引起客户户的惊慌,而而后果也可能能是灾难性的的。(4) 会经常常在过程的开开始和结束时时碰到等待其其他成员完成成其所依赖的的任务才能进进行下去,有有可能花在等等待的时间比比开发的时间间要长。称之之为“堵塞状态”。它是软件工程中中应用最广泛泛的过程模型型,在软件工工程中占有肯肯定和重要的的位置。l 快速原型模型在进行了基本需需求分析之后后,快速开发发出产品的原原型,然后基基于这个原型型,同客户沟沟通、交流,更更好地了解客客户需求,不不断修改这个个原型,到了了双方认可的的程度,再做做详细地分析析、设计和编编程,最终开开发出令客户户满意的产品品。 优点:使用户能能够感受到实实际的系统,使使开发者能够够快速地构造造出系统的框框架。缺点:产品的先先天性不足,因因为开发者常常常需要做实实现上的折中中,可能采用用不合适的操操作系统或程程序设计语言言,以使原型型能够尽快工工作。 l 增量模型优点:(1) 人员分分配灵活,刚刚开始不用投投入大量人力力资源,当核核心产品很受受欢迎时,可可增加人力实实现下一个增增量。(2) 当配备备的人员不能能在设定的期期限内完成产产品时,它提提供了一种先先推出核心产产品的途径,这这样就可以先先发布部分功功能给客户,对对客户起到镇镇静剂的作用用。缺点:(1) 至始至至终开发者和和客户纠缠在在一起,直到到完全版本出出来。(2) 适合于于软件需求不不明确、设计计方案有一定定风险的软件件项目。该模型具有一定定的市场。l 螺旋模型优点:对于大型型系统及软件件的开发,这这种模型是一一个很好的方方法。开发者者和客户能够够较好地对待待和理解每一一个演化级别别上的风险。缺点:(1) 需要相当的的风险分析评评估的专门技技术,且成功功依赖于这种种技术。(2) 很明显显一个大的没没有被发现的的风险问题,将将会导致问题题的发生,可可能导致演化化 的方方法失去控制制。(3) 这种模模型相对比较较新,应用不不广泛,其功功效需要进一一步的验证。该模型适合于大大型软件的开开发第二章4目前住院病病人主要由护护士护理,这这样做不仅需需要大量护士士,而且由于于不能随时观观察危重病人人的病情变化化,还会延误误抢救时机。某某医院打算开开发一个以计计算机为中心心的患者监护护系统,请写写出问题定义义,并且分析析开发这个系系统的可行性性。 医院对对患者监护系系统的基本要要求是随时接接收每个病人人的生理信号号(脉搏、体体温、血压、心心电图等),定定时记录病人人情况以形成成患者日志,当当某个病人的的生理信号超超出医生规定定的安全范围围时向值班护护士发出警告告信息,此外外,护士在需需要时还可以以要求系统印印出某个指定定病人的病情情报告。问题定义:从问题陈述可知知,本系统的的数据源点是“病人”和“护士”,他们分别别提供生理信信号和要求病病情报告的信信息。进一步步分析问题陈陈述,从系统统应该“定时记录病病人情况以形形成患者日志志”这项要求可可以想到,还还应该有一个个提供日期和和时间信息的的“时钟”作为数据源点点。从问题陈述容易易看出,本系系统的数据终终点是接收警警告信息和病病情报告的护护士。系统对病人生理理信号的处理理功能主要是是“接收信号”、“分析信号”和“产生警告信信息”。此外,系系统还应该具具有“定时取样生生理信号”、“更新日志”和“产生病情报报告"的功能能。 为了分分析病人生理理信号是否超超出了医生规规定的安全范范围,应该存存储“患者安全范范围”信息。此外外,定时记录录病人生理信信号所形成的的“患者日志”,显然也是是一个数据存存储。可行性叙述略。5北京某高校校可用的电话话号码有以下下几类:校内内电话号码由由4位数字组组成,第1位位数字不是00;校外电话话又分为本市市电话和外地地电话两类,拨拨校外电话需需先拨0,若若是本市电话话则再接着拨拨8位数字(第1位不是是0),若是是外地电话则则拨3位区码码,再拨8位位电话号码(第1位不是是0)。请用2.5.22小节讲述的的定义数据的的方法,定义义上述的电话话号码。电话号码 = 校内电话话号码 | 校外电话号号码校内电话号号码 = 非非零数字 + 3位数字字校外电话号码 = 本市市号码 | 外地号码本市号码 = 数字零零 + 8位位数字外地号码 = 数字零 + 3位数字字 + 8位位数字非零数字 = 1|2|3|44|5|6|7|8|99数字零 = 003位数字 = 3数数字38位数字 = 非零数数字 + 77位数字7位数字 = 7数字7数字 = 0|l|2|3|44|5|6|7|8|99第三章1、 为什么要进行需需求分析?通通常对软件系系统有哪些需需求?通过需求分析,明明确用户对目目标软件系统统在功能、性性能、行为、设设计约束等方方面的期望,回回答软件系统统“必须做什么么”。通常对软件件系统的需求求是以下几方方面的综合:(1) 功能需需求;(2) 性能能需求;(3) 可靠靠性和可用性性需求;(4) 出错错处理需求;(5) 接口口需求;(6) 约束束;(7) 逆向向需求;(8) 将来来可能提出的的要求。2、怎样与用户户有效的沟通通以获取用户户的真实需求求?(1) 初步需需求获取,通通过访谈与会会议、问卷调调查、观察用用户工作流程程等方法;(2) 面向数数据流,自顶顶向下求精(3) 简易的的应用规格说说明(4) 快速速建立软件原原型6、复印机的工工作过程大致致如下:未接接到复印命令令时处于闲置置状态,一旦旦接到复印命命令则进入复复印状态,完完成一个复印印命令规定的的工作后又回回到闲置状态态,等待下一一个复印命令令;如果执行行复印命令时时发现没纸,则则进入缺纸状状态,发出警警告,等待装装纸,装满纸纸后进入闲置置状态,准备备接收复印命命令;如果复复印时发生卡卡纸故障,则则进入卡纸状状态,发出警警告,等待维维修人员来排排除故障,故故障排除后回回到闲置状态态。请用状态转换图图描绘复印机机的行为。从问题陈述可知知,复印机的的状态主要有有“闲置”、“复印”、“缺纸”和“卡纸”。引起状态态转换的事件件主要是“复印命令”、“完成复印命命令”、“发现缺纸”、“装满纸”、“发生卡纸故故障”和“排除了卡纸纸故障”。状态转换换图如下:1、为每种类型型的模块耦合合举一个具体体的例子。(1) 非直接接耦合例如,两个个模块没有直直接关系(模模块1和模块块2),模块块独立性最强强。(2) 数据耦耦合例如,下左左图 数据耦合 特特征耦合(3) 特征耦耦合例如,上右右图“住户情况”是是一个数据结结构,图中模模块都与此数数据结构有关关。“计算水费”和“计算电费”本无关,由由于引用了此此数据结构产产生依赖关系系,它们之间间也是标记偶偶合。(4) 控制耦耦合-模块块A通过传送送开关、标志志、名字等控控制信息,明明显地控制选选择模块B的的功能,例如如下图(5) 外部耦耦合例如,下左左图,模块AA、B均需使使用共享打印印机 外部耦合 公共环环境耦合(6) 公共环环境耦合例如,上右右图,模块AA、B、C共共享全局变量量数组(7) 内容耦耦合例如,一个个过程非正常常地进入另一一个过程Sub AA()gotto LEnd subbSub BB()L: End subb2、用面向数据据流的方法设设计下列系统统的软件结构构:(3)患者监护护系统(需求求见习题2-4)功能级数据流图图:软件结构图:3、 从伪码转换成的的数据流程图图 从伪码转转换成的盒图图4、(1)通常常所说的结构构化程序,是是按照狭义的的结构程序的的定义衡量,符符合定义规定定的程序。本本题图6-118所示的程程序的循环控控制结构有两两个出口,显显然不符合狭狭义的结构程程序的定义,因因此是非结构构化的程序。(2)使用附加加的标志变量量flag,至至少有两种方方法可以把该该程序改造为为等价的结构构化程序,下下图所示盒图图描绘了两个个等价的结构构化程序。(3)不使用fflag把该该程序改造为为等价的结构构化程序的方方法如下图所所示。7、令P代表交交易的总金额额,Q代表每每股的售价,nn代表交易的的股数。判定表的每一列列是一条计算算规则。例如如,第1列(规则l)规规定,当交易易总金额P少少于1,0000元,且每每股售价Q低低于l4元,且且交易的股数数n是l000的倍数时,给给经纪人的手手续费为:(1+0055)×00844P第16列(规则则l6)表明明,当交易总总金额P超过过l0,0000元,且每每股售价Q在在14元到225元之间,且且交易的股数数n不是l000的倍数时时,手续费为为:(1+0066)X(004P+1134)表示手续费计算算方法的判定定表和判定树树如下图所示示。判定表判定树4(3) 答:(1)语句句覆盖的测试试用例 因为每每个判定表达达式为真或为为假时均有赋赋值语句,为为了使每个语语句都至少执执行一次,总总共需要两组组测试数据,以以便使得每个个判定表达式式取值为真或或为假各一次次。下面是实实现语句覆盖盖的典型测试试用例: 使33个判定表达达式之值全为为假 输入:A=1,BB=1,C=1预期的输出出:X=1,YY=2,Z=3 使33个判定表达达式之值全为为真 输入:A=20,BB=40,CC=60预期的输出出:X=100,Y=200,Z=300 (2)路径覆盖的的测试用例 本程序序共有8条可可能的执行通通路,为做到到路径覆盖总总共需要8组组测试数据。下下面是实现路路径覆盖的典典型测试用例例: 3个个判定表达式式之值全为假假 输入:A=1,BB=1,C=1预期的输出出:X=1,YY=2,Z=3 3个个判定表达式式依次为假、假假、真 输入:A=1,BB=1,C=60预期的输出出:X=1,YY=2,Z=30 3个个判定表达式式依次为假、真真、假 输入:A=1,BB=40,CC=1预期的输出出:X=1,YY=20,ZZ=33个判定表达达式依次为假假、真、真输入:A=1,BB=40,CC=60预期的输出出:X=1,yy=20,ZZ=303个判定表达达式依次为真真、假、假输入:A=200,B=1,CC=1预期的输出出:X=100,y=2,ZZ=33个判定表达达式依次为真真、假、真输入:A=200,B=1,CC=60预期的输出出:X=100,y=2,ZZ=303个判定表达达式依次为真真、真、假输入:A=200,B=400,C=1预期的输出出:X=100,y=200,Z=33个判定表达达式全为真输入:A=200,B=400,C=600预期的输出出:X=100,y=200,Z=3006、答:应该分分别使用正常常的输入数据据和异常的输输入数据,作作为验收测试试数据。( 1 )用正正常的输人数数据作为测试试数据 输入入常规的出发发点、目的地地、5个位置置校核点、高高度、速度及及飞机型号。 针对对5对不同的的出发点和目目的地,重复复执行测试。 固定定出发点、目目的地、位置置校核点、高高度和速度,分分别输入35种不同的的飞机型号,重重复执行测试试。 固定定出发点、目目的地、位置置校核点、高高度和飞机型型号,分别输输入35个个不同的速度度,重复执行行测试。 固定定出发点、目目的地、位置置校核点、速速度和飞机型型号,分别输输入35个个不同的高度度,重复执行行测试。 固定定出发点、目目的地、高度度、速度和飞飞机型号,分分别输入35组不同的的位置校核点点,重复执行行测试。 固定定出发点、位位置校核点、高高度、速度和和飞机型号,分分别输入35个不同的的目的地,重重复执行测试试。 固定定目的地、位位置校核点、高高度、速度和和飞机型号,分分别输入35个不同的的出发点,重重复执行测试试。 同时时改变一对参参数的值,其其他参数的值值固定,重复复执行测试。 同时时改变3个参参数的值,其其他参数的值值固定,重复复执行测试。 (111)以适当的的方式改变描描述天气状况况的数据,重重复执行测试试。( 2 )用边边界数据值作作为测试数据据 分别别使用距离非非常近和距离离非常远的两两个地点作为为出发点和目目的地。 输入入位置校核点点的非常规组组合。 分别输入非非常高和非常常低的高度值值。 分别别输入非常高高和非常低的的速度值。 输入极其少少见的飞机型型号。( 3 )用无无效的数据作作为测试数 用由由字母数字字字符和控制字字符混合在一一起组成的字字符串作为出出发点或目的的地。 用数数字0作为所所有参数的值值。 用负数作为为高度和速度度的值。补充作业:答:题中并没有有给出实现函函数SEARRCH的算法法,仅仅描述述了它的功能能,因此,只只能用黑盒测测试技术设计计测试它的测测试方案。为了用等价划分分法设计测试试方案,首先先需要划分输输入数据的等等价类。根据据该函数的功功能,可以把把它的输入数数据划分成以以下等价类:(1)有效输入入的等价类 ·数组组有偶数个元元素,第1个个元素是所要要找的数。 ·数组组有偶数个元元素,最后一一个元素是所所要找的数。 ·数组组有偶数个元元素,数组中中没有所要找找的数。 ·数组组有奇数个元元素,第1个个元素是所要要找的数。 ·数组组有奇数个元元素,最后一一个元素是所所要找的数。 ·数组组有奇数个元元素,数组中中没有所要找找的数。 ·数组组有多个元素素,其中一个个正整数是所所要找的数。 ·数组组有多个元素素,其中一个个负整数是所所要找的数。 ·数组组有多个元素素,其中一个个0是所要找找的数。(2)无效输入入的等价类数组实际长度不不等于变元ssize的值值。为了使用边界值值分析法设计计测试方案,应应该再考虑下下述几种边界界情况: ·数组组长度为l,其其元素是所要要找的数。 ·数组组长度为l,其其元素不是所所要找的数。 ·数组组为空(长度度为0)。根据上面划分出出的等价类及及边界情况,可可以设计出下下述测试方案案:数组长度为ll,其正整数数元素是所要要找的数输入:someearrayy=6,ssize=11,valuue=6预期的输出出:l数组长度为ll,其负整数数元素是所要要找的数输入:someearrayy=-200),sizze=1,vvalue=20预期的输出出:l数组长度为ll,其元素00是所要找的的数输入:someearrayy=0,ssize=11,valuue=0预期的输出出:l数组长度为ll,其元素不不是所要找的的数输入:someearrayy=6,ssize=11,valuue=8预期的输出出:-1数组为空输入:someearrayy=,ssize=00,valuue=6预期的输出出:-1数组有偶数个个元素,第11个元素是正正整数且是所所要找的数输入:someearrayy=1,22,3,4,sizee=4,vaalue=11预期的输出出:l数组有偶数个个元素,最后后一个元素是是负整数且是是所要找的数数输入:someearrayy=1,22,3,一44,sizze=4,vvalue=4预期的输出出:4数组有偶数个个元素,其中中一个元素00是所要找的的数输入:someearrayy=1,22,0,3,sizee=4,vaalue=00预期的输出出:3数组有偶数个个元素,元素素中没有所要要找的数输入:someearrayy=1,22,3,4,sizee=4,vaalue=55预期的输入入:-1,数组有奇数个个元素,第11个元素是00且是要找的的数输入:someearrayy=0,11,2),ssize=33,valuue=0预期的输出出:l(11)数组有有奇数个元素素,最后一个个元素是负整整数且是所要要找的数输入:someearrayy=1,22,一3,ssize=33,valuue=3预期的输入入:3(12)数组有有奇数个元素素,没有要找找的数输入:someearrayy=1,22,3,ssize=33,valuue=3预期的输出出:-1(13)数组实实际长度不等等于sizee输入:someearrayy=1,22,3,ssize=22,valuue=1预期的输出出:“无效的siize值”第九章作业2、答:对象是面向对象象方法学开发发软件时对客客观世界实体体的抽象,它它是由描述实实体属性的数数据和可以对对这些数据施施加的所有操操作封装在一一起构成的统统一体。传统统的数据是传传统方法学开开发软件时对对客观世界实实体的抽象,但但是,这种抽抽象是不全面面的:数据只只能描述实体体的静态属性性,不能描述述实体的动态态行为。必须须从外界对数数据施加操作作,才能改变变数据、实现现相应的行为为。对象与传统数据据有本质的区区别,它不是是被动地等待待外界对它施施加操作,相相反,它是进进行处理的主主体。必须发发消息请求对对象主动地执执行它的某些些操作,处理理它的私有数数据,而不能能直接从外界界对它的私有有数据进行操操作。5、答:所谓模型,就是是为了理解事事物而对事物物进行的一种种抽象,是对对事物的一种种无歧义的书书面描述。通通常,模型由由一组图形符符号和组织这这些符号的规规则组成,利利用它们来定定义和描述问问题域中的术术语和概念。更更进一步地讲讲,模型是一一种思维工具具,利用这种种工具可以把把知识规范地地表示出来。众所周知,在解解决问题之前前必须理解所所要解决的问问题。对问题题理解得越透透彻,就越容容易解决它。在在软件开发的的过程中,为为了更好地理理解客户要求求解决的问题题,往往需要要建立问题域域的模型。为了开发复杂的的软件系统,系系统分析员应应该从不同角角度抽象出目目标系统的特特征,使用精精确地表示方方法构造系统统的模型,验验证模型是否否满足用户对对目标系统的的需求,并在在设计过程中中逐步把和实实现有关的细细节加进模型型中来,直到到最终实现这这个模型。对对于那些过分分复杂而不能能直接理解的的系统,特别别需要建立模模型。建立模模型的目的主主要是为了降降低复杂性。人人的头脑每次次只能处理少少量信息,模模型通过把系系统的重要部部分分解成人人的头脑一次次能处理的若若干个子部分分,从而减少少了系统的复复杂度。10、答:订货系统用例图图作业题:有如下用户需求求:王大夫在小镇上上开了一家牙牙科诊所。他他有一个牙科科助手、一个个牙科保健员员和一个接待待员。王大夫夫需要一个软软件系统来管管理预约。当病人打电话预预约时,接待待员将查阅预预约登记表,如如果病人申请请的就诊时间间与已定下的的预约时间冲冲突,则接待待员建议一个个就诊时间以以安排病人尽尽早得到诊治治。如果病人人同意建议的的就诊时间,接接待员将输入入约定时间和和病人的名字字。系统将核核实病人的名名字并提供记记录的病人数数据,数据包包括病人的病病历号等。在在每次治疗或或清洗后,助助手或保健员员将标记相应应的预约诊治治已经完成,如如果必要的话话会安排病人人下一次再来来。系统能够按病人人姓名和按日日期进行查询询,能够显示示记录的病人人数据和预约约信息。接待待员可以取消消预约,可以以打印出前两两天预约尚未未接诊的病人人清单。系统统可以从病人人记录中获知知病人的电话话号码。接待待员还可以打打印出关于所所有病人的每每天和每周的的工作安排。(1)建立牙科科诊所管理系系统的对象模模型;(2)建立牙科科诊所管理系系统的用例模模型;(3)用数据流流图建立牙科科诊所管理系系统的功能模模型;(4)写出牙科科诊所管理系系统的脚本;(5)画出牙科科诊所管理系系统的状态图图。解答:(1)从对牙科科诊所问题的的陈述中,可可以找出下列列名词作为对对象的候选者者:王大夫,小镇,牙牙科诊所,牙牙科助手,牙牙科保健员,接接待员,软件件系统,预约约,病人,预预约登记表,就就诊时间,预预约时间,约约定时间,系系统,名字,记记录的病人数数据,病历号号,姓名,日日期,预约信信息,病人清清单,病人记记录,电话号号码,每天工工作安排,每每周工作安排排。通常,通过词法法分析找到的的候选对象中中有许多并不不是问题域中中真正有意义义的对象,因因此,必须对对这些候选对对象进行严格格的筛选,从从中删去不正正确的或不必必要的,只保保留确实应该该记录其信息息或需要其提提供服务的那那些对象。具体说到牙科诊诊所问题,“王大夫”只不过是牙牙医的一个实实例,实际上上,本软件系系统的主要功功能是管理病病人的预约,并并不关心诊所所内每名工作作人员的分工工,因此,牙牙医、牙科助助手、牙科保保健员和接待待员都不是问问题域中的对对象;“小镇”是牙科诊所所的地址属性性,不是独立立的对象;“软件系统”和“系统”是同义词,指指的是将要开开发的软件产产品,不是问问题域中的对对象;“就诊时间”、“预约时间”和“约定时间”在本问题陈陈述中的含义义相同,指的的都是预约的的就诊时间,实实际上,预约约的就诊时间间既包括日期期又包括时间间,但是,它它们是预约登登记表包含的的属性,不是是问题域中独独立的对象;“名字”和“姓名”是同义词,应应该作为病人人和预约登记记表的属性;“记录的病人人数据”实际上就是是“病人记录”,可以统一一使用“病人记录”作为对象名名;“病历号”和“电话号码”是病人记录录的属性,不不是独立的对对象;从问题题陈知,“病人清单”是已预约但但尚未就诊的的病人名单,应应该包含病人人姓名、预约约的就诊时间间等内容,它它和“预约信息”包含的内容容基本相同,可可以只保留“病人清单”作为问题域域中的对象。接下来分析确定定问题域中对对象彼此之间间的关系。“每天工作安安排”和“每周工作安安排”有许多共同同点,可以从从它们泛化出出一个父类“工作安排”。此外,问问题域的对象象之间还有下下述关联关系系:牙科诊所所诊治多名病病人;一位病病人有一份病病人记录;一一位病人可能能预约多次也也可能一次也也没预约;牙牙科诊所在一一段时间内将将打印出多份份病人清单;牙科诊所开开业以来已经经建立了多份份预约登记表表;预约登记记表中记录了了多位病人的的预约;根据据预约登记表表在不同时问问可以制定出出不同的工作作安排。综上所述,可以以画出图7.2所示的牙牙科诊所管理理系统的对象象模型。(2)用例图从从用户角度描描述系统的功功能,它必须须包含用户关关心的所有关关键功能。用用户通常就是是用例图中的的行为者。为为了画出系统统的用例图,首首先应该找出出系统的用户户,然后根据据用户对系统统功能的需求求确定用例。从对牙科诊所问问题的陈述可可知,接待员员负责处理病病人预约事务务,为此他需需要访问预约约登记表和病病人记录,接接待员也可以以取消预约,此此外,接待员员还可以根据据预约登记表表打印出关于于所有病人的的每天和每周周的工作安排排,牙医将按按照工作安排排诊治病人;在病人就诊诊后,助手或或保健员将标标记相应的预预约诊治已完完成,必要时时还将安排病病人下次再来来,也就是说说,他们将更更新预约登记记表的内容;系统能够按按照病人姓名名和日期查询询预约信息,这这项功能需求求虽然没有指指明行为者,但但是这并不意意味着没有行行为者也可以以有用例,事事实上,一个个用例至少必必须与一个行行为者相关联联,可以认为为“查询预约这个用例的的行为者是牙牙科诊所的职职员。在牙科科诊所问题中中,没有必要要区分接待员员、助手和保保健员在业务务工作中扮演演的不同角色色,可以把他他们统称为职职员。综上所述,可以以画出图7.3所示的牙牙科诊所管理理系统的用例例图。(3)从牙科诊诊所管理系统统的需求陈述述得知,当进进行预约时病病人提供姓名名、希望的就就诊日期等数数据,系统查查询预约登记记表,以确定定一个有效的的就诊日期,此此外,系统还还将查询病人人记录以获得得病历号等病病人数据。在在每次预约诊诊治完成之后后,应该更新新预约登记表表,以标记相相应的预约诊诊治已经完成成,必要时将将约定下次就就诊日期。诊诊所职员可以以按照病人姓姓名和日期查查询预约信息息,也可以取取消预约。此此外,系统可可以打印出每每天和每周的的工作安排给给牙医。根据上述的系统统功能,可以以画出图7.4所示的牙牙科诊所管理理系统的数据据流图。(4)脚本从用用户角度描述述系统典型的的工作过程。根根据对牙科诊诊所管理系统统的需求,至至少可以设想想出下述3个个脚本。 (a) 正常情况况:病人甲请请求预约。系系统识别出病病人的名字。系系统建议二个个就诊时间。病病人同意该时时间,接待员员输入该预约约。在预约的的就诊日期到到来之前两天天,系统输出出一份包含病病人姓名和电电话号码等信信息的提醒清清单。接待员员打电话提醒醒病人。病人人如约到来。治治疗完之后,牙牙医助手安排排该病人的下下一次预约。 (b) 新病人:病人乙请求求预约。系统统不认识该病病人的名字,必必须把该病人人的信息输入入到病人记录录系统中并为为他建立一个个记录。 (c) 多个预约约:病人丙请请求在未来两两年内进行116次预约。接接待员将其姓姓名输入到系系统中,系统统提出建议的的预约就诊时时间,病人同同意后接待员员输入病人认认可的预约。(5)状态图描描绘系统可能能有的状态转转换。牙科诊诊所管理系统统的主要功能能是实现病人人预约,根据据需求陈述和和在第9题解解答中给出的的脚本,可以以画出图7.5所示的牙牙科诊所管理理系统状态图图。图中把除除了完成病人人预约之外的的事务笼统地地称为日常事事务。第十一章作业P288 第33题答:面向对象技术中中的“类”,不妨称之之为类构件,是是比较理想的的可重用软构构件。原因如如下:为使软构件也像像硬件集成电电路那样,能能在构造各种种各样的软件件系统时方便便地重复使用用,就必须使使它们满足下下列要求:(1) 模块独独立性强。具具有单一、完完整的功能,且且经过反复测测试被确认是是正确的。它它应该是一个个不受或很少少受外界干扰扰的封装体,其其内部实现在在外面是不可可见的。(2) 具有高高度可塑性(可裁剪性)。也就是说说,必须提供供为适应特定定需求而扩充充或修改已有有构件的机制制,而且所提提供的机制必必须使用起来来非常简单方方便。(3) 接口清清晰、简明、可可靠。软构件件应该提供清清晰、简明、可可靠的对外接接口,而且还还应该有详尽尽的文档说明明,以方便用用户使用。精心设计的“类类”基本上能满满足上述要求求,可以认为为它是可重用用软构件的雏雏形。类构件有3种重重用方式,分分别是实例重重用、继承重重用和多态重重用。补充:从面向对对象分析到面面向对象设计计,对象模型型有何变化?答:在面向对象象分析阶段建建立的对象模模型中对象是是对问题空间间中实体的抽抽象。随着软软件开发过程程进入面向对对象设计阶段段,这些对象象逐渐变成了了解空间的实实体。需要的时间以及及子任务彼此此之间的依赖赖关系。请用用工程网络描描述下表中给给出的信息,并并且计算每个个事件的最早早时刻和最迟迟时刻。

    注意事项

    本文(软件工程导论课后习题答案41826.docx)为本站会员(you****now)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开