软件设计实践报告_第1页
软件设计实践报告_第2页
软件设计实践报告_第3页
软件设计实践报告_第4页
软件设计实践报告_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件设计实践报告

实训1/实验内容与要求

通过实现一个完整的软件,体验软件项目开发的工作流程,加深对相关理论

知识的理解,提高实际分析设计能力。完成软件的需求分析、架构设计、模块划

分并编程实现。

指导教师:

指导教师评语

成绩:

指导教师:________________

年月日

精品文档你我共享

目录

1.需求分析2

2.详细设计3

2.1系统功能3

2.2详细设计4

3.数据库设计6

3.1完整性和安全性6

3.2数据字典6

3.3物理结构设计7

4.系统实现9

4.1用户登录界面10

4.2用户查看图书界面11

4.3用户注册界面15

4.4用户订单界16

5.总结18

腹有诗书气自华

精品文档你我共享

2.详细设计

2.1系统功能

本系统主要针对两种用户,一个是消费者,一个是图书管理员。消费者可以

进行登录,修改密码,分类浏览、分类模糊搜索(只需耍输入关键字就可以搜索

出含有该关键字的相关图书)图书信息,支持组合查询,可以将图书名称、作者名、

出版社名组合起来进行查询,将需要购买的图书添加进购物车,提交订单,查看

订单等功能。图书管理员也可以进行登录,修改密码,还能添加、修改、删除、

查看图廿信息与图书类别,对订单进行处理。

消费者系统如图2-1所示.

腹有诗书气自华

精品文档你我共享

管理员系统如图2-2所示。

2.2详细设计

1.系统登录,要求用户在登录时必须输入正确的用户名和密码。

2.注册功能,要求用户在注册时应输入用户名、密码、二次输入密码,其中用户

名、密码均不能为空且不能与己存在的用户名冲突。

3.修改密码功能,用户需要修改密码时。如果用户名、原始密码验证成功,则允

许密码重置,否则密码重置失败。

4.图书信息搜索功能,用户可以输入关键字对图书名称进行模糊搜索,支持组

合条件查询,可以使用图书名称、作者名、出版社名三者形成组合条件进行查询,

搜索成功则展示图书,若搜索不到结果,则提示用户没有此图书。

5.图书信息查看功能,用户可以点击某本图书,查看该图书的基本信息,如图

书名称、图书作者、出版社名称。

6.购物车管理功能,消费者找到需要购买的图书后,可以点击相应按钮将其加

入到购物车,购物车可同时放入多本不同种类图书,同时在购物车中还能增加、

腹有诗书气自华

精品文档你我共享

减少图书购买数量。

7.查看订单功能,用户在登录系统后可以查看订单状态,订单状态包括已支

付,未支付。

消费者的主要功能功能如图2・3

一登

1

注册二)

修改密码二

图书信息搜三二)

图书信息查询二)

生成订单

订单查询、二)

图2-3

腹有诗书气自华

精品文档你我共享

3.数据库设计

3.1完整性和安全性

系统安全性要求体现在数据库的安全性、信息的安全性和系统平台的安全性

等方面。安全性先通过视图机制,不同的用户拥有不同的视图权限,这样可提供

数据库在一定程度上的安全性,在通过分配权限、设置权限级别来区分对待不同

的访问对象,来实现对数据库操作的安全要求;系统平台的安全性体现在操作系

统安全和网络安全等方面,通过加强系统平台为安全性,才能更好地保证数据库

的正常运行工作。

完整性要求是,要求系统中的数据的正确性以及相容性。通过建立主、外键,

时用约束语句,或是使用触发器和级联更新等。

3.2数据字典

数据项是系统的显示单位,即不可再分的单元。本系统的数据定义为:

表2T管理员信息表

名字Admin

别名管理员

描述储存管理员的各项信息

定义管理员信息=ID+密码

备注记录管理员信息

表2-2图书信息表

名字Booklnf

别名图书

描述储存图书的各项信息

定义图书二书号+图书名+作者+出版商+价格+库存+类

另什图片

备注记录图书信息

腹有诗书气自华

精品文档你我共享

表2-3用户信息表

名字User

别名消费者

描述储存消费者的各项信息

定义消费者=TD+密码+名字+地址+邮箱号+电话

备注记消费者信息

表2-4订单信息表

名字OrderForm

别名订单

描述订单各项信息

定义订单:订单编号+用户号+书号+下单时间+结算价格

+图书数量+付款状态

备注记录订单信息

表2-5充值信息表

名字Recharge

别名消费者充值

描述消费者充值信息

定义充值=充值编号+消费者帐号+金额+充值时间

备注记录充值表信息

3.3物理结构设计

数据库在物理设备上的存储结构域存取方法称为数据库的物理结构,它依赖

于选定的数据库管理系统,为了•个给定的数据库模型选取•个合适的应用要求

的数据结构的过程是数据库的物理设计。

数据库的物理设计主要分两步:一步是确定数据库的物理结构,在关系数据

库中主要存取方法和存储结构;另一步是对数据结构进行评价。

根据题目的要求设订的数据库的物理结构如下:系统数据库命名为Book数

腹有诗书气自华

精品文档你我共享

据库中的数据表有:图书信息表,管理员信息表,用户信息表,订单信息表,订

单商品信息表;

表3-7图书信息数据表

字段名数据类型长度主键描述

Bookidvarchar50是图书编号

BookNamevarchar50否书名

BookAuthorvarchar5()否作者

BookPressvarchar50否出版社

Imagevarchar50否图片地址

BookClassvarchar5()否类别

Bookpricevarchar50否价格

Bookslockvarchar50否库存

表3-8管理员信息数据表

字段名数据类型长度主键描述

AdminldVarchar50是管理员编号

AdminPwdVarchar50___________否密码

表3-9用户信息数据表

字段名数据类型长度主键描述

UseridVarchar50是用户编号

UserNameVarchar5()否昵称

UserPwdVarchar50否密码

UserTelVarchar50否电话

UserAddrVarchar50否住址

UserPostVarchar50否邮编

表3-10订单信息数据表

字段名数据类型长度主键描述

腹有诗书气自华

精品文档你我共享

OrderldInt是订单号

Useridvarchar50否用户Id

Bookidvarchar50否图书标号

BookNamevarchar50否书名

OrdcrDatcDatetime否时间

IsConfirmvarchar5()否是否付款

ExpenditureMoney否金额

NumberIin50否数量

表3-11订单详细信息数据表

字段名数据类型长度主键描述

IdInt是记录编号

Useridvarchar50是用户编号

IMoneySmallmoney否消费记录

IdatetimeDatetime否充值时间

表3-12用户余额信息表

字段名数据类型长度主键描述

UseridVarchar50是用户编号

UscrBlanceSmallmoney否用户余额

4.系统实现

图书销售管理系统是典型的信息系统,其开发包括后台的数据库的建立、维

护以及前台应用程序的开发两个方面:一方面要求建立数据一致和完整性强、数

据安全性高的数据库;另一方面要求应用程序具有功能简单、实用。图书管理涉

及图书信息、用户信息、系统用户信息等多种数据的管理。管理可分三类:图书

信息管理、用户信息管理、和系统用户管理。

腹有诗书气自华

精品文档你我共享

4.1用户登录界面

输入用户名和密码,经过数据库的验证即可登录到主页面,登陆界面设计不

同用户的登陆权限和登陆方法。对所有的用户开放图书的浏览功能。查看自己的

信息。

用户登录界面如图4-1。

欢迎您的光临

关于我们I联系我mI-家入驻I.机睁I――I香江公益

CopyrightO2004-2013#2:XJ.coo版权——

图4-1

主要代码如下:

publicpartialclass_Default:System.Web.UI.Page

(

〃创建公共类DBClass一个新实例对象

DBClassdbObj=newDBClassC;

protectedvoidButtonl_ClickJobjectsender,EventArgse)

if(this.Username.Text.Trim()II

this.Uscrpwd.Text.TrimO!~〃")

〃定义一个字符串,获取用户信息

stringusertest="select*fromUserswhereUserid='

+Username.Text+

DataTabledstTable=dbObj.GetDataSetStr(usertest,

〃tbUsers〃);

腹有诗书气自华

精品文档你我共享

〃判断用户是否存在

if(dstTable.Rows.Count二二0)

useridtest.Text=〃该用户不存在〃;

else

(

stringuserlogin=string.Format("select*from

Userswhere

Userid='{0}'andUserPwd='{1}'〃,Username.Text,Userpwd.Text);

DataTabledslTable

dbObj.GetDataSetStr(userlogin,〃tbUsers〃);

if(dslTable.Rows.Count==0)

(

useridtest.Visible=false;

userpwdtest.Visible=true;

}

else

(

Session[〃UserId〃]=

dslTable.Rows[0][0].ToStringO;〃保存用户ID

Session["UscrName']=

dslTable.Rows[0][1].ToStringO;〃保存用户名

Response.Write(,,<script>alert('登录成功!

,);

location=./zhuye2.aspx';</script>〃);

//Response.RedirectC../zhuye2.aspx");

)

)

)

else

(

useridtest.Visible=true;

useridtest.Text=〃用户名不能为空〃;

)

}

4.2用户查看图书界面

用户网上购买图书,查看图书信息。如图4-2

腹有诗书气自华

精品文档你我共享

全部商丛分类首页帚助中心团购游戏大厅

题富库设诃的g书之:

张向辉注册作者:

出版

价格:¥”防价格:¥8际tt:

小:

作■:辛更坞IX*:JMH□

:灯金朝:计”机履**21

2s同8曲订

订单W

个人信电4spm网砧开发载程过薪用好

ASPNET3.5

余2查日网M开意实例哀程

价格:¥30防侑格:¥*第元

艺玛修改

用户充值

图4-2

主要代码:

publicpartialclasszhuye2:System.Web.UI.Page

(

CommonClassccObj=newCommonClass();

DBClassdbObj=newDBClass(>;

protectedvoidPage_Load(objectsender,EvcntArgsej

(

if(IPage.IsPostBack)getchanpin();

if(Session[//Userld,z]!=null)

(

LinkButton2.Text=Session[^UserName^].ToStringO;

LinkButton2.PostBackUrl=〃~/users/updatainf.aspx〃;

}

)

protectedvoidLinkButlonPrevClick(objectsender,EventArgs

e)

(

this.LabelPage.Text=

Convert.ToStrmg(int.Parse(this.LabelPage.Text)-1);

getchanpin();

)

protectedvoidLinkButtonNextClick(objectsender,EventArgs

e)

(

this.LabelPage.Text

Convert.ToStrmg(int.Parse(this.LabelPage.Text)+1);

腹有诗书气自华

精品文档你我共享

getchanpin();

)

protectedvoidLinkButtonLast_Click(objectsender,EventArgs

e)

(

this.LabelPage.Text=this.LabelTotalPage.Text;

)

protectedvoidLinkButtonFirst_Click(objectsender,

EventArgse)

(

this.LabelPage.Text=T;

getchanpin();

)

privatevoidgetchanpin()

{

stringstrSql=getstringO;

//stringstrSql="select*fromBooklnforderbyBookid

〃.

9

DataTabledsTablc=dbObj.GetDataSctStr(strSql,

"tbMember");

PagcdDataSourccobj=newPagcdDataSource0;

obj.DataSource=dsTable.DefaultView;

obj.AllowPaging=true;

obj.PageSize=4;

intdpage=Convert.ToTnt32(this.LabelPage.Text;;

obj.CurrentPagelndex=d1;

if(obj.CurrentPageIndex<0)

(

obj.CurrentPagelndex=0;

}

//只有一页时禁止上下页按钮

if(obj.PageCount二二1)

(

LinkButtonPrev.Enabled=false;

LinkButtonNcxt.Enabled=false;

)

else//duoyeshi

(

if(dpage==1)

(

LinkButtonPrev.Enabled=false;

腹有诗书气自华

精品文档你我共享

LinkButtonNext.Enabled=true;

}

if(dpage二二obj.PageCount)

(

LinkButtonPrev.Enabled=true;

LinkButtonNext.Enabled=false;

this.LabelTotalPage.Text

Convert.ToStrmg(obj.PageCount);

DataListl.DataSource=obj;

DataList1.DataBindO;

}

protectedvoidButtonlClick[objectsender,EventArgse)

(一

getstringO;

gctchanpin();

}

publicstringgetstringO

(

stringbookname=booknaneBox.Text;

stringbookauthor=authorBox.Text;

stringbookpress=TextBoxl.Text;

stringbookclass=DropDownList1.Text;

stringstrSql="select

Bookid,BookName,BookAuthor,BookPress,BookStock,

BookPrice,BookClass,ImagefronBookInfwhere1=1;

if(bookname!=〃")

(

strSql=strSql+〃andBookNamelike'%〃+bookname

+〃对〃;

}

if(bookauthor!="〃)

(

strSql+="andBookAuthorlike'%〃+bookauthor+

腹有诗书气自华

精品文档你我共享

%

}

if(bookpress!=〃〃)

(

strSql+=〃andBookPresslike'%〃+bookpress+〃对

)

if(bookclass!=〃〃)

(

strSql+="andBookClass='〃+bookclass+"'〃;

}

return(strSql);

)

}

4.3用户注册界面

用户可以注册自己的信息,如图4-3

图书查询

订单查询注卅

用户ID:

余额皆询

用户名I

用户地址:

个人信息、

用户邮编,

密码修改用户密码:

再次输入密码I

用户充值

用户电话:

®晅圄

图4-3

SqlConnectionstrSq=dbObj.GetConnection();

stringstrSql="select*fromUserswhereUserid='〃+

this.TxtName.Text.TrimO+〃'〃;

DataTabledsTable=dbObj.GetDataSetStr(strSql,

“tbAdmin");

if(dsTable.Rows.Count>0)

(

Response.Write(ccObj.MessageBoxPageC该?用®?户ii

腹有诗书气自华

精品文档你我共享

己。?存台?在"2!]?〃));

}

else

(

stringstrld=this.TxtName.Text.TrimO;

stringstrname=this.txtPassWord.Text.Trim;);

stringstrAdd=this.TextBoxl.Text.TrimO;

stringstrPost=this.TextBox2.Text.TrimO:

stringstrPwd=this.TextBox3.Text.TrimO;

stringstrTel=this.TextBox5.Text.TrimO;

stringstrAddSql="insertinto

Users(Userid,UserName,UserAddr,UserPost,UserPwd,UserTel)〃;

strAddSql+="values+strld+"+strname+

〃','〃+strAdd+〃','〃+strPost+〃','〃+strPwd+〃','〃+strTel+

〃')insertintoBalance(Userid,UserBalance)values('"+strld+

〃,,八,\〃

,0);

SqlCommandmyCmd=dbObj.GetCommandStr(strAddSql);

myCmd.Connection=strSq;

strSq.Open();

myCmd.ExecuteNonQuery();

Response.Write("<scr:pt>alert('注Aj6册"C成"功

I!e??);window,location.href=,Logind.aspx*;</script>");

}

4.4用户订单界

用户可以查看己支付和未支付订单,如图4-4。

全部订单W

订单号订单生成日期书号书名购买数量所需金额支付状态

232013/12/110:00:00002致青春139.0000Y

242013/12410:00:00003数据库设计教程189.0000Y

252013/12410:00X)0004ASP.NET网站开发教程130.0000Y

292013/12/110:00:00003数据库设计教程1890000Y

302013/12410:00:00004ASP.NET网站开发教程130.0000Y

322013/1M10:00:00005过得刚好139.9000Y

332013/12/110:00:00007经济学基础1398000Y

342013/12/110:00:00002致青春139.0000Y

352013/12/11O:OOK)O0O2致青春139.0000Y

362013/12/110:00:00004ASPNET网站开发教程130.0000Y

下一页

图4-4

stringconbuy="selectExpenditure,NumberfromOrderFormwhere

Orderld=,*+TextBoxl.Text+

腹有诗书气自华

精品文档你我共享

DataTablebbTable=dbObj.GetDataSetStr(conbuy,

“ibOrderForm");

if(bbTable.Rows.Count!=0)

(

stringcombuy="selectUserBalancefromBalance

whereUserid='〃+Session[^Userid'/]-〃;

DataTablebbyTable=dbObj.GetDataSetStr(combuy,

〃tbBalance〃):

floata=

float.Parse(bbTable.Rows[0][0].ToStrmgO);

floatb=

float.Parse(bbyTable.Rows[0][0].ToStringO);

if(a>b)

{

Response.Write(,,<script>alert('余®"Q额?

不?足A?!6?请?充?值

|I');window,location.href=,recharge,aspx);</script>>z);

}

else

(

SqlConnectionstrSql

dbObj.GetConnectionO;

SqlCommandupdCmd=nowSqlCommand(;;

strSql.OpenC;

Response.Write(Session[,,booknum,/]);

updCmd.CommandText="declare@iintselect

@i=(selectExpenditurefromOrderFormwhereOrderId='〃

+TextBoxl.Text+

〃')updateBalancesetUserBalance="

+

bbyTable.Rows[0][0]+“-@iwhereUserid='"+Session["Userid"]+〃'

updateOrderFormsetIsconfi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论