免费智能真题库 > 历年试卷 > 信息系统项目管理师 > 2009年上半年 信息系统项目管理师 上午试卷 综合知识
  第36题      
  知识点:   需求管理概述   软件工程   需求工程
  关键词:   软件工程   需求工程   需求        章/节:   项目整体管理       

 
需求工程帮助软件工程师更好地理解要解决的问题。下列活动中,不属于需求工程范畴的是 (36) 。
 
 
  A.  理解客户需要什么,分析要求,评估可行性
 
  B.  与客户协商合理的解决方案,无歧义地详细说明方案
 
  C.  向客户展现系统的初步设计方案,并得到客户的认可
 
  D.  管理需求以至将这些需求转化为可运行的系统
 
 
 

 
  第7题    2018年下半年  
   41%
软件需求是多层次的,包括业务需求、用户需求、系统需求,其中业务需求()。
  第7题    2010年下半年  
   47%
某软件项目实施过程中产生的一个文档的主要内容如下所示,该文档的主要作用是(7)。
  第44题    2012年上半年  
   50%
在项目的实施阶段,当客户明确提出某项需求需要更改时,项目经理应该(44)。
   知识点讲解    
   · 需求管理概述    · 软件工程    · 需求工程
 
       需求管理概述
        需求和需求管理
        需求是指由项目接受的或项目产生的产品和产品构件需求,包括由组织征集的对项目的需求。有技术性的,也有非技术性的。
        需求管理的目的是确保各方对需求的一致理解;管理和控制需求的变更;从需求到最终产品的双向跟踪。
        需求工程
        需求工程是所有与需求直接相关的活动的通称,它的活动可分为两大类:需求开发和需求管理。
        需求开发的目的是通过调查和分析获取用户需求并定义产品需求。
        需求基线:软件项目需求开发的结果应该有项目视图和范围文档、用例文档、软件需求规格说明及相关分析模型,经评审批准,这些文档就定义了开发工作的需求基线。
        需求开发的主要活动:
        .需求获取。与用户进行交流,捕捉、分析用户对目标系统的需求,提炼出符合解决问题的用户需求,产生《用户需求说明书》。
        .需求分析。对各种需求信息进行分析并抽象描述,为目标系统建立一个概念模型。
        .需求定义。根据需求调查和需求分析的结果,进一步定义准确无误的产品需求,产生《需求规格说明书》。
        .需求验证。指开发方和用户共同对需求文档评审,经双方对需求达成共识后作出书面承诺,使需求文档具有商业合同效果。
        需求管理和需求开发密切合作,需求开发涉及把项目关系人的需要转换成产品需求和决定如何在各个产品构件之间安排或分配需求;需求管理要收集需求的变更和变更的理由,并且维持对原有需求和所有产品及产品构件需求的双向跟踪。
        CMMI中的需求管理流程
        CMMI中的需求管理流程如下:
        (1)制订需求管理计划。
        (2)求得对需求的理解。
        (3)求得对需求的承诺。
        (4)管理需求变更。
        (5)维护对需求的双向跟踪性。
        (6)识别项目工作与需求的不一致。
        需求属性
        除了文本,每个功能需求应该有一些相关的信息或属性与之相联系。这些属性在它的预期功能性之外为每个需求建立了一个上下文和背景资料。
        需求文档中需要考虑的属性包括:
        .创建需求的时间。
        .需求的版本号。
        .创建需求的作者。
        .负责认可该需求的人员。
        .需求状态。
        .需求的原因或根据。
        .需求涉及的子系统。
        .需求涉及的产品版本号。
        .使用的验证方法或接受的测试标准。
        .产品的优先级或重要程度。
        .需求的稳定性。
 
       软件工程
        1)软件工程的概念
        为了消除软件危机,通过认真研究解决软件危机的方法,人们认识到软件工程是使计算机软件走向科学的途径,逐渐形成了软件工程的概念,并开辟工程学的新兴领域,即软件工程学。
        2)软件工程的要素
        软件工程具有以下3个要素。
        (1)方法。完成软件工程项目的技术手段。
        (2)工具。支持软件的开发、管理、文档生成。
        (3)过程。将方法和工具综合起来以达到合理、及时地进行计算机软件开发的目的。
        3)软件生命周期
        软件生命周期是指软件产品从考虑其概念开始到该软件产品交付使用,直至最终退役为止的整个过程,包括计划阶段、分析阶段、设计阶段、实现阶段、测试阶段和运行维护阶段。
        4)软件开发模型
        比较经典的软件开发模型有瀑布模型、快速原型模型、演化模型、增量模型、螺旋模型、喷泉模型等。
        5)软件开发方法
        软件开发方法有以下几种。
        (1)结构化软件开发(SASD)方法:采用结构化技术来完成软件开发的各项任务。它把软件生命周期划分成若干个阶段,依次完成每个阶段的任务。它与瀑布模型有很好的结合度,是与其最相适应的软件开发方法。
        (2)面向数据结构的软件开发方法:从目标系统的输入、输出数据结构入手,导出程序框架结构,再补充其他细节,从而可得到完整的程序结构图。有Jackson方法和Warnier方法。
        (3)面向对象的软件开发方法:随着OOP(面向对象编程)向OOD(面向对象设计)和OOA(面向对象分析)的发展,最终形成面向对象的软件开发方法OMT(Object Modelling Technique)。这是一种自底向上和自顶向下相结合的方法,而且它以对象建模为基础,从而不仅考虑了输入、输出数据结构,实际上也包含了所有对象的数据结构。
        (4)基于构件化的开发方法:用预先建立的构件和模板,像"搭积木"一样进行建造。
 
       需求工程
        需求工程就是包括创建和维护系统需求文档所必需的一切活动的过程,也就是指需求开发和需求管理两大工作。
        (1)需求开发。包括需求捕获、需求分析、编写规格说明书和需求验证4个阶段。在需求开发阶段需要确定产品所期望的用户类型、获取每种用户类型的需求、了解实际的用户任务和目标,以及这些任务所支持的业务需求。同时还包括分析源于用户的信息、对需求进行优先级分类、将所收集的需求编写成为软件规格说明书和需求分析模型,以及对需求进行评审等工作。
        (2)需求管理。通常包括定义需求基线、处理需求变更及需求跟踪等方面的工作。
        这两个方面是相辅相成的,需求开发是主线,是目标;需求管理是支持,是保障。换句话来说,需求开发是努力更清晰、更明确地掌握客户对系统的需求;而需求管理则是对需求的变化进行管理的过程。
        针对整个需求工程,通常有以下一些指导原则。
        (1)在开始建立分析模型前先理解问题。人们通常总存在急于求成的倾向,甚至在问题被很好地理解前就已开始建模,这经常会导致产生一个解决错误的问题。
        (2)开发原型,使得用户能够了解将如何发生人机交互。因为人们对软件质量的感觉经常基于对界面“友好性”的感觉,所以强力推荐使用原型方法(以及相应产生的迭代)。
        (3)记录每个需求的起源及原因,这是建立回溯到客户的可追踪性的第一步。
        (4)使用多个需求视图。建立数据、功能和行为模型,为软件工程师提供三种不同的视图,这将减少忽视某些东西的可能性,并增加识别不一致性的可能性。
        (5)给需求赋予优先级。过短的时限可能使每个软件需求得以实现的可能性减小,如果采用增量模型,则必须标识那些将在第一个增量中要交付的需求。
        (6)努力删除含糊性。因为大多数需求以自然语言描述,存在含糊性的可能,正式的技术复审是发现并删除含糊性的一种方法。
   题号导航      2009年上半年 信息系统项目管理师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第36题    在手机中做本题