您的当前位置:首页正文

网上书店实验报告

来源:化拓教育网


题姓学专班

'.

.

》课程设计报告

(2015——2016年度第二学期)

网上书香

名 范美宏 号 1443205000228

业 软件工程 级

2014级F班

二〇一六年 六 月 二七 日

《 .

《软件测试方法和技术》课程设计

成 绩 评 定

学号 姓名 成绩 备注 1443205000228 范美宏

指导教师:陈瑞

'.

.

摘要:

随着Internet技术的发展,人们的日常生活已经离不开网络。未来社会人们的生活和工作将越来越依赖于数字技术的发展,越来越数字化、网络化、电子化、虚拟化。Internet的发展历程以及目前的应用状况和发展趋势,可以充分地相信网络技术将极大的改变我们的生活和工作方式,甚至社会的价值观也会发生某种变化。

本设计尝试用ASP.NET在网络上架构一个网上书店,以使每一位顾客不用出门在家里就能够通过上网来轻松购书。本文从理论和实践两个角度出发,对一个具有数据挖掘功能网上书店进行设计与实现分析。论文首先较为详尽地介绍了面向对象分析与设计的有关概念与技术,特别深入介绍了在本系统中运用到的知识,如:面向对象的分析设计流程;系统中所用到的开发技术ASP.NET以及ADO.NET的特点、结构框架以及使用方法。接着对书店系统的可行性进行了分析,然后对系统的设计思想、设计目标与系统的整体结构进行了明确的规划。最后对系统的主要页面、数据库、应用程序的设计与实现作了较为详细的讲解。 本网上书店系统是在Visual Studio.Net 平台上运用ASP.NET技术来实现的。其主要功能有:用户管理,新书上架,分类查找,图书检索,图书收藏夹,购买流程,销售排行,图书评论,网站管理等。论文在撰写过程中,力求将理论与实践应用相结合,对各种理论进行阐述的同时配合系统从实际应用和操作技巧上加以说明,希望能够更充分地体现到这些知识与技术在本系统中的应用与实现。 关键词:面向对象分析与设计,ASP.NET,ADO.NET

一、课程设计的目的与要求

通过软件开发的实践训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。

具体如下:

1. 学习和实践在分析和设计计算机应用系统所需要的知识,包括面向对象的系统分析与设计,编

码和测试方面的知识;

2. 熟悉自动化的软件开发工具Rational Rose 2003,并将其运用于软件开发的全过程; 3. 进一步加强和提高软件工程文档的编写能力; 4. 培养协作能力和团队精神。

二、设计正文

1. 概述

1.1课题题目:好书在线系统 1.2系统的主要目标:

本系统目标是实现选课系统所需的各种基本功能,能够很好的实现在线购书、评论、查看书籍信息等功能,还可以实现管理员进行对书籍的管理、对评论的管理以及对于订单的管理等功能。

1.3 系统的开发环境及运行环境:

操作系统: Windows XP Pro SP2

'.

.

建模工具: Rational Rose 2003 数据库系统:SQL Server2005 开发工具: Visual Studio 2008 Web服务器:IIS+ASP.NET 2.0平台

2. 系统需求分析

随着网络在中国的广泛普及,网络支付手段的逐步完善,越来越多的中国人逐渐习惯于网上购物,习惯于鼠标点击下订单,送货上门的快捷便利的购物方式。传统书店的购书观念正在被网上书店这一方便快捷的购书方式所冲击。网上书店在国际互联网上可以实现的商务功能已经越来越多样化,从最开始的信息发布功能,到现在的在线图书展示功能、在线洽谈业务功能、在线交易功能、在线采购功能、在线客户服务功能、在线网站管理功能等等,几乎传统书店所提供的功能都可以在互联网上进行电子化的高效运作,而借助网络的跨地域特点,更是将传统书店的地域限制加以突破,全国各地的读者都可以通过网络在同一个网上书店购书,从而大大增加了客户的数量。为了使网上书店的投入回报和管理效益最大化,在对网上书店进行系统开发之前,必须对一系列问题进行科学的论证,如网上书店的需求分析、网上书店总体规划、网上书店系统的功能和实施方案、网上书店的传播与推广、运行网上书店系统的软件和硬件配置、网上书店的管理系统和管理方法等等。 综上所述,网上书店已经成为互联网时代购书者的最佳选择,必将获得巨大的成功。 E-R图

用户

图书 查询购买

提交 构成

订单

位置不够

图2-1 学生选课系统E-R图

E-R说明: 2.1 数据流图

'.

.

图2-2 学生选课系数据流图

3. 系统总体设计 3.1 设计问题域子系统

学生选课系统是实现学生选课退课、教师提交成绩以及学校教务管理员维护信息的一个平台,整个学生选课系统有前台和后台两部分,共分为4个模块:管理员模块,教师模块,学生模块和公有模块,分别用于完成各自的功能。以下为学生选课系统总体设计图和各功能模块说明:

(1)总体设计图

查询结果 书籍分类 用户登录 书简介 新用户注册 用户注册

(2)各模块功能

表3-1 学生选课系统功能模块表

注册登录后,实现查询书籍详细信息,将要购买书籍添加至购物车,购买自己想要书籍. 记录用户待付款书籍. 书香主页 查找 分类浏览 书籍详情 购物车 购物车管理 用户模块 购物车模块

3.2 设计数据管理子系统

(1)数据库表

表3-2 数据库表

序号 '.

数据库表 数据表存储的内容 . 1 2 3 4 5 6 7 Books Categories Customers ShoppingCart Reviews Orders OrderDetails 存储书本详细信息 存储书目的信息 存储用户的信息 存储购物车的信息 存储购物记录的信息 存储订单信息 存储订单详细信息

(2)数据库表结构

①学生表Books的详细数据字段:

表3-3 Books学生用户表

②教师表Categories的书目的信息字段:

表3-4 Categories的书目的信息表

③课程表Customers的详细数据字段

表3-5 Customers信息表

4)OrderDetails的详细数据字段:

表3-6 OrderDetails信息表

'.

.

⑤系统管理员表Orders的详细数据字段:

表3-7 Orders

⑥Reviews的详细数据字段:

表3-8 Reviews系院表

⑦ShoppingCart的详细数据字段

表3-9ShoppingCart

3.3 设计人机交互子系统

(1)用户 (2)用户描述

①管理员用户的描述:

管理员用户在整个选课系统中起到管理和维护的作用,对学生和教师的信息进行管理和维护以及开设课设等职责。 ②教师用户的描述:

教师用户在本系统中具有管理选修了自己开设的课程的学生的权限,查看选修了自己开设课程的学生信息有及提交学生成绩。 ③学生用户的描述:

选课系统主要是针对管理学生的,学生在本系统中具有修改自己的信息,以及选课和退选的功能。

(3)设计命令层次

'.

.

①系统的人机交互子系统的内容和准则:

本学生选课系统的人机交互子系统在根据不同的用户身份登陆到不同的页面,然后按照不同的用户只能进行用户权限内的操作,其结构图如下:

②通过采用树形结构,细化命令的组织方式,如下:

4. 详细设计

学生选课系统是实现学生网上选课、教师提交成绩以及学校教务管理员维护信息的一个平台,整个学生选课系统共分为4个大模块:管理员模块,教师模块,学生模块和公有模块,其中复杂的方法和模块的详细设计流程图如下。

4.1系统用户登录流程图

'.

主界面 用户界面 主界面 用户界面 查询 购物车 .

开始 输入用户名、密码

4.2 用户密码修改流程图'.

验证用户名、密码 否 验证正确 提示用户登录失败 是 进入相应的用户页面 安全退出系统 结束 图4-1 系统用户登录流程图

.

开始 输入用户旧密码、新密码 验证用户密码是否合法 否 是否合法? 是 修改用户密码 输入不合法,重新输入 提示修改成功 结束 图4-2 用户密码修改流程图

购物车模块

5. 系统实现

本系统采用了三层架构来实现,即分为用户界面层(UI)、业务逻辑层(BLL)和数据访问层(DAL),用户界面层是展示给用户的界面,方便用户与系统进行交互;业务逻辑层是对系统业务实体的封装,完成系统业务功能;数据访问层直接与数据库打交道,为业务逻辑层提供底层的数据库操作。

5.1数据库,代码如下: 5.2购物车代码如下:

<%@ Page Title=\"\" Language=\"C#\" MasterPageFile=\"~/Bookshop.master\" %>

ConnectionString=\"<%$ ConnectionStrings:BooksDBConnectionString %>\" DeleteCommand=\"DELETE FROM [ShoppingCart] WHERE [RecordID] = @RecordID\" onselected=\"SqlDataSource1_Selected\"

SelectCommand=\"SELECT ShoppingCart.RecordID, ShoppingCart.CartID, ShoppingCart.Quantity, ShoppingCart. BookID, ShoppingCart.DateCreated, Books.Bookname, Books.Author, Books.UnitCost,

Books.UnitCost * ShoppingCart.Quantity as Amount FROM ShoppingCart INNER JOIN Books ON ShoppingCart.BookID = Books.BookID WHERE (ShoppingCart.CartID = @CartID)\"

UpdateCommand=\"UPDATE [ShoppingCart] SET [Quantity] = @Quantity WHERE [RecordID] = @RecordID\">

'.

.

5.3 系统登录页面,代码及运行效果如下:

<%@ Page Language=\"C#\" %>

'.

.

5.4用户注册界面

<%@ Page Language=\"C#\" %>

EmailRegularExpression=\"\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*\"

BackColor=\"#EFF3FB\" BorderColor=\"#B5C7DE\" BorderStyle=\"Solid\" BorderWidth=\"1px\" Font-Names=\"Verdana\" Font-Size=\"0.8em\">

'.

.

5.4 flash .title、logo、banner、footer运行效果图如下:

'.

.

图5-2 学生选课界面

5.5导航栏,该导航栏可以有一级、二级或多级,可以是静态的,或响应鼠标事件动态展开的导航栏运行效果如下:

图5-3 教师用户提交成绩界面

5.6首页上自行设计栏目板块,例如:www.ynnu.edu.cn首页中的“校园新闻”、“媒体师大”等运行效果如下:

'.

.

6. 系统测试

在系统测试中,我们首先对各个子模块进行单元测试,即把每一个模块作为一个单独的实体来测试,保证每个模块作为一个单元能正确运行。然后在完成所有模块后,我们将各子模块集成起来,再对它进行系统测试,找出系统设计或编码上的错误,以及验证系统是否实现了指定的功能。最后找几个其他的同学再对系统进行黑盒子测试,验证系统是否满足用户的功能需求。

在测试的过程,特别是在集成测试之后,发现了许多问题及功能缺陷,最后经过修改调试后都解决了。比如,有一个问题是,在删除教师用户之后,系统里还剩有许多与该教师有关的冗余记录,造成系统混乱。在进行了分析之后,发现是因为在删除教师用户时,没有对与他所关联的记录进行删除造成的,在添加了对其关联记录的级联删除之后,问题得到了解决。

三、课程设计总结或结论

1. 通过这次软件工程课程设计的实践训练,进一步掌握软件工程的方法和技术,提高软件开发的

实际能力,培养工程设计能力和综合分析、解决问题的能力。 1.1 1.2 1.3 1.4

学习和实践了分析和设计软件系统的各种知识,包括面向对象的系统分析与设计,编码和测试方面的知识。

掌握了自动化的软件开发工具Rational Rose 2003,并将其运用于软件开发的全过程。 加深掌握了.Net平台的三层架构模式设计。 进一步加强和提高软件工程文档的编写能力。

2. 本系统基本实现了关键的功能模块,在功能上基本满足了用户的需求,但是由于时间较紧,有

些模块以及整个系统还有许多不完善的地方,如界面不太美观,操作性不太友好等。

四、参考文献

[1] 张海藩.软件工程导论(第6 版).北京:清华大学出版社,2005 [2] 刁成嘉.UML系统建模与分析设计.北京:机械工业出版社,2013

[3] 江红 ASP.NET动态网页案例教程(C#.NET版)- -北京:电子工业出版社,2008

'.

因篇幅问题不能全部显示,请点此查看更多更全内容