文档介绍:软件工程
电子教案
王树林
Chapter 11 Analysis concepts and principles
软件需求理解对软件开发工作是至关重要的。
需求分析任务是发现、求精、建摸和规约的过程。
客户:尽力描述功能和性能。
开发者: 功能的询问者、和问题解决者。
Chapter 11 Analysis concepts and principles
需求分析
需求分析是一种软件工程活动。
系统工程
软件需求分析
软件设计
Chapter 11 Analysis concepts and principles
软件需求分析的5个阶段:
(1)问题分析,
(2)问题评估和方案综合,
(3)建摸,
(4)规约,
(5)复审。
Chapter 11 Analysis concepts and principles
在这个阶段要得到详细的规约是不可能的。
通信技术
开发者与客户之间的通信与交流经常是不顺畅的。
过程的启动
客户与开发者之间最常用的方式为预备会议或访谈。
Chapter 11 Analysis concepts and principles
便利的应用规约技术
客户与软件工程师经常有无意识的“我们和你们”的区分不是按需要来将一支队伍标识和精化,而是各自定义自己的“版图”,并通过一系列备忘录、正式的意见书、文档以及提问和回答会议来相互通信。事实说明,这种方法不是很有效的。
正是由于这个原因,才开发了一种面向团队的需求收集方法,被称之为便利的应用规约技术(FAST)。该方法鼓励客户与开发者之间的合作,提出解决方案。
在中立的地点举行会议,由开发者和客户出席。
建立准备和参与会议的规则。
鼓励思维的交流。
一个协调者控制会议。
使用一种“定义机制”(工作表、图表、墙版)。
Chapter 11 Analysis concepts and principles
Chapter 11 Analysis concepts and principles
目标是标识问题、提出解决方案的要素、商议不同方法,营造解决问题的氛围。
例如:假定为消费产品公司工作的FAST团队提供了下面的产品描述。
我们的研究表明,家庭安全系统的市场正以每年40%的比率增长,我们希望能进入该市场,并试图建立基于微处理器的家庭安全系统,该系统将保护和识别一系列意外事件,如非法入侵,火警、水灾或其他。该产品暂时称为SafeHome,产品将采用合适的传感器来检测各种情况,具体使用时房主可按需编程,并且当系统检测的意外情况时,会自动地给监控机构拨打电话。
Chapter 11 Analysis concepts and principles
为SafeHome描述的对象可能包括:若干烟雾传感器、若干窗口和门传感器、若干运动检测器、一个报警器、一个事件(启动某传感器),一个控制面板,一个显示器,一串电话号码、一次电话拨号。
服务的列表可能包括:设置报警器、监控传感器、电话拨号、控制面板编程、以及读显示器。
开发约束列表:系统的制造成本必须低于200万美圆、界面友好、标准电话接口和性能标准列表。
Chapter 11 Analysis concepts and principles
开发商
记录员
协调者
客户
FAST会议