




已阅读5页,还剩40页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
B/S结构MES录入模块设计与实现摘 要电子枪制造执行系统需求来自于彩虹集团电子枪生产厂,该系统由团队合作开发。在开发过程中通过采用MSF4.0来保证项目开发的质量、费用和周期。本文所涉及的内容为该系统的录入模块的设计和开发。录入模块的主要功能是使工厂生产线上的数据,快速,准确,详细的记入计算机系统,从而帮助其管理层实时管理制造现场。系统开发平台为VS.Net2005,采用B/S多层结构框架编写。通过运用AJAX 1.0等ASP.Net2.0新技术,解决了包括信息提示、数据报错、数据对应等技术难点。模块主要数据结构为一对多关系,使用ADO.Net2.0建立离线数据库,配合SQL Server 2005处理数据。系统试运行表明,本模块是一个带权限识别的,操作简便的,高效的录入模块。达到了客户的要求。关键词:企业信息化,MES,MSF,AJAXABSTRACTThe demand of the electron gun manufacture execution system comes from the IRICO group electron gun production factory. The system is developed by team. Through using MSF4.0 in the performance history the team model and the process model guarantees the quality, the expense and the cycle of during the development of the project. The main function of the input module is making write the data of the factory production line into the computer system quickly, accurate and in detail is causes on the factory production line the data, fast, accurate, detailed writes down the computer system, thus it helps management level To manage the scene in real-time. The system is developed on VS.Net2005 platform, and is used the B/S sandwich construction frame compilation, ASP.Net2.0, AJAX 1.0 these newest technologies and so on. The system has solved technical difficulties including the information prompting, the data error recognizability and the data correspondence and so on. The main data construction of the system is pair of multi- relations. The system uses ADO.Net2.0 to establish the off-line database, and coordinates theSQL2005 database handling one-to-more data. It indicates in practise that, this module is a belt jurisdiction recognition, operates easily, highly effective input module and The System has met the customers requirements.Keywords:enterprise informationization, MES, MSF, AJAX目 录1 绪论现代企业呈现出集团化和多元化的发展趋势,企业内不同部门之间迫切需要及时的交流和企业内部信息共享,因此企业信息系统的建设或者优化己成为必然趋势。传统的生产组织方式、管理模式、陈旧落后的生产手段和工具,已不能适应现代企业在日趋激烈的全球市场环境中的竞争,特别是技术先进性与管理模式落后的矛盾日益突出。彩虹集团电子枪厂同样存在这些问题。1.1 MES(制造执行系统)的基本概念国际联合会对MES(Manufacturing Execution System),工厂制造执行系统的定义是:MES 能通过信息的传递对从生产命令下发到产品完成的整个生产过程进行优化管理.当工厂中有实时事件发生时,MES能及时对这些事件做出反应、报告,并用当前的准确数据对它们进行约束和处理。MES 制造执行系统主要用来解决整体优化中,生产计划与生产过程的脱节问题,这一问题长期以来不仅直接影响企业的生产效率,而且成为制约现代企业内部信息集成和企业之间供应链优化的瓶颈.当MES 服务于ERP 时,它主要起到对生产线各个重要环节相关的数据,用终端硬件以一定的数据格式记录下来(如条码枪和专用的数据采集器),经过系统归类整理和分析后,转化成有效的信息,输入ERP系统,提供给各个生产职能及管理部门使用。1.2 MES发展现状MES 作为生产形态变革的产物其起源大多源自工厂的内部需求,传统的MES(Traditional MES T-MES)就是从70 年代的零星车间级应用发展起来的,在积累了相当的经验后逐渐形成了一些从事MES 开发的专业公司并且其系统也开发出了相当成熟的标准,通常他们都是针对特定的生产类型或特定的功能需求而开发出较为标准化的MES,并拥有了一定的市场份额例如美国的Consilium 加拿大的 Promise 公司都是开发 IC 厂 MES 的知名厂商,总的来说T-MES 可大致分为两大类专用的MES 系统(Point MES) 和集成的MES系统(Integrated MES), 专用的MES 是指为解决某个特定领域问题如车间维护生产调度或SCADA 而开发的单独应用系统,集成的MES 则是针对一特定行业如航空装配半导体食品和卫生等行业而设计具有一定的通用性并且逐步加强了与上层事务处理和下层实时控制系统的集成能力。制造执行系统MES 软件弥合了企业计划层和生产车间过程控制系统之间的间隔,是制造过程信息集成的纽带,MES 通过强调制造过程的整体优化来帮助企业实施完整的闭环生产,同时也为敏捷制造企业的实施提供了良好的基础深刻理解,MES 这一先进的管理思想把握它的发展趋势对于如何在我国正确的研究和推广MES 应用具有重要的理论和应用价值。目前,MES在国外知名企业中已较为普遍,但MES在我国的应用却处于不温不火的状态,大多数国内企业对MES绝大多数尚处于观望、理解消化阶段;想用的多,实际使用的却很少。1.3 MES(制造执行系统)的必要性及其作用在中国制造业蓬勃发展的大潮中,越来越多的企业通过实施ERP来强化管理。然而,企业的生产计划管理受市场影响越来越大,明显感到计划跟不上变化。面对客户对交货期的苛刻要求,面对更多产品的改型,订单的不断调整,企业决策者认识到,计划的制订要依赖于市场和实际的作业执行状态,而不能完全以物料和库存回报来控制生产。同时,ERP解决的是资源计划问题,ERP能处理昨天以前发生的事情(作历史分析),亦可预计并处理明天将要发生的事件,但对今天正在发生的事件却留下了缺口。而传统生产现场管理只是黑箱作业,这已无法满足今天复杂多变的竞争需要。因此,如何将此黑箱作业透明化,找出任何影响产品品质和成本的问题,提高计划的实时性和灵活性,同时又能改善生产线的运行效率已成为每个企业所关心的问题。制造执行系统(MES)填补了这一空白。MES处于计划层和车间层操作控制系统之间的执行层,主要负责生产管理和调度执行,它通过控制包括物料、设备、人员、流程指令和设施在内的所有工厂资源来提高制造竞争力,提供了一种系统地在统一平台上集成诸如质量控制、文档管理、生产调度等功能的方式, 从而实现企业实时化的ERP/MES/SFC 系统。可以为用户提供一个快速反应、有弹性、精细化的制造业环境,帮助企业减低成本、按期交货、提高产品的质量和提高服务质量。MES 强调控制和协调,使现代制造业信息系统不仅有很好的计划系统,而且能使计划落实到实处的执行系统,因此短短几年间MES 在国外的企业中迅速推广开来,并给企业带来了巨大的经济效益,企业认识到只有将数据信息从产品级基础自动化级取出穿过操作控制级送达管理级,通过连续信息流来实现企业信息全集成才能使企业在日益激烈的竞争中立于不败之地。随着企业生产模式逐渐向敏捷制造发展企业业务流程重组BPR 的实施、企业环境的异构性以及企业间动态联盟的组建等等对MES 又提出了更高的要求,传统的MES 解决方案难以适应敏捷制造的要求面向敏捷制造的MES不仅要费用合理更要具有良好的适应性adptable,可重构性(reconfigurable),可集成性(integratable),因此,国外许多组织和研究机构开始研究面向敏捷制造的MES。 然而国内对MES 概念和应用的研究却不太多,更不说有成熟的软件产品。随着企业计算机应用的不断推广,企业信息化应用水平逐渐提高,企业越来越需要车间执行层的管理信息系统,因此如何深刻理解MES 内涵,把握它的发展趋势,在我国企业中开发和应用MES ,对于提高企业竞争力,缩小与发达国家企业差距是迫在眉睫的事情,也将是企业信息化水平深层次推进的需要。制造系统的MES解决方案起以下作用 1)能透明的看到制造现场 2)可以根据制造现场的变动实时的下达作业指示 3)可以预测交货期,能帮助交货期的延迟(想顾客 求谅解或外助处理及通过加班计划防止交货期延迟)MES解决方案是为其提高制造企业的竞争力所必要的。 1.4 电子枪厂MES系统开发的目的及意义本次所开发的项目是为彩虹集团下属电子枪生产厂设计开发的MES软件系统。通过该制造执行系统(MES)软件的实施,能够弥合企业计划层和生产车间的中间控制系统之间的间隔,该系统是制造过程信息集成的纽带。通过生产录入、信息查询、计划订制等模块,强调制造过程的整体优化来帮助企业实施高效的生产管理,同时也为敏捷制造企业的实施提供了良好的基础。文本所涉及的为该MES系统的一个子模块生产录入模块是该系统的关键模块,其主要功能为:通过一个高效地录入模块软件设计,使其生产线上的数据,快速,准确,详细的记入计算机系统,从而帮助其管理层实时管理制造现场。通过该模块及时、准确、完整地提供生产线的动态数据,同样也能供系统的其它模块统计分析使用。完成后的MES录入模块是利用现场实时的数据提供,从而最佳化产品的订货到生产完成的整个生产活动过程。通过这一模块的使用来减少没有价值的活动,使工厂的运营尽可能的有效化,并使生产能够迅速的对应变化。因此,通过该子模块的运用,不但可以改善资财回转率,总收入,流动资金,还可以提高运营资产的回收率等。 本软件使用目前较流行的网页开发平台VS.Net 2005,以及较新的ASP.Net2.0相关技术,需要解决包括信息提示,数据报错等技术难点。本系统主要数据为一对多的关系,将使用ADO.Net建立离线数据库和SQL2000数据库的相关技术处理数据。将使用目前网上最新的AJAX1.0技术,完成部分自动验证功能。系统结构将采用多层结构开发。完成功能后,能够实现一个带权限识别的,操作简便的,高效的录入模块。本课题在开发过程中将在MSF团队模型和过程模型的指导下开展工作,参与整个MES项目系统分析、功能设计、软件开发全过程,全面理解MES需求,理解数据库结构,理解并体会使用MSF4.0、VS2005、C#2.0、SQLSERVER2005、ADO.NET2.0、ASP.NET2.0、AJAX、JavaScript等工具、技术和方法, 理解B/S架构多层结构的特点,在与项目组成员交流协作的基础上,完成录入模块设计与开发工作。该模块要求B/S结构,功能完善,运行正确,操作简便,反应快。能适应用户录入规律,自动提供录入项,自动纠正一定的录入错误。系统开发有创见,逻辑严谨。1.5 论文的结构第一章介绍本课题的来源及意义等。第二章介绍并分析了本模块开发所使用到的创新点和新技术。第三章介绍开发前的需求分析和设计过程。第四章介绍系统详细设计方案,功能设计,系统的总体目标和创新的多层结构以及数据库的设计说明。第五章介绍系统的详细实现过程,重点论述了详细的功能实现过程和AJAX 1.0新技术的实现过程,以及界面设计和系统测试。并了展示了部分系统效果图。结束语部分总结系统开发的经验和成果,并对系统的改进提出了展望。后续部分分别为:参考文献和致谢。2 MES系统介绍和创新点2.1 MES系统项目框架及团队分工与协作本次开发的MES生产执行系统是为彩虹集团订制的。针对彩虹集团下属的电子枪厂的业务进行开发。主要功能包括对生产产品和生产部门的定义、对生产数据的录入修改、对生产数据的报表查询和生产计划的制定。2.1.1 MES系统完整项目框架完整的MES系统是一个综合性的系统,其不但应具备数据的处理功能,比如对生产数据的添加、删除等操作,或者对生产数据的报表查询统计等。还应具有一定的管理功能,比如对生产产品的添加、删除等定义功能,以及生产计划的制定等。因此在整个系统的设计上,我们采用了模块化的设计方案。确立了以各项主要功能为设计要点的模块式开发。本MES系统项目设计共分为4个模块,分别是系统定义模块、数据录入模块、查询模块和计划制定模块。数据库采用SQL2000。如图2.1所示。电子枪MES生产执行系统系统定义模块数据录入模块数据查询模块计划制定模模块SQL2000数据库图2.1 MES系统框架图以下是对各模块功能的说明:1)系统定义模块。该模块由本人参与设计并完成开发。在系统定义模块中,可以对生产的产品、生产部门和不良产品的名称、编码等进行定义和修改,还可对操作人员的权限进行定义等。2)数据查询模块。该模块主要负责对所有数据的查询工作,由小组另一位程序开发人员叶毅琪同学负责开发,该模块可以根据用户的选择的条件生成不同要求的报表,如日报、年报等。该模块还设计有查询人员评论的功能,可以对查询结果作出评论。3)计划制定模块。该模块主要负责对于生产计划的制定工作,也由小组另一位程序开发人员叶毅琪负责开发,该模块可以对生产计划按日和周分别定义,可以根据录入模块的数据随时修改日生产计划,并自动统计周和月的生产计划。4)数据录入模块。该模块主要负责所有生产数据的录入和修改工作。由本人设计并开发,详细的功能将在本文后面的章节中介绍。以下是对电子枪厂MES系统具体工作的描述:1)首先通过系统定义模块输入操作人员的信息,包括工号姓名等基本信息,以及定义操作人员的权限,如操作员要使用系统的某项功能,则该人员必须具备使用该功能的权限。其次定义有哪些生产部门,然后定义这些生产部门产生什么产品,最后定义产品中的不良产品的名称和种类,也就是生产淘汰下来的次品的信息。2)在定义完生产需要的相关信息后,就可以收集正常的生产信息了,操作员每天的工作就是把当天某个部门生产某种产品的数据录入计算机,包括该部门生产的次品信息。3)管理层在生产的前夕根据订单要求等制定了本周甚至是本月的生产计划,而根据录入模块记录的实际的生产情况,管理里层可以修改每一天的日计划,而周计划和月计划也会随之变化。4)在已经生产了一段时间后,管理人员通过查询功能查询具体的生产情况,通过选择不同的查询条件,可以生成有统计结果的生产报表,并且可以对该报表进行评论和分析。通过以上一系列的操作,管理人员就能实时的掌握、管理、分析生产线上的数据。以下是本电子枪厂MES系统的功能设计图:企业管理层人员生产线操作员生产数据库计划制定模块查询模块数据录入模块生产线数据生产计划制定生产线数据历史生产数据统计报表输出图2-2 MES系统功能设计图2.1.2项目团队分工与协作本次MES项目将由团队合作开发,项目组共有5名队员参与设计与开发。5名队员分别负责不同的工作。并且本项目将在微软的MSF解决框架的指导下开发,在MSF组队开发模式下,5名队员分别担当不同的角色,完成各自的任务。以下是各名队员的分工及主要任务介绍:1)项目经理一名,由论文指导老师赵风景教授担当。项目经理为本项目的发起者和指挥者,负责整个项目的管理、调度和协调。2)数据库开发及设计人员一名,由彭勇同学担当。主要负者数据库代码的编写,并且是数据库结构设计的主要人员。3)程序开发人员两名,分别负责四个子模块的开发,其中叶毅琪同学负责查询与计划模块的开发,本人主要负责录入和系统定义模块的开发。由于系统定义模块过于简单,因此该模块将不作为本论文的讨论范围。开发人员除了要开发程序代码,同时也参与数据库结构的设计讨论。4)测试人员一名,由严兆波同学担当。主要负责整个项目的测试工作,对于所有模块的各种功能,测试人员既要测试代码同时又要参与功能的设计。关于本团队在MSF模式下具体的工作情况,本文将在后面的章节有详细介绍。团队成员除了有不同分工任务外,还需要共同合作来完成一些项目的开发。本次MES系统的功能定义由全体小组成员共同参与讨论并制定,系统框架的定义由项目经理和程序开发人员共同参与讨论并制定,数据库框架由项目经理、程序开发人员以及数据库开发人员共同协商制定,测试用例等测试项目由项目经理及测试人员共同讨论制定。程序员在开发过程相互取长补短。通过小组人员集体合作开发整个MES系统。2.2 录入子模块的介绍录入子模块为该MES制造执行系统的关键模块,由本人负责设计和开发。也是本文所要论述的设计作品。该子模块需要对所有生产数据进行添加、修改和删除工作,其中包括不良产品(次品)的添加删除等。此外该模块还具有对库存信息的操作功能。出于安全考虑,该模块设有登陆系统,可以记录操作员的信息,并根据操作员的权限给与相应的操作权利。为了方便用户的录入和修改,该模块提供一个简单的查询功能,可以对历史数据进行简单的查询操作,并可以对查询的结果作修改和删除。数据的录入主要分为两类,一类为生产数据,一类为库存数据,其中生产数据还包括不良产品(次品)的详细数据。以下对这两类数据的详细说明:1)生产数据。生产数据为某个生产部门生产某种产品的详细情况,其中包括产品的投料数(投放元件的数量)、良品数(实际产量)、不良品数(不良产品的数量)、支出数(产品调走的数量)、结存数(调整后剩余的产品数)和生产信息备注。对于每一天的生产都可能有可能产生不良品,也就是次品数,对于这些次品要求列出该次品的详细名称和数量,作为该条生产记录的子记录,所有次品的数量总合应该等于当日的不良产品数。当然用户可以手动调整。因此一条生产记录可能对应有多条不良详细记录。2)库存数据。库存数据为库存部门入库和出库记录数据的信息,其中包括产品的入库数、出库数(包含销售数及其他)、库存数、冲销数(送往生产部门的不合格产品(换回合格产品)及零售数。部门分为两种类型,一类为生产部门,包括所有生产线上的部门。另一类为库存部门,包括所有仓库部门。录入时输入的部门若属于生产部门,则录入的信息也为生产信息。如果输入的部门属于库存部门则录入的信息就为库存信息。为了帮助用户对数据的操作,本模块还设有一些智能功能,如名称的多重输入,一个输入项可以用编码、简码和全称三种形式输入,系统均可自动识别。自动效验,可以对正在输入的项目内容进行验证。自动报错,可以对输入错误的信息做出提示,报告其错误位置及错误内容。自动填写,对于一些有统计的输入项,系统可以自动计算结果并自动填入。以下是本录入模块的操作流程图:生产记录不良记录1不良记录2不良记录库存记录新建记录查询记录查询结果修改记录删除记录用户登录图2-3 录入模块操作流程图2.3 创新点及技术分析本节将对本模块设计中使用到的创新点和新技术作介绍和分析,简要介绍该技术的理论,重点论述为什么使用该技术以及使用该技术后带来的优势和效果。2.3.1 为什么采用B/S结构在过去应用系统开发过程中,C/S体系结构得到了广泛的应用。其特点是,应用程序逻辑通常分布在客户和服务器两端,客户端发出数据资源访问请求,服务器端将结果返回客户端。但C/S结构存在着很多体系结构上的问题,比如:当客户端数目激增时,服务器端的性能会FA为负载过重而大大衰减:一旦应用的需求发生变化,客户端和服务器端的应用程序都需要进行修改,给应用维护和升级带来了极大的不便:大量的数据传输增加了网络的负载等等。而BS模式首先它简化了客户端。它无需像C/S模式那样在不同的客户机上安装不同的客户应用程序,而只需安装通用的浏览器软件。这样不但可以节省客户机的硬盘空间与内存,而且使安装过程更加简便、网络结构更加灵活。假设管理人员要开一个讨论生产情况的会议,他们只需从会议室的计算机上直接通过浏览器查询数据,然后展示给与会者看就可以了。甚至与会者还可以把笔记本电脑联上会议室的网络插口,自己来查询相关的数据。其次,它简化了系统的开发和维护。系统的开发者无须再为不同级别的用户设计开发不同的客户应用程序了,只需把所有的功能都实现在Web服务器上,并就不同的功能为各个组别的用户设置权限就可以了。各个用户通过HTTP请求在权限范围内调用Web服务器上不同处理程序,从而完成对数据的查询或修改。相对于C/S模式,B/S模式的维护具有更大的灵活性。当程序功能发生变化时,无须再为每个现有的客户应用程序升级,而只需对Web服务器上的服务处理程序进行修改。这样不但可以提高运作效率,还省去了维护时协调工作的不少麻烦。再次,它使用户的操作变得更简单。对于C/S模式,客户应用程序有自己特定的规格,使用者需要接受专门培训。而采用B/S模式时,客户端只是一个简单易用的浏览器软件。无论是决策层还是操作层的人员都无需培训,就可以直接使用。最后 ,B /S模式特别适用于网上信息发布,使得MES的功能有所扩展。这是C/S模式所无法实现的。而这种新增的网上信息发布功能恰是现代企业所需的。这使得大部分书面文件可以被电子文件取代,从而提高了工作效率,使行政手续简化,节省人力物力。总的说,B/S模式的信息服务系统是建立在Intranet和Internet上的,以Web服务器为核心,集成文件服务器、数据库服务器、Mail服务器的系统网络,用户可以通过浏览器访问系统资源或进行工作的信息服务系统。2.3.2世界领先的MSF4.0的运用.Net与MSF运用的原理对于构建.NET和其他面向对象的应用程序来说,微软解决方案框架(MSF)是一种情景驱动、基于上下文的敏捷软件开发过程。MSF Agile整合了直接构建符合使用需求(比如性能和安全)的应用程序的实践。决定怎样操作项目的方法基于上下文和使用上下文驱动。这个方法(MSF Agile)帮助我们创建一种合适的、可以克服大多数敏捷软件开发的边界限制的过程,当达到某一目标设置时就释放一个版本。1.原则MSF Agile的核心思想是恰当数量的过程使人能够完成更多的任务。极少的过程需要特派人员作普通的事情。很多过程和特派人员不能够做特别的事情。依赖于人:人是一个项目成功的最重要因素。过程、技术和开发工具只能使人完成更多的任务。建立一种环境和文化使人能够最大限度的完成产品,达到项目成功的最高概率。关注商业价值:是否向客户提供了商业价值是一个软件开发项目成功的关键因素。让客户参与:客户确认通常在真实和虚构商业价值中是不同的。理解和有效沟通解决方案的确切含义是一个项目成功的关键因素。适应改变:软件项目很少不经过一些变更就完成。一个基于上下文驱动的方法允许对一个过程进行必要的变更,包括项目期间发生的需求变更,以符合最初的项目需求。2.角色MSF Agile与其他比较规范的过程相比,角色是不同的概念。如果一个人有能力担当一种角色,他就可以担当。这些角色是:架构师、业务分析员、开发人员、项目经理、测试人员。1)架构师架构师的主要目标是通过设计应用程序基础构架来确保项目的成功。包括定义应用程序的组织结构和开发的物理结构。在这些工作中,架构师的目标是通过把应用系统划分成简洁的模块来降低复杂度。对一个成功项目而言,结构设计是非常重要的,因为它不但指导以后的系统如何建设,而且也决定应用程序是否展现了应用程序的本质特征。这些特征包括应用程序的可用性,可靠性、可维护性、可执行性、安全标准,及是否可以为将来的需求变化留有足够的可扩展性。2)业务分析员业务分析员的主要目标是定义业务和为之服务的应用程序。业务分析人员与客户及其他相关人员一起工作,了解他们的需求及目标,并将之转换成角色定义、文档、情景和开发团队使用的服务需求质量,来建立应用程序。业务分析人员向开发团队提供主要的专家意见。3)开发人员开发人员的主要目标是实现计划期内指定的应用程序。开发人员也要帮助制定功能的物理设计、估计开发时间并致力于完成每个功能,建立、检查功能的执行,为开发准备产品,向团队提供技术专家的意见。4)项目经理项目经理的目标是在预算和工期内完成软件需求描述的应用程序。项目经理负责指定计划、安排任务、监视和报告项目状态、识别和减轻风险。项目经理也要与分析业务分析人员协商、确定开发顺序,与构架师和开发人员协商、评估的工作,与测试人员协商、指定测试计划,并顺利的与团队沟通。5)测试人员测试人员的目标是要确保应用程序达到客户期望的水平。对于测试人员,一个主要的目标就是要在一个产品发布之前确定并提交产品中的错误。提交包括从修补错误到在文档中记录。在开发中提交错误要比在已经发布的产品中发现错误而为团队和客户带来的麻烦小的多。测试工作者要参与项目的全部阶段和每一个迭代周期。测试人员需要和整个项目组共享质量标准。MES系统开采用MSF4.0具体的实施过程:1)开发团队:本次开发属于小型项目组:开发项目组共由5人组成:老师指导,2名程序开发人员,1名数据库设计人员,1名测试人员。1、架构师由团队中经验最丰富,技术能力最好的开发人员担当。2、业务分析员由指导老师和小组成员中对业务比较熟悉的人员担当,并且邀请电子枪厂业务员参与讨论。3、开发人员主要分为程序开发员和数据库开发员,2名程序开发人员分别负责不同模块的开发,开发的进度和管理都分开独立互不影响,数据库开发人员负责开发数据库的代码,如存储过程等,同时也是数据库架构师。4、项目经理由指导老师担当,对整个项目负责,在里程碑的开发过程中,对进度,质量的总体控制。5、测试人员由一名经验丰富的测试人员担当,在每个阶段对开发的成果进行测试和分析。2)职能交叉组织:1、开发部:由开发人员组成;2、测试部:由测试人员组成;3、项目组:由开发和测试人员组成。3)过程模型:构思、计划、开发、稳定、发布。共5个阶段。每个阶段设立若干里程碑:以项目进度为依据设立时间点,在完成一段时间的开发任务之后,设立一个里程碑。进行进度同步和质量评审,在审查过程中,由测试人员参与测试部分完成代码的功能,而业务分析员则对业务的完成度进行评估,最后由项目经理对这一阶段的开发工作作出总结和提示,不断交流和改进,保证项目按时按质推出。4)每周两次集成:保证随时都有可用版本,供项目组内外评估和测试,以便及早发现问题,保证项目按照用户的要求在可控状态下执行,2.3.3 三层结构(多层结构)的运用三层结构的原理“三层架构”一词中的“三层”是指:“外观层(表示层)”、“中间层(业务逻辑层),、“数据库层(数据访问层)”。其中:外观层:位于最外层,直接呈现在用户面前。用于显示数据,并为用户提供一种交互式的界面。中间层:负责处理用户输入的信息,或者是将这些信息发送给数据库层进行保存,或者是调用数据库层中的函数再次读出这些数据。数据库层:仅实现对数据的保存和读取操作。三层架构的优点:(1)通过将应用程序级配置为服务器场,并将数据库级配置为服务器群集,可强力支持可伸缩性和容错。(2)通过将客户端计算机与应用程序逻辑分开,可支持客户端应用程序的汗发和分布。(3)每一级都可以在其自己的安全环境中运行。(4)由于Web服务器和业务组件位于同一台计算机上(甚至经常处于同一进程中),因此性能得到增强。三层架构的缺点:(1)业务逻辑直接向客户端级公开,对于Web应用程序来说,这可带来重大的安全风险。(2)支持Web服务器的硬件比同时支持web服务器和应用程序服务器的硬件要便宜得多。因此,对于此解决方案而言,添加一个新用户所增加的成本通常比Web服务器与应用程序服务器分开的解决方案要高。MES录入模块多层结构的开发:本MES系统的录入模块采用的是三层架构的延伸多层结构,分别为表示层、业务逻辑层、数据离线层、实体层和数据访问层,采用此结构的目的是使系统结构更清晰,分工更明确,有利于后期的维护和升级。(1)表示层(Presentation) :用户表示层为客户端提供对应用程序的访问,此层以本系统中的各个web窗体的形式出现。(2)业务逻辑层(Business):业务逻辑层实现应用程序的业务功能,此层以本系统中的BR项目的形式出现。(3)离线数据层(DBSource):通过建立完成的DATASET离线数据库,提供完整的数据副本,此层在本系统中的DBSource项目形式出现。(4)实体层(Entity):为更好的使用多层结构和ADO.net而设立实力类层,提供所有数据的封装对象,此层在本系统中的Entity项目形式出现。(5)数据访问层(Dataservices):数据访问层为业务逻辑或表示层提供数据服务,此层以本系统中的DBServer项目的形式出现。此五层同属一个解决方案中,通过设置其引用关系实现各层间的数据访问通信。以下是本录入模块开发所使用的5层结构模型:表示层(Presentation) web Forms(ASPX页面)业务层(BR)实体层(Entity)离线数据层(DBSource)三)数据访问层(DBServer)图2-1 本MES系统录入模块的多层架构2.3.4 微软最新的AJAX 1.0的运用ASP.NET AJAX 1.0(即Atlas)的最终版是微软在2007年1月23日刚刚发布的,是目前微软关于AJAX的最新技术。ASP.NET AJAX 1.0提供了一个丰富的客户端AJAX库,该库对核心JavaScript类型系统,基于JSON的网络层,JavaScript 组件/控件模型,以及常用的客户端JavaScript辅助类等提供了跨平台,跨浏览器支持。ASP.NET AJAX同时也提供了一个丰富的服务器端的库,把AJAX功能与ASP.NET集成,允许开发人员以最小的努力在现有的ASP.NET 2.0网站中轻松地启用AJAX。MES系统使用AJAX技术的原因:在过去,BS结构的系统一直受到网页运行模式的限制而无法像CS结构那样开发出强大的功能,而自从ASP.Net推出后,这一现象已经得到极大的改观,使用.Net提供的强大支持,在BS结构中同样可以运用和CS结构开发同样复杂的业务,开发出功能相近的程序。如此一来困扰BS结构的就只剩下运行模式,在以往BS结构中页面的变化需要通过提交和刷新才能完成,而服务端业务的计算同样需要客户端的提交来响应。如此看来,BS是无法像CS那样及时灵活,运用在工厂生产中也将会因为无法实时的响应而遭到淘汰。但是,这一切在运用AJAX技术之后就完全改变了。AJAX技术允许网页异步提交,并取回数据,也就是说网页可以不用刷新并可以提交数据,并从服务器取回数据,这样一来BS几乎可以完成CS结构所能做到的一切功能,再加上本文在前一节所介绍的使用BS结构的优点,MES系统采用AJAX技术的网页系统,变成了开发本系统的最好选择。MES使用AJAX技术的优势和特点1)系统的及时响应工厂的生产线是一刻不停的在工作的,对于MES系统来说,数据录入的及时响应是必不可少的,操作员在数据录入的同时,要求不但可以查询历史数据的情况,更要对当日生产线的生产情况作出及时的反映。通过使用AJAX技术,GRIDVIEW数据列表框可以做到自动刷新,不需要用户提交页面,数据列表框可以做到单独更新,可以设定时间自动刷新该数据列表框,也可以用户手动刷新,用户可以根据需要随时看到数据情况,而不需要提交任何多余操作。2)解决数据对应关系对于本系统主要数据为一对多关系,即一条生产纪录下包括了若干条不良详细纪录,以往在网页中要显示这样一种关系,必须通过网页的刷新,而当显示的数据量庞大时,刷新整张网页的数据,网页将会显示的很慢,这种刷新将变得十分低效。而通过AJAX技术将两个数据列表单独提交后,数据的刷新就被分离开来,用户每次点击主表,则其他数据不动,而单独刷新所对应的附表数据。从而使数据的显示变得更加迅速和方便。3)用户操作的快速响应对于录入操作来说,如何让用户在录入数据的同时可以及时看到录入效果,同时通过提示、验证等手段帮助用户录入,也是本MES系统录入模块需要解决的一个技术难点。对于用户输入的部门名称等,要求可以通过输入部门编号、简码和全称三种输入方式系统均可识别,而使用AJAX技术后,用户在输入简码之后,该输入项会立刻刷新并显示该编码所对应的名称,用户就可以立即看到自己所输入的项目是否正确,非常直观。对于用户输入的数据是否符合规范,使用AJAX技术后,只要用户输入完一个内容,就可以立刻提交该输入框的内容到服务器进行验证,这一点在不使用AJAX技术的情况也是无法做到的。2.3.5 离线数据库的建立和运用微软的ADO.net可以说是微软对于程序处理数据库数据的一大杰作,使用ADO.Net不但可以操作访问数据库。更可以使用ADO.Net所提供的强大功能对数据进行更深的进一步操作,而这种操作可以是离线的。在以往三层结构的编写中数据层被单独分离出来,他专门负责提供数据的操作,而使用DataSet数据集对于.Net开发人员来说也是再平常不过了,DataSet数据集可以完整复制整个数据库的表结构以及数据内容到内存中,并且提供更加简单的数据访问方式,以及更为强大的数据处理。因此,我在开发本录入模块的过程中,使用了ADO.net提供的强大功能,在服务器端建立了一个强大的离线数据库。MES系统使用离线数据库的优势:1)减少对数据服务器的依赖BS系统需要应对大量的浏览器访问要求,因此系统负荷的重点在于网页发布服务器,而对于数据库服务器而言,只需要面对网页发布服务器这个小量就可以了。离线数据库建立后,网页发布服务器便可以完整复制数据库数据到内存中,通过建立离线数据库后,业务的计算便不再需要数据服务器提供数据,而网页发布服务器只要通过访问自己内存中的数据就可以完成业务逻辑的计算,减少了对数据服务器的依赖,即使短暂的数据服务器断线也不会影响业务逻辑的计算。2)更合理的分配资源通过减少对数据服务器的访问,和依赖性,使得数据服务器的工作量大大减轻,因此可以将更多的数据服务器改变为网页发布服务器,满足更多用户的访问要求,更合理的分配服务器资源。3)加速网页发布通过建立离线数据库后,业务的计算便不再需要数据服务器提供数据,而网页发布服务器只要通过访问自己内存中的数据就可以完成业务逻辑的计算,因此从计算到发布便没有了向数据服务器申请数据的过程,网页的发布和响应也会变得更快。4)加速加强业务计算速度和能力通过建立离线数据库后,业务的计算模式发生了变化,内存成为所有数据计算的主要场所,从数据的访问到数据的计算到结果的保存,这一系列的过程统统在网页发布服务器的内存中进行,不再像以往需要等待数据库返回数据结果,因此计算数据的速度大大加快。而通过将数据库数据进行服务器端的本地化之后,网页发布服务器的后台代码便可以完成更多更强的功能计算,而不必过分依赖数据库存储过程的计算了。 3 需求分析与概要设计3.1 需求分析本录入模块的主要任务为实现日常生产数据的录入编辑工作。系统为web网页组成,可以面向多名用户操作,是具有操作权限限制的网页系统。系统要求为:为用户提供一个具有登陆退出管理,可以简单查询生产信息,拥有录入编辑删除生产/库存信息等功能的实时系统,同时具有操作简便,权限限制,自动录入帮助,错误提示等辅助功能。需要通过此模块实现的主要功能有:1.用户登录退出2.用户权限限制3.简单生产信息查询4.生产部门信息的录入删除编辑5.库存部门信息的录入删除编辑6.录入修改数据的自动效验7.录入修改数据的自动报错8.用户名、部门、产品、不良名称等项目的多重输入自动识别9.数据列表的自动更新其中用户权限要求分为三种,即可以录入,可以录入本部门和可以录入所有部门,要求用户登录时不论使用用户号或者用户名均可自动识别并登录。根据不同的用户权限要求锁定用户录入的信息,比如指定录入人员的录入部门后,对界面上所涉及的部门框全部自动填入,并限制其修改。指定了某一类部门后,对于其他类型的部门应都予以屏蔽显示,即无法录入其他部门,也无法显示或查询其他部门信息。简单查询条件由生产日期、部门、产品三项的任意组合均可,三项全部为空即默认为查询所有记录,任意项录入内容无效即默认该项为空,并根据用户权限作相应的查询限制,如制定部门查询,则部门自动填入且不可修改。在数据的录入过程中,要求对每一项录入信息作验证,其中包括类型的判断,如数字框只能录入数字,也包括值的判断,如录入的部门名是否存在。而验证又分前端验证和服务器端验证,前端验证应负责录入的即时验证,如焦点离开即作验证,服务器端验证应负责页面提交后对所有录入信息的统一验证和规范。数据报错同样分为前端报错和服务器端报错,前端报错包括焦点离开报错。服务器端报错包括提交页面后的统一报错,并指出错误项的名称和错误内容。自动识别对应部门产品以及不良名称等输入项,要求不论输入简称或者编号或者全称系统均可识别。自动更新要求在新建编辑和删除操作后对数据框内的信息自动刷新,显示最新的结果。设计所涉及的文件信息如下:1)电子枪厂管理条例2)电子枪厂生产条列3)电子枪产品说明书4)电子枪工艺流程图5)彩虹集团说明书6)彩虹集团MES系统功能说明书(录入子模块)7)电子枪生产纪录手册3.2 总体设计本电子枪MES生产系统录入模块的开发将使用微软最新的VS2005.Net平台开发,使用ASP.Net 2.0相关技术开发的BS结构网页的网页系统,前端代码使用html和javascript编写,服务器代码使用C# 2.0编写,并采用多层结构编写代码。并在网页中使用目前最流行的AJAX技术进行部分的数据验证。数据库支持采用SQL2000数据库。3.2.1 系统功能设计一下介绍本系统实现的各种功能的详细说明:1)用户登录功能:由于操作员可能不是一名,而是多名,而且使用本系统的操作员不一定是固定的,所以设计用户登录功能。可以记录操作者信息,如最后一次登录使用系统的时间,也可以通过登录限制操作权限。2)用户退出功能:在变更用户时,可以选择用户退出按钮。用户退出后系统将跳转至登录界面,要求用户重新登录,否则不法使用任何功能,即使通过网址输入其他页面功能,系统也将自动跳转至登录界面。3)用户权限限制功能:为操作管理需要,每个用户都设置有自己的权限,如用户权限为不可录入时,用户登录将提示没有录入权限。而用户权限为指定部门时,用户登录后所有部门项自动填写并且不可修改。4)简单生产信息查询:由于录入时可能需要查看以往的记录作为查考等,因此提供一个简单的查询功能,通过生产/库存 日期、部门名称、产品信息三个主要条件的任意组合,可以查询到所有的历史记录,并显示在主列表中。5)详细不良显示功能:在主列表生产记录显示的同时,可以选中某一条生产记录,在详细列表中将立即显示该记录下的不良详细情况,如该记录没有不良详细,则显示没有数据。6)生产部门的新建、修改、删除功能:可以对生产部门进行新建、修改和删除操作。7)生产部门详细记录的新建、修改、删除功能:在选择了生产部门的操作之后,可以对生产记录中记录的不良产品的详细记录进行新建、修改、删除操作。8)库存部门的新建、修改、删除功能:可以对库存部门进行新建、修改和删除操作。9)录入数据的自动效验功能:自动效验分为前端效验和后端效验,前端效验将在用户的每个输入项完成后进行效验,如果不符合要求则抱错。后端效验则是在输入项全部完成后提交页面时,在服务期端对所有录入数据作统一效验,如不符合要求,则抱错。10)自动抱错功能:基于自动效验的基础在,在效验数据出错或不符合要求时,系统将提示出错内容和出错项目,并将焦点指定到第一个出错项目。11)多重输入自动识别功能:用户名、部门、产品、不良名称等项目的可以通过三种输入方式输入,分别为编号,简码和全称,系统均可以自动识别。12)数据列表的自动更新:生产数据的显示主要为两个数据列表,一是主记录列表,当数据修改或新建后,该列表将自动更新为最新纪录。二是每条记录都有的详细不良产品的显示,当选中某条记录后,该详细列表将自动更新为指定记录的不良详细品。3.2.2 模块的划分以及各模块关系本生产录入模块主要有4个小模块组成,分别为登陆,查询,生产部门操作和库存部门操作。以下是各子模块的分析介绍:1)登陆子模块:该模块的功能是为用户提供身份登陆使用,输入项目为“用户名”、“用户密码”,用户操作为“登录”。此模块的设计任务为:获取并判断用户名是否存在,用户密码是否有效,并返回用户资料和用户权限,提供给其他模块录入时的权限来源。2)查询子模块:该模块的功能是为用户提供一个简单的查询功能,使用户在录入或修改数据时能够查看相关的历史记录,同时查询结果也是编辑和删除功能的操作对象。输入项目为“生产/入库 日期”、“部门名称”、“产品名称”。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江苏省东台市第七联盟2025年初三第一次联考综合试题含解析
- 辽宁师范大学海华学院《机电设备概论》2023-2024学年第二学期期末试卷
- 江苏省泰兴市城黄北区教研中学心2025届初三下学期入学考试题物理试题文试题含解析
- 咸阳市重点中学2025年高三学情摸底生物试题含解析
- 青光眼的护理
- 湛江市大成中学高一下学期物理期中测试题
- 2025电商代运营合同样本(版)
- 2025智能解决方案平台运营服务外包合同
- 胫骨近端骨折护理查房
- 基础护理学:护士职业防护
- 2024-2025学年七年级下学期期中英语模拟试卷(深圳专用)(原卷版)
- 生物样本库建设及其在研究中的应用试题及答案
- 北京市海淀区2024-2025学年第二学期期中练习暨海淀高三高三一模(海淀一模)(英语试卷+答案 )
- 2024年河南轻工职业学院单招职业适应性测试题库必考题
- 工程塑胶材料采购合同(2篇)
- 山西省华远国际陆港集团专业技术人员招聘笔试真题2024
- 新污染物环境风险评估:理论与制度构建
- 2025中考英语冲刺-传统文化诗词
- 2025山西地质集团招聘37人笔试参考题库附带答案详解
- 金融科技学知到智慧树章节测试课后答案2024年秋重庆工商大学
- 2025届北京市朝阳区高三语文一模议论文“说托举”写作导引(5篇范文)
评论
0/150
提交评论