《电子邮件系统系统需求分析版本》由会员分享,可在线阅读,更多相关《电子邮件系统系统需求分析版本(11页珍藏版)》请在金锄头文库上搜索。
1、需求分析要求详细、准确地搞清楚系统必须“作什么”,是关系到软 件开发成败的关键阶段。一般说来,需求分析有 8 个目标:AO :决定是否建立一个系统;A1:理解最终的软件系统应该解决哪些问题;A2: 引出这些问题和系统的一些相关问题;A3:提供一个与这些问题和系统特征有关的回答问题的基础;A4: 决定系统应该做什么;A5: 决定系统不应该做什么;A6:确认系统将能够满足用户的需要,并且定义相应的验收标准;A7:提供一个为系统进行开发的基础。需求分析的这些目标可由 3 个子阶段完成:可行性分析主要是完成 AO 目 标,即要决定是否完成一个系统;需求收集主要完成目标 A1A6;目标A7 则由需求规格
2、说明完成。以下是一个需求分析的规格说明, 希望同学们看看别人是如何写需求分析 规格说明书的。 这只是给大家的一个参考, 不一定完全按照它的规格来写, 只是希望同学们能够表述清楚你们要做的系统, 以及该系统完成一些什么 功能。林英系统规格说明一、系统功能和目标: 随着因特网的不断普及,国内的用户数呈指数级增长。作为因特网最为常用的电子邮件系统越来 越受到人们的喜爱,为了满足不断增长的信息交换的需要,各行各业都希望有自己的邮件系统。 广东传讯网络信息有限公司自主设计开发了适合中国国情的免费电子邮件系统,用以解决这一日 益突出的问题。 CHINATION 免费电子邮件系统是专为免费电子邮件服务商、企
3、业集团设计的电 子邮件系统。Chination 免费电子邮件系统的设计目标是立足于一个高度集成的、功能强大、技术先进的电子邮 件系统。 高度集成意味着本系统将把硬盘软件集成在一起。 系统是基于 LINUX 下的, 硬盘和软件 的集成使得系统具有绝对的安装优势。功能强大意味着系统的实用性,功能的全面性,系统的安 全性和可靠性。技术先进意味着将最新版本的LDAP , IMAP , POSTFIX ,MYSQL , APACHE 和PHP 的巧妙结合。本系统要实现的主要功能有:1 用户申请注册功能:用户通过申请可以得到一个自己命名的信箱,容量大小为10M 。2 用户忘记密码处理功能:用户忘记密码可以
4、通过注册时设置的密码提示问题来重设密码。3 用户收邮件功能:它包括 SMTP 收邮件、 POP3 取邮件和 WWW 读邮件三种方式。4 用户发邮件功能:它包括 SMTP 发邮件、 WWW 直接发送邮件、暗送邮件、抄送邮件、定时 发送邮件。5 用户信件处理功能:系统初始设置 4 个文件夹来分类处理信件:收件箱、发件箱、草稿箱和 垃圾箱。用户还可以自己建立新的文件夹。信件在各个信箱之间可以相互移动。6 用户查找功能: 用户可以使用查找功能通过查找信件主题或信件内容来找到自己需要的信件。7 用户信箱配置设置:它包括个人资料更改、密码更改、参数设置、POP3 服务器设置、过滤器设置、自动转信、定时发信
5、、签名设置。8 管理员管理用户和信箱邮件功能:包括输入(增删改)、查询、统计、报表。系统性能参数 设置。9 广播功能:它用于公司定期向一定的用户发送信息,由于一般的用户数有一定数量,所以必 须用数据库管。二、可行性分析1 技术可行性本软件拟决定最终在分布式系统上来运行。硬件方面,由于广东传讯网络信息有限公司是国外多 家公司并行处理产品的代理商,而且自己本身拥有 ALPHA 机等先进设备,所以有足够能力开发 出先进的电子邮件系统。软件方面,我们拟采用以下几种软件:1) 操作系统用 LINUX 。 Linux 作为一个优秀的网络操作系统,它的发行版本中集成了大量的网 络应用软件,如 Web 服务器
6、 (apache)、Ftp 服务器 (wu-ftp) 、邮件服务器 (sendmail+imap4) 、 SQL 数 据库(postgresql)等,可以快速的构建Intranet环境,并且也有精致的邮件收发程序(metamail)和强大的Web服务器端开发工具(PHP4)。当你配置好sendmail并激活imapd后,你的Linux用户都可 以使用 Outlook 等客户端软件进行邮件收发,只要通过将它们集中进行应用,便可以实现一个简 单的 Webmail 服务器的功能。但是随着自由软件的不断开发,要构架一个好的电子邮件系统,就 面临着软件选择是否适当、性能是否比别人好的问题。下面列出我们所
7、使用的软件。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的
8、优点,而且超越了他们的缺点,提供了三种状态下对远程信箱的访问:在线、不连接和脱机状态。在脱机状态,邮 件可以发送到一个共享的服务器,但是邮件客户并不是马上全部把它们COPY 过去之后在服务器上删掉它们,而是处于一种客户服务器交互的模式,客户可以询问服务器有关的信头、正文 或一些状态标志(如“ DELETE ”,“ ANSWER ”等)。 IMAP 可以以本地的方式操作远程信箱。IMAP 的优点主要在于:它可以操作持续的消息状态标志;它可以存取消息而且随时访问它们; 它可以访问和管理多个信箱; 它支持对共享信箱的并发访问和修改; 适合存取非 EMAIL 数据, 如 网络杂志和资料;它能以最短连接
9、时间和最小空间开销来使用脱机范式;它有用来管理用户配置 的伴随协议;它允许在线性能优化,特别是在低速连接的情况下。3) 用 OPENLDAP 作为目录服务器软件。 LDAP ( Lightweight Directory Acess Protocol )是目录服务在TCP/IP上的实现(RFC 1777 V2版和RFC 2251 V3版)。它是对 X500的目录协议的移植, 但是简化了实现方法,所以称为轻量级的目录服务。在 LDAP 中目录是按照树型结构组织,目录 由条目(Entry)组成,条目相当于关系数据库中表的记录;条目是具有区别名 DN( Distinguished Name)的属性(
10、Attribute )集合,DN相当于关系数据库表中的关键字( Primary Key );属性由 类型(Type)和多个值(Values)组成,相当于关系数据库中的域( Field)由域名和数据类型组 成,只是为了方便检索的需要,LDAP中的Type可以有多个Value,而不是关系数据库中为降低数据的冗余性要求实现的各个域必须是不相关的。 LDAP 中条目的组织一般按照地理位置和组织 关系进行组织,非常的直观。LDAP 把数据存放在文件中,为提高效率可以使用基于索引的文件数据库,而不是关系数据库。LDAP 协议集还规定了 DN 的命名方法、存取控制方法、搜索格式、复制方法、 URL 格式、开
11、发接口等。 Linux 支持的 LDAP 服务器一般有 Michigan 大学开发的免费 软件包和 Openldap 组织基于 Michigan 大学的开发包提供的 Openldap 免费软件发行包,其中 Openldap 发行包安装配置更加简单。4) WEB 服务器端用 APACHE+PHP4+MYSQL 。自由软件开放原代码的好处就不用多说了5) 系统软件用POSTFIX。由于电子邮件是一种非常传统的工具,因此有非常多的软件可以用来 达到这个目的,这里面包括从古老的 uucp 邮件到非常庞大的商业群件系统,如 Lotus DominoServer,但使用最广泛的还是一种自由软件 sendm
12、ail,它支撑了当前Internet邮件系统的主体。无论从使用的广泛程度,还是从代码的复杂程度来讲, sendmail 都是一个非常优秀的软件。如果 使用它来构建网站的电子邮件系统, 基本上不必费心, 因为几乎所有的 Unix 的缺省配置中都内置 这个软件,只需要设置好操作系统,它就能立即运转起来。然而,Internet用户的要求更为苛刻,纷纷指出 sendmail 中包含的各个不足之处。第一个重要的缺点是它的安全性较差这是因为当其作 者 Eric Allman 最初开始写作这个软件的时候, Internet 的用户还很少,因而安全性并不没有得到 大家的重视。此外,也是由于其早期的Intern
13、et用户数量及邮件数量都相当小,Sendmail的系统结构并不适合较大的负载,对于高负载的邮件系统,需要对 Sendmail 进行复杂的调整。另一个问题 是它的设置相当复杂,对于使用缺省设置来收发电子邮件,问题并不存在。当管理员打算进行一 些特殊设置,以便利用 Sendmail 提供的复杂邮件处理能力时,就不得不面对复杂的宏和正则表达 式。 Postfix 同样也是采用了模块化的方式,但与 Qmail 不同的是, Postfix 使用了一个主控进程进 行监控。 Postfix 在很多方面都考虑到了安全问题,它甚至不向 root 分发电子邮件,以避免以 root 身份读写文件或启动外部程序。 P
14、ostfix 提供的一些强大的功能主要在于多种数据库表查询方式, 例如它支持DB、DBM、passwd文件、正则表达式、 MySQL数据库以及LDAP方式的查询,用 于支持系统级的别名、虚拟主机等。虽然在 Qmail 中也能支持这些功能,但没有象 Postfix 那样统 一、简洁。 此外, 更改 Postfix 的设置之后, 也不需要重新启动整个系统, 只需要使用 postfix reload 就能完全刷新配置,这也避免了丢失邮件的可能性。6)服务器性能优化软件 ZEND OPTIMIZER. ZEND OPTIMIZER 的工作机理是通过在检查 ZEND 动态编译器产生的代码的过程中优化它们
15、来加快程序的运行速度。在PHP4的ZEND引擎中ZENDOPTIMIZER的工作是位于ZEND动态编译过程和运行过程的中间。PHP4中的ZEND动态编译器产生代码的速度相当于 PHP3产生代码速度的2-10倍。如果一个系统中用了 ZEND OPTIMIZER 执行速度又会快 40%-60% 。以上软件的组合绝对保证了整个系统的安全性、稳定性、可靠性和可扩展性。2 经济可行性伴着 LINUX 的日益风靡,自由软件种类越来越多, 性能越来越好。本系统的开发拟采用自由软 件,这不仅保证了系统的技术可行性,还保证了系统的经济可行性。自由软件大大地降低了开发 成本,也降低了产品成本。另一方面,本系统产品
16、化后,其将硬件软件一体化的独到经营思路必能引发经常性收益。3 社会可行性本系统的社会可行性主要体现在以下几方面:1 )自由软件的使用使得在软件方面避免了任何版权、专利权等法律问题的纠缠。2)本系统软件硬件一体化解决了当前自由软件安装配置难的问题,满足了用户的需要。3)由于开发成本的降低使得产品价格也会在市场上占据绝对优势需求规格说明一、 任务概述需求分析工作是软件生存期中重要的一步,也是起决定性的一步。我们试图通过它来全面了解整 个系统的软件功能和性能方面的要求,为软件设计打下坚实的基础。该部分的目标主要有:获得 当前系统的物理模型,了解当前系统是如何运行的;抽象出当前系统的逻辑模型,对物理模型进 行筛选,得到与软件系统有关的部分;建立电子邮件系统的逻辑模型,得出数据流图和数据