软件工程作业.doc

上传人:大米 文档编号:543812178 上传时间:2023-04-27 格式:DOC 页数:16 大小:1.05MB
返回 下载 相关 举报
软件工程作业.doc_第1页
第1页 / 共16页
软件工程作业.doc_第2页
第2页 / 共16页
软件工程作业.doc_第3页
第3页 / 共16页
软件工程作业.doc_第4页
第4页 / 共16页
软件工程作业.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《软件工程作业.doc》由会员分享,可在线阅读,更多相关《软件工程作业.doc(16页珍藏版)》请在金锄头文库上搜索。

1、第一章1.什么是软件危机?它有哪些典型表现?为什么会出现软件危机?答:软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。 软件工程主要有以下一些典型表现:(1)用户对开发出的软件很难满意。 (2)软件产品的质量往往靠不住。(3)一般软件很难维护。 (4)软件生产效率很低。(5)软件开发成本越来越大。(6)软件成本与开发进度难以估计。(7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。产生软件危机原因主要有: (1) 开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。 (2) 软件本

2、身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。 (3) 尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。3什么是软件工程?它有哪些本质特征?怎么用软件工程消除软件危机?答:软件工程:用科学知识和技术原理来定义、开发、维护软件的一门学科。其本质特征:(1)软件工程关注于大型程序的构造 (2)软件工程的中心课题是控制复杂性(3)软件经常变化(4)开发软件的效率非常重要(5)和谐的合作是开发软件的关键(6)

3、软件必须有效的支持它的用户(7)在软件工程领域中通常由具有一种文化背景的人替代具有另一种文化背景的人创造产品用软件工程消除软件危机: (1) 充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。 (2) 推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。(3) 根据不同的应用领域,开发更好的软件工具并使用这些工具。将软件开发各个阶段使用的软件工具集

4、合成一个整体,形成一个很好的软件开发支环环境。6什么是软件过程?它与软件工程方法学有何关系?答:软件过程:是为了获得高质量的软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。软件工程方法学的三要素是指方法、工具和过程,其中的过程就是指软件过程,可见,软件过程是软件工程方法学的三要素之一。7什么是软件生命周期模型?试比较瀑布模型、快速原型模型、增量模型和螺旋模型的优缺点,说明每种模型的适用范围。答:软件生存周期模型:是描述软件开发过程中各种活动如何执行的模型。其中模型是为了理解事物而对事物做出一种抽象,它忽略不必要的细节,它也是事物的一种抽象形式、一个规划、一个程序。瀑布模型的优

5、势在于它是规范的、文档驱动的方法;这种模型的问题是,最终开发出的软件产品可能并不是用户真正需要的。快速原型模型正是为了克服瀑布模型的缺点而提出来的。它通过快速构建起一个可在计算机上运行的原型系统,让用户试用原型并收集用户的反馈意见的办法,获取用户的真正需求。增量模型具有可在软件开发的早期阶段使投资获得明显回报和较容易维护的优点,但是,要求软件具有开放的结构是使用这种模型时固有的困难。风险驱动的螺旋模型适用于内部开发的大型软件项目,但是,只有在开发人员具有风险分析和排除风险的经验及专门知识时,使用这种模型才会获得成功。习题二1. 在软件开发的早期阶段为什么要进行可行性研究?应该从哪些方面研究目标

6、系统的可行性?答:可行性研究的目的就是,用最小的代价在尽可能 短的时间内研究并确定所有面临的问题是否能够解决。首先需要分析和澄清问题定义。然后分析员应该到处系统的逻辑模型。研究目标系统的可行性分为以下三方面:(1)技术可行性:使用现有的技术能实现这个系统吗?(2)经济可行性:这个性同的经济效益能超过他的开发成本吗?(3)操作可行性:系统的操作方式在这个拥护住址内性的通吗?3.为方便旅客,某航空公司拟开发一个机票预订系统。旅行社把预订机票的旅客信息(姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地等)输入该系统,系统为旅客安排航班,印出取票通知和账单,旅客在飞机起飞的前一天凭取票通知和账单

7、交款取票,系统校对无误即印出机票给旅客。写出问题定义并分析此系统的可行性。答:(1)问题定义:a) 数据流图:b) 数据字典:旅客信息:姓名:xxx性别:男描述:旅客订票时所填的资料(省份证号、所需机票的基本信息、乘机时间)定义:订票申请表单(旅客姓名、旅客性别、起飞日期、飞行目的地、座位类型 )位置:位置:在客户端由旅客填写航班名称:航班类型:描述:所有从本地起飞的航班信息(航班号、起飞时间、到达的目的地、空出的座位数、票价)定义:航班信息(航班号、起飞日期、飞行目的地、空出的座位数、票价)位置:从服务器端查询后,发送到客户端航班信息:账单名称:账单号:描述:已定票的旅客信息资料(帐单号、旅

8、客姓名、旅客性别、旅客身份证号)定义:账单基本信息(订票旅客的姓名、性别、省份证号、航班号)位置:在服务器端产生,发送回客户端账单信息:机票编号:航班号:描述:所有机票信息(已出售的机票、剩余机票、航班号、起飞时间)定义:机票基本信息(旅客姓名、旅客性别、身份证号码、航班号、起飞时间、飞行目的地、座位号)位置:发送到客户端机票信息:(2)可行性分析:技术可行性: 经过调查分析,得到目前航空公司机票预定系统流程图如下:图一 图二经济可行性:成本估算:打印机1台(2000元)+开发费(3500元)=5500元,可承担。效益估算:该系统有很好的社会效益,提高了航空公司售票效率,方便了旅客,售票方便化

9、,科学化。操作可行性:比较图一图二可以看出,与人工系统相比,计算机保留了原系统的主要工作流程,可以看出计算机系统是工系统的优化,操作也不复杂,工作人员在短时间经过培训就可熟练掌握。结论:通过以上分析可知,该系统是可行的。5. 北京某高校可用的电话号码有以下几类:校内电话号码由4位数字组成,第1位数字不是0;校外电话又分为本市电话和外地电话两类,拨校外电话需先拨0,若是本市电话则再接着拨8位数字(第1位不是0),若是外地电话则拨3位区码再拨8位电话号码(第1位不是0)。请用定义数据的方法,定义上述的电话号码。答:电话号码=校内电话号码|校外电话号码校内电话号码=非零数字+ 3 位数字 校外电话号

10、码=本市号码|外地号码本市号码=0+8位数字外地号码=0+3位数字+8位数字非零数字=1|2|3|4|5|6|7|8|93位数字3数字3 8位数字=非零数字+7位数字7位数字=7数字7数字0|1|2|3|4|5|6|7|8|9第三章1.为什么要进行需求分析?通常对软件系统有什么需求?答:为了真正满足客户要求的软件产品,首先必须知道用户的需求。所以要进行需求分析。对系统的需求包括:1功能需求 2性能需求 3可靠性与可用性需求 4出错处理需求 5接口需求 6约束 7逆向需求 8将来可能提出的要求4分析习题2地3题所述的机票预订系统,试用实体-联系图描绘本系统中的数据对象并用数据流图描绘本系统的功能

11、。系统交款出票取票通知和账单取票旅客性别工作单位身份证号码姓名旅行时间旅行目的地安排航班印出取票通知和账单预订答:实体-联系图数据流图:6 复印机的工作过程大致如下:未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令;如果执行复印命令时发现没纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接收复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告等待维修人员来排除故障,故障排除后回到闲置状态。请用状态转换图描绘复印机的行为。答:从问题陈述可知,复印机的状态主要有“闲置”、“复印”、“缺纸”和“卡纸”

12、。引起状态转换的事件主要是“复印命令”、“完成复印命令”、“发现缺纸”、“装满纸”、“发生卡纸故障”和“排除了卡纸故障”。 第四章 1举例对比形式化方法和欠形式化方法的优缺点。答:非形式化方法的缺点:用自然语言书写的系统规格说明书,可能存在矛盾,二义性,含糊性,不完整性及抽象层次混乱等问题。 形式化方法的优点:把数学引入软件开发过程,创造了基于数学的形式化方法,能够简洁准确地描述物理现象。对象或动作的结果。数学比自然语言更适于描述详细的需求,它准确到几乎没有二义性。在软件开发过程中使用数学的另一个优点是,可以在不同的软件工程活动之间平滑地过渡。以一个简单的俄罗斯方块游戏系统规格说明为例,用自然

13、语言描述如下:游戏的每个状态对应一个游戏界面,开始状态下,但变量cd_start=1是进入正常游戏的状态,cd_start=2时进入读取游戏状态,cd_start=3是进入得分榜界面查看。在得分榜界面按任意键返回开始界面,在读取游戏界面,当游戏数据读取完成后进入正常游戏状态,正常游戏状态下,同时按下左键和右键进入储存游戏界面,数据储存结束后返回正常游戏状态,在正常游戏状态下,如果变量game_res=0,则游戏结束,进入游戏结束画面。 可见,用自然语言书写的系统规格说明书,罗嗦繁杂,并且可能存在矛盾,二义性,含糊性,不完整性及抽象层次混乱等问题。用有穷状态的描述如下:状态机J:开始,正常游戏(

14、游戏进行中),得分榜,读取游戏,储存游戏,游戏结束输入集K:按键UP,按键DOWN,按键LEFT,按键RIGHT,寄存器变量cd_start ,寄存器变量game_res转换函数T:如图4.1所示初始态S:开始EEPROM写入完成后LEFT&RIGHTGame_res=0EEPROM读取完成后Cd_start=1Cd_start=2按任意键Cd_start=3得分榜游戏结束开始储存中读取游戏游戏进行中图4.1游戏状态转换图终态集F:游戏结束可见用形式化语言描述,更加简洁,准确,无歧义。4.考虑下述的自动化图书馆流通系统:每本书都有一个条形码,每个人都有一个带条形码的卡片。但一个借阅人想借一本书时,图书管理员扫描书上的条形码和借阅人卡片的条形码,然后在计算机终端上输入C;当归还一本书时,图书管理员将再次扫描,并输入R。图书管理员可以把一些书加到(+)图书集合中,也可以删除()它们。借阅人可以再终端上查找到某个作者所有的书(输入“A=”和作者名字),或具有指定标题的所有书籍(输入“T=”和标题),或属于特定主题范围内的所有图书(输入“S=”加主题范围)。最后,如果借

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号