电子邮件系统系统需求分析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
需求分析要求详细、准确地搞清楚系统必须“作什么”,是关系到软件开发成败的关键阶段。一般说来,需求分析有8个目标:
A0:决定是否建立一个系统;
A1:理解最终的软件系统应该解决哪些问题;
A2:引出这些问题和系统的一些相关问题;
A3:提供一个与这些问题和系统特征有关的回答问题的基础;
A4:决定系统应该做什么;
A5:决定系统不应该做什么;
A6:确认系统将能够满足用户的需要,并且定义相应的验收标准;
A7:提供一个为系统进行开发的基础。
需求分析的这些目标可由3个子阶段完成:可行性分析主要是完成A0目标,即要决定是否完成一个系统;需求收集主要完成目标A1~A6;目标A7则由需求规格说明完成。
以下是一个需求分析的规格说明,希望同学们看看别人是如何写需求分析规格说明书的。这只是给大家的一个参考,不一定完全按照它的规格来写,只是希望同学们能够表述清楚你们要做的系统,以及该系统完成一些什么功能。
林英
系统规格说明
一、系统功能和目标:
随着因特网的不断普及,国内的用户数呈指数级增长。作为因特网最为常用的电子邮件系统越来越受到人们的喜爱,为了满足不断增长的信息交换的需要,各行各业都希望有自己的邮件系统。广东传讯网络信息有限公司自主设计开发了适合中国国情的免费电子邮件系统,用以解决这一日益突出的问题。CHINATION免费电子邮件系统是专为免费电子邮件服务商、企业集团设计的电子邮件系统。
Chination免费电子邮件系统的设计目标是立足于一个高度集成的、功能强大、技术先进的电子邮件系统。高度集成意味着本系统将把硬盘软件集成在一起。系统是基于LINUX下的,硬盘和软件的集成使得系统具有绝对的安装优势。功能强大意味着系统的实用性,功能的全面性,系统的安全性和可靠性。技术先进意味着将最新版本的LDAP,IMAP,POSTFIX,MYSQL,APACHE和PHP的巧妙结合。
本系统要实现的主要功能有:
1.用户申请注册功能:用户通过申请可以得到一个自己命名的信箱,容量大小为10M。
2.用户忘记密码处理功能:用户忘记密码可以通过注册时设置的密码提示问题来重设密码。
3.用户收邮件功能:它包括SMTP收邮件、POP3取邮件和WWW读邮件三种方式。
4.用户发邮件功能:它包括SMTP发邮件、WWW直接发送邮件、暗送邮件、抄送邮件、定时发送邮件。
5.用户信件处理功能:系统初始设置4个文件夹来分类处理信件:收件箱、发件箱、草稿箱和垃圾箱。用户还可以自己建立新的文件夹。信件在各个信箱之间可以相互移动。
6.用户查找功能:用户可以使用查找功能通过查找信件主题或信件内容来找到自己需要的信件。
7.用户信箱配置设置:它包括个人资料更改、密码更改、参数设置、POP3服务器设置、过滤器设置、自动转信、定时发信、签名设置。
8.管理员管理用户和信箱邮件功能:包括输入(增删改)、查询、统计、报表。系统性能参数设置。
9.广播功能:它用于公司定期向一定的用户发送信息,由于一般的用户数有一定数量,所以必须用数据库管。
二、可行性分析
1.技术可行性
本软件拟决定最终在分布式系统上来运行。硬件方面,由于广东传讯网络信息有限公司是国外多
家公司并行处理产品的代理商,而且自己本身拥有ALPHA机等先进设备,所以有足够能力开发出先进的电子邮件系统。软件方面,我们拟采用以下几种软件:
1)操作系统用LINUX。Linux作为一个优秀的网络操作系统,它的发行版本中集成了大量的网络应用软件,如Web服务器(apache)、Ftp服务器(wu-ftp)、邮件服务器(sendmail+imap4)、SQL数据库(postgresql)等,可以快速的构建Intranet环境,并且也有精致的邮件收发程序(metamail)和强大的Web服务器端开发工具(PHP4)。当你配置好sendmail并激活imapd后,你的Linux用户都可以使用Outlook等客户端软件进行邮件收发,只要通过将它们集中进行应用,便可以实现一个简单的Webmail服务器的功能。但是随着自由软件的不断开发,要构架一个好的电子邮件系统,就面临着软件选择是否适当、性能是否比别人好的问题。下面列出我们所使用的软件。
2)本系统内壳软件用imap。有几种方法可以构造电子邮件系统的内壳:共享文件系统的策略,基于局域网的专用协议,X.400P7协议和因特网消息存取协议。而基于INTERNET的协议主要有:POP (Post Office Protocol), DMSP (Distributed Mail System Protocol), 和IMAP (Internet Message Access Protocol).POP是最原始,最为人们所知的一种。DMSP仅局限于一个简单应用——PCMAIL,它的优点主要在于对脱机状态操作的支持。IMAP不但继承了POP和DMSP的优点,而且超越了他们的缺点,提供了三种状态下对远程信箱的访问:在线、不连接和脱机状态。在脱机状态,邮件可以发送到一个共享的服务器,但是邮件客户并不是马上全部把它们COPY过去之后在服务器上删掉它们,而是处于一种客户——服务器交互的模式,客户可以询问服务器有关的信头、正文或一些状态标志(如“DELETE”,“ANSWER”等)。IMAP可以以本地的方式操作远程信箱。
IMAP的优点主要在于:它可以操作持续的消息状态标志;它可以存取消息而且随时访问它们;它可以访问和管理多个信箱;它支持对共享信箱的并发访问和修改;适合存取非EMAIL数据,如网络杂志和资料;它能以最短连接时间和最小空间开销来使用脱机范式;它有用来管理用户配置的伴随协议;它允许在线性能优化,特别是在低速连接的情况下。
3)用OPENLDAP作为目录服务器软件。LDAP(Lightweight Directory Acess Protocol)是目录服务在TCP/IP上的实现(RFC 1777 V2版和RFC 2251 V3版)。它是对X500的目录协议的移植,但是简化了实现方法,所以称为轻量级的目录服务。在LDAP中目录是按照树型结构组织,目录由条目(Entry)组成,条目相当于关系数据库中表的记录;条目是具有区别名DN(Distinguished Name)的属性(Attribute)集合,DN相当于关系数据库表中的关键字(Primary Key);属性由类型(Type)和多个值(Values)组成,相当于关系数据库中的域(Field)由域名和数据类型组成,只是为了方便检索的需要,LDAP中的Type可以有多个Value,而不是关系数据库中为降低数据的冗余性要求实现的各个域必须是不相关的。LDAP中条目的组织一般按照地理位置和组织关系进行组织,非常的直观。LDAP把数据存放在文件中,为提高效率可以使用基于索引的文件数据库,而不是关系数据库。LDAP协议集还规定了DN的命名方法、存取控制方法、搜索格式、复制方法、URL格式、开发接口等。Linux支持的LDAP服务器一般有Michigan大学开发的免费软件包和Openldap组织基于Michigan大学的开发包提供的Openldap免费软件发行包,其中Openldap发行包安装配置更加简单。
4)WEB服务器端用APACHE+PHP4+MYSQL。自由软件开放原代码的好处就不用多说了
5)系统软件用POSTFIX。由于电子邮件是一种非常传统的工具,因此有非常多的软件可以用来达到这个目的,这里面包括从古老的uucp邮件到非常庞大的商业群件系统,如Lotus Domino