软件水平考试

T和H分别作为系统需求分析师和软件设计工程师,参与①、②、③、④四个软件的开发工作。T的工作必须发生在H开始工作之前。每个软件开发工作需要的工时如下表所示。在最短的软件开发工序中,单独压缩 ( ) 对进一步加快进度没有帮助。A.①的需求分析时间B.①的软件设计时间C.③的需求分析时间 D.③的软件设计时间

题目
T和H分别作为系统需求分析师和软件设计工程师,参与①、②、③、④四个软件的开发工作。T的工作必须发生在H开始工作之前。每个软件开发工作需要的工时如下表所示。在最短的软件开发工序中,单独压缩 ( ) 对进一步加快进度没有帮助。

A.①的需求分析时间
B.①的软件设计时间
C.③的需求分析时间
D.③的软件设计时间
如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

()论软件开发模型的选择与应用 传统的软件开发模型有瀑布模型,螺旋模型、演化模型等,随着软件技术的迅速发展和市场的变化,新的软件开发模型也不断出现,如XP模型、敏捷模型和RUP模型等。这些开发模型都有各自的优缺点,在实际应用中存在着许多不足和局限。 请围绕“软件开发模型的选择与应用”论题,依次对以下三个方面进行论述。 1.概要叙述你参与分析和开发的应用项目以及你所担任的主要工作。 2.具体叙述你在参与开发的软件中选用软件开发模型的原则,具体是如何使用所选择的开发模型的? 3.简要叙述软件开发模型的近期演变趋势与主要特征,你准备如何去适应这类演变?


正确答案:略
  解答要点
  (1)首先用400-500字的篇幅简要叙述作者参与分析和开发的信息系统项目的概要和所担任的工作。
  (2)具体叙述你在参与开发的软件中选用软件开发模型的原则。例如适应需求的变化、灵活性等。
  (3)具体是如何使用所选择的开发模型的,即根据选择模型进行开发的过程是怎样的。
  (4)简要叙述软件开发模型的近期演变趋势与主要特征,你准备如何去适应这类演变。

第2题:

文档是软件开发人员.维护人员.用户以及计算机之间的(),软件开发人员在各个阶段以文档作为前段工作成果的()和后段工作的()。


参考答案:桥梁 体现 基础

第3题:

需求分析是______。

A.软件开发工作的基础

B.软件生存周期的开始

C.由系统分析员单独完成

D.由用户自己单独完成


正确答案:A
解析:需求分析是整个软件开发任务的基础性工作,它是软件开发工作的第一步骤,但是不是软件生命周期的开始。关于需求分析,首先要了解用户的要求,并分析用户的要求,因此,需求分析不能由用户或系统分析员的任何一方单独完成。

第4题:

下列软件开发时期的说法正确的是:()。

A、软件开发时期的工作包括确定工程的可行性

B、软件开发时期的工作包括导出实现工程目标应该采用的策略及系统必须完成的功能

C、软件开发时期的工作包括估计实现工程需要的资源和成本,并制定工程进度表

D、软件开发时期的工作包括软件结构的设计、数据结构和算法设计、编写程序、测试


本题答案:D

第5题:

关于软件测试与软件开发的认识,不正确的是______。

A.软件生命周期各个阶段都可能产生错误

B.软件测试是独立于软件开发的一个工作

C.软件开发的需求分析和设计阶段就应开始测试工作

D.测试越早进行,越有助于提高被测软件的质量

A.

B.

C.

D.


正确答案:B

第6题:

软件工程的要点包括()。

A、系统工程管理思想

B、事先编制详尽的系统开发计划并严格控制执行,使软件开发文档化、规范化、纪律化

C、树立为户服务和用户必须参与的观点

D、强调阶段复审,确保每个开发阶段的工作质量

E、详尽的文档使软件开发可见可控了


参考答案:BCD

第7题:

需求分析是( )。

A.软件开发工作的基础

B.由用户自己单独完成的

C.由系统分析员单独完成的

D.软件生存周期的开始


正确答案:A

第8题:

论基于架构的软件设计方法及应用 基于架构的软件设计(Architecture-Based Software Design,ABSD)方法以构成软件架构的商业、质量和功能需求等要素来驱动整个软件开发过程。ABSD是一个自顶向下,递归细化的软件开发方法,它以软件系统功能的分解为基础,通过选择架构风格实现质量和商业需求,并强调在架构设计过程中使用软件架构模板。采用ABSD方法,设计活动可以从项目总体功能框架明确后就开始,因此该方法特别适用于开发一些不能预先决定所有需求的软件系统,如软件产品线系统或长生命周期系统等,也可为需求不能在短时间内明确的软件项目提供指导。

请围绕“基于架构的软件开发方法及应用”论题,依次从以下三个方面进行论述。 1. 概要叙述你参与开发的、采用ABSD方法的软件项目以及你在其中所承担的主要工作。 2. 结合项目实际,详细说明采用ABSD方法进行软件开发时,需要经历哪些开发阶段?每个阶段包括哪些主要活动? 3. 阐述你在软件开发的过程中都遇到了哪些实际问题及解决方法。


正确答案:

一、论文中要具体介绍项目的背景与总体需求、系统所采用的技术路线以及你所承担的实际工作。
二、采用ABSD方法进行软件开发时,需要经历架构需求、架构设计、架构文档化、架构复审、架构实现和架构演化六个阶段。
1. 架构需求阶段需要明确用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。其主要活动包括需求获取、标识构件和架构评审。
(1)需求获取活动需要定义开发人员必须实现的软件功能,使得用户能够完成他们的任务,从而满足功能需求。与此同时,还要获得软件质量属性,满足一些非功能性需求。
(2)标识构件活动首先需要获得系统的基本结构,然后对基本结构进行分组,最后将基本结构进行打包成构件。
(3)架构需求评审活动组织一个由系统涉众(用户、系统分析师、架构师、设计实现人员等)组成的小组,对架构需求及相关构件进行审查。审查的主要内容包括所获取的需求是否真实反映了用户需求,构件合并是否合理等。
2. 架构设计阶段是一个迭代过程,利用架构需求生成并调整架构决策。主要活动包括提出架构模型、将已标识的构件映射到架构中、分析构件之间的相互作用、产生系统架构和架构设计评审。
3. 架构文档化的主要活动是对架构设计进行分析与整理,生成架构规格说明书和测试架构需求的质量设计说明书。
4. 在一个主版本的软件架构分析之后,需要安排一次由外部人员(客户代表和领域专家)参加的架构复审。架构复审需要评价架构是否能够满足需求,质量属性需求是否在架构中得以体现、层次是否清晰、构件划分是否合理等。从而标识潜在的风险,及早发现架构设计中的缺陷和错误。
5. 架构实现主要是对架构进行实现的过程,主要活动包括架构分析与设计、构件实现、构件组装和系统测试。
6. 架构演化阶段主要解决用户在系统开发过程中发生的需求变更问题。主要活动包括架构演化计划、构件变动、更新构件的相互作用、构件的组装与测试和技术评审。
   三、在软件开发的过程中可能遇到的问题包括:在架构需求获取过程中如何对捕获的架构需求进行筛选和优先级排序;在架构复审过程中如何解决评审人员的意见不一致问题;在架构实现过程中如何根据项目组实际情况选择开发语言与开发平台;在架构演化过程中如何筛选并处理用户的需求变更,等等。


第9题:

关于软件测试与软件开发的认识,不正确的是(35)

A.软件生命周期各个阶段都可能产生错误

B.软件测试是独立于软件开发的一个工作

C.软件开发的需求分析和设计阶段就应开始测试工作

D.测试越早进行,越有助于提高被测软件的质量


正确答案:B
解析:软件测试是贯穿于软件开发过程的。软件生存周期的各个阶段中都少不了相应的测试,软件生存周期各个阶段的测试分别对应于软件测试过程中的单元测试、集成测试、系统测试和确认测试,如下图所示。这种对应关系有利于软件开发过程的管理和软件质量的控制。测试工程师与开发工程师目标一致、行为对立、并行工作,有生产就必然有质检,二者的工作相辅相成,开发人员和测试人员的主要矛盾就集中在对bug的定义上。

第10题:

试题三 论软件开发模型及应用

软件开发模型(Software Development Model)是指软件开发全部过程、活动和任务的结构框架。软件开发过程包括需求、设计、编码和测试等阶段,有时也包括维护阶段。软件开发模型能清晰、直观地表达软件开发全过程,明确规定了要完成的主要任务和活动,用来作为软件项目工作的基础。对于不同的软件项目,针对应用需求、项目复杂程度、规模等不同要求,可以采用不同的开发模型,并采用相应的人员组织策略、管理方法、工具和环境。

请围绕“软件开发模型及应用”论题,依次从以下三个方面进行论述。 1.简要叙述你参与的软件开发项目以及你所承担的主要工作。 2.列举出几种典型的软件开发模型,并概要论述每种软件开发模型的主要思想和技术特点。 3.根据你所参与的项目中使用的软件开发模型,具体阐述使用方法和实施效果。


正确答案:1、用400-600字叙述作者参与开发与管理的软件项目,包括但不仅限于,项目时间,规模,周期,背景,系统的主要功能,所采用的相关技术等。
2、开发模型多种多样,常见的包括:
瀑布模型:严格遵循软件生命周期各阶段的固定顺序,一个阶段完成再进入另一个阶段。其优点是可以使过程比较规范化,有利于评审;缺点在于过于理想,缺乏灵活性,容易产生需求偏差。
快速原型模型:对于许多需求不够明确的项目,比较适合采用该模型。它采用了一种动态定义需求的方法,通过快速地建立一个能够反映用户主要需求的软件原型,让用户在计算机上使用它,了解其概要,再根据反馈的结果进行修改,因此能够充分体现用户的参与和决策。
演化模型:也是一种原型化开发,但与快速原型不同的是,快速原型模型在获得真实需求时,就将抛弃原型。而演化模型则不然,它将从初始的模型中逐渐演化为最终软件产品,是一种“渐进式”原型法。
增量模型:它采用的是一种“递增式”模型,它将软件产品划分成为一系列的增量构件,分别进行设计、编码、集成和测试。
螺旋模型:结合了瀑布模型和演化模型的优点,最主要的特点在于加入了风险分析。它是由制定计划、风险分析、实施工程、客户评估这一循环组成的,它最初从概念项目开始第一个螺旋。
喷泉模型:主要用于描述面向对象的开发过程,最核心的特点是迭代。所有的开发活动没有明显的边界,允许各种开发活动交叉进行。
统一过程(UP):统一过程是一个通用过程框架,可以用于种类广泛的软件系统、不同的应用领域、不同的组织类型、不同的性能水平和不同的项目规模。UP是基于构件的,在为软件系统建模时,UP使用的是UML。与其他软件过程相比,UP具有三个显著的特点,即用例驱动、以架构为中心、迭代和增量。
敏捷方法:敏捷方法是一种以人为核心、迭代、循序渐进的开发方法。在敏捷方法中,软件项目的构建被切分成多个子项目,各个子项目成果都经过测试,具备集成和可运行的特征。在敏捷方法中,从开发者的角度来看,主要的关注点有短平快的会议、小版本发布、较少的文档、合作为重、 客户直接参与、自动化测试、适应性计划调整和结对编程;从管理者的角度来看,主要的关注点有测试驱动开发、持续集成和重构。
3、结合项目实践说明作者在项目中所采用的开发模型,并阐述实施效果。

更多相关问题