- 4.19 MB
- 2022-05-16 18:34:54 发布
- 1、本文档共5页,可阅读全部内容。
- 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
- 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
- 文档侵权举报电话:19940600175。
超市仓库管理信息系统设计与实现目录1绪论11.1课题背景及意义11.2系统设计的意义11.3任务概述21.3.1项目目标21.3.2项目范围21.4系统开发环境21.4.1B/S结构21.4.2ASP.NET21.4.3SQLServer2008数据库32需求分析42.1系统目标42.2系统功能描述42.2.1功能需求分析42.2.2性能需求分析52.3系统数据流图52.3.1数据流图52.3.2二层数据流图52.3.3三层数据流图62.3.4四层数据流图92.3.5数据字典113总体设计133.1系统概述133.2系统模块结构133.3数据库设计163.3.1概念结构设计163.3.2逻辑结构设计194详细设计204.1数据库设计204.2系统功能实现225编码与实现265.1管理员登录265.2系统自动报警295.3其他功能32
5.3.1商品管理325.3.2出库入库管理335.3.3盘存管理、系统管理和用户管理346系统测试356.1测试的种类356.2测试细节35结论37参考文献38翻译部分39英文原文39中文译文46致谢52
摘要当今社会,超市已经成为了人们生活中必不可少的组成部分。不仅仅是销售工作,超市的仓库管理工作对超市而言也是十分重要的。传统的超市仓库管理是采用人工管理的方法,管理员按照自己的一套方法来记录商品信息,比如存放位置、库存情况等等。这种管理方式效率低下,而且管理员劳动强度大,十分不便。随着计算机技术的日益普及,开发一款高效的基于B/S模式的现代超市仓库管理系统显得十分必要。本文详细介绍了使用ASP.NET和SQLServer2008数据库对超市仓库管理系统进行设计与实现的过程。本次超市仓库管理系统的开发运用传统的面向过程软件分析和设计思想,开发工具借助ASP.NET+SQLServer2008,系统功能主要包括以下几个方面:商品信息管理,商品入库管理,商品出库管理,商品盘存管理,系统管理,用户管理,系统自动报警。系统自动报警是针对超市仓库管理设计的一项功能,当商品库存低于库存下限时,系统自动报警功能被触发,第一时间通知管理员获取信息,防止商品出现缺货。关键词:仓库管理;B/S模式;ASP.NET
ABSTRACTIntoday"ssociety,thesupermarkethasbecomeanintegralpartofpeople"slives.Notonlysales,thesupermarketwarehousemanagementisalsoveryimportant.Traditionalsupermarketwarehousemanagementismanualmanagement,theadministratorinaccordancewithitsownsetofmethodstorecordproductinformation,suchasstoragelocation,inventory,andsoon.Thismanagementmethodisinefficientandlabor-intensive,andisveryinconvenient.Withthegrowingpopularityofcomputertechnology,itisverynecessarytodevelopahighlyefficientsupermarketmodernwarehousemanagementsystembasedonB/Smode.ThispaperdescribestheuseofASP.NETandSQLServer2008databasethesupermarketwarehousemanagementprocess.ThesupermarketWarehouseManagementSystemwasdevelopedbyusingthetraditionalsoftwareanalysisanddesignmethod,developingtoolsusingASP.NET+SQLServer2008,systemfunctionsmainlyincludethefollowingaspects:productinformationmanagement,productstoragemanagement,theproductoutofdatabasemanagement,inventorymanagement,systemmanagement,usermanagement,automaticalarmsystem.Theautomaticalarmsystemisafeaturedesignedforsupermarketwarehousemanagement.Whenthestockofmerchandiseinventoryislowerthanthelowerlimit,thesystemautomaticalarmfunctionistriggered,thefirsttimetonotifytheadministrator,topreventmerchandiseoutofstock.Keywords:WarehouseManagement;B/Smode;ASP.NET
1绪论1.1课题背景及意义随着经济的不断发展,人们生活水平得到了提高,当今社会,超市已经遍布几乎所有大大小小的城市,成为了人们生活中必不可少的一部分。超市为人们提供了一个轻松方便的购物场所,因此深受大家喜欢。为了最大限度满足顾客的购物需求,超市商品的种类越来越繁多,越来越多样化。随之而来的就是商品数量的日渐增多。这样满足了顾客需求,可是也为超市仓库的管理带来了压力。传统的超市仓库管理是采用人工管理的方法,管理员按照自己的一套方法来记录商品信息,比如存放位置、库存情况等等。随着商品信息越来越多,给管理员的管理带来了很多麻烦,比如查询商品困难等。这种方法已经逐渐显出不足,不仅仅管理效率低,而且管理员劳动强度越来越大,当超市仓库管理员更换时,新的管理员并不是很了解商品信息和摆放情况,会在以后的工作中遇到更多麻烦,甚至会造成超市销售业绩下滑。另外这种管理方法并不能让管理员第一时间得知库存不足的商品,而是需要管理员自己去查询哪些商品库存不足需要采购补货,这就有可能造成商品真空期,影响销售。因此,开发一个高效的针对超市仓库进行管理的系统迫在眉睫。超市仓库信息管理系统通过计算机对超市仓库进行管理,商品信息存储在系统之中,即使仓库管理员更换,新管理员依然可以方便的通过系统获知商品信息,通过系统对商品进行查询等,而且当商品库存不足时,系统有自动报警功能,通知管理员查看,管理员可以打印需要补货的商品,送达采购部门,以便采购部门及时补货,避免商品真空期。1.2系统设计的意义超市仓库信息管理系统旨在提供一种比传统人工管理更高效的管理方式,借助系统自身的灵活性和便捷性,在超市仓库管理中提高管理效率,降低管理员工作强度,节省超市仓库管理环节的人力物力,降低超市运营成本。系统通过管理员录入商品信息来对商品信息进行记录存储,随便管理员怎样更换,进入系统后商品信息一目了然。而且管理员可以随时查询某一商品信息。系统同时可以对商品的出库入库进行记录,并对库存情况及时更新。当某商品库存量低于库存下限时,系统自身的自动报警功能可以及时通知管理员,从而有效避免了商品真空期的出现。同样管理员可以查询滞销退货的商品,及时获取滞销商品信息,采取相应措施,减少超市损失。与传统人工管理方式相比,该系统在管理效率方面有了提高,而且其自动报警功能能够避免商品缺货情况的出现,使得超市仓库的管理更便捷更精准。
1.3任务概述1.3.1项目目标通过对某超市的调研,了解仓库管理员的日常工作,包括其工作内容和工作流程,以此确定系统的在功能上的需求和性能方面的需求,该仓库管理系统旨在提供一种比传统人工管理更高效的管理方式,借助系统自身的灵活性和便捷性,在超市仓库管理中提高管理效率,降低管理员工作强度,节省超市仓库管理环节的人力物力,降低超市运营成本。从安全角度考虑,该系统不支持自主注册,只有一个管理员帐号供管理员使用,没有其他用户,管理员可以对新商品建档和管理,可以对商品进行入库管理以及出库管理,可以进行商品盘存,当商品库存低于限度时系统会自动报警提示补货。管理员还可以对收货单位、供货单位等进行管理,如果有必要还可以修改账号登录密码。1.3.2项目范围根据超市仓库管理工作内容,该系统主要实现商品管理、入库管理、出库管理、盘存管理、系统管理、用户管理等。入库管理可以对正常商品采购入库和商家退货入库进行管理。系统在入库和出库操作时及时对库存量进行更新,当库存低于下限时会自动进行报警,可以有效避免商品出现真空期,避免给超市带来损失。系统运用ASP.NET技术进行开发,数据库采用SQLServer,为超市提供一个便捷、灵活、安全、高效的仓库管理系统,降低了管理员工作强度,减少了超市在仓库管理方面的投入成本,从另一种意义上说使得超市有更多精力投入到运营销售方面,增加了超市利润。1.4系统开发环境1.4.1B/S结构B/S结构(Browser/Server,浏览器/服务器模式),与C/S结构不同,其客户端不需要安装专门的软件,只需要浏览器即可。浏览器通过WEB服务器与数据库进行交互,可以方便的在不同平台下进行工作。服务器端可采用高性能计算机,并安装Oracle、Sybase、Informix等大型数据库。B/S结构简化了客户端的工作,它是随着Internet技术兴起而产生的,是对C/S技术的改进,但该结构下服务器的工作较重,对服务器的性能要求更高。1.4.2ASP.NETASP.NET是Microsoft公司推出的新一代建立动态Web应用程序的开发平台,是一种建立动态Web应用程序的新技术。ASP.NET是Microsoft.NET的一部分,是ActiveServer
Page(简称ASP)的另一个版本。ASP.NET的语法在很大程度上与ASP兼容,同时还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。ASP.NET是一个已编译的、基于.NET的环境,可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和Jscript.NET)创建应用程序。另外,任何ASP.NET应用程序都可以使用整个.NETFramework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全和继承等。Microsoft公司为ASP.NET设计了功能强大的代码,代码易于重用和共享,可用编译类语言编写策略,从而使程序员更容易开发Web应用程序,满足不同客户的需求。ASP.NET有很多优点,它为Web应用程序提供了默认的授权和身份验证方案,有较高的安全性。同时用ASP.NET开发的Web应用程序易于部署。另外ASP.NET与现有ASP应用程序有很好的兼容性,不会因为安装ASP.NET而导致现有ASP应用程序崩溃[1]。1.4.3SQLServer2008数据库SQLServer2008是微软推出的数据库软件产品,也是至今为止最强大最全面的SQLServer版本。2008代表其版本系列号,Server是服务器的意思,表明SQLServer2008在计算机网络中是一台提供数据服务的服务器。SQL(StructuredQueryLanguage)译为结构化查询语言,是各种关系数据库所采用的标准语言。相比以前的版本,SQLServer2008在很多方面做了改进,增加了很多新的功能,比之前的任何版本更安全、更高效、更智能。
2需求分析需求分析主要是为了弄明白用户需要计算机来做什么、完成什么任务,该阶段由系统分析员按照自己对问题的理解,对系统的目标和系统的范围进行说明,从用户的视角对需求进行分析和定义,把系统需求准确地表达出来,主要包括系统的功能需求、性能需求、环境约束和外部接口描述等。要做好该阶段的工作,需要系统分析员和用户之间有良好的配合交流。2.1系统目标根据对实际情况的调研分析和客户方提出的需求,本系统应具有如下特点:(1)页面以简洁为主,注重可操作性。(2)从安全性考虑,系统不支持用户自主注册,并增加验证码防止暴力破解。(3)支持对新商品进行建档,存储该商品全面信息。(4)支持出库入库管理,入库包括正常的采购入库和商家退货入库。(5)提供查询功能,可以查询商品信息。(6)当出现库存低于下限的商品时,系统自动弹出报警窗口,第一时间告知管理员。(7)管理员接到报警查看低限商品并可以打印商品列表送交采购部门及时补货。2.2系统功能描述2.2.1功能需求分析(1)管理员登录模块包括对管理员的用户名密码进行匹配性验证,以及登录验证码,防止暴力破解登录。(2)商品管理模块能够对新商品进行建档,管理员可以查看所有已建档商品信息并可以修改或删除。(3)入库管理模块包括正常的采购入库和商品退货入库。管理员可以进行入库登记,可以修改或删除入库记录,也可以按照时间段进行入库情况统计。(4)出库管理模块管理员可以查看所有出库信息,可以进行出库登记,可以修改或删除出库记录。可以按时间段进行统计查询。(5)盘存管理管理员可以查看所有在存商品的库存情况。可以进行商品查询,可以按名称查询单一商品,也可以按种类查询某一种类商品。还可以查询滞销退货信息。(6)系统管理包括供货单位管理、收货单位管理、商品种类管理、经手人管理等。
(7)用户管理主要提供用户修改密码的功能。(8)其他系统要具备自动报警功能。当商品库存不足时能够自动报警第一时间告知管理员。同时要具备报表模块,管理员可以打印缺货名单和滞销商品名单。2.2.2性能需求分析(1)安全性系统应具备管理员登录验证和灵活的密码修改功能,确保系统有较高的安全性。(2)稳定性系统要具备持续正常运行的能力,尽量避免系统运行过程中崩溃或引起计算机死机。(3)灵活性系统应具有较高的灵活性,避免重复操作,修改信息时自动绑定并显示要修改的信息,可以直接进行修改。2.3系统数据流图本系统采用结构化分析与设计方法,建立结构化分析模型来对系统模型进行描述。2.3.1数据流图通过对系统的分析,系统只有单一用户即管理员,把整个仓库管理视为一个大的加工,由此得到系统的顶层数据流图,如图2-1所示。图2-1顶层DFD图系统的用户就是仓库管理员,管理员的一切工作都需要登录系统之后才能进行。管理员负责对仓库商品的管理,对日常的商品入库出库进行登记管理。2.3.2二层数据流图对顶层数据流图进行分解扩展,得到二层数据流图,如图2-2所示。
商品管理模块中,管理员可以从商品表中读取所有商品信息,对新商品进行建档,写入商品表。在入库管理中,管理员根据入库单进行操作,把入库信息写入入库表,亦可以读取入库信息。在出库管理中,管理员同样根据出库单进行操作,把出库商品写入出库表,亦可以从出库表获取出库信息。同时出库入库会造成库存量变化,需要修改商品信息表中的库存。在盘存管理中,管理员能够获取商品的当前信息,包括库存量等。该模块同时包括商品查询功能,管理员可以查询某一商品信息。此外系统还有用户管理模块和系统管理模块,方便对用户信息和系统信息进行管理。图2-2二层DFD图2.3.3三层数据流图对二层数据流图中的加工进行进一步的细分,得出各个加工的三层数据流图。(1)商品管理商品管理子系统的数据流图如图2-3所示。图2-3商品管理子系统DFD图当管理员对商品建档时,系统先判断商品是否是新商品,如果不是则不能重复建档,否则可以进行建档,将商品信息写入商品表中。管理员可以对商品表中的商品信息进行修改并保存在商品表中。亦可以对商品信息进行删除。(2)入库管理
入库管理子系统的数据流图如图2-4所示。图2-4入库管理子系统DFD图管理员能够获取入库表中所有入库信息,并且能够统计选定时间段内的入库情况。当管理员发现某一入库信息需要更正时,可以选中该信息对该信息进行修改,亦可以删除该入库信息。无论是正常的采购入库还是退货入库,都会对商品的库存造成影响,因此需要修改商品信息表中的库存量以保证数据的正确性。(3)出库管理出库管理子系统的数据流图如图2-5所示。
图2-5出库管理子系统DFD图管理员可以查看所有出库记录,并且可以对其中的错误的记录进行修改或者删除操作。进行出库操作后商品库存量减少,因此需要及时对商品信息表中的商品库存进行修改以保证数据正确无误。管理员可以统计某一段时间段内的出库情况并进行相应分析。(4)盘存管理盘存管理子系统的数据流图如图2-6所示。图2-6盘存管理子系统DFD图管理员可以查看所有商品的盘存信息,也可以按照查询条件查询相应商品的盘存信息。比如按照名称查询某一商品,也可以按照种类查询某一种类商品。同时对于商家退货的商品,管理员可以进行查询,以便获取这些商品信息并对这些商品进行进一步处理工作。(5)系统管理系统管理子系统的数据流图如图2-7所示。
图2-7系统管理子系统DFD图系统管理子系统包括四个子系统,种类管理、收货单位管理、供货单位管理、经手人管理。所包括的四个加工都是一个更小的系统,都可以继续进行细分,因此需要画第四层数据流图加以描述。(6)用户管理用户管理子系统的数据流图如图2-8所示。图2-8用户管理子系统DFD图为了安全性,管理员修改密码之前需要输入旧密码进行验证,输入错误则不能进行修改,输入正确才能够继续进行。通过密码验证后,进一步对输入的新密码的有效性进行验证。如果两次输入的新密码不一致,则视为无效密码,不能写入表中。如果两次输入一致但与旧密码相同,也视为无效密码,不予修改。只有两次输入一致且不与旧密码相同才视为有效新密码并进行修改写入表中。
2.3.4四层数据流图对系统管理子系统的每个加工进行细分又可以得到四层数据流图。(1)商品种类管理商品种类管理子系统的数据流图如图2-9所示。图2-9商品种类管理子系统DFD图管理员可以从表中获取商品种类的信息。可以添加种类,可以进行删除或者修改操作。(2)收货单位管理收货单位管理子系统的数据流图如图2-10所示。图2-10收货单位管理子系统DFD图管理员可以从表中获取收货单位信息,可以添加收货单位,可以进行删除或修改操作。(3)供货单位管理供货单位管理子系统的数据流图,如图2-11所示。
图2-11供货单位子系统DFD图管理员可以从表中获取供货单位信息,可以添加供货单位,可以进行删除或修改操作。(4)经手人管理经手人管理子系统的数据流图如图2-12所示。图2-12经手人管理子系统DFD图管理员可以从表中获取经手人信息,可以添加经手人,可以进行删除或修改操作。2.3.5数据字典数据字典的作用是对软件中的每个数据规定一个定义条目。下面列举本系统中的字典条目:名称:商品信息描述:描述商品的详细信息来源:原始数据去处:商品信息表组成:商品ID+商品名称+商品种类+商品单位+库存位置+下限+上限+当前库存名称:入库信息描述:描述商品入库信息来源:原始数据去处:入库信息表组成:入库编号+入库时间+商品名称+商品种类+商品单位+入库数量+入库单价+入库总价+备注
名称:出库信息描述:描述商品出库信息来源:原始数据去处:出库信息表组成:出库编号+出库时间+商品名称+商品种类+商品单位+出库数量+出库单价+出库总价名称:商品种类信息描述:描述商品种类信息来源:原始数据去处:商品种类表组成:种类编号+种类名称+父类编号名称:供货单位信息描述:描述供货单位的详细信息来源:原始数据去处:供货单位表组成:供货单位编号+名称+地址+联系电话+联系人名称:收货单位信息描述:描述收货单位的详细信息来源:原始数据去处:收货单位表组成:收货单位编号+名称+地址+联系电话+联系人名称:经手人信息描述:描述经手人的详细信息来源:原始数据去处:经手人表组成:编号+姓名+联系方式名称:用户信息描述:记录用户的账号密码来源:原始数据去处:用户信息表组成:用户编号+用户名+密码
3总体设计系统总体设计又称为概要设计,主要包括系统模块结构设计、数据库设计和文件设计等内容。该阶段采用自顶向下的原则,首先设计总体结构,然后向下逐步细分,直至进行完每一个子模块的设计。3.1系统概述考虑到如今的Internet时代,用浏览器在网上浏览信息已经非常普遍,同时考虑到B/S系统的免安装特性及自身优点,本系统采用B/S模式进行设计。系统基于ASP.NET,数据库采用SQLServer2008。
3.2系统模块结构根据对超市仓库管理的考察调研,结合客户的功能需求,得到超市仓库信息管理系统的总体模块结构,如图3-1所示。从图中可以清楚看到超市仓库管理系统包括管理员登录、商品管理、入库管理、出库管理、盘存管理、系统管理、用户管理、系统自动报警几大模块。每个模块又包括若干更小的模块。接下来对这些模块进行详细的描述。(1)管理员登录模块该模块具备用户名密码识别功能和验证码功能。首先对验证码进行验证。如果输入的验证码不正确,则会弹出提示框提示验证码输入错误并终止后续验证。验证码验证成功才进一步对输入的用户名密码组合进行验证。如果用户名与数据表中的用户名不一致,则弹出提示框提示用户名不存在。否则继续验证密码是否正确,正确则成功进入系统,错误则弹出密码错误信息框,如图3-2所示。(2)商品管理模块商品管理模块主要实现对商品信息的管理,包括添加、删除、修改等操作,如图3-3所示。在该模块实现的功能中,管理员可以读取所有商品信息,每条商品信息后面都有修改和删除链接,管理员可以选中其中任意一条点击修改或删除进行相关操作。
图3-1系统总体模块结构图图3-2管理员登录模块
图3-3商品管理模块(3)入库管理模块入库管理模块主要实现对入库信息的管理,包括添加、删除、修改等,同时具备按时间段查询功能,如图3-4所示。图3-4入库管理模块管理员可以选中某一条入库记录进行修改或删除,还可以查询任意时间段内的入库记录,只需要在日期中选择开始日期和截止日期,点击查询即可。(4)出库管理模块出库管理主要实现对出库信息的管理,包括添加、删除、修改等,同时具备按时间段查询功能,如图3-5所示。该模块和入库管理模块类似,管理员可以对任一出库记录进行修改或删除操作,并能输入开始日期和截止日期进行某一时间段内的出库统计。图3-5出库管理模块(5)盘存管理模块在盘存管理中管理员可以获取商品的库存剩余量,并且可以查询某一条件商品的盘存情况,如图3-6所示。
图3-6商品盘存模块(6)系统管理模块系统管理包括商品种类管理、供货单位管理、收货单位管理、经手人管理等。主要实现信息的添加、删除、修改等操作,如图3-7所示。图3-7系统管理模块(7)用户管理模块用户管理模块主要实现对密码的修改功能。3.3数据库设计本系统采用SQLServer2008数据库进行数据存储。在数据库中定义系统中涉及到的各种信息表并存储相应数据,在系统运行过程中数据库担当着和系统进行数据交互的任务,对系统数据进行及时的读和写,因此数据库是否稳定直接决定着所开发的系统的稳定性。数据库中表的结构的设计也因此显得十分重要。3.3.1概念结构设计通过前面对系统的分析,我们可以规划出来以下实体:商品信息实体、入库信息实体、出库信息实体、管理员实体、供货单位实体、收货单位实体、经手人实体、商品种类实体。下面给出各个实体对应的E-R图。(1)商品信息实体如图3-8所示。
图3-8商品信息E-R图(2)入库信息实体如图3-9所示。图3-9入库信息E-R图(3)出库信息实体如图3-10所示。图3-10出库信息E-R图(4)管理员实体如图3-11所示。图3-11管理员E-R图
(5)供货单位实体如图3-12所示。图3-12供货单位E-R图(6)收货单位实体如图3-13所示。图3-13收货单位E-R图(7)经手人实体如图3-14所示。图3-14经手人E-R图(8)商品种类实体如图3-15所示。
图3-15商品种类E-R图3.3.2逻辑结构设计逻辑结构设计就是把概念设计中的E-R图以数据表的形式展现出来,及进行数据库中表的设计。根据概念设计中的实体,该系统中需要创建的表有:(1)商品信息表:用于存放所有商品的详细信息。(2)入库信息表:用于存放商品入库信息。(3)出库信息表:用于存放商品出库信息。(4)管理员信息表:用于存放登录信息。(5)供货单位表:用于存放供货单位信息。(6)收货单位表:用于存放收货单位信息。(7)经手人表:用于存放经手人信息。(8)商品种类表:用于存放商品种类信息。
4详细设计详细设计是对概要设计的细化,其任务主要包括:为每个模块进行详细的算法设计、为每个模块内的数据结构进行设计、对数据库进行设计。下面主要介绍该系统中数据库的设计和每个模块的具体实现。4.1数据库设计该系统数据库采用SQLServer2008,数据库名称为ManagerWarehouse,数据库中建立以下数据表:(1)商品信息表商品信息表用来存储当前在存商品的全部信息,如表3-1所示。表3-1T_Product商品信息表字段中文描述数据类型是否为空备注HID商品编号int否主键ProductName商品名称nvarchar(10)否ProductKind商品种类nvarchar(10)否Unit商品单位nvarchar(10)否Warehouse存放仓库nvarchar(10)否Position存放位置varchar(20)否LowLine库存下限int否UpLine库存上限int否Result当前库存int是(2)入库信息表入库信息表用来存储商品入库信息,如表3-2所示。表3-2T_InWarehouse入库信息表字段中文描述数据类型是否为空备注IId入库编号int否主键IDate入库日期datetime否ProductName商品名称nvarchar(10)否
ProductKind商品种类nvarchar(10)否Unit商品单位nvarchar(10)否Count入库数量int否InPrice入库单价decimal(19,4)否Total入库总价decimal(19,4)否SupplyUnit供货单位nvarchar(10)否Person经手人nvarchar(10)否Notes备注nvarchar(10)是(3)出库信息表出库信息表用来存储商品出库信息,如表3-3所示。表3-3T_OutWarehouse出库信息表字段中文描述数据类型是否为空备注OId出库编号int否主键ODate出库日期datetime否ProductName商品名称nvarchar(10)否ProductKind商品种类nvarchar(10)否Unit商品单位nvarchar(10)否Count出库数量int否OutPrice出库单价decimal(19,4)否Total出库总价decimal(19,4)否ReceivingUnit收货单位nvarchar(10)否Person经手人nvarchar(10)否(4)管理员信息表管理员信息表用来存储管理员的账号密码,如表3-4所示。表3-4T_Users管理员信息表字段中文描述数据类型是否为空备注UserID管理员编号int否主键UserName用户名nvarchar(10)否Pwd密码nvarchar(16)否(5)供货单位表供货单位表用来存储供货单位信息,如表3-5所示。表3-5T_SupplyUnit供货单位表
字段中文描述数据类型是否为空备注SId编号int否主键Name名称nvarchar(10)否Address地址nvarchar(20)否person联系人nvarchar(10)否tel联系电话varchar(16)否(6)收货单位表收货单位表用来存储收货单位信息,如表3-6所示。表3-6T_ReceivingUnit收货单位表字段中文描述数据类型是否为空备注RID编号int否主键Name名称nvarchar(10)否Address地址nvarchar(20)否person联系人nvarchar(10)否tel联系电话varchar(16)否(7)经手人表经手人表用来存储经手人信息,如表3-7所示。表3-7T_Person经手人表字段中文描述数据类型是否为空备注UserID编号int否主键Name姓名nvarchar(10)否tel手机号码varchar(16)否(8)商品种类表商品种类表用来存储商品的种类信息,如表3-8所示。表3-8T_Kind商品种类表字段中文描述数据类型是否为空备注ID编号int否主键Name种类名称nvarchar(10)否FID父类编号int否
4.2系统功能实现(1)管理员登录管理员登录需要经过验证码验证和账号密码验证双层验证。首先对验证码进行验证,验证不通过则终止登录。验证通过继续进行用户名验证密码,验证成功则登录系统,失败则结束登录。管理员登录流程图如图4-1所示。图4-1管理员登录流程图(2)商品管理商品管理对仓库中所有商品信息进行管理。当商品第一次入库时,系统会判断是不是新商品,是则提示需要对商品进行建档,即添加商品信息。管理员可以查看所有商品信息,可以选中某条商品信息进行修改或者删除。(3)入库管理和出库管理商品入库包括正常的采购入库和退货入库。当采购商品入库时,系统首先判断商品是否已经存在,如果存在,只需要修改商品库存即可。如果不存在,则提示需要对商品建档,才能进行入库操作。同时管理员可以对入库信息进行修改或删除。该模块提供查询入库信息的操作,输入查询开始日期和终止日期,查询这一时间段内的所有入库情况。出库管理和入库管理类似,管理员可以添加出库信息,可以对出库信息进行删除或修改。也可以输入开始日期和终止日期进行查询。此处只给出入库管理模块的流程图,如图4-2所示。(4)盘存管理和系统管理
盘存管理模块主要任务是能够让管理员掌握商品的当前库存量。因此该模块中管理员可以浏览所有商品的库存信息。同时该模块添加了商品查询功能。管理员可以按照商品名称查询某一特定商品的全部信息,也可以按照商品种类查询某一特定种类的商品信息。系统管理包括收货单位管理、供货单位管理、经手人管理、商品种类管理。主要实现上述信息的最基本的添加、删除、修改操作,不再一一赘述。(5)用户管理用户管理主要做了修改密码功能。修改密码需要用户输入旧密码进行验证,只有验证通过才能进行修改,否则无权进行修改,保证管理员信息安全。验证通过后继续对用户输入的两次新密码一致性进行验证,通过则修改成功,新密码写入数据表,不一致则修改失败,需要重新输入。系统流程图如图4-3所示。图4-2入库管理流程图
图4-3用户管理流程图
5编码与实现5.1管理员登录登录过程首先进行验证码验证,验证码输入错误则终止本次登录,必须重新登录。验证码验证成功后对用户名进行验证,从用户表中检索输入的用户名是否存在,如果存在就继续验证输入的密码是否匹配。只有通过了验证码验证并且用户名密码相匹配才能进入系统。判断用户名是否存在的代码如下:publicboolIsavailable(stringUserName){stringConnStr=ConfigurationManager.ConnectionStrings["ConnStr"].ConnectionString;using(SqlConnectionconn=newSqlConnection(ConnStr)){conn.Open();using(SqlCommandcmd=conn.CreateCommand()){cmd.CommandText="select*fromT_UserswhereUserName=@UserName";cmd.Parameters.Add(newSqlParameter("UserName",UserName));inti=Convert.ToInt32(cmd.ExecuteScalar());if(i==0){returnfalse;}else{returntrue;}}}}接下来给出的是系统登录代码:
protectedvoidButton1_Click(objectsender,EventArgse){stringnum=this.TextBox3.Text.Trim();if(Session["validNums"].ToString()==num.ToUpper()){stringUserName=TextBox1.Text.Trim().ToString();if(!Isavailable(UserName)){this.Page.RegisterStartupScript("ss","");}else{stringPwd=检索数据库.GetPwd(UserName);if(Pwd==TextBox2.Text.Trim()){Session["UserName"]=this.TextBox1.Text.Trim();Session["Pwd"]=this.TextBox2.Text.Trim();Response.Redirect("ManagerProducts.aspx");}else{this.Page.RegisterStartupScript("ss","");}}}else{this.Page.RegisterStartupScript("ss","");}}登录界面截图如图5-1所示。登录需要输入验证码、用户名和密码以进行登录验证。验证码验证截图如图5-2所示。当验证码验证失败时页面弹出消息并终止本次登录。用户名验证截图如图5-3所示。密码验证截图如图5-4所示。
图5-1登录界面截图图5-2验证码验证界面截图图5-3用户名验证界面截图
图5-4密码验证界面截图5.2系统自动报警系统自动报警主要是为了防止商品库存过低而提出的一项需求。当存在商品的库存量低于商品的库存下限时,系统右下角会弹出消息框提示管理员存在商品库存不足,管理员可以选择查看,并可以导出商品列表送交采购部门进行补货。判断商品是否充足的代码:protectedboolIsnotenough(){strings="select*fromT_ProductwhereResultfunctiontips_pop(){varMsgPop=document.getElementById("winpop");varpopH=parseInt(MsgPop.style.height);//将对象的高度转化为数字if(popH==0){MsgPop.style.display="block";//显示隐藏的窗口show=setInterval("changeH("up")",2);}else{hide=setInterval("changeH("down")",2);}}functionchangeH(str){varMsgPop=document.getElementById("winpop");varpopH=parseInt(MsgPop.style.height);if(str=="up"){
if(popH<=100){MsgPop.style.height=(popH+4).toString()+"px";}else{clearInterval(show);}}if(str=="down"){if(popH>=4){MsgPop.style.height=(popH-4).toString()+"px";}else{clearInterval(hide);MsgPop.style.display="none";//隐藏DIV}}}functionmessage(){//加载document.getElementById("winpop").style.height="0px";setTimeout("tips_pop()",3000);//3秒后调用tips_pop()这个函数}自动弹出消息提示框截图如图5-5所示。图5-5自动弹出消息界面截图查看库存不足信息页面截图如图5-6所示。弹出消息提示后,如果点击查看,则会列出所有库存低于下限的商品信息,管理员可以导出到Word文档中,送交采购部门及时补货。
图5-6查看库存不足信息界面截图5.3其他功能5.3.1商品管理商品管理主要实现对新商品的添加、对商品信息的删除和修改。当点击左边导航中的管理商品信息时,页面跳转到商品管理页面,呈现出所有当前已建档商品信息。每条信息后面紧跟着删除和修改操作,可以根据需要进行选择。当点击导航中的添加商品信息时,则会跳转到商品建档页面,即添加新商品信息页面。商品管理页面截图如图5-7所示。
图5-7商品管理界面截图添加商品信息页面截图如图5-8所示。图5-8添加商品信息界面截图5.3.2出库入库管理出库入库管理是超市仓库管理中的基本功能,实现对商品进出的登记、信息修改和删除等。管理员通过左侧导航选择出库管理或入库管理可以查看所有信息记录,同时可以选择对某条记录进行修改或删除。当选择入库统计或者出库统计时,系统会要求输入开始时间和终止时间,输入完成后点击统计可以统计之一时间段内的所有出入库记录。
为了简明扼要,此处只截取一张图片加以说明。入库统计页面截图如图5-9所示。图5-9入库统计界面截图5.3.3盘存管理、系统管理和用户管理在左侧导航中盘存管理项下面有两个选项,商品盘存信息和商品查询。首先管理员可以选中商品盘存信息查看所有商品盘存信息,如果管理员需要快速得到某一商品的盘存信息,可以选择商品查询选项,该选项提供按商品名称查询功能,可以得到所需商品的全部信息,当然该选项下还有另一种功能,即按种类查询功能,可以查询某一类商品的全部信息。该系统的系统管理主要是对收货单位、供货单位、经手人和商品种类的管理。当选择对收货单位或供货单位管理时,管理员可以对信息进行修改或删除,也可以添加新的收货单位或供货单位。单位信息包括名称,地址,联系人和联系电话。系统会对输入的联系电话进行检测,如果不符合目前国内所有的电话号码格式,则会报错要求重新输入联系电话,页面截图如图5-10所示。同样的在经手人信息管理中需要对经手人的手机号码进行验证,如果不符合当前国内手机号码格式,则会提示需要重新输入正确的手机号码。用户管理主要实现对密码修改功能。管理员需要输入旧密码和两次新密码,系统首先对管理员输入的旧密码进行验证,如果输入正确则继续验证新密码,如果两次输入的新密码一致,则将新密码保存至数据库中,修改成功。如果两次输入的新密码不一致,则修改失败。
图5-10电话号码验证界面截图6系统测试软件测试是动态查找程序代码中的各类错误和问题的过程。随着人类对计算机应用的逐渐深入,人们对软件的要求也越来越高,因此,软件测试也显得越来越重要。6.1测试的种类程序测试是为了发现错误而执行程序的过程。按照这个定义,测试是一个执行程序的过程,即要求被测试程序在计算机上运行。其实,不执行程序也可以发现程序中的错误。为便于区分,一般把前者称为动态测试,后者称为静态分析。顾名思义,静态分析就是通过对被测程序的静态审查,发现代码中潜在的错误。它一般用人工方式脱机完成,因此也叫做人工测试或代码评审;也可以借助静态分析器在计算机上进行检查,但不要求执行程序。动态测试分为两类,一类是根据程序的功能来设计测试用例,称为黑盒测试;另一类则根据被测程序的内部结构设计测试用例,测试者需要事先了解程序的结构,因此称为白盒测试。
6.2测试细节(1)验证码测试系统登录模块具有验证码验证功能,针对该功能做了两项测试:输入正确的验证码和错误的验证码。测试结果:当输入正确的验证码时,系统不会弹出验证码错误消息,而是接着往下执行,进行用户名密码验证。当输入错误验证码时,系统立即弹出验证码错误消息框,终止执行,并终止本次登录。测试通过。(2)用户名有效性测试如果验证码验证通过,系统会接着进行用户名验证。针对用户名验证,同样做了两组测试:分别输入已经存在的用户名和不存在的用户名。测试结果:当输入有效的用户名时,系统不会弹出用户名不存在的消息框,而是进行密码验证。当输入不存在的用户名时,系统检索数据库中的用户信息,找不到该用户名,按照预期弹出消息提示框提示“用户名不存在”,终止登录。测试通过。(3)密码验证测试如果用户名有效性验证通过,则系统接着会对管理员输入的密码进行验证,即验证输入的密码是否和数据库中与该用户名对应的密码相一致,如果一致,则成功进入系统,如果不一致,则提示密码错误,登录失败。针对密码验证,同样做了两组测试:分别输入与用户名匹配的密码和不匹配的密码。测试结果:当输入与用户名相匹配的密码时,成功进入系统。当输入错误的密码时,系统弹出消息提示框提示“密码错误”,登录失败。测试通过。(4)系统自动报警测试系统加载每一个页面时,都会首先进行商品库存量和商品库存的最低限度值的比较。当库存量低于库存最低限度时,系统右下角会自动弹出报警,提示存在库存不足商品,供管理员查看。针对自动报警功能,为了便于测试,选择了直接在数据库中修改商品的库存量。首先修改库存使得商品的库存都不低于库存下限,这时候运行程序,页面加载时并没有自动报警。然后手动修改,使得一些商品的库存低于库存下限,这时候重新运行程序,系统自动弹出报警,提示存在商品不足商品,点击查看。点击之后页面呈现出所有商品库存量不足的商品信息。测试通过。(5)修改密码测试管理员修改密码流程:管理员输入旧密码、新密码、重复新密码,系统首先对管理员输入的旧密码进行判断,如果旧密码输入正确,则允许进行修改,转去判断两次输入的新密码,如果两次新密码一致则密码成功修改为新密码,如果旧密码错误,则无权修改密码。如果旧密码正确但是两次新密码不一致,则修改失败,密码不变。针对以上情况,采用以下测试方法:首先在旧密码输入时输入错误的旧密码,然后点击提交按钮,结果弹出提示框提示旧密码输入不正确。然后输入正确的旧密码,但是输入的两次新密码不一致,再次点击提交按钮,系统并没有提示旧密码错误,而是提示两次输入的新密码不一致,修改失败。最后,输入正确的旧密码,并输入两次完全一致的新密码,再次点击提交,系统提示密码修改成功。测试通过。(6)正则表达式测试
系统中两次用到正则表达式,分别是收货单位、供货单位管理中的联系电话和经手人管理中的手机号码。联系电话正则表达式可以同时验证当前国内的多种电话号码格式:3位区号-8位电话号、4位区号-8位电话号、4位区号-7位电话号。手机号码则对当前国内移动、联通和电信三大通信运营商的手机号码进行验证,即分别以13、15和18开头的11位手机号码进行验证。针对以上情况,分别进行了相关测试。当输入电话号码不符合以上格式时,点击提交信息均有提示信息,提示输入正确的电话号码。当输入的手机号码不符合格式时,点击提交系统也会提示输入的手机号码格式不正确。当输入正确的电话号码和手机号码时,点击提交按钮,系统没有错误提示,正常提交信息。测试通过。结论(1)本文所做的工作和成果本文主要介绍了ASP.NET平台下超市仓库管理信息系统设计与实现的全部过程。所做的主要工作有:(1)研究学习了运用ASP.NET进行Web应用程序开发的相关技术,并在ASP.NET平台下实现了超市仓库信息管理系统的开发。(2)学习了SQLServer2008的相关知识,并在系统开发中成功实现了使用SQLServer2008进行数据存储。(3)学习了javascript脚本语言的相关知识,并利用该语言在系统中实现了自动报警消息弹窗。(4)学习了html相关技术,在系统开发中利用table表格对页面进行布局。(5)了解了正则表达式的相关知识,并运用到系统中对手机号码、固定电话号码进行格式判断。
(2)系统的不足和展望由于本人学识尚浅,能力有限,因此该系统只实现了超市仓库管理中的商品管理、入库管理、出库管理、自动报警等基本功能需求,系统在很多方面都有待提高完善。比如增强仓库管理和商品销售之间的联系,增加销售情况统计,根据销售情况识别滞销商品等。当前系统可以实现商品管理、出入库管理、收货单位供货单位管理、经手人管理和用户管理,并具备自动报警功能。可以说基本上实现了超市仓库的管理。随着计算机的发展,相信人们对软件功能的需求也越来越高,我们对超市仓库管理的工作需求不会仅仅停留在简单的入库出库管理方面,会涌现出更全面更智能的需求,相信到那时候超市仓库管理系统会越来越强大,功能越来越完善,真正解除超市的后顾之忧。参考文献[1]高宏,李俊民.ASP.NET典型模块与项目实战大全.北京:清华大学出版社,2012,2-5[2]张联锋,陈文臣.ASP.NET3.5程序设计与项目实践.北京:电子工业出版社,2011,418-424[3]曾静娜.新手学CSS+DIV.北京:北京希望电子出版社,2010,115-127[4]史济民,顾春华.软件工程—原理、方法与应用.北京:高等教育出版社,2009,19-71[5]JamesHuddleston.C#数据库入门经典.北京:清华大学出版社,2006,93[6]王国胜,刘攀.C#基础与案例开发详解.北京:清华大学出版社,2009,[7]张蒲生.数据库应用技术.北京:机械工业出版社,2007,162-187[8]王国胜,柴宝杰,尼春雨.ASP.NET+SQLServer动态网站开发.北京:清华大学出版社,2009,78-96[9]张跃廷.ASP.NET开发实战宝典.北京:清华大学出版社,2010,47-156[10]孙涌.现代软件工程.北京:北京希望电子出版社,2003,1-246[11]余金山.ASP.NET2.0+SQLServer2005企业项目开发与实战.北京:电子工业出版社,2008,12-96[12]BillWagner.EffectiveC#:50SpecificWaystoImproveYourC#.北京:人民邮电出版社,2003,53-120[13]DinoEsposito.ASP.NET2.0技术内幕.北京:清华大学出版社,2006,16-101[14]KoureshArdestani.高效掌握ADO.NET—C#编程篇.北京:清华大学出版社,2003,36-114
[15]朱玉超,鞠艳,王代勇.ASP.NET项目开发教程.北京:电子工业出版社,2008,114-153[16]胡勇辉,曹倬瑝,兰湘涛.ASP.NET开发实战详解:入门、模块、系统.北京:电子工业出版社,2006,1-264[17]陈伟.SQLServer2005数据库应用与开发教程.北京:清华大学出版社,2007,43-88[18]JimArlow,IIaNeustadt.UML2andtheUnifiedProcess:PracticalObject-OrientedAnalysisandDesign,SecondEdition.北京:人民邮电出版社.2006,15-42[19]张克非.ASP.NET网络程序设计与应用.北京:北京航空航天大学出版社,2007,28-99[20]刘乃丽.完全手册ASP.NET2.0网络开发详解.北京:电子工业出版社,2008,14-63翻译部分英文原文BeyondtheDesktop:AnIntroductiontoCloudComputingMichaelMillerInaworldthatseesnewtechnologicaltrendsbloomandfadeonalmostadailybasis,onenewtrendpromisesmorelongevity.Thistrendiscalledcloudcomputing,anditwillchangethewayyouuseyourcomputerandtheInternet.Cloudcomputingportendsamajorchangeinhowwestoreinformationandrunapplications.Insteadofrunningprogramsanddataonanindividualdesktopcomputer,everythingishostedinthe“cloud”—anebulousassemblageofcomputersandserversaccessedviatheInternet.Cloudcomputingletsyouaccessallyourapplicationsanddocumentsfromanywhereintheworld,freeingyoufromtheconfinesofthedesktopandmakingiteasierforgroupmembersindifferentlocationstocollaborate.PART1UnderstandingCloudComputingTheemergenceofcloudcomputingisthecomputingequivalentoftheelectricityrevolutionofacenturyago.Beforetheadventofelectricalutilities,everyfarmandbusinessproduceditsownelectricityfromfreestandinggenerators.Aftertheelectricalgridwascreated,farmsandbusinessesshutdowntheirgeneratorsandboughtelectricityfromtheutilities,atamuchlowerprice(andwithmuchgreaterreliability)thantheycouldproduceontheirown.
Lookforthesametypeofrevolutiontooccurascloudcomputingtakeshold.Thedesktop-centricnotionofcomputingthatweholdtodayisboundtofallbythewaysideaswecometoexpecttheuniversalaccess,24/7reliability,andubiquitouscollaborationpromisedbycloudcomputing.Itisthewayofthefuture.CloudComputing:WhatItIs—andWhatItIsn’tWithtraditionaldesktopcomputing,youruncopiesofsoftwareprogramsoneachcomputeryouown.Thedocumentsyoucreatearestoredonthecomputeronwhichtheywerecreated.Althoughdocumentscanbeaccessedfromothercomputersonthenetwork,theycan’tbeaccessedbycomputersoutsidethenetwork.ThewholesceneisPC-centric.Withcloudcomputing,thesoftwareprogramsyouusearen’trunfromyourpersonalcomputer,butareratherstoredonserversaccessedviatheInternet.Ifyourcomputercrashes,thesoftwareisstillavailableforotherstouse.Samegoesforthedocumentsyoucreate;they’restoredonacollectionofserversaccessedviatheInternet.Anyonewithpermissioncannotonlyaccessthedocuments,butcanalsoeditandcollaborateonthosedocumentsinrealtime.Unliketraditionalcomputing,thiscloudcomputingmodelisn’tPC-centric,it’sdocument-centric.WhichPCyouusetoaccessadocumentsimplyisn’timportant.Butthat’sasimplification.Let’slookinmoredetailatwhatcloudcomputingis—and,justasimportant,whatitisn’t.WhatCloudComputingIsn’tFirst,cloudcomputingisn’tnetworkcomputing.Withnetworkcomputing,applications/documentsarehostedonasinglecompany’sserverandaccessedoverthecompany’snetwork.Cloudcomputingisalotbiggerthanthat.Itencompassesmultiplecompanies,multipleservers,andmultiplenetworks.Plus,unlikenetworkcomputing,cloudservicesandstorageareaccessiblefromanywhereintheworldoveranInternetconnection;withnetworkcomputing,accessisoverthecompany’snetworkonly.Cloudcomputingalsoisn’ttraditionaloutsourcing,whereacompanyfarmsout(subcontracts)itscomputingservicestoanoutsidefirm.Whileanoutsourcingfirmmighthostacompany’sdataorapplications,thosedocumentsandprogramsareonlyaccessibletothecompany’semployeesviathecompany’snetwork,nottotheentireworldviatheInternet.So,despitesuperficialsimilarities,networkingcomputingandoutsourcingarenotcloudcomputing.WhatCloudComputingIsKeytothedefinitionofcloudcomputingisthe“cloud”itself.Forourpurposes,thecloudisalargegroupofinterconnectedcomputers.Thesecomputerscanbepersonalcomputersornetworkservers;theycanbepublicorprivate.Forexample,GooglehostsacloudthatconsistsofbothsmallishPCsandlargerservers.Google’scloudisaprivateone(thatis,Googleownsit)thatispubliclyaccessible(byGoogle’susers).Thiscloudofcomputersextendsbeyondasinglecompanyorenterprise.Theapplicationsanddataservedbythecloudareavailabletobroadgroupofusers,cross-enterpriseand
cross-platform.AccessisviatheInternet.AnyauthorizedusercanaccessthesedocsandappsfromanycomputeroveranyInternetconnection.And,totheuser,thetechnologyandinfrastructurebehindthecloudisinvisible.Itisn’tapparent(and,inmostcasesdoesn’tmatter)whethercloudservicesarebasedonHTTP,HTML,XML,JavaScript,orotherspecifictechnologies._Cloudcomputingisuser-centric.Onceyouasauserareconnectedtothecloud,whateverisstoredthere—documents,messages,images,applications,whatever—becomesyours.Inaddition,notonlyisthedatayours,butyoucanalsoshareitwithothers.Ineffect,anydevicethataccessesyourdatainthecloudalsobecomesyours._Cloudcomputingistask-centric.Insteadoffocusingontheapplicationandwhatitcando,thefocusisonwhatyouneeddoneandhowtheapplicationcandoitforyou.Traditionalapplications—wordprocessing,spreadsheets,email,andsoon—arebecominglessimportantthanthedocumentstheycreate.PART2UnderstandingCloudComputing_Cloudcomputingispowerful.ConnectinghundredsorthousandsofcomputerstogetherinacloudcreatesawealthofcomputingpowerimpossiblewithasingledesktopPC._Cloudcomputingisaccessible.Becausedataisstoredinthecloud,userscaninstantlyretrievemoreinformationfrommultiplerepositories.You’renotlimitedtoasinglesourceofdata,asyouarewithadesktopPC._Cloudcomputingisintelligent.Withallthevariousdatastoredonthecomputersinacloud,dataminingandanalysisarenecessarytoaccessthatinformationinanintelligentmanner._Cloudcomputingisprogrammable.Manyofthetasksnecessarywithcloudcomputingmustbeautomated.Forexample,toprotecttheintegrityofthedata,informationstoredonasinglecomputerinthecloudmustbereplicatedonothercomputersinthecloud.Ifthatonecomputergoesoffline,thecloud’sprogrammingautomaticallyredistributesthatcomputer’sdatatoanewcomputerinthecloud.Allthesedefinitionsbehindus,whatconstitutescloudcomputingintherealworld?Asyou’lllearnthroughoutthisbook,araftofweb-hosted,Internet-accessible,Group-collaborativeapplicationsarecurrentlyavailable,withmanymoreontheway.PerhapsthebestandmostpopularexamplesofcloudcomputingapplicationstodayaretheGooglefamilyofapplications—GoogleDocs&Spreadsheets,GoogleCalendar,Gmail,Picasa,andthelike.AlloftheseapplicationsarehostedonGoogle’sservers,areaccessibletoanyuserwithanInternetconnection,andcanbeusedforgroupcollaborationfromanywhereintheworld.Inshort,cloudcomputingenablesashiftfromthecomputertotheuser,fromapplicationstotasks,andfromisolateddatatodatathatcanbeaccessedfromanywhereandsharedwithanyone.Theusernolongerhastotakeonthetaskofdatamanagement;hedoesn’tevenhavetorememberwherethedatais.Allthatmattersisthatthedataisinthecloud,andthusimmediatelyavailabletothatuserandtootherauthorizedusers.FromCollaborationtotheCloud:AShortHistoryofCloudComputingCloudcomputinghasasitsantecedentsbothclient/servercomputingandpeer-to-peerdistributedcomputing.It’sallamatterofhowcentralizedstoragefacilitatescollaborationandhowmultiplecomputersworktogethertoincreasecomputingpower.
Client/ServerComputing:CentralizedApplicationsandStorageIntheantediluviandaysofcomputing(pre-1980orso),everythingoperatedontheclient/servermodel.Allthesoftwareapplications,allthedata,andallthecontrolresidedonhugemainframecomputers,otherwiseknownasservers.Ifauserwantedtoaccessspecificdataorrunaprogram,hehadtoconnecttothemainframe,gainappropriateaccess,andthendohisbusinesswhileessentially“renting”theprogramordatafromtheserver.Usersconnectedtotheserverviaacomputerterminal,sometimescalledaworkstationorclient.Thiscomputerwassometimescalledadumbterminalbecauseitdidn’thavealot(ifany!)memory,storagespace,orprocessingpower.Itwasmerelyadevicethatconnectedtheusertoandenabledhimtousethemainframecomputer.Usersaccessedthemainframeonlywhengrantedpermission,andtheinformationtechnology(IT)staffweren’tinthehabitofhandingoutaccesscasually.Evenonamainframecomputer,processingpowerislimited—andtheITstaffweretheguardiansofthatpower.Accesswasnotimmediate,norcouldtwousersaccessthesamedataatthesametime.Beyondthat,usersprettymuchhadtotakewhatevertheITstaffgavethem—withnovariations.Wanttocustomizeareporttoshowonlyasubsetofthenormalinformation?Can’tdoit.Wanttocreateanewreporttolookatsomenewdata?Youcan’tdoit,althoughtheITstaffcan—butontheirschedule,whichmightbeweeksfromnow.Thefactis,whenmultiplepeoplearesharingasinglecomputer,evenifthatcomputerisahugemainframe,youhavetowaityourturn.Needtorerunafinancialreport?Noproblem—ifyoudon’tmindwaitinguntilthisafternoon,ortomorrowmorning.Thereisn’talwaysimmediateaccessinaclient/serverenvironment,andseldomisthereimmediategratification.Sotheclient/servermodel,whileprovidingsimilarcentralizedstorage,differedfromcloudcomputinginthatitdidnothaveauser-centricfocus;withclient/servercomputing,allthecontrolrestedwiththemainframe—andwiththeguardiansofthatsinglecomputer.Itwasnotauser-enablingenvironment.Peer-to-PeerComputing:SharingResourcesAsyoucanimagine,accessingaclient/serversystemwaskindofa“hurryupandwait”experience.Theserverpartofthesystemalsocreatedahugebottleneck.Allcommunicationsbetweencomputershadtogothroughtheserverfirst,howeverinefficientthatmightbe.Theobviousneedtoconnectonecomputertoanotherwithoutfirsthittingtheserverledtothedevelopmentofpeer-to-peer(P2P)computing.P2Pcomputingdefinesanetworkarchitectureinwhicheachcomputerhasequivalentcapabilitiesandresponsibilities.Thisisincontrasttothetraditionalclient/servernetworkarchitecture,inwhichoneormorecomputersarededicatedtoservingtheothers.(Thisrelationshipissometimescharacterizedasamaster/slaverelationship,withthecentralserverasthemasterandtheclientcomputerastheslave.)P2Pwasanequalizingconcept.IntheP2Penvironment,everycomputerisaclientandaserver;therearenomastersandslaves.Byrecognizingallcomputersonthenetworkaspeers,P2Penablesdirectexchangeofresourcesandservices.Thereisnoneedforacentralserver;becauseanycomputercanfunctioninthatcapacitywhencalledontodoso.P2Pwasalsoadecentralizingconcept.Controlisdecentralized,withallcomputersfunctioningasequals.Contentisalsodispersedamongthevariouspeercomputers.Nocentralizedserverisassignedtohosttheavailableresourcesandservices.PerhapsthemostnotableimplementationofP2PcomputingistheInternet.Manyoftoday’s
usersforget(orneverknew)thattheInternetwasinitiallyconceived,underitsoriginalARPAnetguise,asapeer-to-peersystemthatwouldsharecomputingresourcesacrosstheUnitedStates.ThevariousARPAnetsites—andthereweren’tmanyofthem—wereconnectedtogethernotasclientsandservers,butasequals.TheP2PnatureoftheearlyInternetwasbestexemplifiedbytheUsenetnetwork.Usenet,whichwascreatedbackin1979,wasanetworkofcomputers(accessedviatheInternet),eachofwhichhostedtheentirecontentsofthenetwork.Messageswerepropagatedbetweenthepeercomputers;usersconnectingtoanysingleUsenetserverhadaccesstoall(orsubstantiallyall)themessagespostedtoeachindividualserver.Althoughtheusers’connectiontotheUsenetserverwasofthetraditionalclient/servernature,therelationshipbetweentheUsenetserverswasdefinitelyP2P—andpresagedthecloudcomputingoftoday.Thatsaid,noteverypartoftheInternetisP2Pinnature.WiththedevelopmentoftheWorldWideWebcameashiftawayfromP2Pbacktotheclient/servermodel.Ontheweb,eachwebsiteisservedupbyagroupofcomputers,andsites’visitorsuseclientsoftware(webbrowsers)toaccessit.Almostallcontentiscentralized,allcontroliscentralized,andtheclientshavenoautonomyorcontrolintheprocess.DistributedComputing:ProvidingMoreComputingPowerOneofthemostimportantsubsetsoftheP2Pmodelisthatofdistributedcomputing,whereidlePCsacrossanetworkoracrosstheInternetaretappedtoprovidecomputingpowerforlarge,processor-intensiveprojects.It’sasimpleconcept,allaboutcyclesharingbetweenmultiplecomputers.Apersonalcomputer,runningfull-out24hoursaday,7daysaweek,iscapableoftremendouscomputingpower.Mostpeopledon’tusetheircomputers24/7,however,soagoodportionofacomputer’sresourcesgounused.Distributedcomputingusesthoseresources.Whenacomputerisenlistedforadistributedcomputingproject,softwareisinstalledonthemachinetorunvariousprocessingactivitiesduringthoseperiodswhenthePCistypicallyunused.Theresultsofthatspare-timeprocessingareperiodicallyuploadedtothedistributedcomputingnetwork,andcombinedwithsimilarresultsfromotherPCsintheproject.Theresult,ifenoughcomputersareinvolved,simulatestheprocessingpowerofmuchlargermainframesandsupercomputers—whichisnecessaryforsomeverylargeandcomplexcomputingprojects.Forexample,geneticresearchrequiresvastamountsofcomputingpower.Lefttotraditionalmeans,itmighttakeyearstosolveessentialmathematicalproblems.Byconnectingtogetherthousands(ormillions)ofindividualPCs,morepowerisappliedtotheproblem,andtheresultsareobtainedthatmuchsooner.Distributedcomputingdatesbackto1973,whenmultiplecomputerswerenetworkedtogetherattheXeroxPARClabsandwormsoftwarewasdevelopedtocruisethroughthenetworklookingforidleresources.Amorepracticalapplicationofdistributedcomputingappearedin1988,whenresearchersattheDEC(DigitalEquipmentCorporation)SystemResearchCenterdevelopedsoftwarethatdistributedtheworktofactorlargenumbersamongworkstationswithintheirlaboratory.By1990,agroupofabout100users,utilizingthissoftware,hadfactoreda100-digitnumber.By1995,thissameefforthadbeenexpandedtothewebtofactora130-digitnumber.Itwasn’tlongbeforedistributedcomputinghittheInternet.ThefirstmajorInternet-baseddistributedcomputingprojectwasdistributed.net,launchedin1997,which
employedthousandsofpersonalcomputerstocrackencryptioncodes.EvenbiggerwasSETI@home,launchedinMay1999,whichlinkedtogethermillionsofindividualcomputerstosearchforintelligentlifeinouterspace.Manydistributedcomputingprojectsareconductedwithinlargeenterprises,usingtraditionalnetworkconnectionstoformthedistributedcomputingnetwork.Other,larger,projectsutilizethecomputersofeverydayInternetusers,withthecomputingtypicallytakingplaceoffline,andthenuploadedonceadayviatraditionalconsumerInternetconnections.UnderstandingCloudArchitectureThekeytocloudcomputingisthe“cloud”—amassivenetworkofserversorevenindividualPCsinterconnectedinagrid.Thesecomputersruninparallel,combiningtheresourcesofeachtogeneratesupercomputing-likepower.What,exactly,isthe“cloud”?Putsimply,thecloudisacollectionofcomputersandserversthatarepubliclyaccessibleviatheInternet.Thishardwareistypicallyownedandoperatedbyathirdpartyonaconsolidatedbasisinoneormoredatacenterlocations.Themachinescanrunanycombinationofoperatingsystems;it’stheprocessingpowerofthemachinesthatmatter,notwhattheirdesktopslooklike.AsshowninFigure1.1,individualusersconnecttothecloudfromtheirownpersonalcomputersorportabledevices,overtheInternet.Totheseindividualusers,thecloudisseenasasingleapplication,device,ordocument.Thehardwareinthecloud(andtheoperatingsystemthatmanagesthehardwareconnections)isinvisible.Thiscloudarchitectureisdeceptivelysimple,althoughitdoesrequiresomeintelligentmanagementtoconnectallthosecomputerstogetherandassigntaskprocessingtomultitudesofusers.AsyoucanseeinFigure1.2,itallstartswiththefront-endinterfaceseenbyindividualusers.Thisishowusersselectataskorservice(eitherstartinganapplicationoropeningadocument).Theuser’srequestthengetspassedtothesystemmanagement,whichfindsthecorrectresourcesandthencallsthesystem’sappropriateprovisioningservices.Theseservicescarveoutthenecessaryresourcesinthecloud,launchtheappropriatewebapplicationandeithercreatesoropenstherequesteddocument.Afterthewebapplicationislaunched,thesystem’smonitoringandmeteringfunctionstracktheusageofthecloudsothatresourcesareapportionedandattributedtotheproperuser(s).
Asyoucansee,keytothenotionofcloudcomputingistheautomationofmanymanagementtasks.Thesystemisn’tacloudifitrequireshumanmanagementtoallocateprocessestoresources.Whatyouhaveinthisinstanceismerelyatwenty-first-centuryversionofold-fashioneddatacenter–basedclient/servercomputing.Forthesystemtoattaincloudstatus,manualmanagementmustbereplacedbyautomatedprocesses.
中文译文超越台式机:一个关于云计算的介绍迈克尔.米勒在这个世界上几乎每一天都能看到新技术趋势的崛起和衰退,一种新的趋势带来了更长久的生命力。这种趋势被称为云计算,它将改变你使用电脑和互联网的方式。云计算预示着我们在如何存储信息和运行应用程序问题上的重大变革。而不是在单独的计算机上运行程序的散的数据,一切都托管在“云”中,通过英特网去访问“云”中的其他计算机和服务器。云计算让你能够在世界上的任何地方访问你所有的应用程序和文档,摆脱了台式机的束缚,让你更容易在不同的地方和同事进行协作。第一部分认识云计算云计算的出现就相当于一个世纪前电力革命的发生。在电力公司出现之前,每一个农场和企业都通过自己独立的发电机发电。在电网产生以后,农场和企业关闭他们自己的的发电机,并且从电力公司以一个比他们用自己发电机发电低得多的价格(并且更具有可靠性)买电。为了寻找相同类型革命的发生,使得云计算成为定局。由于我们所期望的教育普及,每时每刻的可靠性和无处不在的云计算协作承诺使得以台式机为计算中心的观念半途而废。云计算将是未来发展的方向。
云计算:它是什么和它的不同通过传统的桌面计算,你可以在你的每一台电脑上运行程序的副本,你所创建的文件都保存在你创建文件的计算机上。虽然它们能够被这个网络上的其他计算机访问,但是它们不能被外网的计算机访问。整个的场景都是以个人计算机为中心。通过云计算,你使用的软件程序不需要运行在你的个人电脑上,但是却可以通过访问英特网上的服务器使用这个软件程序。假如你的电脑死机了,但是这个软件程序仍然可以供其他人使用。这种模式仍然适用于你创建的文件,它们被储存在一个可以通过互联网访问的集合中。经过许可的任何人不仅可以访问文件,还可以实时地编辑和处理这些文件。不同于传统的计算,云计算模式不以个人计算机为中心,而是以文档为中心,个人计算机使用简单的文件访问并不重要。但是这只是一个简化。让我们来看看更详细的云计算是什么样子的?它和我们了解云计算的不同同样重要。云计算的不同首先,云计算不是网络计算。通过网络计算,应用程序和文档被托管在一个公司的服务器中并且通过公司的网络可以访问那些应用程序和文档。云计算要比网络计算大很多,它包含了许多个公司,许多个服务器和许多个网络。此外,与网络计算不同,云服务和储存通过网络在世界的任何地方都可以访问,但是通过网络计算,只能在自己公司的网络访问到。云计算也不是传统的像一个公司将计算服务外包(分包)给一个外部公司。虽然外包公司可以托管一个公司的数据或者应用程序,但是这些程序和计划只有这个公司的员工通过公司的网络才能访问到,而不是通过整个英特网。因此,尽管表面上很相似,但是网络计算和外包不是云计算。什么是云计算云计算定义的关键是“云”本身。对于我们而言,云是一大群互联的计算机。这些计算机可以是个人电脑或者网络服务器,它们可以是公共或者私人的。例如,谷歌的云是由小的个人电脑和更大的服务器组成的。谷歌云是私人的(即,谷歌拥有它),是公开访问的(通过谷歌用户)。这种计算机云继承并且超越了单一的公司或者企业。跨企业的跨平台的广大用户群可以访问云服务所提供的应用程序和数据。通过互联网访问,任何被授权的用户可以访问连接在英特网上的任何计算机上的这些文档和应用程序。并且,对于用户而言,云技术和云背后的基础设施是不可见的。云技术是否基于HTTP,HTML协议,XML,JavaScript或者其他特定的技术是不明显的。(在大多数情况下是无所谓的)。
云计算是用户为中心的。一旦你作为一个用户连接到云,无论储存在哪里的文件,信息,图像,应用程序,无论什么都将变成你的。此外,你的数据也可以和他人分享。事实上,任何访问你的数据的设备在云中都将变成你的。云计算是以任务为中心的。而不是以应用程序和它能为你做什么为重点,重点是你需要做什么和应用程序怎样为你完成这个需求。传统的应用程序----文字处理,电子表格,电子邮件等,都将变得没有它们所产生的文件重要。第二部分认识云计算云计算是强大的。连接在一起的数百台或者数千台计算机共同创造的计算能力是一台单独的台式计算机无法比拟的。云计算是可访问的。因为数据被存储在云中,用户可以迅速地从多个库中检索出更多的信息,你不仅限于一个单独的数据源,如同你和你的台式个人电脑一样。云计算是智能的。由于云中电脑储存着各种数据,数据挖掘和分析对于以智能的方式访问这些信息是必要的。云计算是可编程的。许多伴随云计算的必要任务必须要实现自动化。例如,要保护存储在云中某台计算机上的集成数据和信息需要在云中的另外一台计算机上完整的复制。如果云中的某台准备被用于复制这些数据和信息的计算机脱机,那么云的编程将自动的将该计算机的数据复制到云中新的计算机上。所有的这些都是在我们背后定义的,那么什么才是现实世界中的云计算?当你学习完整本书,网站托管,互联网访问,团体协作的应用程序一般是可用的。伴随着更多的方式,也许今天最好最流行的云计算应用例子就是谷歌大家庭中的应用程序---谷歌文档和电子表格,谷歌日历,谷歌邮箱,图片管理等等。这些应用都被托管在谷歌的服务器中,是任何连接在互联网上的用户都可以访问的,可用于在世界不同地域的团体协作。总之,云计算使计算机转移到用户,从应用到任务,从孤立的数据到任何地方都可以访问到的数据,并且与任何人共享。用户不再承担管理数据的任务,他甚至不需要记得数据在哪里。所有的事实是数据在云中,对于用户和被授权的用户是可以迅速访问的。从协作到云:云计算的简史云计算的前身是客户机/服务器模式的计算和点对点的分布式计算。问题是如何集中存储协作和如何使多台计算机协同工作以增加计算能力。客户机/服务器模式计算:集中应用和存储
很久以前的计算(1980年左右),一切的操作都是客户机/服务器模式。所有的应用程序,所有的数据,都被放在大型计算机上,这种大型计算机被称为服务器。如果用户想访问特定的数据或者运行程序,就必要连接到大型计算机,获得适当的访问,然后从大型计算机上得到程序或者数据以完成相应的操作。用户通过计算机终端连接到服务器,有时也被称为工作站或者客户端。这台计算机有时被称为哑终端,因为它没有足够(如果有的话)的内存,存储空间,处理能力。这仅仅是连接到一个用户,使他能够使用计算机主机设备。当用户获准访问大型主机时,信息技术(IT)的工作人员没有偶然访问时不在的习惯。甚至在一个大型主机上,处理能力也是有限的---IT工作人员有监护这种处理能力的权利。这种访问不是立竿见影的,也不可能有两个用户同时访问相同的数据。除此之外,用户几乎不得不采取IT工作人员给他们的一切措施(没有任何变化)。想要使用自定义报告去显示正常的信息子集?但是你不能这么做,虽然IT工作人员可以,但是这是他们从现在开始到数周后的日程安排。事实是,当许多人共用一台计算机,即使这是一台大型主机,你也不得不排队等候。需要返回一个财务报告?没问题,如果你不介意一直等到今天下午或者明天早上。在客户机/服务器模式环境中总是没有直接访问的,很少满足直接访问的情况。因此客户机/服务器模式,虽然提供类似的集中存储,但是不同于以用户为中心的云计算,在客户机/服务器模式计算中,所有的控制权在大型主机和控制该台计算机上的人手中。这不是一个有利于用户的环境。点对点计算:资源共享你可以想象,当问客户机/服务器模式的系统是一种“赶快和等待”的经历。该系统的服务器部分还创建了庞大的阻碍。计算机之间的所有通信必须先通过服务器,可是这种方式可能效率太低。最明显的是由于一台计算机连接到另一台计算机需要通过服务器促使了点对点(P2P)计算的发展。P2P计算定义了网络中每一台计算机具有同等责任和能力的网络架构。这种相对于传统的客户机/服务器模式的网络体系架构,在网络中有一台或者多台计算机是专门为其他计算提供服务的。(这种关系有时有主/从关系的特点,中央服务器是主,客户机是从)。P2P是一个均衡的概念。在P2P环境中,每台计算机是一个客户机和服务器,没有主和从。通过承认所有计算机在网络中的相同地位,P2P使得网络中的计算机可以直接交换资源和提供相互服务。没有中央处理器的需求,因为每一台计算机都能在要求这样做时提供这样的功能。点对点也是分散的概念。控制是分散的,所有计算机的功能是平等的。内容在不同计算机之间也是分散的。没有集中服务器被分配到主机的可用资源和服务。也许最引人注目的P2P计算实施是英特网。今天的许多用户都忘记(也许不知道),英特网最初的设想是在其最初ARPA网的幌子下,作为一个能够分享在美国的计算资源的点对点系统。ARPA网的各种网站(其中的许多不属于他们),连接在一起的计算机不是作为服务器和客户机,而是平等的。
初期的P2P英特网最好例子是Usenet网络。它创建于1979年,是一个计算机网络(通过英特网访问),每一台计算机提供该网络的全部内容。消息在平等的计算机之间传播。用户连接到Usenet的每一个服务器获得所有(或者几乎所有)的消息以张贴到每个单独的服务器。虽然用户连接到Usenet服务器是传统客户机/服务器模式的性质,但是这种Usenet服务器之间的关系肯定了P2P,也预示着今天的云计算。不过,并不是所有的英特网的一部分就是P2P性质。随着万维网中P2P的发展,退后了客户机/服务器模式。在网络上,每一个网站是由一个计算机组提供服务,网站的访问者使用客户端软件(网络浏览器)来访问它。几乎所有的内容都被集中,所有的控制都被集中,在这个过程中,客户端没有自主权或者控制权在。分布式计算:提供更强的计算能力P2P模型中最重要的子集之一是分布式计算,通过个人计算机在网络或者在英特网上的闲置来提供大型的,处理器密集型项目的计算能力。所有关于多台计算机间的周期的共享是一个简单的概念。个人计算机,每天运行满24小时,每周7天,是巨大的计算能力。大多数人不每时每刻使用他们电脑,却除去这样一个电脑的闲置资源。分布式计算使用这些资源。当一台计算机中加入到一个分布式的计算项目,软件被安装在这台计算机上在用户未使用的这段时间去运行各种处理活动。这个业余处理的结果被定期上传到分布式计算网络上,并与项目中其他计算机类似的结果相结合。结果是,如果有足够的计算机被涉及,就模拟了更大的大型主机和超级计算机的处理能力,这对于某些大型和复杂的计算项目的必要的。例如,基因研究需要大量的计算能力。对于传统手段,它可能需要数年的时间来解决基本的数学问题。通过连接在一起的数千(或者百万)台个人计算机,更多的能力适用于这个问题,得出结论就更快。分布式计算的历史可以追溯到1973年,多台计算机联网的施乐公司帕洛阿尔托研究中心是通过网络寻找闲置资源来开发杀毒软件的。一个分布式计算更实际的应用出现在1988年,当DEC(数字设备公司)系统研究中心的研究人员开发软件,在实验室中分布式的工作应用在各个工作组之间以实现大数字。到1990年,大约100个用户组,利用这个软件实现100位数字,到1995年,同样的效果被扩展到网络来实现130位数字。没过多久分布式计算进入了互联网。第一个主要的基于英特网的的分布式计算项目是distribute.net,在1997年推出,雇佣了成千上万的个人计算机来破译加密代码。即使是较大的SETI@home,1999年5月,推出了使用连接在一起的数百万台的个人计算机搜索外层空间智慧生命。许多分布式计算项目是在大型企业内进行,采用传统的网络连接,形成分布式计算网络。另外,更大的项目通常使用互联网用户的计算机,通常发生脱机,然后每天通过传统的消费英特网上传资料。了解云架构云计算的关键是“云”,一些大规模网络服务器或者个人计算机连接在庞大的网络中。这些计算机并行运行,结合各自的资源,产生超级计算般的能力。
究竟什么是“云”?简而言之,云是计算机和服务器都通过英特网公开访问的集合。这种硬件通常是复合的和由有一个或者多个数据中心为稳固基础的第三方运作。这些机器可以运行任何操作系统,这些机器的处理能力不是它们作为单独台式机所能比拟的。如图1.1所示,个人用户使用他们自己的计算机或者便携设备通过英特网连接到云。对于这些个人用户,云被看作是一个单一的应用程序,设备或者文件。云中的硬件(操作系统管理硬件连接)是无形的。这看似简单的云架构,它确实需要一些智能化的管理去将这些计算机连接在一起,并分配任务处理以满足众多的用户。正如你可以看到在图1.2中,这一切都开始于个别用户看到前端界面,选择一个任务或者服务(无论是启动应用程序或者打开一个文档),用户的这些请求被传递到管理系统,然后找出正确的资源,然后调用系统的恰当资源去供应服务。这些服务在云中开拓中必要的资源,发布恰当的网页应用程序,或者创建文件和打开请求的文件,网页应用程序启动后,系统的检测和计量功能跟踪云的使用,使资源分配和使用于正确的用户。正如你所看到的,云计算概念的观念是许多管理任务的自动化。如果一个系统需要人管理资源的分配过程那么这个系统不是云。在这种情况下,该系统是仅仅以老式数据中心为基础的客户机/服务器模式计算的21世纪的版本。对于系统实现云的状态,必须更换人工管理实现自动化程序。
致谢经过将近一个学期的忙碌,毕业设计(论文)终于接近了尾声。在此过程中,我遇到过挫折、困难甚至失败,但是我也得到了老师、同学热情的帮助,得到了亲人的支持与鼓励,是他们让我有信心有动力将我的毕设进行下去,在此我要对他们表示深深的感谢。首先要感谢的是我的指导老师。谢谢她一直以来对我的培养。在我的毕业设计过程中,从选题、开题、系统开发到最后的论文编写等环节,都给了我具体细致的指导。她和蔼可亲,谦虚严谨,认真负责,以渊博的知识和深厚的专业素养深深感染了我。同时,她在解决实际问题时敏锐的洞察力、高效的作风以及在治学上的严谨也使我获益良多。大学期间,学院的领导和老师给予了我很大的帮助,身边的同学也让我学到很多东西,在此衷心地表示感谢。感谢我的亲人对我一直以来的支持与鼓励。感谢各位老师在百忙之中审阅我的论文,并给予宝贵的指导。对此我向各位老师表示深深的谢意。
您好,为你提供优秀的毕业论文参考资料,请您删除以下内容,O(∩_∩)O谢谢!!!AlargegroupofteamerchantsoncamelsandhorsesfromNorthwestChina"sShaanxiprovincepassthroughastopontheancientSilkRoad,Gansu"sZhangyecityduringtheirjourneytoKazakhstan,May5,2015.Thecaravan,consistingofmorethan100camels,threehorse-drawncarriagesandfoursupportvehicles,startedthetripfromJingyangcountyinShaanxionSept19,2014.ItwillpassthroughGansuprovinceandXinjiangUygurautonomousregion,andfinallyarriveinAlmaty,formerlyknownasAlma-Ata,thelargestcityinKazakhstan,andDunganinZhambylprovince.Thetripwillcoverabout15,000kilometersandtakethecaravanmorethanoneyeartocomplete.ThecaravanisexpectedtoreturntoJingyanginMarch2016.Thentheywillcomeback,carryingspecialtyproductsfromKazakhstanAsmallarttroupefoundedsixdecadesagohasgrownintoahouseholdnameintheInnerMongoliaautonomousregion.Inthe1950s,UlanMuqirArtTroupewascreatedbynineyoungmusicians,whotouredremotevillagesonhorsesandperformedtraditionalMongolianmusicanddancesfornomadicfamilies.The54-year-oldwasborninTongliao,ineasternInnerMongoliaandjoinedthetroupein1975.Hesaysthereare74branchtroupesacrossInnerMongoliaandactorsgivearound100showseveryyeartolocalnomadicpeople."IcanstillrecallthedayswhenItouredwiththetroupeintheearly"80s.Wesatonthebackofpickuptrucksforhours.Theskywasblue,andwecouldn"thelpbutsingthefolksongs,"Nasunsays.ThevastnessofInnerMongoliaandthelackofentertainmentoptionsforpeoplelivingthere,madetheirliveslonely."Thenomadicpeoplewereveryexcitedaboutourvisits,"Nasunrecalls."Wedidn"thaveaformalstage.Theaudiencejustsatonthegrass.Usually,theperformancesbecameabigpartywithlocalpeoplejoiningin."Forhim,therewardingpartabouttouringisn"tjustaboutsharingartwithnomadicfamiliesbutalsoaboutgaininginspirationforthemusicanddance.UlanMuqirliterallytranslatesas"redburgeon",andtoday"sperformersofthetroupestilltourtheregion"svillagesandentertainnomadicfamilies,buttheirfamehasspreadaroundtheworld.OnMay16and17,nearly100singersanddancersfromthetroupeperformedatBeijing"sPolyTheater.Theirshow,titledUlanMuqirontheGrassland,depictedthehistoryanddevelopmentofthearttroupe."BeingfromtheregionallowedmetoembracethecultureofInnerMongoliaandbeingamemberofthetroupeshowedmewhereIbelonged,"Nasun,thearttroupe"spresident,whoisalsoarenownedtenor,tellsChinaDaily.Duringatourin1985,hewenttoavillageandmetanelderlylocalman,whotoldhimastoryabouthisfriendshipwithasoliderfromShenyang,capitalofNortheastChina"sLiaoningprovince,decadesago.Thesolidergavetheoldmanahandmadesaddlewhentheybidfarewell.ThestoryinspiredNasuntowriteCarvedSaddle,asongthatlaterbecameoneofhismostpopularnumbers.Now,everyyear,Nasunrecruitsyoungsingersanddancersforthetroupe.Thetroupehasalsodesignedanewrepertoire,whichismostlybasedonthedailylivesofMongolianpeople,especiallythelivesofnomadicfamilies,andhascombinedcontemporarymusicalelementswithfolksongsoftheregion.Haimu,a25-year-oldkhoomei(alocalvariantofovertonesinging)singer,joinedthetroupethreeyearsago.Alongwithasix-memberband,heperformsfastsongsandsoftonesthathewrites-allwhileplayingthehorse-headfiddle."AlthoughIlearnedthepianosincechildhoodandgrewuplisteningtovariouskindsofmusic,tome,thefolkmusicofInnerMongoliaistheroot,"hesays."Performinginremotevillagesispleasant.Ifeelathomeontheboundlessgrasslands,andthewarmpeopletheremakemefeelfulfilled."ThefirstroundofspringauctionseasoninBeijingendedlastweek,butitfailedtocreatemuchspringintheartmarket.AlthoughtwopiecesofChinesepaintingfetchedmorethan100millionyuan,thedeclineintradingvolumeandsalerateshowedadownturnthisyear.Inthe“GrandView:ChinesePaintingHighlight”sessionatChinaGuardian2015springauctions,PanTianshou’srepresentativeworkEagle,RockandFlorahitarecordauctionpriceof279millionyuan,whileLiKeran’smasterworkJinggangMountainfetched126.5millionyuan,anunexpectedhighinrecentyears.However,thetradingvolumefellsto1.87billionyuanfrom2.22billionyuaninthesameperiodtheyearbefore.TheHuangchen2015SpringAuctions,whichrecorded42.5millionyuanintotalsales,experiencedthesame.Thesectionnumberwentdownto5from12comparedtolastyear.AccordingtoexpertShaoJianwu,theartmarketdidnotattractmuchexcitementthisyearduetotheboomingstockmarketandthepersistentproblemsofforgeryandfakedeals.ThetwopiecesofChinesepaintingnotcheduphighpricethisspringduetotheirownvaluenotduetoarevivalinthemarket."Thesuccessfultransactionoftwoworkswithahammerpriceofmorethan100millionyuanonceagainconfirmsthatvaluableandrareworksofhighqualityalwaysearnthelong-lastinghighprice.Chinesepaintingandcalligraphyisstillthepillarofthemarket.However,theoverallsalesratehasdroppedslightly,whichreflectsthedemandfortheordinaryauctiongoodshasweakened,”saidthepresidentofChinaGuardian’sHuYanyan."Besides,theentryofnewbuyersalsomakescertainchangestothedirectionofpurchasing.Inaword,theoverallmarkettrendisveryunpredictable.AlthoughChinaGuardian2015SpringAuctionshasachievedremarkableresults,itdoesnotmeanthatthemarkethaswalkedoutofthepredicament.Westillhavetowaitforthebigeconomicboomtoinvigoratetheartmarket.”Evenso,thehotpursuitofsomespecialitemsappearedthisspring.AspecialsessionofChinaGuardianSpringAuctionstitled“FineGilt—BronzeBuddhistImages”achievedagreatdealwithtotalsalesvolumeof41.89millionyuanand92percentsalerate.The5thShamarRinpocheStatuefrom16-17thcenturyofTibetwassoldfor5.06millionyuan.TheBeijingChengxuanAuctionsfeaturedalmost2,800itemsofcoinsandstampsinthreesessionswithgoodsalerate.TheHuachenAuctionsalsosetaspecialsessionofphotographsundertheconditionoflarge-scaledeclineofauctionsessions.TherewasapalpabledullthudofdisappointmentthataccompaniedthereturnoftheimperialentourageofZhenHuantoherhomeland.ItfollowedacoupleyearsofhushedexcitementasChinesefanswerefedtidbitsabouttheirproudconcubinewhowassupposedtoconquerthehighgroundoftheNorthAmericanmarket.ZhenHuanis,ofcourse,thetitlecharacterofTheLegendofZhenHuan,a2011televisionseriesthatsweptChinaoffitsfeetandlatertookotherAsiancountriesbystorm.Twoyearsago,itwasreportedthatHBO,apremiumcableserviceheadquarteredintheUnitedStates,wasgoingtoairitinNorthAmericaaftersomemodification.Now,acondensedversionthatprovidesEnglishsubtitlesbutnodubbinghasfinallybeenmadeavailableonNetflixforonlinestreaming.Thisversion,highlyanticipatedasamilestoneinChina"sculturalforayoverseas,hasbeenwidelypannedbyitshomeaudience.RetitledEmpressesinthePalace,theAmericanversionhasbeenshortenedfromitsoriginal76episodesat45minuteseach,tosix90-minuteepisodes.Thequickpacingthrewoffmanynativeviewers,whoareaccustomedtoamoreleisurelydaytime-soap-stylenarrativerhythm.(ChineseTVstationswouldruntwoorthreeepisodeseveryday.)Ididnotfinishthefull-lengthversionandfoundthetruncatedonenotdifficulttofollow.What"slost,Ibelieve,aretheinterestingsetupsandpausesthatilluminatethe
Chineseartofstorytelling.Muchoftheplotisstillthere.Itistheflavorthatwassacrificed.TheAmericaneditionusestheframeworkoftheEmpressDowagerinhersenioryearsreminiscingatthebeginningandtheendofeachepisode,hintingatwhat"stocomeandrecappingthekeypoints.Thisdevice,notusedintheoriginal,isculturallyunderstandablebutartisticallymediocre.Whatpuzzlesmeisthetwonewsongsfortheopeningandendcredits.TheywerewritteninEnglish,butsungbyChinesewithanuncomfortableaccent.TheywereobviouslydesignedtoappealtoanEnglish-speakingbase,butdonotjibewiththeChinesedialogue.Speakingofthedialogue,theEnglishtranslation,pickedapartbysomeChinese,istooliteralformytaste.IcanimagineatypicalAmericanhitbyaflurryofroyalranks,addressesandgreetings,evenmultiplenamesandtitlesforthesameperson.Thefirsthalfhourmustbeaswamptowadethrough,verymuchlikemyexperienceofgettingthroughaTolstoytomewithitsendlessinflectionsofnamestransliteratedintolengthyChinese.Iseethechoiceofverbatimtranslationasaneffortforconveyingexotica.Itisfairlycompetent,withnoerrorthatIcoulddetect,butfailstoriseabovewordsorcapturetheessenceofthelanguage.Aculturalproductusuallycrossesovertoaforeignterritoryfirstbyanemphasisonthecommonalities.ButwhetherinsideoroutsideChina,thetemptationtosellitforthedifferencesisjusttoogreat.Sure,thesumptuoussetsandcostumesareabigattraction,butthenarrativetechniquehasbecome-howshallIputit?-abitanglicized,whichisnecessaryforculturalexport.Judgingbytheresponses,thislegend,which,contrarytotheclaimoftheEnglishtrailer,istotallyfictitious,hasdepartedfromChinabutnotyetlandedonAmericanshores.IamabigfanofRalphWaldoEmerson"sessaytitledSelf-Reliance.Ifyou"venotyetreadit,Istronglyencourageyoutodoso.Inthisessay,thevenerableEmersontalksabouteschewingthetrappingsofsocietyandfindingone"sownpath.Heurgesthereadertofindrectitudeandleadamorallife.Heprofessesthat,onlybybeingselfreliant,asopposedtorelyingonthegovernmentandbeingdictatedtobysociety,canonebeginleadingadecentandpurposefullife.Heaversthatsuchalifeistheonlylifeworthliving.Iagreewithhim.ThisessaywaswrittenduringatimeofsocialupheavalinAmerica,anditisratheroddthatEmersonauthoredit,ashewasapartoftheuppercrustofsocietyatthetime.Itjustsohappenedthathelookedaroundhim,attheindolenceandthewantonnessofthepeopleinhiscircle;hewonderedhowintheworldhecametobelongthere.Indeedhispenningandpublishingthisessaycausedhisexcommunicationfromhighsocietyandalsocausedhimalotoflegaltrouble.Thelegaltroublecameasaresultofthefactthathewasspeakingoutagainstthegovernment.Iliketoreferencesuchtextsfromtimetotimeasanexamplebothofthefactthathistorydoesrepeatitselfandthatthisworldisnotsobigthatwhatappliestoonesocietydoesnotinanywaytouchanothersociety.Onamuchsmallerscale,Emerson"sessayaffectsmeverydeeply.Notasanurgingtobecomeselfreliant–I"mnothingifnotthat!Inhistextheexpoundsontheideathatonemustgivetheirlifeapurpose.Andthatisthetruetopicofthisentry.Theselastfouryearshavebeensoeasy:teachforagrandtotalofsixhoursaweek,andtherestofmytimeismine.SinceI"vebeenhereIhavebeentaskedwithnothingmorechallengingthanlearningmystudents"namesandfiguringoutwhattodowiththemforthebrieftimeeachweekthatIstandinfrontofthem.Idonotconsiderthechallengesoflearningtoliveherepartofapurposefullife.Iconsiderthoseissuesexistentialinnature.OneoftheproblemswithmylifeinAmericawasthatIfeltithadnopurpose.IwenttoworkeverydayandevendidwhatIcouldtomakemycolleagues"workliveseasier,butIsimplycouldnotdigestthefactthatthatwasmysolepurposeinlife.Withnofamilytosupport,Iwasthesolebeneficiaryofmyemployment:thepaycheck,thebenefits,theincentivesandtherewardswereminealone.Notmuchofapurposeinbeingself-serving,isthere?WhileIwasastudent,IfeltIwasleadingapurposefullife.Learningnewthings,broadeningmyhorizons,expandingmylifeexperiencesallgavemylifeazipanddrivethatIhadnotfeltsincebeinginsurvivalmodewhenmykidsweresmall.AftergraduatingcollegeIfeltoddlydeflated…butbythen,Chinawasonmyhorizon.