2.1.3系统结构流程图
系统结构由主界面系统结构和数据库系统界面结构两部分组成。系统结构的设计流程如下图2.1所示:
图2.1系统结构流程图
主界面系统结构图如图2.2所示,数据库系统界面结构如图2.3所示。
图2.2主界面系统结构图
图2.3 数据库系统界面结构图
2.2系统设计
系统的整体架构就如图2.2所示,其中需要说明的是:各个模块之间的消息流动非常重要,以语音控制主播放界面为中心,其他各个模块均围绕它所展开。各个模块都能够独立工作,如注册模块能够自动去数据库添加用户记录,登录模块能够读取用户输入信息并且能够自动去数据库查询核对是否有注册。主播放模块能够很好地实现播放的各个功能,录音模块也能够很好地实现其功能,网络连接模块也能实现网络的访问。这就可以很好的运用面向对象的编程思想来解决问题。数据库管理模块之所以与主模块分开是因为不是所有用户都需要对数据库进行管理,数据库管理模块主要是给管理员用的,能够有效的对数据库进行管理,行之有效。这样设计的综合系统就完全实现的在摘要中所提出的设计需求。设计之初就考虑到MFC这个应用程序框架的可靠性和易于扩展性。其消息机制的设计也是独到好处,为我在设计特殊处理程序时带来的巨大的方便。这种可扩展性的便利也体现出来:以后随着软件功能的增加随时都可以将模块代码加进去而不影响其他部分功能的实现,这边是可扩展性框架在实际项目中的使用。
2.3数据库设计
对于一个以数据为中心的应用,数据库的好坏直接影响到程序的性能,因此数据库性能至关重要。一般来说,要保证数据库的效率,要做好以下四个方面的工作:
① 数据库设计
② sql语句优化
③ 数据库参数配置
④ 恰当的硬件资源和操作系统
这个顺序也表现了这四个工作对性能影响的大小 。考虑到此原因,就选择了MySql数据库,它是免费的并且使用还很广泛,操作简单方便,所占内存小等各优点。
通俗地理解三个范式,对于数据库设计大有好处。在数据库设计中,为了更好地应用三个范式,就必须通俗地理解三个范式(通俗地理解是够用的理解,并不是最科学最准确的理解):
第一范式:1NF是对属性的原子性约束,要求属性(列)具有原子性,不可再分解;(只要是关系型数据库都满足1NF)
第二范式:2NF是对记录的惟一性约束,要求记录有惟一标识,即实体的惟一性;
第三范式:3NF是对字段冗余性的约束,它要求字段没有冗余。 没有冗余的数据库设计可以做到。
但是,没有冗余的数据库未必是最好的数据库,有时为了提高运行效率,就必须降低范式标准,适当保留冗余数据。具体做法是: 在概念数据模型设计时遵守第三范式,降低范式标准的工作放到物理数据模型设计时考虑。降低范式就是增加字段,允许冗余。
数据库在使用之前所谓安装数据库服务器,只是在机器上装了一个数据库管理程序,这个管理程序可以管理多个数据库,一般开发人员会针对每一个应用创建一个数据库。 网络终端语音控制系统设计(3):http://www.youerw.com/tongxin/lunwen_21193.html