精彩专题 |
如何做好项目沟通计划
软件项目质量管理
国际工程索赔与反索赔
|
更多:
|
|
联系社区管理员 |
咨询电话 010-82273401/11
斑竹申请 admin@mypm.net
版权所有 © 2003-2004
京ICP证070584号
BBS业务许可2007第353号
最佳显示模式:1024*768像素
|
|
 |
电子商务项目开发文档 [纳斯达克 修改于 2006/11/6] 状态 开放帖 浏览量 1636 |
|
电子商务项目开发文档 一. 项目说明 本次项目实现的是一个简化的火车票预定系统。目的就是为火车乘客提供一个网上查询、浏览、预定火车票提供一个平台。主要包括两部分:客户浏览定票部分和管理员管理部分。 二、整体设计 1.本项目主要包括两部分:客户浏览定票部分和管理员管理部分。 2.客户浏览定票部分包括以下几个模块:注册用户登陆、未注册用户注册、查询、浏览、注册用户预定、“我的状态”、网站简介等。出于简化处理,本系统暂时没有实现用户信息修改和电子付款功能。在“我的状态”中实现了注册用户浏览已经预定但没有货到付款的火车票的相关信息,并且可以退定。“我的状态”实现了类似于购物篮的功能。网站简介简要介绍了本系统的功能。 3. 管理员管理部分包括以下几个模块:管理员登陆、车站管理、火车管理、车次管理、班次管理、预定处理等。为体现问题本质本系统没有提供管理员对于注册用户及对管理员的管理,只考虑重要的几个方面。其中车站管理提供了对火车车站站点的管理,可添加和删除站点;火车管理提供了对火车的管理,可以添加火车和删除火车,添加火车时可以对该火车的车厢数目和座位情况进行管理,本系统没有提供对已经存在的火车的修改(包括车厢数目和座位情况),但可以通过先删除该火车再添加的方法达到目的;车次管理提供了对每一条路线的管理,包括使用的火车、始发站、始发时间、终点站、到达终点站的时间、中间站、到达中间站和离开中间站的时间、到各车站的各种票价,为简化问题,本系统把终点站和中间站视为相同,每个车站按照经过的顺序编号,号码最大的为终点站,另外本系统只考虑始发站为上海站或上海西站,对从中间站到另外一个中间站的情况不予考虑,因为一考虑的话就变成了全国联网的火车售票系统,这不是本次项目的目的;班次管理提供了对每天的班次的管理,管理员可以对已经存在的车次路线安排具体某一天的班次;预定管理提供了管理员对于已经被预定的车票的清帐处理(如果要扩展功能的话,这里还可以和财务管理联系起来,不过这就超出了本次项目的原意,所以财务方面也就处理到此为止),这里提供了被定车票的订单号及详细情况,可以察看预定者的详细信息以便于送票上门。 3.本项目“原则上”采用的是“三层结构”,不过在一台机器上看起来更像“两层结构”。 本项目前端采用Dreamwaver MX编写用户界面,业务逻辑部分采用在JBuilder中用jsp实现,数据库采用SQL Server 2000。 三、数据库设计 1. 表。本项目数据库部分由以下表组成: 1.)train(记录火车信息)(id,trainname,carriagenum) 其中id为键码,trainname为火车名,carriagenum为火车车厢数。 2.)stationinfo(记录车站信息)(id,stationname) 其中id为键码,stationname为车站名。 3.)start_end(记录车次信息)(id,trainid,startid,starttime) 其中id为键码,trainid为此车次使用的火车的id,startid为起点站的id,starttime为发车时间。 4.)mid(记录到站信息)(id,stationid,start_endid,reachtime,leavetime,midno) 其中id为键码,stationid为该到站的id,start_endid为车次id,reachtime为到该站的时间,leavetime为出站时间,midno为该站在该车次中的编号。 5.)customer(记录注册用户的信息)(nickname,name,sex,tel,addr,pwd,email) 其中nickname为用户的昵称,是键码,name为用户的真实姓名,sex为性别,tel为用户的电话,addr为用户的详细地址,pwd为密码,email为电子邮箱。 6.)admuser(记录管理员信息)(id,pwd)其中id为账号,pwd为密码。 7.)price(id,price0, price1, price2, price3, price4,midid) 其中id为键码,midid到站的mid的id。price0-price4分别为从起点站(上海站or上海西站)到mid站的站票、硬座、软座、硬卧、软卧的票价。 8.)seatinfo(记录火车的某一节车厢的特性)(id,trainid,carrid,allcount,kind) 其中id为键码,trainid是该seatinfo所表示的火车的id,carrid为车厢的号码, allcount为该车厢的座位数,kind为该节车厢的类型(硬座|软座|硬卧|软卧)。 9.)seat(记录某天车厢座位出售情况)(id,trainid,carrid,allcount,selledcount,kind,dateat)其中id为键码,trainid为火车的id,carrid为车厢号码,allcount为该车厢的座位数,selledcount为已经售出的座位数,kind为座位的类型,dateat为日期。 10.)ticket(记录订单信息)(id,customernickname,start_endid,daozhan,riqi,piaozhong,acount,money,payed)其中id为订单号是键码,customernickname为客户的nickname,start_endid为车次的id,daozhan为目的站,riqi为日期,piaozhong为票种,acount为数量,money为应付款,payed为是否已经付款(该字段此次设计中并没有用到,不过对于系统扩展有用)。 2.表间关系。上述各表间有以下关系: 1.)FK_seat_train seat中的trainid引用train的id为外键。 2.)FK_seatinfo_train seatinfo中的trainid引用train的id为外键。 3.)FK_ticket_customer ticket中的customernickname引用customer的nickname为外键。 4.)FK_mid_stationinfo mid中的stationid引用stationinfo中的id为外键。 5.)FK_mid_start_end mid中的start_endid引用start_end中的id为外键。 6.)FK_price_mid price中的midid引用mid的id为外键。 四、Beans 为辅助设计实现,本项目中使用了以下几个java Bean: 1. dbBean。主要是辅助一些数据库的操作。 2. otherUserInfo。辅助用户信息的Bean,封装了用户的一些信息。 3. userBean。记录用户的重要信息如账号、密码、购物篮及其它信息。 4. ticketBean。辅助定票的Bean,封装了订单的一些信息。 另外还有一些bean,并不是十分重要,在此免列。 五、子模块的设计与实现纲要 1. 客户登陆、管理员登陆、用户注册。比较简单。查询数据库即可。登陆成功则要初始化购物篮。实现了single sign on。 2. 注册。提供了协议认可、信息确认。 3. 查询。分三种查询:按目的车站查询、按站站查询、按车次查询。 4. 浏览。可以浏览已有车次路线的详细信息(但不提供里程长度),可以浏览中间站的情况。 5. 预定及我的状态。实现了购物篮的功能,有确认和退定的功能。 6. 车站管理。实现添加和删除车站功能。 7. 火车管理。实现火车的管理。 8. 车次管理。实现车次的管理。 9. 班次管理。实现对具体班次的安排。 10. 预定管理。实现对预定的清帐,并浏览预定者的资料。 大约就是这10个模块。主要就是对数据库的一些操作。由于数据库的设计充分考虑了关联性,所以实现以上模块并不是十分难。 六、数据格式 本项目完全采用数据库,没有文件操作,所以没有数据格式的问题。 七、补充说明 1. 本项目诸多方面从简,不一定符合实际的火车售票情况。实现本项目的目的在于增加对电子商务的理解和学习jsp编程技术,因此一些细节可能处理的不是很完善,请老师见谅。 2. 本项目在对某些输入数据的合法性进行了一些非空验证,但不能确保。比如email的格式的正确性并没有予以考虑,还有应该输入数字的地方如果输入了字母,项目中没有考虑。我们这样做的原因是认为这不是本次项目的研究对象。 3. 由于做项目时并不会JavaScript,所以一些简单的数据合法性验证是在处理数据前用jsp处理的。后来才用JavaScript充实,在客户端验证数据合法性,原先的jsp验证没有删除,但已经没有作用了。这里可能有点多余,请老师见谅。 4. 本项目中的中现存数据均为虚拟,并不符合实际的上海站发车情况,但能说明问题。因为数据输入很费时间。目前数据库中有以下数据可用: a.) 从上海站到北京东站的1234次列车信息及4月20、21、22、23、24号的车票。 b.) 从上海站到银川的太阳5次列车信息及4月20、21、22、23、24号的车票。 c.) 从上海站到武昌的上海1号列车信息及4月20、21、22、23、24号的车票。 当然可以以管理员身份充实和修改数据。 5. 本项目由张兵和丁明丰合作完成。分工不是绝对的。大致分工是:其中第五点模块实现中的模块1-4、10以及网页风格和版式设计由丁明峰完成,模块5-9以及数据库的设计和实现由张兵完成。 6. 虽然经过多次测试,没有发现的Bug肯定不少,老师如有发现可告知我们,我们定当修正。
|
>>> 由论坛统一发布的广告:
|
|
楼主
纳斯达克
![]()
职务 无
军衔 下士
来自 天津
发帖 82篇
注册 2006/7/18
PM币 1185
经验
|
|
|