niusouti.com
参考答案和解析
答案:
解析:
软件测试模型主要包括V模型、W模型、H模型、X模型、H模型和前置测试模型等;软件开发模型主要包括瀑布模型、原型模型、螺旋模型、增量模型和RUP模型等
更多“软件测试模型主要有哪些?软件开发模型主要有哪些?”相关问题
  • 第1题:

    试题一论模型驱动的软件开发方法及其应用

    模型驱动架构( MDA)是对象管理组织(OMG)提出的一种新的软件开发方法,它强调由软件系统的建模行为驱动整个系统的开发过程,来完成系统的需求分析、架构设计、构建、测试、部署和运行维护等工作。与传统的UML模型相比,MDA能够创建出机器可读和高度抽象的模型,这种模型通过转换( Transformation)技术可自动转换为代码、测试脚本、数据库定义以及各种平台的部署描述。通过使用MDA技术,可以有效解决传统软件开发过程中的生产效率问题、系统移植问题、互操作问题以及文档和系统后期维护问题。

    请围绕“模型驱动的软件开发方法及其应用”论题,依次从以下三个方面进行论述。

    1.概要叙述你参与实施的模型驱动的软件开发项目以及你所担任的主要工作。

    2.阐述模型驱动的软件开发过程中的主要活动,并论述模型驱动的软件开发过程

    与传统的软件开发过程的区别。

    3.阐述在进行模型驱动的软件开发时遇到了哪些问题,如何解决。


    正确答案:

    写作要点:
    一、论文中要具体介绍组织的业务背景、组织结构、软件系统的架构、采用的技术
    等内容和担任的实际工作。
    二、相关的内容包括:
    1.模型驱动的软件开发过程中的主要活动包括:
    (1)需求分析人员根据领域需求得到描述软件系统外部特征的计算无关模型(CIM);
    (2)在对CIM进行分析的基础上得到平台无关模型(PIM),并根据业务逻辑进一步精化PIM;
    (3)进行PIM到平台特定模型(PSM)的模型转换;
    (4)将每个PSM转换为实现特定模型(ISM),生成应用程序代码,并进行测试。
    2.与传统的软件开发过程相比,模型驱动的软件开发方法有5个主要区别。
    (1)自动实现模型变换。
    传统的开发过程中,模型到模型的变换,或模型到代码的变换都是手工完成的;而模型驱动的开发过程中,模型变换都是由相关工具自动完成的,PIM到PSM、PSM到
    ISM都可以自动转换实现。
    (2) 模型是开发产品,也是程序生成的基础设施。
    模型驱动的开发过程中,模型是软件开发生命周期中的核心产品,通过一系列转换
    最终可以自动生成执行代码,是产生执行代码的基础设施。而在传统开发过程中模型只是分析人员、设计人员进行分析与交流的文档与图标,不能生成可用的应用程序代码。
    (3)模型变换过程与代码生成过程同步,可维护性强。
    模型驱动开发过程中,执行代码是由模型通过转换直接生成的,保证了模型与代码的同步。开发人员维护系统的重心不在是传统开发方法中的程序代码,而是与业务逻辑
    相关、与技术平台无关的平台无关模型PIM。
    (4)业务逻辑模型与实现技术平台分离。
    需求分析阶段生成的PIM模型与开发技术、开发平台以及实现技术无关,并且PIM模型可以根据不同的技术平台,自动生成以模型为基础的、适用于不同技术平台的软件系统。
    (5)提高了开发效率与软件质量。
    模型驱动开发的模型架构代表了对系统不同层次的抽象,使得开发人员更加清晰地了解系统的整个架构,而不会被具体的实现技术所困扰。开发人员专注于根据系统业务
    逻辑构建PIM,通过代码生成技术自动生成实现代码,减少了由于人为因素导致的系统实现错误。
    三、在进行模型驱动的软件开发时可能存在的问题包括:如何对CIM和PIM进行建模;如何进行模型之间的转换,特别是PIM到PSM的转换;如何根据需求进行实现
    平台选择;如何根据PSM生成ISM(代码);如何进行系统测试;等等。

     

  • 第2题:

    结合软件开发过程,模型往往可划分为业务模型、()、设计模型、测试模型等。


    正确答案:分析模型

  • 第3题:

    面向对象的软件开发包括哪些过程?OOA模型包括哪三个层次?OOD模型在OOA模型的基础上引入了哪些工作?


    正确答案: 面向对象的软件开发过程可以大体划分为面向对象的分析(ObjectOrientedanalysis,OOA)、面向对象的设计(Objectorienteddesign,OOD)、面向对象的实现(Objectorientedprogramming,OOP)三个阶段。
    面向对象的分析的主要作用是明确用户的需求,并用标准化的面向对象的模型规范地表述这一需求,最后将形成面向对象的分析模型。
    面向对象的设计将在OOA模型的基础上引入界面管理、任务管理和数据管理三部分的内容。

  • 第4题:

    常见的软件生存期模型主要有哪些?每种模型的优缺点是什么?


    正确答案: 常见的软件生存期模型主要有瀑布模型、快速原型模型、增量模型、螺旋模型、喷泉模型和统一过程。
    (1)瀑布模型
    优点:可强迫开发人员采用规范化的方法;严格地规定了每个阶段必须提交的文档;要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。
    缺点:由于瀑布模型几乎完全依赖于书面的规格说明,很可能导致最终开发出的软件产品不能真正满足用户的需要;用户往往需要等待很长时间才能看到可以运行的程序;适应需求变更的能力比较差。
    适用范围:瀑布模型只适用于项目开始时需求已确定的情况。
    (2)快速原型模型
    优点:有助于满足用户的真实需求;原型系统已经通过与用户的交互而得到验证,据此产生的规格说明文档能够正确地描述用户需求。
    缺点:要求开发人员快速建立原型。
    适用范围:适用于需求不明确的软件项目。
    (3)增量模型
    优点:
    能在较短时间内向用户提交可完成一些基本功能的产品,即从第一个构件交付之日起,用户就能做一些有用的工作。
    逐步增加产品的功能可以使用户有较充裕的时间学习和适应新产品,从而减少一个全新的软件可能给用户组织带来的冲击。
    项目失败的风险较低,虽然在某些增量构件中可能遇到一些问题,但其他增量构件将能够成功地交付给客户。
    优先级最高的服务首先交付,然后再将其他增量构件逐次集成进来。因此,最重要的系统服务将接受最多的测试。
    缺点:
    在把每个新的增量构件集成到现有软件体系结构中时,必须不破坏原来已经开发出的产品。
    软件体系结构必须是开放的,即向现有产品中加入新构件的过程必须简单、方便。
    适用范围:适用于工期紧张、功能可以划分、比较复杂的软件项目。软件工程师必须有较高的技术水平,能够设计出开放的软件体系结构。
    (4)螺旋模型
    优点:
    对可选方案和约束条件的强调有利于已有软件的重用,也有助于把软件质量作为软件开发的一个重要目标;
    减少了过多测试或测试不足所带来的风险;
    在螺旋模型中维护只是模型的另一个周期,在维护和开发之间并没有本质区别。
    缺点:螺旋模型是风险驱动的,因此要求软件开发人员必须具有丰富的风险评估经验和这方面的专门知识,否则将出现真正的风险:当项目实际上正在走向灾难时,开发人员可能还以为一切正常。
    适用范围:适用于内部开发的大型软件(开发周期长、比较容易受到社会因素影响的软件项目),软件开发人员具有丰富的风险评估知识和经验。
    (5)喷泉模型
    优点:在开发过程中使用统一的概念和方法,各阶段之间没有明显的界限,容易实现各个开发过程的多次反复迭代,达到了认识的逐步深化,降低了出错的可能性。
    缺点:由于各个阶段之间的界线不明确,容易造成软件开发过程的无序。
    适用范围:适用于面向对象的软件开发。
    (6)统一过程
    优点:提高了团队生产力,在迭代的开发过程、需求管理、基于组件的体系结构、可视化软件建模、验证软件质量及控制软件变更等方面,针对所有关键的开发活动为每个开发成员提供了必要的准则、模板和工具指导,并确保全体成员共享相同的知识基础。它建立了简洁和清晰的过程结构,为开发过程提供了较大的通用性。
    缺点:RUP只是一个开发过程,并没有涵盖软件过程的全部内容,例如它缺少关于软件运行和支持等方面的内容;此外,它没有支持多项目的开发结构,这在一定程度上降低了在开发组织内大范围实现重用的可能性。
    适用范围:适用于基于构件的软件开发。

  • 第5题:

    软件开发中可能用到的主要生存期模型有哪些?


    正确答案: 瀑布模型,V模型模型,原型模型,增量模型,螺旋式模型,快速应用开发模型,渐近式阶段模型。

  • 第6题:

    软件开发模型给出了软件开发活动各阶段之间的关系,()不是软件开发模型。

    • A、瀑布模型
    • B、螺旋模型
    • C、原型模型
    • D、程序模型

    正确答案:D

  • 第7题:

    软件测试的方法主要有哪些?


    正确答案: 静态测试动态测试

  • 第8题:

    名词解释题
    常见的软件开发模型有哪些?

    正确答案: 有瀑布模型、原型模型、螺旋模型、喷泉模型、变换模型、基于四代技术的模型、基于知识的智能模型等。
    解析: 暂无解析

  • 第9题:

    问答题
    常见的软件生存期模型主要有哪些?每种模型的优缺点是什么?

    正确答案: 常见的软件生存期模型主要有瀑布模型、快速原型模型、增量模型、螺旋模型、喷泉模型和统一过程。
    (1)瀑布模型
    优点:可强迫开发人员采用规范化的方法;严格地规定了每个阶段必须提交的文档;要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。
    缺点:由于瀑布模型几乎完全依赖于书面的规格说明,很可能导致最终开发出的软件产品不能真正满足用户的需要;用户往往需要等待很长时间才能看到可以运行的程序;适应需求变更的能力比较差。
    适用范围:瀑布模型只适用于项目开始时需求已确定的情况。
    (2)快速原型模型
    优点:有助于满足用户的真实需求;原型系统已经通过与用户的交互而得到验证,据此产生的规格说明文档能够正确地描述用户需求。
    缺点:要求开发人员快速建立原型。
    适用范围:适用于需求不明确的软件项目。
    (3)增量模型
    优点:
    能在较短时间内向用户提交可完成一些基本功能的产品,即从第一个构件交付之日起,用户就能做一些有用的工作。
    逐步增加产品的功能可以使用户有较充裕的时间学习和适应新产品,从而减少一个全新的软件可能给用户组织带来的冲击。
    项目失败的风险较低,虽然在某些增量构件中可能遇到一些问题,但其他增量构件将能够成功地交付给客户。
    优先级最高的服务首先交付,然后再将其他增量构件逐次集成进来。因此,最重要的系统服务将接受最多的测试。
    缺点:
    在把每个新的增量构件集成到现有软件体系结构中时,必须不破坏原来已经开发出的产品。
    软件体系结构必须是开放的,即向现有产品中加入新构件的过程必须简单、方便。
    适用范围:适用于工期紧张、功能可以划分、比较复杂的软件项目。软件工程师必须有较高的技术水平,能够设计出开放的软件体系结构。
    (4)螺旋模型
    优点:
    对可选方案和约束条件的强调有利于已有软件的重用,也有助于把软件质量作为软件开发的一个重要目标;
    减少了过多测试或测试不足所带来的风险;
    在螺旋模型中维护只是模型的另一个周期,在维护和开发之间并没有本质区别。
    缺点:螺旋模型是风险驱动的,因此要求软件开发人员必须具有丰富的风险评估经验和这方面的专门知识,否则将出现真正的风险:当项目实际上正在走向灾难时,开发人员可能还以为一切正常。
    适用范围:适用于内部开发的大型软件(开发周期长、比较容易受到社会因素影响的软件项目),软件开发人员具有丰富的风险评估知识和经验。
    (5)喷泉模型
    优点:在开发过程中使用统一的概念和方法,各阶段之间没有明显的界限,容易实现各个开发过程的多次反复迭代,达到了认识的逐步深化,降低了出错的可能性。
    缺点:由于各个阶段之间的界线不明确,容易造成软件开发过程的无序。
    适用范围:适用于面向对象的软件开发。
    (6)统一过程
    优点:提高了团队生产力,在迭代的开发过程、需求管理、基于组件的体系结构、可视化软件建模、验证软件质量及控制软件变更等方面,针对所有关键的开发活动为每个开发成员提供了必要的准则、模板和工具指导,并确保全体成员共享相同的知识基础。它建立了简洁和清晰的过程结构,为开发过程提供了较大的通用性。
    缺点:RUP只是一个开发过程,并没有涵盖软件过程的全部内容,例如它缺少关于软件运行和支持等方面的内容;此外,它没有支持多项目的开发结构,这在一定程度上降低了在开发组织内大范围实现重用的可能性。
    适用范围:适用于基于构件的软件开发。
    解析: 暂无解析

  • 第10题:

    问答题
    面向对象的软件开发包括哪些过程?OOA模型包括哪三个层次?OOD模型在OOA模型的基础上引入了哪些工作?

    正确答案: 面向对象的软件开发过程可以大体划分为面向对象的分析(ObjectOrientedanalysis,OOA)、面向对象的设计(Objectorienteddesign,OOD)、面向对象的实现(Objectorientedprogramming,OOP)三个阶段。
    面向对象的分析的主要作用是明确用户的需求,并用标准化的面向对象的模型规范地表述这一需求,最后将形成面向对象的分析模型。
    面向对象的设计将在OOA模型的基础上引入界面管理、任务管理和数据管理三部分的内容。
    解析: 暂无解析

  • 第11题:

    问答题
    常见的软件开发模型有哪些?

    正确答案: 常见的软件工程模型有:瀑布模型、螺旋模型、快速原型模型、智能模型等等。
    解析: 暂无解析

  • 第12题:

    问答题
    软件开发中可能用到的主要生存期模型有哪些?

    正确答案: 瀑布模型,V模型模型,原型模型,增量模型,螺旋式模型,快速应用开发模型,渐近式阶段模型。
    解析: 暂无解析

  • 第13题:

    软件开发中有哪几种过程模型?哪些适用于面向对象的软件开发?


    正确答案: 软件开发中常见的软件过程模型有瀑布模型、原型模型、螺旋模型、喷泉模型、统一软件过程等。
    其中喷泉模型、统一软件过程适用于面向对象的软件开发。

  • 第14题:

    常见的软件开发模型有哪些?


    正确答案: 有瀑布模型、原型模型、螺旋模型、喷泉模型、变换模型、基于四代技术的模型、基于知识的智能模型等。

  • 第15题:

    什么是软件的生命周期模型?它主要有哪些模型?


    正确答案: 软件生命周期模型是描述软件开发过程中各种活动如何执行的模型。主要有:瀑布模型、原型模型、增量模型、螺旋模型、喷泉模型、基于知识的模型和变换模型。

  • 第16题:

    有关经济增长的理论模型主要有哪些?


    正确答案: (1)哈罗德-多马模型。
    (2)新古典增长模型。
    (3)新剑桥增长模型。
    (4)现代经济增长理论。

  • 第17题:

    传统的软件开发模型的缺陷是什么?原型化方法的类型有哪些?原型开发模型的主要优点是什么?


    正确答案: 传统软件生存期范型的典型代表是“瀑布模型”。这种模型的核心是将软件生存期划分为软件计划、需求分析、软件设计、编码、测试和运行维护等阶段,根据不同阶段工作的特点,运用不同的方法、技术和工具来完成该阶段的任务。软件开发人员遵循严格的规范,在每一阶段工作结束时都要进行严格的阶段评审和确认,以得到该阶段的一致、完整、正确和无歧义性的文档资料,并以它们做为下一阶段工作的基础。
    传统思想强调每一阶段的严格性,尤其是开发初期要有良好的软件规格说明,主要是源于过去软件开发的经验教训,即在开发的后期或运行维护期间来修改不完善的规格说明要付出巨大的代价。但是,要想得到一个完整准确的规格说明不是一件容易的事。特别是对于一些大型的软件项目,在开发的早期用户往往对系统只有一个模糊的想法,很难完全准确地表达对系统的全面要求,软件开发人员对于所要解决的应用问题认识更是模糊不清。经过详细的讨论和分析,也许能得到一份较好的规格说明,但却很难期望该规格说明能将系统的各个方面都描述得完整、准确、一致,并与实际环境相符。很难通过它在逻辑上推断出(不是在实际运行中判断评价)系统运行的效果,以此达到各方对系统的共同理解。随着开发工作向前推进,用户可能会产生新的要求,或因环境变化,要求系统也能随之变化;开发人员又可能在设计与实现的过程中遇到一些没有预料到的实际困难,需要以改变需求来解脱困境。因此规格说明难以完善、需求的变更、以及通信中的模糊和误解,都会成为软件开发顺利推进的障碍。尽管在传统软件生存期管理中通过加强评审和确认,全面测试,甚至依靠维护阶段能够缓解上述问题,但不能从根本上解决这些问题。
    为了解决这些问题,逐渐形成了软件系统的快速原型的概念。由于运用原型的目的和方式不同,原型可分为以下两种不同的类型:
    ①废弃型:先构造一个功能简单而且质量要求不高的模型系统,针对这个模型系统反复进行分析修改,形成比较好的设计思想,据此设计出更加完整、准确、一致、可靠的最终系统。系统构造完成后,原来的模型系统就被废弃不用。
    ②追加型或演化型:先构造一个功能简单而且质量要求不高的模型系统,作为最终系统的核心,然后通过不断地扩充修改,逐步追加新要求,最后发展成为最终系统。
    建立快速原型进行系统的分析和构造,有以下的优点:
    ①增进软件者和用户对系统服务需求的理解,使比较含糊的具有不确定性的软件需求(主要是功能)明确化。由于这种方法能在早期就明确了用户的要求,因此可防止以后由于不能满足用户要求而造成的返工,从而避免了不必要的经济损失,缩短了开发周期。
    ②软件原型化方法提供了一种有力的学习手段。通过原型演示,用户可以亲身体验早期的开发过程,获得关于计算机和被开发系统的专门知识。软件开发人员也可以获得用户对系统的确切要求,学习到应用范围的专业知识。
    ③使用原型化方法,可以容易地确定系统的性能,确认各项主要系统服务的可应用性,确认系统设计的可行性,确认系统作为产品的结果。因而它可以作为理解和确认软件需求规格说明的工具。
    ④软件原型的最终版本,有的可以原封不动地成为产品,有的略加修改就可以成为最终系统的一个组成部分,这样有利于建成最终系统。

  • 第18题:

    瀑布模型的缺点主要有哪些?


    正确答案: 1)在软件开发的初期阶段就要求做出正确、全面、完整的需求分析对许多应用软件来说是极其困难的。
    2)在需求分析阶段,当需求确定后,无法及时验证需求是否正确、完整。
    3)不支持产品的演化,缺乏灵活性,使软件产品难以维护。

  • 第19题:

    商业银行采用内部模型法还必须定期开展压力测试,对压力测试主要有哪些一般性的要求?


    正确答案:商业银行使用内部模型法计算市场风险资本要求,应制定相应的市场风险压力测试方案。压力测试方案必须特别关注:集中度风险、压力市场条件下的市场非流动性、单一走势市场、事件风险、非线性产品以及内部模型可能无法适当反映的其他风险(例如,隐含的相关性和非对称风险)。
    商业银行应当具备按日实施压力测试的能力。压力测试应当包括市场冲击涉及的流动性风险方面的因素。例如在发生金融市场危机时,银行未能及时将部分交易持仓平仓,以及这些持仓的价值波动较大的风险。商业银行应选择运用最适合其交易账户业务规模及复杂程度的压力测试技术,包括敏感性测试及情景测试。

  • 第20题:

    问答题
    举例软件开发模型有哪些(写出至少4个)。

    正确答案: 瀑布,螺旋,渐进,V,原型,增量,迭代等。
    解析: 暂无解析

  • 第21题:

    单选题
    软件开发模型给出了软件开发活动各阶段之间的关系,()不是软件开发模型。
    A

    瀑布模型

    B

    螺旋模型

    C

    原型模型

    D

    程序模型


    正确答案: C
    解析: 暂无解析

  • 第22题:

    问答题
    什么是软件的生命周期模型?它主要有哪些模型?

    正确答案: 软件生命周期模型是描述软件开发过程中各种活动如何执行的模型。主要有:瀑布模型、原型模型、增量模型、螺旋模型、喷泉模型、基于知识的模型和变换模型。
    解析: 暂无解析

  • 第23题:

    问答题
    软件开发中有哪几种过程模型?哪些适用于面向对象的软件开发?

    正确答案: 软件开发中常见的软件过程模型有瀑布模型、原型模型、螺旋模型、喷泉模型、统一软件过程等。
    其中喷泉模型、统一软件过程适用于面向对象的软件开发。
    解析: 暂无解析