网上书店系统的开发1需求分析1.1系统概述网上书店,是一个常见的电子商务性质的网站系统,它的主要功能是:浏览网站的图书信息,注册为网站的会员,购买图书,结算并生成订单,修改个人信息,查看订购图书的订单的状况,管理图书信息,管理订单信息,发送邮件和上传文件。其中,普通游客能够在网站上进行浏览,查看完整的图书信息,也可以注册为网站的会员;会员登录后可以修改以往提交的个人信息,购买图书,系统根据用户购买的商品信息形成订单;订单形成后会员可以登录网站,查看订单的状况——订单是否已确认,图书是否已经发货;管理员登录后,可以对网站信息实施管理,包括对图书信息的管理和对用户提交的订单的处理,可以添加、修改和删除图书信息,确认订单,并发送邮件通知订货会员。其功能列表如下:表1网上书店系统功能表系统的使用人员系统的功能普通游客1、浏览完整的图书信息2、注册会员会员1、登录网站2、购买图书3、结算并生成订单4、修改个人信息5、查看以往订单信息管理员1、注册新的图书信息2、修改已注册图书库存数量3、删除图书信息4、查看未处理的订单信息5、确认订单6、发送邮件7、上传文件1.2功能需求描述本系统的主要目的是为用户提供一个购买图书的电子商务网站,在为用户提供一个方便易用的界面同时,也要为具有管理权限的系统管理员提供添加、修改、删除图书信息和订单信息的系统维护功能。该系统主要实现以下基本功能:1、查看图书信息功能:网站的普通游客都能够浏览网站的图书信息。网站的所有图书信息将以分页形式在首页中显示,一次显示10本书的基本信息,包括书名、作者、出版社、价格等,并且能够查看感兴趣的图书的详细信息,如书店内容简介、ISBN等。也可按照用户的要求显示指定页的图书信息。2、注册会员功能:普通游客可以注册为网站的会员。普通游客通过点击页面的注册链接,能够转到注册页面,并在该页面中填写适当的基本信息后,注册为网站的会员。网站的在线图书购买功能只针对网站的会员使用。3、会员登录功能:会员在首页的“用户登录”上点击,进入登录页面,在该页面输入用户名和密码。经系统核实后,如果没有错误就会自动跳转到网站首页,并提示该用户已成功登陆。4、会员购买图书功能:会员可以将想要购买的图书加入自己的购物车,就像在超市中购物一样,并且可以修改要购买的图书数量。当会员选择“我的购物车”时,系统显示目前购物车中图书的情况,包括用户所购买的图书的名称和数量,以及总的金额。此时,用户可以修改购买的图书数量,也可以将已放入购物车的图书删除,还可以清空购物车中所有图书。5、结算并生成订单功能:当会员在网站上购物结束,将要离开网站时,可以选择结算功能,该功能按照目前购物车中的商品信息形成订单,并且要求会员将接收图书送货人的姓名和地址以及邮编填写到订单中,经过客户端验证后提交给系统,插入到订单表中。6、查看以往订单信息功能:会员登录后可以选择“用户信息”功能,该页面将显示用户以往订单的基本信息。还可以查看订单的详细信息,购买的各种书店名称、数量,其中还包括订单状态,分为“未确认”和“已发货”两种。其中“未确认”表示管理员还没有处理该订单,“已发货”表示该订单已经经过管理员处理,并且准备将图书发出。7、修改个人信息功能:会员在“用户信息”页面中,点击“修改个人信息”,就会进入此功能页面。首先显示用户目前的个人信息,用户可以选择地修改,然后提交,系统进行客户端验证,验证无误后,系统会根据新的个人信息修改以往数据库中的记录。8、管理员登录功能:管理员可以通过首页的“网站管理”进入管理员登录界面,管理员在该界面中填入用户名和密码,经系统验证后自动转入订单管理页面。9、订单管理功能:当管理员登录后,分页显示出未处理的订单信息,按照时间的先后顺序,管理员查看订单的信息确认订单的付款已经收到,并且在图书的库存充足的情况下确认发货,点击下拉列表自动修改订单状态,将“未确认”改为“已发货”。10、图书信息管理功能:此功能也是管理员登录后,维护后台图书信息的功能,包括:添加、修改、删除已有图书信息。11、发送邮件功能:此功能是当管理员确认订单后,通过发送电子邮件的方式通知会员,订单已确认。12、上传文件功能:是在管理员添加新书时,可上传概述的封面图片,便于读者查看图书的信息。2总体设计2.1系统的总体设计原则网上书店系统面向各个层次的网络用户,因此系统的界面设计应该尽量做到简洁、友好、方便、易用,用户不需专门的学习便可以操作。本系统采用B/S模式,服务器端使用ASP技术开发动态页面。2.2系统模块结构图网上书店系统功能模块图如下所示:图1系统模块结构图2.3数据库设计思路1、分析并建立网上书店的数据库Books。方法:首先确认该网上书店应该具备哪些功能?需要描述哪些数据?对这些数据需要知道些什么?功能需求:(1)用户登录、注册(用户号、用户名、密码、姓名、性别、身份证号、联系地址、邮编、电话、手机、QQ号、Email、最后登录时间、登录次数、权限……)(2)图书展示与编辑(图书号、书名、作者、出版社、ISBN号、定价、现价、图片、内容介绍、库存量、出版时间、上架时间……)(3)图书评论(图书号、评论人、评论时间、评论内容……)(4)订单管理(订单号、下单人、下单时间、处理状态、订单的内容、订单总额、收货人、收货地址、支付方式、最新处理时间、处理人……)注:处理状态包括:待处理、已确认、部分配送和全部配送。当处理状态为“待处理”支付方式为“货到付款”时;或状态为“已确认”支付方式为不是“货到付款”时,顾客可以自行修改订单。支付方式包括:货到付款、邮局汇款、网银在线支付。网上书店系统普通游客会员管理员浏览图书信息注册会员购买图书结算生成订单查看以往订单修改个人信息订单信息管理图书信息管理(5)订单内容(订单号、图书号、购买数量、购买价格、状态……)注:状态包括:未配送和已配送。接着建立概念模型;然后,转换为数据模型;每个实体转换为一个关系模式;1:1和1:N的联系,将1方的主健放在N方作为外健;M:N的联系,一般需要建立单独的关系模式;由两端实体的主健的组合和自己的属性构成关系模式,它的主健是两端实体的主健的组合用户(用户号,密码、姓名……)订单(订单号,用户号,下单时间,处理状态……)图书(图书号,书名,作者……)订单明细(订单号,图书号,数量,卖出价格,状态)评论(用户号,图书号,评论时间,评论内容)用户订单图书卖出定制评论1NMNMN数量卖出价格图书号用户号订单号时间内容状态最后,在SQLServer2000或者MySQL中建立数据库、创建表并建立起完成的约束和关系。(1)创建BOOKS数据库。(2)分别创建用户、订单、图书、订单明细和评论表。表1-1用户表T_user字段名名称类型与大小默认值与约束说明user_id用户号int主键,自动增加username用户名varchar(20)notnullpassword密码varchar(20)notnull要求必须在6-20name姓名varchar(30)notnullsex性别char(2)notnull男和女user_sid身份证号varchar(20)notnulladdress联系地址varchar(50)notnullpost邮编char(6)notnulltel电话varchar(20)notnullmobi手机varchar(20)notnullqq_numQQ号码varchar(14)emailEMailvarchar(30)last_login_time最后登录时间datetimelogin_num登录次数int默认值为0power权限varchar(20)表1-2图书表T_books字段名名称类型与大小默认值与约束说明book_id图书号int主键,自动增加bookname书名varchar(30)notnullauthor作者varchar(30)notnullpublisher出版社varchar(30)notnullisbnISBN号varchar(16)notnullprice定价moneynotnullnow_price现价moneypicture图片varchar(30)stocks库存量intnotnull,默认值0content简介varchar(100)summary主要内容varchar(600)图书类别publish_date出版时间datetimeregediter_date上架时间datetimeASP|JSP……表1-3订单表T_order字段名名称类型与大小默认值与约束说明order_id订单号int主键,自动增加user_id订单人int外键order_time下单时间datetimenotnullorder_st处理状态varchar(10)notnull默认值“待处理”order_total订单总额moneynotnull默认值0consignee收货人varchar(30)notnullconsignee_adr收货地址varchar(50)notnullpay_pattern支付方式varchar(20)notnull默认值”在线支付”proc_time最新处理时间datetimeprocesser处理人int表1-4订单明细表T_order_mx字段名名称类型与大小默认值与约束说明order_id订单号int外键两者组合为主键book_id图书号int外键amount购买数量intnotnullbuyprice购买价格moneynotnullstate状态varchar(10)表1-5评论表T_pl字段名名称类型与大小默认值与约束说明user_id用户号int外键两者组合为主键book_id图书号int外键comment_time评论时间datetimenotnullcomment评论内容varchar(200)notnull(3)建立表之间的关系及相关约束。课外作业1:要求完成以上数据库的具体设计(数据库的创建、表的设计、关系的建立)。(4)初步确定每个功能可以通过什么方式组织数据来实现?课外作业2:完成以下功能设计构思,画出流程图。用户的注册insertintoT_user(字段列表)values(值列表);用户的登录通过用户名和密码到用户表中搜索,看是否存在;若存在,说明用户合法;不存在则说明非法。select*fromT_userwhereusername=?andpassword=?注册信息的修改首先找到该人信息,并显示出来select*fromT_userwhereuser_id=?然后完成修改updateT_userset字段名=值,字段名=值,……,字段名=值whereuser_id=?图书的展示、编辑评论的编辑与显示订单的生成、编辑与查询查询书籍销售情况和按书名与图书类别统计销售情况(5)如果还有新功能,则修改数据库及表设计图书的分类展示:在图书表中增加“图书类别”字段,并增加新的图书类别信息表T_book_types。字段名名称类型与大小默认值与约束说明type_id类别号int主键自动增加typebname类别名varchar(20)notnulltype_memo类别说明varchar(200)简单论坛的设计1需求分析1.1功能需求1、用户登录2、用户注册3、进入首页显示用户的基本信息4、用户注销5、论坛的展示6、进入论坛分页展示该论坛所有问题7、在某个论坛中用户可以提出问题8、可以通过问题连接展示详细的问题描述以及问题的回复信息9、用户可以回复问题1.2数据需求1、用户登录:用户名,密码2、用户注册:用户名,密码,性别,出生年月,籍贯,联系地址,昵称,姓名,电话,邮编,邮箱,QQ号码3、用户基本信息展示:用户名,等级,积分,信誉值4、论坛展示:论坛名称,论坛介绍5、问题展示:提问的人,主题,回复次数,提问时间6、提问:问题主题,点数,问题内容7、某一问题的展示:主题,问题点数,回复次数,发表时间,问题内容,问题的回复信息(回复人,等级,积分,信誉值,得分,回复时间,回复