第四章 软件发布系统的实现 4.1系统的需求分析 内容来自www.paper51.com 4.1.1系统需求 http://www.paper51.com 网上有丰富的软件信息,它们种类各异,来源广泛,需要统一管理与规范,并且其中有价值的信息要能快捷发布,动态信息要能迅速更新,信息垃圾要能及时剔除。同时,人们也能够借助于一些必要的工具获取自己需要的信息。信息发布系统就是为了满足这一需求而进行建设和开发的,其目标是建立一个基于Internet及软件信息网的来源通畅、发布快捷、资源丰富、服务到位的综合信息发布平台,能对网上的公共信息进行集中管理与控制,面向网上进行信息的自动快捷有序发布,提供多种优质的信息服务[15]。为实现这一目标,信息发布系统应该实现下述功能:面向网上各个行业,有软件添加功能、软件信息发布功能、软件管理、软件测试等功能部件。还有一些经常变动的网址链接等。因此要求信息发布系统也能够进行分散发布信息,避免集中式录入发布,以提高效率,并要求能够定时发布。要求信息发布系统简单易用,界面友好。要求信息发布系统要有审核功能。 http://www.paper51.com 4.1.2系统分析 paper51.com 本信息发布系统要是动态网页,需要动态维护,各个组成部件有基本相似,只是功那不同,有的不需要审核,有的需要审核,有的只允许查看,有的栏目可以添加发布信息,各个栏目的深度也不一样,有一级栏目、二级栏目等等,最深的有三级栏目,各个页面形式各异,所以,后台维护系统即信息发布系统的设计有很大的难度。信息发布系统除了维护网页的栏目外,还有其它功能,如网址管理、弹出窗口管理等等。 内容来自论文无忧网 www.paper51.com 根据分析可以知道该信息发布系统比一般的信息发布系统有着更为复杂的关系,信息由各个部门来发布,而且各个部门可以发布各个栏目的信息,所以这是一个非常复杂的基于至少两级的多对多的关系;就其发布的内容来说,要通过B/S模式实现图文混排确实是其它任何信息发布系统所没有的功能[16]。所以,为了满足上面的功能需求,而且还要开发一个比较通用的系统软件,最终形成产品,因此我从系统用例和角色两个层面上来分析该系统。 copyright paper51.com
4.2系统的整体设计 内容来自www.paper51.com 4.2.1系统结构的确定 paper51.com 一个信息发布系统是否合理,对该系统的性能和安全都有至关重要的影响,因此在此进行信息系统整体设计时,首先就是要确定合理的系统结构。信息发布系统实际上是一个基于web的信息系统,通过上一章节所进行的B/S结构和C/S结构的比较和信息发布系统本身的应用属性与应用范围决定了它只能采用B/S结构;通过上一章所进行的两层结构与三层结构的比较,三层结构对两层结构的无与伦比的优势决定了本系统的软件结构采用基于B/S结构的三层结构。 copyright paper51.com 4.2.2系统的整体设计 http://www.paper51.com 系统整体设计的目的是为了产生一个可用的解决方案,并且能够比较容易将该解决方案转换成程序代码。本信息发布系统主要由客户端浏览器、网站、数据库组成。Web是运行在Internet顶层的服务集合。基于Web的信息使用HTML格式以超文本和超媒体方式传送。 paper51.com
Web服务以客户机/服务器模式运行。信息资源以页面形式存储在Web服务器上,用户通过客户端的Web浏览器向Web服务器发出查询请求;Web服务器根据客户端请求的内容做出响应,并将存储在服务器上ASP代码页面进行编译然后以HTML页面发送给客户端;Web浏览器对收到的页面进行解释并将页面显示给用户[17]。 copyright paper51.com Web服务器安装在服务器计算机上,使用HTTP的Internet协议来响应TCP/IP网络上的Web客户请求。 paper51.com 本系统就是采用Web服务器软件Microsoft的IIS。而浏览器软件则用Microsoft Internet Explorer(IE)。 paper51.com 根据网站建设的需求,首先构造整个网站的整体结构,本系统考虑到发布的功能区别,系统主要实现一般用户和管理登陆网站的不同权限问题,进行不同的权限分配。不管是一般的用户还是管理员首先登陆的界面都是一样的,软后再分支出来,进入不同的页面。同时网站的数据是来源于数据库。它们联系ER图如图4.1示,很明显就看出这个系统运行的基本路线,有管理用户通过各自的浏览器登陆网站,查看网站上的相关信息,还有普通用户登陆网站查看信息。 copyright paper51.com
paper51.com
内容来自论文无忧网 www.paper51.com 图4.1 浏览器访问网站示意图 内容来自www.paper51.com 根据图4.1的系统运行模式,为各个部分选用相应的管理工具。 paper51.com (1)客户端根据个人的喜好可以选用各自喜欢的浏览器访问服务器,现在浏览器对于ASP开发的网站支持都比较好,不过还是建议用微软的IE浏览器登陆网站。希望用最新的IE版本5.0及其以上版本。 内容来自www.paper51.com
(2)有于系统要提供多人同时访问服务器,所以要求服务器配置要较高,由于开发成本问题和安全考虑,用windows 2000 server版本作为服务器端的操作系统。而系统硬件配置要求奔Ⅳ2.4G处理器。有于服务器实时在交换数据,数据的冗余,日记将会产生非常多,因此硬盘要求80G以上,而且日记记录在计事本里面,而不是保存在数据库里面,这样可以减少数据库的负担。而内存要求512M以上,这样当服务突然遇到许多用户访问,也能应付过了,而不至于导致服务器瘫痪或重起。 内容来自论文无忧网 www.paper51.com (3)数据库采用Access数据库服务器。虽然SQLServer是微软推出的中小型网络数据库系统,是目前最常用的数据库系统之一。随着SQL Server网络数据库应用程序日益增多,这种Web数据库应用系统的正常运行一般依赖于已存在的用户数据库。但是SQL Server对于服务器要求比较高,如果配置太低了,系统根本无法运行,只要同时访问的用户一多起来,马上就会瘫痪。而Oracle更是超大型数据库,只能是运行在大型网站开发中,本身安装就占用2G多的硬盘空间,只适用于超大型的开发系统。Oracle根本无法使用在一般配置的服务器上,没还运行服务器,只打开Oracle就可以让你的机子停止运作几分钟。基于此本系统用Access数据库来开发,它简单实用功能齐全。而且是微软配套的,与系统结合相对要好。 内容来自www.paper51.com (4)同过模块创建使功能模块达到复用的目的,减少代码编写的工作量和减少错误几率,可以将本管理发布系统模块分为以下几个: http://www.paper51.com
a.管理员模块图,本系统是收集网上的软件信息进行整理发布的,这些信息的收集,重组,更新资料复杂繁多,必须要有管理员来对信息进行整理、分析,测试、发布等,要为管理员设置专门的通道,拥有本网站软件的管理权限,所以本系统为管理员设计了专门的登陆界面。而管理员登录涉及到数据,网站的安全,这本系统设计中的一个重点,如果没有考虑到管理员登陆的安全,将会对网站的安全存在致命的威胁。所以我用小型的数据库Access来建立管理员用户名和密码管理表单,当管理员要登陆通过登陆界面要登陆管理界面,只要用户名跟Access表单里的用户名和密码一致就可以登陆管理。这个一不分就运用到了数据库的查询功能。如图4.2所示管理员登陆验证过程 copyright paper51.com
copyright paper51.com
管理员登录 http://www.paper51.com
http://www.paper51.com
数据库 内容来自论文无忧网 www.paper51.com
内容来自论文无忧网 www.paper51.com copyright paper51.com 图4-2 管理员登陆验证过程 paper51.com
b.我们根据初期需求设计的调查从而制定出了网站的几个主要界面设计,软件提交页面就是将软件的基本信息通过页面提交到服务上,然后提供其他浏览者浏览。这个界面提供了一个软件简介信息界面,功能齐全,主要给出了发布者的姓名、软件名称、下载地址、运行环境、软件类型、程序演示、软件简介、其中对于各项都有明确的要求,不能随意填写,对于姓名的软件名称都必须填写,否则会返回错误信息,程序运行演示这样项根据情况可以填写或是不填,由于考虑到服务器端的负载能里,要求只能填写不超过1000个字。根据这些情况构造其E-R图如图4.3示 内容来自www.paper51.com paper51.com 图4.3 软件提交界面设计 paper51.com 信息填写相应的代码编辑如下: 内容来自论文无忧网 www.paper51.com function isok(theform) paper51.com { paper51.com
if (theform.txtname.value.length<1 ||theform.txtname.value.length>5) http://www.paper51.com
{ 内容来自www.paper51.com alert("姓名最少要1个字,最多5个字!"); 内容来自www.paper51.com theform.txtname.focus(); paper51.com return (false); 内容来自www.paper51.com
} paper51.com
if (theform.txtshowname.value.length>20) 内容来自www.paper51.com
{ copyright paper51.com alert("软件名称最多20个字!"); 内容来自论文无忧网 www.paper51.com theform.txtshowname.focus(); paper51.com return (false); http://www.paper51.com } paper51.com if (theform.txttitle.value=="" ||theform.txttitle.value.length>1000) paper51.com { 内容来自www.paper51.com alert("简介不能为空 及 请少于1000汉字!"); 内容来自论文无忧网 www.paper51.com theform.txttitle.focus(); 内容来自www.paper51.com return (false); http://www.paper51.com } 内容来自论文无忧网 www.paper51.com
return (true); 内容来自www.paper51.com } 内容来自www.paper51.com c.管理员登录界只允许有管理权限者登录,为了信息能够得到及时的整理,发布出去,让浏览者得到错误的信息,网站提供了两个管理者权限,在两个管理员进行管理下,它们之间密码和用户名都是不一样的,这样防止了共同登录时带来的不必要问题,而且任何一个管理员用户失去作用或者要清楚用户名,可以直接在用户名数据库里进行修改,修改之后只要对服务器刷新就会立刻有效。这样加快了运行效率。管理员登陆界面只提供管理者登陆,因此管理员登录的界面设计得相当简洁。登陆界结构图如图4.4示 http://www.paper51.com copyright paper51.com |