软件需求说明书(有示例)

软件需求说明书(有示例)

青岛大学

Windows语音助手

软件需求说明书

目录

一.引言 5

1.1 编写目的 5

1.2 项目背景 5

1.3 定义 5

1.4 参考资料 7

二.任务概述 8

2.1语音识别技术的起源与发展前景 8

2.1.1语音识别技术简介 8

2.1.2语音识别技术的应用 9

2.1.3语音识别技术的发展 10

2.2 功能简介(目标) 11

2.3用户的特点 11

2.4运行环境 11

2.4.1硬件环境 11

2.4.2软件环境 12

2.5 条件与限制 12

2.6假设与依赖 12

三.大赛项目要求(功能需求) 12

3.1功能需求介绍 12

3.2功能需求实例图 13

3.2功能需求流程图 14

3.2功能一 ——语音识别与输入 15

3.2.1功能说明 15

3.2.2功能描述 15

3.3功能二——屏幕取词 15

3.3.1功能说明 15

3.3.2功能描述 15

3.4功能三——语音控制 15

3.4.1功能说明 15

3.4.2功能描述 16

3.5功能四——语音精灵 16

3.5.1功能说明 16

3.5.2功能描述 16

3.6功能五——语音朗读(TTS) 16

3.6.1功能说明 16

3.6.2功能描述 16

四.运行要求 17

4.1用户界面 17

4.2硬件接口 17

4.3软件接口 17

4.4通信接口(无) 18

 

一.引言

1.1 编写目的

该文档对所开发的Windows语音助手达到功能、性能、用户界面及运行环境等作出了详细的说明。他作为对该系统概要设计的依据,帮助开发人员了解本系统的框架思想及实现功能,并验证核实该产品能否满足用户要求的标准,便于技术文档和需求变化的管理。同时也是用户与开发人员双方对软件需求取得共同理解的基础。

预期读者:大赛评委、项目投资商、产品用户、开发人员,指导老师。

1.2 项目背景

? 系统名称:Windows语音助手

? 任务提出者:

? 开发者:青岛大学First Dream Team团队。

? 面向用户:

1、 希望能够借助语音系统更加快捷、方便的操作电脑的用户。

2、 无法很好利用鼠标或键盘对电脑进行操作的残障人士用户。

? 特此声明:此软件的开发作为后期商业项目的原型,均采用授权开发工具,产品拥有自主知识产权,未经允许不得随意传播或使用。

1.3 定义

? SDK:SDK 就是 Software Development Kit 的缩写,中文意思就是 “软件开发工具包”。这是一个覆盖面相当广泛的名词,可以这么说:辅助开发某一类软件的相关文档、范例和工具的集合都可以叫做“SDK”。

? TTS

全称为:TextToSpeech即文本合成语音,此为SAPI的基本类型之一,TTS可以将文本中的字符或文档合成为语音并“说”出来。

? SR

全拼:Speech Recognise即语音识别,此也为SAPI的基本类型之二,SR则可以把人说话的语音转换为易读的字符或文档。

? SAPI

SAPI又称语音应用程序编程接口,它减少了语音识别和语音合成应用中的程序代码,使得语音技术在广泛和蓬勃发展的实际应用中更容易使用。SAPI使得应用程序和语音引擎之间高度紧密的结合。SAPI可以实时处理各种语音引擎在底层工作中的细节。

SAPI包括文本合成语音应用程序接口,语音识别应用程序接口。

SAPI的两种基本类型是文本合成语音(TTS)引擎和语音识别 (SR)引擎。

? WindowsAPI(Win32API)

 Windows API是一套用来控制Windows的各个部件(从桌面的外观到为一个新进程分配的内存)的外观和行为的一套预先定义的Windows函数.用户的每个动作都会引发一个或几个函数的运行以告诉Windows发生了什么.

  API函数包含在Windows系统目录下的动态连接库文件中(如User32.dll,GDI32.dll,Shell32.dll...).

  

1.4 参考资料

1.大赛题目设置《Windows语音助手》的相关具体要求。

2.参考书籍:

? 《语音识别与控制应用技术》

  作者: 刘幺和,宋庭新编著

  出 版 社: 科学出版社

   出版时间: 2008-2-1

? 《新编API大全》2009版

? Microsoft MSDN

? Microsoft Speech SDK 5.1 Help

? 《C#开发技巧大全》 中国水利出版社

? 《C#数据安全手册》 人民邮电出版社

? 《C#高级编程》-清华大学出版社

? 《国家标准软件产品需求规格说明书》

? 《国家标准可行性分析报告》

? 《软件工程》

作 者: 曾建潮

I S B N: 7562919542

出 版 社: 武汉工大

出版日期: 2004-5-1

? 《软件工程与软件文档写作 》

作者: 文斌,刘长青,田原 编著

ISBN: 9787810825702 , 7810825704

出版社: 清华大学出版社

出版日期: 2005-8-1

? 《软件需求工程》

作 者 黄国兴 周勇

出 版 社 清华大学出版社

书 号 302-16860-7

出版时间 2008年4月 字数 千字

二.任务概述

项目最终采用最新微软.NET技术,并结合微软最新语音识别引擎,通过语音输入达到对计算机的基本控制。本项目在Visual Studio 2008 集成开发环境下开发,基于.NET及Speech语音引擎平台。给客户带来方便快捷的全新体验。

2.1语音识别技术的起源与发展前景

2.1.1语音识别技术简介

智能翻译机、语音拨号、语音查询、语音自动定票系统、语音工业控制等等,可以想见,凡用计算机的地方都会有语音识别。在计算机辅助教育方面,计算机就成为专业的家庭辅导教师;在幼儿进行启蒙教育的玩具中,语音识别也将倍受欢迎。

电脑语音合成技术即CTI(Computer Telephone Integration),是用计算机技术处理电话语音。通常是建一个信息呼叫中心,用户打来电话时计算机会自动地一层层地转给相关部门,一直到为用户解决问题为止。有的语音信箱可以支持不同语种。CTI并非新技术。与网络电话把数据压缩打包进行传输有所不同,CTI到底还是一种语音模拟传输技术,只不过用上了计算机对语音进行智能管理而已。发达国家早几年就普及了这项应用,“是个机构就有呼叫中心”,以保证客户或合作伙伴打来的每一个电话都有回应。中国却还没有走到这一步,目前除了电信部门普遍开通了“呼叫中心”服务之外,大多数企业还刚刚起步。这个差距反映了管理和竞争意识方面的问题。

中文语音浏览器产品“Interversa”使我们能够用“嘴”遨游互联网实现了“所说即所得”。Interversa已针对PentiumⅢ的SSE指令集进行了优化,并将在PentiumⅢ上实现最好的性能和识别率。

常见的语音识别系统还有“命令和控制(Command&Control)”(是连续的,拥有小词汇量和独立扬声器)、“语音导航”、微软的“不连续听写(Discrete Dictation)”(是不连续、大词汇量和非独立扬声器的),IBM的ViaVoice则属于连续听写。

 语音识别技术就是让机器通过识别和理解过程把语音信号转变为相应的文本或命令的高技术,也就是让机器听懂人类的语音。也就是说,如果电脑配置有“语音辨识”的程序组,那么当你的声音通过一个转换装置输入电脑内部、并以数位方式储存后,语音辨识程序便开始以你输入的声音样本与事先储存好的声音样本进行对比工作。声音对比工作完成之后,电脑就会输入一个它认为最“象”的声音样本序号,就可以知道你刚才念的声音是什么意义,进而执行此命令。说起来简单,但要真正建立辨识率高的语音辨识程序组,却是非常困难而专业的,世界各地的学者们也还在努力研究最好的方式。专家学者们研究出许多破解这个问题的方法,如傅立叶转换、倒频谱参数等,使目前的语音辨识系统已达到一个可接受的程度,并且辨识度愈来愈高。

本项目是一个基于语音识别的一个智能化服务产品,是面向服务设计的成功案例之一。

2.1.2语音识别技术的应用

  语音识别技术的应用主要有以下两个方面。一是用于人机交流。目前这方面应用的呼声很高,因为使用键盘、鼠标与电子计算机进行交流的这种方式,使许多非专业人员,特别是不懂英语或不熟悉汉语拼音的人被拒之于门外,影响到电子计算机的进一步普及。语音识别技术的采用,改变了人与计算机的互动模式,人们只需动动口,就能打开或关闭程序,改变工作界面。这种使电脑人性化的结果是使人的双手得到解放,使每个人都能操作和应用计算机。电话仍是目前使用最为普遍的通信工具,通过电话与语音识别系统的协同工作,可以实现语音拨号、电话购物以及通过电话办理银行业务、炒股、上网检索信息或处理电子件等。不久,能按主人口令接通电话、打开收音机,以及通过声纹识别来者身份的安全系统也将获得应用。

  语音识别技术的另一方面应用便是语音输入和合成语音输出。现在,已经出现能将口述的文稿输入计算机并按指定格式编排的语音软件,它比通过键盘输入在速度上要提高2~4倍。装有语音软件的电脑还能通过语音合成把计算机里的文件用各种语言“读”出来,这将大大推进远程通信和网络电话的发展。

在现阶段,语音技术主要用于电子商务、客户服务和教育培训等领域,它对于节省人力、时间,提高工作效率将起到明显的作用。能实现自动翻译的语音识别系统目前也正在研究、完善之中。

2.1.3语音识别技术的发展

语音识别技术是2000年至2010年间信息技术领域十大重要的科技发展技术之一。它是一门交叉学科,正逐步成为信息技术中人机接口的关键技术。语音识别技术与语音合成技术结合使人们能够甩掉键盘,通过语音命令进行操作。语音技术的应用已经成为一个具有竞争性的新兴高技术产业。

与机器进行语音交流,让机器明白你说什么,这是人们长期以来梦寐以求的事情。语音识别技术就是让机器通过识别和理解过程把语音信号转变为相应的文本或命令的高技术。语音识别是一门交叉学科。近二十年来,语音识别技术取得显著进步,开始从实验室走向市场。人们预计,未来10年内,语音识别技术将进入工业、家电、通信、汽车电子、医疗、家庭服务、消费电子产品等各个领域。

语音识别听写机在一些领域的应用被美国新闻界评为1997年计算机发展十件大事之一。很多专家都认为语音识别技术是2000年至2010年间信息技术领域十大重要的科技发展技术之一。

语音识别产品将是继电话、计算机、Internet之后信息产业界的又一次革命。

如果我们能够突破人机交互的瓶颈,就能使任何人都可以对计算机“发号施令”,口授文章,甚至“亲切交谈”,真正全面地实现“君子动口不动手”的人机交互方式。

正是这充满潜力的市场前景使世界上一些知名公司无不看重“语音识别”这块正待开发的市场,IBM、Dragon、Intel、Microsoft、Philips、Motorola、Apple、National、Nortel等大公司都设有专门的语音识别技术研发部或子公司,每年投入的研究经费达数千万美元。Intel公司推出的PentiumⅢ为语音产品的实时化提供了进一步的保证。反过来,语音产品的发展也将为半导体工业提供新的契机。

在国际市场上,由于中国的国际地位与日俱增以及在经济和市场方面所处的重要地位,汉语语音识别越来越受到重视;各大公司都相继投入到汉语语音识别系统的开发中,其投资也在逐年增加。

日渐火爆的语音市场再一次给我们带来了机遇和挑战;不断涌现和日新月异的新产品将证明,语音识别产品是继电话、计算机、Internet之后,信息产业界的又一次革命。

2.2 功能简介(目标)

本系统的主要功能是实现用户通过语音来进行对系统的操作以及完成对系统资源的控制与使用,使我们能够用“嘴”遨游互联网实现了“所说即所得”。讲的通俗一点,就是用户“说话”来操纵电脑,省去使用鼠标,键盘的麻烦了。

此外,还可以帮助用户“读”文本,实现文本到语音的转换,同样免去用户长期用眼看资料的劳顿。

本产品实现了人机交互的功能,就能使任何人都可以对计算机“发号施令”,口授文章,甚至“亲切交谈”,真正全面地实现“君子动口不动手”的人机交互方式。

为用户操作windows系统提供一种更智能,更人性化的操作方式,通过语音来完成windows基本操作,使用户有一种亲切的感觉。

为用户操作系统带来一种耳目一新,方便、快捷的感受,语音的控制使用户办公及基本操作达到事半功备的效果。

更加新颖的操作界面(语音精灵的加入)能使用户在操作过程中达到一种娱乐的效果。

2.3用户的特点

该语音系统既可使深入了解windows基本操作的用户操作起来更加快捷、方便,也可对初步有windows操作知识的用户进一步学习电脑知识有辅助效果,使其学得更快。总体来讲本系统适用的用户范围较广,只要具备一点电脑知识的用户都可以顺利的应用本系统。

2.4运行环境

2.4.1硬件环境

CPU:2.2GHZ或更快;

内存:512MB或更大的内存;

硬盘:7200RPM或更快的硬盘;

其他外设:麦克风等音频输入设备,耳麦等音频输出设备;

2.4.2软件环境

(一)操作系统:

Microsoft Windows XP

Microsoft Windows Server 2003 Service Pack 2

Microsoft Windows Server 2008

(二)运行环境

1. .NET FrameWork 3.5或更高版本。

2.正确安装微软SDK语音引擎包及微软SDK语音引擎中日语言包。

2.5 条件与限制

由于本系统为语音识别系统,程序运行时需要接收并分析判断来自终端输入的语音音频,所以程序运行时对周围环境的嘈杂程度要求很高,要求周围环境噪音越小越好,最好是在一个安静的环境里;其次,在使用我们的产品之前,最好是做一个语音训练,以便让计算机更熟悉用户的声音,方便用户的操作,让用户使用的更舒心,我们更放心;再次,也要求用户所使用的音频输入设备(麦克风)的质量要好,也就是要保证语音识别率高。

2.6假设与依赖

本项目基于.NET并依赖于微软最新语音识别引擎、Speech API5.1(语音编程接口)。

三.大赛项目要求(功能需求)

3.1功能需求介绍

利用现有语音引擎或独立底层开发基于语音识别技术的Windows操作助手,助手能够协助用户在任何可以输入文字的地方根据用户语音命令输入文字,也可以帮助用户使用语音进行Windows的常规操作,如启动某某软件,关闭当前窗口,关闭Windows,点击特定按钮或选择指定的菜单项,激活某个正在运行的软件窗口(即使得该软件窗口获得焦点),拷贝屏幕区域,上翻或下翻当前正在浏览的网页或阅读的文章,删除文件,清空文件垃圾桶等。助手在协助用户进行各种操作时要在屏幕上明显体现出该操作是助手帮助完成的,以区别于用户通过鼠标或键盘进行的其他操作。要保证在不需要助手的时候,它会安静的呆在一边,不能影响用户的正常操作。赛题中涉及的主要技术难点有两个,语音识别及屏幕取词,本产品都已经突破。

此语音系统的主要功能是通过语音输入、识别来实现最终的语音控制,其中语音识别子系统中又有语音训练向导、麦克风设置向导、自定义词库、发音灵敏度设置等设置功能;此外,文本朗读,语音精灵是本系统的辅助功能;对本系统的功能介绍我们将在功能概要设计说明及细节说明中给出详细的说明,下面通过一个形象的实例介绍系系统所提供的服务。

3.2功能需求实例图

3.2功能需求流程图

3.2功能一 ——语音识别与输入

3.2.1功能说明

此功能应该是本系统实现主功能的基础重要功能,优先级高。

3.2.2功能描述

要求系统能够准确识别用户通过终端输入的语音,在任何可以输入文字的地方根据用户语音命令输入文字,并也可以帮助用户使用语音进行Windows的常规操作(涉及语音控制)。语音识别是大赛要求中提到的技术难点之一。

用户对着麦克风说话,实现和计算机的互动,实际上是我们的产品接受了用户说的内容,然后把声音转换为文字,在命令模式下,实现了用户说什么计算机则会根据用户所说的命令执行相应的操作。当用户的命令计算机不存在或用户说的不准确时,我们的精灵则会提醒用户没有该命令,或说的命令不准确提醒用户请再说一遍。在输入模式下,实现了完全取代键盘和鼠标的操作,使用户不用再利用鼠标和键盘向计算机传输输入的信息文字,在此模式下,用户说什么,计算机就会“写”什么。同时,输入模式和命令模式可以相互转换。

3.3功能二——屏幕取词

3.3.1功能说明

屏幕取词功能同样是实现主控制功能的重要基础功能,是实现语音识别的重要基石之一。其优先级别也较高。

3.3.2功能描述

通过此功能能够取得桌面,系统窗体,以及任务栏、选项卡、标签等其内部的任何文本,在命令模式下,根据用户说出的命令,在打开的窗体中进行“查找”和“匹配”,在模糊匹配的协助下,找到用户说出的命令然后执行相应的操作。此功能在描述上简单,但是实现上将是一个难点,屏幕取词同样也是大赛要求中提到的技术难点之二。

3.4功能三——语音控制

3.4.1功能说明

语音控制功能是本系统的主功能及核心功能,语音控制计算机的各个内部操作。其优先级别最高。

3.4.2功能描述

在语音识别,屏幕取词的基础上实现的语音控制最终达到协助用户在任何可以输入文字的地方根据用户语音命令输入文字,并也可以帮助用户使用语音进行Windows的常规操作,如启动某某软件,关闭当前窗口,关闭Windows,点击特定按钮或选择指定的菜单项,激活某个正在运行的软件窗口(即使得该软件窗口获得焦点),拷贝屏幕区域,上翻或下翻当前正在浏览的网页或阅读的文章,删除文件,清空文件垃圾桶等等基础操作。同时,基于屏幕取词和模糊匹配的协助下,语音控制实现了更深一层的突破,使用户想要计算机执行什么操作,只要对我们的产品下命令,应用程序就会“告诉”计算机用户想干什么,计算机就会执行相应的操作,达到用户的需求。该产品就是“用户“和“计算机”沟通的桥梁,方便他们之间的交流。真正实现了“君子动口不动手”。

3.5功能四——语音精灵

3.5.1功能说明

此功能是本系统的辅助功能之一,为我们的产品添加生趣和色彩。优先级别中等。

3.5.2功能描述

语音小精灵主要提高本系统使用的趣味性,增加了人机互动,同时语音小助手实时报时,错误提示等功能提高了实用价值。使用户在使用我们的产品时能用的满意,用的舒心,我们放心。

3.6功能五——语音朗读(TTS)

3.6.1功能说明

此功能是本系统的辅助功能之二,优先级别中等。

3.6.2功能描述

将文本变成语音进行朗读, 能用不同的语音来朗读文本。可以朗读中文或英文的(.txt)文本。在进行语音朗读前或朗读时您可以随时设置【音量大小】和【语音速度】,以保证文本输出的语音音律流畅,使得您在听取信息时感觉自然。此外,本软件还可以将所朗读的文本保存为音频文件(.wav)。

语音朗读将会帮助用户朗读文本文件内容,利用的是微软SAPI的语音合成技术及语音引擎将文本转化成语音并输出。在此功能中,您可以选择“男”或“女“来读您载入的文本,也可选择“中文”或“英文”来朗读。

此功能从技术上来说,我们是调用系统中存在的各种语音引擎进行朗读,根本是调用com对象(全反射、没有引用com ocx),并且使用引擎保存声音。

四.运行要求

4.1用户界面

用户界面简介、实用,助手形象要有趣、大方、可爱。能够博得用户喜爱,让用户用的满意舒心,我们也放心。

4.2硬件接口

1.接口名称:音频输入接口

规格说明:用户计算机音频输入插口。

2.接口名称:音频输出接口

规格说明:用户计算机的音频输出接口。

4.3软件接口

4.3.1SAPI(语音接口)

接口名称:SAPI(语音接口)

规格说明:文本合成语音应用程序接口,语音识别应用程序接口

版本号:5.1版

4.3.2API

接口名称:win32API(系统编程接口)

规格说明:提供底层系统编程方案。

版本号: 待定。

4.4通信接口(无)

相关推荐