斗----自尊、自强、自信

蜗牛慢慢爬,只要不停下来就好~~

博客园 首页 新随笔 联系 订阅 管理
原文地址:http://hurryguy.spaces.live.com/blog/cns!11D1743716676DEB!146.trak
Q: 什么是需求分析?
A: 需求分析是一个发现,求精,建模和规约的过程。
    需求分析是作为系统工程定义好软件工程构件后的一个后续任务出现的。它使得系统工程师能够刻画出软件的功能和性能,指明软件和其他系统元素的接口,建立软件必须满足的约束。同时需求分析还允许软件工程师精化软件分解模块,建造将被软件处理的数据,功能和行为模型。最后需求规约(requirement specification)为客户提供了软件建造完后质量评估的依据。
  
    如上所述需求分析需要定义以下几个方面的内容:
    1.软件和其他系统元素(eg: 硬件,人员等)的接口。
    2.软件必须满足的约束。
    3.对软件功能模块的分解。
    3.软件的数据模型
    4.软件的功能模型
    5.软件的行为模型
  
    一般来说需求分析可分为以下5个工作阶段:
    1) 问题分析
           对系统要解决的问题做出清楚地陈述。只定义问题是什么,而不涉及任何解决方案。
    2) 问题评估和方案综合
           系统完成什么功能?
           系统定义什么界面?
           系统应用什么约束/假设?
    3) 建模
    4) 规约
           定义系统的行为
    5) 复审
X: 在我现阶段的工作中。以上任务的角色分配如下:
    PLM:完成对问题的分析
    PA(SAE): 完成需求的细化和解决方案的审核
    PA/SW : 完成需求的建模和规约
    所有干系人(PLM/PA/SW):完成对需求的复审
  
Q: 如何进行需求分析?
A:
需求分析的方法更多的依赖于经验,以下几条列出了需求分析时的policy
    1. 必须表示问题的信息域      --  数据模型
           信息内容
           信息流
           信息结构(信息与信息之间的关系)
    2. 必须定义软件将完成的功能  --  功能模型
    3. 必须表示软件的行为        --  行为模型
    4. 必须划分描述信息,功能和行为的模型从而使得可以以层次的方式揭示细节 -- 层次划分/功能域,行为域的划分
    5. 分析过程应该从要素信息移向细节实现。
  
    NOTE:软件需求分析应该着重于软件将完成什么,而不是处理将如何实现。
 
Q: 为什么要需求建模?
A:
创建模型可以获得对将要建造的实际实体的更好的理解。
    同样,问题经常太大而且复杂,以致于难于进行整体的理解,为此,我们往往将这样的问题划分为易于理解的子问题,并建立各子问题的接口以使得可以完成整个功能。
  
Q: 什么是需求规约(requirement specification)?
A:
软件需求规约是分析任务的最终产物,作为系统工程的一部分,且分配给软件的功能和性能通过建立完整的信息描述,详细的功能和行为描述,性能需求和设计约束的说明,合适的校验标准以及其他和需求相关的数据而被精化。
    需求规约必须完成以下工作:
    1. 信息描述
    2. 功能描述
    3. 行为描述
    4. 性能需求
    5. 设计约束
 
posted on 2007-12-17 17:14  a斗  阅读(180)  评论(0编辑  收藏  举报