s
《信风-虚拟短信应用系统的设计与实现——设计文档》
目录
1 引言............................................................................................................................................. 1
2 需求分析..................................................................................................................................... 1
2.1 功能需求.......................................................................................................................... 1
2.2 运行环境.......................................................................................................................... 2
3 总体设计..................................................................................................................................... 3
3.1 设计目标.......................................................................................................................... 3
3.2 系统总体框架设计........................................................................................................... 3
4 详细设计..................................................................................................................................... 3
4.1 系统登录模块................................................................................................................... 5
4.2 电话本管理模块............................................................................................................... 7
4.3 短信收发模块................................................................................................................... 9
4.4 系统设置模块................................................................................................................. 23
5 相关数据结构描述.................................................................................................................... 27
5.1 线性链表........................................................................................................................ 27
5.2 模式匹配........................................................................................................................ 27
5.3 数组................................................................................................................................ 27
5.4 顺序表查找算法............................................................................................................. 28
5.5 冒泡排序算法................................................................................................................. 28
6 结语........................................................................................................................................... 28
7 软件使用................................................................................................................................... 29
第 0 页 共 31 页
《信风-虚拟短信应用系统的设计与实现——设计文档》
1 引言
短信(Short Message Service),简称 SMS,是用户通过手机或其他电信终
端直接发送或接收的文字或数字信息,用户每次能接收和发送短信的字符数是
160 个英文或数字字符,或者 70 个中文字符。此外,短信传递的方式——存储
转发,当用户无法接受时,短信不会丢失,暂时存放在短信中心,当用户重新
登录进网时,短信会迅速递交到用户手上,发送通道畅通且操作简便。这些与
生俱来的特点使得短信具备了传递准确可靠、迅速及时的优点,成为影响人们
习惯的基本条件。当初这项由电信运营商为解决手机话费过高而推出的低廉文
本信息服务,这个看似非常小孩玩意的一个通讯交流功能,竟会在多年后对人
们的经济文化生活,甚至对政治都产生了如此大的影响。
经过小组成员的分析和讨论,我们最终确定选择“信风”作为设计任务。一方
面,短信所具有的相关功能大家都非常熟悉,使参赛者对系统的需求分析能快
速入手,另一方面,软件能够在计算机上模拟短信的收发、过滤、聊天等;同
时,系统要求使用 Qt 4.8 进行开发,源于它是一个跨平台的 C++图形用户界面
应用程序框架,它能够提供给应用程序开发者建立艺术级的图形用户界面所需
的 所 有 功 能 ( 支 持 2D/3D , OpenGL ) , 此 外 它 还 有 面 向 对 象 、 丰 富 的
API、XML 支持等优势。该题目需要参赛者在短时间内尽快熟悉开发环境( Qt
4.8)及其相关技术(如 socket 通信,用 XML 格式对数据进行存储和处理等),
这对参赛者在短时间内的知识领悟和学习能力是一个考验;此外,考察还包括
代码编写、团队合作、软件测试、文档写作等。
本文档为系统设计文档,主要用于为实现信风-虚拟短信应用系统而进行的
详细分析设计,便于评审专家组合相关测试人员对整个系统的功能进行了解。
2 需求分析
本系统的设计原则须严格按照本次程序设计大赛的要求进行制定。题目要
求设计一个虚拟的短信应用,支持各种短信箱子、支持短信模拟收发、支持短
信过滤、支持短信聊天;内嵌简单的电话本功能,支持黑白名单。根据题目要
求,需要从以下几个方面来满足题意:
2.1 功能需求
信风需具备以下功能:
短信收发通过 socket 进行,按题目要求端口规定为 1573,报文格式为:
第 1 页 共 31 页
《信风-虚拟短信应用系统的设计与实现——设计文档》
<Sms>
<Number>发送者号码</Number>
<content>短信内容</content>
</Sms>
首先,需将号码和 IP 区分,两者不一样,当 PC1 用户对 PC2 进行发送短信
时,PC2 则根据报文中的号码确定发送者;应用需提供一个测试工具测试短信
的收发功能,测试工具和短信应用可以运行在同一台电脑上;程序之间直接通
信,不需通过服务器;
提供收件箱和垃圾箱功能,允许用户将短信在收件箱和垃圾箱之间移动;
应用支持垃圾短信过滤,进行关键字匹配,对某些特定的关键词能够感应
并将其放入垃圾箱;
应用需从 XML 文件进行短信导入,导入同时通过关键词对短信进行过滤;
数据需保存在 XML 文件中,包括:接收的短信、联系人信息、导入的短信;
过滤的关键字存放到 txt 文件中;
应用需提供简单电话本管理功能,至少记录用户姓名和号码两个信息,包
括对联系人的添加、删除、修改;
用户可根据需要对电话本的用户进行黑/白名单设置;
用户可在应用里设置个人信息,包括姓名、号码等信息;
用户可对短信过滤的关键字进行设置;
系统需要用到存储数据的文件有 4 个,各自作用如下表所示:
文件名 作用
Contact.xml
保存联系人信息
Messege.xml
保存接收到的短信
TestSms.xml
用户短信的导入测试
Key.txt
存放短信过滤的关键字
界面支持中文和英文切换显示。
2.2 运行环境
开发环境:QT 4.8
开发语言:C++
操作系统:Windows XP sp3
第 2 页 共 31 页
《信风-虚拟短信应用系统的设计与实现——设计文档》
3 总体设计
3.1 设计目标
从性能和规范上严格按照题目的要求,设计一个短信收发的信风系统,实
现对信息、电话本的统一管理和维护。
3.2 系统总体框架设计
由需求分析我们把整个系统可分为四大部分组成:系统登录模块、电话本
管理模块、短信收发模块和系统设置模块。图 1 为信风-虚拟短信应用系统总体
设计框架图。
图 1 信风-虚拟短信应用系统总体设计框架
4 详细设计
该部分内容我们将分别对各个模块进行说明。下面通过用例图来说明用户
使用系统时,系统所提供的服务。
第 3 页 共 31 页
- 1
- 2
前往页