- 1015.00 KB
- 2022-05-17 11:03:55 发布
- 1、本文档共5页,可阅读全部内容。
- 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
- 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
- 文档侵权举报电话:19940600175。
摘要当今世界以信息化为主导,现在信息化进程在中国进入了前所未有的快速发展阶段。随着计算机软硬件的迅速升级、计算机网络的迅速普及,网上办公、信息化管理越来越被企事业单位所青睐。川谷酒业信息管理系统是川谷酒业的信息管理平台,其中川谷酒业信息管理系统设备管理子系统负责对川谷酒业设备设施信息管理。本论文主要内容为川谷酒业信息管理系统设备管理子系统设计与实现及相关技术研究。系统采用B/S架构,由客户端(Web浏览器)、Web服务器和数据服务器三层分布结构组成。系统开发过程是按照国际上主流的RUP(RationalUnifiedProcess)开发过程,遵循了以用例为驱动,以架构为中心,迭代和增量的开发原则,系统建模时采用UML语言。系统开发使用C#语言,采用.NET多层架构中的三层模型,具有很强的可靠性、可用性和可移植性。目前系统处在本地试运行阶段,运行状态良好。设备信息表单的增、删、查、改、设备移交和资产统计等功能都已经实现。用户界面也设计的非常友好,例如用户输入日期时,点击文本框,系统自动弹出日历控件,这样用户不需要自己输入而可以点击选择日期和时间;用户在填写设备类别时,也无需自己输入而可以在下拉菜单里选择。系统运行结果表明,本系统满足系统管理员、企业领导和普通员工的应用需求。论文将对该系统的设计与实现做详细介绍。关键词:.NET多层架构管理信息系统ASP.NET39
AbstractIntoday"sworldofinformationintothelead,andnowtheprocessofinformatizationinChinahasenteredanunprecedentedphaseofrapiddevelopment.Withtherapidescalationofcomputerhardwareandsoftware,therapidlygrowingpopularityofcomputernetworks,onlineoffice,informationmanagementisincreasinglybeingpreferredbyenterprisesandinstitutions.ChunaGuMISisChuanGuinformationmanagementplatform,inwhichChuanGuMISequipmentmanagementsubsystemisresponsibleforChuanGu"sequipmentinformationmanagement.ThemainpurposeofthispaperisChuanGuMISequipmentmanagementsubsystem"sdesignandimplementandthetechnologyusinginimplementingthesystem.ThissystemadoptstheB/Sstructure,whichismadeupbythreelayers:clientend,webserverandthedatabaseserver.ThesoftwaredevelopmentprocessisbasedonRationalUnifiedProcess(RUP),whichisaUsecase-Driven,Architecture-Centric,Component-Based,IterativeandIncrementalDevelopedProcess.ThesystemwasdevelopedinC#languagebasedon3-tierarchitectureinthe.NETwhichensurethesystemwhichweusehashighreliability,maintainabilityandportability.Inthecurrentsystemoflocaltestrunstage,runningingoodcondition.ThefunctionofDeviceInformationManagementhasbeenachieved.Userinterfacedesignisalsoveryfriendly.Theresultsthatthesystemisrunningshowthatthesystemmeetsthesystemadministrator,businessleadersandthegeneralstaffoftheapplicationrequirements.Thedesignandimplementationdetailsofthesystemwillbeintroducedinthispaper.KeyWords:.NETMULTI-LAYERSTRUCTUREMISASP.NET39
目录第1章绪论11.1课题研究背景11.1.1课题来源11.1.2信息管理平台(MIS)11.1.3.NET开发环境21.2课题研究目标和意义31.2.1课题研究目标、主要内容31.2.2课题的研究意义41.3论文的组织结构4第2章三层架构和.NET平台52.1三层架构的优势和特点52.1.1三层架构软件的优势52.1.2.NET三层架构和J2EE三层架构的比较62.3ASP.NET技术研究82.3.1ASP.NET82.3.2ASP.NET的特点92.4ADO.NET技术研究92.4.1ADO.NET92.4.2ADO.NET体系结构10第3章系统需求分析与详细设计123.1系统实现目标123.2系统功能需求分析123.3软件开发及运行环境133.3.1开发平台133.3.2用户平台133.4总体框架143.5设备管理1539
3.5.1整体功能153.5.2系统层次模块163.5.3模块设计17第4章编码实现及关键技术研究234.1开发环境搭建234.2关键技术研究与分析234.2.1系统架构244.2.2存储过程的使用254.2.3页面之间值传递264.2.4将数据导入到Excel中26第5章用户使用说明275.1设备管理275.1.1设备登记275.1.2设备保养295.1.3设备报废305.2设施管理305.2.1设施管理305.3.2设施验收335.2.3设施检修335.2.4设施报废345.3设备信息统计管理345.3.1资产统计345.3.2设备移交34第6章总结与展望356.1总结356.2展望35致谢37参考文献3839
第1章绪论1.1课题研究背景随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断发展的新型学科,任何一个单位要生存和发展,都要高效率地把内部活动有机的组织起来,这就必须建立与自身特点想适应的管理信息系统。川谷酒业信息管理系统是一个B/S结构的Web应用系统,为北京理工大学计算机科学技术学院自主开发项目,将为川谷酒业公司提供信息管理平台。1.1.1课题来源本课题来源于川谷酒业管理软件项目,本论文的研究内容为设备管理系统,是该项目的一部分。当今世界以信息化为主导,现在信息化进程在中国进入了前所未有的快速发展阶段。随着计算机软硬件的迅速升级、计算机网络的迅速普及,网上办公、信息化管理越来越被企事业单位所青睐。信息化管理使日常的工作效率更高,更加便捷,并将大大的减少人力,推动社会向前快速发展。为了提高川谷酒业管理工作的质量和水平,更好地为管理工作提供支持和保障,需要不断创新管理的方式和手段,以适应时代的发展和需要。建立针对其具体需求的管理信息系统,可以提高川谷酒业管理工作的水平和效率,从而推动整个企业的业务工作和管理工作的发展。正是由于以上的需要,本文对面向企业的信息管理系统的关键技术进行了深入的研究,而且,开发出了适合川谷酒业工作流程和需要的设备信息管理支持平台。1.1.2信息管理平台(MIS)管理信息系统(ManagementInformationSystem,简称MIS)是一个服务于管理领域的信息系统,是在EDPs(ElectronicDataProcessing39
Systems,电子数据处理系统)基础之上,引进大量管理方法和系统化的开发方法,对信息进行收集、转换、加工,并利用信息进行预测、控制、辅助企业管理的系统。MIS是一个高度集成化的人机结合的系统,它是企业进行整体信息处理的支柱。1985年美国明尼苏达大学的G.B.Davis在其经典著作《管理信息系统》一书中给出了较完整且普遍为人接受的定义:“MIS是一个利用计算机软硬件、手工作业、分析计划、控制和决策模型以及数据库技术的人一机系统,它能提供信息,支持企业的运行、管理与决策功能。”在MIS的技术和知识构成中,系统的观点和系统工程的方一法、定量化管理分析方法和信息处理及计算机应用技术被认为是三个最核心的方面,亦称之为三大要素。从上述MIS概念可知,MIS强调集成化、人机系统和强调分析、技术、预测、控制功能几个观点。(1)集成化所谓集成化是指系统内部的各种资源设备统一规划,以确保资源的最大利用率、系统各部分运行的协调一致性和高效低成本地完成组织日常的信息处理业务。例如具有集中统一规划的数据库系统,就使得系统内部的信息集中成为系统各部分(包括各个用户)所共同拥有的资源。(2)人—机系统人—机系统是一个开放式的系统,在这个系统中真正起到执行管理命令,对组织的人、财、物、资源以及资金流、物流进行管理和控制的主体是人,计算机自始至终都是一个辅助管理的工具,是一个至关重要、举足轻重的工具,它可以为人的管理活动指明方向(或制定方案)。(3)强调分析、计划、预测、控制功能MIS区别于EDPs,更强调管理方法的作用,强调对信息的进一步深加工,即利用信息来分析组织的生产经营状况,利用各种模型对组织的生产经营活动各个细节进行分析和预测,控制各种可能影响实现组织目标的因素,以科学的方法,最优地分配各种资源(如设备、任务、人、资金、原料、辅助等等),合理地组织生产(如计划、调度、监督、调节机制等等)。1.1.3.NET开发环境.NET曾经一度被微软在内部称作“下一代视窗服务”(NGWS),最终确定为NET名称不仅仅是微软惯用市场化手段为了朗朗上口和便于用户的识别,而且是把这个包含创新性的概念转变成为一个集全新商业模型、全新技术模型于一体的统一框架。.NET的核心概念就是“把软件当作服务”39
,也就是把软件应用产品与商业、内容、信息服务合并成一种事物,使之成为可以在网络上订阅使用的服务形式。人们设计、构造、实施、运作、集成和使用软件的方式都将透过网络完成,所以也就要按照使用这些服务的不同方式支付相应的费用。.NET彻底地把计算模式从单机、客户端服务器和Web网站的方式转向分布式计算(DistributedComputing)。XML被行业称为网络计算的世界语(LinguaFranca),是一种替代HTML的可扩展标记语言。XML采用文本标记的形式定义各种可交换数据结构,并且可以利用标准的网络协议进行传输。正因为这些特性,XML实际上代表了平台中性和进行网络计算的趋势。有了XML作为核心技术,各种网站提供的服务都不再局限于一些花花绿绿的页面,而是可以进行编程调用的WebService。1.2课题研究目标和意义下文介绍了课题研究目标、主要内容以及课题研究的意义。1.2.1课题研究目标、主要内容本课题主要是管理信息系统的研究和实现。(1)以管理信息化为背景,探讨管理信息化建设和管理信息系统的结构、开发方法,提出本系统所采用的结构和应用的开发方法。(2)进行需求分析,给出系统的业务功能,提出系统的总体设计原则,对当前的MIS开发技术进行了比较,论证本系统采用的开发技术。(3)进行软件的总体结构设计,包括系统的功能设计、信息设计及网络拓扑结构。在功能设计方面给出系统的功能树,对系统涉及的相关数据进行分析,确定数据之间的相互关系,给出系统的模型图。(4)在详细设计的基础上采用.NET技术和SQLServer数据库开发基于.NET平台的MIS软件,给出系统的实现实例并探讨系统实现中的一些主要技术。本文是在作者参加的川谷酒业管理软件39
项目开发的基础上完成的,本人参与了该项目设备管理子系统的总体结构设计,提出了系统的功能页面划分方案,对系统的数据进行了分析。此外,对实例部分建立了用例图,并负责完成了相关的功能编码工作。1.2.2课题的研究意义本课题的意义是通过一个具体信息管理系统项目的设计和实现,探讨一种基于.NET多层构架框架下的标准同类软件应用设计方案,对.NET架构的一些相关技术作了一定的分析和研究,并付诸于实践,从而体现基于组件设计、多层结构应用、组件重用、松散耦合等设计思想,为今后的企业级开发应用积累经验。1.3论文的组织结构本文共分为七章第1章绪论:主要介绍本课题的研究背景、研究目标和个人开展的工作。第2章三层架构和.NET平台研究:先介绍了三层架构,以及比较了J2EE三层架构和.NET三层架构的优缺点,接着系统的介绍整个.NET三层架构体系。第3章系统需求分析:总结分析了系统的需求。第4章详细设计:介绍了系统的详细设计。第5章编码实现及关键技术研究:第6章用户使用手册:介绍了用户如何使用本系统,方便了日后系统在日常工作中的正确运行。第7章总结与展望:对本论文做了整体总结,同时也提出了对本文将来的工作提出了一些设想。39
第2章三层架构和.NET平台本章详细阐述了三层架构以及通过与J2EE三层架构对比的方式,说明了.NET三层架构的特点和优势。除此以外,本章就系统开发过程要使用的.NET中ASP.NET和ADO.NET技术进行了介绍。2.1三层架构的优势和特点川谷信息管理系统采取的是.NET三层架构模式,接下来文章将详细介绍三层架构软件的优势和特点,系统采取.NET三层架构开发的优势。2.1.1三层架构软件的优势三层应用结构要求层与层之间必须有明确的接口定义,从而保证多层之间可以协作完成应用任务。业务层作为表现层和数据层的中间服务器,必须保证所有的业务逻辑被正确处理。三层结构软件具有以下优点:(1)表示和功能相分离将功能行为与其可视表示相分离的重要性体现在两个方面。首先,可以很容易地在经过测试的与功能相隔离的状态下修改可视表示。其次,通过这种分离,客户机只需要执行描述任务和向服务器发出请求,不需要很强的硬件处理能力。(2)开发过程的有限并存单层应用系统几乎没有任何机会可以并行开发,而且多个开发团体有可能在开发应用系统的不同部分出现问题,因为各个团体之间的相互依赖过多,影响开发速度。两层结构应用系统在一定程度上改进了这种状况,而采用三层体系结构情况会好一点。首先,各层可以选择各自最适合的开发语言。其次,随着三层体系结构普遍成为大型和健壮的模型,不同的编程团体彼此之间不必了解各自的工作。(3)功能模块的重用39
由于应用程序的关键部分被分开并使用明确定义的接口集成,因此这些部分可以供需要相同功能的其他应用程序重用。面向对象的程序设计试图解决软件重用问题,但是要求源代码层次上的重用。提供了源代码之后,当接口定义不明确时,往往需要修改软件。由于软件会被轻易地修改,、所以没有重视接口设计问题。三层结构软件无论是采用COM组件软件,还是构建基于CORBA或者EJB标准的中间件,在重用上已经前进了很多。程序设计人员在接口设计上不须花费很大的气力,同时必须考虑其他程序如何使用这些组件或中间件。(4)进行严密的安全管理越关键的应用,用户的识别和存取权限设定越重要。在三层体系结构中,识别用户的机构是按层来构筑的,对应用和数据的存取权限也可以按层进行设定。例如,即使外部的入侵者突破了表现层的安全防线,若在业务层中备有另外的安全机构,系统也可以阻止入侵者进入其他部分。2.1.2.NET三层架构和J2EE三层架构的比较在微软推出.NET战略的同时,世界另一个大的软件公司Sun的J2EE战略与微软的.NET战略针锋相对,两者之间的技术有许多共同点,但也有很多区别,只有做对比研究才能让我们更加全面的掌握.NET的精髓。图2-1J2EE架构简图39
图2-2.NET架构简图可以看到.NET与J2EE有很多的相似性,但是他们之间还是存在有很多的差别的,现在从几个方面对他们做一个比较。(1)开发商中立性二者之间的最大不同是.NET是一个产品,J2EE是一个协议规范。所以各个独立的开发商只是利用J2EE规范来架构自己的平台,所以就存在一个开发商产品的可移植性,这就是我们所讨论的开发商中立性。(2)整体成熟性与.NET平台技术相当的MTS和COM+的出现比J2EE和EJB规范的提出早了三年,所以了解.NET平台比J2EE平台更成熟就不足为怪了。NASDAQ和Dell就利用.NET技术建立了高度可靠性的网站,但是到目前为止还几乎没有哪个著名的网站使用了J2EE平台。(3)互用性与网络服务.NET平台是以UDDI和SOAP标准为基础的,这些标准已经得到了包括微软、IBM和Ariba等在内的一百多家公司的广泛支持,sun公司也是UDDI协会的会员并且认识到了UDDI标准的重要性,但是sun公司到目前为止没有采取任何措施将任何一种UDDI标准合并到J2EE中,这包括最基本的UDDI标准——SOAP协议,而sun将重点主要集中在了J2EE开发商与CORBA(CommonObjectRequestBorkerage39
Architecture,公用对象请求代理体系结构)开发商的互用性上,它是基于IIOP(InternetInterObjectRequestBorkerageProtocol,Internet互操作协议栈)的。与J2EE相比.NET平台有一个更加强大的技术中性的电子协作策略,UDDI将比IIOP更有前途,因而从互用性和网络服务的角度来看,.NET将比J2EE更有前途。(4)可伸缩性如果系统成本是一个重要的考虑事项,与J2EE相比.NET平台有很大的优势,如果需要获得相同的功能,需要花的费用J2EE将是.NET平台上所花费的5到10倍。显然在这方面.NET平台比J2EE有更大的优势。(5)架构支持显然当建立一个大型的电子商务解决方案时,所有人都希望在已经完整定义的结果测试成功的电子商务架构基础上创建解决方案,没有人希望从头做起。.NET平台包括一个CommerceServer电子商务架构,而在J2EE空间内没有与之相当的开发商架构,所以利用J2EE则必须从头创建新的电子商务解决方案。(6)客户端设备独立性我们现在再来讨论一下客户端设备独立性的问题,由于J2EE负责根据客户端设备的能力决定传输何种代码的是表示层的程序员,而在.NET中则是VS.net的控件,所以我们可以利用.NET编写与可视控件交互的独立设备的代码。这样以来.NET平台将是程序员的开发、测试和维护更加容易而且也更加便宜。2.3ASP.NET技术研究下文简要介绍了系统实现中使用到的ASP.NET技术以及它的特点。2.3.1ASP.NET39
ASP.NET是Microsoft推出的ASP的下一代版本,然而ASP.NET又并非从ASP3.Q自然演化而来,在许多方面,ASP.NET与ASP有着本质的不同。ASP.NET完全基于模块与组件,具有更好的可扩展性与可定制性,数据处理方面更是引入了许多新技术,正是这些具有革新意义的新特性,让ASP.NET远远超越了ASP,同时也提供给WEB开发人员更好的灵活性,有效缩短了WEB应用程序的开发周期。如今,ASP.NET已逐渐成为WEB应用开发的主流工具。2.3.2ASP.NET的特点针对它在WEB应用的表示层的特点进行论述。ASP.NET的最大特点之一就是提供了功能强大的WebForm,它具有四个特点,在下文一一讨论。(1)WebForm把基于VisualBasic的表单的高生产性的优点带到了网络应用程序的开发中来。WebForm支持传统的将HTML内容与脚本代码混合的ASP语法。(2)WebForm控件负责生成用户接口,典型情况是在HTML表单中。ASP.NET是提供了一套映射传统的HTML用户接口小部件(包括列表框,文本框和按钮)的WebForm控件和一套附加的更加复杂的网络控件(如日历和广告转板)。(3)考虑到网络是一种无状态的联接模型,网络应用程序开发人员所面临的一个很复杂的问题是,他们要对用户与基于网络的接口的交互作用做出反应。网络利用ASP.NET的体系架构提供了一套丰富的服务,以帮助开发人员建立交互式网页。(4)页面的代码与内容的分离使ASP.NET网页能动态地编译到受控类中,从而提高性能。每个引入的HTTP请求都被传递到一个新的网页实例,因此开发人员不需要关心代码中的线程安全性。2.4ADO.NET技术研究在系统的实现过程中,前台需要与数据库进行的交互是通过ADO.NET技术实现的。下文对ADO.NET技术做简要介绍和进一步深入研究。2.4.1ADO.NETADO.NET是一个以.NETFramework为基础的全新的数据操作模型。它是专门为.NE.T平台上的数据存取操作而建置的。ADO.NET支持工业标准技术,提供程序化接口以便与OLEDB兼容的数据源沟通,应用程序可以通过ADO.NET连接到这些数据源并操作这些数据。无论数据源是关联式数据、非关联式数据库、文字数据,还是如Microsoft39
Excel一样的表格式数据等,都可以通过ADO.NET进行存取。但ADO.NET并不是微软的ADO的下一版本,ADO.NET提供以一种新的基于离散数据和XML的数据操作方法。(1)离散数据操作方法ADO.NET从数据库捕获部分的数据集后,就切断和数据库系统之间的连接。数据操作本身是在木机的数据集(Dataset.)内进行的,只有等需要时才更新到数据库服务器上。(2)集成XML支持ADO.NET和XML是紧密联系在一起的,ADO.NET使用XMI.作为数据传输标准,这保证了只要是在XML解析器可以工作的任意平台上,都可以接收和操作数据对象。2.4.2ADO.NET体系结构ADO.NET对象模型是从ADO数据访问模型演化而来的,因此ADO.NET拥有一些与ADO相同的对象如Connection和Command对象,同时ADO.NET还有新的对象如Datasets,DataReader等。ADO.NET的体系结构如图2-3所示。图2-3ADO.NET体系结构39
ADO.NET的设计思想是从数据库中读取数据到内存中,并构成一个存在于内存中的数据库。若要达到这个目标就要对数据进行读取以及构造内存数据库。我们的目的是从数据操作中分解数据访问。完成此任务的就是ADO.NET的两个核心的组件:Dataset和.NETDataProvider。(1)DatasetDataset是一个于数据源无关的内存数据表示方法,所以可以实现不同数据源、XMI数据和管理应用程序(本地)数据的表示。它可以同时操作多个不同的数据源。(2).NETDataProvider它实现了实现连接数据库、执行命令和检索结果等操作,并直接处理检索到的结果或将其放入到DataSet中,以便与来自多个源的数据或在层之间进行远程处理的数据组合在一起。.NETDataProvider有四个核心的组件:Connection对象:提供了对数据源的连接方法。Command对象:实现了对数据访问,修改,存储过程调用,发送和接收参数信息等操作。DataReader:提供高效的数据流读取。DataAdapter:提供DataSet对象和数据源之间的交互中间件。39
第3章系统需求分析与详细设计本章详细阐述了川谷信息管理系统设备管理子系统的系统需求分析和详细设计。其中详细设计是从系统总体功能和各子模块功能分别阐述的。系统分为三个子模块,各个子模块有多个子功能。3.1系统实现目标本系统实现的目标是实现数据远程访问和远程控制、功能的统一管理和可扩充性和将来对智能客户终端设备的支持。(1)实现数据远程访问和远程控制通过Web浏览器,用户即可在办公室的任何客户端都可以连接到服务器端的数据库访问各种数据,看到数据变化图表,对设备信息进行管理。这些都可以在办公室的电脑中实现,或者利用笔记本电脑无线上网连接到系统服务器,进行各种相关操作。(2)功能的统一管理和可扩充性所有的具体的设备管理功能都基于统一用户权限来实现,使得系统可以通过增加配置来扩充各项管理功能。同时,再开发人员也可以方便地将新开发的功能模块与原有系统结合。(3)将来对智能客户终端设备的支持(如智能门控系统)利用微软.NET平台,用户终端己经不再限于个人电脑和笔记本电脑。在智能终端设备,如PDA(掌上电脑)、手机上,利用专门为PDA、手机开发的小型客户端程序,就可以通过无线网络访问系统平台,享受在普通电脑上所能够获得的所有服务3.2系统功能需求分析系统使用B/S三层构架。软件和数据库放在系统服务器端,对各种数据进行存储、整理。在办公室的客户端微机上,能够直接浏览到各种设备的实时数据和对数据的统计信息。服务器端功能需求(1)实时更新数据。(2)对数据进行分析统计。39
(3)对数据的变化进行标记。客户端功能需求(1)能够浏览项目的数据和运行状态。(2)浏览数据变化图表。(3)浏览数据统计结果和统计图表。系统性能要求(1)在客户端收到的业务数据延迟少于1分钟。(2)客户端数据每5到20分钟能够自动刷新一次。(3)服务器能够承受至少50个用户同时在线访问。3.3软件开发及运行环境3.3.1开发平台系统基于.NET构架,使用MicrosoftVisualStudio2005进行开发。在开发中,主要使用C#语言。与软件开发相关的其他系统包括IE6.0以上、SQLSever2005、MacromediaFireworks8、PowerDesigner15。3.3.2用户平台1.服务器平台(1)服务器操作系统平台Windows2000Server或者WindowsServer2003.(2)服务器数据库平台关系数据库平台,目前采用MicrosoftSQLServer2000+SP30(3)服务器网络服务平台MicrosoftIIS5.0或者MicrosoftIIS6.0.(4)服务器其他软件平台Microsoft.NETFramework1.1或更高版本。2.客户端平台(1)客户端操作系统平台Windows98WindowsMeWindows2000WindowsXP或更高版本、Linux/Unix及苹果操作系统39
(2)客户端软件平台IE6.0或更高版本Microsoft.NETFramework1.1或更高版本。3.4总体框架各个模块的功能大致介绍如下(1)成品生产:根据各类散酒数量、每年生产出相应的成品和半成品酒的数量,每一个工人每日、每月灌装各种酒数量统计。(2)职工管理:职工基本请况,职工奖惩,职工技能培训。(3)酿酒生产:实行对每个炉装料统计,生产时间,出酒数量,操作员。(4)库房:实现各类成品,半成品,原材料的出入库,在库,库存上下限预警。(5)销售:完成按地区,按销售商,推销员各种酒类的销售统计。完成对业务员的业绩管理。(6)办公室查询:完成对各种库存量,销售,酿酒生产信息综合查询。办公文件的收发管理。(7)设备管理:对企业的设备进行维修保养管理,信息统计管理,报废管理。(8)财务接口:完成当前财务软件接口。(9)系统日志:主要记录进入系统人员情况,对进入库房,销售,办公室人员作重点监控,记录详细进人员记录信息。(10)权限管理:完成进入各子系统人员的授权和权限管理。39
图3-1项目总体结构图3.5设备管理以下川谷酒业信息管理系统中设备管理系统的整体功能和系统层次模块。3.5.1整体功能资产管理人员通过本模块可以对设施、设备进行下列管理,新购设备信息录入数据库、设备信息的修改以及设备损坏后将设备信息的删除等基本操作。当川谷酒业出现人员离岗,比如人员调离等情况,需要对上述所人员所使用的设备器材等进行移交,对于需要报废的设备器材予以报废。领导可以通过本模块的功能查看所有人员所拥有的设备器材情况、拥有的资产总额,以及科研项目所使用的设备。川谷酒业内所有人员可以通过本模块的设备器材搜索功能进行设备的搜索,支持设施名称和设施类别的搜索。图3-2为系统顶层用例图。39
图3-2系统顶层用例图3.5.2系统层次模块设备管理系统共分为三个子模块,分别为设备管理、设施管理和设备信息统计管理。这三个子模块下又分为若干子功能,图3-3为系统层次模块图。图3-3系统层次模块图39
3.5.3模块设计1.设施管理模块设施管理模块共分设备管理、设施检修管理、设施验收管理和设施报废管理四个子模块。图3-4为设施管理模块用例图。图3-4设备管理子模块用例图(1)设施管理子模块:对设施管理表实现增、删、查、改四个操作。对设施信息进行管理。(2)设施检修管理子模块:对设施检修表和设施检修计划表实现增、删、查、改四个操作。对设施检修信息进行管理。(3)设施验收管理子模块:对设施验收表实现增、删、查、改四个操作。对设施验收信息进行管理。(4)设施报废管理子模块:对设施报废表实现增、删、查、改四个操作。对设备报废信息进行管理。图3-5为设施验收活动图。39
图3-5设施验收管理活动图(4)设施报废管理子模块:对设施报废表实现增、删、查、改四个操作。对报废信息进行管理。2.设备管理模块设备管理模块共分为设备发放管理、设备保养管理和设备报废管理三个子模块。图3-6为设备管理模块的用例图。图3-6设备管理子模块用例图(1)设备发放管理子模块:对设备发放卡表实现增、删、查、改四个操作。对设备发放信息进行管理。(2)设备登记子模块:对设备登记表实现增、删、查、改四个操作,对设备信息进行管理。39
图3-7为设备登记时序图。图3-7设备登记时序图(3)设备保养管理子模块对设备保养表实现增、删、查、改四个操作。对设备保养信息进行管理。(4)设备报废管理子模块:对设备报废表实现增、删、查、改四个操作。对设备报废信息进行管理。图3-8为设备报废管理时序图。39
图3-8设备报废时序图3.设备信息统计模块设备信息统计共分为搜索设备、设备移交管理和资产统计三个子模块。图3-9为设备信息统计子模块的用例图。图3-9设备信息统计子模块用例图39
(1)搜索设备:没有设备管理员权限的普通职工可以通过这个子模块查询设施设备信息,查询关键字为设备ID/设施ID或者是设备名称/设施名称。(2)设备移交管理子模块:根据用户提交的申请,设备管理人员查询该用户所拥有的设备和负责的设施是否符合移交条件,若符合条件则用户的申请发给企业领导审批,审批结果返回给用户。图3-10为设备移交管理类图。图3-10设备移交管理类图图3-11为设备移交管理用例图。图3-11设备移交管理用例图39
图3-12为设备移交管理时序图。图3-12设备移交管理时序图图3-13为设备移交管理活动图。图3-13设备移交管理活动图(1)资产统计子模块:根据用户输入的折旧率,计算固定资产。39
第4章编码实现及关键技术研究本章就系统实现所涉及到得关键技术进行了深入的讨论。包括系统架构、存储过程、页面之间值传递和将数据库中数据导入Excel进行了研究和分析。4.1开发环境搭建图4-1是标准的.NET开发过程,从人员上讲,应分为开发团队,管理团队与测试团队,首先由开发团队进行开发,然后递进式的进行管理与测试。在我们实际的开发过程中,首先进行了开发团队的部署,搭建了开发环境,然后在项目进行过程中进行管理与测试,最后在项目开发完成后进行集成测试。图4-1.NET部署图4.2关键技术研究与分析下文就系统实现使用关键技术,包括系统架构、存储过程、页面之间值传递和将数据库中数据导入Excel进行了研究和分析。39
4.2.1系统架构系统分为三层:数据层、中间层和表示层。采用三层架构有助于以后系统可能的扩充和升级。三层之间基本可以做到分离。数据层主要是指数据库端,包括自定义的数据表,触发器,存储过程,序列,视图等数据库元素。中间层主要是自定义类,包括数据库访问类、公用类,还包括第三方组件,COM组件等。表示层是基于浏览器的Web表示,采用VS.Studio集成开发环境进行页面设计,表示层与后台代码分离。(1)表示层图4-2设备管理表示层的页面表示层相当于是浏览层,用户通过该层来获得Web服务。在这种结构中,该层主要承担的是显示和接受的功能,和简单的计算和判断。主要的流程和业务交由服务层来处理。在物理上,这层就是单位的用户的个人接入到局域网上的电脑,目前预计有超过四十台。在这层的实现形式上,我们使用的是IE方式,主要是使用ASP.NET编码实现网页界面。从静态HTML网页到动态网站,出现了许多开发技术:ASP,JSP,PHP,Perl等。综合比较各种网站开发技术的优缺点,最后选择采用最新的ASP.NET作为系统界面的开发工具。(2)中间层(中间件)39
中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。浏览器图形用户界面已成为公认规范,然而它的会话能力差、不能作数据写入、受HTTP协议的限制等,就必需进行修改和扩充,形成了Web服务器中间件,如SilverStream公司的产品。本系统中,对数据库的访问都是通过中间层DBOperator来实现的。在使用DBOperator对象之前,在命名空间中加入usingUtility即可非常方便的使用。通过中间层访问数据层而不是直接对数据层进行访问,增强了数据访问的安全性。(3)数据层综合比对现在市面上的数据库,我们最后选择了SQLServer2005。SQLServer系列数据库是由Microsoft开发的典型的关系型数据库,非常适合像川谷企业这样的中小型企业。4.2.2存储过程的使用存储过程(StoredProcedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程。在项目的具体实现中,存储过程表现出了以下优点:(1)允许标准组件式编程存储过程在被创建后可以在程序中被多次调用,而不必重新编写该村出过程的SQL语句。而且在维护数据库时可以随时对存储过程进行修改,但对程序代码没有影响,从而极大的提高了程序的可移植性。(2)实现较快的执行速度如果某一操作包含大量的SQL代码或分别被多次执行,那么存储过程要比在代码中直接执行速度要快。因为存储过程是预编译的,在首次运行一个存储过程时,查询优化器对其进行分析、优化,并给出最终在系统表中的执行计划。而批处理的SQL语句在每次运行时都要进行编译和优化,因此速度较慢。(3)减少网络流量对于针对数据库对象的各种操作,如果使用存储过程,那么当在客户机上调用存储过程时,网络中传送的只是该调用语句,否则将是多条SQL语句,从而大大增加了网络流量,降低了网络负载。39
(4)可被作为一种安全机制来充分利用存储过程因为是写在数据库端的,从而能够实现对相应的数据访问权限的限制,避免非授权用户对数据库的访问,保证数据的安全。4.2.3页面之间值传递由于整个项目分为多个模块,由不同的人员开发。所以在不同的C#解决方案中传值与同一解决方案中传值情况不同。在同一解决方案中,页面传值可以使用Session和Request的传值方法,但是在不同的解决方案中Session传值无效,只能使用Request进行页面传值。在本模块中,页面间值的传递时通过QueryString变量实现的。QueryString是一种非常灵活易用的变量,它可以将传送的值显示在浏览器的地址栏中.如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法.但是对于传递数组或对象的话,就不能用这个方法了.下面是项目中的一个应用:SBXXGL.aspx的C#代码functiongridviewdbclick(d){window.open("SBXX.aspx?KID="+d+"","newwindow");//,"height=450px,width=380px,Top="+((window.screen.height-450)/2)+",left="+((window.screen.width-380)/2)}SBXX.aspx.cs中的C#代码protectedvoidPage_Load(objectsender,EventArgse){text=Request.Params["KID"];if(!IsPostBack){if(text!=null){BindDataView();}}}4.2.4将数据导入到Excel中Excel表格是微软公司Office套件中专门用作电子表格处理的软件,在实际的办公中,Excel表格的用途是非常广的,由此许多办公人员喜欢以Excel表格的形式来存取数据。将用户查询得到的数据集转换成Excel表格中。这一功能在系统中是用C#语言实现的。39
第5章用户使用说明本章根据处在试运行的系统,给出用户使用说明。目的在于帮助刚接触本系统的用户迅速掌握系统的使用方法。5.1设备管理设备管理中设备登记、设备保养和设备报废三个子模块的用户使用说明。5.1.1设备登记1.作用与功能记录设备最基础的信息,是设备管理运行的基础。设备登记记录的完整性和准确性直接影响设备管理子系统的功能运行。设备登记主界面如图5-1所示图5-1设备登记主界面2.操作说明(1)选择设备信息,就会出现图5-1设备登记主界面。(2)字段说明:设备ID可以输入字符或者数字,必须唯一且不能为空,采购日期等时间如果不填的话,系统默认填入当前的系统日期时间。(3)增加设备信息:选择新建,出现页面图5-239
,在此页面中按信息类型依次填入相关内容,包括设备ID,序号,采购日期,名称,规格,型号,数量,出厂编号,价格,设备用途,设备类别(分为电器,工具,一般,其他),制造厂家,启用日期,主要技术参数,验收人,保管人,备注,制表人,填写日期。图5-2设备信息新增界面(4)修改设备信息:双击一条设备记录信息,进入图5-3设备信息编辑页面。在此页面中已经填入原有的设备信息,在原有的基础上修改项要修改的信息。图5-3设备信息修改界面39
(5)删除设备信息:勾选想要删除的设备信息,选中后,选择删除,删除设备信息成功。(6)查询设备信息:可以按设备ID或者设备名称查询,输入查询关键字,如图6-4设备查询输入信息所示,然后选择查询按钮,返回查询结果如图5-5查询结果所示。图5-4设备查询输入信息图5-5查询结果5.1.2设备保养操作说明(1)选择设备日常管理中的设备检查保养,进入图5-6设备检查保养主界面。39
图5-6设备检查保养主界面(2)字段说明:设备ID可以输入字符或者数字,必须唯一且不能为空,日期如果不填的话,系统默认填入当前的系统日期时间。(3)新增保养记录:用户根据自己要求,新增设备保养记录。(4)修改保养记录:双击一条设备保养记录信息,进入设备保养激励编辑页面。在此页面中已经填入原有的设备保养信息,在原有的基础上修改项要修改的信息。(5)删除保养记录:勾选想要删除的设备保养信息,选中后,选择删除,删除设备保养信息成功。(6)查询保养记录:可以按设备ID或者设备名称查询,输入查询关键字,然后选择查询按钮,返回查询结果。5.1.3设备报废选择报废管理中的设备报废,进入设备报废主界面。字段说明:设备ID可以输入字符或者数字,必须唯一且不能为空,日期如果不填的话,系统默认填入当前的系统日期时间。(1)新增设备报废记录:用户根据自己要求,新增设备报废记录。(2)修改设备报废记录:双击一条设备保养记录信息,进入设备报废记录编辑页面。在此页面中已经填入原有的设备报废信息,在原有的基础上修改项要修改的信息。(3)删除设备报废记录:勾选想要删除的设备报废信息,选中后,选择删除,删除设备报废信息成功。(4)查询设备报废记录:可以按设备ID或者设备名称查询,输入查询关键字,然后选择查询按钮,返回查询结果。5.2设施管理设施管理中设施管理、设施验收、设施检修和设施报废四个子模块的用户使用说明。5.2.1设施管理1.作用与功能39
记录设施最基础的信息,是设施管理运行的基础。设施登记记录的完整性和准确性直接影响设施管理子系统的功能运行。设施管理主界面如下图5-7所示图5-7设施管理主界面1.操作说明(1)选择设施信息,就会出现图5-7设施管理主界面。(2)字段说明:设备ID可以输入字符或者数字,必须唯一且不能为空,采购日期等时间如果不填的话,系统默认填入当前的系统日期时间。(3)增加设备信息:选择新建,出现页面图5-8,在此页面中按信息类型依次填入相关内容,包括设备ID,序号,采购日期,名称,规格,型号,数量,出厂编号,价格,设备用途,设备类别(分为电器,工具,一般,其他),制造厂家,启用日期,主要技术参数,验收人,保管人,备注,制表人,填写日期。39
图5-8设施管理信息新增界面(3)修改设施管理信息:双击一条设施管理记录信息,进入图5-9,设施管理编辑页面。在此页面中已经填入原有的设施管理信息,在原有的基础上修改项要修改的信息。图5-9设施管理信息修改界面(4)删除设施管理信息:勾选想要删除的设施管理信息,选中后,选择删除,删除设施管理信息成功。(5)39
查询设施管理信息:可以按设施ID或者设施名称查询,输入查询关键字,如图5-10设施管理查询输入信息所示,然后选择查询按钮,返回查询结果如图5-11查询结果所示。图5-10设施管理查询输入信息图5-11查询结果5.3.2设施验收选择日常管理中的设施验收,进入设施验收主界面。字段说明:设施ID可以输入字符或者数字,必须唯一且不能为空,日期如果不填的话,系统默认填入当前的系统日期时间。(1)增设施验收记录:用户根据自己要求,新增设施验收记录。(2)修改设施验收记录:双击一条设施验收记录信息,进入设施验收记录编辑页面。在此页面中已经填入原有的设施验收信息,在原有的基础上修改项要修改的信息。(3)删除设施验收记录:勾选想要删除的设施验收信息,选中后,选择删除,删除设施验收信息成功。(4)查询设施验收记录:可以按设施ID或者设施名称查询,输入查询关键字,然后选择查询按钮,返回查询结果。5.2.3设施检修选择日常管理中的设施检修,进入设施检修主界面。字段说明:设施ID可以输入字符或者数字,必须唯一且不能为空,日期如果不填的话,系统默认填入当前的系统日期时间。(1)新增设施检修记录:用户根据自己要求,新增设施检修记录。(2)39
修改设施检修记录:双击一条设施检修记录信息,进入设施检修记录编辑页面。在此页面中已经填入原有的设施检修信息,在原有的基础上修改项要修改的信息。(3)删除设施检修记录:勾选想要删除的设施检修信息,选中后,选择删除,删除设施检修信息成功。(4)查询设施检修记录:可以按设施ID或者设施名称查询,输入查询关键字,然后选择查询按钮,返回查询结果。5.2.4设施报废选择报废管理中的设施报废,进入设施报废主界面。字段说明:设施ID可以输入字符或者数字,必须唯一且不能为空,日期如果不填的话,系统默认填入当前的系统日期时间。(1)新增设施报废记录:用户根据自己要求,新增设施报废记录。(2)修改设施报废记录:双击一条设施报废记录信息,进入设施报废记录编辑页面。在此页面中已经填入原有的设施报废信息,在原有的基础上修改项要修改的信息。(3)删除设施报废记录:勾选想要删除的设施报废信息,选中后,选择删除,删除设施报废信息成功。(4)查询设施报废记录:可以按设施ID或者设施名称查询,输入查询关键字,然后选择查询按钮,返回查询结果。5.3设备信息统计管理设备信息统计管理中资产统计、设备移交子模块的用户使用说明。5.3.1资产统计选择信息统计管理中的资产统计,出现资产统计主界面。包括内容:设备编号、设备名称、部门、设备分类、购置日期、负责人、价格、现有价值、设备状态。资产统计:用户输入折旧率,点击资产统计按钮,返回统计结果。5.3.2设备移交选择信息统计管理中的设备移交,出现设备移交主界面。输入设备移交申请人ID,点击提交按钮,返回移交申请人所拥有的设备设施记录。39
第6章总结与展望6.1总结本文详细描述了基于.NET三层架构的管理信息系统设计和实现的过程,对于各种类似系统的研究,具有一定的理论和实践意义。在作者所参与开发的项目中,我们运用软件工程的方法,从实践的角度探讨如何使用软件工程的方法,从系统的可行性研究、需求分析、总体设计、详细设计、系统实现到用户使用进行了逐一分析。本文重点阐述了基于.NET三层架构的管理信息系统的设计、实现和使用:(1)分析了目前多层架构技术的现状,比较了主流的多层架构体系的优缺点。而后选择采用了.NET三层架构作为管理信息系统的架构,并对在该架构上开发B/S三层结构软件的技术进行了一定的研究。(2)结合实际项目的开发研究,从功能角度对管理信息系统进行了总体设计并对其实现的关键技术进行了进一步的研究。(3)在项目完成的前提下,给出用户使用说明。方便用户使用本系统。目前系统处在本地试运行阶段,运行状态良好。设备信息表单的增、删、查、改、设备移交和资产统计等功能都已经实现。用户界面也设计的非常友好,例如用户输入日期时,点击文本框,系统自动弹出日历控件,这样用户不需要自己输入而可以点击选择日期和时间;用户在填写设备类别时,也无需自己输入而可以在下拉菜单里选择。系统运行结果表明,本系统满足系统管理员、企业领导和普通员工的应用需求。6.2展望进一步工作及发展展望:1.数据输入优化及验证(1)对于设备ID等不能为空的项,在点击提交时,提示设备ID不能为空,只有非空项不为空时才能允许提交。(2)对于具有固定格式的项尽量提供选项给用户选择,以此替代用户的输入。这样做一方面可以给用户带来方便,另一方面可以在程序实现中对输入的判断上带来方便。39
1.界面优化(1)界面进一步美化现在系统主在功能实现,界面还比较简单,需要进一步美化。(2)界面功能需要进一步优化设计,使界面尽量人性化。3.安全性(1)对输入的数据只对其数据类型有判断,没有加入其它的限制,希望进一步对输入的数据根据不同的需要加入提示或者限制。(2)对数据操作的限制,在权限模块中实现。39
致谢在本文完成之际,衷心感谢所有给予我关心和指导的老师、同学及亲友!首先衷心感谢我的导师朱老师在本文的选题、撰写、修改和定稿整个过程中给予了悉心指导。朱老师严谨的治学态度、务实的工作作风和平易近人的学者风范让我受益终生,她的敬业精神、谆谆教诲是我终生的财富,没有导师的培养、鼓励与关怀,就不可能完成这篇论文。感谢所有学院上课的老师们,从他们那里学到了扎实的软件工程理论,使我在工作实践中受益匪浅,本课题也是在这些理论与经验的基础上完成的。学院提供了良好的学习条件,从而能够顺利地让我完成学业。感谢所有同学们,我们的团结、友爱和互助为我们创造了良好的学习氛围,在彼此的交流合作中,累积了团队合作的经验。感谢我的父母,多年以来,他们含辛茹苦的养育与照顾让我长大成人,接受良好的教育,并且懂得做人的道理,我要向他们致以最崇高的感激之情!39
参考文献[1]PankajJalote.AnIntegratedApproachtoSoftwareEngineering[M].SpringerVerlag:NewYorkInc.,1997.[2]JagSodhi.SoftwareEngineeringMethods,Management,andCASETools:FirstEdition[M].McGrawHillInc.,1997.[3]MaartenBoasson.TheArtistryofSoftwareArchitecture[J].IEEESoftware.2003,(11):13~17.[4]卡内基梅隆大学软件工程研究所,软件能力成熟度模型1.1版(中文翻译版),http://www.platinumchina.com/index_product_cmm.htm[5]Goseva-Popstojanova,K.,reliabilitymodels.Reliability,Trivedi,K.S.FailurecorrelationinsoftwareIEEETransactionson,Volume:49Issue:1,Mar2000:37-4[6]PatonRJ.Fault-TolerantControl,the1997Situation.Proc.OfIFAC/IMACSSymposiumonFaultDetection,SupervisionandSafetyforTechnicalProcess,Hull,Englang,1997:1033-1055[7]金兰裴非.面向对象方法在管理信息系统开发中的应用Jl,小型微型计算机系统,1999,v20(1):43-48[8]虞春峰,陈刚.基于BS的多层分布式结构应用.计算机与现代化,2002.1[9]周杰韩、蓝海洋、熊光楞".NET框架与元模式研究”计算机工程与应用2002年23期[10]http://www.swnu.edu.cn/mysite/cy/site/bsof/study/softdata/data/uml_dt.htm“标准建模语言UML的动态建模机制”[11]ErichGamma,RichardHelm,RalphJohnson,JohnVlissides,李英军,马晓星,蔡敏,刘建中等译,《设计模式一可复用面向对象软件的基础》(即DesignPatterns:ElementsofResusableObjectedSoftware),机械工业出版社,2003[12]FabioClaudioFerracchiati,JayGlynn39
等著,毛尧飞译.《.NET数据服务C#高级编程》,清华大学出版社,2004[13]RussBasiura,RichardConway.,《ASP.NET安全性高级编程》,清华大学出版社,2003[14]林·巴斯,保罗·克莱门茨,瑞克·凯兹,软件构架实践,清华大学出版社2004[15]AndrewKrowczyk,VinodKumar等著,.NET网络高级编程,清华大学出版社2003[16]ScottMitchell,SteveWalther等著,ASP.NET权威指南,中国电力出版社2003[17]CharlieKaufman,RadiaPerlman,,MikeSpeciner,NETWORKSECURITY,PrenticeHallPTR2004[18]RussBasiura,RichardConway等著,ASP.NET安全性高级编程,清华大学出版社2003[19]盖江南,王勇,阎文丽.ASP.NET+SQLServer动态网站设计宝典[M].北京:电子工业出版社,2006.80-115.39