1、定稿王波丽基于web的宠物领养助养系统的设计与实现09051703291(定稿)王波丽基于web的宠物领养助养系统的设计与实现0905170329-(1)本科毕业论文(设计)论文题目:基于web的宠物领养助养系统的设计与实现学生姓名: 王 波 丽 学 号: 0905170329 专 业: 计算机科学与技术 班 级: 计本0903班 指导教师: 苏 荟 完成日期: 2013 年 5月 16 日基于web的宠物领养助养系统的设计与实现内 容 摘 要为了解决流浪动物泛滥问题,各省市先后出现了公有或私有的动物救助站,但是因为区域限定、资金短缺、宣传困难等问题,流浪动物的领养、助养发展缓慢。但是随着In
2、ternet技术的发展,尤其是电子商务的快速普及,为动物的领养、助养的普及与快速发展提供了良好的条件。虽然网络上已有一些相关的救助网站,但因信息更新不及时、地域限制、人力物力资源匮乏等问题造成有领养意向和条件的爱心人士的不能或者推迟领养;救助站内部又存在动物泛滥、资金紧缺的情况;不能形成一个良性循环。因此开发一个在线的宠物领养助养系统就成了当务之急。本文主要介绍了基于ASP.NET的宠物领养助养系统,该系统凭借web服务器和客户的浏览器,利用网络高效率、低成本、及时更新的特点,为爱心人士提供交易平台。管理员在Internet上发布或审查、修改宠物信息、管理订单和配送方式、报表;会员可以查阅、搜
3、索、发布、领养或助养宠物。为爱心人士提供全天候的、更好、更快的服务。为流浪动物提供一次新生的机会。关键词:宠物 领养 助养 Pets Adoption or Sponsorship System Based on WebAbstractTo solve the overflowing problem of vagrant animals, some provinces have appeared publicly or privately animal rescue shelters. The salvation is slow development, because of limited
4、areas, shortage of funds, publicity difficult issues. But with the development of Internet technology, especially the rapid spread of e-commerce, animal adoption and help are raising. Although several salvations developed the related web sites, some sympathetic members can not or postpone adoption o
5、r help because of geographical restrictions, lack of resources and the informations update slowly. The salvations are shortage of funds and have many animals that are waiting for help. Because it is a vicious circle, so developing an online pet adoption sponsor system is urgent.This paper describes
6、the pet adoption or sponsorship system based on ASP.NET, which used the web server and the client browser. Because it has high efficiency, low cost, and update timely features, the web can provide a good trading platform for everyone. The administrator can publish, review or modify pet information a
7、nd also manage orders or delivery method, research reports. Memberships can access, search, publish, adoption or help pets. This software provides an all day and faster good service, in order to provide a new life opportunity for vagrant animals.Key words: pet adoption sponsorship 一、绪 论动物作为人类的宠物已经有几
8、千年的历史了,尤其是猫和狗因其天性被人类所喜爱和推崇,好多的成语故事、俗语等都与它们有关。但是,近几年来由于生活节奏的加快,人们的压力增大,没有时间和空间去照顾宠物,所以弃养宠物的家庭增加,越来越多的流浪动物不仅对动物的生活甚至生存造成影响而且也对人类的生活造成影响。据北京娱乐信报报道,兽医专家称流浪猫狗更易传播疾病,“街头流浪的猫狗身上携带鼠疫等病毒、跳蚤等寄生虫的几率要远远高于家养宠物”。除此之外,大量的流浪猫、狗对城市环境、交通以及公共卫生安全也构成了严重的隐患,也是对生命的不尊重。同时有些家庭却因为没有找到合适的宠物而遗憾。目前,动物的救助还处于初级阶段,存在救助的区域受限制、投资较大
9、、场地偏僻、信息更新发布困难等诸多问题。这些情况导致动物救助所的动物处于“入多出少”的情况,这种情况导致收容所的经济、场地等问题日益严峻。在网络技术飞速发展的今天,电子商务对人们的影响越来越大,小到衣物的买卖,大到房屋的交易都可以通过电子商务来进行。人们也越来越习惯足不出户,完成很多的个人事务。依赖于Internet的优势,将动物的领养助养与其相结合,开发一个基于网络的宠物领养助养系统,刻不容缓。本论文描述了基于Web的宠物领养助养系统开发的整个流程。会员通过在互联网访问该平台,会员可以根据自身需要、家庭环境、宠物的情况等因素来决定救助方式。当然考虑到动物本身和会员本身的条件,网站管理员有权利
10、阻止会员的救助方式也可以对动物的受救助情况进行动态管理,并依据国家法律规定确定会员是否有领养的权利;最后,领养人可以通过平台上传动物的生活照进行领养反馈。二、系统可行性分析与开发相关技术(一)可行性分析可行性研究 1 的主要目标是:进一步明确系统的目标、规模与功能,对系统开发背景、必要性和意义进行调查分析并根据需要和可能提出开发系统的初步方案与计划。下面将从技术可行性、经济可行性、运营可行性、敏感性分析、法律可行性五个方面进行描述:1. 技术可行性目前,实体收容所的某些工作存在盲目性、随意性、局限性不能很好的救助流浪动物。若本系统开发成功,则对他们的工作有很大的帮助。本系统的开发利用Micro
11、soft SQL Server2000作为后台的数据库,它是一个支持多会员的新型数据库,适用于大中规模的数据量需求。使用Visual S作为系统开发的开发环境,它提供完善的指令控制语句、类与对象的支持及丰富的数据类型,给开发高性能系统提供的保障为开发满足客户要求的系统,保证了代码的模块化要求,而代码模块化的提高,非常有利于以后对新系统的扩展与修改。综上所述,本系统的设计与开发在技术上和硬件设备上的条件都是满足的,因此,它在技术上是可行的。2. 经济可行性传统的领养助养模式中,会员要投入大量的财力和时间用于动物的选择和运输,收容所需要大量的人力物力进行宣传和救助流浪动物就这样还不能有效做到合理的
12、交易。而该系统为商家提供了随时随地查看所有商品信息的功能,也使得收容所能在短时间内充分了解当前动物的情况,从何制定合理的配送计划,达到配送成本最小化、供货效率最大化。这样就能为收容所节约大量的人力资源投入,所以在经济上、该系统的开发是可行的。3. 运营可行性1)本系统操作简单,易于理解,只需通过简单培训,上手较快,营运环境要求低。2)面对于系统设计还应该以“标准性、安全性、高效性、保密性、可维护性”为标准,在着眼于当前实用的基础上,为将来系统的扩展,升级留有余地。4敏感性分析系统生存周期短、系统故障负荷量不是很大、处理速度要求快、设备和软件配置变化对支出和效益的影响小。5法律可行性本系统是自主
13、开发设计,因此不会构成侵权,在法律上是可行的。(二)相关技术熟悉而简单的开发平台、开发语言、数据库会给系统开发带来事半功倍的效果。所以宠物领养助养系统采用Visual Studio 2008作为开发平台;C#语言作为主要的后台开发语言;SQL server 2000作为数据库的头号选择。1C#目前主流的动态网站的设计技术有ASP、PHP、.NET和JSP等。而其中最受欢迎的是.NET和JSP.NET上支持多种语言的开发,如C#和VB。本系统采用C#语言2作为开发语言。采用C#开发,有以下几个原因:首先,Microsoft C#是一种简单的、流行的、面向对象的、类型安全的编程语言,它是为生成运行
14、在.NET Framework上的、广泛的企业级应用程序而设计的。其次,它较容易上手,特别是和JSP比较起来,能够在短时间内开发出一个较完整的系统。最后,C#是本人学习时间最长、也是本人最熟悉的编程语言,采用该语言将为系统的开发节省时间2Session 技术的使用Session机制是一种服务器端的机制,服务器使用一种类似于散列表的结构(也可能就是使用散列表)来保存信息。 Session中文经常翻译为会话,其本来的含义是指有始有终的一系列动作/消息,比如打电话时从拿起电话拨号到挂断电话这中间的一系列过程可以称之为一个Session。在ASP.NET中 Session对象3简单来说就是服务器给客户
15、端的一个编号。当一台www 服务器运行时,可能有若干个会员浏览器正在访问这台服务器上的网站。当每个会员首次与这台www服务器建立连接时,就与这个服务器建立了一个Session,同时,服务器会自动为其分配一个SessionID,用以识别这个会员的唯一身份。这个SessionID是由www服务器随机产生的一个由24个字符组成的字符串。这个唯一的SessionID是有很大的实际意义的。当一个会员提交表单时,浏览器会将会员的SessionID自动附加在HTTP头信息中,这是浏览器的自动功能,会员不会觉察到。当服务器处理完这个表单后,将结果返回给SessionID所对应的会员。Session对象主要用于
16、存储一定生命周期内某个会员的个人信息。声明以及存取变量的具体语法格式如下:Session“变量名”/声明一个Session对象变量;Session“变量名”=变量值/存储Session对象变量值;变量=Session“变量名”/获取Session对象变量值,这里需要注意,Session对象返回的变量将是Object对象,会员需要进行相应的类型转换。3Visual Studio 2008Microsoft Visual Studio 2008是一个平台,在这个平台上可以使用多种语言开发Windows应用程序、ASP.NET Web应用程序、移动Web应用程序以及XML WEB Service等。
17、.NET框架由三个主要部分组成:公共语言运行库、统一类库的分层集合和称为ASP.NET的Active Server Pages组件化版本。Visual Studio.NET是一套完整的开发工具,用于生成ASP.NET应用程序、XML Web Services、桌面应用程序和移动应用程序。Visual Basic.NET、Visual C+.NET、Visual C#.NET和Visual J#.NET全都使用相同的集成开发环境(IDE),该环境允许它们共享工具并有助于创建混合语言解决方案。鉴于Visual C# .NET开发平台和C#语言的这些优点,所以本系统采用了以上平台和语言。4SQL S
18、erver 2000目前市场上已有的数据库系统包括MYSQL、Access、Microsoft SQL Server 2000、Oracle(9i、10g、11g),其中以后两种数据库最为普遍。本系统采用的是Microsoft SQL Server 20004数据库系统,原因如下:A.SQL Server 2000是微软公司的大型数据库管理系统,它的主要特点有:a.强大的查询与管理功能。b.强大的数据库开发功能。c.扩大了对SQL语言的支持。d.大量使用可视化的界面操作工具。e.支持面向对象的程序设计。f.多平台支持。g.支持网络应用。B.SQL Server 2000是本人接触基于关系型数据
19、库系统以来学的最早也是时间最长的一个数据库系统,而且T-Sql语句也是本人最熟悉的查询语句,采用该种数据库对保证系统开发过程的顺利进行将有很大的帮助。C.虽然Oracle可在所有主流平台上运行,解决了系统运行过程中的跨平台问题;但是它的企业管理器使用过程较为复杂。而SQL Server 2000虽然只能在Windows上运行,但SQL Server 2000在Windows平台上的表现以及它和Windows操作系统的整体结合程度、使用方便性、和Microsoft开发平台的整合性都比Oracle强的很多。D.Oracle适用于大型项目,而SQL Server 2000适用于中小型项目,根据本系统
20、中用到的数据表以及数据表之间关系的复杂程度,SQL Server 2000提供的功能足以满足系统需求。5存储过程的使用存储过程在概念上4类似于程序中的函数。它们获取输入参数,以黑盒模式运行并返回相应信息。与函数不同的是,存储过程由数据库引擎执行,而不是在程序中执行。也就是说,将信息输入到存储过程或从中输出信息都必须通过与数据库交互的技术来完成。在 Visual ASP.NET 中,本人们可以使用 ADO.NET 完成该任务。使用存储过程不像解释执行的SQL语句那样在提出请求时才进行语法分析和优化工作,这样运行效率就高了,它提供了在服务器端快速执行SQL语句的有效途径。存储过程同时也降低了客户机
21、和服务器之间的通信量。客户机上的应用程序只要通过网络向服务器发出存储过程的名字和参数,就可以让RDBMS执行许多的SQL语句,并执行数据处理。只有最终结果才返回客户端。并且存储过程可以方便实施企业规则,可以把企业规则的运算程序写成存储过程放入数据库服务器中,由RDBMS管理,既有利于集中控制,又能够方便地进行维护。当会员规则发生变化时只要修改存储过程,无须修改其他应用程序。三、需求分析(一)系统总体分析宠物领养助养系统采用四层架构的设计模式5,使得应用程序设计更加合理,便于日后维护。四层架构分为:1)IE会员表示层:包括会员:宠物查询、宠物领养、宠物助养、注册、留言、收藏、宠物车、在线充值、运
22、输、回访、助养金明细查看等模块;管理员:宠物管理、宠物助养金管理、领养管理、宠物类型管理、会员管理、订单管理、运输方式管理等模块。为人们的宠物的领养助养提供最简单、最快速、最安全的服务体系;2)业务逻辑层(BLL):调用数据访问层的功能,来对于特定表的数据操作类,使得数据库的访问操作更加简单和快速;3)数据访问层(DAL):包括了连接数据库、数据库的读写、断开数据库等通用数据操作;4)数据库层保存了整个网站的所有数据。1.业务流程图在线领养助养首先由管理员将宠物信息通过宠物管理功能录入数据库;然后会员在注册为网站会员之后进行宠物的搜索查看,也可以进行留言发布宠物。如果要领养助养宠物只要符合条件
23、就可以申请领养助养宠物,选择领养/助养,若选择助养则进行加入宠物车、在线支付即可提交订单;选择领养则在完成支付之后选择送货方式,之后才可提交订单。若是助养则可以查看每月助养金花费明细;领养则要每月上传宠物近照以便管理回访。管理员每天都会维护宠物信息,进行会员发布宠物信息的审核、查看留言、管理会员、处理会员下达的新订单,并予以执行,也会将助养金额的明细进行记录和通知会员还可以在条件允许的条件下进行宠物的回访。本系统的顶层业务流程如图3-1所示。图3-1宠物领养助养系统的顶层业务流程2.系统结构图本系统会员分为游客、会员、管理员三个角色。系统结构图3-2所示:图3-2 宠物领养助养系统功能图管理员
24、权限:1)管理员具有管理会员的权限主要是:删除违反协议、长时间不登录等会员的会员信息。2)管理员具有管理宠物的权限主要是发布新宠物信息、删除已死亡宠物信息、修改宠物领养助养状态信息、审核会员发布的宠物等。3) 管理员具有管理订单的权限,包括:修改订单状态、审核订单、取消不合理订单、确认订单等4)管理员具有管理宠物类别的权限,包括:添加、删除、修改宠物类别信息。5)管理员具有管理货运类别的权限,包括:添加、删除、修改货运类别信息。6)管理员具有管理领养宠物的权限,主要是修改领养信息。7)管理员具有出具宠物助养金的月明细表的义务,主要用来让会员明白助养金的流向。会员权限:1)会员具有浏览网站中所有
25、的宠物信息、留言发布需要救助的宠物信息的权限。2)会员具有按关键字检索宠物的权限。3)个人信息管理:修改个人注册信息。4)密码管理:找回密码、修改密码5)为会员卡充值,进行助养或领养金的支付。6)添加、查看或删除个人收藏7)将选中的宠物放入宠物车。8)查看、增删宠物车中的宠物9)若助养则直接提交订单;领养提交订单并填写必要的收件信息。10)若直接助养则直接修改宠物助养金信息。11)查看包括运费在内的总金额12)查看助养宠物的月消费明细单。13)上传领养宠物的近况照片,以便管理员回访。14)留言信息管理:添加留言15)退出登录游客权限:1)游客具有浏览网站中所有的宠物信息的权限,主要是查看宠物信
26、息。2)游客具有按关键字检索宠物的权限。3)游客具有注册为会员的权限(二)数据描述1.实体属性图 实体是指客观存在并可相互区别的事物,而属性则是实体所具有的某一特征,一个实体可以由若干个属性来刻画6。图3-3 宠物信息属性图图3-4 订单属性图图3-5 会员信息属性图图3-6 管理员属性图图3-7 留言属性图图3-8 收藏信息属性图图3-9 明细表信息属性图2.E-R图E-R图7也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。图3-10系统E-R图3.数据字典数据字典8是指对数据的数据项、数据结构、数
27、据流、数据存储、处理逻辑、外部实体等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明。数据项是数据的最小组成单位若干个数据项可以组成一个数据结构数据字典通过对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容。以下为本系统中的数据项:表3-1为信息表,存储系统中的会员信息。包括会员的会员名、姓名、密码等信息。其详细设表3-1 会员信息表(A_User)序号字段名类型长度索引备注1会员编号Int4PKey2会员名Varchar503姓名Varchar504出生日期Varchar505住址Varchar505密码Varchar206性别Varchar507注册时间DateTime
28、88密保问题Varchar2009密保答案Varchar10010EmailVarchar100 表3-2为管理员表,存储系统中的管理员信息。其详细设计结构如表3-2所示。表3-2 管理员信息表(A_Admin)序号字段名类型长度索引备注1管理员编号Int4PKey2管理员名Varchar503密码Varchar20表3-3为宠物表,存储系统中的宠物信息。其详细设计结构如表3-3所示。表3-3 订单信息表(A_Animal)序号字段名类型长度索引备注1订单编号Int4PKey2收货人姓名Varchar503收货人电话Varchar504收件人地址Varchar205货物名称Varchar86货
29、物数量Int87备注信息Varchar508提交会员名Varchar509是否发货Bit110备注Varchar5011路线选择Varchar5012车源选择Varchar5013回执确认Varchar5014回执内容Varchar10015订单时间DateTime816订单费用Money8表3-4为宠物类型表,存储系统中的宠物类型信息。其详细设计结构如表3-4所示。表3-4 宠物类型信息表(A_AnimalTypeInfo)序号字段名类型长度索引备注1类型编号Int4PKey2类型名称Varchar50表3-5为宠物车表,存储系统中的收藏信息。其详细设计结构如表3-5所示。表3-5 宠物车信息表(A_Shopcart)序号字段名类型长度索引备注1编号Int4PKey2订单编号Int43货物名称Varchar504数量Varchar45收货人姓名Varchar506收货人地址Varchar507备注信息Varchar200续表3-5 宠物车信息表(A_Shopcart)7总金额Money88救助类型Varchar509会员名Varchar50表3-6为留言表,存储系统中的留言信息。其详细设计结构如表3-6所示。表3-6 留言表(A_Comment)序号字段名类型长度索引备注1
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1