您好,欢迎访问三七文档
下列选项中不属于结构化程序设计方法的是:da.自顶向下b.逐步求精c.模块化d.可复用在面向对象方法中,类描述的是具有相似属性和操作的一组对象软件工程基础大纲1.软件工程基本概念,软件生命周期的概念,软件工具与软件开发环境。2.结构化分析方法,数据流图,数据字典,软件需求规格说明书。3.结构化设计方法,总体设计与详细设计。4.软件测试的方法,白盒测试与黑盒测试,测试用例设计,软件测试的实施:单元测试、集成测试和系统测试。5.程序的调试,静态调试与动态调试。第三章软件工程基础一、软件的定义与特点计算机软件(software)是计算机系统中与硬件相互依存的另一部分,是包括程序、数据及相关文档的完整集合。软件的特点:1、软件是一种逻辑实体,而不是物理实体,具有抽象性。2、软件的生产与硬件不同,它没有明显的制作过程。3、软件在运行、使用期间不存在磨损、老化的问题。4、软件的开发、运行受计算机系统的限制。5、软件复杂度高,成本昂贵。6、软件开发设计诸多的社会因素。软件按功能分:应用软件,系统软件,支撑软件(工具软件)3.1软件工程的基本概念软件是程序、数据和___相关文档__________的集合。二、软件危机与软件工程软件工程的概念的出现源自软件危机。20世纪60年代末以后,“软件危机“这个词频繁出现。所谓软件危机是泛指在计算机软件的开发和维护过程中所遇到的一系列严重问题。具体地说,在软件开发和维护过程中,软件危机主要表现在:1、软件的需求的增长得不到满足2、软件开发成本和进度无法控制3、软件质量难以保证4、软件不可维护或维护程度非常低5、软件的成本不断提高6、软件开发生产率的提高赶不上硬件的发展和应用需求的增长。总之,可以将软件危机归结为成本、质量、生产率等问题。“软件危机”是指(c)A.计算机病毒的出现B.利用计算机进行经济犯罪活动C.软件开发和维护中出现的一系列问题D.人们过分迷恋计算机系统软件工程就是试图用工程、科学和数学的原理与方法研制、维护计算机软件的有关技术及管理方法。软件工程是开发、维护和修复软件的系统方法。将系统化的、规范化的、可度量的方法应用于软件的开发、运行和维护的过程,即将工程化应用于软件中。1968年在北大西洋公约组织会议上,软件工程作为一个概念首次被提出。软件工程包括3个要素:方法、工具和过程方法是完成软件工程项目的技术手段;工具支持软件的开发、管理、文档生成;过程支持软件开发的各个环节的控制、管理三、软件工程过程与软件生命周期软件工程过程是把输入转化为输出的一组彼此相关的资源和活动。软件工程过程通常包含4种基本活动:P(Plan)——软件规格说明。规定软件的功能及其运行时的限制D(Do)——软件开发。产生满足规格说明的软件C(Check)——软件确认。确认软件能够满足用户提出的要求A(Action)——软件演进。为满足用户的变更要求,软件必须在使用的过程中演进下面不属于软件工程的3个要素的是______。(D)A.工具B.过程C.方法D.环境通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。软件工程中研究:可行性研究与需求分析、总体设计(概要设计)、详细设计、软件测试、软件维护。可行性研究初步项目计划需求分析概要设计详细设计实现测试使用维护退役定义阶段开发阶段维护阶段软件生命周期软件开发的结构化生命周期方法将软件生命周期划分成______。(A)A.定义、开发、运行维护B.设计阶段、编程阶段、测试阶段C.总体设计、详细设计、编程调试D.需求分析、功能定义、系统设计软件维护活动包括以下几类:改正性维护、适应性维护、______维护和预防性维护。答:完善性在软件开发中,下面任务不属于设计阶段的是______。(D)A.数据结构设计B.给出系统模块结构C.定义模块算法D.定义需求并建立系统模型四、软件工程的目标与原则1、软件工程的目标:软件工程需要达到的基本目标应是:付出较低的开发成本;达到要求的软件功能;取得较好的软件性能;开发的软件易与移植;需要较低的维护费用;能按时完成开发,及时交付使用.软件工程的理论和技术性研究的内容包括:软件开发技术和软件工程管理。2、软件工程的原则抽象:抽取事物最基本的特性和行为,忽略非本质细节。信息隐蔽:采用封装技术,将程序模块的实现细节隐藏起来,使模块借口尽量简单模块化:模块是程序中相对独立的成分,一个独立的编程单位,应有良好的接口定义局部化:要求在一个物理模块内集中逻辑相互关联的计算资源,保证模块间具有松散的耦合关系,模块内部有较强的内聚性确定性:软件开发过程中所有概念的表达应是正确的,无歧义且规范的。一致性:包括程序、数据和文档的整个软件系统的各模块应使用已知的概念、符号和术语;程序内外部接口应保持一致,系统规格说明与系统行为应保持一致。完备性:软件系统不丢失任何重要部分,完全实现系统所需的功能。可验证性:开发大型软件系统需要对系统自顶向下,逐层分解。系统分解应遵循容易检查、测评、评审的原则,以确保系统的正确性。软件工程研究的内容主要包括:______技术和软件工程管理。答:软件开发五、软件开发工具与软件开发环境软件工程鼓励研制和采用各种先进的软件开发方法、工具和环境。工具和环境的使用进一步提高了软件的开发效率、维护效率和软件的质量。软件开发环境或软件工程环境是全面支持软件开发全过程的软件工具集合。这些软件工具按照一定的方法或模式组合起来,支持软件生命周期内的各个阶段和各项任务的完成。计算机辅助软件工程(CASE,ComputerAidedSoftwareEngineering)是当前软件开发环境中富有特色的研究工作和发展方向。CASE将各种软件工具、开发机器和一个存放开发过程信息的中心数据库组合起来,形成软件工程环境。软件开发环境是全面支持软件开发全过程的______________集合。软件工具3.2结构化分析方法(StructuredAnalisys,SA)软件开发方法是软件开发过程所遵循的方法和步骤,其目的在于有效地得到一些工作产品,即程序和文档,并且满足质量要求。软件开发方法包括分析方法、设计方法和程序设计方法结构化方法包括已经形成了配套的结构化分析方法、结构化设计方法和结构化编程方法。结构化分析是面向数据流进行需求分析的方法。是结构化程序设计理论在软件需求分析阶段的运用。结构化分析方法就是用抽象模型的概念,按照软件内部数据传递、变换的关系,自顶向下逐层分解,知道找到满足功能要求的所有可实现的软件为止。结构化分析方法使用了以下几个工具:数据流图、数据字典、判定表和判定树下列不属于结构化分析的常用工具的是______。(D)A.数据流图B.数据字典C.判定树D.PAD图在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是______。(B)A.可行性分析B.需求分析C.详细设计D.程序编码一、需求分析和需求分析方法1、需求分析:它的基本任务是准确地回答“系统必须做什么?”需求分析的任务是发现需求、求精、建模和定义需求的过程。需求分析将创建所需的数据模型、功能模型和控制模型。需求分析的内容包括:提炼、分析和仔细审查已收集到的需求;确保所有利益相关相关者都明白其含义并找出其中的错误、遗漏或其他不足的地方;从用户最初的非形式化需求到满足用户对软件产品的要求的影射;对用户意图不断进行提示和判断。需求分析阶段的工作:需求获取:对问题域空间的理解;与用户交流;不断变化的需求需求分析:对获取的需求进行分析和综合,最终给出系统的解决方案和目标系统的逻辑模型编写需求规格说明书:它作为需求分析的阶段成果,可以为用户、分析人员和设计人员间的交流提供方便。需求评审:在需求分析的最后一步,对需求分析阶段的工作进行复审,验证需求文档的一致性、可行性、完整性和有效性需求分析阶段的任务是确定______。(D)A.软件开发方法B.软件开发工具C.软件开发费用D.软件系统功能软件的需求分析阶段的工作,可以概括为四个方面:______、需求分析、编写需求规格说明书和需求评审。答:需求获取在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是dA)概要设计B)详细设计C)可行性分析D)需求分析2、需求分析方法结构化分析方法:面向数据流的结构化分析方法(SA-Structuredanalysis)面向数据结构的Jackson方法(JSD-Jacksonsystemdevelopmentmethod)面向数据结构的结构化数据系统开发方法(DSSD-Datastructuredsystemdevelopmentmethod)面向对象的分析方法(OOA-Object-Orientedmethod)二、结构化分析的常用工具数据流图、数据字典、判定树和判定表(1)数据流图(DFD-DataFlowDiagram)是描述数据处理过程的工具,是需求理解的逻辑模型的图形表示,它直接支持系统的功能建模。Jackson结构化程序设计方法是英国的M.Jackson提出的,它是一种面向______的设计方法。答:数据结构下列工具中为需求分析常用工具的是dA)PADB)PFDC)N-SD)DFD下列不属于结构化分析的常用工具的是___d___。A.数据流图B.数据字典C.判定树D.PAD图数据流图从数据传递和加工的角度,来刻画数据流从输入到输出的移动变换过程。主要图形元素与说明如下:加工(转换)。输入数据经加工变换产生输出数据流。沿箭头方向传送数据的通道,一般在旁边标注数据流名存储文件(数据源)。表示处理过程中存放各种数据的文件源,潭。表示系统和环境的接口,属系统之外的实体数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流合法图符的是aA)控制流B)加工C)数据存储D)源和潭在数据流图(DFD)中,带有名字的箭头表示______。(C)A.控制程序的执行顺序B.模块之间的调用关系C.数据的流向D.程序的组成成分在数据流图(DFD)中,带有名字的箭头表示______。(C)A.控制程序的执行顺序B.模块之间的调用关系C.数据的流向D.程序的组成成分(2)数据字典(DD-DataDictionary)数据字典是结构化分析方法的核心。数据字典是对所有与系统相关数据元素的一个有组织的列表,以及精确的严格的定义。数据字典的作用是对DFD中出现的被命名的图形元素的确切解释。其内容有图形元素的:名称、别名、何处使用/如何使用(位置),内容描述、补充信息等。符号含义=表示“等于”,“定义为”,“由什么构成”[…|…]表示“或”,即选择括号中用“|”号分隔的各项中的某一项+表示“与”,“和”n{}m表示”重复“,即括号中的项要重复若干次,n,m表示重复次数的上下限(…)表示”可选“,即括号中的现可以没有**表示”注释“..连接符数据字典是各类数据描述的集合,它通常包括5个部分,即数据项、数据结构、数据流、______和处理过程。答:数据存储(3)判定树(DecisionTree)使用判定树进行描述时,应先从问题定义的文字描述中分清哪些是判定条件,哪些是判定的结论,根据描述材料中的连接词找出判定条件之间的从属关系、并列关系、选择关系,根据它们构造判定树。(4)判定表(DecisionTable)与判定表相似,当数据流图中的加工要依赖于多个逻辑条件的取值,即完成该加工的一组动作是由于某一组条件取值的组合而引发的。使用判定表较适宜。三、软件需求规格说明书软件需求规格说明(SRS,SoftwareRequirementSpecification)是需求分析阶段最后成果,是软件开发中的重要文档之一。作用:便于用户、开发人员进行理解和交流反映出用户问题的结构,可以作为软件开发工作的基础和依据作为确认测试和验收的依据下列叙述中,不属于软件需求规格说明书的作用的是______。(D)A.便于用户、开发人员进行理解和交流B.反映出用户问题的结构,可以作为软件开发工作的基础和依据C.作为确认测试和验收的依据D.便于开发人员进行需求分析软件需
本文标题:软件工程
链接地址:https://www.777doc.com/doc-212994 .html