2012 软件工程
- 格式:ppt
- 大小:186.00 KB
- 文档页数:25
《软件工程》教学大纲一、课程说明:软件工程是指导计算机软件开发与维护的工程学科,是计算机科学与技术本科专业的必修课程,该课程结合当代软件工程技术的发展实际,系统地讲述软件工程相关知识(包括,软件工程的概念、原理、技术,经时间考验而证明正确的管理技术、当前的技术方法等等),并选择典型的软件工程开发案例进行剖析,使同学能够在牢固掌握软件工程书本知识的同时,可以将所学灵活地应用于实际的软件开发中。
本课程是计算机科学与技术专业(软件开发方向)的重要的专业课程。
是后续软件开发和实训课程的签到和基础。
二、教学目的及要求:教学目的:本课程要求学生掌握软件工程的基本概念、方法、理论体系,熟练掌握一些常用的实用开发方法和技术。
理解工具对实现软件工程的作用,领会一些分析与设计原则的意义,能借助CASE工具、按照软件工程的要求实施跨越软件生命周期的完整开发。
了解软件工程各领域的发展方向,以及开发过程中应遵循的流程、准则、标准和规范。
能够利用所学知识去解决一些实际的应用问题(或模拟案例)。
教学要求:通过该课程的讲解使学生能够掌握软件工程的思想、方法、技术、手段,并将此运用到应用开发的工作实践中,注重培养学生软件系统设计的完整性、整体结构的严谨性、解决方案的逻辑性、技术选择的先进性、编码格式的规范性、测试与检测方案的周密性、实施与运行维护的计划性等方面的出色的能力和团队合作意识。
三、教学重点及难点:重点:软件工程学基本原理、概念和技术方法、软件生存周期、软件项目可行性研究、需求分析、总体设计、详细设计、编码、测试与软件维护等各个阶段的任务、过程、方法和工具。
教学难点:⑴软件项目的需求分析、总体设计、详细设计阶段的任务。
⑵要使学生在学习了软件工程学的理论、原理、概念和技术方法的基础上,以课程设计小组的形式,利用所学到的知识去完成一项实际的项目任务。
四、与其它课程的关系:先修课程:《计算机导论》或《计算机应用基础(一级)》、C语言、VB程序设计、VC++程序设计、数据结构、微机原理、计算机网络。
考题一.选择题(每题1.5分,共30分)( )1. 软件质量因素不包括。
A.正确性B.高性能C.可测试性D.可理解性( )2. 软件可行性研究实质上是要进行一次需求分析、设计过程。
A.简化、压缩的B.详细的C.彻底的D.深入的( )3. 以下哪个软件生存周期模型是一种风险驱动的模型A.瀑布模型B.增量模型C.螺旋模型D.喷泉模型( )4. 可行性分析中,系统流程图用于描述。
A.当前运行系统B.当前逻辑模型C.目标系统D.新系统( )5. 结构化分析建立功能模型的工具是A.DFDB.判定树/判定表C.SCD.结构化语言( )6. 检查软件产品是否符合需求定义的过程称为A.确认测试B.集成测试C.系统测试D.单元测试( )7. 在整个软件维护阶段所花费的全部工作中,所占比例最大的是A.校正性维护B.适应性维护C.完善性维护D.预防性维护( )8. 通信内聚是指。
A.把需要同时执行的动作组合在一起形成的模块B.各处理使用相同的输入数据或者产生相同的输出数据C.一个模块中各个处理元素都密切相关于同一功能且必须顺序执行D.模块内所有元素共同完成一个功能,缺一不可( )9. 一个只有顺序结构的程序,其环形复杂度是A.0B.1C.3D.5( )10. 下述四个能力成熟度等级,级别最高的是A.已定义级B.优化级C.可重复级D.已管理级( )11. 结构化程序设计,主要强调的是A.程序的执行效率B.模块大小C.程序的可理解性D.模块关系( )12. 软件调试技术包括A.边界值分析B.演绎法C.循环覆盖D.集成测试( )13. 需求分析中开发人员要从用户那里了解A.软件做什么B.用户使用界面C.输入的信息D.软件的规模( )14. 数据字典是对数据定义信息的集合,它所定义的对象都包含于。
A.数据流图B.程序框图C.软件结构D.方框图( )15. 面向对象的主要特征除唯一性、继承性、多态性外,还具有。
A.封装性B.移植性C.完整性D.兼容性( )16. 关于软件维护的说法错误的是。
重庆工商大学试卷《软件工程》课程第A套考试题参考答案与评分细则一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。
每小题2分,错误不得分,共46分)1 B 2.C 3.D 4.B 5.A 6.D 7.A 8.C 9.C 10.B 11.D 12.B 13.A 14.B 15.B16.B 17.B 18.A 19.B 20.D 21.B 22.A 23.C二、判断题(正确划√否则划Χ每小题1分,共15分)1.Χ 2. √ 3. Χ 4. √ 5.Χ 6. Χ 7. Χ 8. √ 9. Χ 10. √11.Χ 12.Χ 13.Χ 14.√15.√三、简答题(共20分)1. 画出能正确表示下面叙述的类图(括号内为类名)。
(4分)“一个雇员(Employee)最多由一个经理(Manager)管理,某些经理管理多个雇员,某些经理不管理任何雇员”。
答:2. 设计改错(4分)下列使用继承的类图中均存在错误,请给出正确的类图。
关于学校教师的设计关于学校教师的设计3.下表人事档案管理系统的菜单结构,根据此表画出系统的软件结构图,并回答问答:采用画出第二层得3分,画出第3层得3分。
4.计算机(Computer)由中央处理器CPU、内存、磁盘(软盘、硬盘、U盘)、输入设备(键盘和鼠标)、输出设备(显示器和打印机)等组成。
若以上的设备都成为类,根据描述,设计出关于计算机构成的类图。
并回答问题“采用Rational Rose还是Visio画类图”(5分)解:采用Rational Rose和Visio都可以画类图(1分)画出组合关系得2分,画出继承关系得2分五、综合设计题(共19分)1.某校制定了教师的讲课课时津贴标准。
对于各种性质的讲座,无论教师是什么职称,每课时津贴一律是50元;而对于一般的授课,则根据教师的职称来决定每课时津贴费:教授30元,副教授25元,讲师20元,助教15元。
上机模拟考试1、写出下图中深度是(),最大宽度是(),M扇出是(),T的扇入是()。
2、在产品销售业务中,折扣条件有3个:业务发生额、业务往来的时间和欠账情况。
根据4种最终折扣的可能性,可设计出的判定表。
表3-10 计算折扣判定表(1)画出判定表。
(2)画出判定树。
3、f1主图:子图A :4、用户要求的自然语言(中文)含义为:如果行李不超过30公斤,那么可以免费托运;如果行李超过30公斤,那么,对头等舱乘客超过部分每公斤收费4元,对普通舱乘客超重部分每公斤收费6元;如果乘客是残疾人,那么,收费减半。
(1)写出上述需求用结构化语言表示。
(2)写出上述需求用判定表表示。
(3)写出上述需求用判定树表示。
5、画出UML结构。
基本构造块UML的构成规则公共机制6. 画出求一元二次方程的PAD流程图。
7.某校的课酬计算方案为:⑴基本课酬为每节课10元。
⑵班级人数超过60人,增加基本课酬的10%。
⑶班级人数超过80人,增加基本课酬的20%。
⑷如果教师为副教授,增加基本课酬的10%。
⑸教授,增加基本课酬的20%。
⑹助教,不增加课酬。
⑺见习助教,减少基本课酬的10%。
Ⅰ、用判定表,表达上述计算方案。
Ⅱ、用判定树,表达上述计算方案。
8.高校录取统分子系统有如下功能:⑴计算标准分:根据考生原始分计算,得到标准分,存入考生分数文件。
⑵计算录取线分:根据标准分、招生计划文件中的招生人数,计算录取线,存入录取线文件。
试根据要求画出该系统的数据流程图,并将其转换为软件结构图。
二、选择题:1、软件危机出现于60年代末,为了解决软件危机,人们提出了用____的原理来设计软件,这是软件工程诞生的基础。
A.运筹学B.工程学C.软件学D.软件学E.数字2、开发软件需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作____。
A.软件投机B.软件危机C.软件工程D.软件产生3、产生软件危机的原因有如下几点,除了______。
A、软件开发过程未经审查B、软件开发不分阶段,开发人员没有明确的分工C、所开发的软件,除了程序清单外,没有其他文档D、采用工程设计的方法开发软件,不符合软件本身的特点4、软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是____。
《软件工程》复习题一、单项选择题1. ( C )是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。
A.多态B.继承C.封装D.消息2.Jackson方法是在软件开发过程中常用的方法,使用Jackson方法时,可以实现( A )A.从数据结构导出程序结构B.从模块结构导出数据结构C.从数据流图导出初始结构图D.从模块结构导出程序结构3.下列模型属于成本估算方法的有(A )A.COCOMO模型B.McCall模型C.McCabe度量法D.时间估算法4.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称为( C )A.软件工程B.软件周期C.软件危机D.软件产生5. 在软件生存周期中,(D)阶段所占用的工作量最大,约70%。
A.分析B.设计C.编码D.维护6. 软件测试的目的是(B)。
A.评价软件的质量B.发现软件的错误C.找出软件中所有错误D.证明软件是正确的7.模块的内聚性最高的是( D )A.逻辑内聚B.时间内聚C.偶然内聚D.功能内聚8.在SD方法中全面指导模块划分的最重要的原则是( B )A.程序模块化B.模块独立性C.模块低耦合D.模块高内聚9.下列属于维护阶段的文档是( C )A.软件规格说明B.用户操作手册C.软件问题报告D.软件测试分析报告10.快速原型模型的主要特点之一是( D )A.开发完毕才见到产品B.及早提供全部完整的软件产品C.开发完毕后才见到工作软件D.及早提供工作软件11.因计算机硬件和软件环境的变化而作出的修改软件的过程称为( B )A.教正性维护B.适应性维护C.完善性维护D.预防性维护12.类库这种机制是( A )级别的信息共享。
A.不同应用B.不同类C.同一应用D.同一类13.只有单重继承的类层次结构是( C )层次结构。
A.网状型B.星型C.树型D.环型14.软件详细设计主要采用的方法是( D )A.模块设计B.结构化设计C.PDL语言D.结构化程序设计15.下列关于JSP方法不正确的说法是( D )A.JSP方法主要用于规模不大的数据处理系统B.JSP方法不明确的划分软件概要设计和详细设计的两个阶段C.JSP方法适用于输入数据和输出数据之间有对应关系的问题求解D.JSP方法根据输入、输出的数据结构,按一定的规则映射成软件的体系结构。
西华大学课程考试参考答案(A卷)课程代码: 6014309 试卷总分: 100 分一、判断题(共20小题,每小题1分,共20分,在正确的打上√,错误的打上×)1、×2、×3、√4、×5、√6、√7、×8、√9、√10、√11、√12、×13、×14、×15、√16、√17、×18、×19、√20、√二、单选题(共20小题,每小题2分,共40分)1、C2、B3、B4、A5、B6、D7、B8、B9、A 10、A11、A 12、A 13、D 14、D 15、C16、C 17、A 18、D 19、C 20、D三、简答题(共6小题,每小题5分,共30分)1.分析软件危机产生的主要原因有哪些?答:导致软件危机的主要原因有:(1)软件日益复杂和庞大;(2)软件开发管理困难和复杂;(3)软件开发技术落后;(4)生产方式落后;(5)开发工具落后;(6)软件开发费用不断增加。
评分标准:1个要点1分,只要答上5个要点得5分!2.说明结构化程序设计的主要思想是什么?答:(1)自顶向下、逐步求精的程序设计方法;(2分)(2)使用3种基本控制结构、单入口、单出口来构造程序。
(3分)3.软件测试包括哪些步骤?说明这些步骤的测试对象是什么?答:(1)单元测试,测试对象对单元模块;(2分)(2)集成测试,测试对象为组装后的程序模块;(2分)(3)确认测试,测试对象为可运行的目标软件系统。
(1分)4.需求分析与软件设计二个阶段任务的主要区别是什么?答:需求分析定义软件的用户需求,即定义待开发软件能做什么;(2.5分)软件设计定义软件的实现细节以满足用户需求,即研究如何实现软件。
(2.5分)5、简述文档在软件工程中的作用。
(5分)答:(1)提高软件开发过程的能见度(1分);(2)提高开发效率、便于用户了解软件功能、性能;(1分)(3)作为开发人员阶段工作成果和结束标志;(1分)(4)记录开发过程的有关信息便于使用与维护;(1分)(5)提供软件运行、维护和培训有关资料。
《软件工程》实验指导书一、基本目的:1.使学生把软件工程的基本原理和技术使用于实践。
2.使学生掌握实际大型软件的开发过程和组织方式。
3.使学生增强开发大型软件的能力。
二、实验环境:文档制作工具为WORD、EXCEL、VISIO、ROSE等,编程环境自选。
三、背景知识:从理论上而言,软件生存期一般都可分为计划、需求分析、设计、编码、测试、运行维护六个步骤。
根据软件工程实施过程中的各阶段活动,我们可以把它归结为不同的软件生存期模型,并归结出每一阶段的实施的行为特征。
在软件工程的实施过程中,需要制做相应的文档。
1.计划阶段计划阶段指技术人员辅助管理人员或市场部人员根据项目意向,做出初步需求调查、进行可行性论证,在论证通过后做系统方案,如委托开发,还需签定项目开发合同,并制定项目开发计划。
2.需求分析阶段需求分析阶段,管理人员提出需求分析阶段计划,分析人员制作软件需求说明书,包括软件需求子系统需求说明书、数据要求说明书、子系统数据要求说明书、系统数据流图、子系统数据流图及其相应的词典。
系统需求说明书完成后应通过项目需求评审,经用户确认后出具需求分析验收报告。
初步制定测试计划。
3.设计阶段在设计阶段需要制定系统实现方案,设计阶段计划,填写数据库设计说明书、详细设计说明书,详细设计应通过详细设计评审、出具详细设计验收报告,设计阶段完成后应开始制做用户手册、管理员手册、测试计划和测试案例设计。
4.编码阶段在编码阶段应有数据库编程规范、编程语言编程规范、内部公用函数(模块)目录等。
设计和执行模块测试。
5.测试阶段设计完成后,就应该进入测试阶段,测试阶段中,应该制定测试规范、填写测试计划和测试说明,测试过程中应填写软件测试报告。
6.运行维护阶段测试阶段完成后,应进行系统交付,进入运行维护阶段。
系统维护阶段,用户发现问题时,应填写计算机软件问题报告单,提交信息部主管或根据合同约定向设计单位提交。
四、实验要求:每班分为5-6个小组,每组从实验题目中任选一题,也可自选题目作为课程实践题目。
软件工程专业本科培养方案一、培养目标1、专业代码、名称专业代码:W专业名称:软件工程2、培养目标本专业培养德、智、体、美全面发展,具有良好的科学素养,掌握和软件工程相关的自然科学及数学知识,掌握计算机硬件、软件与应用的基本理论,有良好的组织管理和交流沟通能力,具备良好的国际交流能力,能适应技术进步和社会需求的变化,从事软件工程实践或计算机应用的高级技术人才。
二、培养要求本专业毕业生应具备良好的思想道德素质,热爱祖国,拥护中国共产党的领导,具有科学的世界观、人生观和价值观;具有责任心和社会责任感;具有法律意识,自觉遵纪守法;具有一定的文学和艺术修养、人际沟通修养和现代意识;具有基本的人文社会科学知识和自然科学知识等;具有一定的学习能力与终身学习的意识;具有较好的身体素质和心理素质;热爱本专业、注重职业道德修养;具有诚信意识和团队精神。
⑴专业素质要求:具备求实创新意识和严谨的科学素养;掌握科学思维方法和科学研究方法。
⑵能力结构要求获取知识的能力:自学能力、信息获取与表达能力等。
●应用知识能力:系统级的认知能力和理论与实践能力,掌握自底向上和自顶向下的问题分析方法,既能把握系统各层次的细节,又能认识系统总体;既掌握本学科的基础理论知识,又能利用理论指导实践。
●创新能力:创造性思维能力、科技开发能力、科学研究能力以及对新知识、新技术的敏锐性。
⑶知识结构要求●工具性知识:外语、文献检索、科技写作等。
●人文社会科学知识:文学、哲学、政治学、社会学、法学、心理学、思想道德、职业道德、艺术等。
●自然科学知识:数学等。
●专业技术基础知识:离散数学、程序设计、软件工程学等。
三、主干学科及主要课程主干学科:软件工程。
主要课程:程序设计、离散数学、数据结构、数据库、操作系统、软件工程、计算机网络、计算机原理、软件项目管理、软件建模、软件测试、计算机专业英语、嵌入式系统设计与应用。
设置习题课:高级语言程序设计、计算机组成原理、数据结构、JAVA 语言程序设计、操作系统、计算机网络、数据库原理与应用。