APP下载

数码产品在线销售系统开发研究

2015-05-08康鉴

电脑知识与技术 2015年7期
关键词:数码产品设计

康鉴

摘要:该文主要阐述数码产,针对数码产品在线销售系统的实际需求,采用面向对象设计的方法和JSP, SQL Server2008等技术,分析、设计并实现了数码产品的在线销售。该系统具有网站前台和后台,前台包括公司首页、新闻、关于我们、企业介绍、荣誉证书、产品展示、用户留言、产品搜索和联系方式等功能。后台包括产品管理、用户管理、留言管理、新闻管理、订单管理、修改密码、系统管理等功能,测试表明该系统基本达到了预期的要求。

关键词:数码产品;在线销售系统;设计

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2015)07-0111-04

Abstract: This article focuses on digital production, the actual demand for digital products online sales system, the use of object-oriented design methods and JSP, SQL Server2008 technology, analysis, design and implementation of online sales of digital products. The system has a website foreground and background, foreground, including Home, News, About Us, business description, honorary certificates, products, user messages, product search and contact functions. Background, including product management, user management, message management, information management, order management, change passwords, system management functions, tests show that the system has basically reached theexpected requirements.

Key words: digital products; online sales system; design

随着科学技术的不断发展,网络已经渗透到人们生活工作中的每一个角落,当前网络已经成为继报刊、电视后的另一种新型传播媒介,极大地改变了人们的生活方式,随着宣传手段的多样化发展,各类网站不断涌现,如为宣传企业而制作的公司网站、可进行网上购物的电子商务网站、能及时了解到天下事的新闻网站、方便学习的教育网站,还有学校、团体、个人等等各个大小的网站,充斥着我们的视野,满足着我们的需要,本文主要分析数码产品在线销售系统开发。

1 开发环境及相关技术介绍

1.1 JSP技术简介

JSP 中文名为java服务器页面(全名Java Server Page),是一种简化的Servier设计,是在1999年Sun公司推出的一种技术标准,与ASP技术比较类似,开发的应用能够在多种操作系统上运行,是一种安全性较高的先进动态网站。

JSP可以在Servlet和JavaBeans/EJB/CORBA/JNDI等的支持下,构建功能强大的信息服务应用平台。它的最大特点是将内容的生成和显示进行分离,开发人员能够使用XML标识或者是HTML来设计页面,并使用小脚本来生成动态页面,可重用组间,几乎适合所用支持Japa平台,语言能够实现依稀编写,具有强大的可伸缩性,开发工具多样化,支持服务器组间。JSP工作原理是在网页HTML文件中增加脚本,在遇到请求时,执行脚本片段将传给客户,程序片段能够重新定向页面。在服务器端执行所有的操作程序,客户端只能得到结果,客户浏览器要求比较低,目前JSP搅拌语言为Java程序代码。

1.2 JSP的基础——Servlet技术

Java Servlet最初是服务于综合开发环境下的Java软件部分,当前已经扩展为Java web标准部件,是JSP基础的基础,JSP技术在应用中先被编写为Servlet才能进行运行,Servlet是Java编程语言的一个类,主要扩展服务器性能,JAva Servlet为应用程度定义Servlet类, 很多大型Web应用程度的开发都需要依照Java Servlet和JSP配合。Servlet与传统的程序开发工具类似,如ISAPI、NSAPI等,采用Servlet后可以舍弃CGI方式,提高效率。由于Servlet内部提供服务采用线程方式,一个线程机制能够同时服务于多个请求,因此工作效率比较高,无需在固定的Web服务器平台上运行。由于Java具有跨平台的特点,因此Servlet也具有这个特点,与Web服务器无关。

1.3 JavaBean 特点与结构特征

JavaBean 又可以写成JavaBean,属于Java语言写成的可重用组件,构造器无参数,一个JavaBean 由属性、方法和事件组成,范围属于具有生命时间的变量,应用于多个页面和时间段,在应用中一般服务于服务器的部分,具有能够重复使用、方便维护以及易使用的优点,能够在任何平台上支持Java工作,无需重新编写,最大的优点在于能够实现一次编写多次使用,可以在任何Java虚拟机运行。在代码方面,代码容易编写。在开发中必须在应用程序构造器工具中运行,分布在各个环境中,虽然无法预知具体的环境,但是JavaBean必须在生产的应用程序中使用,标准的JavaBean具有构造函数以及类型,在实践中大多数的应用程序的逻辑不都需要在JavaBean才能实现,提高应用程序的可重用性。

2 需求分析

2.1 系统描述

2.1.1 系统的信息处理需求

如今网上购物是一种时尚更是一种生活方式,其中数码产品占有很大的份额。因此对于数码产品在线销售系统的开发具有重要的意义和巨大的经济价值。本系统针对数码产品的网上订购,对普通用户的信息、产品的信息、留言信息、订单管理信息、最新新闻信息进行有效的管理,在产品分类上有大类产品、小类产品和具体产品信息,在订单管理上更加人性化,还有最新新闻信息的随时更新等等,这些内容都使用户更加方便快捷的在网上购买符合自己要求的数码产品。管理员可以根据自己的需求选择相应的选项对用户信息、留言信息、产品信息、订单信息等信息进行管理。

2.1.2 系统功能分析

数码产品在线销售系统是为了方便在线购物的管理系统,为用户提供充足的信息和快捷的查询手段,方便用户在本系统上了解企业网上商城方面的信息,同时订购商品。该系统的开发主要包括前端应用程序和后台数据库两方面。前端应用程序力求做到界面美观大方,简单易用;后台数据库则力求一致性、完整性和安全性等各方面均满足要求,可以进行各种数据的查询和统计。前台功能主要包括:公司首页、新闻、企业介绍、荣誉证书、产品展示和搜索以及关于公司的联系方式等;后台功能主要包括:产品管理、用户管理、订单管理、新闻管理以及留言管理等信息的数据库的更新和存储。此外,管理员还需随时更新最新产品的新闻信息和回复用户的留言信息。

2.1.3 性能要求

本系统在性能方面要达到以下要求:

在设计中,将用户分为管理员和普通用户,本系统能够及时响应所有用户的有关操作并完成相关功能。用户在客户端发出登陆请求信息,服务器端核实用户的身份,在用户完成身份验证后,可以向用户提供相关的操作以及信息等,用户根据自己的需求选择命令并执行,然后将信息传递给客户端,客户端判断并处理,然后执行操作。用户修改信息后,信息能及时录入并保存在数据库中,查询也能在发出请求后及时返回结果。

在系统的安全保密方面,管理员可以对系统的用户信息、产品信息、留言信息、订单信息等信息进行管理,并且及时更新信息。本系统通过不同的管理员编号和普通用户编号区分不同的用户,管理员和普通用户都必须登录后才能进行相应的操作,否则被认为是不合法操作。

2.2 系统建模

2.2.1 功能建模

系统的功能用数据流图来表示,描述输入数据流到输出数据流的变换(加工)。

数据流程是指系统中数据从生产到输出的过程。在计算机系统中输入采集的信息原始数据,然后依照用户的续期加工处理数据或者是直接统计运算输出结果,输出的数据舍弃了具体的处理工具以及组织机构等,一般反应客观事物的特征。

描述数据流程的工具是数据流图以及其附带的数据字典、处理逻辑等图表。其中数据流图是描述系统逻辑模型的主要工具,它以少数几种符号综合地反映出信息在系统中的流动、存储和传递。

3 概要设计

3.1 系统结构设计

结构化设计要满足系统功能需求。模块化是将整体软件划分成独立命名且可独立访问的模块,不同的模块通常具有不同的功能或职责。每个模块可独立地开发、测试,最后完成组装完成的软件。

设计软件的体系结构需要在对需求分析阶段生产的数据流图进一步分析和精化的基础上,首先将系统按照功能划分为模块,接着需要确定模块之间的调用关系及其接口,最后还应对划分的结构进行优化和调整。良好的软件结构设计对详细设计及编码阶段的工作都是至关重要的。

3.2 数据库逻辑设计

管理员(管理员编号,用户名,密码,用户编号,产品编号,新闻编号,订单编号,留言编号)

用户(用户编号,用户名,密码,qq,公司,邮箱,地址,电话,邮编)

产品(产品编号,名称,规格,价格,成分,产地,生产日期,保质期)

新闻(新闻编号,标题,内容,时间)

订单(订单编号,用户编号,数量,单价,总价,日期,产品编号,用户编号)

留言(留言编号,内容,留言用户,时间,用户编号)

4 详细设计

通过程序流程图的方式对模块的执行过程进行描述,可以提高程序设计的逻辑性,方便后续的详细设计和编码部分的操作,以下是对部分模块的程序流程描述和举例。

4.1 模块程序流程描述

4.1.1 登录模块

登录界面对于整个系统来说是非常重要的,因为它设置了进入本系统的用户和口令,防止非法用户进入系统,破坏系统安全和所保存的数据,只有合法的用户在输入正确的密码后方可进入系统,否则将提示密码或用户名输入错误,并询问用户是否重新输入。

登录功能流程说明:

1) 用户在登录页面输入登录信息。

2) 在页面用JavaScript对用户输入数据格式和有效性进行检查。

3) 在数据库中判断是否存在某一列满足用户名和密码为用户输入的数据,存在则通过。

4) 将用户基本信息保存在session对象中。

4.1.2 用户管理模块

管理员登录本系统后,可以管理用户信息,可以添加用户信息,删除用户信息,也可以查询用户信息。查询功能的实现可以用任何关键字进行查询,修改和删除要选择特定的行才能实现,否则会提示:选择要修改或删除的行。

4.2模块详细设计

4.2.1 用户管理

5 系统测试与分析

软件测试是保证软件质量的关键,它是对需求分析设计和编码的最后复审。在软件生命周期的每个阶段,都不可避免地会产生错误,通常在编写出每个程序后,都要对它进行必要的测试。

5.1 软件测试概述

软件测试就是一种用来鉴定软件的过程,也就是比较实际输出和预期输出之间差异的过程,帮助识别开发完整的软件正确度、质量等,是SQA重要子域,重在发现一些可以避免的开发风险、降低所发现的风险。

测试的目的在于将软件设计时设计者与程序开发者之间理解不一致的地方,功能与需求不一致的地方,不符合逻辑思维的情况由开发人员进行修改和补充。

在整个开发过程中是按照如下原则完成测试工作的:

1)尽早地并不断地进行软件测试。

2)开发者应尽量避免对自己设计的软件进行测试。

3)测试用例中不仅要输入数据,还要有与其对应的预期结果。

4)测试用例的设计同时包括合法的和非法的输入数据。

5)在对程序修改之后要进行回归测试。

6)程序中尚未发现的错误的数量通常与改程序中已发现的错误数量成正比。

7)妥善保留测试计划,全部测试用例、出错统计和最终分析报告,并把它们作为软件组成的一部分,为维护提供方便。

8)应当对每一个测试结果做全面检查。

9)严格执行测试计划,排除测试的随意性。

5.2 软件测试步骤分析

软件测试包括狭义论和广义论,狭义论认为软件测试就是为发现错误而执行程序的过程,在这里采用广义上的软件测试,软件测试包括分析、设计和编码等部分,共同构成全过程的软件测试,以保证软件质量。对于本系统的测试步骤具体如下:

1) 单元测试:单元测试主要对模块的4个基本特性进行评价,如表1所示:

6 结束语

在进行本系统分析和设计时,我运用软件工程课程中学习的软件开发流程,进行了需求分析,经过了需求获取、需求分析、需求定义和需求验证的过程,初步确定了数码产品在线销售系统的雏形,然后通过概要设计和详细设计完成了对系统的整体设计,期间也伴随着测试方案的制定,及时修正模块中的问题。通过编码和最后的系统测试完成了数码产品在线销售系统的设计。

数码产品在线销售系统实现了用户的管理、订单的管理、新闻的管理、留言的管理和对对系统的管理等功能。具有在线订购产品的基本功能,如果应用于实际生活中,还需要增加一些功能。

由于时间和个人水平的限制,数码产品在线销售系统还存在着一些不足,如数据库的定时备份,对截图删除时进行物理删除,还有用户密码存储于数据库中应进行加密的问题,系统测试也不是很完善,以后我会考虑并改进这些问题。

参考文献:

[1] 施平安.Java程序设计教程[M].北京:清华大学出版社,2004.

[2] 陈雄峰.实用软件工程教程[M].北京:机械工业出版社,2009.

[3] 飞思科技产品研发.JSP应用开发详解(2版)[M].北京:电子工业出版社,2000.

[4] 阮文江.Javascript程序设计基础教程[M].北京:人民邮电出版社,2004.

猜你喜欢

数码产品设计
何为设计的守护之道?
对小型智能数码产品IPX9防护等级的研究
瞒天过海——仿生设计萌到家
旅途不设“线”
设计秀
有种设计叫而专
设计之味
黑·白·灰