zoukankan      html  css  js  c++  java
  • 《需求工程——软件建模与分析》阅读笔记之二

       这本书的第二部分主要介绍了需求获取。

       在需求获取的过程中,有很多问题是普遍存在的,了解这些困难对更好地了解需求获取活动的复杂性有重要意义。书中介绍了几种常见的困难。1.用户和开发人员的背景不同,立场不同,因此会存在交流困难。要解决这个问题,就要求开发人员在开展需求获取之初,尽力去研究应用的背景,理解组织的业务状况,形成一个能够和用户进行有效沟通的粗略的知识框架;2.普遍用户缺乏概括性、综合性的表述能力。为解决这个困难,要求开发人员在与用户接触之前就先行确定获取的内容主题,然后设计具体的应用环境和场景条件,让用户在执行细节业务的场景中来描述问题和表达愿望;3.用户存在认知困境。要解决这类问题,开发者就需要利用各种有效的需求获取方法和技巧,引导用户去发现用户尚未形成明确认知的知识;4.用户越俎代庖。要解决用户越俎代庖带来的困难,就要求开发者在需求获取的过程中,注意保持业务领域和解决方案的区分界限。而且越俎代庖式需求的出现,往往意味着用户还拥有一些重要的隐藏需求没有被发现,开发者就应该分析用户的深层目的,找到隐藏在背后的需求;5.缺乏用户参与。要解决缺乏用户参与的困难,就要求开发者在进行需求获取时,能够对系统的用户以及用户的替代源等相关涉众进行分析,了解他们的特征、类别、任务、取向等,并在需求获取中采取对策避免用户参与不足现象的发生。通过这几个问题的分析,了解到了需求获取过程中的困难,并且也学到了一些解决方法,应该会对以后的学习工作有帮助。

       需求获取活动至少要做到:1.研究应用背景,建立初始的知识框架。2.根据获取的需要,采用必要的获取方法和技巧。3.先行确定获取的内容和主题,设定场景。4.分析用户的高(深)层目标,理解用户的意图。5.进行涉众分析,针对涉众的特点开展工作。

        项目的业务目标是系统的业务需求。根据系统的高层解决方案和系统特性,可以定义系统的上下文环境,建立系统的边界。软件系统的涉众可以定义为:所有能够影响软件系统的实现,或者会被实现后的软件系统所影响的个人和团队。软件系统中常见的涉众类别有:用户、客户、开发者、管理者、领域专家、政府力量、市场力量。

        需求获取方法:1.面谈;2.原型;3.观察与文档审查

        1.面谈:就是在需求获取活动发生在需求工程师和用户之间的面对面的会见,它是一种使用问答格式,具有特定目的的直接会话。之后书中介绍了面谈中的问题,准备面谈的主要工作,面谈的阶段,面谈的后续工作,面谈的类别,面谈的优点和局限性,群体面谈以及和面谈相关的其他需求获取方法

       2.原型:是在软件开发中被广泛使用的一种工具,在软件开发过程中的各个阶段,包括需求开发,都会使用不同类型的原型来达到不同的目的。之后书中介绍了原型的类别,原型方法,原型方法的风险。

       3.观察与文档审查:用户专心于完成自己的工作,而且不需要同步地向需求工程师解释自己的工作;需求工程师则置于一旁,他们很少会打断用户的工作,同时通过观察用户的行为形成对相关信息的学习和认知。文档审查的主要获取对象包括相关产品的需求规格说明、硬数据和客户的需求文档。

       这三种需求获取方法给我们以后在工作中提供了方法,不至于犯不必要的错误。书中对于每一种方法都进行了详细的介绍,还说明了优缺点以及适用情况,对我们有极大的好处。

       在了解面谈、原型、观察和文档审查等需求获取方法的同时,还需要懂得怎样将整个系统的需求获取行为有效地组织起来。需求获取的常见模型驱动方法有:1.面向目标的方法。2.基于场景的方法。3.基于用例的方法。书中详细介绍了这三种方法,使我们更清楚地了解了这三种常用的方法,在以后的需求工程中就有方法可循了。

  • 相关阅读:
    JVM之内存区域
    记录Spring Boot小项目的一些坑
    JVM之编译OpenJDK
    Java容器之HashMap源码分析1
    IO流(1)--文件流及其原理
    IO流(0)
    Java中的字节和字符
    整理全网优秀的API接口设计及相关优秀的接口管理、在线文档生成工具
    关于智慧城市的建设方案和资料,相关内容大多来源于互联网,收集整理方便项目经理、产品经理、相关交通领域公司的使用
    整理可视化大屏设计教程与相关资源,大屏设计,可视化
  • 原文地址:https://www.cnblogs.com/gting/p/4883383.html
Copyright © 2011-2022 走看看