




已阅读5页,还剩104页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于JAVA的规则引擎目录1简介311业务规则312规则引擎产生背景32规则引擎521业务规则522规则引擎523规则引擎的使用方式524规则引擎架构与推理625规则引擎的算法73JAVA规则引擎831JAVA规则引擎商业产品832规则引擎产品特点分析9321IBMWEBSPHEREILOGJRULES9322REDHATJBOSSDOOLS12323JESS124JAVA规则引擎API(JSR94)1441简介1442简介JAVA规则引擎API体系结构14324规则管理API14325运行时API1543JAVA规则引擎API安全问题1644异常与日志1645JSR94小结175规则语言181简介11业务规则一个业务规则包含一组条件和在此条件下执行的操作它们表示业务规则应用程序的一段业务逻辑。业务规则通常应该由业务分析人员和策略管理者开发和修改,但有些复杂的业务规则也可以由技术人员使用面向对象的技术语言或脚本来定制。业务规则的理论基础是设置一个或多个条件,当满足这些条件时会触发一个或多个操作。12规则引擎产生背景复杂企业级项目的开发以及其中随外部条件不断变化的业务规则(BUSINESSLOGIC),迫切需要分离商业决策者的商业决策逻辑和应用开发者的技术决策,并把这些商业决策放在中心数据库或其他统一的地方,让它们能在运行时(即商务时间)可以动态地管理和修改从而提供软件系统的柔性和适应性。规则引擎正是应用于上述动态环境中的一种解决方法。企业管理者对企业级IT系统的开发有着如下的要求1为提高效率,管理流程必须自动化,即使现代商业规则异常复杂;2市场要求业务规则经常变化,IT系统必须依据业务规则的变化快速、低成本的更新;3为了快速、低成本的更新,业务人员应能直接管理IT系统中的规则,不需要程序开发人员参与。而项目开发人员则碰到了以下问题4程序算法数据结构,有些复杂的商业规则很难推导出算法和抽象出数据模型;5软件工程要求从需求设计编码,然而业务规则常常在需求阶段可能还没有明确,在设计和编码后还在变化,业务规则往往嵌在系统各处代码中;6对程序员来说,系统已经维护、更新困难,更不可能让业务人员来管理。基于规则的专家系统的出现给开发人员以解决问题的契机。规则引擎由基于规则的专家系统中的推理引擎发展而来。2规则引擎21业务规则一个业务规则包含一组条件和在此条件下执行的操作,它们表示业务规则应用程序的一段业务逻辑。业务规则通常应该由业务分析人员和策略管理者开发和修改,但有些复杂的业务规则也可以由技术人员使用面向对象的技术语言或脚本来定制。业务规则的理论基础是设置一个或多个条件,当满足这些条件时会触发一个或多个操作。22规则引擎什么是规则引擎规则引擎是如何执行规则的这可以称之为“什么”与“如何”的问题。到底规则引擎是什么还是目前业界一个比较有争议的问题,在JSR94种也几乎没有定义。可以这样认为充分定义和解决了“如何”的问题,“什么”问题本质上也迎刃而解。也许这又是一种“先有蛋还是先有鸡”哲学争论。今后标准规则语言的定义和推出及相关标准的制定应该可以给这样的问题和争论划上一个句号。本文中,暂且这样述说什么是规则引擎规则引擎由推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。接受数据输入,解释业务规则,并根据规则做出业务决策。23规则引擎的使用方式由于规则引擎是软件组件,所以只有开发人员才能够通过程序接口的方式来使用和控制它,规则引擎的程序接口至少包含以下几种API加载和卸载规则集的API;数据操作的API;引擎执行的API。开发人员在程序中使用规则引擎基本遵循以下5个典型的步骤创建规则引擎对象;向引擎中加载规则集或更换规则集;向引擎提交需要被规则集处理的数据对象集合;命令引擎执行;导出引擎执行结果,从引擎中撤出处理过的数据。使用了规则引擎之后,许多涉及业务逻辑的程序代码基本被这五个典型步骤所取代。一个开放的业务规则引擎应该可以“嵌入”在应用程序的任何位置,不同位置的规则引擎可以使用不同的规则集,用于处理不同的数据对象。此外,对使用引擎的数量没有限制。24规则引擎架构与推理规则引擎的架构如下图所示规则引擎的推理步骤如下A将初始数据(FACT)输入至工作内存(WORKINGMEMORY)。B使用PATTERNMATCHER将规则库(RULESREPOSITORY)中的规则(RULE)和数据(FACT)比较。C如果执行规则存在冲突(CONFLICT),即同时激活了多个规则,将冲突的规则放入冲突集合。D解决冲突,将激活的规则按顺序放入AGENDA。E执行AGENDA中的规则。重复步骤B至E,直到执行完毕AGENDA中的所有规则。任何一个规则引擎都需要很好地解决规则的推理机制和规则条件匹配的效率问题。当引擎执行时,会根据规则执行队列中的优先顺序逐条执行规则执行实例,由于规则的执行部分可能会改变工作区的数据对象,从而会使队列中的某些规则执行实例因为条件改变而失效,必须从队列中撤销,也可能会激活原来不满足条件的规则,生成新的规则执行实例进入队列。于是就产生了一种“动态”的规则执行链,形成规则的推理机制。这种规则的“链式”反应完全是由工作区中的数据驱动的。规则条件匹配的效率决定了引擎的性能,引擎需要迅速测试工作区中的数据对象,从加载的规则集中发现符合条件的规则,生成规则执行实例。1982年美国卡耐基梅隆大学的CHARLESLFORGY发明了一种叫RETE的算法,很好地解决了这方面的问题。目前世界顶尖的商用业务规则引擎产品基本上都使用RETE算法。25规则引擎的算法大部分规则引擎产品的算法,基本上都来自于DRCHARLESFORGY在1979年提出的RETE算法及其变体,RETE算法是目前效率最高的一个FORWARDCHAINING推理算法,DROOLS项目是RETE算法的一个面向对象的JAVA实现,RETE算法其核心思想是将分离的匹配项根据内容动态构造匹配树,以达到显著降低计算量的效果。详情请见CIS587THERETEALGORITHM,THERETEALGORITHM,RETE演算法,专家系统原理与编程中第11章等。3JAVA规则引擎目前主流的规则引擎组件多是基于JAVA和C程序语言环境,已经有多种JAVA规则引擎商业产品与开源项目的实现,其中有的已经支持JSR94,有的正朝这个方向做出努力,列出如下31JAVA规则引擎商业产品JAVA规则引擎商业产品主要有(JESS不是开源项目,它可以免费用于学术研究,但用于商业用途则要收费)组织/厂商名称主页说明JSR兼容性ILOGJRULESHTTP/WWW2000IBMCOM/SOFTWARE/CN/WEBSPHERE/ILOG/PRODUCTS/JRULES/INDEXHTML已被IBM收购JRULES46DROOLSDROOLSHTTP/WWWJBOSSORG/DROOLSHTML已被REDHATJBOSS收购,转向商业化,仍有社区版本基于JSR94和RETE算法SANDIALABSJESSHTTP/HERZBERGCASANDIAGOV/JESS/JESS61P6JLISAJLISBHTTP/JLISASOURCEFORGENET/商业化/社区支持TMAXSOFTPRORULEHTTP/CNTMAXSOFTCOM/JSP/MAINJSPFAIRISAAC,BLAZEADVISORBLAZEADVISORHTTP/WWWFAIRISAACCOM/FIC/CN/FIC/CN/INDEXHTMPEGASYSTEMSINCPEGARULESPROCESSCOMMANDERHTTP/WWWPEGACOM/CRM行业的解决方案供应商,转向BPM领域32规则引擎产品特点分析这里对目前市场上几个比较重要的基于JAVA的商业规则引擎产品进行特点分析。321IBMWEBSPHEREILOGJRULES作为企业IT基础设施的关键部分,业务流程管理越来越重要了。在BPM产品套件平台上,可以建模、部署、执行和监视企业的业务流程,业务流程可以包含业务规则。例如,在银行的账户验证过程中,评估客户资格或确定价格的业务策略很复杂,而且在快速发展的市场中常常会变动。把这些策略硬编码在过程中是不合适的,因为很难在运行时管理和维护业务规则。通过把业务规则和业务流程分隔开,单独地执行和管理它们,可以提高整个业务流程的敏捷性和扩展性。ILOG的JRULES在融入到IBM的WEBSPHERE套件体系后,在架构层面和技术层面充分体现了这种业务流程与业务规则分离的思想,如下图所示ILOGJRULES是先进的业务规则管理系统(BUSINESSRULEMANAGEMENTSYSTEM,BRMS),提供编写、部署和管理业务规则等业务功能,支持高效地修改策略和快速部署策略。ILOGJRULES提供一种建模、实现和部署业务规则的系统化方法。它支持以有秩序的高效的方式进行协作。它包含的工具针对不同用户的技能和知识优化过,因此策略经理、业务分析师和开发人员都可以获得所需的支持,可以尽可能发挥BRMS的价值。下图是JRULES的架构下面简要介绍ILOGJRULES架构的每个部分ILOGRULESTUDIO用于开发规则应用程序的基于ECLIPSE的开发环境。它允许合作编辑和调试JAVA代码和规则。特性包括ECLIPSE集成编辑规则时的自动纠正代码生成向导单一接口存储库源代码控制集成冲突和重复探测简便的部署ILOGRULETEAMSERVER这是一个WEB环境,分布式业务团队可以通过它协作、创建、管理、验证和部署业务规则。ILOGJRULESRULEEXECUTIONSERVER提供一个健壮的与J2SE和J2EE兼容的执行环境,用于部署和执行业务规则。RULEEXECUTIONSERVER包含对业务规则进行同步、异步和基于WEB服务的调用的组件,还包含一个WEB管理控制台。它与ILOGJRULESRULESTUDIO和RULETEAMSERVER完全集成,支持开发人员和业务用户部署业务规则。ILOGJRULES是IBMWEBSPHERE系列产品之一,可以与PROCESSSERVER和INTEGRATIONDEVELOPER等其他WEBSPHERE产品集成。ILOGJRULES让业务用户可以快速地创建和修改规则以满足经常变化的业务需求,不需要IT人员协助。它还有助于在整个企业内确保业务规则的可见性、可跟踪性和质量,让业务经理可以更快、更好地做出决策。由于这些原因,ILOGJRULES很适合与IBMBPM产品集成,从而为客户的业务流程场景提供策略和决策服务。下图给出一个从PROCESSSERVER中的业务流程调用JRULES服务的示例。说明了JRULES如何与WEBSPHERE集成322JBOSSDOOLSDROOLS也是基于CHARLESFORGYS的RETE算法,专为JAVA语言所设计的规则引擎。RETE算法应用于面向对象的接口将使基于商业对象的商业规则的表达更为自然。DROOLS是用JAVA写的,但能同时运行在JAVA和NET上。DROOLS提供了声明式程序设计(DECLARATIVEPROGRAMMING),并且使用域描述语言(DOMAINSPECIFICLANGUAGES,DSL)为问题域定义了某种模式的XML,从而可以用来描述用户问题域。DSLS包含的XML元素(ELEMENT)和属性(ATTRIBUTE)代表了问题域中各种要素。例如规则集是符合特定模式的XML文件。规则“语言”实际就是PORTAL表达软件包的使用,可以扩充以满足规则引擎的额外要求。DROOLS规则集的扩展名为RLS,一般包括标签CRRULESET、规则CRRULE、每个规则中又定义有测试条件CRCONDITION与动作CRACTIONS。例如COMZHANGRULESXGETSTATUSEQUALS“YBORROWER“VOSETMASSAGEZ,“LATEBOOK“323JESS在JESS中,规则的表达形式沿用了CLIPS的语法结构,通过对规则前件和后件的限定,它可以支持内容丰富的模式匹配语言。另外,JESS支持面向过程的编程方式,它提供了一些语句来控制规则后件的操作流程,如使用IFTHENELSE和WHILEDO语句,这样它就能很有效地利用面向过程编程的优势。总之,JESS的这些特性使系统拥有很强的知识表示能力。例如DEFRULELIBRARYRULE1BOOKNAMEXSTATUSLATEBORROWERYBORROWERNAMEYADDRESSZSENDLATENOTICEXYZ这套规则可以被翻译作中文这样理解THISRULEMIGHTBE库规则1如果出现一本超期的名字为X的书,它是名字为Y的人所借,并且,Z知道借者的地址,则给Y发送一条关于X书的通知到Z处。4JAVA规则引擎API(JSR94)41简介过去大部分的规则引擎开发并没有规范化,有其自有的API,这使得其与外部程序交互集成不够灵活。转而使用另外一种产品时往往意味需要重写应用程序逻辑和API调用,代价较大。规则引擎工业中标准的缺乏成为令人关注的重要方面。2003年11月定稿并于2004年8月最终发布的JSR94(JAVA规则引擎API)使得JAVA规则引擎的实现得以标准化。JAVA规则引擎API由JAVAXRULES包定义,是访问规则引擎的标准企业级API。JAVA规则引擎API允许客户程序使用统一的方式和不同厂商的规则引擎产品交互,就像使用JDBC编写独立于厂商访问不同的数据库产品一样。JAVA规则引擎API包括创建和管理规则集合的机制,在WORKINGMEMORY中添加,删除和修改对象的机制,以及初始化,重置和执行规则引擎的机制。42简介JAVA规则引擎API体系结构JAVA规则引擎API分为两个主要部分运行时客户API(THERUNTIMECLIENTAPI)和规则管理API(THERULESADMINISTRATIONAPI)。324规则管理API规则管理API在JAVAXRULESADMIN中定义,包括装载规则以及与规则对应的动作(执行集EXECUTIONSETS)以及实例化规则引擎。规则可以从外部资源中装载,比如说URI、INPUTSTREAMS、XMLSTREAMS和READERS等等。同时,管理API提供了注册和取消注册执行集以及对执行集进行维护的机制。使用ADMIN包定义规则有助于对客户访问运行规则进行控制管理,它通过在执行集上定义许可权使得未经授权的用户无法访问受控规则。管理API使用类RULESERVICEPROVIDER来获得规则管理(RULEADMINISTRATOR)接口的实例。规则管理接口提供方法注册和取消注册执行集。规则管理器(RULEADMINISTRATOR)提供了本地和远程的RULEEXECUTIONSETPROVIDER。在前面已提及,RULEEXECUTIONSETPROVIDER负责创建规则执行集。规则执行集可以从如XMLSTREAMS、INPUTSTREAMS等来源中创建。这些数据来源及其内容经汇集和序列化后传送到远程的运行规则引擎的服务器上。大多数应用程序中,远程规则引擎或远程规则数据来源的情况并不多见。为了避免这些情况中的网络开销,API规定了可以从运行在同一JVM中规则库中读取数据的本地RULEEXECUTIONSETPROVIDER。规则执行集接口除了拥有能够获得有关规则执行集的方法,还有能够检索在规则执行集中定义的所有规则对象。这使得客户能够知道规则集中的规则对象并且按照自己需要来使用它们。325运行时API运行时API定义在JAVAXRULES包中,为规则引擎用户运行规则获得结果提供了类和方法。运行时客户只能访问那些使用规则管理API注册过的规则,运行时API帮助用户获得规则对话并且在这个对话中执行规则。运行时API提供了对厂商规则引擎API实现的类似于JDBC的访问方法。规则引擎厂商通过类RULESERVICEPROVIDER(类RULESERVICEPROVIDER提供了对具体规则引擎实现的运行时和管理API的访问)将其规则引擎实现提供给客户,并获得RULESERVICEPROVIDER唯一标识规则引擎的URL。URL推荐标准用法是使用类似“COMMYCOMPANYMYRULESENGINERULESRULESERVICEPROVIDER”这样的INTERNET域名空间,这将有助于访问URL的唯一性。类RULESERVICEPROVIDER内部实现了规则管理和运行时访问所需的接口。所有的RULESERVICEPROVIDER要想被客户所访问都必须用RULESERVICEPROVIDERMANAGER进行注册。注册方式类似于JDBCAPI的DRIVERMANAGER和DRIVER。运行时接口是运行时API的关键部分。运行时接口提供了用于创建规则会话(RULESESSION)的方法,规则会话如前所述是用来运行规则的。运行时API同时也提供了访问在SERVICEPROVIDER注册过的所有规则执行集(RULEEXECUTIONSETS)。规则会话接口定义了客户使用的会话的类型,客户根据自己运行规则的方式可以选择使用有状态会话或者无状态会话。无状态会话的工作方式就像一个无状态会话BEAN。客户可以发送单个输入对象或一列对象来获得输出对象。当客户需要一个与规则引擎间的专用会话时,有状态会话就很有用。输入的对象通过ADDOBJECT方法可以加入到会话当中。同一个会话当中可以加入多个对象。对话中已有对象可以通过使用UPDATEOBJECT方法得到更新。只要客户与规则引擎间的会话依然存在,会话中的对象就不会丢失。RULEEXECUTIONSETMETADATA接口提供给客户让其查找规则执行集的元数据(METADATA)。元数据通过规则会话接口(RULESESSIONINTERFACE)提供给用户。使用运行时RUNTIMEAPI的代码片断如下所示RULESERVICEPROVIDERRULEPROVIDERRULESERVICEPROVIDERMANAGERGETRULESERVICEPROVIDER“COMMYCOMPANYMYRULESENGINERULESRULESERVICEPROVIDER“RULERUNTIMERULERUNTIMERULEPROVIDERGETRULERUNTIMESTATELESSRULESESSIONRULESESSIONSTATELESSRULESESSIONRULERUNTIMECREATERULESESSIONRULEURL,NULL,RULERUNTIMESTTELESS_SESSION_TYPELISTINPUTRULESNEWARRAYLISTINPUTRULESADDNEWSTRING“RULE1“INPUTRULESADDNEWINTEGER1LISTRESULTRULESRULESESSIONEXECUTERULESINPUTRULES43JAVA规则引擎API安全问题规则引擎API将管理API和运行时API加以分开,从而为这些包提供了较好粒度的安全控制。规则引擎API并没有提供明显的安全机制,它可以和J2EE规范中定义的标准安全API联合使用。安全可以由以下机制提供如JAVAAUTHENTICATIONANDAUTHORIZATIONSERVICE(JAAS),THEJAVACRYPTOGRAPHYEXTENSION(JCE),JAVASECURESOCKETEXTENSION(JSSE),或者其它定制的安全API。JAAS能被用来定义规则执行集的许可权限,从而只有授权用户才能访问。44异常与日志规则引擎API定义了JAVAXRULESRULEEXCEPTION作为规则引擎异常层次的根类。所有其它异常都继承于这个根类。规则引擎中定义的异常都是受控制的异常(CHECKEDEXCEPTIONS),所以捕获异常的任务就交给了规则引擎。规则引擎API没有提供明确的日志机制,但是它建议将JAVALOGGINGAPI用于规则引擎API。45JSR94小结JSR94为规则引擎提供了公用标准API,仅仅为实现规则管理API和运行时API提供了指导规范,并没有提供规则和动作该如何定义以及该用什么语言定义规则,也没有为规则引擎如何读和评价规则提供技术性指导。JSR94规范将上述问题留给了规则引擎的厂商。185规则语言JSR94中没有涉及用来创建规则和动作的语言规则语言是规则引擎应用程序的重要组成部分,所有的业务规则都必须用某种语言定义并且存储于规则执行集中,从而规则引擎可以装载和处理他们。由于没有关于规则如何定义的公用规范,市场上大多数流行的规则引擎都有其自己的规则语言,目前便有许多种规则语言正在应用,因此,当需要将应用移植到其他的JAVA规则引擎实现时,可能需要变换规则定义,如将DROOLS私有的DRL规则语言转换成标准的RULEML,JESS规则语言转换成RULEML等。这个工作一般由XSLT转换器来完成。规则语言的详情这里不作详细介绍,名称及其网址列出如下规则语言名称URLRULEMARKUPLANGUAGERULEMLHTTP/WWWRULEMLORG/SIMPLERULEMARKUPLANGUAGESRMLHTTP/XMLCOVERPAGESORG/SRMLHTMLBUSINESSRULESMARKUPLANGUAGEBRMLHTTP/XMLCOVERPAGESORG/BRMLHTMLSWRLASEMANTICWEBRULELANGUAGECOMBININGOWLANDRULEMLHTTP/WWWDAMLORG/2003/11/SWRL/多种规则语言的使用使得不同规则引擎实现之间的兼容性成为问题通用的规则引擎API或许可以减轻不同厂家API之间的问题,但公用规则语言的缺乏将仍然阻碍不同规则引擎实现之间的互操作性。尽管业界在提出公用规则语言上做出了一些努力,比如说RULEML、SRML的出现,但距离获得绝大部分规则引擎厂商同意的公用标准还有很长的路要走。19本科毕业设计(论文)管理暂行规定毕业设计(论文)是本科人才培养的重要实践性教学环节,也是学士学位评定的重要依据。为了切实做好我校的毕业设计(论文)工作,规范毕业设计(论文)工作的管理,提高毕业设计(论文)的质量,特制定本规定。一、毕业设计(论文)的主要目的(一)培养学生运用所学知识独立地分析和解决本专业范围内一般问题的能力,培养学生的创新意识和实践能力,使学生从事学术研究的能力得到初步的训练;(二)培养学生理论联系实际的工作作风和严谨认真的科学态度;(三)培养学生分析设计能力、研究实验能力、工程实践能力、经济分析能力、外文阅读能力和计算机的运用能力,以及社会调查、文献资料查阅和论文写作能力。二、毕业设计(论文)的基本要求(一)按照各专业“毕业设计(论文)教学大纲”的要求进行;(二)要具有学术性,要对自然科学或社会科学内某一领域进行专门、系统的研究,并表达其研究成果;(三)要具有创见性,要对学术或工程的某个问题有新的发现、新的构想或新的发展和完善;(四)要具有科学性,要求论述系统而完整,首尾一贯而不前后矛盾,实事求是而不主观臆造;(五)要具应用性,要能解决生产实际问题,在技术改造、生产管理等通过方面有所创造;(六)应做到观点正确、论据充分、推理严密、计算准确,层次分明、条理清楚、语言精炼,有必要的图表和相关资料等;(七)应参阅一定数量的外文资料,并要求在毕业设计(论文)中反映出来。三、毕业设计(论文)的工作程序毕业设计(论文)工作程序分为选题、开题、撰写论文或设计、中期检查、答辩、归档等环节。四、毕业设计(论文)的时间安排毕业设计(论文)工作时间为812周,时间安排应按20本科生毕业设计(论文)工作流程执行,集中用于毕业设计(论文)的时间不得少于专业培养计划规定的周数。五、毕业设计(论文)的领导与管理全校毕业设计(论文)在分管教学副校长领导下进行,分级管理,层层负责。(一)教务处毕业设计(论文)管理工作职责1、汇总各院(部)毕业设计(论文)题目和指导教师安排,协调有关问题;2、做好毕业设计(论文)前期、中期、后期检查工作,对未达到各阶段进度、质量要求或违反有关规定的院(部)提出整改要求;3、开展学校毕业设计(论文)工作评估和研究工作。(二)院(部)毕业设计(论文)管理工作职责各院(部)成立毕业设计(论文)工作领导小组,确定毕业设计(论文)指导教师,布置毕业设计(论文)工作任务,检查本院(部)毕业设计(论文)工作落实情况。院(部)毕业设计(论文)管理工作职责为1、审查毕业设计(论文)选题、下达任务书,安排指导教师,布置毕业设计(论文)有关工作;2、定期检查毕业设计(论文)工作进展情况,协调处理毕业设计(论文)中的有关问题,督促检查指导教师的工作;3、对学生毕业设计(论文)按规范化要求进行形式审查,组织毕业设计(论文)答辩和成绩评定工作。对答辩小组提出的优秀的毕业设计(论文)及评阅答辩中有争议的毕业设计(论文),组织答辩委员会进行复议,最终确定成绩;4、按学校有关要求,保存与毕业设计(论文)有关的电子和纸质文档;5、做好本院(部)学生毕业设计(论文)总结与评估工作。(三)毕业设计(论文)指导教师职责1、指导学生选题,拟定任务书,安排学生做开题报告,编写指导方案,制定计划和工作程序;2、对学生提出具体要求,指定主要参考资料和社会调查内容,规定学生应完成的查阅中外文资料、文献综述、开21题报告、各项实验数据、计算工作(包括上机)、设计(论文)等;3、采取多种方式检查学生的工作进度和工作质量,及时解答和处理学生提出的有关问题,并认真填写毕业设计(论文)指导记录表;4、做好学生外文翻译的评阅工作,指导学生按规范要求正确撰写毕业设计(论文);5、在学生答辩前对毕业设计(论文)(包括设计说明书、计算资料、实验报告、图纸或论文等)进行审查,认真填写毕业设计(论文)评语,指导学生参加答辩;6、根据院(部)安排参加答辩工作。(四)学生在毕业设计(论文)过程中必须做到1、重视毕业设计(论文)过程,明确各环节目的、意义和要求,虚心接受指导教师和实验技术人员的指导,保质保量地完成毕业设计(论文);2、独立完成规定的工作任务,不弄虚作假,不抄袭、剽窃他人成果;3、认真填写本科毕业设计(论文)研究过程记录表;4、毕业设计(论文)成果、资料应于答辩结束后及时交指导教师收存,凡涉及到国家机密、知识产权、技术专利、商业利益的成果未经院(部)许可,学生不得擅自带离学校。六、毕业设计(论文)的选题与开题(一)选题原则1、原则上一生一题,当一个课题比较大时,可以分成几个小课题,每个学生完成一个小课题时必须保证其主要部分为独立进行的工作,使每个学生都受到较全面的训练;2、选题应体现本专业的培养目标,达到毕业设计(论文)大纲的教学要求;3、选题应特别注意有利于学生综合应用所学知识,有利于学生能力的培养,并能保证各专业所应当具有的基本技能的训练;4、选题应与社会、生产、教学、科研等实际相结合。理工科毕业设计(论文)的选题应注重在具有实际应用前景、具有创新构思的课题中选取,鼓励理工科学生进行毕业设22计,其中,工科毕业设计所占比例应不少于80;文科及经管类的选题需注重分析解决当前经济改革、社会现实生活和理论研究中的热点、难点、焦点问题;。毕业设计论文在实验、实习、工程实践和社会调查等社会实践中完成的比例要在50以上。5、选题难度和工作量要适当,使学生能在规定的时间内完成任务;6、选题要有一定层次区分,有利于各类学生提高水平,鼓励学生有所创新;7、各专业的选题数须多于本专业当届的毕业生数。每学年选题应适当更新,不同届选题重复率须控制在20以内;8、各专业选题须经院(部)严格审查并报教务处备案。(二)选题、开题程序1、指导教师提出的毕业设计(论文)课题须经院(部)审查后向学生公布,通过师生双向选择或经协商分配,确定学生毕业设计(论文)题目及指导教师。选题和指导教师一经确定,不得随意更改;2、各院(部)应不迟于第七学期第十四周结束前完成选题工作,毕业设计(论文)任务书不迟于第七学期第十五周前下达给学生,院(部)应将毕业设计(论文)选题汇总表于第七学期第十六周结束前报教务处;3、毕业设计(论文)开题工作应在第七学期结束前完成,包括文献调研、文献综述、开题报告等,院(部)应根据本院(部)毕业设计(论文)工作的具体计划,安排学生在指导小组范围内作开题报告;七、毕业设计(论文)任务书(一)毕业设计(论文)任务书是学生进行毕业设计(论文)的指导性文件,每个学生都必须有自己的任务书;(二)任务书的内容包括设计(论文)研究的背景和依据、任务和基本要求、进程安排等;(三)任务书由指导教师填写,交教研室审查,经院(部)批准后方可实施;(四)毕业设计(论文)结束后,任务书要与毕业设计(论文)一起送交院(部)保存。23八、毕业设计(论文)指导教师配备(一)毕业设计(论文)指导教师应由具有中职及以上专业技术职务的教师或工程技术人员担任,助教等初级职称人员不能单独指导毕业设计(论文),但可根据需要安排协助指导教师的工作。指导教师名单由院(部)毕业设计(论文)工作领导小组审定后,报教务处备案;(二)指导毕业设计(论文)期间,指导教师必须坚守岗位,各院(部)要严格控制指导教师出差。确因工作需要出差的,须经院(部)分管教学副院长批准,并委派水平相当的教师代理指导;(三)对于在校外进行毕业设计(论文)的学生,院(部)可聘请相当于中级专业技术职务及以上的工程技术人员或研究人员担任指导教师,但院(部)必须指定专人进行检查,掌握进度,保证质量,协调解决有关问题;(四)每位指导教师指导的学生数原则上不超过8人,科研、教研能力突出的高级职称教师或具有博士学位人员可适当增加指导人数(最高不超过10人)。指导教师对每个学生的指导每个环节不得少于1次,总计不得少于3次。九、设计(论文)的撰写1、毕业设计(论文)的撰写按“本科毕业设计(论文)撰写规范”执行;2、设计(论文)正文字数文科(除外语类)10000字以上,理工科及外语、艺术类6000字以上;3、所有设计(论文)应按规定格式打印1份,学生所在院(部)留存。另外应将电子版报送教务处。十、毕业设计(论文)答辩及成绩评定(一)毕业设计(论文)完成后必须进行答辩。对通过毕业设计(论文)答辩并达到毕业基本要求的学生方可发给毕业证书。各专业成立答辩小组,具体负责本专业毕业设计(论文)答辩和成绩评定。各院(部)成立答辩委员会,对答辩小组提出的优秀的毕业设计(论文)及评阅答辩中有争议的毕业设计(论文)进行审查、复议,最终确定成绩。答辩工作原则上不聘请校外专家参加,如确因课题需要,必须聘请校外人员参加时,须经院(部)批准;(二)毕业设计(论文)答辩按“本科毕业设计(论24文)答辩程序和实施办法”规定程序进行;(三)毕业设计(论文)的成绩评定,采用五级记分制,即优、良、中、及格和不及格,具体评分标准按照“本科毕业设计(论文)量化评分参考标准”执行。要求优秀与良好比例之和控制在70以内,优秀率在15左右(最多不超过20)。其中优秀、不及格等级须写出具体理由,其余等级须写出简要评语;(四)凡毕业设计(论文)成绩不及格者,按结业处理。十一、毕业设计(论文)工作所需的经费(含开题费、实验费、答辩费、指导教师课时津贴等)由学校按各院(部)毕业生每人350元,统一发放至各院(部),由各院(部)制订分配细则。十二、本规定自公布之日起执行,由教务处负责解释。附件1本科毕业设计(论文)撰写规范附件2本科毕业设计(论文)量化评分参考标准附件3本科毕业设计(论文)答辩程序和实施办法附件4本科毕业设计(论文)工作评估办法二七年十一月十三日25附件1本科生毕业论文撰写规范为进一步规范本科生毕业论文的撰写工作,提高论文撰写质量,加强论文的管理工作,特制定本规范。1论文结构及写作要求论文(设计说明书)应包括封面,目录,中文题目、中文摘要与关键词、英文题目、英文摘要与关键词,正文,注释,参考文献,致谢,附录(可选)等部分。11目录目录独立成页,包括论文中全部章、节的标题及页码。12题目题目应该简短、明确、有概括性。论文题目一般中文字数不超过25个字,外文题目不超过15个实词,不使用标点符号,中外文题名应一致。标题中尽量不用英文缩写词,必须采用时,应使用本行业通用缩写词。13摘要与关键词131摘要摘要是对论文(设计说明书)内容不加注释和评论的简短陈述,要求扼要说明研究工作的目的、主要材料和方法、研究结果、结论、科学意义或应用价值等,是一篇具有独立性和完整性的短文。摘要中不宜使用公式、图表以及非公知公用的符号和术语,不标注引用文献编号。中文摘要一般为200字左右。132关键词关键词是供检索用的主题词条,应采用能覆盖论文主要内容的通用技术词条(参照相应的技术术语标准),一般列38个,按词条的外延层次从大到小排列。中英文关键词应一一对应。14论文正文论文正文部分包括绪论(或前言、序言)、论文主体及结论。绪论是说明论文工作的选题目的和意义,国内外文献26综述以及论文所要研究的内容。论文主体是论文的主要组成部分。要求层次清楚,文字简练,通顺,重点突出。结论是整个论文的总结,应做到重点突出,言简意赅。正文字数原则上文科(除外语)不少于10000字,理工科及外语、艺术类不少于6000字。15注释论文中有名词或情况需要解释,或者引用他人的观点及原话、主要数据等必须加注说明,注明出处。16参考文献参考文献反映论文的取材来源、材料的广博程度。列出的只限于那些作者亲自阅读过的,最重要的且发表在公开出版物上的文献或网上下载的资料。参考文献不少于10篇,其中外文文献不少于2篇。17附录如有不宜放在正文中但有重要参考价值的内容(如公式的推导、程序流程图、图纸、数据表格等)可编入论文的附录中。18致谢向给予指导、合作、支持及协助完成研究工作的单位、组织或个人致谢,内容应简洁明了、实事求是,避免俗套。2书写及打印要求21论文书写论文(设计说明书)要求统一使用MICROSOFTWORD软件进行文字处理,统一采用A4页面(210297)复印纸打印,版芯尺寸页边距为上28CM,下25CM,左25CM,右25CM;字间距为标准,单倍行距。页眉宋体、五号,居中排列;页眉内容为本科毕业论文;页码在页下居中放置,用五号字体。论文封面和目录不编页码,页码从目录后开始编排。页码用阿拉伯数字(1、2)编排。论文文字错漏率不能大于万分之五。22目录目录应包括论文中全部章节的标题及页码,含摘要与关键词(中、外文)、正文章、节题目(可视论文需要进行,27编写到23级标题)、参考文献、附录、致谢等。目录题头用四号黑体字居中排写,隔行书写目录内容。目录中各章节题序及标题用五号宋体。23摘要与关键词中、外文摘要与关键词单独成页置于目录后,编排上中文在前,外文在后。摘要、关键词题头均用小四号黑体字排写,内容文字用五号宋体字,英文用TIMESNEWROMAN。关键词各词条间用分号“;”隔开。24论文正文241章节及各章标题章节标题应突出重点、简明扼要,字数一般在15字以内,不使用标点符号。标题中尽量不采用英文缩写词,对必须采用者,应使用本行业的通用缩写词。正文除章节条款的标题外均用五号宋体。242层次层次根据实际需要选择,以少为宜。各层次标题不得置于页面的最后一行(孤行)。层次代号格式要求参照表21和表22。表21自然科学类论文层次代号及说明章1顶格,小三号黑体节11顶格,四号黑体条111顶格,小四号黑体(1)顶格,五号黑体款首行空两格,五号宋体项顶格,五号宋体28首行空两格,五号宋体表22社会科学类论文层次代号及说明章一、顶格,小三号黑体节(一)顶格,四号黑体1顶格,小四号黑体条空两格,五号宋体(正文)(1)顶格,五号黑体款空两格,五号宋体(正文)顶格,五号宋体项首行空两格,五号宋体(正文)25注释与参考文献注释一律采用尾注。正文中应按顺序在需要注释处的文字右上角用标明,中序号应与“注释”中序号一致,具体标注格式如下著作图书类文献序号作者书名版次出版地出版者,出版年引用部分起止页29翻译图书类文献序号作者书名译者版次出版地出版者,出版年引用部分起止页学术刊物类文献序号作者文章名学术刊物名,年,卷(期)引用部分起止页学术会议类文献序号作者题名见编者,文集名,会议名称,会议地址,年份出版地出版者,出版年引用部分起止页学位论文类文献序号学生姓名学位论文题目学校及学位论文级别答辩年份引用部分起止页报纸文献序号作者文章名报纸名,出版日期(版次)在线文献序号作者文章名电子文献的出处或可获得地址,发表或更新日期/引用日期(任选)正文之后一般应刊出主要参考文献。列出的只限于那些作者亲自阅读过的,最重要的且发表在公开出版物上的文献或网上下载的资料。以下为社会科学类论文参考文献的标注格式著作图书类文献序号作者书名版次出版地出版者,出版年翻译图书类文献序号作者书名译者版次出版地出版者,出版年学术刊物类文献序号作者文章名学术刊物名,年,卷(期)学术会议类文献序号作者题名见编者,文集名,会议名称,会议地址,年份出版地出版者,出版年学位论文类文献序号学生姓名学位论文题目学校及学位论文级别答辩年份报纸文献序号作者文章名报纸名,出版日期(版次)在线文献序号作者文章名电子文献的出处或可获得地址,发表或更新日期/引用日期(任选)自然科学类论文可不要注释,参考文献标注格式与社会科学类论文注释格式相同。26公式原则上居中书写。若公式前有文字(如“解”、“假定”等),文字顶格书写,公式仍居中写。公式末不加标点。公30式序号按章编排,并在公式后靠页面右边线标注,如第1章第一个公式序号为“(11)”,附录2中的第一个公式为“(1)”等。文中引用公式时,一般用“见式(11)”或“由公式(11)”。公式较长时在等号“”或运算符号“、”处转行,转行时运算符号书写于转行式前,不重复书写。公式中应注意分数线的长短(主、副分线严格区分),长分线与等号对齐。27插表表格一般采取三线制,不加左、右边线,上、下底为粗实线(1磅),中间为细实线(075磅)。比较复杂的表格,可适当增加横线和竖线。表序按章编排,如第1章第一个插表序号为“表11”等。表序与表名之间空一格,表名不允许使用标点符号。表序与表名置于表上,居中排写,采用楷体小五号字。表头设计应简单明了,尽量不用斜线。表头中可采用化学符号或物理量符号。全表如用同一单位,将单位符号移到表头右上角,加圆括号。表中数据应正确无误,书写清楚。数字空缺的格内加“”字线(占2个数字宽度)。表内文字和数字上、下或左、右相同时,不允许用“”、“同上”之类的写法,可采用通栏处理方式。社会科学类论文插表在表下一般根据需要可增列补充材料、注解、资料来源、某些指标的计算方法等。补充材料中中文文字用楷体小五号字,外文及数字用TIMESNEWROMAN体小五号字。28插图插图应符合国家标准及专业标准,与文字紧密配合,文图相符,技术内容正确。281图题及图中说明图题由图号和图名组成。图号按章编排,如第1章第一图图号为“图11”等。图题置于图下,图注或其他说明时应置于图与图题之间。图名在图号之后空一格排写,图题用黑体小五号字。引用图应说明出处,在图题右上角加引用文献编号。图中若有分图时,分图号用A、B标识并置于分图之下。图中各部分说明应采用中文(引用的外文图除外)或数字项号,各项文字说明置于图题之上(有分图31题者,置于分图题之上),采用楷体小五号字。282插图编排插图与其图题为一个整体,不得拆开排写于两页。插图应编排在正文提及之后,插图处的该页空白不够时,则可将其后文字部分提前排写,将图移到次页最前面。29附录附录序号采用“附录1”、“附录2”或“附录一”、“附录二”等,用四号黑体字左起顶格排写,其后不加标点符号,空一行书写附录内容。附录内容文字字体字号参照正文要求。3毕业论文装订顺序(1)封面(2)目录(3)中文题目、中文摘要及关键词、英文题目、英文摘要及关键词(4)正文(5)注释(6)参考文献(7)附录(可选)(8)致谢(9)封底自然科学类论文可不要注释,参考文献标注方式与社会科学类论文注释格式相同。4毕业论文资料存档要求各院(部)须对本单位毕业论文资料统一用专门档案盒(袋)存档,论文资料为毕业论文材料册一份及装订好的论文正本一份。材料册的装订顺序为(1)任务书(2)开题报告(3)指导教师评阅表(4)专家评阅书(5)答辩情况记载表(6)成绩评定表(7)研究过程记录表(8)指导记录表注院部可根据本规范化,结合学科专业特点制定细则并报教务处备案32本科毕业生毕业设计撰写规范为进一步规范本科生毕业设计的撰写工作,提高设计撰写质量,加强设计的管理工作,特制定本规范。毕业设计的内容一份完整的毕业设计应包括以下几个方面11标题标题应简短、明确,具有概括性。标题字数要适当,不宜超过25个字。如确因表达需要而字数过多又无法删减的,可以分成主标题和副标题。12目录目录按三级标题编写(即1、11、111),要求标题层次清晰。目录中的标题应与正文中的标题一致。13摘要摘要应以浓缩的形式概括研究课题的内容,中文摘要应在300字左右,外文摘要为中文摘要翻译件。14设计总说明设计总说明主要介绍设计任务来源、设计标准、设计原则及主要技术资料,中文字数应控制在15002000字。15引言(绪论)绪论应说明本课题的意义、目的、研究范围及需达到的技术要求;简述本课题在国内外的发展概况及存在的问题;说明本课题的指导思想;简述本课题应解决的主要问题。16正文毕业设计正文包括正文主体与结论,其内容分别如下正文主体是对研究工作的详细表述,其内容包括问题的提出,研究工作的基本前提、假设和条件;模型的建立,实验方案的拟定;设计的主要方法和内容;实验方法、内容及其分析;理论论证,理论在课题中的应用,课题得出的结果,以及对结果的讨论等。结论是对整个研究工作进行归纳和综合而得出的总结,33对所得结果与已有结果的比较和课题尚存在的问题,以及下一步开展研究的见解与建议。结论应简短。17参考文献与附录参考文献是毕业设计不可缺少的组成部分,它反映毕业设计的取材来源、材料的广博程度和材料的可靠程度,也是作者对他人知识成果的承认和尊重。一份完整的参考文献可向读者提供出非常有价值有意义的信息资料。一般应列入的主要文献不少于10篇,其中外文文献不少于2篇。附录是对于一些不宜放在正文中,但有参考价值的内容,可编入毕业设计附录中,例如公式的推演、编写的程序等;如果文章中引用的符号较多时,为便于读者查阅,可以编写符号说明,注明符号代表的意义。一般附录的篇幅不宜过长。18致谢致谢应以简短的文字对在课题研究过程中给予帮助的人员(例如指导教师、答疑教师及其他人员)表示自己的谢意。毕业设计的要求毕业设计有工程设计类和计算机软件设计类,具体要求如下21工程设计类学生必须独立完成一定数量的工程图,图纸应符合制图标准。文中插图原则上为计算机绘图;一份1015万字的设计说明书;参考文献不少于10篇,其中外文文献不少于2篇。22计算机软件类学生应独立完成一个软件或较大软件中的一个模块,要有足够的工作
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 金融租赁合伙人股权变更与租赁业务拓展合同
- 离婚协议范本:共同债务承担与财产分割协议
- 生态环保产业园空地租赁与环保设施共建合同
- 复杂家庭财产分配与子女抚养权争夺协议
- 离异双方再婚保障及子女权益维护协议
- 三方租赁合同主体变更及租赁期限及租金调整协议
- 瑜伽馆股东合作协议书(含教练培训与课程更新)
- 离婚后再婚同居共同债务偿还协议范本详解
- 婚姻破裂后财产分割与子女教育支持协议
- 2025年高中十年地理真题及答案
- 财务共享:理论与实务(第2版·立体化数字教材版)讲义 11第十一章 资产管理模块
- 野生动植物保护与利用
- 踝关节骨折的护理查房
- 大数据的国内外研究现状及发展动态分析
- 医院定向委托培养合同10篇
- 青梅种植管理技术
- TBIE004-2023通孔回流焊接技术规范
- 部编版新教材语文二年级上册《6.去外婆家》教案设计
- 员工手册简单版本
- T-CACM 1275-2019 中医内科临床诊疗指南 硬皮病(系统性硬化症)
- 美术作品与客观世界 课件-2024-2025学年高中美术湘美版(2019)美术鉴赏
评论
0/150
提交评论