软件工程学自考考纲
湖南自考本科软件开发工具与环境考试大纲重点章节

湖南自考本科软件开发工具与环境考试大纲重点章节标题:湖南自考本科软件开发工具与环境考试大纲重点章节解析随着信息化社会的快速发展,软件开发已经成为推动各行各业发展的关键动力。
而学习和掌握软件开发工具与环境是成为一名优秀软件开发者的重要基础。
本文将围绕湖南自考本科软件开发工具与环境考试大纲的重点章节进行深入剖析,帮助考生更好地理解和掌握相关知识。
一、软件工程的基本概念首先,我们要了解的是软件工程的基本概念。
这一部分主要介绍了软件生命周期中的各个阶段,包括需求分析、设计、编码、测试以及维护等。
这些内容是我们理解软件开发全过程的基础,也是我们在后续章节中学习各种软件开发工具和环境的前提。
二、软件开发工具在软件开发过程中,选择合适的工具可以大大提高工作效率。
因此,本章详细介绍了各类常用的软件开发工具,如编程语言、集成开发环境、版本控制系统等。
对于每一种工具,我们不仅需要了解其基本功能,还需要知道如何正确使用它们。
三、软件开发环境除了工具之外,良好的软件开发环境同样重要。
这部分内容主要涉及了软件开发环境的构建、配置以及管理等方面的知识。
通过学习,我们可以了解到如何根据项目的需求来选择和配置开发环境,从而提高开发效率。
四、软件质量保证在软件开发过程中,确保软件质量是非常重要的环节。
本章详细介绍了软件质量保证的相关知识,包括软件测试、软件评审、软件度量等内容。
通过学习,我们可以掌握如何通过有效的手段来保证软件的质量。
五、软件项目管理最后,我们还要学习软件项目的管理知识。
这部分内容主要包括软件项目的计划、组织、控制等环节,以及相关的管理工具和技术。
通过学习,我们可以了解到如何有效地管理和控制软件开发项目,以确保项目的顺利完成。
总的来说,湖南自考本科软件开发工具与环境考试大纲重点章节的内容涵盖了软件开发的各个方面,包括基本概念、工具、环境、质量保证以及项目管理等。
考生需要对这些内容有深入的理解和掌握,才能在实际的软件开发工作中游刃有余。
(软件工程)复习大纲(最新修改2014)

《软件工程》复习大纲第1章:软件工程的范畴重点掌握如下的内容:1掌握软件工程、软件危机、生命周期的概念 1%2掌握维护的3种分类并能够结合具体例子进行判断 1%3掌握为什么没有计划、文档和测试阶段 1%4掌握软件工程的传统生命周期模型(瀑布模型)的阶段划分和各阶段的主要任务1%5掌握传统的维护观念与现代的维护观念之间的区别1%了解如下内容:1了解纠错与成本之间的关系2了解面向对象范型与传统范型在生命周期模型方面的比较3了解如下术语的区别:客户、开发者和用户;内部软件、合同软件、商用现货软件(即COTS软件)和开源软件;过错、差错和故障第2章:软件生命周期模型重点掌握如下的内容:1 掌握编码-修补模型、瀑布模型、快速原型开发模型、开源模型、敏捷过程模型、同步-稳定模型、螺旋模型等这些模型的模型图(如果有图的话)以及优缺点和适用场合,并能绘制。
5-10%了解如下内容:1了解Winburg小型实例研究以及进化树生命周期模型图,并理解基线的概念2了解迭代和递增的区别,掌握米勒法则和逐步求精法这两个概念,了解迭代递增模型的五个核心工作流以及它们何时在迭代递增模型的生命周期中占据主导地位第3章:软件过程重点掌握如下的内容:1掌握每个工作流(包括需求流、分析流、设计流、实现流、测试流)的目标2%2掌握需求流的每个步骤(了解应用领域、建立业务模型、找出限制条件),了解主要限制条件(包括最终期限、可靠性、成本),掌握以下观点:开发者能够给予客户的应该是客户需要的而不是客户想要的 1%3掌握设计流的两个步骤:结构设计和详细设计的设计内容2%4掌握统一过程的四个阶段以及每个阶段的目标 1%5.掌握规格说明文档中可能出现的问题(包括模糊、不完备和矛盾),掌握软件项目管理计划的组成部分(包括可交付的东西、里程碑和预算)1%6.掌握回归测试概念及方法。
1%了解如下内容:1了解以下概念:软件过程、软件过程的五个工作流、统一过程、统一建模语言UML2了解测试流在各种制品中的体现形式,了解以下概念:可追踪性、评审、走查、审查、单元测试、集成测试、产品测试、验收测试、对COTS软件产品进行测试的特点3了解交付后维护阶段中出现的问题,了解回归测试4了解一维和二维生命周期模型5了解能力成熟度模型(即CMM)的五种分类7了解用于软件的CMM(即SW-CMM)的五个级别第4章:软件小组重点掌握如下的内容:1掌握民主小组、传统的主程序员小组、现代分级编程小组、同步稳定小组、敏捷过程小组以及开源编程小组这些小组组织方式的优缺点以及适用场合 2% 2掌握如下概念:无我编程、结对编程的概念及特点 1%3掌握传统的主程序员小组中主程序员、后备程序员、编程秘书、程序员、小组领导、小组经理等各个角色负责的任务 2%4掌握布鲁克斯法则1%了解如下内容:1了解组织开发小组时可能出现的问题,了解组织开发小组的两种极端方法2了解现代分级编程小组中小组领导和小组经理负责的区域第5章:软件工程工具重点掌握如下的内容:1掌握逐步求精法,了解逐步求精法小型实例研究中出现的每一次求精,了解前瞻技术,掌握逐步求精法的难点1-5%2掌握软件度量的两种分类(即产品度量和过程度量)以及度量时用到的具体指标(例如:代码行、每千行代码检测出的错误数、平均故障间隔时间等等),掌握五种基本度量(即规模、成本、持续时间、工作量、质量)1%3掌握CASE工具的概念以及分类(即高端与低端,工具与工作平台与环境)1%4掌握软件版本的两种分类(即修订版和变种版)以及这两种分类的区别 1% 了解如下内容:1了解两种类型的软件工程工具(即理论分析工具和软件工具)2了解成本效益分析法以及使用时的难点3了解具体的CASE工具4了解版本控制过程中出现的问题和用到的技术5了解配置控制工具以及基准和冻结这两个概念,了解建造工具第6章:测试重点掌握如下的内容:1掌握质量的定义以及软件质量保证小组(即SQA小组)的责任 2%2掌握走查时小组成员的构成、走查清单的构成、走查的两个步骤、走查的两种方式以及这两种方式之间的区别 2%3掌握审查时小组成员的构成、审查的五个步骤 2%4掌握走查与审查之间的区别 2%5掌握需要测试的五个行为特性(即实用性、可靠性、健壮性、性能和正确性)的定义以及相关度量指标(如平均故障间隔时间、平均修复时间)1%6掌握测试的两种分类 1%了解如下内容:1了解验证和确认的区别2,了解开发小组与SQA小组之间应该保持管理独立的重要性3了解非执行测试的定义和方法4了解审查时的度量指标5了解正确性与产品的可用性之间的关系6了解执行测试应该由谁来完成,了解测试何时应该停止第7章:从模块到对象重点掌握如下的内容:1掌握以下概念的定义:模块、模块内聚、模块耦合 1%2掌握内聚的七个等级分类(即偶然性、逻辑性、时间性、过程性、通信性、功能性以及信息性)以及每个等级的定义,并能够结合具体例子判断内聚等级1-5%3掌握耦合的五个等级分类(即内容、共用、控制、印记以及数据)以及每个等级的定义,并能够结合具体例子判断耦合等级 1-5%4掌握UML图标:注释、继承、聚合、关联 1-2%了解如下内容:1了解以下概念:模块操作、模块逻辑、模块背景。
软件工程师考试大纲

软件工程师考试大纲第一篇:软件工程师考试大纲是指为了指导软件工程师在考试中的学习和备考,考试大纲明确了考试的内容和要求。
通过参考考试大纲,软件工程师可以更好地了解考试的范围和重点,有针对性地进行复习和准备,提高考试的通过率。
接下来,我们将详细介绍软件工程师考试大纲的相关内容。
软件工程师考试大纲主要包括以下几个方面:软件工程基础知识、需求分析与设计、软件构建、软件测试与维护、软件工程管理、软件工程实践等。
首先,软件工程基础知识是软件工程师考试的基础,它包括计算机基础知识、编程语言、数据结构与算法等。
这些基础知识是软件工程师必备的技能,能够帮助他们理解软件工程的概念和原理,应用到实际的工作中。
其次,需求分析与设计是软件工程师考试大纲中的重要内容之一。
需求分析与设计是软件开发过程中的关键步骤,它涉及到对用户需求的分析和理解,以及将需求转化为可执行的设计方案。
软件工程师需要掌握需求分析与设计的方法和技巧,能够高效地完成软件需求的分析和设计工作。
软件构建是考试大纲中的另一个重点内容。
软件构建是将需求分析和设计的结果转化为实际的可执行代码的过程,它包括编码、调试、单元测试等。
在软件构建过程中,软件工程师需要熟练掌握编程语言和开发工具,能够编写出高质量的代码。
另外,软件测试与维护也是考试大纲中需要关注的内容之一。
软件测试是确保软件质量的重要手段,它包括功能测试、性能测试、安全测试等。
软件维护是在软件交付后对其进行修复和改进的过程。
软件工程师需要了解测试方法和技术,以及维护的基本原则和方法。
此外,软件工程管理也是考试大纲中的重要内容之一。
软件工程管理涉及到项目管理、进度控制、团队协作等方面的知识和技能。
软件工程师需要具备良好的团队合作能力和项目管理能力,能够高效地组织和管理软件开发项目。
最后,考试大纲中还强调了软件工程实践的重要性。
软件工程实践是将软件工程的理论知识应用到实际项目中的过程,它包括软件工程的方法和过程。
软件工程考试大纲

软件工程考试大纲一、考试说明考试对象:运算机科学与技术专业命题原则:(1)在教学大纲和考试大纲所规定的知识点范畴内命题。
(2)试题的考察要求覆盖面广、区分度高。
(3)试题兼顾各个能力层次,难易程度和题量适当,按难易程度分为四个层次:容易占40%,较易占40%,较难占10%,难占10%。
试题题型:《软件工程》试题总分为100分,选择题占20分,简答题占20分,论述题占20分、设计题占40分。
选择题:给出有关软件工程概念、原理、方法的不完整叙述,要求考生从题后给出的四个选项中选择合适的一种答案,补充完整。
简答题:可包括重要概念的说明、数据流图的绘制。
论述题:可包括重要概念的说明、数据流图的绘制。
设计题:可包括绘流程图、写算法设计思想、定义相应数据结构、用高级语言书写程序。
二、考试范畴重点考察学生对软件工程有关概念的明白得以及软件工程有关的原理方法。
按照教学大纲的要求,具体考核要求分为把握、明白得和了解三个层次:把握:要求学生能够全面、深入明白得和熟练应用的内容,是重点考试内容。
明白得:要求学生能够较好地明白得所学内容,同时能够进行简单分析和判定。
了解:对要求了解的内容,在考试中占较小比例,不超过5%。
1、绪论[考核的知识点和要求]把握:学习软件工程的意义,面向对象软件工程和传统软件工程的比较;各种软件开发模型的内容,不同开发模型的特点比较;明白得:软件的定义、软件的分类,软件危机、软件工程学的范畴;软件过程中瀑布模型、快速原型模型、螺旋模型的特点。
3、软件需求分析[考核的知识点和要求]明白得:可行性研究任务(目的)及涉及的内容,需求分析的任务,需求分析的方法及要紧方法(面向数据流分析)的具体步骤,需求分析的任务、步骤。
把握:数据流图(把握顶层数据流图的绘制),细化DFD的原则,数据词典的定义及表述符号,其他分析工具。
4、软件设计概述[考核的知识点和要求]把握:软件设计的任务、差不多概念,模块化设计,设计文档,模块与构件,抽象与细化,信息隐藏;高内聚低耦合。
02334 软件工程(实践) 自考考试大纲

湖北省高等教育自学考试实践(技能)课程大纲课程名称:软件工程课程代码:02334一、实践能力的培养目标加深对软件工程课程基础理论、基本知识的理解,提高分析和解决问题的能力,培养学生严谨的工作作风和实事求是的科学态度,使学生熟悉软件工程的规范、项目管理和团队协作开发,为后继的毕业设计和未来的科学研究及软件开发的实际工作打下良好的基础。
二、实践(技能)课程教学基本要求。
(含学时、学分要求)32学时,1学分具体要求如下:第1章概论(1学时)要求:(1)了解软件开发的本质(2)了解软件、软件工程、模型等基本概念第2章软件需求与软件需求规格(2学时)要求:(1)了解软件需求和需求规格的基本概念;(2)掌握需求和需求规格的基本特征;(3)掌握需求发现的基本技术和表达规约需求的基本手段;(4)针对一个小型简单的系统,运用合适的需求发现技术,按一定要求的规格说明格式,给出该系统的需求规约第3章结构化方法(5学时)要求:(1)掌握结构化分析方法并能运用该方法给出小型简单系统的功能模型;(2)掌握结构化设计方法,并基于功能模型给出系统的总体设计;(3)能应用详细设计工具给出若干模块的详细设计。
第4章面向对象方法UML(5学时)要求:掌握在创建系统/产品模型中用于表达信息的基本术以及用于表达模型的用况图、类图、顺序图和状态图。
第5章面向对象方法-RUP(5学时)要求:(1)掌握在创建系统/产品需求获取模型、需求分析模型和设计模型中的基本活动和任务,并能运用RUP建立小型简单系统的用况模型、需求分析模型,。
(2)了解RUP设计模型的基本结构以及在设计中如何处理共性的非功能需求第6章软件测试(5学时)要求:(1)掌握三种软件测试技术(2)针对小型简单系统创建系统的事物流测试模型(3)针对一个特定的软件模块,运用白盒法测试技术,创建该模块的被测试对象模型,并给出相应的测试用例(4)针对一个简单的程序,运用等价类划分技术创建其测试模型并给出相应的测试用例第7章软件生成周期过程管理(5学时)要求:(1)了解围绕软件开发所需的过程、活动和任务(2)基本掌握一个软件项目的过程规划和监控(3)针对一个小型简单系统的开发,建成该项目的生存周期过程第8章集成化能力成熟度模型(CMMI)(4学时)要求:掌握过程改善所基于的基本思想,针对开发的CMMI有关“最佳实践”的组织以及两种过程改善的路劲– 能力等级和成熟度等级。
《软件工程及应用实践》自学考试大纲

《软件工程及应用(实践)》自学考试大纲辽宁省高等教育自学考试软件技术专业(应用本科)《软件工程及应用(实践)》自学考试大纲(试用)一、课程性质与设置目的(一)课程性质、特点和设置目的《软件工程及应用(实践)》课程是与《软件工程技术及应用》课程所对应的一门实践课。
通过本课程的实践环节训练,使应考者在比较全面地了解软件工程的基本原理、技术和方法,基本掌握应用良好的软件工程的技术方法和管理方法开发软件,提高开发和维护计算机应用软件的能力。
(二)本课程的基本要求通过本课程的学习,达到如下目标:1.应用结构化方法和面向对象方法开发软件的基本技术;2.能够合理管理软件开发和维护的过程;3.比较规范地书写软件工程的文档资料;4.具备开发和维护计算机应用软件的基本能力。
二、课程内容与考核要求第一部分软件工程基本实验实验1软件开发文档工具安装(一)实验内容1. Visio安装2. Rational Rose安装3. ERwin安装(二)考核知识点及考核要求1. Visio安装,要求达到“熟练掌握”层次。
2. Rational Rose安装,要求达到“熟练掌握”层次。
3. ERwin安装, 要求达到“初步掌握”层次。
实验2 基于Visio的业务流程图和数据流程图绘制(一)实验内容1. 业务流程调查2. 业务流程图绘制3.数据流程分析与流程图绘制(二)考核知识点及考核要求1. 业务流程调查,要求达到“基本掌握”层次。
2. 业务流程图绘制,要求达到“基本掌握”层次。
3.数据流程图分析与绘制,要求达到“基本掌握”层次。
实验3. 基于UML的用例模型绘制(一)实验内容1. 使用Visio绘制用例模型2. 使用Rational Rose绘制用例模型(二)考核知识点及考核要求1. 使用Visio绘制用例模型,要求达到“基本掌握”层次。
2. 使用Rational Rose绘制用例模型,要求达到“基本掌握”层次。
实验4 基于UML的状态模型绘制(一)实验内容1. 使用Visio绘制状态模型2. 使用Rational Rose绘制状态模型(二)考核知识点及考核要求1. 使用Visio绘制状态模型,要求达到“基本掌握”层次。
软件工程专升本专业考试大纲

软件工程专升本专业考试大纲关键信息项1、考试目的2、考试内容3、考试形式4、考试时间5、评分标准6、教材及参考资料1、考试目的11 本考试旨在全面评估考生在软件工程领域的基础知识、专业技能和综合应用能力,为选拔优秀的专科毕业生进入本科阶段学习提供依据。
111 考查考生对软件工程基本概念、原理和方法的理解和掌握程度。
112 检验考生运用软件工程知识解决实际问题的能力。
2、考试内容21 软件工程概述211 软件工程的基本概念、发展历程和软件生命周期模型。
212 软件工程的基本原则和方法。
22 需求分析221 需求获取的方法和技术。
222 需求建模的工具和方法,如数据流图、数据字典等。
223 需求规格说明书的编写。
23 软件设计231 软件体系结构设计的原则和方法。
232 模块设计的原则和方法,包括内聚和耦合。
233 详细设计的工具和表示方法,如程序流程图、盒图等。
24 软件编码241 编程语言的选择和应用。
242 编程规范和代码优化。
25 软件测试251 软件测试的目的、原则和方法。
252 测试用例的设计和执行。
253 测试报告的编写。
26 软件维护261 软件维护的类型和特点。
262 软件可维护性的度量和提高方法。
27 软件项目管理271 软件项目计划的制定和管理。
272 软件项目成本估算和进度控制。
273 软件项目风险管理。
3、考试形式31 采用闭卷笔试形式。
311 考试时间为具体时长。
312 试卷满分为具体分值。
4、考试时间41 具体考试时间安排在考试日期。
5、评分标准51 客观题按照标准答案评分。
511 主观题根据答题要点和逻辑清晰度进行评分。
512 总分达到合格分数线及以上为合格。
6、教材及参考资料61 推荐使用教材名称 1、教材名称 2等作为主要教材。
611 参考资料包括参考资料 1、参考资料 2等相关软件工程书籍和学术文献。
以上是软件工程专升本专业考试大纲的主要内容,具体内容和要求可能根据实际情况进行调整和补充。
软件工程-课程目录-大纲视图(全国高等教育自学考试指定教材-计算机网络专业-独立本科)

第一章绪论1.1 软件工程概念的提出与发展1.2 软件开发的本质1.3 本章小结第二章软件需求与软件需求规约2.1 需求与需求获取2.1.1需求定义2.1.2 需求分类2.1.3 需求发现技术2.2 需求规约2.2.1 需求规约定义2.2.2 需求规约(草案)格式2.2.3 需求规约(规格说明书)的表达2.2.4 需求规约的作用2.3 本章小结第三章结构化方法3.1 结构化需求分析3.1.1 基本术语1.数据流2.数据存储3.数据源和数据谭3.1.2 系统功能模型表示数据流图(Dataflow Diagram)3.1.3 建模过程1.建立系统环境图, 确定系统语境2.自顶向下, 逐步求精, 建立系统的层次数据流图3.定义数据字典数据流条目给出所有数据流的结构定义数据存储条目给出所有数据存储的结构定义数据项条目给出所有数据项的类型定义4.描述加工(1)结构化自然语言(2)判定表(3)判定树3.1.4 应用中注意的问题(1)模型平衡问题(2)信息复杂性控制问题3.1.5 需求验证3.2 结构化设计3.2.1 总体设计1.总体设计的目标及其表示(1)Yourdon提出的模块结构图(2)层次图(3)HIPO图2.总体设计步骤(1)变换型数据流图——变换设计(2)事物型数据流图——事物设计3.模块化及启发式规则(1)模块化1)耦合①内容耦合②公共耦合③控制耦合④标记耦合⑤数据耦合2)内聚①偶然内聚②逻辑内聚③时间内聚④过程内聚⑤通信内聚⑥顺序内聚⑦功能内聚(2)启发式规则1)改进软件结构, 提高模块独立性2)力求模块规模适中3)力求深度、宽度、扇出和扇入适中4)尽力使模块的作用域在其控制域之内5)尽力降低模块接口的复杂度6)力求模块功能可以预测3.2.2 详细设计1.结构化程序设计2.详细设计工具(1)程序流程图(2)盒图(N-S图)(3)PAD图(Problem Analysis Diagram)(4)类程序设计语言IPO图、判定树和判定表等也可以作为详细设计工具3.3 本章小结第四章面向对象方法——UML 4.1 UML术语表4.1.1 表达客观事物的术语1.类与对象1)类的属性(Attribute)2)类的操作3)关于类语义的进一步表达①详细叙述类的职责(Responsibility)②通过类的注解和/或操作的注解, 以结构化文本的形式和/编程语言, 详述注释整个类的语义和/或各个方法③通过类的注解或操作的注解, 以结构化文本形式, 详述注释各个操作的前置条件和后置条件, 甚至注释整个类的不变式④详述类的状态机⑤详述类的内部结构⑥类与其他类的协作4)类在建模中的主要用途①模型化问题域中的概念(词汇)②建立系统的职责分布模型③模型化建模中使用的基本类型2.接口(Interface)(1)采用具有分栏和关键字《interface》的矩形符号来表示(2)采用小圆圈和半圆圈来表示3.协作(Collaboration)4.用况(Use Case)5.主动类(Action Class)6.构件(Component)7.制品(Artifact)8.节点(Node)4.1.2 表达关系的术语1.关联(Association)(1)关联名(Name)(2)导航(3)角色(Role)(4)可见性(5)多重性(Multiplicity)(6)限定符(Qualifier)(7)聚合(Aggregation)(8)组合(Composition)(9)关联类(10)约束①有序(ordered)②无重复对象(set)③有重复对象(bag)④列表(list)或序列(sequence)⑤只读(readonly)2.泛化(Generalization)①完整(Complete)②不完整(Incomplete)③互斥(Disjoint)④重叠(Overlapping)3.细化(Realization)4.依赖①绑定(Bind)②导出(Derive)③允许(Permit)④实例(InstanceOf)⑤实例化(Instantiate)⑥幂类型(Powertype)⑦精化(Refine)⑧使用(Use)可模型化以下各种关系(1)结构关系1)以数据驱动2)以行为驱动(2)继承关系(3)精化关系(4)依赖关系4.1.3 表达组合信息的术语——包1)访问(Access)2)引入(Import)4.2 UML模型表达格式1.类图(Class Diagram)(1)模型化待建系统的概念(词汇), 形成类图的基本元素(2)模型化待建系统的各种关系, 形成该系统的初始类图(3)模型化系统中的协作, 给出该系统的最终类图(4)模型化逻辑数据库模式2.用况图(Use Case Diagram)所包含的内容(1)主题(Subject)(2)用况(Use Case)(3)参与者(Actor)(4)关联、泛化与依赖模型化工作1)关于系统/业务语境的模型化①系统边界的确定②参与者与用况的交互③参与者的语义表达④参与者的结构化处理2)关于系统/业务需求的模型化①确定系统/业务的基本用况②用况的结构化处理③用况的语义表达3.状态图(1)状态1)名字2)进入/退出效应(Effect)①entry②exit③状态内部转移3)do动作或活动4)被延迟的事件(2)事件1)信号(Signal)事件2)调用(Call)事件3)时间事件4)变化事件(3)状态转移①源状态②转移触发器③监护(guard)条件④效应(effect)⑤目标状态实际应用中, 使用状态图的作用①创建一个系统的动态模型②创建一个场景的模型4.顺序图(1)术语解析1)消息2)对象生命线3)聚焦控制(the Focus of Control)(2)控制操作子1)选择执行操作子(Operator for Optional Execution)2)条件执行操作子(Operator for Conditional Execution)3)并发执行操作子(Operator for Parallel Execution)4)迭代执行操作子(Operator for Iterative Execution)4.3 本章小结第五章面向对象方法——RUP5.1 RUP特点1.以用况为驱动2.以体系结构为中心3.迭代增量式开发5.2 核心工作流5.2.1 需求获取1.列出候选需求2.理解系统语境(1)业务用况模型(2)业务对象模型3.捕获系统功能需求(1)活动1: 发现并描述参与者(2)活动2: 发现并描述用况(3)活动3: 确定用况的优先级(Priority)(4)活动4: 精化用况(5)活动5: 构造用户界面原型1)用户界面的逻辑设计2)物理用户界面的设计3)开发用户界面原型并演示为了执行该用况, 用户怎样使用该系统(6)活动6: 用况模型的结构化5.2.2 需求分析1.基本术语(1)分析类(Analysis Class)1)边界类(Boundary Classes)2)实体类(Entity Classes)3)控制类(Control Classes)(2)用况细化(Use Case Realization)(3)分析包(Analysis Package)2.分析模型的表达3.分析的主要活动(1)活动1: 体系结构分析(Architectural Analysis)1)任务1: 标识分析包2)任务2: 处理分析包之间的共性3)任务3: 标识服务包4)任务4: 定义分析包的依赖5)任务5: 标识重要的实体类6)任务6: 标识分析包和重要实体类的公共特性需求(2)活动2: 用况分析1)任务1: 标识分析类①标识实体类②标识边界类③标识控制类2)任务2: 描述分析(类)对象之间的交互(3)活动3: 类的分析1)任务1: 标识责任2)任务2: 标识属性①关于实体类属性的标识②关于边界类属性的标识③关于控制类属性的标识3)任务3: 标识关联和聚合①关于关联的标识②关于聚合的标识③关于泛化的标识(4)活动4: 包的分析4.小结(1)关于分析模型1)分析包2)分析类3)用况细化(2)关于分析模型视角下的体系结构描述(3)用况模型和分析模型比较(4)分析模型对以后工作的影响1)对设计中子系统的影响2)对设计类的影响3)对用况细化[设计]的影响5.2.3 设计1.设计层的术语(1)设计类(Design Class)(2)用况细化[设计](3)设计子系统(4)接口(Interface)2.设计模型、部署模型以及相关视角下的体系结构描述(1)设计模型及其视角下的体系结构描述1)子系统结构2)对体系结构有意义的设计类3)对体系结构有意义的用况细化[设计](2)部署模型及该模型视角下的体系结构描述3设计的主要活动(1)活动1: 体系结构的设计1)任务1: 标识节点和它们的网络配置2)任务2: 标识子系统和它们的接口①标识应用子系统②标识中间件和系统软件子系统③定义子系统依赖④标识子系统接口3)任务3: 标识在体系结构方面有意义的设计类和它们的接口4)任务4: 标识一般性的设计机制①标识处理透明对象分布的设计机制②标识事务管理的设计机制(2)活动2: 用况的设计1)标识参与用况细化的设计类2)标识参与用况细化的子系统和接口(3)活动3: 类的设计1)任务1: 概括描述设计类2)任务2: 标识操作3)任务3: 标识属性4)任务4: 标识关联和聚合5)任务5: 标识泛化6)任务6: 描述方法7)任务7: 描述状态(4)活动4: 子系统的设计1)任务1: 维护子系统依赖2)任务2: 维护子系统所提供的接口3)任务3: 维护子系统内容4.RUP设计小结1)RUP设计的突出特点2)关于RUP的设计方法①给出用于表达设计模型中基本成分的4个术语, 包括子系统, 设计类, 接口, 用况细化[设计]②规约了设计模型的语法, 指导模型的表达③给出了创建设计模型的过程以及相应的指导3)RUP的设计模型①设计子系统和服务子系统②设计类(其中包括一些主动类), 以及他们具有的操作、属性、关系及其实现需求。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
“软件工程学”(成高学士学位专业课)考试大纲软件工程学是成人高等教育软件工程专业学士学位考试计划中的一门专业课程,该课程重点要求学生学习与软件开发和维护有关的四个方面的主要内容——过程与模型、方法与技术、工具与环境、标准与规范等。
本课程的主要任务是使应考者掌握软件工程的基本概念、基本原理、实用的开发方法和技术;了解软件工程各领域的发展动向;如何用工程化的方法开发软件项目,以及在开发过程中应遵循的流程、准则、标准和规范等。
本考试大纲主要由课程要求、考核要点、参考教材和样卷四部分组成。
一、课程要求通过软件工程学课程的学习,要求学生切实掌握软件工程的基本思想、基本概念、基本方法,能够应用相应的图形表示工具进行小型项目的开发,特别是实用方法与技术的应用。
具体要求如下:1.从总体上了解软件工程的产生、软件生产发展史、软件生存周期、各种方法和生存周期模型、软件工程面临的问题。
2.系统掌握软件开发最基本的内容:可行性研究和软件计划、需求分析、概要设计、详细设计、编码、测试、维护,系统掌握这些阶段的目标、任务、特点、步骤和文档。
3.掌握增量模型的基本内容、基本思想、运行机制、开发过程和步骤。
4.掌握结构化方法的基本思想,开发过程和步骤,应遵循的原则和准则,能够应用相应的图形表示工具开发小型软件项目。
5.初步掌握面向对象方法的基本思想、基本概念、基本模型,面向对象分析、面向对象设计、面向对象实现的任务、内容和步骤,能够应用相应的图形工具。
6.了解Jackson方法的基本思想、开发过程和步骤、能够应用相应的图形表示工具。
7.了解软件工程的质量保证中的各种基本概念和方法,了解软件工程管理中的思想和方法,了解软件开发环境与工具。
二、考核要点(一)第1章绪论本章总体要求是:从总体上了解软件工程的基本概念和内容、软件工程过程和生存期的基本概念和内容、软件开发的各种方法和生存周期模型等。
本章考核要求如下:(1)软件工程的产生①软件的特点,要求达到识记层次。
②软件生产的发展,要求达到识记层次。
③软件危机的产生、表现、原因,要求达到领会层次。
④软件工程的定义、性质、目标、内容、面临的问题,要求达到领会层次。
(2)软件工程过程和软件生存周期①软件工程过程概念,要求达到识记层次。
②软件生存周期概念,要求达到识记层次。
(3)软件生存周期模型、方法和工具①软件生存周期模型的定义、重要性、作用和准则,要求达到识记层次。
②瀑布模型、增量模型、螺旋模型、喷泉模型、变换模型、基于知识的模型等,要求达到识记层次。
③软件开发目标、软件开发方法的作用和重要性,要求达到识记层次。
④结构化方法、Jackson方法、维也纳方法、面向对象方法,要求达到识记层次。
⑤软件开发工具的重要性、软件开发环境和计算机辅助软件工程,要求达到识记层次。
(二)第2章软件可行性研究与项目开发计划本章总体要求是:深刻理解可行性研究的必要性、掌握可行性研究的任务及可行性研究均具体步骤、了解系统流程图的作用及符号表示、理解可行性研究报告与项目开发计划的内容等。
本章考核要求如下:(1)可行性研究①可行性研究的任务,要求达到识记层次。
②可行性研究的具体步骤,要求达到领会层次。
(2)系统流程图①系统流程图中的各步骤要求达到识记层次。
(3)成本——效益分析①投资回收率、回收期和纯收入要求达到识记层次。
(4)项目开发计划①项目开发计划包含的内容要求达到识记层次(三)第3章软件需求分析本章总体要求是:深刻理解需求分析阶段的概念及任务、熟练掌握面向数据流的分析方法——结构化分析方法、深刻理解数据流图和数据字典的作用及应用、掌握几种加工逻辑的描述方法。
本章考核要求如下:(1)需求分析的任务①需求分析的概念,要求达到识记层次。
②需求分析的基本任务,要求达到领会层次。
(2)结构化分析方法①结构化分析方法中的分析步骤,要求达到领会层次。
(3)数据流图①数据流图中的符号、画数据流图注意的事项,要求达到领会层次。
②分层的数据流图,要求达到简单应用层次。
(4)数据字典①数据字典的作用、数据字典中的条目,要求达到识记层次。
②数据字典的定义,要求达到简单应用层次。
(5)加工逻辑的描述①结构化语言、判定表(树)的构成,要求达到领会层次。
②结构化语言、判定表(树)描述,要求达到简单应用层次。
(6)IDEF方法①IDEF0的图形表示,要求达到领会层次。
②建立功能模型的基本方法,要求达到领会层次。
(四)第4章软件概要设计本章总体要求是:深刻理解软件设计的基本任务和基本原理;熟练掌握结构化设计方法;深刻理解模块化、抽象、信息隐敝、模块独立性等概念;明确度量模块独立性的标准——耦合性与内聚性。
本章考核要求如下:(1)软件概要设计的基本任务①软件设计、概要设计和详细设计,要求达到识记层次。
②软件设计的基本任务,要求达到领会层次。
(2)软件设计的基本原理①模块化、抽象、信息隐蔽、模块独立性、内聚性和耦合性等概念,要求达到领会层次。
②内聚性、耦合性的划分,要求达到领会层次。
(3)软件结构优化准则①软件结构、模块的影响范围、模块的控制范围,要求达到领会层次。
②软件结构设计的优化准则,要求达到领会层次。
(4)面向数据流的设计方法①变换流和事务流,要求达到识记层次。
②将变换流或事务流类型的数据流图,转换成软件结构,要求达到简单应用层次。
(5)基于IDEF0图的设计方法①IDEF0图的设计方法,要求达到领会层次。
(6)HIPO图表示软件结构①HIPO图,要求达到领会层次。
(五)第5章软件详细设计本章总体要求是:能熟练地使用详细设计描述方法来设计模块中的算法及程序的逻辑结构、理解Jackson方法的概念,学会使用Jackson方法设计输入输出数据结构和程序结构。
本章的考核要求如下:(1)详细设计的基本任务①详细设计的基本任务,要求达到领会层次。
(2)结构化程序设计方法①结构化程序设计的基本要点,要求达到识记层次。
(3)详细设计描述法①流程图、PAD图及过程设计语言,要求达到简单应用层次。
(4)Jackson方法①Jackson方法,要求达到简单应用层次。
(六)第6章软件编码本章总体要求是:掌握几种常用的程序设计语言的特点、领会程序设计中应注意的问题,、注重培养良好的编程风格。
本章的考核要求如下:(1)程序设计语言的特点及选择①几种常用的程序设计语言的特点。
要求达到识记层次。
(2)程序设计风格①程序设计风格,要求达到领会层次。
(七)第7章软件测试本章总体要求是:掌握测试阶段的任务、测试方法及测试步骤;深刻理解白盒、黑盒测试技术;深刻理解测试过程中单元测试、集成测试、确认测试的任务及采用的方法;掌握调试程序的方法。
本章的考核要求如下:(1)软件测试的目的及原则①软件测试的目的,要求达到识记层次。
(2)测试方法①白盒法、黑盒法,要求达到领会层次。
(3)测试用例的设计①逻辑覆盖、等价类划分、边界值分析、错误推测、因果图,要求达到识记层次。
②逻辑覆盖中各种覆盖之间的区别,要求达到领会层次。
③用白盒法、黑盒法设计测试用例,要求达到简单应用层次。
(4)测试过程①单元测试、集成测试、确认测试、渐增式、非渐增式,要求达到识记层次。
②单元测试的内容及方法、集成测试的方法、渐增式及非渐增式测试的区别、自顶向下及自底向上结合模块的步骤、三种测试与软件开发各阶段之间的关系,要求达到领会层次。
(5)调试①调试,要求达到识记层次。
②归纳法和演绎法,要求达到领会层次。
(八)第8章软件维护本章总体要求是:要掌握软件维护的内容、特点、方法、技术、文档;了解软件维护的各种困难、软件维护的特点、软件维护的文挡;理解软件维护的内容、维护任务的实施、维护的副作用;深刻理解如何提高软件可维护性。
本章的考核要求如下:(1)软件维护的内容①校正性维护、适应性维护、完善性维护和预防性维护,要求达到领会层次。
(2)软件维护的特点①结构化维护与非结构化维护、维护的困难性和软件维护的费用,要求达到识记层次。
(3)软件维护任务的实施①软件维护的组织、维护的流程、维护的技术及维护的副作用,要求达到识记层次。
(4)软件可维护性①可维护性的定义,要求达到领会层次。
②可维护性的度量,要求达到领会层次。
③提高可维护性的方法,要求达到领会层次。
(九)第9章软件开发的增量模型本章的总体要求是:了解增量模型的基本思想、特点;了解模型的分类和各种模型的表示;了解快速原型的基本原理;理解快速原型的开发技术、构造原型的建议和开发环境;深刻理解快速原型开发过程和步骤。
本章的考核要求如下:(1)概述①瀑布模型的局限性,要求达到识记层次。
②增量模型的基本思想、分类,要求达到识记层次。
(2)渐增模型①增量构造模型,要求达到领会层次。
②演化提交模型,要求达到领会层次。
(3)快速原型模型①快速原型模型的基本思想,要求达到识记层次。
②快速原型模型表示,要求达到识记层次。
③原型开发过程,要求达到领会层次。
(4)快速原型开发技术和开发环境①构造原型的建议和开发环境,要求达到领会层次。
(5)增量模型的评价①原型的作用、原型使用建议、原型的优点及原型存在的问题,要求达到识记层次。
(十)第10章面向对象的方法本章总体要求是:掌握面向对象的基本思想、基本概念、基本原理;掌握三种模型的基本概念和构造方法;掌握面向对象的分析、面向对象的设计、面向对象的实现的过程;了解传统开发方法的各种局限性;了解面向对象语言、面向对象技术、面向对象开发方法的发展过程;理解面向对象分析、面向对象设计、面向对象实现的内容、方法和步骤;深刻理解对象、类、类的层次结构、方法和消息的实质,深刻理解对象模型、动态模型、功能模型的元素、结构和构造方法。
本章的考核要求如下:(1)面向对象概述①传统开发方法存在的问题,要求达到识记层次。
②面向对象的概念,要求达到识记层次。
③面向对象的开发方法,要求达到识记层次。
(2)面向对象的模型①对象模型中对象和类、关联、类的层次结构,要求达到领会层次。
②对象图,要求达到简单应用层次。
③动态模型中的事件、状态、行为等概念,要求达到领会层次。
④状态图,要求达到简单应用层次。
⑤功能模型,要求达到领会层次。
(3)面向对象的分析①面向对象分析过程,要求达到领会层次。
②建立对象模型,要求达到简单应用层次。
③建立动态模型,要求达到简单应用层次。
④建立功能模型,要求达到简单应用层次。
(4)面向对象的设计①面向对象设计的准则,要求达到领会层次。
②面向对象设计的启发规则,要求达到领会层次。
③系统设计,要求达到识记层次。
④对象设计,要求达到识记层次。
(5)面向对象实现①程序设计语言,要求达到识记层次。
②类的实现,要求达到领会层次。
③应用系统的实现,要求达到领会层次。
④面向对象的测试,要求达到识记层次。
(十一)第11章软件质量与质量保证本章总体要求是了解软件质量的定义;理解软件质量的度量与评价、软件质量保证的基本概念;理解软件质量度量模型、软件复杂性、软件可靠性、设计质量的评审和程序质量评审的具体内容和软件容错技术的概念;理解软件复杂性的几种常用度量方法,以及软件质量度量模型;了解实现容错软件的一般方法和容错软件的实现过程;理解使用软件质量度量模型、软件复杂性度量模型、软件可靠性模型、容错软件设计过程与软件评审的方法对保证软件质量所起的作用。