<虚拟地球仪>

需求规约 1.0版

<虚拟地球仪>开发小组







修订历史

日期 版本 描述 作者
2010/7/11 1.0版 初始版本 邓念晨



目录

1. 简介

1.1 目的
1.2 范围
1.3 定义、首字母缩写词和缩略语
1.4 参考资料
1.5 概述

2. 整体说明

2.1 产品总体效果
2.2.1 基础功能
2.2.2 扩展功能
2.3 用户特征
2.4 约束
2.5 假设与依赖关系
2.6 需求子集

3. 具体需求

3.1 功能
3.1.1 摘要
3.1.2 详细信息
3.2 可用性
3.2.1 平台无关性
3.2.2 易用性
3.3 可靠性
3.3.1 平均故障间隔时间 (MTBF)
3.3.2 平均修复时间 (MTTR)
3.4 性能
3.4.1 并发用户数
3.4.2 同时在线数
3.4.3 请求响应时间
3.5 可支持性
3.6 设计约束
3.6.1 开发语言约束
3.6.2 开发周期约束
3.7 联机用户文档和帮助系统需求
3.8 接口
3.8.1 用户界面
3.8.2 硬件接口
3.8.3 软件接口
3.8.4 通信接口
3.9 适用的标准

1. 简介

1.1 目的

此文档的目的是确定<虚拟地球仪>的需求。此需求规约列出了用例模型的用例中无法阐明的需求。需求规约和用例模型两者共同阐明了此系统的完整的需求。

1.2 范围

此需求规约应用于<虚拟地球仪>开发小组开发的<虚拟地球仪>。
此规约定义了本系统的非功能性需求,如可用性、可靠性、性能、可支持性以及通过大量用例阐明的功能性需求(功能性需求在用例规约中确定)。

1.3 定义、首字母缩写词和缩略语


1.4 参考资料

  1. C-Registration System Supplementary Specification draft, 1998, Wylie College IT
  2. “ELIB读酷”需求规约,09学年度软件工程概论课程第二小组,2010
  3. “基于投影仪实现地球仪模型的演示”需求规约,范晔、毛松亮、朱宇峰,2009
  4. <虚拟地球仪>前景文档,<虚拟地球仪>开发小组,2010

1.5 概述

此需求规约的其他部分包含了<虚拟地球仪>的整体说明以及具体需求。整体说明包括了产品总体效果、产品功能、用户特征、约束、假设与依赖关系以及需求子集;具体需求包括了功能性需求、非功能性需求以及接口和适用的标准。

2. 整体说明

2.1 产品总体效果

本产品是一款利用虚实结合技术的新型展示产品。数字地球仪、沙盘和平面显示设备三大部分构成本产品所有部件。每个部分都包含相应的计算与存储设备、显示设备以及输入设备,各部分之间使用局域网进行同步通信。用户可以通过手势、语音和激光笔与本产品进行交互,获取他们所需要的信息。本产品将会给用户带来全新的使用体验和便捷的交互方式。
下面是图形展示本产品的总体设计效果图:
总体设计效果

2.2 产品功能

2.1.1 投影展现世界地图

本产品应该能够使用投影仪从普通空心球体的上方向下投影在球表面,投影范围应该大于等于120度(中心角),投影应能清晰显示10pt普通字体的英文字母,与屏幕显示相比没有明显的变色。

2.1.2 沙盘展现局部地形图

本产品应该可以在沙盘上展现立体的地形起伏,且具有真实的渲染效果。沙盘地形分辨率应大于等于8*10,投影渲染场景应与地形贴合,投影效果与5.5.1中所指定的相同。

2.1.3 平面显示设备展示数据图表和介绍资料

本产品应该可以在平面显示设备上展示额外的数据图表和介绍资料,平面显示设备的分辨率应大于等于1024*768,可以采用投影、普通液晶显示器等多种设备作为平面显示设备。

2.1.4 手势识别

本产品应该支持手势识别,用户可以用手在球体表面移动、单次触碰或划出特定的形状,系统应该可以识别这些动作并做出正确的响应。对于移动,系统应该使得球体转动速率和用户动作基本一致,误差应该小于1cm/s;对于单次触碰,系统应该能够正确识别用户触碰的位置,识别误差应该小于1cm;对于划特定的形状,系统应该能够根据预设判断用户动作,并正确执行其对应的操作,识别误差应该小于1次/50次。同时,本产品应该支持任意数目的点触控制,在识别多个相互距离大于1cm的触碰点时不会产生相互干扰而导致识别错误。

2.1.5 语音识别

本产品应该支持语音识别,用户可以根据产品说明的要求用声音发出有限制的数条指令。对于用户发出的正确指令,系统应该能够正确识别并响应,错误率应小于1次/10次。对于用户发出的错误指令,系统应该能够提示用户指令错误。关于模糊不清的指令,对系统的响应不做要求。

2.1.6 激光笔识别

本产品应该支持激光笔响应。其要求同手势识别基本一致,但它应该可用于在沙盘上进行操作。

2.1.7 展示世界地图和多种分布图

系统应该可以在球体上展示世界地图和多种分布图,例如地形等高线图、板块图、臭氧分布图、资源分布图、生物分布图等。用户可以选择查看哪种类型的地图。平面显示器应该能够根据球体上展现的地图类型同步显示相应的数据和介绍。

2.1.8 展示历史视图

系统应该可以展示历史上多个时期的各类地图,地图种类和5.3.1所指定一一对应。用户可以选择时间节点查看该时期的地图,也可以选择两个时间节点查看一段时间的动态变化。对于单点查看,平面显示器应该能同步显示该时期该类地图的数据和介绍及对于该时期的背景资料;对于动态查看,平面显示器应该能够跟踪时期变化显示该类地图关注数据的走势。

2.1.9 区域地形展示

系统应该提示用户有哪些区域可以展示区域地形和详细资料。用户选择某一区域后,沙盘应该能够展示出该区域的局部地形,用标记等方式显示资源、生物分布等信息。用户可以在一定范围内选择缩放比例,沙盘应该能够根据用户选择的缩放比例展示相应尺寸的地形;用户也可以上下移动“视域”查看一定范围内周围的地形,沙盘可以根据用户要求进行改变。平面显示器相应显示该地区的概要资料。所展示的地形应该与地球仪上当前时期相吻合,但响应动态时期变化展示可作为可选扩展特性。

2.1.10 与沙盘交互查看地点详细数据资料

在沙盘展示出地形以后,系统应该提示用户有哪些地点具有详细数据资料。用户选择地点后,平面显示器应该相应显示该地点的详细资料,包括地名、特色、物种、矿产、人口、地标等信息,以图表、图片、视频、文字资料等形式展示。

2.1.11 平台化

本产品应当在已有的应用基础上,归纳共同需求,并将其封装为一个底层平台,以增强其适用范围。本产品应当提供一组接口定义,供其它欲在本平台上开发更多应用的开发人员使用。同时,本产品应当支持符合本产品规定格式的新应用的安装和卸载,使最终用户能够自定义本产品满足他们额外的需求。

2.1.12 更多应用展示

本产品应当具备更多应用展示,用以展示平台化特性。具体应用待定。

2.3 用户特征

用户大多具有一定受教育水平,但未必熟悉电脑。对信息的需求较大,希望通过简便而明了的方式获取他们想得到的信息和数据。

2.4 约束

本项目存在开发语言和开发周期的约束,具体请参看3.6。

2.5 假设与依赖关系

无。

2.6 需求子集

展示需求(功能1-3)、交互需求(功能4-6)、应用需求(功能7-10)、平台化需求(功能11-12)

3. 具体需求

3.1 功能

3.1.1 摘要:

用例图
用例 描述
手势和激光笔识别 该用例说明系统应该能识别用户手势和激光笔
根据数据展示特定类型地图 该用例说明系统应该能够根据数据展示特定类型的地图
平面展示详细信息 该用例说明系统应该能够提取相关数据资料显示在信息屏上
球面显示 该用例说明了系统应该能将平面界面变换至球面显示
语音识别 该用例说明系统应该能识别用户语音命令
展示世界地图 该用例说明系统应该能够展示世界地图
区域地形展示 该用例说明系统应该能够根据用户的输入提取区域地形数据并展示在沙盘上
展现沙盘地形 该用例说明系统应该能根据地形数据控制沙盘机械装置以及投影渲染地形地貌
沙盘交互 该用例说明用户可以通过激光笔选择沙盘的某个位置,系统应该传递信息给平面显示屏显示相应数据。


3.1.2 详细信息

icon-small.png手势和激光笔识别
基本流
1. 读取摄像头图像
2. 对图像进行预处理,去除干扰,留下用户动作产生的亮点
3. 分析亮点坐标,并转换到相应场景坐标系中
4. 将新坐标存在共享变量中
5. 间隔10毫秒,返回步骤1
备选流
1.a. 读取失败
  1. 显示错误信息,结束程序
4.a. 检测发现坐标形成预定轨迹
  1. 发送相应命令至命令队列

icon-small.png根据数据展示特定类型地图
基本流
1. 用户选择特定地图类型
2. 地球仪读取预存数据,动态生成图像
3. icon-exsmall.png球面显示
4. 地球仪发送命令给信息展板
5. icon-exsmall.png平面展示详细信息
备选流
2.a. 数据读取失败
  1. 地球仪显示错误信息,返回前一状态
4.a. 发送失败
  1. 地球仪显示错误信息,用例结束

icon-small.png平面展示详细信息
基本流
1. 信息展板获取命令并分析
2. 信息展板根据命令读取相关数据及界面布局
3. 信息展板渲染并显示
备选流
1.a. 无效命令
  1. 信息展板显示错误信息,用例结束
2.a. 数据或界面布局读取失败
  1. 信息展板显示错误信息,返回上一状态,用例结束

icon-small.png球面显示
基本流
1. 系统得到要显示的图像
2. 系统对图像进行球面变形
3. 系统渲染并显示

icon-small.png语音识别
基本流
1. 用户发出语音信息
2. 系统从音频输入中获得声音信息
3. 系统分析信息是否符合预定结构
4. 系统根据分析结果产生相应命令指令发送到命令队列中
5. 返回到步骤1
备选流
2.a. 获取失败
  1. 显示错误信息,程序结束
3.a. 未能匹配任何结构
  1. 直接返回到步骤1

icon-small.png展示世界地图
基本流
1. 用户选择查看地图类别
2. 系统根据选择的类别读取相应的预制地图
3. icon-exsmall.png球面显示
备选流
2.a. 读取失败
  1. 系统显示错误信息,返回前一状态

icon-small.png区域地形展示
基本流
1. 用户在地球仪上选择地点并选择查看地形
2. 地球仪发送命令给沙盘
3. 沙盘读取命令并分析
4. 沙盘读取相关地形数据
5. icon-exsmall.png展现沙盘地形
6. 沙盘发送命令给信息展板
7. icon-exsmall.png平面展示详细信息
备选流
2.a. 发送失败
  1. 地球仪显示错误信息,用例结束
3.a. 命令无效
  1. 沙盘显示错误信息,用例结束
4.a. 数据读取失败
  1. 沙盘显示错误信息,返回上一状态,用例结束
6.a. 发送失败
  1. 沙盘显示错误信息,用例结束

icon-small.png展现沙盘地形
基本流
1. 沙盘根据地形数据操作机械装置
2. 沙盘渲染地形及其他元素并显示
备选流
1.a. 操作机械装置发生错误
  1. 系统显示错误信息,用例结束

icon-small.png沙盘交互
基本流
1. 用户选择沙盘上的某一地点
2. 沙盘发送命令给信息展板
3. icon-exsmall.png平面展示详细信息
备选流
2.a. 发送失败
  1. 显示错误信息,用例结束

3.2 可用性

本产品应该具有出色的用户界面,交互应该精准灵敏,信息组织应该清晰合理而引人注目。

3.3 可靠性

更详细可靠性需求将在后面迭代中予以确定。

3.3.1 平均故障间隔时间 (MTBF)

1周

3.3.2 平均修复时间 (MTTR)

12小时

3.4 性能

待定。

3.5 可支持性

暂无

3.6 设计约束

3.6.1 开发语言约束

由于本产品是基于现有产品“基于投影仪实现地球仪模型的演示”进行开发,故开发语言应当选用C++。

3.6.2 开发周期约束

本项目需要在9月6日前完成验收交付。

3.7 接口

3.7.1 用户界面

普通视窗

3.7.2 硬件接口

投影设备、声音输入和输出设备和摄像头。

3.7.3 软件接口

暂无

3.7.4 通信接口

基于TCP/IP协议

3.8 适用的标准

暂无

Last edited Jul 16, 2010 at 4:01 AM by dengnianchen, version 4

Comments

No comments yet.