邮件过滤系统 1、引言
1.1 编写目的
“邮件过滤系统”软件需求说明说主要用于为软件开发提供需求说明,在需求说明说中详细介绍本系统要达到什么样的要求以及基于什么样的硬件设备和软件平台来实现本软件系统的。编写这份软件需求说明书的主要读者是本系统软件的开发人员,提供一些必要的参考给后续开发人员,从而让软件实现后能充分满足客户或用户的需求。
1.2项目背景
a、待开发软件名称:邮件过滤系统 b、本项目的任务提出者:高东发老师
c、项目开发者:林子豪、梁晓明、崔建鹏、吴清、张珊珊 d、本软件面向的用户:需要收发邮件的所有网民
1.3定义
电子邮件:Electric Mail 垃圾邮件:Junk Mail
贝叶斯算法:一类利用概率统计知识进行分类的算法 最小风险贝叶斯: 简单贝叶斯:
1.4参考资料
2、任务概述
2.1目标
针对目前电子邮件发展与垃圾邮件泛滥的情况,对垃圾邮件盛行的本质原因进行深入总结的基础上,本软件不仅完善收发邮件功能,而且能把收发的垃圾邮件进行过滤。我们志在对垃圾邮件的过滤准确率达到90%左右。本软件能给用户提供一个安全、干净的网络环境,
节约用户时间、让用户不收垃圾邮件的干扰。
本软件操作简单,和windows窗口操作界面类似,更加人性化,为广大用户提供良好的使用环境。当用户默认一类邮件作为垃圾邮件的时候,本软件产生记忆功能,以后都能为用户处理用户要求处理的邮件。用户也可以手动解除垃圾邮件的处理,这样大大提高的个性用户个性化邮件处理的准确率。
2.2运行环境
硬件:连接互联网的PC端、鼠标、键盘等 软件:windows操作系统
2.3条件与
条件:每个开发人员都有计算机一台进行编程 高东发老师的定期指导 : 本软件开发周期期限为12周,分三个阶段完成,分别为需求分析期、软件设计期、
软件测试期。本学期期末大作业展示前务必做好。
无资金供给
3、数据描述
3.1静态数据 3.2动态数据 3.3数据库描述 3.4数据词典 3.5数据采集
4、功能需求
4.1功能划分
写信、收信、垃圾箱、设置
4.2功能描述
写信 收信 垃圾箱 设置 发邮件 接收邮件 对垃圾邮件进行过滤 设置特定的某个发件人为黑名单、设置某类特定网站等等作为黑名单
5 性能需求
5.1 数据精确度
该邮件过滤器应采用贝叶斯分类算法实现,过滤准确率在95%以上,即1000封垃圾邮
件可以过滤掉950封。
该邮件过滤器扫描一封邮件(无附件)的时间应在0.05s~0.08s。 该邮件过滤器应具有自我学习的功能,会根据新收到的邮件,不断调整。 要求邮件过滤器把6个月内所收到的垃圾邮件作为样本,提高过滤精确度。
5.2 时间特性
响应时间:邮件服务器可以在收到对方发送的邮件时延缓响应时间,该邮件过滤器需要
在延缓时间内马上响应,对邮件进行学习、分析、识别。 更新处理时间:0.001s 数据转换与传输时间:0.01s
运行时间:提取邮件关键字和分析邮件不得超过5s。
5.3 适应性
操作方式的变化:界面操作改变不会影响软件的正常运行 运行环境的变化:在所有Windows操作系统下都能正常运行 其他软件的接口的变化:在不同的Web服务器中都能正常运行
精度和有效时限的变化:尽管精确度和有效时限发生了变化,该软件都能正常运行 开发计划的变化:若增加新功能,不会影响到先前的功能模块
6. 运行需求
6.1 用户界面 6.1.1 屏幕格式
采用图形用户界面(GUI)标准 要求有菜单及工具栏以方便操作 界面应简洁友好,便于广大群众使用 每个按钮样式应统一,风格一致 大部分功能可直接通过鼠标点击完成 菜单避免使用英文
6.1.2 菜单格式
要求菜单格式大致与windows XP经典模式相同,可添加新的功能单项。
6.1.3 输入输出时间
年份以4位数字输出
6.2 硬件接口
支持一般功能的台式机或笔记本电脑
6.3 软件接口
Windows 操作系统 Web服务器 邮箱服务器 客户端访问服务器
6.4 通信接口
需要局域网的协议(如TCP/IP)
6.4 故障处理
软件故障处理:该软件用文本代替数据库,在开发阶段可以随时改动文本内容 硬件故障处理:考虑周全,一般不会发生硬件故障
7. 其他需求
7.1 可使用性
该软件界面简单,采用全中文界面操作,图文信息便于理解。只要是知道电脑的基本操作的用户都可以使用该系统,而且界面的每一页都会显示相关的提示信息,如果操作错误,系统也会进行提示。
7.2 安全保密性
为防止邮箱密码及其他信息被非法访问、使用、修改、破坏或者泄密,必须满足一下需求: 利用可靠的密码技术 给不同的模块分配不同的功能 限定一个程序中某些区域的通信 掌握特定的记录或历史数据集
7.3可维护性
代码规范,需遵守编程语言规范文档 命名规范,需遵守编程语言规范文档 维护方法,系统维护性良好,要求架构合理 维护开发工作所使用的工具
7.4 可移植性
选择软件接口条件符合,同时一切条件都满足的情况下,把软件从一种环境移植到另一种环境指需要将该系统软件和文本文件进行拷贝,然后将软件重新安装就可以,很容易操作。
7.5 稳定性
防止意外修改使得程序失效。