《需求工程-软件建模与分析之读书笔记之二》
《需求工程-软件建模与分析之读书笔记之二》
第8章<需求获取方法之原型>提出了原型是软件开发过程中被广泛使用的一种工具,贯穿于软件开发过程的全过程中,包括需求开发,都会使用不同的原型来达到不同的目的,它能够对一些具体问题进行基于实物的有效沟通,从而解决软件开发过程中存在的各种不确定性。原型可分为不同的类型,它的使用方式包括演示,严格意义上的,试验和引示系统原型;它的开发方法包括探索式,实验式和演化式;其构建技术包括水平,垂直原型方法两种方法;它的介质包括纸面,幻灯动画,快速语言和工具和程序代码四种;它有静态画面,动态程序和情景串联图版这几种表现方式;它的过程为确定原型需求,原型开发,原型评估和原型修正这几个步骤;当然这其中也是也有风险的,在使用原型方法的过程中我们要慎重。
第9章<需求获取方法之观察与文档审查>中提出了常见的观察方法有采样观察,民族志,话语分析,协议分析和任务分析,它能让我们理解复杂的协同事件,获取工作中的异常处理,获取与用户认知不一致的实际共识,了解用户的认知和获取默认知识。在文档审查中,对于相关产品的需求规格说明,所采用的方法是需求重用;对于硬数据采用的是文档分析;对于客户的需求文档采用的是需求剥离。第10章!<需求的组织>提出了需求获取的常见模型驱动方法,包括面向目标,基于场景和基于用例的方法,它可以指导和组织需求获取行为的开展,整理和归类需求获取行为得到的信息,为详细信息的分析提供背景基础和上下文共识,帮助组织需求文档的结构和作为需求验证的知识基础。在面向目标方法的过程中,我们知道目标可以被分为不同的类型,常见的分为软目标和硬目标,还可分为实现目标,维护目标和优化目标三种类型;关系分为目标之间的链接以及与其它模型元素的链接;它的处理过程分为目标的获取,目标分析和目标实现三个阶段;在基于场景的方法中,场景的形式(描述和外观),场景的内容(主要关注点,环境范围,抽象层次,粒度g和示例模型),场景的生命周期以及在需求中的应用(组织需求获取得到的信息,帮助进行详细的需求分析,结合面向目标的方法,指导需求获取活动的开展)组成了场景方法的分类框架。在基于用例的方法中,一定要知道用例模型的两种关系即扩展,包含和泛化;还要知道需求过程中产生的三大文档即项目前景和范围文档,用户需求文档以及需求规格说明。
第11章<需求分析概述>提出了需求分析的根本任务是建立分析模型,达成开发者和用户对需求信息的共同理解;依据共同理解,发挥创造性,创建软件系统解决方案。模型语言由语法,语义和语用三个要素构成。常见的需求分析技术有上下文图,数据流图,类图等等。需求分析的方法包括传统分析,结构化分析,信息工程和面向对象分析这几种方法。前期需求阶段的分析包括面向问题域和领域分析。需求分析的活动包括问题分析,确定系统边界,需求建模,需求细化,确定需求优先级和需求协商。
第12章<过程建模>提出了建模使用的主要技术有上下文图,数据流图,微规格说明和数据字典。数据流图的基本元素为外部实体,过程,数据流,数据存储组成;在其中还得遵循以下规则:过程是对数据的处理,必须有输入和输出;数据流必须和过程产生关联;每一个对象要可被标识。行为图表示过程的逻辑结构。模块结构图分为功能分解图和过程依赖图。第13章<数据建模>提出了三种常见的数据模型表现:概念数据模型,物理数据模型和逻辑数据模型。实体可分为概念实体,逻辑实体和进程实体。属性可分为单值属性,多值属性,简单属性,组合属性,存储属性和导出属性。创建ERD首先得辨识实体,其次是确定实体的标识符,建立实体之间的关系和最后的添加详细的描述信息。复杂的情况下创建分为以下几个步骤:发现系统的概念域,建立对概念域的描述,展开概念域和合并概念域的局部数据模型。在现在的实现ERD与过程模型同步的技术中,功能\实体矩阵是一种较为常见的技术。